© 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

Preface

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

Table of Contents

  1. Basis of Railway Simulation Modelling and Design
  2. Modelling the Components of Railway Systems – Structural Perspective
  3. Building the Workflow of Railway Simulation – Behavioural Perspective
  4. Simulation of an Individual Train Run
  5. Simulation of Multiple Train Runs
  6. Calibration of Railway Simulation Models
  7. Evaluation of Railway Operations and Interfaces of Railway Simulation Tools
  8. Conclusion and Further Research and Development

Index of Figures

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

Index of Tables

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

Zusammenfassung

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.

Abstract

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.

1 Basis of Railway Simulation Modelling and Design

1.1 Simulation for Railway Planning and Operations

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).

1.2 Design Aspects of Simulation Approach and Simulation of Train Runs

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

1.3 Simulation Software for Railway Planning and Operation

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.

1.4 About the Book

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.