© Verkehrswissenschaftliches Institut an der Universität Stuttgart e.V., Yong Cui
Titelbild: Yong Cui
Herstellung und Verlag: Books on Demand GmbH, Norderstedt
Printed in Germany
ISBN 978-3-7481-1316-4
Simulation approaches are often applied to evaluate and optimise design alternatives for large-scale railway networks with a high density of train movements. However, in the past, the total potential of these simulation approaches had not been sufficiently utilised. To overcome the limits of these simulation tools and especially their incapability for expansion and customisation, a user-based, adaptable simulation tool called "PULSim" was developed.
The usability and the performance of PULSim have already been proven for existing applications; for example, the Banker-algorithm can be successfully used with PULSim to avoid deadlocks for large railway networks by searching for feasible resources. Due to its open interface, users and researchers can also develop their own algorithms that can rapidly be integrated into PULSim. With this new tool, the productivity of using simulation approaches for the evaluation and optimisation of railway planning and operations can be significantly improved.
In this book, the mechanisms and the workflow of railway simulation as well as the capability to provide users and third party applications with an open interface for dynamic interaction and flexible expansion are presented. It is not the objective of the author to build an end-all simulation tool for railway planning and operations. Instead, this developed, open interface simulation platform serves as a starting point for diverse research and development purposes that include infrastructure planning, timetabling, capacity research, and dispatching. The ability to integrate the tools needed for machine learning into PULSim especially offers great potential to improve the efficiency and productivity of railway planning and operations using the large volumes of simulation data that are now widely available.
Stuttgart, September 2018
Ullrich Martin
Figure 1-1: The process using the simulation approach for railway planning and operations
Figure 1-2: Design aspects of the simulation approach and simulation of train runs.
Figure 2-1: XML Data in railML as an example of infrastructure layout (railML 2013)
Figure 2-2: Example of simplification from bidirectional objects to mono-directional objects
Figure 2-3: Overview of point-shaped, line-shaped and complex infrastructure objects
Figure 2-4: An example of a node-link model
Figure 2-5: Disadvantages of the node-link model
Figure 2-6: An example of the colon-graph model
Figure 2-7: An example of modelling infrastructure elements
Figure 2-8: Connectivity of infrastructure elements
Figure 2-9: Types of infrastructure elements
Figure 2-10: Position of the infrastructure object
Figure 2-11: Microscopic infrastructure model
Figure 2-12: Mapping from the microscopic level to the macroscopic level
Figure 2-13: An example of divided basic structures at a mesoscopic level
Figure 2-14: An example of junction-type basis structures and station tracks
Figure 2-15: An example of open track sections and station tracks
Figure 2-16: Establishing an infrastructure network
Figure 2-17: An example of trains at a mesoscopic level in the Software PULSim
Figure 2-18: An example of trains at a microscopic level
Figure 2-19: Tractive Force and Speed Diagram for the BR 146 in RailSys
Figure 2-20: Class diagram of a unit definition, vehicle definition and definition of train formation
Figure 2-21: An example of train formation
Figure 2-22: Model of rough operating programs
Figure 2-23: Example of parts of train run for coupling and sharing operations
Figure 2-24: Microscopic timetable model
Figure 2-25: Roster of a train and roster of a vehicle for passenger transport
Figure 3-1: Workflow of time-driven simulation
Figure 3-2: Event scheduling and calculation of running dynamics
Figure 3-3: Interdependency of events
Figure 3-4: Workflow of an event-driven simulation
Figure 3-5: An example of event-driven simulation
Figure 3-6: Disturbances and delays in operational simulation (Cui et al. 2016)
Figure 3-7: Inverse transformation to generate random disturbances
Figure 4-1: Overview of the workflow of the calculation of running dynamics
Figure 4-2: An example of moving sections, characteristic sections and behaviour sections
Figure 4-3: Class diagram of sections and discrete points
Figure 4-4: An example of backwards setting of entry velocity and exit velocity
Figure 4-5: An example of forwards setting of entry velocity and exit velocity
Figure 4-6: Setting of maximum possible reached velocity
Figure 4-7: An example of the calculated speed profile and energy consumption with minimum running time in software PULSim
Figure 4-8: Setting of the behaviour section for coasting
Figure 4-9: An example of calculated speed profile with optimised energy consumption in software PULSim
Figure 4-10: Update of the speed profile
Figure 4-11: Simulation of a train run with intermittent ATP including blocking time stairway
Figure 4-12: Simulation of a train run with continuous ATP including blocking time stairway
Figure 4-13: Set a request point at the braking point for continuous ATP
Figure 4-14: Set request point at the diverging point for continuous ATP
Figure 4-15: Comparison of the safety distance between fixed block and moving block
Figure 4-16: Calculation of occupancy time (blocking time) for a discrete point
Figure 5-1: An example of immediate conflict
Figure 5-2: Connection conflict between a feeder train and a connecting train
Figure 5-3: Examples of time-related dispatching with FCFS and FCLS
Figure 5-4: Five conflict situations for occupancy conflicts
Figure 5-5: Activity diagram of conflict resolution
Figure 5-6: An example of a cyclic wait
Figure 5-7: An example of a deadlock situation with bidirectional operations
Figure 5-8: A deadlock situation at a crossing without bidirectional operations
Figure 5-9: Activity diagram of the Banker's algorithm
Figure 5-10: A signalised network for deadlock-free tests with the Banker's algorithm
Figure 5-11: An example of false-positive situations
Figure 5-12: Deadlock situations of testing feasible resources for merging, crossing and opposing with criterion 3
Figure 5-13: A deadlock situation of merging at an infrastructure resource before a checked feasible resource for criterion 4
Figure 5-14: Allocating and partial releasing a block section
Figure 5-15: Examining feasible resources for all the not-released path components
Figure 5-16: Work flow of examining feasible resources
Figure 5-17: Rate of reduced false-positive situations for different setting of depth in Case 2
Figure 6-1: An example of the gradient descent algorithm
Figure 7-1: Comparison of online evaluation and offline evaluation
Figure 7-2: An example of separating a track for the calculation of occupancy time
Figure 7-3: An example of occupancy time in a station
Figure 7-4: Determination of blocking time of a train run at tracks for moving block system
Figure 7-5: Calculation of occupancy time for a segment of a track in moving block system
Figure 7-6: An example of negative waiting time
Figure 7-7: Example of pending time
Figure 7-8: An example of pending time in a station
Figure 7-9: OpenTrack API (Seybold, Huerlimann 2016)
Figure 7-10: An example of screenshot of the SimTalk editor (Bangsow 2010)
Figure 7-11: An example of the defined actions in the XML file in PULRAN
Figure 7-12: Execution of a timetable simulation in Python
Figure 7-13: Customised output of the calculated occupancy time for tracks
Figure 7-14: The views of GUI in PULSim
Figure 7-15: Screenshot of "network/train run" view in PULSim
Figure 7-16: An example of tracing occurrence of events
Figure 7-17: Screenshot of the GUI for open interfaces with Python in PULSim
Table 1-1: Overview of design aspects implemented in PULSim
Table 3-1: The list of event queue at 12:02:30
Table 3-2: The list of event queue at 12:04:00
Table 5-1: Deadlock-free test for the train T2
Table 5-2: Deadlock-free test for the train T3
Simulationsverfahren sind eine weit verbreitete Methode im Bereich der Eisenbahnplanung und des Eisenbahnbetriebs. Heutzutage sind verschiedene kommerzielle Softwarewerkzeuge verfügbar, die nicht nur Funktionalitäten für Eisenbahnsimulationen liefern, sondern auch weitere Evaluationen und Optimierungen des Netzwerkes in Bezug auf Fahrplan, Disposition und Leistungsuntersuchung ermöglichen.
Allerdings sind all diese verschiedenen Werkzeuge in Bezug auf die Standards, die sie nutzen, sowie ihre veröffentlichten Schnittstellen mangelhaft. Für den Endnutzer sind die Grundmechanismen und Annahmen eines Simulationswerkzeuges unbekannt, was bedeutet, dass das wahre Potential dieser Softwarewerkzeuge begrenzt ist. Eines der kritischsten Probleme ist das Fehlen der Möglichkeit der Nutzer, einen ausgereiften Workflow zu definieren, der in mehreren Runden der Simulation mit variablen Parametern und Einstellungen integriert ist.
Eine nutzerbasierte, anpassbare Plattform wird in diesem Buch entwickelt und beschrieben. Die Voraussetzungen der Plattform, die Designaspekte für die Modellierung der Komponenten eines Eisenbahnsystems und Erstellung eines Workflows der Eisenbahnsimulation werden detailliert ausgearbeitet. Basierend auf dem Modell und dem Workflow wird eine integrierte Simulationsplattform mit offenen Schnittstellen entwickelt. Nutzer und Forscher erhalten die Möglichkeit, schnell ihre eigenen Algorithmen zu entwickeln, und dies mit der Unterstützung des maßgeschneiderten Simulationsprozesses, auf flexible Art und Weise. Die Produktivität der Benutzung von Simulationswerkzeugen für die weitere Evaluation und Optimierung wird bedeutend verbessert durch die offenen, nutzerangepassten Schnittstellen. Die Systemperformanz für die Eisenbahnsimulation ist von besonderer Wichtigkeit während des gesamten Designs der ereignisgesteuerten Simulation, der Berechnung von Fahrdynamiken, der Simulation von Signalsystemen, der Vermeidung von Deadlocks, sowie der Evaluation und Kalibrierung. Das Softwarewerkzeug PULSim wird implementiert, um ein einheitliches Modell, einen transparenten Workflow und offene Interfaces zu ermöglichen. Hohe Adaptions- und Performanzlevel wurden anhand mehrerer realer Beispiele mit großem Netzwerk und hoher Dichte von Zugbewegungen durch PULSim nachgewiesen.
In diesem Buch wird – zusammenfassend – die Modellierung und das Design für eine nutzerbasierte anpassbare Eisenbahnsimulation mit hoher Performanz beschrieben. Es kann als Referenz für Nutzer gesehen werden, um die Hintergründe eines Simulationswerkzeuges mit offenen Schnittstellen zu verstehen. Folglich kann ein großer Nutzen aus der Kombination von innovativer Technologie mit der Eisenbahnsimulation gezogen werden, um die Qualität und Effizienz der Eisenbahnplanung und des Eisenbahnbetriebs zu verbessern.
Simulation approaches are widely-used methods in the field of railway planning and operations. Today, several commercial software tools are available that provide not only the functionality for railway simulation, but also enable further evaluation and optimisation of the network for scheduling, dispatching and capacity research.
However, the various tools are all lacking with respect to the standards they utilise as well as their published interfaces. For an end-user, the basic mechanism and the assumptions built into a simulation tool are unknown, which means that the true potential of these software tools is limited. One of the most critical issues is the lack of the ability of users to define a sophisticated workflow, integrated in several rounds of simulation with adjustable parameters and settings.
A user-based, customisable platform is developed and described in this book. As the preconditions of the platform, the design aspects for modelling the components of a railway system and building the workflow of railway simulation are elaborated in detail. Based on the model and the workflow, an integrated simulation platform with open interfaces is developed. Users and researchers gain the ability to rapidly develop their own algorithms, supported by the tailored simulation process, in a flexible manner. The productivity of using simulation tools for further evaluation and optimisation will be significantly improved through the open, user-adapted, interfaces.
The system performance for railway simulation is a factor of particular concern during the entire design of event-driven simulation, calculation of running dynamics, simulation of signalling systems, deadlock avoidance, as well as evaluation and calibration. A software tool PULSim is implemented in order to provide a unified model, a transparent workflow, and open interfaces. High levels of adaptability and performance have been proven by PULSim with several real examples with a large scale network and high density of train movements.
To conclude, the modelling and design for a user-based customisable railway simulation with high performance are described in this book. It can be used as a reference for users in understanding the scene under a simulation tool with open interfaces. Hence, a great benefit in combining cutting-edge technology with railway simulation to improve the quality and efficiency of railway planning and operations can be achieved.
During the process of railway planning and operations, the most common tasks are to study the relationships between infrastructure, rolling stocks and operations, and to predict the behaviour of the studied system. Based on the learned knowledge of the system, possible solutions to improve the efficiency and the quality of railway services can be derived. Each possible solution for railway planning and operations is called a design alternative. Different design alternatives will be investigated and evaluated through experiments. However, the cost of conducting these experiments on actual railway systems is too expensive and, at times, the studied system does not even exist. Therefore, it is not practical to examine the design alternatives upon an actual system directly.
A model can be built to represent the actual system for the sake of research at a low cost. The model can be either physical or mathematical (Law 2007). Some research institutions and railway companies have built physical models in their laboratories for a certain part of railway network. A physical model represents the operational situation intuitively. It can be used for experiments of different operation scenarios or for training purposes. However, one drawback in the use of physical models is their lack of flexibility to be adapted for various railway networks in different scales. Therefore, mathematical models are more often used to describe the structure and the behaviour of the studied system quantitatively. In a mathematical model with an analytical approach, the states of the system are derived directly through a set of mathematical equations. It is practical to use analytical approaches for a simple railway network with a limited numbers of train runs or a collection of various homogeneous parts of a network in a closed-form expression. For a large scale, in non-homogeneous networks with a considerably high density of train movements, an analytical approach is not applicable due to the high computational complexity required, as well as the lack of available algorithms to link the various homogeneous parts. In this case, the simulation approach can be applied to study the structure and the interaction of a complex railway system.
The process for railway planning and operations using the simulation approach contains several steps. As the basis, the components of railway systems are modelled according to a specific design alternative. A design alternative will be simulated as an experiment, from which the output will be recorded for further evaluation. The design alternatives can be further improved in order to optimise the system performance and the quality of railway service. In Figure 1-1, an iterative process including modelling, simulation, evaluation and optimisation through the simulation approach for railway planning and operations is demonstrated.
Figure 1-1: The process using the simulation approach for railway planning and operations
Today, simulation approaches are being used widely for railway planning and operations. For example, potential conflicts and resulting waiting time can be derived through timetable simulation (Luethi et al. 2005), (Radtke 2005). According to the simulated results, the path of trains and/or the sequence of trains can be adjusted in order to reduce hindrances among train runs. Furthermore, stochastic disturbances will be introduced into the simulation tool, so that the robustness and the stability of the timetable can be investigated (Radtke, Bendfeldt 2001). In capacity research, randomly generated timetables are simulated in order to evaluate system performance (Martin et al. 2011) and to identify bottlenecks (Martin et al. 2014). For rescheduling and dispatching, the simulation approach can be applied to generate a dispatching timetable for solving conflicts during railway operations (Cui 2010). The simulation approach can also be used as a test environment for innovative technologies. For example, the potentials of using European Train Control System (ETCS) are evaluated using the simulation approach in (Kogel et al. 2010).
The design of simulation approaches for railway planning and operations includes two aspects: modelling the components of the railway system and building the work-flow of railway simulation.
The structural perspective of railway simulation is taken into consideration in the modelling of the components of railway systems. Depending on the context, the term "model" may have many different meanings (e.g. the physical models, the mathematical models). Unless otherwise specified, the term "model" within this work refers to the modelling of the components of railway systems.
With the simulation approach for railway planning and operations, the modelled components of railway systems consist of:
The attributes and states of railway systems are modelled in the components respectively. The attributes describe the static information of railway system, e.g. the length of a track, the configuration of a train, as well as the scheduled departure time of a train run. The states refer to the dynamic information throughout the duration of railway operations, e.g. the aspect of a signal, the running dynamics of a train, and the delay of a train run. Normally, the components of infrastructure and rolling stocks can be constructed independently. However the model of railway operations depends on both factors.
The design of simulation workflow focuses on the behavioural perspective of railway simulation. The control flows, including starting, proceeding, and terminating a simulation process, are regulated by the simulation workflow. Moreover, the messages exchanged among infrastructure, rolling stocks, and railway operations are triggered inside the workflow. The model of a railway system and the simulation workflow can be designed independently. With a certain level of abstraction, the simulation work-flow can be designed without knowledge of the details of the underlying model.
After the design aspects for the components and the workflow are determined, the simulation of train runs can be started, which includes the simulation of each individual train run and simulation of multiple train runs. Each train run of a given operating program (see Section 2.4.2) will be simulated until it is accomplished. Driven by the concrete mechanism of a simulation workflow, the states of the modelled components of railway systems are changed. For example, the occupancy situation of infrastructure, the aspect of signals, and the position of trains are updated during a simulation process. The calculation of running dynamics and the signalling system are the basis for updating the states of components. The interaction between infrastructure and each individual train run, as well as the interaction among multiple train runs should be taken into consideration. The changed states of the components can be recorded for further evaluation and optimisation. The relationship between design aspects of the simulation approach and simulation of train runs is shown in Figure 1-2.
Figure 1-2: Design aspects of the simulation approach and simulation of train runs
Since the 1990s, serval simulation tools have been made available for railway planning and operations. Most of the tools were originally developed as experimental versions by railway research institutes and universities. Through continuous development and trial, these tools have become increasingly practical for research and commercial purposes. The user base of these tools consists of researchers, railway infrastructure companies, and railway operating companies.
In German-speaking countries and in Europe, the simulation software RailSys (by Rail Management Consultants GmbH, (RMCON 2010)), OpenTrack (by OpenTrack Railway Technology Ltd., (Hürlimann 2010)), and LUKS (by VIA Consulting & Development GmbH, (VIA Con 2011)) are very popular for railway planning and operations. These software tools provide not only the functionality for railway simulation, but also enable further evaluation and optimisation for scheduling, dispatching and capacity research. Thanks to the various applications and projects, a large amount of data of railway infrastructure, rolling stocks, and operations are now available.
However, the true potential of these software tools has not yet been sufficiently utilised. The standards and the published interfaces for the various tools are insufficient as well. For third party users and developers, it is difficult to understand the assumptions and simplifications within the used tools. Therefore, the analysis and the conclusion of a given set of simulation results can be weakened due to the lack of knowledge of the simulation tools themselves. In addition, the workload required for reading and converting data from the tools is extremely high. In many cases, the detailed information generated by the software during simulation is either unreadable or unobtainable by the user. Therefore, the usability and applicability of simulation tools are constrained. Furthermore, flexible customisation during multiple rounds of simulation for certain special purposes is also difficult to achieve. These disadvantages limit the efficiency and effectiveness of these tools for further research and development.
Especially, these tools are not yet capable of solving some well-known problems, such as deadlocks with synchronous simulation (see Section 5.2). If deadlocks are introduced, the simulation process has to be cancelled or be intervened manually. The dispatching algorithm of current simulation tools is simplified and even unknown at times. It is therefore difficult for users to verify the results and to improve dispatching processes.
For these reasons, the author has developed a simulation tool PULSim in recent years. In (Cui et al. 2016) and (Cui et al. 2017), the tool was known as DoSim. The name has been changed to PULSim in order to conform to the naming convention of software tools in the IEV (Institut für Eisenbahn- und Verkehrswesen der Universität Stuttgart). The aim of developing PULSim is to build a platform for railway simulation with a unified model, a transparent workflow, and open interfaces, which can be flexibly extended and customised by third parties. System performance is the key success factor for railway simulation, especially for a large network with a high amount of train runs. The main focus of PULSim is to enable the design to improve system performance and efficiency, without sacrificing accuracy. At the moment, PULSim has been tested in several real networks in Germany. In this work, the model and the algorithm used in PULSim will be presented in detail.
Many publications about the analysis and design of railway simulation have been published in recent decades (e.g. (Radtke 2005), (Hürlimann 2010), (Waston, Medeossi 2014) and (Sipilä 2015)). Most of the research concerns the analysis of the results of railway simulation. For the design of railway simulation, the input and output, the application, and the interaction of a certain type of simulation software are focused upon herein. The detailed principles and theoretical basis for simulation design are not presented in detail.
The intention of the book is to explain the key philosophy behind railway modelling and design. Although the design decisions of software PULSim are stressed, the general principles and other possible designs are discussed and compared. The readers of the work can gain a thorough understanding of the use of simulation tools for railway planning and operations for different purposes. The results of simulation can be well verified and validated after gaining knowledge of the assumptions and constraints of a simulation model. The work can also be used as a reference to build a model for certain tasks, e.g. calculation of running time, or simulation with a certain signalling system.
The readers are not required to have an extensive knowledge of programming. The model and the workflow are presented by the Unified Modelling Language (UML). As the prerequisites for the readers, the basic understanding of railway planning and operations is, however, necessary. To maintain a unified notation and terminology, the books follows the convention and terms used in (Hansen, Pachl 2014).
In this book, the two design aspects of the simulation approach: modelling the components of railway system and building the workflow of railway simulation, are presented in Chapters 2 and 3. The algorithm for simulating an individual train run with consideration of train running dynamics and signalling systems is explained in Chapter 4. If all train runs are simulated simultaneously, conflicts may take place, and therefore the mechanism to resolve conflicts and to avoid deadlocks for multiple train runs is discussed in Chapter 5. In order to improve the plausibility and credibility of a simulation tool, in Chapter 6 the calibration methods and the practical applications are introduced. The basis for evaluation of simulation results is explained in Chapter 7. In this chapter, the open interface for simulation tools and the implemented solution in PULSim are presented as well. The design aspects in this book are based upon the recent research and development of the author and the core model used in the IEV. Besides this, certain common aspects (e.g. infrastructure modelling at a macroscopic level) that are applied also for other simulation tools are introduced into PULSim as a basis. In Table 1-1, an overview of the own design aspects, which have been implemented in the current version of PULSim, are listed and specified with the corresponding section number in this book.