1 / 18

Solving the dispatching problem by MILP

Solving the dispatching problem by MILP. INFORMS RAILWAY COMPETITION 2012 Phoenix , 2012 , October 14. MIMIC ( M ixed I nteger M aurizio I gor C arlo) Carlo Mannino SINTEF ICT (Oslo), University of Rome Maurizio Boccia University of Sannio, Benevento

stormy
Download Presentation

Solving the dispatching problem by MILP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Solving the dispatching problem by MILP INFORMS RAILWAY COMPETITION 2012 Phoenix, 2012, October 14 MIMIC (Mixed Integer Maurizio Igor Carlo) Carlo ManninoSINTEF ICT (Oslo), University of Rome Maurizio Boccia University of Sannio, Benevento Igor Vasiliev (Russian Academy of Sciences, Irkutsk)

  2. Outline 1The model: representing train movements and conflicts resolution 2 Reduce complexity: simplifying the network and conflicts representation 3 Casting into Mixed Integer Linear Program. 4 Computations

  3. Modelling train movements E D D • Train movements are represented by oriented path (routes) 14 5 13 15 16 17 18 time train Denters the segment starting at u • WANT: find a schedule twhich minimize c(t) (complicated)

  4. Conflicts E • For every possible conflict decide which train goes first tD14 D D • No two trains can occupy simultaneously the same segment (conflict) 14 5 13 15 16 17 18 15 16 17 18 19 13 14 Routes Graph • Conflict point: first or last point of a common segment E

  5. Modelling train movements 17 18 E 15 13 16 14 • For every possible conflict point decide which train goes first D D D E 14 5 13 15 16 17 18 OR disjunctive precendence constraint 15 16 17 18 19 13 14 OR OR E

  6. Given • a rail network • a set of trains T and their current position • a cost function c • Find: • a routing for Ta route for each train in T • and aschedule t a starting timetiufor each train iand each segmentuvin the route of i • So that: • no conflicts occur and c(t) is minimized Real-time train dispatching problem • Given: • set of networks N = {(T1, R1), …, (Tn, Rn)} • fading matrix [Atj]tT, jR • frequency domain Ft, tR • revenue function u(C(p, f, s)) = u(p, f, s) of the coverage • Sdsdsdfasdasa The problem • No conflicts: decide disjunction for each common segment • Typically we have too many routes, too many disjunctions.

  7. Approaches to train dispatching • Lines with multiple tracks, sidings, cross-overs, stations: very complex. • Literature focused on sub-problems: • Singletrack (no station): • Afonso and Bispo 2011, Mladenovic and Cangalovic 2007, Romeiro de Jesus 2010, Sahin et al 2008, Sindaravalli et al 2010, Lamorgese and Mannino 2012, • Single (complcated) station (no connecting tracks) • Caimi 2009, Luethi et al 2006. • Limited regions, junctions • Mazzarello and Ottaviani 2005, Rodriguez 2005, Luethiet al. 2006, Mannino and Mascis2009, Acuna-Agost et al 2010, Corman et al. 2010, Harrod 2011, Lusby et al 2011

  8. Reducing complexity: routes • We neglect sidings 4 routes 1 route • 1 route substitutes 2k routes • We need to take into account that trains can use sidings to meet or pass each other

  9. Handling meet/pass events siding section S • S is represented in train routes by two nodes (inSand outS) A 15 18 inS outS 21 22 26 15 18 outS inS 21 22 12 • A and B meet (pass) in the siding section S if and only if: A entersS beforeB leaves SAND BentersS beforeA leavesS • This can be expressed by two (standard) precedence constraints B AND

  10. tD8 tA1 tB1 tBa tAa tDm tD7 tB2 tA2 tAd tBd tDg tB5 tA5 tD5 tBg tAg tDd tA7 tB7 tD2 tBm tDa tAm tA8 tD1 tB8 Back to conflicts • Each potential conflict is represented by a disjunction D C A B tC5 tCa tC2 tCd tC1 • Even if some fixing may help, it is crucial to reduce the number of disjunctions explicitlyrepresented in the model.

  11. Limiting explicit disjunctions 4 7 8 10 11 3 5 12 6 9 1 2 main 1 main 2 17 18 21 22 24 25 15 19 26 16 20 23 • It suffices to consider only the extreme points of the common tracks D D D E enters 15 before DORDenters 22 before E 15 18 S1 S2 21 22 26 OR 15 18 S2 S1 21 22 12 E E E OR

  12. Modelling meet-pass events 4 7 8 10 11 3 5 12 6 9 1 2 main 1 main 2 17 18 21 22 24 25 15 19 26 16 20 23 28 27 • With a siding then we have a trisjunctrion: D D D E enters 15 before DORD and E meet at siding ORDenters 22 before E 15 18 inS outS 21 22 26 OR OR 15 18 outS inS 21 22 12 E E E OR AND OR

  13. Mixed Integer Linear Programming • We represent and solve the problem by using Mixed Integer Linear Programming • Sub-problems: 1. scheduling, 2. routing, 3. meet/pass decisions Modelling scheduling • Two competing approaches (in the literature) • Time indexed: • - better bounds, many variables and constraints • Continuous : • - worse bounds, but “few” variables and constraints If train ienters segment sat time t the time train ienters segment s • Our initial experiments ruled out time-indexed formulations (unsuitable for our real-time application)

  14. Modelling Routing Modelling Routing: two classical approaches • The feasible routes are then the solutions to a (multi-commodity flow) system of linear equations: multi-commodity • Dantzig-Wolfe Reformulation • Exactly one route assigned to each train

  15. Meet-pass decision variables 15 18 S1 S2 21 22 26 OR OR 15 18 S2 S1 21 22 12 • The candidate meet-pass points Pij are either extremes of common tracks or siding sections D D i and j must meet • If i, j meet/pass at p, a set Apof precedence constraints holds E E

  16. Back to the problem • There are many more though minor constraints to take into account • Let alone the objective function, which is very complicated and needs additional mixed integer variables and constraints • The MILPs arising from the instances were too large to be solved to optimality (using CPLEX) • We resort to use the MILPs as building blocks in heuristics

  17. The algorithm • Two heuristic strategies: • 1. Limit “number of trains” (Fixed Trains Heuristic) • Solve a sequence of instances with growing sets of trains T0T1 …  T • Each obtained by adding ktrains to the previous set • Routing and meeting variables for trains in Tp are fixed when solving the instance relative to Tp+1 • 2. Limit "number of routings“ (Fixed Routes Heuristic) • Choose in advance some most promising routes for each train • We have route generation mechanisms

  18. Results • The fixed routes needs more time • Path and arc formulations. Have similar results in terms of cost • Path formulation 10-20 times faster than arc • Path formulation finds satisfactory solutions within time limit.

More Related