# A High-Speed Train Operation Plan Inspection Simulation Model

Authors: Yang Rui; Mou Ruifang; Jiang Feng
Journal: Mathematical Problems in Engineering
 (2018)

---

## Abstract

We developed a train operation simulation tool to inspect a train operation plan. In applying an improved Petri Net, the train was regarded as a token, and the line and station were regarded as places, respectively, in accordance with the high-speed train operation characteristics and network function. Location change and running information transfer of the high-speed train were realized by customizing a variety of transitions. The model was built based on the concept of component combination, considering the random disturbance in the process of train running. The simulation framework can be generated quickly and the system operation can be completed according to the different test requirements and the required network data. We tested the simulation tool when used for the real-world Wuhan to Guangzhou high-speed line. The results showed that the proposed model can be developed, the simulation results basically coincide with the objective reality, and it can not only test the feasibility of the high-speed train operation plan, but also be used as a support model to develop the simulation platform with more capabilities.


---

## Body

## 1. Introduction

The train operation plan (including the train rescheduling plan) is the most important plan in the daily operation of rail traffic and plays an important role in ensuring train operation safety and efficiency. Therefore, the train operation plan should be evaluated before being put into operation. The traditional ways, such as theoretical calculation, require a large computing time and are hard work for train traffic managers. Because the transport market demands rapid changes in China, the Chinese Railway Company needs to modify timetables frequently. This requires a fast and efficient way to test the operation plan. To meet this demand, we developed a simulation tool, to test the operation plan in a short time, and the simulation tests showed that the method could achieve high accuracy and a more reliable result.Train operation plan simulation (TOPS) is the application of computer simulation technology in train operations; the purpose is to test whether the train can operate according to the planned timetable.There are many studies on TOPS. In [1], the authors investigated energy-saving operation under disturbance, where the problem was described in a mathematical model and an optimization model of energy-saving train operation was applied, and the model was solved by a changeable chromosome-length genetic algorithm. Paper [2] considered the extra energy consumption caused by knock-on delays. It described a train trajectory optimization study considering the tradeoff between reductions in train energy usage against increases in the delay penalty in a delay situation with a fixed block signaling system, and a multitrain simulator was developed for the study. Reference [3] developed high-speed railway systems; the system described the automatic control system. In China, much research is focused on development of simulation tools, but most of it is mainly concerned with determining the simulated train operation paths [4–12].Some literature sources applied Petri Net (PN) to simulate the train operation. Reference [13] used Petri Nets in modeling railway network and designing appropriate control logic for it to avoid collision; in the paper, the railway network was presented as a combination of the elementary models, the constraints at the points within the station were introduced, and the case study showed that the method can ensure once a track is occupied and no other train can enter into the same track so the collision can be avoided. Reference [14] applied the theory of supervisory control for discrete event systems to automatically design the system controller, where the Petri Nets are used, a modular representation of railway networks in terms of stations and tracks is provided, in the research, the railway network is described as a ES2PR (extended simple sequential process with resources) nets, and the global liveness was enforced by adding appropriate monitor places designed using siphon analysis. Reference [15] introduced the concept for a distributed railway control system and presented the specification and verification of the main algorithm used for safe distributed control, the approach was based on the RAISE method, by separating the system model into a domain model and a controller model, and the complexity was further reduced. Reference [16] implied Colored Petri Nets to model the switch control of a railway system, and the project is to teach students to model the railway with up to five trains. Reference [17] presented a simulation model based on hybrid Petri Nets, which is able to help transit authorities to carry out performance evaluation procedures in order to prevent, reduce, and if possible avoid accidents of transit authorities. Reference [18] used interval Colored-Timed Petri Nets to model and analyze railway stations; the method constructed a reduced reachability graph and exploited the fact that delays were described by an interval.The existing models and tools are mainly about energy-saving and train operation simulation. Most of them are based on the signal type used to compute the location of trains, and the output is an analysis of different indexes which reflect the equipment features. As for the train operation, most researches focus on simulating the train according to the given operation plan strictly, which means seldom robust features are considered. However, when we consider the case of real-world train operation, there are some disturbances that will influence the operation of trains, like the random disturbance caused by rail workers. If we do not consider these disturbances, the simulation results can only check if the formed operation plan is conflict-free, but they cannot reflect real-world operation. Therefore, if we use these results to evaluate the train operation plan, we will obtain incorrect results because of the neglected disturbances.Because the train operation plan has concurrent features, the dwell and arrival time at stations as well as the topology of the rail network fit the features of a Petri Net (PN). Thus, this paper applies an improved PN to model the train operation plan. During the modeling, we consider the objective and subjective disturbances using various distribution functions to describe the differences between the train operation plan and the real train operation track, applying an improved Colored-Timed Petri Net (CTPN) as the modeling tool. Therefore our mainly contribution is this model does not only simulate the train operation according to the given operation plan but also reflect the robust feature of the timetable. This benefits the railway company manager to evaluate the quality of train operation plan formed; the simulation results show that the model is an efficient tool to evaluate the train operation plan.The outline of this paper is as below: Section1 introduces the paper. Section 2 introduces the modeling process. In Section 3, we report the simulation results, and in Section 4 some conclusions are given.


## 2. Modeling the Train Operation Plan Using CTPN

In this section, we introduce our train operation plan simulation model. A Colored-Timed Petri Net (CTPN) was used in the modeling. CTPN is an extension of Petri Net (PN). PN uses a TOKEN to represent the material or information source, while using PLACE to describe the place where the resources stored. In our research, TOKEN is applied to describe the trains and their operation, PLACE is applied to describe the stations and sectors between two stations, and the operation of trains are described by the transition. During our modeling, we first build the places that represent the stations and sectors, and then according to the topology of the railway network we use places and different kinds of transition to build the Petri Net. After the building of Petri Net, we decide the TOKENs that represent different trains according to the given train operation plan to initialize the net system, and then we drive the global timer to simulation by trigging different transitions.We assume that readers have a basic knowledge of Colored-Timed Petri Nets (CTPN), and we refer readers to [19–21] for further details.In this section, we first introduce the basic components used in the modeling process, then give the operation environment and train operation simulation method, after that introduce how to initialize the label, and, at last for detail simulation process, give an overall modeling steps.


### 2.1. Train Abstract

In the train operation plan, the difference between trains is mainly about their speed, path and dwell, and arrival times. Meanwhile, as the trains are operated, the space location of the trains will change.When we consider different trains, we need to describe whether they have different paths and different stop patterns. Also we should consider that, in daily operation, the dispatch department will adjust the train operation to absorb inevitable disturbances. It is clear that, during the operation, the order of stations a train should pass according to the plan and accurate arrival and departure time at a station are the key features to distinguish it from other trains. Therefore, we should subscribe these features when we describe a train.Beyond the features mentioned above, because in China we operate different rains in a rail line, the operation speed and dwell time of trains can be differ. When the train operation does not fit the operation plan strictly, the dispatch department will adjust the operation situation according to the train operation speed. From this point of view, the train speed is taken as another feature as well.The purpose of train operation plan simulation is to evaluate the possibility that the train operates according to the operation plan. To achieve this goal, we need to store the simulation data that reflect one train’s exact arrival and departure time at a station. We found that if we store the data in station and sector places, it would be difficult to handle the data structure and cause inefficiency during the simulation. So we just store the data in train TOKEN for faster data processing.From the analyses above we can see that it is difficult to describe the train with single color; this means the traditional TOKEN is not suitable for our case. We use a multifeature TOKENVk=Gk,ZkiJ,FkiJ,DkiJ,ZkiR,FkiR,DkiR to represent train k, in which Gk is the speed of train k; ZkiJ is the operation state of train k at station i; FkiJ is the scheduled departure time of train k from station i; DkiJ is the scheduled arrival time of train k at station i; ZkiR is the simulated operation state of train k at station i; FkiR is the simulated departure time of train k at station i; DkiR is the simulated arrival time of train k at station i. Obviously, if train k is scheduled not to stop at station i, then we have FkiJ equal to DkiJ; by analogy, if in the simulation train k does not stop at station i, then we have FkiR equal to DkiR. In our research, all the trains are operated with an EMU (Electronic Multiple Unit), which means the train unit has a fixed consist and its maintenance is integrated. The place where an EMU takes maintenance is called shunting yard; it is usually located in some large stations and takes reasonability for all the maintenance works. Because the shunting yard of an EMU can be regarded as a specific station, we assume that when an EMU reaches a station that is linked to a shunting yard, the operation of a train getting back to shunting yard is regarded as departure the station, while the leave of a train from shunting yard is regarded as arrival at the station. Therefore, under the assumption that the EMU’s times of entering and leaving the shunting yard are connected with the arrival and departure from the corresponding station, DkiR can be used to record the arrival time of train k at station i in the simulation when it leaves the shunting yard, while FkiR can be used to record the departure time of train k at station i in the simulation.


### 2.2. Operation Environment

The operation environment includes the stations and track sections between stations that a train passes and the train operation constraints parameters. Among them, the station and track section are entity environments; they can carry a train and be expressed as a place; the parameters are the information environment, which contains various classes, and the data scale has a proportional relationship with the simulation scale. In this paper, we use the virtual place to express these environments.


#### 2.2.1. Train Place

During the simulation period, we need to inquire the train information continuously. As a public resource, we use a virtual placePV=Vk,AikS to store and manage the train data. In this place, in which AikS is the departure time of train k at station i, its purpose is to improve the simulation efficiency.


#### 2.2.2. Station Place

A station can connect more than one direction; meanwhile, it contains several arrival and departure tracks to serve all kinds of operation, like arrival, departure, and passing of a train. Because the type and start time of operation as well as the connected direction are different for every station, the order of the arrivals and departures of trains is less connected, so we need to consider the operation of trains at a station and decide the departure order in all directions according to the planned and actual train operation situation. To fulfill this function, we use a station placePiS=fik,lij to represent station i, in which fik is the finish time of train k at station i and lij is the next train that departs on track section j at station i.


#### 2.2.3. Track Section Place

Because a track section can be seen as many connected block sections divided by the signal, among those sectors, trains must operate in the same order. In other words, trains cannot overtake each other on the same track section. So trains operating on the same track section must follow the “first arrive, first leave” rule. Besides, to avoid accidents and ensure that the station has enough time to prepare for the next train, the train dispatching system will adjust the trains’ operating speed to satisfy the minimum headway distance between trains. We use track section placePjX=AjkX,vj- to represent track section j, in which AjkX is the estimated arrival time of the end of sector for train k that is operating on track section j and vj- is the last train leaving in track section j.


#### 2.2.4. Parameter Place

Although the speed of trains on a track section can be adjusted, it must follow specific rules, which include the headway determined by the features of the track, the train’s dynamic performance, and the signal system, while the operating time on the track section for different types of train has a standard. In real operation, because the train will be influenced by all kinds of disturbances, the real operating time usually deviates from the planned schedule (being earlier or delayed). This kind of deviation is random in nature, but it can be described by statistical laws. When a train departs from a station on time, the driver might relax because the time is sufficient, and this behavior can possibility cause a short delay during the operation (here we assume that the actual arrival time at next station is decided by the driver, where some Automatic Train Operation (ATO) systems also require final confirmation from the driver). In [22], a left partial β function distribution is used to describe this behavior. When a train departs from a station with delay, because the driver is relatively focused on diminishing the delay, the possibility that real operating time in the next section is less than the planned one will increase. Therefore, a normal function can be used to describe this behavior [23]. Because the minimum headway and operation time and offset differ from track section to track section, we introduce a virtual place PX=εj+,εj-,njX,λjR,λjZ,σjR,μjR to store and manage these parameters. Here, εj+ means the station from which a train departs to track section j; εj- means the station the train arrives at from track section j; njX means the maximum trains that can be contained on track section j; λjR means the operating time standard of track section j; λjZ means the minimum headway time of track section j; σjR means that a train arrives at track section j on time, where the actual offset of the train operating obeys the β function distribution; μjR means that a train arrives at track section j later than schedule, where the actual offset of the train operating obeys the normal function. By introducing σjR and μjR, we can simulate the train operation considering the actual disturbances; this will lead our simulation results more close to real-world case.Similar to the train operating in track sections, the train operating at a station has different standards according to the type of operation. Considering that the operation process has a controlled random feature, we can still use theβ function and normal function to describe the actual offset in time, on time, and delay situations. More precisely, the train must wait for the route within a prepared station (switch shift and platform preparation), and then it is allowed to enter and leave the station. In other words, comparing the track headway between stations, there are specific station headway times that must be satisfied. Because these station headway times differ from station to station, we introduce a virtual place PS=niS,λiD,λiF,λiW,σiS,μiS to represent and manage these data. Here, niS is the maximum number of trains contained at station i; λiD is the arrival headway time at station i; λiF is the departure headway time at station i; λiW is the operation standard at station i; σiS means that a train operation at station i is on time, where the actual offset of the train operating obeys the β function distribution; μiS means that a train operation at station i is later than scheduled, where the actual offset of the train operating obeys the normal function.


### 2.3. Train Operation Simulation

The operation of a train can be described as a series of discrete events, and because the triggering mechanism is different for different events, the simulation process is step by step.


#### 2.3.1. Train Arrival Transition

When traink operating on track section j arrives at station i, it will occupy the arrival and departure track to complete certain operations (e.g., passenger loading and alighting), and for station i we need to supervise the operating process to arrange the departure from the station or entrance to the shunting yard. At this time, the operation of train is beyond j, so the supervision of j will end, but because of the station headway time, this train could affect other trains that are operating on j, so we use K to represent the trains that are entering the station and transition TjiD to simulate this behavior; then the train arrival can be described as Figure 1 shows.Figure 1
Transition when train arrives.In Figure1, T is an overall timer which sends a simulated time t; the dashed dotted line means the spread direction of time signal t; the dashed double-direction line means corresponding data will be transferred from the relevant place and new data will be input into that place where TjiD has happened; TjiD, TjiD will be triggered by the relevant data of the place; the solid double-direction line means that corresponding data will be transferred from the relevant place and new data will be input into that place where TjiD has happened, but TjiD will not be triggered by any relevant data of the place; the directed arcW+ means the data accepted from the relevant place when TjiD has happened; the directed arc W- means the data transferred to the relevant place when TjiD has happened; ΩjX means the set of trains that are operating on track section j; besides, the rule of value fiK and the unannounced directed arc function are(1)fiK=DKiRZKiJ=passFKiJ+βσiSZKiJ=stop∣departure∧FKiJ>DKiR+λiWDKiR+λiW+NμiSelseWTjiD,PjX=vj-=K,Ajk′X∣k∈ΩjX∧k≠KWPiS,TjiD=lij′∃DKεj′-J>DKiJ∧∃lij′⌀else.In the equation,β(σiS) and N(μiS) are predefined functions that return a β function distribution value that satisfies parameter σiS and a normal function random value μiS; Ajk′X is the adjustment value of AjkX, assuming that k- represents the train following train k, k+ represents the train previous to train k, and the value of Ajk′X is set as(2)Ajk′X=max⁡AjkX,t+λiDk=K-max⁡AjkX,Ajk+′X+λjZk≠K-.Because traink can be accepted by station i only when it is approaching station i and when station i has prepared an arrival and departure track for it, we use ΩjX to represent the number of trains on track section j, ΩiW represents the number of trains at station i, and the trigger condition of TjiD is(3)ΩjX>0∧ΩiW<niS∧t≥Dvj-iR+λiD∧AjKX≤t∧AjKX=min⁡AjkX∣k∈ΩjX.


#### 2.3.2. EMU Leaves the Shunting Yard Transition

When an EMU leaves the shunting yard, one arrival and departure track must be arranged at the corresponding station; if we useK to represent the EMU leaving the shunting yard, then this behavior can be described by the transition TiS as shown in Figure 2.Figure 2
Transition when EMU leaves the shunting yard.In Figure2, tS means the initial time of the simulation and the value of DKiR is(4)DKiR=AiKSt=tStt>tS.We assume that the EMU will leave the shunting yard only before its loading time at stationi; therefore, if ΩiS means the number of trains that are planned to depart from station i, the trigger rule of TiS is set as follows:(5)ΩiW<niS∧ΩiS>0∧∃AiKS≤t.Notice that because the simulation includes sector selection reasons or time setting reasons, some trains will start the simulation from stationi; in this case, we consider those trains to depart from station i.


#### 2.3.3. Train Departure Transition

When traink departs from station i to track section j, the corresponding arrival and departure track in station i will be released, and station i will end the supervision of it and begin to prepare the next train that is to depart in the same direction. Meanwhile, because the corresponding track section will be occupied, j will supervise the operation situation of train k to ensure the headway. If we use K to represent the train departing from a station, then this behavior can be described by the transition TijF, as shown as Figure 3.Figure 3
Transition with train departure.Here, the dashed nondirection arc means thatTijF is triggered by corresponding data in the relevant place; the dashed one-direction arc means TijF will get data from the relevant place when a transition has happened, and this process is triggered by the corresponding data in that place; the value of the newly added ZKiR needs to consider the simulation situation. Other functions are(6)WPjX,TijF=Ajvj+XΩjX>0⌀ΩjX=0WTijF,PjX=AjKX,Ajvj+XΩjX>0AjKXΩjX=0,where vj+ means the last train that runs to track section j, which can be determined by comparing all the AjkX; for the newly added AjKX, we assume that ϑR=t+λjR, ϑZ=Ajvj+X+λjZ, which can be determined by the following rules:(7)AjKX=ϑR+max⁡ϑZ-ϑR,NμjXΩjX>0∧ϑR≥max⁡ϑZ,DKεj-JϑZ+max⁡0,βσjXΩjX>0∧ϑZ>max⁡ϑR,DKεj-JDKεj-J+max⁡ϑZ-DKεj-J,βσjXΩjX>0∧DKεj-J>max⁡ϑR,ϑZDKεj-J+βσjXΩjX=0∧DKεj-J≥ϑR.Only after trainK finishes the operation at station i and gets permission to depart, can it depart from that station. Therefore, the trigger situation of TijF can be expressed as(8)∃lij=K∧∃fiK≤t∧ΩjX<njX∧ΩjX=0∨ΩjX>0∧t≥Fvj+iR+max⁡λjZ,λiF


#### 2.3.4. EMU Enters Shunting Yard Transition

When an EMU enters the shunting yard, it will release the corresponding arrival and departure track at the station, and the corresponding station will end its supervision of this train. If we useK to represent the trains entering the shunting yard at station, then this behavior can be described by the transition TiZ as shown in Figure 4.Figure 4
Transition when EMU enters shunting yard.Only after the passengers have alighted from traink at station i, the corresponding EMU that runs this train can transit into K and enter the shunting yard. Assuming that ΩijF is the train set at station i departing to track sectionj, the trigger of TiZ is(9)∃fik≤t∧k∉∀ΩijF.For a train that leaves the simulation area from stationi, we simply consider that station i is its destination.


#### 2.3.5. Departure Order Transition

At any time, there will be only one train from stationi departing to track sectionj. Therefore, if there is more than one train due to departure to track section j, station i needs to decide the departure order of these trains to track sectionj. This can be described using transition TijP as shown in Figure 5.Figure 5
Transition with departure order.In the figure, the value of the addedlij can be determined by the dispatching strategy of the simulation section.Because the departure order will send only the existing departing trains to track sectionj but the earliest train has not been decided, we set the trigger condition of TijP as(10)∃εj+=i∧∄lij∧ΩijF>0.


### 2.4. Simulation Time Step Setting

The overall timerT is a dynamic parameter that supplies the simulation time and triggers different kinds of transitions in time order. Considering that the simulation step has a positive relationship with the simulation efficiency, we need to select an appropriate simulation time step.Considering the high accuracy required for a high-speed railway, we setΔt to 1 second in order to get a good simulation result.


### 2.5. Label Initialization

Train operation has a strong relevance, and once a train is delayed during the simulation, the delay will propagate [24]. It is obvious that the initialization of AikS will affect the accuracy of the simulation, so, to consider the randomness of train operation at the initial phase, we set AikS as(11)AikS=FkiJ-λiWZkiJ=start∧FkiJ≥tSDkiJ∃DkiJ≤tS∧FkiJ≥tSDkiJ+β∄Fkεj+J<tS∧DkiJ>tS∧εj-=iDkiJ+βσjX∃Fkεj+J<tS∧DkiJ>tS∧εj-=i.In the formula,β will return a random value that obeys the β function distribution. The parameter can be set according to the trains.


### 2.6. Modeling Steps

Based on the simulation elements mentioned above and transfering all trains according to the simulation plan, we can build a simulation net according to the topology of the real-world high-speed line; the process of modeling is as follows.Step 1.
CreatePiS for every station i in the simulation line.Step 2.
CreatePjX for every simulation track section j.Step 3.
CreatePV, PS, PX, and a global timer, T.Step 4.
For every track sectionj and the next station linked i, create TjiD, build the relation with PV, PS, PX according to the definition of TjiD, and build the relation with T as well.Step 5.
For everyPiS, create TiS and build the relation with PV, PS, and T according to the definition of TiS.Step 6.
For every track sectionj and the previous station i, create TijF, and build the relation with PV, PS, PX, and T according to the definition of TijF.Step 7.
CreateTiZ for each PiS and build the relation with PV, PX, and T according to the definition of TiZ.Step 8.
For each track sectionj and the previous station i, create TijP, and build the relation with PV, PX according to the definition of TijP.Step 9.
Select the trains that are in the simulation range but still have not arrive their destinations; for each traink create a Vk, and put all the Vk into PV.Step 10.
Initialize the parameters inPX according to section situations, and then initialize parameters in PS according to the station situations.Step 11.
CreateAikS for each train TOKEN Vk in PV according to the rules defined in (11), and then put it into PV.Step 12.
Set the global timer to the initialize time of the simulation.After building the model, by driving the global timer, we can start the simulation process and get the simulation results of the train operation plan. More precisely, our model is a macroscopic model, this means when we deal with the train operating, we just consider the travel time between stations. This allows us to consider the travel speed of train in different track sections without considering the train speed continuously.


## 2.1. Train Abstract

In the train operation plan, the difference between trains is mainly about their speed, path and dwell, and arrival times. Meanwhile, as the trains are operated, the space location of the trains will change.When we consider different trains, we need to describe whether they have different paths and different stop patterns. Also we should consider that, in daily operation, the dispatch department will adjust the train operation to absorb inevitable disturbances. It is clear that, during the operation, the order of stations a train should pass according to the plan and accurate arrival and departure time at a station are the key features to distinguish it from other trains. Therefore, we should subscribe these features when we describe a train.Beyond the features mentioned above, because in China we operate different rains in a rail line, the operation speed and dwell time of trains can be differ. When the train operation does not fit the operation plan strictly, the dispatch department will adjust the operation situation according to the train operation speed. From this point of view, the train speed is taken as another feature as well.The purpose of train operation plan simulation is to evaluate the possibility that the train operates according to the operation plan. To achieve this goal, we need to store the simulation data that reflect one train’s exact arrival and departure time at a station. We found that if we store the data in station and sector places, it would be difficult to handle the data structure and cause inefficiency during the simulation. So we just store the data in train TOKEN for faster data processing.From the analyses above we can see that it is difficult to describe the train with single color; this means the traditional TOKEN is not suitable for our case. We use a multifeature TOKENVk=Gk,ZkiJ,FkiJ,DkiJ,ZkiR,FkiR,DkiR to represent train k, in which Gk is the speed of train k; ZkiJ is the operation state of train k at station i; FkiJ is the scheduled departure time of train k from station i; DkiJ is the scheduled arrival time of train k at station i; ZkiR is the simulated operation state of train k at station i; FkiR is the simulated departure time of train k at station i; DkiR is the simulated arrival time of train k at station i. Obviously, if train k is scheduled not to stop at station i, then we have FkiJ equal to DkiJ; by analogy, if in the simulation train k does not stop at station i, then we have FkiR equal to DkiR. In our research, all the trains are operated with an EMU (Electronic Multiple Unit), which means the train unit has a fixed consist and its maintenance is integrated. The place where an EMU takes maintenance is called shunting yard; it is usually located in some large stations and takes reasonability for all the maintenance works. Because the shunting yard of an EMU can be regarded as a specific station, we assume that when an EMU reaches a station that is linked to a shunting yard, the operation of a train getting back to shunting yard is regarded as departure the station, while the leave of a train from shunting yard is regarded as arrival at the station. Therefore, under the assumption that the EMU’s times of entering and leaving the shunting yard are connected with the arrival and departure from the corresponding station, DkiR can be used to record the arrival time of train k at station i in the simulation when it leaves the shunting yard, while FkiR can be used to record the departure time of train k at station i in the simulation.


## 2.2. Operation Environment

The operation environment includes the stations and track sections between stations that a train passes and the train operation constraints parameters. Among them, the station and track section are entity environments; they can carry a train and be expressed as a place; the parameters are the information environment, which contains various classes, and the data scale has a proportional relationship with the simulation scale. In this paper, we use the virtual place to express these environments.


### 2.2.1. Train Place

During the simulation period, we need to inquire the train information continuously. As a public resource, we use a virtual placePV=Vk,AikS to store and manage the train data. In this place, in which AikS is the departure time of train k at station i, its purpose is to improve the simulation efficiency.


### 2.2.2. Station Place

A station can connect more than one direction; meanwhile, it contains several arrival and departure tracks to serve all kinds of operation, like arrival, departure, and passing of a train. Because the type and start time of operation as well as the connected direction are different for every station, the order of the arrivals and departures of trains is less connected, so we need to consider the operation of trains at a station and decide the departure order in all directions according to the planned and actual train operation situation. To fulfill this function, we use a station placePiS=fik,lij to represent station i, in which fik is the finish time of train k at station i and lij is the next train that departs on track section j at station i.


### 2.2.3. Track Section Place

Because a track section can be seen as many connected block sections divided by the signal, among those sectors, trains must operate in the same order. In other words, trains cannot overtake each other on the same track section. So trains operating on the same track section must follow the “first arrive, first leave” rule. Besides, to avoid accidents and ensure that the station has enough time to prepare for the next train, the train dispatching system will adjust the trains’ operating speed to satisfy the minimum headway distance between trains. We use track section placePjX=AjkX,vj- to represent track section j, in which AjkX is the estimated arrival time of the end of sector for train k that is operating on track section j and vj- is the last train leaving in track section j.


### 2.2.4. Parameter Place

Although the speed of trains on a track section can be adjusted, it must follow specific rules, which include the headway determined by the features of the track, the train’s dynamic performance, and the signal system, while the operating time on the track section for different types of train has a standard. In real operation, because the train will be influenced by all kinds of disturbances, the real operating time usually deviates from the planned schedule (being earlier or delayed). This kind of deviation is random in nature, but it can be described by statistical laws. When a train departs from a station on time, the driver might relax because the time is sufficient, and this behavior can possibility cause a short delay during the operation (here we assume that the actual arrival time at next station is decided by the driver, where some Automatic Train Operation (ATO) systems also require final confirmation from the driver). In [22], a left partial β function distribution is used to describe this behavior. When a train departs from a station with delay, because the driver is relatively focused on diminishing the delay, the possibility that real operating time in the next section is less than the planned one will increase. Therefore, a normal function can be used to describe this behavior [23]. Because the minimum headway and operation time and offset differ from track section to track section, we introduce a virtual place PX=εj+,εj-,njX,λjR,λjZ,σjR,μjR to store and manage these parameters. Here, εj+ means the station from which a train departs to track section j; εj- means the station the train arrives at from track section j; njX means the maximum trains that can be contained on track section j; λjR means the operating time standard of track section j; λjZ means the minimum headway time of track section j; σjR means that a train arrives at track section j on time, where the actual offset of the train operating obeys the β function distribution; μjR means that a train arrives at track section j later than schedule, where the actual offset of the train operating obeys the normal function. By introducing σjR and μjR, we can simulate the train operation considering the actual disturbances; this will lead our simulation results more close to real-world case.Similar to the train operating in track sections, the train operating at a station has different standards according to the type of operation. Considering that the operation process has a controlled random feature, we can still use theβ function and normal function to describe the actual offset in time, on time, and delay situations. More precisely, the train must wait for the route within a prepared station (switch shift and platform preparation), and then it is allowed to enter and leave the station. In other words, comparing the track headway between stations, there are specific station headway times that must be satisfied. Because these station headway times differ from station to station, we introduce a virtual place PS=niS,λiD,λiF,λiW,σiS,μiS to represent and manage these data. Here, niS is the maximum number of trains contained at station i; λiD is the arrival headway time at station i; λiF is the departure headway time at station i; λiW is the operation standard at station i; σiS means that a train operation at station i is on time, where the actual offset of the train operating obeys the β function distribution; μiS means that a train operation at station i is later than scheduled, where the actual offset of the train operating obeys the normal function.


## 2.2.1. Train Place

During the simulation period, we need to inquire the train information continuously. As a public resource, we use a virtual placePV=Vk,AikS to store and manage the train data. In this place, in which AikS is the departure time of train k at station i, its purpose is to improve the simulation efficiency.


## 2.2.2. Station Place

A station can connect more than one direction; meanwhile, it contains several arrival and departure tracks to serve all kinds of operation, like arrival, departure, and passing of a train. Because the type and start time of operation as well as the connected direction are different for every station, the order of the arrivals and departures of trains is less connected, so we need to consider the operation of trains at a station and decide the departure order in all directions according to the planned and actual train operation situation. To fulfill this function, we use a station placePiS=fik,lij to represent station i, in which fik is the finish time of train k at station i and lij is the next train that departs on track section j at station i.


## 2.2.3. Track Section Place

Because a track section can be seen as many connected block sections divided by the signal, among those sectors, trains must operate in the same order. In other words, trains cannot overtake each other on the same track section. So trains operating on the same track section must follow the “first arrive, first leave” rule. Besides, to avoid accidents and ensure that the station has enough time to prepare for the next train, the train dispatching system will adjust the trains’ operating speed to satisfy the minimum headway distance between trains. We use track section placePjX=AjkX,vj- to represent track section j, in which AjkX is the estimated arrival time of the end of sector for train k that is operating on track section j and vj- is the last train leaving in track section j.


## 2.2.4. Parameter Place

Although the speed of trains on a track section can be adjusted, it must follow specific rules, which include the headway determined by the features of the track, the train’s dynamic performance, and the signal system, while the operating time on the track section for different types of train has a standard. In real operation, because the train will be influenced by all kinds of disturbances, the real operating time usually deviates from the planned schedule (being earlier or delayed). This kind of deviation is random in nature, but it can be described by statistical laws. When a train departs from a station on time, the driver might relax because the time is sufficient, and this behavior can possibility cause a short delay during the operation (here we assume that the actual arrival time at next station is decided by the driver, where some Automatic Train Operation (ATO) systems also require final confirmation from the driver). In [22], a left partial β function distribution is used to describe this behavior. When a train departs from a station with delay, because the driver is relatively focused on diminishing the delay, the possibility that real operating time in the next section is less than the planned one will increase. Therefore, a normal function can be used to describe this behavior [23]. Because the minimum headway and operation time and offset differ from track section to track section, we introduce a virtual place PX=εj+,εj-,njX,λjR,λjZ,σjR,μjR to store and manage these parameters. Here, εj+ means the station from which a train departs to track section j; εj- means the station the train arrives at from track section j; njX means the maximum trains that can be contained on track section j; λjR means the operating time standard of track section j; λjZ means the minimum headway time of track section j; σjR means that a train arrives at track section j on time, where the actual offset of the train operating obeys the β function distribution; μjR means that a train arrives at track section j later than schedule, where the actual offset of the train operating obeys the normal function. By introducing σjR and μjR, we can simulate the train operation considering the actual disturbances; this will lead our simulation results more close to real-world case.Similar to the train operating in track sections, the train operating at a station has different standards according to the type of operation. Considering that the operation process has a controlled random feature, we can still use theβ function and normal function to describe the actual offset in time, on time, and delay situations. More precisely, the train must wait for the route within a prepared station (switch shift and platform preparation), and then it is allowed to enter and leave the station. In other words, comparing the track headway between stations, there are specific station headway times that must be satisfied. Because these station headway times differ from station to station, we introduce a virtual place PS=niS,λiD,λiF,λiW,σiS,μiS to represent and manage these data. Here, niS is the maximum number of trains contained at station i; λiD is the arrival headway time at station i; λiF is the departure headway time at station i; λiW is the operation standard at station i; σiS means that a train operation at station i is on time, where the actual offset of the train operating obeys the β function distribution; μiS means that a train operation at station i is later than scheduled, where the actual offset of the train operating obeys the normal function.


## 2.3. Train Operation Simulation

The operation of a train can be described as a series of discrete events, and because the triggering mechanism is different for different events, the simulation process is step by step.


### 2.3.1. Train Arrival Transition

When traink operating on track section j arrives at station i, it will occupy the arrival and departure track to complete certain operations (e.g., passenger loading and alighting), and for station i we need to supervise the operating process to arrange the departure from the station or entrance to the shunting yard. At this time, the operation of train is beyond j, so the supervision of j will end, but because of the station headway time, this train could affect other trains that are operating on j, so we use K to represent the trains that are entering the station and transition TjiD to simulate this behavior; then the train arrival can be described as Figure 1 shows.Figure 1
Transition when train arrives.In Figure1, T is an overall timer which sends a simulated time t; the dashed dotted line means the spread direction of time signal t; the dashed double-direction line means corresponding data will be transferred from the relevant place and new data will be input into that place where TjiD has happened; TjiD, TjiD will be triggered by the relevant data of the place; the solid double-direction line means that corresponding data will be transferred from the relevant place and new data will be input into that place where TjiD has happened, but TjiD will not be triggered by any relevant data of the place; the directed arcW+ means the data accepted from the relevant place when TjiD has happened; the directed arc W- means the data transferred to the relevant place when TjiD has happened; ΩjX means the set of trains that are operating on track section j; besides, the rule of value fiK and the unannounced directed arc function are(1)fiK=DKiRZKiJ=passFKiJ+βσiSZKiJ=stop∣departure∧FKiJ>DKiR+λiWDKiR+λiW+NμiSelseWTjiD,PjX=vj-=K,Ajk′X∣k∈ΩjX∧k≠KWPiS,TjiD=lij′∃DKεj′-J>DKiJ∧∃lij′⌀else.In the equation,β(σiS) and N(μiS) are predefined functions that return a β function distribution value that satisfies parameter σiS and a normal function random value μiS; Ajk′X is the adjustment value of AjkX, assuming that k- represents the train following train k, k+ represents the train previous to train k, and the value of Ajk′X is set as(2)Ajk′X=max⁡AjkX,t+λiDk=K-max⁡AjkX,Ajk+′X+λjZk≠K-.Because traink can be accepted by station i only when it is approaching station i and when station i has prepared an arrival and departure track for it, we use ΩjX to represent the number of trains on track section j, ΩiW represents the number of trains at station i, and the trigger condition of TjiD is(3)ΩjX>0∧ΩiW<niS∧t≥Dvj-iR+λiD∧AjKX≤t∧AjKX=min⁡AjkX∣k∈ΩjX.


### 2.3.2. EMU Leaves the Shunting Yard Transition

When an EMU leaves the shunting yard, one arrival and departure track must be arranged at the corresponding station; if we useK to represent the EMU leaving the shunting yard, then this behavior can be described by the transition TiS as shown in Figure 2.Figure 2
Transition when EMU leaves the shunting yard.In Figure2, tS means the initial time of the simulation and the value of DKiR is(4)DKiR=AiKSt=tStt>tS.We assume that the EMU will leave the shunting yard only before its loading time at stationi; therefore, if ΩiS means the number of trains that are planned to depart from station i, the trigger rule of TiS is set as follows:(5)ΩiW<niS∧ΩiS>0∧∃AiKS≤t.Notice that because the simulation includes sector selection reasons or time setting reasons, some trains will start the simulation from stationi; in this case, we consider those trains to depart from station i.


### 2.3.3. Train Departure Transition

When traink departs from station i to track section j, the corresponding arrival and departure track in station i will be released, and station i will end the supervision of it and begin to prepare the next train that is to depart in the same direction. Meanwhile, because the corresponding track section will be occupied, j will supervise the operation situation of train k to ensure the headway. If we use K to represent the train departing from a station, then this behavior can be described by the transition TijF, as shown as Figure 3.Figure 3
Transition with train departure.Here, the dashed nondirection arc means thatTijF is triggered by corresponding data in the relevant place; the dashed one-direction arc means TijF will get data from the relevant place when a transition has happened, and this process is triggered by the corresponding data in that place; the value of the newly added ZKiR needs to consider the simulation situation. Other functions are(6)WPjX,TijF=Ajvj+XΩjX>0⌀ΩjX=0WTijF,PjX=AjKX,Ajvj+XΩjX>0AjKXΩjX=0,where vj+ means the last train that runs to track section j, which can be determined by comparing all the AjkX; for the newly added AjKX, we assume that ϑR=t+λjR, ϑZ=Ajvj+X+λjZ, which can be determined by the following rules:(7)AjKX=ϑR+max⁡ϑZ-ϑR,NμjXΩjX>0∧ϑR≥max⁡ϑZ,DKεj-JϑZ+max⁡0,βσjXΩjX>0∧ϑZ>max⁡ϑR,DKεj-JDKεj-J+max⁡ϑZ-DKεj-J,βσjXΩjX>0∧DKεj-J>max⁡ϑR,ϑZDKεj-J+βσjXΩjX=0∧DKεj-J≥ϑR.Only after trainK finishes the operation at station i and gets permission to depart, can it depart from that station. Therefore, the trigger situation of TijF can be expressed as(8)∃lij=K∧∃fiK≤t∧ΩjX<njX∧ΩjX=0∨ΩjX>0∧t≥Fvj+iR+max⁡λjZ,λiF


### 2.3.4. EMU Enters Shunting Yard Transition

When an EMU enters the shunting yard, it will release the corresponding arrival and departure track at the station, and the corresponding station will end its supervision of this train. If we useK to represent the trains entering the shunting yard at station, then this behavior can be described by the transition TiZ as shown in Figure 4.Figure 4
Transition when EMU enters shunting yard.Only after the passengers have alighted from traink at station i, the corresponding EMU that runs this train can transit into K and enter the shunting yard. Assuming that ΩijF is the train set at station i departing to track sectionj, the trigger of TiZ is(9)∃fik≤t∧k∉∀ΩijF.For a train that leaves the simulation area from stationi, we simply consider that station i is its destination.


### 2.3.5. Departure Order Transition

At any time, there will be only one train from stationi departing to track sectionj. Therefore, if there is more than one train due to departure to track section j, station i needs to decide the departure order of these trains to track sectionj. This can be described using transition TijP as shown in Figure 5.Figure 5
Transition with departure order.In the figure, the value of the addedlij can be determined by the dispatching strategy of the simulation section.Because the departure order will send only the existing departing trains to track sectionj but the earliest train has not been decided, we set the trigger condition of TijP as(10)∃εj+=i∧∄lij∧ΩijF>0.


## 2.3.1. Train Arrival Transition

When traink operating on track section j arrives at station i, it will occupy the arrival and departure track to complete certain operations (e.g., passenger loading and alighting), and for station i we need to supervise the operating process to arrange the departure from the station or entrance to the shunting yard. At this time, the operation of train is beyond j, so the supervision of j will end, but because of the station headway time, this train could affect other trains that are operating on j, so we use K to represent the trains that are entering the station and transition TjiD to simulate this behavior; then the train arrival can be described as Figure 1 shows.Figure 1
Transition when train arrives.In Figure1, T is an overall timer which sends a simulated time t; the dashed dotted line means the spread direction of time signal t; the dashed double-direction line means corresponding data will be transferred from the relevant place and new data will be input into that place where TjiD has happened; TjiD, TjiD will be triggered by the relevant data of the place; the solid double-direction line means that corresponding data will be transferred from the relevant place and new data will be input into that place where TjiD has happened, but TjiD will not be triggered by any relevant data of the place; the directed arcW+ means the data accepted from the relevant place when TjiD has happened; the directed arc W- means the data transferred to the relevant place when TjiD has happened; ΩjX means the set of trains that are operating on track section j; besides, the rule of value fiK and the unannounced directed arc function are(1)fiK=DKiRZKiJ=passFKiJ+βσiSZKiJ=stop∣departure∧FKiJ>DKiR+λiWDKiR+λiW+NμiSelseWTjiD,PjX=vj-=K,Ajk′X∣k∈ΩjX∧k≠KWPiS,TjiD=lij′∃DKεj′-J>DKiJ∧∃lij′⌀else.In the equation,β(σiS) and N(μiS) are predefined functions that return a β function distribution value that satisfies parameter σiS and a normal function random value μiS; Ajk′X is the adjustment value of AjkX, assuming that k- represents the train following train k, k+ represents the train previous to train k, and the value of Ajk′X is set as(2)Ajk′X=max⁡AjkX,t+λiDk=K-max⁡AjkX,Ajk+′X+λjZk≠K-.Because traink can be accepted by station i only when it is approaching station i and when station i has prepared an arrival and departure track for it, we use ΩjX to represent the number of trains on track section j, ΩiW represents the number of trains at station i, and the trigger condition of TjiD is(3)ΩjX>0∧ΩiW<niS∧t≥Dvj-iR+λiD∧AjKX≤t∧AjKX=min⁡AjkX∣k∈ΩjX.


## 2.3.2. EMU Leaves the Shunting Yard Transition

When an EMU leaves the shunting yard, one arrival and departure track must be arranged at the corresponding station; if we useK to represent the EMU leaving the shunting yard, then this behavior can be described by the transition TiS as shown in Figure 2.Figure 2
Transition when EMU leaves the shunting yard.In Figure2, tS means the initial time of the simulation and the value of DKiR is(4)DKiR=AiKSt=tStt>tS.We assume that the EMU will leave the shunting yard only before its loading time at stationi; therefore, if ΩiS means the number of trains that are planned to depart from station i, the trigger rule of TiS is set as follows:(5)ΩiW<niS∧ΩiS>0∧∃AiKS≤t.Notice that because the simulation includes sector selection reasons or time setting reasons, some trains will start the simulation from stationi; in this case, we consider those trains to depart from station i.


## 2.3.3. Train Departure Transition

When traink departs from station i to track section j, the corresponding arrival and departure track in station i will be released, and station i will end the supervision of it and begin to prepare the next train that is to depart in the same direction. Meanwhile, because the corresponding track section will be occupied, j will supervise the operation situation of train k to ensure the headway. If we use K to represent the train departing from a station, then this behavior can be described by the transition TijF, as shown as Figure 3.Figure 3
Transition with train departure.Here, the dashed nondirection arc means thatTijF is triggered by corresponding data in the relevant place; the dashed one-direction arc means TijF will get data from the relevant place when a transition has happened, and this process is triggered by the corresponding data in that place; the value of the newly added ZKiR needs to consider the simulation situation. Other functions are(6)WPjX,TijF=Ajvj+XΩjX>0⌀ΩjX=0WTijF,PjX=AjKX,Ajvj+XΩjX>0AjKXΩjX=0,where vj+ means the last train that runs to track section j, which can be determined by comparing all the AjkX; for the newly added AjKX, we assume that ϑR=t+λjR, ϑZ=Ajvj+X+λjZ, which can be determined by the following rules:(7)AjKX=ϑR+max⁡ϑZ-ϑR,NμjXΩjX>0∧ϑR≥max⁡ϑZ,DKεj-JϑZ+max⁡0,βσjXΩjX>0∧ϑZ>max⁡ϑR,DKεj-JDKεj-J+max⁡ϑZ-DKεj-J,βσjXΩjX>0∧DKεj-J>max⁡ϑR,ϑZDKεj-J+βσjXΩjX=0∧DKεj-J≥ϑR.Only after trainK finishes the operation at station i and gets permission to depart, can it depart from that station. Therefore, the trigger situation of TijF can be expressed as(8)∃lij=K∧∃fiK≤t∧ΩjX<njX∧ΩjX=0∨ΩjX>0∧t≥Fvj+iR+max⁡λjZ,λiF


## 2.3.4. EMU Enters Shunting Yard Transition

When an EMU enters the shunting yard, it will release the corresponding arrival and departure track at the station, and the corresponding station will end its supervision of this train. If we useK to represent the trains entering the shunting yard at station, then this behavior can be described by the transition TiZ as shown in Figure 4.Figure 4
Transition when EMU enters shunting yard.Only after the passengers have alighted from traink at station i, the corresponding EMU that runs this train can transit into K and enter the shunting yard. Assuming that ΩijF is the train set at station i departing to track sectionj, the trigger of TiZ is(9)∃fik≤t∧k∉∀ΩijF.For a train that leaves the simulation area from stationi, we simply consider that station i is its destination.


## 2.3.5. Departure Order Transition

At any time, there will be only one train from stationi departing to track sectionj. Therefore, if there is more than one train due to departure to track section j, station i needs to decide the departure order of these trains to track sectionj. This can be described using transition TijP as shown in Figure 5.Figure 5
Transition with departure order.In the figure, the value of the addedlij can be determined by the dispatching strategy of the simulation section.Because the departure order will send only the existing departing trains to track sectionj but the earliest train has not been decided, we set the trigger condition of TijP as(10)∃εj+=i∧∄lij∧ΩijF>0.


## 2.4. Simulation Time Step Setting

The overall timerT is a dynamic parameter that supplies the simulation time and triggers different kinds of transitions in time order. Considering that the simulation step has a positive relationship with the simulation efficiency, we need to select an appropriate simulation time step.Considering the high accuracy required for a high-speed railway, we setΔt to 1 second in order to get a good simulation result.


## 2.5. Label Initialization

Train operation has a strong relevance, and once a train is delayed during the simulation, the delay will propagate [24]. It is obvious that the initialization of AikS will affect the accuracy of the simulation, so, to consider the randomness of train operation at the initial phase, we set AikS as(11)AikS=FkiJ-λiWZkiJ=start∧FkiJ≥tSDkiJ∃DkiJ≤tS∧FkiJ≥tSDkiJ+β∄Fkεj+J<tS∧DkiJ>tS∧εj-=iDkiJ+βσjX∃Fkεj+J<tS∧DkiJ>tS∧εj-=i.In the formula,β will return a random value that obeys the β function distribution. The parameter can be set according to the trains.


## 2.6. Modeling Steps

Based on the simulation elements mentioned above and transfering all trains according to the simulation plan, we can build a simulation net according to the topology of the real-world high-speed line; the process of modeling is as follows.Step 1.
CreatePiS for every station i in the simulation line.Step 2.
CreatePjX for every simulation track section j.Step 3.
CreatePV, PS, PX, and a global timer, T.Step 4.
For every track sectionj and the next station linked i, create TjiD, build the relation with PV, PS, PX according to the definition of TjiD, and build the relation with T as well.Step 5.
For everyPiS, create TiS and build the relation with PV, PS, and T according to the definition of TiS.Step 6.
For every track sectionj and the previous station i, create TijF, and build the relation with PV, PS, PX, and T according to the definition of TijF.Step 7.
CreateTiZ for each PiS and build the relation with PV, PX, and T according to the definition of TiZ.Step 8.
For each track sectionj and the previous station i, create TijP, and build the relation with PV, PX according to the definition of TijP.Step 9.
Select the trains that are in the simulation range but still have not arrive their destinations; for each traink create a Vk, and put all the Vk into PV.Step 10.
Initialize the parameters inPX according to section situations, and then initialize parameters in PS according to the station situations.Step 11.
CreateAikS for each train TOKEN Vk in PV according to the rules defined in (11), and then put it into PV.Step 12.
Set the global timer to the initialize time of the simulation.After building the model, by driving the global timer, we can start the simulation process and get the simulation results of the train operation plan. More precisely, our model is a macroscopic model, this means when we deal with the train operating, we just consider the travel time between stations. This allows us to consider the travel speed of train in different track sections without considering the train speed continuously.


## 3. Numerical Experiments

### 3.1. Small-Scale Illustrative Examples

We first illustrate our proposed method using a small-scale case. Our study case is Hengyangdong to Lechangdong double line high-speed railway as a part of the Wuhan to Guangzhou high-speed railway. This part of high-speed railway includes 4 stations and 3 sections. Two types of trains are scheduled in this railway, where G trains have a max speed of 300 km/h and D trains have a max speed of 250 km/h. Because in this double line, each line operates trains with one direction, so during the modeling we just separate the two lines and thus can simplify the programming.We show the model of this study case in Figure6, where the section numbers are shown in Table 1, and the corresponding stations are shown in Table 2.Table 1
Section parameters (small-scale case).
Section
Number
Max number of trains contained
Operation time (m:s)
Minimum headway (m:s)
up
down
G
D
First G, second G
First D, second G
First G, second D
First D, second D
Hengyangdong—Leiyangxi
2
1
6
11:11
13:28
1:40
3:00
1:20
3:00
Leiyangxi—Chenzhouxi
4
3
8
15:56
19:10
1:40
3:00
1:20
3:00
Chenzhouxi—Lechangdong
6
5
9
17:15
20:47
1:40
3:00
1:20
3:00Table 2
Station parameters (small-scale case).
Station
Number
Number of platforms
Arrival headway (m)
Departure headway (m)
Dwell time (s)
Hengyangdong
1
11
2.5
1
120
Leiyangxi
2
4
2.5
1
60
Chenzhouxi
3
6
2.5
1
60
Lechangdong
4
4
2.5
1
60Figure 6
Simulation net of Hengyangdong to Lechangdong section.We built the simulation platform based on  .NET and the code was programmed in C#.


### 3.2. Simulation Results

We run the simulation on a Core i5 1.80 Hz 2 GB personal computer, using the real-world timetable of 2011/11/30, and the simulation period is one day (24 h). In our model, the simulation results will be impacted by the parameters ofσiS and μiS; however, the discussion can be found in [22, 23] and is out of the scope of this paper; the focus of this paper is the simulation modeling; hence we use the parameters in [22, 23]. We assume that the actual operation time between stations and at stations obeys the distribution function shown in Table 3. As the situations of track sections are different from each other, when we set the disturbance impact, each track section is considered separately. This assumption is practical and fits the real-world situation.Table 3
Distribution function parameters.
Distribution
Lower bound (%)
Upper bound (%)
Average ork1
Variance ork2
normal
−22.2
22.8
0.3
3.5
β
−22.5
42.5
4.321
7.064We run the simulation 50 times, and for each simulation, the program runs within 29 seconds, which shows the efficiency of the simulation platform. Besides, to show the simulation results more directly, our platform outputs a graph comparing the planned timetable and actual timetable. In Figure7, we demonstrate the comparison results between 8 : 40 and 10 : 30, and the simulation results for this period are shown in Table 4.Table 4
Simulation results (small-scale case).
Train
Data type
Hengyangdong
Leiyangxi
Chenzhouxi
Lechangdong
Arrival time
Departure time
Arrival time
Departure time
Arrival time
Departure time
Arrival time
Departure time
G1027
plan
8:48:48
8:52:48
9:05:59
9:05:59
9:24:55
9:26:55
9:46:10
9:46:10
simulation
8:49:21
8:53:10
9:05:12
9:05:12
9:26:01
9:27:01
9:46:40
9:46:40
G1029
plan
9:06:48
9:06:48
9:17:59
9:17:59
9:35:55
9:38:55
9:58:10
9:58:10
simulation
9:08:24
9:08:24
9:19:36
9:19:36
9:36:53
9:38:55
10:00:16
10:00:16
G1031
plan
9:14:48
9:16:48
9:29:59
9:29:59
9:48:55
9:50:55
10:10:10
10:10:10
simulation
9:15:14
9:17:15
9:30:50
9:30:50
9:49:36
9:51:10
10:11:50
10:11:50
G1033
plan
9:37:48
9:37:48
9:48:59
9:48:59
10:04:55
10:04:55
10:22:10
10:22:10
simulation
9:38:00
9:38:00
9:49:14
9:49:14
10:05:06
10:05:06
10:22:17
10:22:17
G6011
plan
9:29:02
9:29:02
9:40:13
9:40:13
9:58:09
9:58:09
10:15:24
10:15:24
simulation
9:30:47
9:30:47
9:42:00
9:42:00
9:58:30
9:58:30
10:15:46
10:15:46
D7803
plan
9:02:22
9:08:48
9:26:16
9:31:59
9:55:09
10:06:55
10:29:42
10:29:42
simulation
9:05:07
9:09:44
9:25:26
9:32:56
9:55:30
10:06:55
10:27:59
10:27:59
G6081
plan
---
9:44:00
9:57:11
9:57:11
10:16:07
10:17:07
10:36:22
10:36:22
simulation
9:35:23
9:44:29
9:59:22
9:59:22
10:17:50
10:18:50
10:37:50
10:37:50
D2102
plan
10:34:43
10:42:12
10:15:15
10:17:15
9:42:27
9:52:05
9:19:40
9:19:40
simulation
10:33:47
10:42:54
10:14:07
10:17:22
9:48:11
9:54:52
9:21:38
9:21:38
G1036
plan
9:43:12
9:45:12
9:28:01
9:28:01
9:12:05
9:12:05
8:54:50
8:54:50
simulation
9:42:24
9:45:12
9:30:14
9:30:14
9:12:26
9:12:26
8:55:13
8:55:13
G1038
plan
9:52:12
9:52:12
9:41:01
9:41:01
9:21:05
9:23:05
9:00:50
9:00:50
simulation
9:56:03
9:56:03
9:44:52
9:44:52
9:20:18
9:23:05
9:01:01
9:01:01
G1040
plan
10:13:12
10:13:12
10:02:01
10:02:01
9:46:05
9:46:05
9:28:50
9:28:50
simulation
10:18:49
10:18:49
10:07:36
10:07:36
9:51:42
9:51:42
9:29:45
9:29:45
G1042
plan
10:20:12
10:23:12
10:06:01
10:06:01
9:50:05
9:50:05
9:32:50
9:32:50
simulation
10:20:40
10:23:12
10:09:28
10:09:28
9:53:32
9:53:32
9:34:32
9:34:32
G6008
plan
9:36:12
9:36:12
9:25:01
9:25:01
9:03:05
9:07:05
8:42:50
8:42:50
plan
9:39:31
9:41:12
9:28:25
9:28:25
9:05:17
9:07:05
8:43:31
8:43:31
G6010
simulation
10:01:12
10:03:12
9:47:01
9:47:01
9:31:05
9:31:05
9:13:50
9:13:50
plan
10:02:48
10:04:49
9:48:01
9:48:01
9:32:03
9:32:03
9:14:46
9:14:46
G6080
simulation
9:26:12
---
9:12:01
9:12:01
8:56:05
8:56:05
8:38:50
8:38:50
plan
9:27:18
9:37:19
9:12:54
9:12:54
8:55:11
8:55:11
8:37:23
8:37:23
D7802
simulation
9:32:43
9:38:12
9:09:15
9:15:15
8:37:57
8:46:05
8:15:10
8:15:10
plan
9:32:26
9:38:12
9:09:54
9:15:57
8:37:12
8:46:49
8:13:35
8:13:35Figure 7
Simulation and plan comparison of Hengyangdong to Lechangdong section between 8:40 and 10:30.


### 3.3. Results Analysis

The simulation results of Table4 show that there are delayed trains, trains arriving early, and trains on time. Although some trains arrived earlier than scheduled, no train departed earlier than scheduled. Most trains’ stop patterns are the same as planned, but some trains had an extra stop; for example, G6008 stopped at Hengyangdong. Some trains changed their departure order; for example, D7802 departed earlier than G6008 at Hengyangdong. This proved that our model can simulate real-world train operation better than the model used in [11], in which the trains are operating explicitly according to the planned schedule. This makes our model more efficient for the inspection of the train operation plan.Among all the 22 stops, there are 13 stops where arrival was delayed and 14 stops where departure was delayed, but 7 arrival delays and 11 departure delays were within 1 minute compared to the schedule plan. If we consider those delays that are within 1 minute as being on time, we can obtain the on-time rate of the simulation as 72.73% for arrival and 86.37% for departure. This is a little lower than the actual on-time rate, where the main causes are as follows:(
1
) using the same parameters of the normal function to describe all the track sections of the late train running time deviations and all the stations of the late train in the actual operation of the station when there is deviation from the rule;(
2
) using the same parameters of the β distribution function to describe all the track sections in the early train run-time deviation from the law and all the stations of the early train at the time of the actual operation of the station departure time deviation.It is clear that by correcting the function distribution parameters corresponding to each track section and station so as to fit the deviation of the train running time for the respective track section and the deviation from the actual operation time of the respective station, the running probability of the simulation train can be further approximated to the true level


### 3.4. Large-Scale Examples Using the Wuhan-Guangzhou High-Speed Railway Line

The following large-scale example is the Wuhan to Guangzhou high-speed railway, which includes 18 stations and 17 sections. The length of the simulation line is 1069 km; also two types of train, G trains and D trains, are scheduled. The section numbers are shown in Table5, and the corresponding stations are shown in Table 6. We demonstrate the graph comparing the planned timetable and actual timetable in Figure 8, from which we can see the simulation and plan comparison of a large-scale case.Table 5
Section parameters (large-scale case).
Section
Number
Max number of trains contained
Operation time (m:s)
Minimum headway (m:s)
up
down
G
D
First G, second D
Firest D, second G
First G, second D
First D, second D
Wuhan—Wulongquandong
2
1
7
13:40
14:20
1:40
3:00
1:20
3:00
Wulongquandong—Xianningbei
4
3
4
7:28
9:12
1:40
3:00
1:20
3:00
Xianningbei—Chibibei
6
5
5
8:49
10:35
1:40
3:00
1:20
3:00
Chibibei—Yueyangdong
8
7
6
16:50
20:25
1:40
3:00
1:20
3:00
Yueyangdong—Miluodong
10
9
8
14:22
17:15
1:40
3:00
1:20
3:00
Miluodong—Changshanan
12
11
9
16:53
18:55
1:40
3:00
1:20
3:00
Changshanan—Zhuzhouxi
14
13
6
10:15
11:48
1:40
3:00
1:20
3:00
Zhuzhouxi—Hengshanxi
16
15
7
13:50
16:38
1:40
3:00
1:20
3:00
Hengshanxi—Hengyangdong
18
17
5
8:31
10:17
1:40
3:00
1:20
3:00
Hengyangdong—Leiyangxi
20
19
6
11:11
13:28
1:40
3:00
1:20
3:00
Leiyangxi—Chenzhouxi
22
21
8
15:56
19:10
1:40
3:00
1:20
3:00
Chenzhouxi—Lechangdong
24
23
9
17:15
20:47
1:40
3:00
1:20
3:00
Lechangdong—Shaoguan
26
25
5
9:02
10:52
1:40
3:00
1:20
3:00
Shaoguan—Yingdexi
28
27
8
13:50
17:18
1:40
3:00
1:20
3:00
Yingdexi—Qingyuan
30
29
6
11:32
13:50
1:40
3:00
1:20
3:00
Qingyuan—Guangzhoubei
32
31
4
7:30
9:00
1:40
3:00
1:20
3:00
Guangzhoubei—Guangzhounan
34
33
7
13:20
14:10
1:40
3:00
1:20
3:00Table 6
Station parameters (large-scale case).
Station
Number
Number of platforms
Arrival headway (m)
Departure headway (s)
Dwell time (s)
Wuhan
1
20
2.5
1
180
Wulongquandong
2
4
2.5
1
60
Xianningbei
3
6
2.5
1
60
Chibibei
4
4
2.5
1
60
Yueyangdong
5
7
2.5
1
120
Miluodong
6
4
2.5
1
60
Changshanan
7
26
2.5
1
120
Zhuzhouxi
8
7
2.5
1
60
Hengshanxi
9
4
2.5
1
60
Hengyangdong
10
11
2.5
1
120
Leiyangxi
11
4
2.5
1
60
Chenzhouxi
12
6
2.5
1
60
Lechangdong
13
4
2.5
1
60
Shaoguan
14
6
2.5
1
40
Yingdexi
15
4
2.5
1
60
Qingyuan
16
4
2.5
1
60
Guangzhoubei
17
4
2.5
1
60
Guangzhounan
18
28
2.5
1
180Figure 8
Simulation and plan comparison of Wuhan to Guangzhounan line.The simulation results show that(1) during 50 simulations, all 205 trains are scheduled; (2) the maximum simulation travel speed is 256.194 km/h and the minimum simulation travel speed is 255.193 km/h, so, compared with the planned travel speed of 255.723 km/h, the difference is rather small; (3) the utilization of station capacity is 75%; (4) all the various headway times are obeyed, which means that each train can operate safely; (5) in all the late arrived stations, the shortest dwell time is 98.33% of the planned total stop time because, for some delayed trains, the simulation stop time can be less than the planned time.From the results, we can conclude that the model we proposed can simulate well the operation of trains, and the results can be used to inspect the train operation plan and evaluate the robustness of the operation plan. This can be seen from the travel speed deviation of the simulation result, because in our model, the real-world disturbance is considered, so each time we run the simulation, the travel speed of train may be different. Therefore, we run the simulation for 50 times, and the travel speed of trains varies from 256.194 km/h to 255.193 km/h; we would like to mention that parameters of disturbance will affect the simulation result, and the set of parameters should consider the real-world line case. However, the parameter value is out of the scope of this paper and should be studied further more.


## 3.1. Small-Scale Illustrative Examples

We first illustrate our proposed method using a small-scale case. Our study case is Hengyangdong to Lechangdong double line high-speed railway as a part of the Wuhan to Guangzhou high-speed railway. This part of high-speed railway includes 4 stations and 3 sections. Two types of trains are scheduled in this railway, where G trains have a max speed of 300 km/h and D trains have a max speed of 250 km/h. Because in this double line, each line operates trains with one direction, so during the modeling we just separate the two lines and thus can simplify the programming.We show the model of this study case in Figure6, where the section numbers are shown in Table 1, and the corresponding stations are shown in Table 2.Table 1
Section parameters (small-scale case).
Section
Number
Max number of trains contained
Operation time (m:s)
Minimum headway (m:s)
up
down
G
D
First G, second G
First D, second G
First G, second D
First D, second D
Hengyangdong—Leiyangxi
2
1
6
11:11
13:28
1:40
3:00
1:20
3:00
Leiyangxi—Chenzhouxi
4
3
8
15:56
19:10
1:40
3:00
1:20
3:00
Chenzhouxi—Lechangdong
6
5
9
17:15
20:47
1:40
3:00
1:20
3:00Table 2
Station parameters (small-scale case).
Station
Number
Number of platforms
Arrival headway (m)
Departure headway (m)
Dwell time (s)
Hengyangdong
1
11
2.5
1
120
Leiyangxi
2
4
2.5
1
60
Chenzhouxi
3
6
2.5
1
60
Lechangdong
4
4
2.5
1
60Figure 6
Simulation net of Hengyangdong to Lechangdong section.We built the simulation platform based on  .NET and the code was programmed in C#.


## 3.2. Simulation Results

We run the simulation on a Core i5 1.80 Hz 2 GB personal computer, using the real-world timetable of 2011/11/30, and the simulation period is one day (24 h). In our model, the simulation results will be impacted by the parameters ofσiS and μiS; however, the discussion can be found in [22, 23] and is out of the scope of this paper; the focus of this paper is the simulation modeling; hence we use the parameters in [22, 23]. We assume that the actual operation time between stations and at stations obeys the distribution function shown in Table 3. As the situations of track sections are different from each other, when we set the disturbance impact, each track section is considered separately. This assumption is practical and fits the real-world situation.Table 3
Distribution function parameters.
Distribution
Lower bound (%)
Upper bound (%)
Average ork1
Variance ork2
normal
−22.2
22.8
0.3
3.5
β
−22.5
42.5
4.321
7.064We run the simulation 50 times, and for each simulation, the program runs within 29 seconds, which shows the efficiency of the simulation platform. Besides, to show the simulation results more directly, our platform outputs a graph comparing the planned timetable and actual timetable. In Figure7, we demonstrate the comparison results between 8 : 40 and 10 : 30, and the simulation results for this period are shown in Table 4.Table 4
Simulation results (small-scale case).
Train
Data type
Hengyangdong
Leiyangxi
Chenzhouxi
Lechangdong
Arrival time
Departure time
Arrival time
Departure time
Arrival time
Departure time
Arrival time
Departure time
G1027
plan
8:48:48
8:52:48
9:05:59
9:05:59
9:24:55
9:26:55
9:46:10
9:46:10
simulation
8:49:21
8:53:10
9:05:12
9:05:12
9:26:01
9:27:01
9:46:40
9:46:40
G1029
plan
9:06:48
9:06:48
9:17:59
9:17:59
9:35:55
9:38:55
9:58:10
9:58:10
simulation
9:08:24
9:08:24
9:19:36
9:19:36
9:36:53
9:38:55
10:00:16
10:00:16
G1031
plan
9:14:48
9:16:48
9:29:59
9:29:59
9:48:55
9:50:55
10:10:10
10:10:10
simulation
9:15:14
9:17:15
9:30:50
9:30:50
9:49:36
9:51:10
10:11:50
10:11:50
G1033
plan
9:37:48
9:37:48
9:48:59
9:48:59
10:04:55
10:04:55
10:22:10
10:22:10
simulation
9:38:00
9:38:00
9:49:14
9:49:14
10:05:06
10:05:06
10:22:17
10:22:17
G6011
plan
9:29:02
9:29:02
9:40:13
9:40:13
9:58:09
9:58:09
10:15:24
10:15:24
simulation
9:30:47
9:30:47
9:42:00
9:42:00
9:58:30
9:58:30
10:15:46
10:15:46
D7803
plan
9:02:22
9:08:48
9:26:16
9:31:59
9:55:09
10:06:55
10:29:42
10:29:42
simulation
9:05:07
9:09:44
9:25:26
9:32:56
9:55:30
10:06:55
10:27:59
10:27:59
G6081
plan
---
9:44:00
9:57:11
9:57:11
10:16:07
10:17:07
10:36:22
10:36:22
simulation
9:35:23
9:44:29
9:59:22
9:59:22
10:17:50
10:18:50
10:37:50
10:37:50
D2102
plan
10:34:43
10:42:12
10:15:15
10:17:15
9:42:27
9:52:05
9:19:40
9:19:40
simulation
10:33:47
10:42:54
10:14:07
10:17:22
9:48:11
9:54:52
9:21:38
9:21:38
G1036
plan
9:43:12
9:45:12
9:28:01
9:28:01
9:12:05
9:12:05
8:54:50
8:54:50
simulation
9:42:24
9:45:12
9:30:14
9:30:14
9:12:26
9:12:26
8:55:13
8:55:13
G1038
plan
9:52:12
9:52:12
9:41:01
9:41:01
9:21:05
9:23:05
9:00:50
9:00:50
simulation
9:56:03
9:56:03
9:44:52
9:44:52
9:20:18
9:23:05
9:01:01
9:01:01
G1040
plan
10:13:12
10:13:12
10:02:01
10:02:01
9:46:05
9:46:05
9:28:50
9:28:50
simulation
10:18:49
10:18:49
10:07:36
10:07:36
9:51:42
9:51:42
9:29:45
9:29:45
G1042
plan
10:20:12
10:23:12
10:06:01
10:06:01
9:50:05
9:50:05
9:32:50
9:32:50
simulation
10:20:40
10:23:12
10:09:28
10:09:28
9:53:32
9:53:32
9:34:32
9:34:32
G6008
plan
9:36:12
9:36:12
9:25:01
9:25:01
9:03:05
9:07:05
8:42:50
8:42:50
plan
9:39:31
9:41:12
9:28:25
9:28:25
9:05:17
9:07:05
8:43:31
8:43:31
G6010
simulation
10:01:12
10:03:12
9:47:01
9:47:01
9:31:05
9:31:05
9:13:50
9:13:50
plan
10:02:48
10:04:49
9:48:01
9:48:01
9:32:03
9:32:03
9:14:46
9:14:46
G6080
simulation
9:26:12
---
9:12:01
9:12:01
8:56:05
8:56:05
8:38:50
8:38:50
plan
9:27:18
9:37:19
9:12:54
9:12:54
8:55:11
8:55:11
8:37:23
8:37:23
D7802
simulation
9:32:43
9:38:12
9:09:15
9:15:15
8:37:57
8:46:05
8:15:10
8:15:10
plan
9:32:26
9:38:12
9:09:54
9:15:57
8:37:12
8:46:49
8:13:35
8:13:35Figure 7
Simulation and plan comparison of Hengyangdong to Lechangdong section between 8:40 and 10:30.


## 3.3. Results Analysis

The simulation results of Table4 show that there are delayed trains, trains arriving early, and trains on time. Although some trains arrived earlier than scheduled, no train departed earlier than scheduled. Most trains’ stop patterns are the same as planned, but some trains had an extra stop; for example, G6008 stopped at Hengyangdong. Some trains changed their departure order; for example, D7802 departed earlier than G6008 at Hengyangdong. This proved that our model can simulate real-world train operation better than the model used in [11], in which the trains are operating explicitly according to the planned schedule. This makes our model more efficient for the inspection of the train operation plan.Among all the 22 stops, there are 13 stops where arrival was delayed and 14 stops where departure was delayed, but 7 arrival delays and 11 departure delays were within 1 minute compared to the schedule plan. If we consider those delays that are within 1 minute as being on time, we can obtain the on-time rate of the simulation as 72.73% for arrival and 86.37% for departure. This is a little lower than the actual on-time rate, where the main causes are as follows:(
1
) using the same parameters of the normal function to describe all the track sections of the late train running time deviations and all the stations of the late train in the actual operation of the station when there is deviation from the rule;(
2
) using the same parameters of the β distribution function to describe all the track sections in the early train run-time deviation from the law and all the stations of the early train at the time of the actual operation of the station departure time deviation.It is clear that by correcting the function distribution parameters corresponding to each track section and station so as to fit the deviation of the train running time for the respective track section and the deviation from the actual operation time of the respective station, the running probability of the simulation train can be further approximated to the true level


## 3.4. Large-Scale Examples Using the Wuhan-Guangzhou High-Speed Railway Line

The following large-scale example is the Wuhan to Guangzhou high-speed railway, which includes 18 stations and 17 sections. The length of the simulation line is 1069 km; also two types of train, G trains and D trains, are scheduled. The section numbers are shown in Table5, and the corresponding stations are shown in Table 6. We demonstrate the graph comparing the planned timetable and actual timetable in Figure 8, from which we can see the simulation and plan comparison of a large-scale case.Table 5
Section parameters (large-scale case).
Section
Number
Max number of trains contained
Operation time (m:s)
Minimum headway (m:s)
up
down
G
D
First G, second D
Firest D, second G
First G, second D
First D, second D
Wuhan—Wulongquandong
2
1
7
13:40
14:20
1:40
3:00
1:20
3:00
Wulongquandong—Xianningbei
4
3
4
7:28
9:12
1:40
3:00
1:20
3:00
Xianningbei—Chibibei
6
5
5
8:49
10:35
1:40
3:00
1:20
3:00
Chibibei—Yueyangdong
8
7
6
16:50
20:25
1:40
3:00
1:20
3:00
Yueyangdong—Miluodong
10
9
8
14:22
17:15
1:40
3:00
1:20
3:00
Miluodong—Changshanan
12
11
9
16:53
18:55
1:40
3:00
1:20
3:00
Changshanan—Zhuzhouxi
14
13
6
10:15
11:48
1:40
3:00
1:20
3:00
Zhuzhouxi—Hengshanxi
16
15
7
13:50
16:38
1:40
3:00
1:20
3:00
Hengshanxi—Hengyangdong
18
17
5
8:31
10:17
1:40
3:00
1:20
3:00
Hengyangdong—Leiyangxi
20
19
6
11:11
13:28
1:40
3:00
1:20
3:00
Leiyangxi—Chenzhouxi
22
21
8
15:56
19:10
1:40
3:00
1:20
3:00
Chenzhouxi—Lechangdong
24
23
9
17:15
20:47
1:40
3:00
1:20
3:00
Lechangdong—Shaoguan
26
25
5
9:02
10:52
1:40
3:00
1:20
3:00
Shaoguan—Yingdexi
28
27
8
13:50
17:18
1:40
3:00
1:20
3:00
Yingdexi—Qingyuan
30
29
6
11:32
13:50
1:40
3:00
1:20
3:00
Qingyuan—Guangzhoubei
32
31
4
7:30
9:00
1:40
3:00
1:20
3:00
Guangzhoubei—Guangzhounan
34
33
7
13:20
14:10
1:40
3:00
1:20
3:00Table 6
Station parameters (large-scale case).
Station
Number
Number of platforms
Arrival headway (m)
Departure headway (s)
Dwell time (s)
Wuhan
1
20
2.5
1
180
Wulongquandong
2
4
2.5
1
60
Xianningbei
3
6
2.5
1
60
Chibibei
4
4
2.5
1
60
Yueyangdong
5
7
2.5
1
120
Miluodong
6
4
2.5
1
60
Changshanan
7
26
2.5
1
120
Zhuzhouxi
8
7
2.5
1
60
Hengshanxi
9
4
2.5
1
60
Hengyangdong
10
11
2.5
1
120
Leiyangxi
11
4
2.5
1
60
Chenzhouxi
12
6
2.5
1
60
Lechangdong
13
4
2.5
1
60
Shaoguan
14
6
2.5
1
40
Yingdexi
15
4
2.5
1
60
Qingyuan
16
4
2.5
1
60
Guangzhoubei
17
4
2.5
1
60
Guangzhounan
18
28
2.5
1
180Figure 8
Simulation and plan comparison of Wuhan to Guangzhounan line.The simulation results show that(1) during 50 simulations, all 205 trains are scheduled; (2) the maximum simulation travel speed is 256.194 km/h and the minimum simulation travel speed is 255.193 km/h, so, compared with the planned travel speed of 255.723 km/h, the difference is rather small; (3) the utilization of station capacity is 75%; (4) all the various headway times are obeyed, which means that each train can operate safely; (5) in all the late arrived stations, the shortest dwell time is 98.33% of the planned total stop time because, for some delayed trains, the simulation stop time can be less than the planned time.From the results, we can conclude that the model we proposed can simulate well the operation of trains, and the results can be used to inspect the train operation plan and evaluate the robustness of the operation plan. This can be seen from the travel speed deviation of the simulation result, because in our model, the real-world disturbance is considered, so each time we run the simulation, the travel speed of train may be different. Therefore, we run the simulation for 50 times, and the travel speed of trains varies from 256.194 km/h to 255.193 km/h; we would like to mention that parameters of disturbance will affect the simulation result, and the set of parameters should consider the real-world line case. However, the parameter value is out of the scope of this paper and should be studied further more.


## 4. Conclusions

In this paper, we modeled the train operation using a Colored-Timed Petri Net, and the model was verified using a real-world timetable. The results showed that our model can obtain near-real results in a short computing time; it can also be used to evaluate the robustness of train operation plan.



---

*Source: 9202986-2018-02-01.xml*