A Novel Multi-Agent-Based Approach for Train Rescheduling in Large-Scale Railway Networks
Abstract
1. Introduction
- Timetable Order Enforced (TTOE): Dispatch trains in the same sequence as their operational timetables.
- First Come First Served (FCFS): Prioritize the first train arriving at the last signal before a junction.
- Fast Line First (FLF): Prioritize trains on the fast line over those on the local line.
- Busy Line First (BLF): Dispatch trains from the line with a higher volume of traffic.
- (1)
- Hierarchical Multi-Agent System for Large-Scale Networks: We apply a hierarchical MAS to address train rescheduling challenges in large-scale railway networks. This includes detailed descriptions of the methods for network decomposition and the allocation of optimization tasks across the entire MAS.
- (2)
- Enhancements in the Searching Algorithm: We introduce two additional operators in the searching algorithm: modification and classification. The modification operator acts as a post-correction mechanism to ensure the feasibility of solutions under local operational constraints. The classification operator groups the final generation based on train sequence indicators, configuring the voting entities for the subsequent voting process.
- (3)
- Condorcet Voting Mechanism for Collaboration: A Condorcet voting mechanism is employed as a collaborative approach within the MAS, enabling the selection of the most acceptable solution across the entire network and ensuring global feasibility.
- (4)
- Case Study and Comparative Analysis: We conduct a case study that demonstrates the benefits of the MAS-based approach compared to First-Come-First-Served (FCFS) and Timetable Order Enforced (TTOE) routing rules. The analysis highlights the strengths and weaknesses of the MAS approach in the context of train rescheduling.
2. Literature Review
2.1. Railway Traffic Management Approaches
2.2. Multi-Agent System (MAS)
3. Problem Statement
4. Multi-Agent System for Train Rescheduling Problems
4.1. Problem Decomposition
4.2. Structure of MAS for Train Rescheduling Problem
4.3. Algorithm Development
- Modification Operator: This post-correction operator ensures that the solutions generated by the GA are feasible within the local context of each junction. It addresses any inconsistencies or infeasibilities that may arise in the solution space, ensuring that the results adhere to operational constraints.
- Classification Operator: This operator classifies the final generation of solutions based on the decision variable . Classification helps to organize and manage solutions, facilitating a more structured and efficient evaluation process.
Algorithm 1: GA for local searching in MAS |
1. Initialization: generate of individuals from |
2. While (! The local terminating condition is satisfied) |
3. Crossover: two-point crossover; |
4. Mutation: extended-line mutation; |
5. Modification: ensures all the operational constraints; |
6. Sorting; |
7. Selection: Maximum keeps individuals; |
8. End; |
9. Classification; |
10. Output the solution table to collaborative agent. |
4.3.1. Initialization
4.3.2. Crossover
4.3.3. Mutation
4.3.4. Modification
4.3.5. Sorting and Selection
4.3.6. Terminating Condition
4.3.7. Classification
4.4. Collaborative Strategy: Condorcet Voting Method
- Junction Agent A prefers the passing sequence of conflict trains (S1, S2, S3) to S1, S2, S3.
- Junction Agent B prefers S2, S3, S1.
- Junction Agent C prefers S3, S1, S2.
- (1)
- Voting sections covering multiple position variables (Priority 1):
- Voting sections that involve the same voting seeds (i.e., common trains or decision points) and cover the most position variables are prioritized.
- These sections are voted on first because their outcomes have the broadest impact on the network and can significantly influence other decisions.
- Resolving these high-impact voting sections early helps minimize conflicts and dependencies in subsequent votes.
- (2)
- Voting sections affecting other voting sections (Priority 2):
- Next, priority is given to voting sections that include the same one or two voting seeds, especially those in which the voting results could affect other sections.
- These sections are critical, as they may create cascading effects across the network, impacting decisions in other junctions.
- Voting on these sections second ensures that the most interconnected decisions are resolved before addressing more isolated conflicts.
- (3)
- Voting sections involving only two junction agents (Priority 3):
- Finally, voting sections that involve only two junction agents are addressed.
- These sections are voted on last because they are typically more localized and have a limited impact on the broader network.
- Resolving these simpler, less interconnected conflicts after the more complex sections helps streamline the decision-making process.
5. Case Study
5.1. Computational Complexity Analysis
- It dramatically reduces the problem’s search space to computationally tractable levels.
- It enables truly real-time operation for traffic control applications.
- It facilitates parallel computation through distributed junction agents, yielding significantly faster solutions than centralized methods.
5.2. Scenario Design
- Class I: Individual Entry Delay
- Class II: Multiple Entry Delays
- Class III: Minor Perturbation Delays
- (1)
- the scheduled departure time and
- (2)
- the arrival time + the required dwell time.
5.3. Computational Experiments and Discussion
- min;
- ;
- ;
- .
6. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
Abbreviations
Symbol | Description |
Set of trains, | |
Set of junctions, | |
Set of stations, | |
Set of routes at junction , | |
The original timetable of train at junction | |
Decision variable: the rescheduled timetable of train at junction | |
The original departure time of train at station | |
The rescheduled departure time of train at station | |
The rescheduled arrival time of train at station | |
The passing time of train at control boundary | |
The traveling time of train from control boundary to junction | |
The traveling time of train from junction to junction | |
The headway between train and train | |
The dwell time for train at station | |
The minimum connection time between train and at station | |
Decision variable: 1 if train is assigned former than train at junction , 0 otherwise | |
Indicator variable: 1 if route and have conflict at junction otherwise | |
Indicator variable: 1 if train has a scheduled dwell at station , 0 otherwise | |
Indicator variable: 1 if train and have a connection at station , 0 otherwise | |
Indicator variable: 1 if the passing sequence of train and has strong coupling at junction and junction , 0 otherwise |
References
- Liu, J.; Chen, L.; Roberts, C.; Li, Z.; Wen, T. A Multi-Agent Based Approach for Railway Traffic Management Problems. In Proceedings of the 2018 International Conference on Intelligent Rail Transportation, ICIRT 2018, Singapore, 12–14 December 2018; pp. 1–5. [Google Scholar]
- Liu, J.; Chen, L.; Roberts, C.; Nicholson, G.; Ai, B. Algorithm and Peer-to-Peer Negotiation Strategies for Train Dispatching Problems in Railway Bottleneck Sections. IET Intell. Transp. Syst. 2019, 13, 1717–1725. [Google Scholar] [CrossRef]
- Liu, J.; Lin, Z.; Liu, R. A Reinforcement Learning Approach to Solving Very-Short Term Train Rescheduling Problem for a Single-Track Rail Corridor. J. Rail Transp. Plan. Manag. 2024, 32, 100483. [Google Scholar] [CrossRef]
- Fischetti, M.; Monaci, M. Using a General-Purpose Mixed-Integer Linear Programming Solver for the Practical Solution of Real-Time Train Rescheduling. Eur. J. Oper. Res. 2017, 263, 258–264. [Google Scholar] [CrossRef]
- Cacchiani, V.; Huisman, D.; Kidd, M.; Kroon, L.; Toth, P.; Veelenturf, L.; Wagenaar, J. An Overview of Recovery Models and Algorithms for Real-Time Railway Rescheduling. Transp. Res. Part B Methodol. 2014, 63, 15–37. [Google Scholar] [CrossRef]
- Corman, F.; Meng, L. A Review of Online Dynamic Models and Algorithms for Railway Traffic Management. IEEE Trans. Intell. Transp. Syst. 2015, 16, 1274–1284. [Google Scholar] [CrossRef]
- D’Ariano, A.; Pacciarelli, D.; Pranzo, M. A Branch and Bound Algorithm for Scheduling Trains in a Railway Network. Eur. J. Oper. Res. 2007, 183, 643–657. [Google Scholar] [CrossRef]
- Pellegrini, P.; Marlière, G.; Rodriguez, J. Optimal Train Routing and Scheduling for Managing Traffic Perturbations in Complex Junctions. Transp. Res. Part B Methodol. 2014, 59, 58–80. [Google Scholar] [CrossRef]
- Pellegrini, P.; Marlière, G.; Pesenti, R.; Rodriguez, J. RECIFE-MILP: An Effective MILP-Based Heuristic for the Real-Time Railway Traffic Management Problem. IEEE Trans. Intell. Transp. Syst. 2015, 16, 2609–2619. [Google Scholar] [CrossRef]
- Samà, M.; Pellegrini, P.; D’Ariano, A.; Rodriguez, J.; Pacciarelli, D. Ant Colony Optimization for the Real-Time Train Routing Selection Problem. Transp. Res. Part B Methodol. 2016, 85, 89–108. [Google Scholar] [CrossRef]
- Samà, M.; Pellegrini, P.; D’Ariano, A.; Rodriguez, J.; Pacciarelli, D. On the Tactical and Operational Train Routing Selection Problem. Transp. Res. Part C Emerg. Technol. 2017, 76, 1–15. [Google Scholar] [CrossRef]
- Chen, L.; Roberts, C.; Schmid, F.; Stewart, E. Modeling and Solving Real-Time Train Rescheduling Problems in Railway Bottleneck Sections. IEEE Trans. Intell. Transp. Syst. 2015, 16, 1896–1904. [Google Scholar] [CrossRef]
- Mascis, A.; Pacciarelli, D. Job-Shop Scheduling with Blocking and No-Wait Constraints. Eur. J. Oper. Res. 2002, 143, 498–517. [Google Scholar] [CrossRef]
- D’Ariano, A.; Pacciarelli, D.; Pranzo, M. Assessment of Flexible Timetables in Real-Time Traffic Management of a Railway Bottleneck. Transp. Res. Part C Emerg. Technol. 2008, 16, 232–245. [Google Scholar] [CrossRef]
- Corman, F.; D’Ariano, A.; Pacciarelli, D.; Pranzo, M. Evaluation of Green Wave Policy in Real-Time Railway Traffic Management. Transp. Res. Part C Emerg. Technol. 2009, 17, 607–616. [Google Scholar] [CrossRef]
- Corman, F.; D’Ariano, A.; Pacciarelli, D.; Pranzo, M. A Tabu Search Algorithm for Rerouting Trains during Rail Operations. Transp. Res. Part B Methodol. 2010, 44, 175–192. [Google Scholar] [CrossRef]
- Corman, F.; D’Ariano, A.; Pacciarelli, D.; Pranzo, M. Centralized versus Distributed Systems to Reschedule Trains in Two Dispatching Areas. Public Transp. 2010, 2, 219–247. [Google Scholar] [CrossRef]
- Van Thielen, S.; Corman, F.; Vansteenwegen, P. Considering a Dynamic Impact Zone for Real-Time Railway Traffic Management. Transp. Res. Part B Methodol. 2018, 111, 39–59. [Google Scholar] [CrossRef]
- Wang, P.; Goverde, R.M.P.; van Luipen, J. A Connected Driver Advisory System Framework for Merging Freight Trains. Transp. Res. Part C Emerg. Technol. 2019, 105, 203–221. [Google Scholar] [CrossRef]
- Cascino, A.; Meli, E.; Rindi, A. Dynamic Size Optimization Approach to Support Railway Carbody Lightweight Design Process. Proc. Inst. Mech. Eng. Part F J. Rail Rapid Transit. 2022, 237, 871–881. [Google Scholar] [CrossRef]
- Bandini, A.; Cascino, A.; Meli, E.; Pinelli, L.; Marconcini, M. Improving Aeromechanical Performance of Compressor Rotor Blisk with Topology Optimization. Energies 2024, 17, 1883. [Google Scholar] [CrossRef]
- Weiss, G. Multiagent Systems; EBSCO ebook academic collection; MIT Press: Cambridge, MA, USA, 2013; ISBN 9780262018890. [Google Scholar]
- Castro, A.J.M.; Oliveira, E. A New Concept for Disruption Management in Airline Operations Control. Proc. Inst. Mech. Eng. Part G J. Aerosp. Eng. 2011, 225, 269–290. [Google Scholar] [CrossRef]
- Shibghatullah, A.S.; Eldabi, T.; Rzevski, G. A Framework for Crew Scheduling Management System Using Multiagents System. In Proceedings of the 28th International Conference on Information Technology Interfaces, Cavtat, Croatia, 19–22 June 2006; pp. 379–384. [Google Scholar]
- Abbink, E.; Fischetti, M.; Kroon, L.; Timmer, G.; Vromans, M. Reinventing Crew Scheduling at Netherlands Railways. INFORMS J. Appl. Anal. 2005, 35, 393–401. [Google Scholar] [CrossRef]
- Sato, K.; Tamura, K.; Tomii, N. A MIP-Based Timetable Rescheduling Formulation and Algorithm Minimizing Further Inconvenience to Passengers. J. Rail Transp. Plan. Manag. 2013, 3, 38–53. [Google Scholar] [CrossRef]
- Young, H.P. Condorcet’s Theory of Voting. Am. Polit. Sci. Rev. 1988, 82, 1231–1244. [Google Scholar] [CrossRef]
- Gehrlein, W.V. Condorcet’s Paradox and the Likelihood of Its Occurrence: Different Perspectives on Balanced Preferences. Theory Decis. 2002, 52, 171–199. [Google Scholar] [CrossRef]
- Dai, L. Intelligent Real-Time Train Rescheduling Management for Railway System; University of Birmingham: Birmingham, UK, 2016. [Google Scholar]
Variable or Constraints | Asymptotic Complexity of the Whole Problem | Asymptotic Complexity (in MAS) |
---|---|---|
Continuous variable | ||
Binary variable | ||
Railway operational constraints | ||
Timetable coupling constraints |
Variable or Constraints | Whole Problem | North Strafford Jn | Derby LNW Jn | Derby London Road Jn | Derby Station North Jn | Ambergate Jn | Collaborative Agent |
---|---|---|---|---|---|---|---|
Continuous variable | 149 | 27 | 27 | 4 | 5 | 26 | 0 |
Binary variable | 2273 | 351 | 351 | 946 | 300 | 325 | 0 |
Operational constraints | 453 | 459 | 837 | 2104 | 724 | 429 | 0 |
Timetable coupling constraints | 16,820 | 0 | 0 | 0 | 0 | 0 | 16,820 |
Index | Train ID | Delay Distribution |
---|---|---|
Class III_a | All trains potentially delayed on departure | |
Class III_b | ||
Class III_c |
S4_0060s | S4_0180s | S4_0300s | S4_0420s | S4_0540s | S4_0660s | S4_0780s | S4_0900s | S4_1020s | S4_1140s | S4_1260s | S4_1380s | |
S28_0000s | 60 | 80 | 1458/ 1836 | 1836 | 1842 | 1897 | 2145 | 2535 | 2735 | 3027 | 3206 | 3516 |
S28_0120s | 80 | 300 | 1583/ 1956 | 1956 | 1962 | 2017 | 2265 | 2655 | 2855 | 3147 | 3326 | 3636 |
S28_0240s | 303 | 423 | 1706/ 2079 | 2079 | 2085 | 2140 | 2388 | 2778 | 2978 | 3270 | 3449 | 3759 |
S28_0360s | 1085 | 1205 | 2382/ 2861 | 2861 | 2867 | 2922 | 3170 | 3560 | 3760 | 4052 | 4231 | 4541 |
S28_0480s | 2022 | 2142 | 3377/ 3824 | 3824 | 3825 | 3859 | 4107 | 4495 | 4697 | 4989 | 5168 | 5478 |
S28_0600s | 3009 | 3129 | 4292/ 4830 | 4830 | 4839 | 4922 | 5094 | 5482 | 5684 | 5976 | 6155 | 6465 |
S28_0720s | 4338 | 4338 | 5255/ 5613 | 5613 | 5619 | 5674 | 5922 | 6312 | 6512 | 6804 | 6983 | 7293 |
S28_0840s | 3837 | 4338 | 5256/ 5613 | 5613 | 5619 | 5674 | 5922 | 6312 | 6512 | 6804 | 6983 | 7293 |
S28_0960s | 3837 | 4020 | 5255/ 5613 | 5613 | 5619 | 5674 | 5922 | 6312 | 6512 | 6804 | 6983 | 7293 |
S28_1080s | 5083/ 5225 | 5203/ 5345 | 7254/ 7618 | 6997/ 7127 | 6997/ 7127 | 7006/ 7127 | 7181/ 7310 | 7483/ 7649 | 7654/ 7822 | 8263 | 8371 | 8681 |
S28_1200s | 5083/ 5225 | 5203/ 5345 | 7079/ 7618 | 7352/ 7618 | 6997/ 7127 | 7006/ 7127 | 7181/ 7310 | 7483/ 7649 | 7654/ 7822 | 8105/ 8263 | 8190/ 8371 | 8681 |
S28_1320s | 5083/ 5793 | 5203/ 5913 | 7080/ 7618 | 7352/ 7618 | 7396/ 7611 | 6993/ 7798 | 7166/ 7878 | 7484/ 8217 | 7746/ 8213 | 8128/ 8775 | 8240/ 9090 | 8555/ 9249 |
S28_1440s | 5203/ 5801 | 5323/ 5921 | 7074/ 7604 | 7352/ 7604 | 7406/ 7629 | 7633/ 7864 | 7286/ 7886 | 7604/ 8225 | 7866/ 8246 | 8262/ 8783 | 8360/ 9098 | 8675/ 9257 |
S6 | S4 | S28 | S24 | S12 | S50 | S14 | |
---|---|---|---|---|---|---|---|
North Stafford Jn | -- | -- | 08:04:37 | 08:11:40 | -- | 07:55:51 | 08:01:50 |
Derby LNW Jn | -- | -- | 07:59:53 | 08:07:19 | -- | 07:59:15 | 07:57:51 |
Derby London Road Jn | 07:48:15 | 07:49:17 | 07:50:45/ 07:58:00 | 07:57:03/ 08:06:24 | 07:58:42 | -- | -- |
Derby Station | 07:49:10–07:52:10 | 07:50:18–07:53:18 | 07:51:43–07:56:43 | 07:58:00–08:06:00 | 07:53:00 | 08:01:07–08:10:00 | 07:53:00–07:57:00 |
Derby North Jn | 07:52:25 | 07:53:44 | -- | -- | -- | 08:10:30 | 07:52:08 |
Ambergate Jn | 08:07:28 | 08:08:51 | -- | -- | -- | -- | 07:30:10 |
S6 | S4 | S28 | S24 | S12 | S50 | S14 | |
---|---|---|---|---|---|---|---|
North Stafford Jn | -- | -- | 08:02:21 | 08:11:40 | -- | 07:55:51 | 08:03:42 |
Derby LNW Jn | -- | -- | 07:58:02 | 08:07:19 | -- | 08:00:45 | 07:59:25 |
Derby London Road Jn | 07:48:15 | 07:49:17 | 07:50:45/ 07:57:06 | 07:58:12/ 08:06:24 | 07:59:09 | -- | -- |
Derby Station | 07:49:10–07:52:10 | 07:50:18–07:53:18 | 07:51:43–07:56:43 | 07:59:17–08:06:00 | 07:53:00 | 08:02:54–08:10:00 | 07:53:00–07:57:00 |
Derby North Jn | 07:53:58 | 07:53:44 | -- | -- | -- | 08:10:30 | 07:52:08 |
Ambergate Jn | 08:08:12 | 08:01:09 | -- | -- | -- | -- | 07:30:10 |
Passing sequences of trains in each junction in FCFS |
The order for North Strafford Junction is: S5, S1, S51, S2, S19, S13, S22, S23, S15, S52, S50, S18, S14, S28, S31, S24, S35, S41, S37, S42, S33, S36, S40, S43, S32, S44, S54; The order for Derby LNW Junction is: S5, S1, S51, S2, S13, S19, S22, S15, S23, S52, S14, S50, S28, S18, S24, S31, S41, S35, S37, S42, S33, S43, S36, S40, S44, S32, S54; The order for Derby London Road Junction is: S53, S51, S47, S5, S49, S9, S51, S5, S57, S47, S2, S25, S49, S11, S10, S19, S15, S19, S6, S4, S52, S28, S24, S28, S12, S50, S26, S24, S50, S55, S16, S29, S42, S35, S42, S35, S38, S43, S36, S39, S30, S36, S44, S45, The order for Derby Station North Junction is: S53, S58, S9, S47, S53, S49, S47, S8, S25, S57, S27, S57,S49, S52, S6, S4, S26, S16, S29, S55, S43, S38, S30, S39, S45; The order for Ambergate Junction is: S58, S9, S8, S25, S13, S1, S14, S27, S52, S26, S22, S16, S6, S29, S4, S23, S41, S18, S55, S43, S30, S37, S45, S38, S39, S40. |
Passing sequences of trains in each junction in MAS |
The order for North Strafford Junction is: S5, S1, S51, S2, S19, S13, S22, S23, S15, S52, S50, S18, S28, S14, S31, S24, S35, S41, S37, S42, S33, S36, S40, S43, S32, S44, S54; The order for Derby LNW Junction is: S5, S1, S51, S2, S13, S19, S22, S15, S23, S52, S28, S14, S50, S18, S24, S31, S41, S35, S37, S42, S33, S43, S36, S40, S44, S32, S54; The order for Derby London Road Junction is: S53, S51, S47, S5, S49, S9, S51, S5, S57, S47, S2, S25, S49, S11, S10, S19, S15, S19, S6, S4, S52, S28, S28, S24, S12, S50, S26, S24, S50, S55, S16, S29, S42, S35, S42, S35, S38, S43, S36, S39, S30, S36, S44, S45; The order for Derby Station North Junction is: S53, S58, S9, S47, S53, S49, S47, S8, S25, S57, S27, S49, S57, S52, S4, S6, S26, S16, S29, S55, S43, S38, S30, S39, S45; The order for Ambergate Junction is: S58, S9, S8, S25, S13, S1, S14, S27, S52, S26, S22, S16, S4, S29, S6, S23, S41, S18, S55, S43, S30, S37, S45, S38, S39, S40. |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Liu, J.; Chen, L.; Tian, Z.; Zhao, N.; Roberts, C. A Novel Multi-Agent-Based Approach for Train Rescheduling in Large-Scale Railway Networks. Appl. Sci. 2025, 15, 7996. https://doi.org/10.3390/app15147996
Liu J, Chen L, Tian Z, Zhao N, Roberts C. A Novel Multi-Agent-Based Approach for Train Rescheduling in Large-Scale Railway Networks. Applied Sciences. 2025; 15(14):7996. https://doi.org/10.3390/app15147996
Chicago/Turabian StyleLiu, Jin, Lei Chen, Zhongbei Tian, Ning Zhao, and Clive Roberts. 2025. "A Novel Multi-Agent-Based Approach for Train Rescheduling in Large-Scale Railway Networks" Applied Sciences 15, no. 14: 7996. https://doi.org/10.3390/app15147996
APA StyleLiu, J., Chen, L., Tian, Z., Zhao, N., & Roberts, C. (2025). A Novel Multi-Agent-Based Approach for Train Rescheduling in Large-Scale Railway Networks. Applied Sciences, 15(14), 7996. https://doi.org/10.3390/app15147996