A High-Speed Train Operation Plan Inspection Simulation Model

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.Themodel 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-worldWuhan toGuangzhou high-speed line.The results showed that the proposedmodel 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.


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][5][6][7][8][9][10][11][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 energysaving 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: Section 1 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.

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][20][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.

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 TOKEN   = {  ,  J  ,   .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,  R  can be used to record the arrival time of train  at station  in the simulation when it leaves the shunting yard, while  R  can be used to record the departure time of train  at station  in the simulation.

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.

Train Place.
During the simulation period, we need to inquire the train information continuously.As a public resource, we use a virtual place  V = {  ,  S  } to store and manage the train data.In this place, in which  S  is the departure time of train  at station , its purpose is to improve the simulation efficiency.

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 place  S  = {   ,    } to represent station , in which    is the finish time of train  at station  and    is the next train that departs on track section  at station .

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 place  X  = { X  , V − } to represent track section , in which  X  is the estimated arrival time of the end of sector for train  that is operating on track section  and V − is the last train leaving in track section .

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  X = { + ,  − ,  X  ,  R  ,  Z  ,  R  ,  R  } to store and manage these parameters.Here,  + means the station from which a train departs to track section ;  − means the station the train arrives at from track section ;  X  means the maximum trains that can be contained on track section ;  R  means the operating time standard of track section ;  Z  means the minimum headway time of track section ;  R  means that a train arrives at track section  on time, where the actual offset of the train operating obeys the  function distribution;  R  means that a train arrives at track section  later than schedule, where the actual offset of the train operating obeys the normal function.By introducing  R  and  R  , 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  means that a train operation at station  is later than scheduled, where the actual offset of the train operating obeys the normal function.

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.

Train Arrival Transition.
When train  operating on track section  arrives at station , it will occupy the arrival and departure track to complete certain operations (e.g., passenger loading and alighting), and for station  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 , so the supervision of  will end, but because of the station headway time, this train could affect other trains that are operating on , so we use K to represent the trains that are entering the station and transition  D  to simulate this behavior; then the train arrival can be described as Figure 1 shows.
In Figure 1,  is an overall timer which sends a simulated time ; the dashed dotted line means the spread direction of time signal ; 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  D  has happened;  D  ,  D  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  D  has happened, but  D  will not be triggered by any relevant data of the place; the directed arcW + means the data accepted from the relevant place when  D  has happened; the directed arc W − means the data transferred to the relevant place when  D  has happened; Ω X  means the set of trains that are operating on track section ; besides, the rule of value  K  and the unannounced directed arc function are In the equation, ( S  ) and N( S  ) are predefined functions that return a  function distribution value that satisfies parameter  S  and a normal function random value  S  ;  X  is the adjustment value of  X  , assuming that  − represents the train following train ,  + represents the train previous to train , and the value of  X  is set as Because train  can be accepted by station  only when it is approaching station  and when station  has prepared an arrival and departure track for it, we use |Ω X  | to represent the number of trains on track section , |Ω W  | represents the number of trains at station , and the trigger condition of Mathematical Problems in Engineering 5

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 use K to represent the EMU leaving the shunting yard, then this behavior can be described by the transition  S  as shown in Figure 2.
In Figure 2,  S means the initial time of the simulation and the value of  R K is We assume that the EMU will leave the shunting yard only before its loading time at station ; therefore, if |Ω S  | means the number of trains that are planned to depart from station , the trigger rule of  S  is set as follows: Notice that because the simulation includes sector selection reasons or time setting reasons, some trains will start the simulation from station ; in this case, we consider those trains to depart from station .

Train Departure Transition.
When train  departs from station  to track section , the corresponding arrival and departure track in station  will be released, and station  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,  will supervise the operation situation of train  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  F  , as shown as Figure 3.
Here, the dashed nondirection arc means that  F  is triggered by corresponding data in the relevant place; the dashed one-direction arc means  F  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  R K needs to consider the simulation situation.Other functions are where V + means the last train that runs to track section , which can be determined by comparing all the  X  ; for the newly added  X K , we assume that  R = + R  ,  Z =  X V + + Z  , which can be determined by the following rules: Only after train K finishes the operation at station  and gets permission to depart, can it depart from that station.Therefore, the trigger situation of  F  can be expressed as

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 use K to represent the trains entering the shunting yard at station, then this behavior can be described by the transition  Z  as shown in Figure 4.
Only after the passengers have alighted from train  at station , the corresponding EMU that runs this train can transit into K and enter the shunting yard.Assuming that Ω F  is the train set at station  departing to track section, the trigger of  Z  is For a train that leaves the simulation area from station , we simply consider that station  is its destination.

Departure Order Transition.
At any time, there will be only one train from station  departing to track section.Therefore, if there is more than one train due to departure to track section , station  needs to decide the departure order of these trains to track section.This can be described using transition  P  as shown in Figure 5.In the figure, the value of the added    can be determined by the dispatching strategy of the simulation section.
Because the departure order will send only the existing departing trains to track section  but the earliest train has not been decided, we set the trigger condition of  P  as

Simulation Time
Step Setting.The overall timer  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 Δ to 1 second in order to get a good simulation result.

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  S  will affect the accuracy of the simulation, so, to consider the randomness of train operation at the initial phase, we set  S  as In the formula,  will return a random value that obeys the  function distribution.The parameter can be set according to the trains.

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. Create  S  for every station  in the simulation line.
Step 2. Create  X  for every simulation track section .
Step 3. Create  V ,  S ,  X , and a global timer, .
Step 4. For every track section  and the next station linked , create  D  , build the relation with  V ,  S ,  X according to the definition of  D  , and build the relation with  as well.
Step 5.For every  S  , create  S  and build the relation with  V ,  S , and  according to the definition of  S  .
Step 6.For every track section  and the previous station , create  F  , and build the relation with  V ,  S ,  X , and  according to the definition of  F  .
Step 7. Create  Z  for each  S  and build the relation with  V ,  X , and  according to the definition of  Z  .
Step 8.For each track section  and the previous station , create  P  , and build the relation with  V ,  X according to the definition of  P  .
Step 9. Select the trains that are in the simulation range but still have not arrive their destinations; for each train  create a   , and put all the   into  V .
Step 10.Initialize the parameters in  X according to section situations, and then initialize parameters in  S according to the station situations.
Step 11.Create    for each train TOKEN   in  V according to the rules defined in (11), and then put it into  V .
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.

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 Figure 6, where the section numbers are shown in Table 1, and the corresponding stations are shown in Table 2.
We built the simulation platform based on .NET and the code was programmed in C#.

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  S  and  S  ; 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.
We 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 Figure 7, we demonstrate the comparison results between 8 : 40 and 10 : 30, and the simulation results for this period are shown in Table 4.

Results
Analysis.The simulation results of Table 4 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 ontime 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 Table 5, and the corresponding stations are shown in Table 6.We demonstrate the graph comparing the planned timetable and 3:00    actual timetable in Figure 8, from which we can see the simulation and plan comparison of a large-scale case.
The simulation results show that (1) during 50 simulations, all 205 trains are scheduled; (2) the maximum simulation travel speed is 256.194km/h and the minimum simulation travel speed is 255.193km/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.

Figure 2 :
Figure 2: Transition when EMU leaves the shunting yard.

Table 1 :Hengyangdong
Section parameters (small-scale case).second G First D, second G First G, second D First D, second D

Table 5 :
Section parameters (large-scale case).second D Firest D, second G First G, second D First D, second D

Figure 8 :
Figure 8: Simulation and plan comparison of Wuhan to Guangzhounan line.
S  ,  S  } to represent and manage these data.Here,  S  is the maximum number of trains contained at station ;  D  is the arrival headway time at station ;  F  is the departure headway time at station ;  W  is the operation standard at station ;  S  means that a train operation at station  is on time, where the actual offset of the train operating obeys the  function distribution;  S