The Ideal Train Timetabling Problem Tomáš Robenek Jianghang Chen Michel Bierlaire July 17, 2014 1 / 28 Liberalisation – 01.01.2010 2 / 28 Liberalisation – Overview 3 / 28 Public Sector – Accessibility/Mobility 1 Figure : Mobility evolution in Switzerland1 – source: Entwicklung der MIV und OV Erreichbarkeit in der Schweiz: 1950-2000; Ph. Frohlich, M. Tschopp and K.W. Axhausen Private Sector Market Settings Travel Time is the same Serve Different Destinations Better Quality Better Price Better Departure Times Goal: Better Timetables! • How to measure goodness of a timetable? • Timetable design in the literature – non-cyclic: using so called "ideal timetables" – cyclic: does not take into account anything • In the industry – historical 7 / 28 Update of Planning STRATEGIC - several years Demand Line Planning TACTICAL - >= 1 year Lines Ideal Train Timetabling Ideal Timetables OPERATIONAL - < 1 year Train Timetabling Actual Timetables Train Platforming Platform Assignment s Actual Timetables Rolling Stock Planning Train Assignment s Actual Timetables Crew Planning Crew Assignment s TOC IM 8 / 28 How to Measure Quality of a Timetable? Speed (Time) Being On Time Timetable Transfers Waiting Time Being on Time Scheduled Delay f_2 f_1 Time Ideal Time • Scheduled delay times value of time (Arnott et al. (1990)) 10 / 28 The Rest Speed (Time) • Running time multiplied by the value of time (Axhausen et al. (2008)) Waiting Time • Waiting time multiplied by the value of waiting time (Wardman (2004)) Transfers • Minimum transfer time multiplied by the number of transfers and the value of waiting time (Wardman (2004)) 11 / 28 References Arnott, R., de Palma, A. and Lindsey, R. (1990). Economics of a bottleneck, Journal of Urban Economics 27(1): 111 – 130. Axhausen, K. W., Hess, S., König, A., Abay, G., Bates, J. J. and Bierlaire, M. (2008). Income and distance elasticities of values of travel time savings: New swiss results, Transport Policy 15(3): 173 – 185. Wardman, M. (2004). Public transport values of time, Transport Policy 11(4): 363 – 377. 12 / 28 Ideal Timetable The ideal timetable consists of such train departures that the passengers’ global costs are minimized, i.e. the fastest most convenient path to get from the origin to the destination traded-off by a timely arrival to the destination for every passenger. Inputs i ∈I t∈T t0 ∈ T i l ∈L v ∈ Vl p ∈ Pi l ∈ Lp ripl hipl Dit m c q1 q2 f1 f2 0 – – – – – – – – – – – – – – – – set of origin-destination pairs set of time steps t in the planning horizon set of ideal times for OD pair i set of operated lines set of available vehicles on line l set of possible paths between OD pair i set of lines in the path p running time between OD pair i on path p using line l time to arrive from the starting station of the line l to the origin of the pair i demand between OD i with ideal time t 0 minimum transfer time cycle value of the waiting time value of the in vehicle time coefficient of being early coefficient of being late Decisions Cit 0 – wit 0 wit 0 p – wit 0 pl – xit 0 sit 0 sit 0 – p – – p – dvl 0 yit plv – – zvl – the total cost of the passengers with ideal time t 0 between OD pair i the total waiting time of the passengers with ideal time t 0 between OD pair i the total waiting time of the passengers with ideal time t 0 between OD pair i using path p the waiting time of the passengers with ideal time t 0 between OD pair i on the line l that is part of the path p 1 – if the passengers with ideal time t 0 between OD pair i choose path p; 0 – otherwise the final scheduled of the passengers with ideal time t 0 between OD pair i scheduled delay of the passengers with ideal time t 0 between OD pair i traveling on the path p the departure time of a train v on the line l 1 – if the passengers with ideal time t 0 between OD pair i on the path p take the train v on the line l; 0 – otherwise frequency within cyclicity Objective Speed (Time) Being On Time min Timetable X X 0 Dit · Cit 0 i∈I t 0 ∈T i Transfers Waiting Time 16 / 28 Pricing Constraints 0 0 Cit = q1 · wit + q1 · m · X xit 0 p · (|Lp | − 1) p∈P + q2 · XX p∈P ripl · xit 0 p + q2 · l∈Lp X 0 sit , ∀i ∈ I, ∀t 0 ∈ T i , p∈P 0 wit ≥ wit 0 0 − M · 1 − xit p , X t 0 pl 0 wit p ≥ wi , p ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp \1 wit 0 pl 0 0 0 ≥ dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 − M · 1 − yit pl v − M · 1 − yit plv , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl ≤ 0 0 ≥M· X 0 dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 + M · 1 − yit pl v + M · 1 − yit plv ,∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl 0 l t pl (V +1) yi ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp 0 sit p sit 0 p 0 0 0 sit ≥ sit p − M · 1 − xit p , |L| p|L| t 0 p|L|v ≥ f2 · dv|L| + hi + ri − t 0 − M · 1 − yi , |L| p|L| t 0 p|L|v 0 |L| ≥ f1 · t − dv + hi + ri − M · 1 − yi , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , Pricing Constraints 0 0 Cit = q1 · wit + q1 · m · X xit 0 p · (|Lp | − 1) p∈P + q2 · XX p∈P ripl · xit 0 p + q2 · l∈Lp X 0 sit , ∀i ∈ I, ∀t 0 ∈ T i , p∈P 0 wit ≥ wit 0 0 − M · 1 − xit p , X t 0 pl 0 wit p ≥ wi , p ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp \1 wit 0 pl 0 0 0 ≥ dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 − M · 1 − yit pl v − M · 1 − yit plv , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl ≤ 0 0 ≥M· X 0 dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 + M · 1 − yit pl v + M · 1 − yit plv ,∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl 0 l t pl (V +1) yi ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp 0 sit p sit 0 p 0 0 0 sit ≥ sit p − M · 1 − xit p , |L| p|L| t 0 p|L|v ≥ f2 · dv|L| + hi + ri − t 0 − M · 1 − yi , |L| p|L| t 0 p|L|v 0 |L| ≥ f1 · t − dv + hi + ri − M · 1 − yi , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , Pricing Constraints 0 0 Cit = q1 · wit + q1 · m · X xit 0 p · (|Lp | − 1) p∈P + q2 · XX p∈P ripl · xit 0 p + q2 · l∈Lp X 0 sit , ∀i ∈ I, ∀t 0 ∈ T i , p∈P 0 wit ≥ wit 0 0 − M · 1 − xit p , X t 0 pl 0 wit p ≥ wi , p ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp \1 wit 0 pl 0 0 0 ≥ dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 − M · 1 − yit pl v − M · 1 − yit plv , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl ≤ 0 0 ≥M· X 0 dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 + M · 1 − yit pl v + M · 1 − yit plv ,∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl 0 l t pl (V +1) yi ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp 0 sit p sit 0 p 0 0 0 sit ≥ sit p − M · 1 − xit p , |L| p|L| t 0 p|L|v ≥ f2 · dv|L| + hi + ri − t 0 − M · 1 − yi , |L| p|L| t 0 p|L|v 0 |L| ≥ f1 · t − dv + hi + ri − M · 1 − yi , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , Pricing Constraints 0 0 Cit = q1 · wit + q1 · m · X xit 0 p · (|Lp | − 1) p∈P + q2 · XX p∈P ripl · xit 0 p + q2 · l∈Lp X 0 sit , ∀i ∈ I, ∀t 0 ∈ T i , p∈P 0 wit ≥ wit 0 0 − M · 1 − xit p , X t 0 pl 0 wit p ≥ wi , p ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp \1 wit 0 pl 0 0 0 ≥ dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 − M · 1 − yit pl v − M · 1 − yit plv , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl ≤ 0 0 ≥M· X 0 dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 + M · 1 − yit pl v + M · 1 − yit plv ,∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl 0 l t pl (V +1) yi ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp 0 sit p sit 0 p 0 0 0 sit ≥ sit p − M · 1 − xit p , |L| p|L| t 0 p|L|v ≥ f2 · dv|L| + hi + ri − t 0 − M · 1 − yi , |L| p|L| t 0 p|L|v 0 |L| ≥ f1 · t − dv + hi + ri − M · 1 − yi , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , Pricing Constraints 0 0 Cit = q1 · wit + q1 · m · X xit 0 p · (|Lp | − 1) p∈P + q2 · XX p∈P ripl · xit 0 p + q2 · l∈Lp X 0 sit , ∀i ∈ I, ∀t 0 ∈ T i , p∈P 0 wit ≥ wit 0 0 − M · 1 − xit p , X t 0 pl 0 wit p ≥ wi , p ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp \1 wit 0 pl 0 0 0 ≥ dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 − M · 1 − yit pl v − M · 1 − yit plv , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl ≤ 0 0 ≥M· X 0 dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 + M · 1 − yit pl v + M · 1 − yit plv ,∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl 0 l t pl (V +1) yi ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp 0 sit p sit 0 p 0 0 0 sit ≥ sit p − M · 1 − xit p , |L| p|L| t 0 p|L|v ≥ f2 · dv|L| + hi + ri − t 0 − M · 1 − yi , |L| p|L| t 0 p|L|v 0 |L| ≥ f1 · t − dv + hi + ri − M · 1 − yi , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , Pricing Constraints 0 0 Cit = q1 · wit + q1 · m · X xit 0 p · (|Lp | − 1) p∈P + q2 · XX p∈P ripl · xit 0 p + q2 · l∈Lp X 0 sit , ∀i ∈ I, ∀t 0 ∈ T i , p∈P 0 wit ≥ wit 0 0 − M · 1 − xit p , X t 0 pl 0 wit p ≥ wi , p ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp \1 wit 0 pl 0 0 0 ≥ dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 − M · 1 − yit pl v − M · 1 − yit plv , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl ≤ 0 0 ≥M· X 0 dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 + M · 1 − yit pl v + M · 1 − yit plv ,∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl 0 l t pl (V +1) yi ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp 0 sit p sit 0 p 0 0 0 sit ≥ sit p − M · 1 − xit p , |L| p|L| t 0 p|L|v ≥ f2 · dv|L| + hi + ri − t 0 − M · 1 − yi , |L| p|L| t 0 p|L|v 0 |L| ≥ f1 · t − dv + hi + ri − M · 1 − yi , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , Pricing Constraints 0 0 Cit = q1 · wit + q1 · m · X xit 0 p · (|Lp | − 1) p∈P + q2 · XX p∈P ripl · xit 0 p + q2 · l∈Lp X 0 sit , ∀i ∈ I, ∀t 0 ∈ T i , p∈P 0 wit ≥ wit 0 0 − M · 1 − xit p , X t 0 pl 0 wit p ≥ wi , p ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp \1 wit 0 pl 0 0 0 ≥ dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 − M · 1 − yit pl v − M · 1 − yit plv , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl ≤ 0 0 ≥M· X 0 dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 + M · 1 − yit pl v + M · 1 − yit plv ,∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl 0 l t pl (V +1) yi ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp 0 sit p sit 0 p 0 0 0 sit ≥ sit p − M · 1 − xit p , |L| p|L| t 0 p|L|v ≥ f2 · dv|L| + hi + ri − t 0 − M · 1 − yi , |L| p|L| t 0 p|L|v 0 |L| ≥ f1 · t − dv + hi + ri − M · 1 − yi , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , Pricing Constraints 0 0 Cit = q1 · wit + q1 · m · X xit 0 p · (|Lp | − 1) p∈P + q2 · XX p∈P ripl · xit 0 p + q2 · l∈Lp X 0 sit , ∀i ∈ I, ∀t 0 ∈ T i , p∈P 0 wit ≥ wit 0 0 − M · 1 − xit p , X t 0 pl 0 wit p ≥ wi , p ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp \1 wit 0 pl 0 0 0 ≥ dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 − M · 1 − yit pl v − M · 1 − yit plv , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl ≤ 0 0 ≥M· X 0 dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 + M · 1 − yit pl v + M · 1 − yit plv ,∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl 0 l t pl (V +1) yi ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp 0 sit p sit 0 p 0 0 0 sit ≥ sit p − M · 1 − xit p , |L| p|L| t 0 p|L|v ≥ f2 · dv|L| + hi + ri − t 0 − M · 1 − yi , |L| p|L| t 0 p|L|v 0 |L| ≥ f1 · t − dv + hi + ri − M · 1 − yi , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , Pricing Constraints 0 0 Cit = q1 · wit + q1 · m · X xit 0 p · (|Lp | − 1) p∈P + q2 · XX p∈P ripl · xit 0 p + q2 · l∈Lp X 0 sit , ∀i ∈ I, ∀t 0 ∈ T i , p∈P 0 wit ≥ wit 0 0 − M · 1 − xit p , X t 0 pl 0 wit p ≥ wi , p ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp \1 wit 0 pl 0 0 0 ≥ dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 − M · 1 − yit pl v − M · 1 − yit plv , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl ≤ 0 0 ≥M· X 0 dvl + hipl − dvl 0 + hipl + ripl + m 0 0 0 0 + M · 1 − yit pl v + M · 1 − yit plv ,∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp : 0 l > 1, l 0 = l − 1, ∀v ∈ V l , ∀v 0 ∈ V l , wit 0 pl 0 l t pl (V +1) yi ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , l∈Lp 0 sit p sit 0 p 0 0 0 sit ≥ sit p − M · 1 − xit p , |L| p|L| t 0 p|L|v ≥ f2 · dv|L| + hi + ri − t 0 − M · 1 − yi , |L| p|L| t 0 p|L|v 0 |L| ≥ f1 · t − dv + hi + ri − M · 1 − yi , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀v ∈ V |L| , Feasibility Constraints X 0 xit p = 1, ∀i ∈ I, ∀t 0 ∈ T i , p∈P i X 0 ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp , = c · zvl , ∀l ∈ L, ∀v ∈ V : v > 1, yit plv = 1, v ∈V l +1 l dv − dvl −1 domain constraints 18 / 28 Feasibility Constraints X 0 xit p = 1, ∀i ∈ I, ∀t 0 ∈ T i , p∈P i X 0 ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp , = c · zvl , ∀l ∈ L, ∀v ∈ V : v > 1, yit plv = 1, v ∈V l +1 l dv − dvl −1 domain constraints 18 / 28 Feasibility Constraints X 0 xit p = 1, ∀i ∈ I, ∀t 0 ∈ T i , p∈P i X 0 ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp , = c · zvl , ∀l ∈ L, ∀v ∈ V : v > 1, yit plv = 1, v ∈V l +1 l dv − dvl −1 domain constraints 18 / 28 Feasibility Constraints X 0 xit p = 1, ∀i ∈ I, ∀t 0 ∈ T i , p∈P i X 0 ∀i ∈ I, ∀t 0 ∈ T i , ∀p ∈ P i , ∀l ∈ Lp , = c · zvl , ∀l ∈ L, ∀v ∈ V : v > 1, yit plv = 1, v ∈V l +1 l dv − dvl −1 domain constraints 18 / 28 Case Study – Israel • OD Matrix for an average working day (Sunday to Thursday) in Israel during 2008 • 47 Stations • 2162 ODs • 36 (unidirectional) lines • 389 trains • Min. transfer – 4 mins • VOT – 21.12 NIS per hour Too Heavy – Branch-and-Price Framework Start Initial Columns Solve Master Problem Dual Variables New Columns with Negative Reduced Cost • Initial Solution Pricing Solver • Column Generation – Lower Bound No Columns with Negative Reduced Cost Integer Solution? • Branch and Bound – Optimal Integer No Branch & Bound Solution yes Output Solution End 20 / 28 Initial Solution Start Initial Columns Solve Master Problem Dual Variables New Columns with Negative Reduced Cost Pricing Solver No Columns with Negative Reduced Cost Integer Solution? No Branch & Bound yes Output Solution End 21 / 28 Master Problem (MP) Start Initial Columns Solve Master Problem Dual Variables Idea New Columns with Negative Reduced Cost • Formulated as a Set Partitioning Problem Pricing Solver • Decision variables are relaxed, solution No Columns with Negative Reduced Cost Integer Solution? yes space restricted No Branch & Bound • Consists of the feasibility constraints Go to model Output Solution End 22 / 28 MP – Column Start Time 1 Initial Columns Line 1 Solve Master Problem Dual Variables Time 1 New Columns with Negative Reduced Cost Pricing Solver OD Pair i at time t’ No Columns with Negative Reduced Cost Integer Solution? No Time 2 Line 2 Time 2 Line 3 Time 1 Branch & Bound Time 2 yes Output Solution Line 4 Time 1 Time 2 End 23 / 28 Sub-Problem (SP) Start Initial Columns Idea Solve Master Problem Dual Variables • run for each OD pair i, each ideal time New Columns with Negative Reduced Cost t 0 ∈ T i and each path p ∈ P i separately Pricing Solver • Consists of the pricing constraints No Columns with Negative Reduced Cost Integer Solution? yes Output Solution Go to model No Branch & Bound Dual Variables 0 • αit , βlt End 24 / 28 Results – 6 a.m. to 8 a.m. Current [NIS] 220 218 219 217 213 279.32 564.49 271.56 644.50 957.08 Column Generation # iter. 2 2 2 2 2 time 48m 48m 46m 48m 45m 19s 15s 12s 01s 00s Ω1 228 230 233 228 226 859 941 627 849 772 lb [NIS] 132 131 131 130 127 371.26 582.85 420.41 494.59 586.58 Cyclic decrease [%] 40 40 40 40 40 ub [NIS] 209 207 207 208 205 791.62 717.86 886.98 275.88 328.12 Non-Cyclic ub [NIS] 204 202 201 203 199 770.06 209.67 949.28 133.08 417.99 25 / 28 Conclusions • New planning phase based on the demand • In line with the new market structure • Can handle both non- and cyclic timetables • Takes care of the connections, in the current practice: – non-cyclic – does not exist – cyclic – always imposed • Returns ideal timetables, its cost and the routings of the passengers 26 / 28 Future Work • Unsolvable using exact method • Brute force algorithm to evaluate current timetable • Heuristic to solve the whole day 27 / 28 Thank you for your attention. MP – Inputs a∈Ω i ∈I t∈T t0 ∈ T i – – – – l ∈L c Ca Da nl – – – – – Bait Ealt 0 = = Go back set of all possible assignments set of origin-destination pairs set of all time steps set of times that there is a demand between OD i set of operated lines cycle cost of the assignment a demand using assignment a number of available train units on line l ( 1 if OD pair i at time t 0 is assigned in assignment a, 0 otherwise. ( 1 if the assignment a is using line l at time t, 0 otherwise. MP – Decisions Start Initial Columns Solve Master Problem Dual Variables New Columns with Negative Reduced Cost λa Pricing Solver No Columns with Negative Reduced Cost Integer Solution? yes Output Solution End xlt No Branch & Bound – – n 1 0 if assignment a is a part of the solution, otherwise. n 1 0 if there is a train scheduled on line l at time t, otherwise. MP min X Da · Ca · λa a∈Ω 0 Bait · λa = 1, ∀i ∈ I, ∀t 0 ∈ T i , Ealt · λa ≤ xlt , ∀l ∈ L, ∀t ∈ T , X a∈Ω X a∈Ω X xlt ≤ nl , ∀l ∈ L, t∈T min(t+c,T ) X 00 xlt ≤ 1, ∀l ∈ L, ∀t ∈ T , t 00 =t λa ∈ {0, 1} , xlt ∈ {0, 1} , ∀a ∈ Ω, ∀l ∈ L, t ∈ T . MP min X Da · Ca · λa a∈Ω 0 Bait · λa = 1, ∀i ∈ I, ∀t 0 ∈ T i , Ealt · λa ≤ xlt , ∀l ∈ L, ∀t ∈ T , X a∈Ω X a∈Ω X xlt ≤ nl , ∀l ∈ L, t∈T min(t+c,T ) X 00 xlt ≤ 1, ∀l ∈ L, ∀t ∈ T , t 00 =t λa ∈ {0, 1} , xlt ∈ {0, 1} , ∀a ∈ Ω, ∀l ∈ L, t ∈ T . MP min X Da · Ca · λa a∈Ω 0 Bait · λa = 1, ∀i ∈ I, ∀t 0 ∈ T i , Ealt · λa ≤ xlt , ∀l ∈ L, ∀t ∈ T , X a∈Ω X a∈Ω X xlt ≤ nl , ∀l ∈ L, t∈T min(t+c,T ) X 00 xlt ≤ 1, ∀l ∈ L, ∀t ∈ T , t 00 =t λa ∈ {0, 1} , xlt ∈ {0, 1} , ∀a ∈ Ω, ∀l ∈ L, t ∈ T . MP min X Da · Ca · λa a∈Ω 0 Bait · λa = 1, ∀i ∈ I, ∀t 0 ∈ T i , Ealt · λa ≤ xlt , ∀l ∈ L, ∀t ∈ T , X a∈Ω X a∈Ω X xlt ≤ nl , ∀l ∈ L, t∈T min(t+c,T ) X 00 xlt ≤ 1, ∀l ∈ L, ∀t ∈ T , t 00 =t λa ∈ {0, 1} , xlt ∈ {0, 1} , ∀a ∈ Ω, ∀l ∈ L, t ∈ T . MP min X Da · Ca · λa a∈Ω 0 Bait · λa = 1, ∀i ∈ I, ∀t 0 ∈ T i , Ealt · λa ≤ xlt , ∀l ∈ L, ∀t ∈ T , X a∈Ω X a∈Ω X xlt ≤ nl , ∀l ∈ L, t∈T min(t+c,T ) X 00 xlt ≤ 1, ∀l ∈ L, ∀t ∈ T , t 00 =t λa ∈ {0, 1} , xlt ∈ {0, 1} , ∀a ∈ Ω, ∀l ∈ L, t ∈ T . MP min X Da · Ca · λa a∈Ω 0 Bait · λa = 1, ∀i ∈ I, ∀t 0 ∈ T i , Ealt · λa ≤ xlt , ∀l ∈ L, ∀t ∈ T , X a∈Ω X a∈Ω X xlt ≤ nl , ∀l ∈ L, t∈T min(t+c,T ) X 00 xlt ≤ 1, ∀l ∈ L, ∀t ∈ T , t 00 =t λa ∈ {0, 1} , xlt ∈ {0, 1} , ∀a ∈ Ω, ∀l ∈ L, t ∈ T . MP min X Da · Ca · λa a∈Ω 0 Bait · λa = 1, ∀i ∈ I, ∀t 0 ∈ T i , Ealt · λa ≤ xlt , ∀l ∈ L, ∀t ∈ T , X a∈Ω X a∈Ω X xlt ≤ nl , ∀l ∈ L, t∈T min(t+c,T ) X 00 xlt ≤ 1, ∀l ∈ L, ∀t ∈ T , t 00 =t λa ∈ {0, 1} , xlt ∈ {0, 1} , ∀a ∈ Ω, ∀l ∈ L, t ∈ T . SP – Inputs Start Initial Columns Solve Master Problem Dual Variables New Columns with Negative Reduced Cost Pricing Solver Go back i t0 p t∈T l ∈ Lp – – – – – rl hl – – m q1 q2 f1 f2 – – – – – No Columns with Negative Reduced Cost Integer Solution? yes Output Solution End No Branch & Bound the origin destination pair ideal travel time for OD pair i path of the sub-problem set of all time steps the sequence of lines used to get from the origin to the destination running time of line l running time to get from the starting station of the line l to the first station on the same line included in the current path the minimum transfer time the value of time spent waiting the value of time spent in vehicle coefficient of being early coefficient of being late SP – Decision Variables Start ( Initial Columns Solve Master Problem Dual Variables New Columns with Negative Reduced Cost betalt – w – wl – s – C – Pricing Solver No Columns with Negative Reduced Cost Integer Solution? No Branch & Bound yes Output Solution End 1 if line l is used at time t, 0 otherwise. the total waiting time of the passengers the waiting time of the passengers when transferring to line l scheduled delay of the passengers the cost of the passengers SP – Model ! min C − α+ XX l∈L t βl · t betal t∈T ! C = q1 · w + q1 · m · (|L| − 1) + q2 · X l r + q2 · s l∈L X t betal = 1, p l ∈L , t∈T w = X wl , l∈L\1 wl ≥ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , p ∀l ∈ L : l > 1, ∀t, t t ≥t wl ≤ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , s ≥ f1 · t t · beta|L| + h|L| 0 t − t , , −t t · beta|L| + h|L| 0 domain 00 ∈T : + hl−1 + rl−1 p ∀l ∈ L : l > 1, ∀t, t t ≥t s ≥ f2 · 00 00 00 + hl−1 + rl−1 ∀t ∈ T , ∀t ∈ T , constraints ∈T : SP – Model ! min C − α+ XX l∈L t βl · t betal t∈T ! C = q1 · w + q1 · m · (|L| − 1) + q2 · X l r + q2 · s l∈L X t betal = 1, p l ∈L , t∈T w = X wl , l∈L\1 wl ≥ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , p ∀l ∈ L : l > 1, ∀t, t t ≥t wl ≤ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , s ≥ f1 · t t · beta|L| + h|L| 0 t − t , , −t t · beta|L| + h|L| 0 domain 00 ∈T : + hl−1 + rl−1 p ∀l ∈ L : l > 1, ∀t, t t ≥t s ≥ f2 · 00 00 00 + hl−1 + rl−1 ∀t ∈ T , ∀t ∈ T , constraints ∈T : SP – Model ! min C − α+ XX l∈L t βl · t betal t∈T ! C = q1 · w + q1 · m · (|L| − 1) + q2 · X l r + q2 · s l∈L X t betal = 1, p l ∈L , t∈T w = X wl , l∈L\1 wl ≥ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , p ∀l ∈ L : l > 1, ∀t, t t ≥t wl ≤ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , s ≥ f1 · t t · beta|L| + h|L| 0 t − t , , −t t · beta|L| + h|L| 0 domain 00 ∈T : + hl−1 + rl−1 p ∀l ∈ L : l > 1, ∀t, t t ≥t s ≥ f2 · 00 00 00 + hl−1 + rl−1 ∀t ∈ T , ∀t ∈ T , constraints ∈T : SP – Model ! min C − α+ XX l∈L t βl · t betal t∈T ! C = q1 · w + q1 · m · (|L| − 1) + q2 · X l r + q2 · s l∈L X t betal = 1, p l ∈L , t∈T w = X wl , l∈L\1 wl ≥ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , p ∀l ∈ L : l > 1, ∀t, t t ≥t wl ≤ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , s ≥ f1 · t t · beta|L| + h|L| 0 t − t , , −t t · beta|L| + h|L| 0 domain 00 ∈T : + hl−1 + rl−1 p ∀l ∈ L : l > 1, ∀t, t t ≥t s ≥ f2 · 00 00 00 + hl−1 + rl−1 ∀t ∈ T , ∀t ∈ T , constraints ∈T : SP – Model ! min C − α+ XX l∈L t βl · t betal t∈T ! C = q1 · w + q1 · m · (|L| − 1) + q2 · X l r + q2 · s l∈L X t betal = 1, p l ∈L , t∈T w = X wl , l∈L\1 wl ≥ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , p ∀l ∈ L : l > 1, ∀t, t t ≥t wl ≤ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , s ≥ f1 · t t · beta|L| + h|L| 0 t − t , , −t t · beta|L| + h|L| 0 domain 00 ∈T : + hl−1 + rl−1 p ∀l ∈ L : l > 1, ∀t, t t ≥t s ≥ f2 · 00 00 00 + hl−1 + rl−1 ∀t ∈ T , ∀t ∈ T , constraints ∈T : SP – Model ! min C − α+ XX l∈L t βl · t betal t∈T ! C = q1 · w + q1 · m · (|L| − 1) + q2 · X l r + q2 · s l∈L X t betal = 1, p l ∈L , t∈T w = X wl , l∈L\1 wl ≥ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , p ∀l ∈ L : l > 1, ∀t, t t ≥t wl ≤ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , s ≥ f1 · t t · beta|L| + h|L| 0 t − t , , −t t · beta|L| + h|L| 0 domain 00 ∈T : + hl−1 + rl−1 p ∀l ∈ L : l > 1, ∀t, t t ≥t s ≥ f2 · 00 00 00 + hl−1 + rl−1 ∀t ∈ T , ∀t ∈ T , constraints ∈T : SP – Model ! min C − α+ XX l∈L t βl · t betal t∈T ! C = q1 · w + q1 · m · (|L| − 1) + q2 · X l r + q2 · s l∈L X t betal = 1, p l ∈L , t∈T w = X wl , l∈L\1 wl ≥ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , p ∀l ∈ L : l > 1, ∀t, t t ≥t wl ≤ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , s ≥ f1 · t t · beta|L| + h|L| 0 t − t , , −t t · beta|L| + h|L| 0 domain 00 ∈T : + hl−1 + rl−1 p ∀l ∈ L : l > 1, ∀t, t t ≥t s ≥ f2 · 00 00 00 + hl−1 + rl−1 ∀t ∈ T , ∀t ∈ T , constraints ∈T : SP – Model ! min C − α+ XX l∈L t βl · t betal t∈T ! C = q1 · w + q1 · m · (|L| − 1) + q2 · X l r + q2 · s l∈L X t betal = 1, p l ∈L , t∈T w = X wl , l∈L\1 wl ≥ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , p ∀l ∈ L : l > 1, ∀t, t t ≥t wl ≤ t t · betal + hl − t 00 t 00 · betal−1 + hl−1 + rl−1 + m , s ≥ f1 · t t · beta|L| + h|L| 0 t − t , , −t t · beta|L| + h|L| 0 domain 00 ∈T : + hl−1 + rl−1 p ∀l ∈ L : l > 1, ∀t, t t ≥t s ≥ f2 · 00 00 00 + hl−1 + rl−1 ∀t ∈ T , ∀t ∈ T , constraints ∈T :