Abstract
The problem of scheduling a set of trains traveling through a given railway network consisting of single tracks, sidings and stations is considered. For every train a fixed route and travel times, an earliest departure time at the origin and a desired arrival time at the destination are given. A feasible schedule has to be determined which minimizes total tardiness of all trains at their destinations. This train scheduling problem is modeled as a job-shop scheduling problem with blocking constraints, where jobs represent trains and machines constitute tracks or track sections. Four MIP formulations without time-indexed variables are developed based on two different transformation approaches of parallel tracks and two different types of decision variables leading to job-shop scheduling problems with or without routing flexibility. A computational study is made on hard instances with up to 20 jobs and 11 machines to compare the MIP models in terms of total tardiness values, formulation size and computation time.
Similar content being viewed by others
References
Burdett, R. L., & Kozan, E. (2010). A disjunctive graph model and framework for constructing new train schedules. European Journal of Operational Research, 200(1), 85–98.
Cacchiani, V., Galli, L. & Toth, P. (2013). A tutorial on train timetabling and train platforming problems. Tech. Rep. TR-13-10, Universit di Pisa, Dipartimanto di Informatica.
Cai, X., & Goh, C. J. (1994). A fast heuristic for the train scheduling problem. Computers and Operations Research, 21(5), 499–510.
Carey, M. & Lockwood, D. (1995). A model, algorithms and strategy for train pathing. Journal of the Operational Research Society, 46, 988–1005.
Cordeau, J. F., Toth, P., & Vigo, D. (1998). A survey of optimization models on train routing and scheduling. Transportation Science, 32(4), 380–404.
D’Ariano, A., Corman, F., Pacciarelli, D., & Pranzo, M. (2008). Reordering and local rerouting strategies to manage train traffic in real time. Transportation Science, 42(4), 405–419.
D’Ariano, A., Pacciarelli, D., & Pranzo, M. (2007). A branch and bound algorithm for scheduling trains in a railway network. European Journal of Operational Research, 183(2), 643–657.
Dorfman, M., & Medanic, J. (2004). Scheduling trains on a railway network using a discrete event model of railway traffic. Transportation Research Part B, 38(1), 81–98.
Gholami, O., Sotskov, Y. N., & Werner, F. (2013). Fast edge-orientation heuristics for job-shop scheduling problems with applications to train scheduling. International Journal of Operational Research, 2, 19–32.
Ghoseiri, K., Szidarovszky, F., & Asgharpour, M. J. (2004). A multi-objective train scheduling model and solution. Transportation Research Part B: Methodological, 38(10), 927–952.
Groeflin, H., & Klinkert, A. (2009). A new neighborhood and tabu search for the blocking job shop. Discrete Applied Mathematics, 157(17), 3643–3655.
Harrod, S. (2011). Modeling network transition constraints with hypergraphs. Transportation Science, 45(1), 81–97.
Higgins, A., Kozan, E., & Ferreira, L. (1996). Optimal scheduling of trains on a single line track. Transportation Research Part B: Methodological, 30(2), 147–161.
Higgins, A., Kozan, E., & Ferreira, L. (1997). Heuristic techniques for single line train scheduling. Journal of Heuristics, 3(1), 43–62.
Jovanovic, D., & Harker, P. T. (1991). Tactical scheduling of rail operations: The scan i system. Transportation Science, 25(1), 46–64.
Kreuger, P., Carlsson, M., Olsson, J., Sjöland, T. & Åström, E. (1997). Trip scheduling on single track networks–the tuff train scheduler. In: Workshop on industrial constraint directed scheduling (pp. 1–12).
Kuhpfahl, J., & Bierwirth, C. (2016). A study on local search neighborhoods for the job shop scheduling problem with total weighted tardiness objective. Computers and Operations Research, 66, 44–57.
Lamorgese, L., & Mannino, C. (2013). The track formulation for the train dispatching problem. Electronic Notes in Discrete Mathematics, 41, 559–566.
Lange, J. (2015). Approaches to modeling job-shop problems with blocking constraints. In: Proceedings of the 7th multidisciplinary international conference on scheduling: Theory and applications (pp. 645–648). Prague.
Li, F., Gao, Z., Li, K., & Yang, L. (2008). Efficient scheduling of railway traffic based on global information of train. Transportation Research Part B, 42(10), 1008–1030.
Liu, S. Q., & Kozan, E. (2009). Scheduling trains as a blocking parallel-machine job shop scheduling problem. Computers and Operations Research, 36(10), 2840–2852.
Lusby, R. M., Larsen, J., Ehrgott, M., & Ryan, D. (2011). Railway track allocation: Models and methods. OR Spectrum, 33(4), 843–883.
Manne, A. S. (1960). On the job-shop scheduling problem. Operations Research, 8(2), 219–223.
Mascis, A., & Pacciarelli, D. (2002). Job-shop scheduling with blocking and no-wait constraints. European Journal of Operational Research, 143(3), 498–517.
Meng, L., & Zhou, X. (2014). Simultaneous train rerouting and rescheduling on an n-track network: A model reformulation with network-based cumulative flow variables. Transportation Research Part B: Methodological, 67, 208–234.
Niu, H., & Zhou, X. (2013). Optimizing urban rail timetable under time-dependent demand and oversaturated conditions. Transportation Research Part C: Emerging Technologies, 36, 212–230.
Niu, H., Zhou, X., & Gao, R. (2015). Train scheduling for minimizing passenger waiting time with time-dependent demand and skip-stop patterns: Nonlinear integer programming models with linear constraints. Transportation Research Part B: Methodological, 76, 117–135.
Oliveira, E. & Smith, B.M. (2000). A job-shop scheduling model for the single-track railway scheduling problem. Research Report Series 21, School of Computing, University of Leeds.
Pan, C. H. (1997). A study of integer programming formulations for scheduling problems. International Journal of Systems Science, 28(1), 33–41.
Sauder, R. L., & Westerman, W. M. (1983). Computer aided train dispatching: Decision support through optimization. Interfaces, 13(6), 24–37.
Szpigel, B. (1973). Optimal train scheduling on a single track railway. In M. Ross (Ed.), Operations Research. International Federation of Operational Research Societies (Vol. 72, pp. 343–352). Amsterdam: North-Holland Publishing Company.
Törnquist, J., & Persson, J. A. (2007). N-tracked railway traffic re-scheduling during disturbances. Transportation Research Part B: Methodological, 41(3), 342–362.
Veelenturf, L.P., Kidd, M.P., Cacchiani, V., Kroon, L.G. & Toth, P. (2015). A railway timetable rescheduling approach for handling large-scale disruptions. Transportation Science, 50(3), 841–862.
Vepsalainen, A. P., & Morton, T. E. (1987). Priority rules for job shops with weighted tardiness costs. Management Science, 33(8), 1035–1047.
Wagner, H. M. (1959). An integer linear-programming model for machine scheduling. Naval Research Logistics Quarterly, 6(2), 131–140.
Xu, X., Li, K., & Yang, L. (2015). Scheduling heterogeneous train traffic on double tracks with efficient dispatching rules. Transportation Research Part B, 78, 364–384.
Yang, L., Li, K., & Gao, Z. (2009). Train timetable problem on a single-line railway with fuzzy passenger demand. IEEE Transactions on Fuzzy Systems, 17(3), 617–629.
Zhou, X., & Zhong, M. (2007). Single-track train timetabling with guaranteed optimality: Branch-and-bound algorithms with enhanced lower bounds. Transportation Research Part B: Methodological, 41(3), 320–341.
Author information
Authors and Affiliations
Corresponding author
Appendix: Notation
Appendix: Notation
Sets and indices
- \({{\mathcal {J}}}\):=:
-
\( \{J_i \mid i=1,2,\ldots ,n\}\) set of jobs (trains)
- \({\mathcal {L}}^k\):=:
-
\( \{l \mid l=1,2,\ldots ,m_k \}\) set of parallel machine units (track lines) of machine \(M_k\)
- \({{\mathcal {M}}}\):=:
-
\( \{M_k \mid k=1,2,\ldots ,m\}\) set of machines (track sections)
- \({{\mathcal {M}}}^i\):=:
-
\( \{M_k \mid \exists ~rout_{ij} = k \}\) set of machines, on which job \(J_i\) has to be processed
- \({\mathcal {O}}^{i}\):=:
-
\( \{O_{ij} \mid j=1,2,\ldots ,n_i\}\) ordered set of operations of job \(J_i\)
- \(OpMa^{k}\):=:
-
\( \{O_{ij} \mid rout_{ij} = k \}\) set of operations having to be processed on machine \(M_k\)
- \({\mathcal {R}}^k\):=:
-
\( \{r \mid r=1,2,\ldots , R_k\}\) set of order positions on machine \(M_k\)
- \({\mathcal {R}}^{kl}\):=:
-
\( \{r \mid r=1,2,\ldots , R_{kl}\}\) set of order positions on unit l of machine \(M_k\)
Parameters
- \(d_i\):=:
-
due time of job \(J_i\), (desired arrival time of a train at its final destination)
- \(p_{ij}\):=:
-
processing time of operation \(O_{ij}\), (running time of a train in a track section)
- \(r_i\):=:
-
release time of job \(J_i\), (earliest departure time of a train at its starting station)
- \(rout_{ij}\):=:
-
index of the machine \(M_k\), on which operation \(O_{ij}\) has to be processed
Decision variables
- \(C_i\):=:
-
completion time of job \(J_i\), (arrival time of a train at its final destination)
- \(T_i\):=:
-
tardiness of job \(J_i\), (tardiness of a train at its final destination)
- \(s_{ij}\):=:
-
starting time of operation \(O_{ij}\) of job \(J_i\)
Rights and permissions
About this article
Cite this article
Lange, J., Werner, F. Approaches to modeling train scheduling problems as job-shop problems with blocking constraints. J Sched 21, 191–207 (2018). https://doi.org/10.1007/s10951-017-0526-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10951-017-0526-0