Abstract
Due to unforeseen problems, disruptions occur in passenger railway operations. Proper real-time crew management is needed to prevent disruptions to spread over space and time. Netherlands Railways has algorithmic support from a solver to obtain good crew rescheduling solutions during big disruptions. However, small disruptions are still manually solved by human dispatchers who have limited solving capacity. In this paper the rescheduling for crews during small disruptions is modeled as inserting an uncovered task in a feasible set of duties. The problem is solved as an iterative-deepening depth-first search in a tree. To reduce computation time, we use several ideas to prune unpromising parts of the tree. We have tested the heuristic on about 5000 test instances obtained from real-world data. These tests show that the heuristic delivers good and desirable rescheduling solutions within at most 2 s.
Similar content being viewed by others
Notes
As we see later on, each node has over 1000 children. On average 124 children survive the basic feasibility check, which we explain in Sect. 4.1. Inserting an unplanned task in a duty is conditionally possible in about 17% of the cases. This means we branch further at on average 21 children. If the depth of the tree is bounded to 7, this already leads to more than a billion leaves. However, the depth of the tree could be much larger.
This sorting is done many times in the search through the tree. Therefore, we choose bucket sorting: Bucket sorting n elements can be done in linear time \(\mathcal {O}(n)\) as shown by Shutler et al. (2008), compared to \(\mathcal {O}(n\log {}n)\) for normal sorting.
Note that the higher probability in the graph between pV 750,000 and 820,000 is represented in the bucket sorting, where we place these values in a higher bucket compared to the next one.
Randstad is a conurbation in the Netherlands, consisting of the four largest cities and its surroundings. We include the following cities with all its train stations as locations: Almere, Amersfoort, Amsterdam, Alphen aan den Rijn, Barendrecht, Capelle aan den IJssel, Delft, Dordrecht, Gouda, Haarlem, Hilversum, Hoofddorp, Hoek van Holland, Houten, Leiden, Maassluis, Purmerend, Rijswijk, Rotterdam, Schiedam, The Hague, Utrecht, Vlaardingen, Voorburg, Zeist, Zoetermeer.
References
Abbink EJW (2014) Crew management in passenger rail transport, Ph.D. thesis Erasmus Research Institute of Management (ERIM), Erasmus University Rotterdam. EPS-2014-325-LIS
Abbink EJW, Mobach DGA, Fioole PJ, Kroon LG, Van der Heijden EHT, Wijngaards NJE (2010) Real-time train driver rescheduling by actor-agent techniques. Public Transport 2:249–268
Cacchiani V, Huisman D, Kidd M, Kroon L, Toth P, Veelenturf L, Wagenaar J (2014) An overview of recovery models for real-time railway rescheduling. Transp Res Part B 63:15–37
Huisman D (2007) A column generation approach for the rail crew rescheduling problem. Eur J Oper Res 180:163–173
Korf RE (1985) Depth-first iterative-deepening: an optimal admissible tree search. Artif Intell 27:97–109
Morgado E, Martins JP (2012) Automated real-time dispatching support. In: Proceedings of the 2012 APTA rail conference
Potthoff D (2010) Railway crew rescheduling: novel approaches and extensions, Ph.D. thesis. Erasmus University Rotterdam
Potthoff D, Huisman D, Desaulniers G (2010) Column generation with dynamic duty selection for railway crew rescheduling. Transp Sci 44:493–505
Rezanova NJ, Ryan DM (2010) The train driver recovery problem—a set partitioning based model and solution method. Comput Oper Res 37:845–856
Shutler PME, Sim SW, Lim WYS (2008) Analysis of linear time sorting algorithms. Comput J 51:451–469
Veelenturf LP, Potthoff D, Huisman D, Kroon LG (2012) Railway crew rescheduling with retiming. Transp Res Part C 20:95–110
Veelenturf LP, Potthoff D, Huisman D, Kroon LG, Maróti G, Wagelmans APM (2016) A quasi-robust optimization approach for crew rescheduling. Transp Sci 50:204–215
Walker CG, Snowdon JN, Ryan DM (2005) Simultaneous disruption recovery of a train timetable and crew roster in real time. Comput Oper Res 32:2077–2094
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Verhaegh, T., Huisman, D., Fioole, PJ. et al. A heuristic for real-time crew rescheduling during small disruptions. Public Transp 9, 325–342 (2017). https://doi.org/10.1007/s12469-017-0155-1
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s12469-017-0155-1