A parallel algorithm for train rescheduling
[Display omitted] •We represent the solution space of the train rescheduling problem as a binary tree.•We design and implement two fast heuristic algorithms – a sequential, and a parallel.•The sequential algorithm quickly finds a good solution for several problem scenarios.•The parallel algorithm so...
Uloženo v:
| Vydáno v: | Transportation research. Part C, Emerging technologies Ročník 95; s. 545 - 569 |
|---|---|
| Hlavní autoři: | , , |
| Médium: | Journal Article |
| Jazyk: | angličtina |
| Vydáno: |
Elsevier Ltd
01.10.2018
|
| Témata: | |
| ISSN: | 0968-090X, 1879-2359, 1879-2359 |
| On-line přístup: | Získat plný text |
| Tagy: |
Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
|
| Shrnutí: | [Display omitted]
•We represent the solution space of the train rescheduling problem as a binary tree.•We design and implement two fast heuristic algorithms – a sequential, and a parallel.•The sequential algorithm quickly finds a good solution for several problem scenarios.•The parallel algorithm solves the problem significantly and consistently faster.•We present a performance assessment of the algorithms based on a Swedish case study.
One of the crucial factors in achieving a high punctuality in railway traffic systems, is the ability to effectively reschedule the trains when disturbances occur. The railway traffic rescheduling problem is a complex task to solve both from a practical and a computational perspective. Problems of practically relevant sizes have typically a very large search space, making them time-consuming to solve even for state-of-the-art optimization solvers. Though competitive algorithmic approaches are a widespread topic of research, not much research has been done to explore the opportunities and challenges in parallelizing them. This paper presents a parallel algorithm to efficiently solve the real-time railway rescheduling problem on a multi-core parallel architecture. We devised (1) an effective way to represent the solution space as a binary tree and (2) a novel sequential heuristic algorithm based on a depth-first search (DFS) strategy that quickly traverses the tree. Based on that, we designed a parallel algorithm for a multi-core architecture, which proved to be 10.5 times faster than the sequential algorithm even when run on a single processing core. When executed on a parallel machine with 8 cores, the speed further increased by a factor of 4.68 and every disturbance scenario in the considered case study was solved within 6 s. We conclude that for the problem under consideration, though a sequential DFS approach is fast in several disturbance scenarios, it is notably slower in many other disturbance scenarios. The parallel DFS approach that combines a DFS with simultaneous breadth-wise tree exploration, while being much faster on an average, is also consistently fast across all scenarios. |
|---|---|
| ISSN: | 0968-090X 1879-2359 1879-2359 |
| DOI: | 10.1016/j.trc.2018.07.003 |