2nd IFAC Symposium on Telematics Applications Politehnica University, Timisoara, Romania October 5-8, 2010
Train Traffic Control Based on Distributed Resource Allocation T. S. Letia, A. Astilean, R. Miron, M.M. Santa Dept. of Automation Technical University of Cluj-Napoca, Daicoviciu St., 15, 40020, Cluj-Napoca, Romania ;e-mail:
[email protected];
[email protected];
[email protected];
[email protected] Abstract: The railway traffic is characterized as a large and dynamic system with uncertain properties related to resource loading, train arrivals and failures. Despite these uncertainties, the control system is expected to guarantee that all the trains behave according to their timelines. The current approach solves the railway traffic control problem using the resource allocation. The trains are considered tasks with specified temporal behaviors that have to fulfill their deadlines. The solutions based on open loop, closed loop with independent, coordinated and heterarchical controllers are defined and compared. The control signals are implemented and verified using time Petri nets. Some algorithms for control system implementation are given. The method evaluations are performed using the meter functions: utility, utilization, reservation and efficiency. The results obtained through simulations show that the proposed distributed controllers solve adequately the control problems and can be used for large scale implementation. Keywords: railway traffic control, resource allocation, scheduling, real-time control, distributed control, Petri nets, train specification. line is signalized by detectors. The railway network is composed of a set of linked resources (lines, platforms etc.). The state of a resource can be reserved or released.
1. INTRODUCTION The railway traffic control system is a dynamic one that operates in an environment with uncertain properties that include transient resource overloads, arbitrary arrivals, arbitrary failures and decreases of traffic parameters. Unlike classical real-time control applications that usually concern only the response times to meet the deadlines, railway traffic involves the reasoning about end-to-end timelines and the reaction to events such that the global traffic system fulfills the time requirements. Despite many uncertainties, the control system is expected to guarantee that all the trains behave according to timelines. The current paper solves the Railway Traffic Control (RTC) problem using the resource allocation. The railway resources are lines, switches and platforms. They can be allocated synchronously (in a specified period of time) or asynchronously (until the occurrence of an event of release). From another point of view, the allocation can be performed off-line, before a train starts, or on-line, during the system evolution when a train reaches some points. The main control problems of train traffic are analyzed, developed and modeled, starting with a complete but ideal set of requirements.Then, more complex situations are progressively introduced, offering solutions for many sets of characteristics.
Fig. 1. Example of railway structure The term Task is introduced to define the control problem. It consists of the moves of a train from a given platform (line) of a railway station, to a specified platform (line) of another railway station. An example of a synthetic description of such a task is given in Table 1. Table 1. Train table
Figure 1 presents a part of a railway network with the following specified elements: traffic lights, denoted by s1,…,s8; switch points; detectors, represented by squares; interlockings (an aggregate of switches), denoted by I0, …, I3; platforms, denoted by P1, …, P8; lines, denoted by L1 and L2; trains, denoted by T1, …, T4. The presence of trains on the 978-3-902661-84-5/10/$20.00 © 2010 IFAC
Train T1 T2 T3 T4 1
Departure Place Time S_A.P1 0 S_A.P4 6 S_B.P5 5 S_B.P8 9
Arrival Place Time S_B.P7 15 S_B.P5 25 S_A.P4 22 S_A.P1 36
10.3182/20101005-4-RO-2018.00002
TA 2010 Timisoara, Romania, Oct 5-8, 2010
A train control problem consists of a set of tasks which have to be controlled (acting on traffic lights and switches) such that all the trains fulfill the departure and arrival times.
2. STATE OF THE ART The basic principles of railway traffic control are given in Pachl, J. (2004). These include the interlocking usage, resource management and the partitioning of the railway network into different subsystems. The train deviations from the scheduled timetable should be removed during the operation (Tornquist, J. et al., 2005).
A train specification refers to the shortest duration needed by a train to cross a resource. For the given example, the train specifications are presented in a tabular form in Table 2. Table 2. Resource occupation Train T1 T2 T3 T4
P1 1 1 1 1
P2 1 1 1 1
Resource occupation P8 I0 I1 L1 1 1 1 10 1 1 1 11 1 1 1 12 1 1 1 13
… … … … …
L2 10 11 12 13
I2 1 1 1 1
New trends of train traffic control and management started since 1997 (Shoji, S. et al., 1997). An autonomous decentralized train control and management system is proposed to attain both the real-time properties for train control, such as the real-time traffic and non-real-time properties for train management. Train scheduling implementations can be:
I3 1 1 1 1
- off-line scheduling when all the train arrival times and departure times are calculated before the train starts. No unexpected event happens and no new train can appear.
E.g. from Table 2, specifications of train T1 for P1 is: P1[1]. Here, [r] specifies the duration r [min.] of the resource utilization. It is a relative time.
- on-line scheduling when the scheduling is performed during the train traffic operation. Some trains have variable delays, unexpected events happen, and new train scheduling requests are demanded and accepted during the operation.
Potential train schedule solutions consist of sets of specifications for different potential routes (sequentially occupied resources).” For the given example, the train T1 schedule can be written as:
Some train scheduling approaches are based on:
σ[T1] = P1[1]·I0[1]·( L1[10]·I2[1]+ I1[1]·L2[10])·I3[1]· P7[1]
- distributed artificial intelligence (trackside intelligent controllers, Tao, T., 2003). This kind of allocation of function can optimize the use of resources, reduce complexity and enhance the reliability and availability of the traffic system;
Operator “.” is used to express the sequentiality and “+” expresses the alternative (the possibility to choose another sequence of resources in order to reach the same destination). When the train start time is given, i.e., the schedule solution can be presented in the following form using the absolute times:
- heuristic methods (as genetic algorithms, Higgins, A. et al., 1997) or ant colony systems (Ghoseri, K. et al., 2006). The NP-hard problem complexity with respect to the number of conflicts in the schedule is avoided by generating random solutions and guiding the search;
σ(T1) = start(0)·P1(0;1)·I0(1;2)·L1(2;12)·I2(12;13)·I3(13;14)· P7(14;15) + start(0)·P1(0;1)·I0(1;2)·I1(2;3)·L2(3;13)·I3(13;14)· P7(14;15)
- auction (Parkes, D.C. et al., 2000) when each train is represented by an agent that bids for right to travel through a network from departure to arrival;
The sequence of a path contains the elements Rj(e;l) where Rj is the needed resource, e is the earliest time when the resource is required and l is the latest time when the resource is reserved. This is presented using a state machine, Figure 2. [1]
[1]
[10]
[1]
P1
I0
L1
I2
STOP
S tart
I1
L2
I3
P8
[1]
[10]
[1]
[1]
- interactive scheduling (Lova, A. et al., 2007) designated to interactive applications is used to assist planners in adding new trains on a complex railway network. An improvement can be obtained using the GPS (Global Positioning System) and wireless communication between train engine and local control centre proposed by Zimmermann, A. et al. (2003). Some distributed signal control systems based on the internet technology are also used (Fukuta, Y. et al., 2007).
Fig. 2. State machine corresponding to train T1
Li, K. et al. (2007) propose cellular automata based method to analyze the space-time diagram of railway traffic flow. Formal development and verification of a distributed railway control system are performed applying a series of refinement and verification steps (Hauxthausen, A. et al., 2000). The distributed train scheduling problem has some similarities with distributed software job scheduling (Fahmy, S. F. et al. 2008a and 2008b). Both have to fulfil real-time constraints relative to finishing time, communication requests and resource management.
Let pathList(T1) be the list of the paths of the train T1 (listed in the preferred order) that can fulfill the requirements. Control signals modify the state of switches and traffic lights. E.g.: signal(I0(P1,L1)) requires to establish a connection between P1 and L1. A train schedule solution specifies the used resources, the occupancy order and the time spent by the train on each resource. The trains schedule can be marked in a resource reservation table.
2
TA 2010 Timisoara, Romania, Oct 5-8, 2010
Considering some general basic principles of the future train control systems and particularly special characteristics of ETCS (European Train Control Systems) based on mobile communication, Zimmermann, A. and Hommel, G. present a simplified model of communication failure and recover behaviour as well as safety-critical data exchange. Following the tendency to increase track utilization and train safety by using the opportunities offered by a preferment mobile communication based control system, Tianhua, X. et al. (2007) present a related data communication system model. The influences of communication collision and message length on the transfer delay were evaluated. To meet some particular system characteristics of the low-densities lines, Tao, T. (2003) proposes a train control system, based on satellite location and intelligent autonomous decentralized systems technologies. The development is focused on the improving of train traffic punctuality and the increasing utilization of the railway infrastructure and less on the working in a preventive manner. Kauppi, A. et al. (2006) propose, in this context, a high-level control strategy and a prototype tool to evaluate the control performances.
associated to the transitions of the controller, determining the timed commands sequence, are in accordance with the time intervals for which the resources are occupied. The controller implements the train schedule.
Oriented to analyse temporal trains behaviour and on the adjustment of train operation plan, Yangdong, Y. et al. (2005) define a fuzzy time Petri net to describe temporal uncertainty of train group operation. They introduce four fuzzy set theoretic functions of time for the corresponding representation.
Fig. 3. Train schedules
3. OPEN LOOP CONTROL Although the open loop control approach does not completely correspond to a real situation, it is suitable to describe and solve some of the most important control aspects. Two neighbour railway stations are considered, Figure 1. A comprehensive diagram of the resources allocation is presented in Figure 3. On the vertical axis and on the horizontal axis are represented the time and the sequentially occupied resources for different tasks, respectively.
Fig. 4. RTC System Architecture - open loop
The open loop control structure is presented in Figure 4. The RTC system has a schedule for each train and applies the control signals to implement the solutions. A part of the behaviour of the controller and the train T1 in Station A is presented in Figure 5 using a Petri Net based model of the system. The marking evolution of the upper Petri Net subsystem corresponds to the states evolution of the controller, which supervises the train movements. In this example, only the movement of train T1 is modelled by the lower place-transition row. Some transitions have associated fixed time values, corresponding to the shortest durations of the real activities, while other transitions (represented by dark rectangles) fire instantaneously (e.g. start transitions, send control signals etc.). The following interpretation is associated to the Petri nets nodes: P4 - initial state of the train (the train waits for the signal); P0 - initial state of C-A controller; T0 controller signals the traffic light s1 ON; T2 - Train T1 begins to move on P1; T1 - controller signals I0 to connect P1 with L1; T6 - controller waits 2 min to signal the traffic lights s5 ON; T4 - Train T1 begins the crossing of I0; T7 - the train begins the movement on L1; T8 - the train moves along L1. The behaviour of the process and the corresponding model are similar for the others trains. It can be noticed that the delays
Fig. 5. Time Petri Net of RTC Open loop. 4. CLOSED LOOP CONTROL WITH INDEPENDENT CONTROLLERS The independent controllers can be used when the trains do not have significant delays. Although some important control aspects were taken into account in the previous approach, an open loop based control does not represent a realistic solution. Even when a schedule is rigorously implemented, some variations of the time intervals (described in the train specifications) occur, such that a closed loop control scheme (Figure 6) is necessary. Each railway route element has associated a min-max interval. Also, each resource has associated a detector that signals the presence or the movement of trains in the corresponding zone. Immediately after a train finishes the crossing of an element, the detector sends a signal to the controller. The releasing of the resources being signalised in time, the controller can better manage their utilisation. An extension of the time Petri nets given in Figure
3
TA 2010 Timisoara, Romania, Oct 5-8, 2010
5 with the release events was constructed for the closed-loop control.
train agent has a list of paths (PathList) from the departure platforms of the train (task) to the accessible critical resources that can be used to fulfill the requirements. This path is firmly reserved only when the coordinator grants the reservation of the critical resource. When a request from a train agent arrives, the coordinator grants or refuses the requirements immediately. This avoids the blocking of the train agent on a particular path reservation. For the given example, a train Ti, currently stopped on a platform of a station A, gets a path to a critical resource (L1 or L2) from Agent_i and from the critical resource to the destination resource (a platform of the station B) by a complementary agent ~Agent_i installed on a computer in station B. Some algorithms to solve the distributed scheduling problem are used:
Fig. 6. RTC system architecture - closed loop The functioning of such a system is efficient as long as the controller is able to correct the time deviation, but cannot be applied in situations when long delays occur and a reallocation of resources is imperatively needed. In this case, the decision process is divided among many decision entities, connected in more complex control structures as follows.
Coordinator algorithm: 1: initialize: the critical resource states as not reserved; 2: while(true) 3: receive a message from a train agent or controller 4: if the message is request(resource, train) 5: if the resource is released 6: answer true; 7: mark the resource reserved; 9: else answer false; 10: if the message is release(resource, train) 11: mark the resource released; 12: notify the complementary train agent (~Agent_i) about the crossing event; 13: end while;
5. COORDINATED CONTROLLERS When the trains have significant delays the previous methods are not convenient due to the large amount of time required to reserve the resources. The coordinated control system structure is given in Figure 7.
Fig. 7. RTC system architecture – coordinated control Agent_Train_i algorithm: The resources on the frontier are considered critical resources. They are associated to the critical sections of the tasks. A critical section is an element or a sequence of elements of the path crossing the frontier, where if two trains enter, they cannot avoid the deadlock or the collision. L1 and L2 are the critical resources for the given example. The coordinator manages the access to the critical resources. The task diagram of this method is presented in Figure 8. A local control subsystem is composed of a controller, a number of train agents, a Resource Table and a Train Schedule Table. Each train has assigned a corresponding train agent. The controller assigned to each station has the task to implement the train schedules received from train agents. For this purpose, the controller signals the traffic lights and the interlockings. It handles signals received from detectors to advance its execution and to release the reserved resources.
1: input: PathList, trainSpecification; 2: initialization: mark the train not scheduled; 3: output: train schedule; 4: wait(start); 5: while (train is not scheduled) 6: do 7: choose a path from the PathList and try to reserve it; 8: if reservation is obtained request(critical resource, train); 9: receive(answer); 10: if (answer is true) mark the train scheduled; 11: else cancel the reservation; 12: while train is not scheduled or not all the paths from the PathList were used; 13: if (train is scheduled) 14: load the train schedule on the Train Schedule Table; 15: else wait a period and try a new reservation; 16: end while; A complementary agent executes a similar algorithm with the difference that the train paths are from a critical resource to a platform. 6. HETERARCHICAL CONTROLLERS The heterarchical controllers implement a kind of cooperative control. When the trains have significant delays the following proposed control method involves the direct cooperation among the distributed control components. The architecture for the implementation of this method is given in Figure 9.
Figure 8. Task diagram of the coordination method The train agent uses the train specification, the resource table and the coordinator service to get a path that leads the train from the departure platform to a frontier critical resource. The 4
TA 2010 Timisoara, Romania, Oct 5-8, 2010
Reservation: the ratio between the sum of the demanded reservation durations of all train resources occupancy and the scheduled period K multiplied by m:
Controller C _B
Controller C_A
n
i ,k
reservatio n =
Fig. 9. RTC system architecture – heterarchical control
n
efficiency
[l ]
R i,k [t ]
k =1 i =1 n m
R i ,k [ d ]
The best performances were obtained using the on-line scheduling method. Although the resource reservation durations are almost the same in the case of the on-line and off-line scheduling algorithms, the first algorithm cancels the excess resources reservations and that improves the number of missed deadlines. Figure 11 presents the efficiency measures for the two scheduling algorithms. Each train has specified a laxity time Xi (=10 minutes) and a deadline Di to arrive at destination. Let Tσ_i be the longest time the train Ti can arrive at destination if it is not delayed by other trains. The mentioned task parameters fulfil the relation:
Ttravel ≤ Di = Tσ_i + Xi,
A train Ti is correctly scheduled and controlled if it arrives at destination before the deadline Di (i. e. Tσ_i extended with the laxity time Xi). For the given example, Figure 12 presents the number of trains missing the deadlines relative to the train speed variations (∂vi) due to the environment conditions.
(1)
where Ri,k[l] is the longest duration of the reservation of the resource Ri for a train Tk (i. e. l) and n is the number of scheduled trains; Utilization: the ratio between the sum of the effective durations of all train resource occupancy (when each of them could be delayed by other trains) and the scheduled period K multiplied by m: n
m i ,k
utilizatio n =
k =1 i =1
m⋅K
(5)
where Ttravel is the duration of train traveling time.
m⋅K
∑∑ R
(4)
The method evaluations were performed for the cases when the trains have variations of their start time ∂si and variations of the resource Ri utilization (given by their variable speed) denoted by ∂vi. The tests were performed for ∂si = ∂vi for all the trains. A random function generates variable delays between 0 and ∂si. The results are presented in Figure 10. The on-line method obtains the best performances while the offline method the worst.
m i ,k
=
k =1 i =1
Utility: the ratio between the sum of the necessary durations of all trains resources occupancy when each of them is the only train in the railway network and the scheduled period K multiplied by the number of resources m:
k =1 i =1
(3)
m
∑∑
The trains (tasks) are considered to be executed periodically (with a test period K of 50 minutes). The simulations show that the trains do not collide and do not enter in deadlocks. The scheduling algorithm performances can be evaluated using the following measure functions:
∑∑R
m⋅K
∑∑
7. TESTS AND VERIFICATIONS
utility =
[d ]
k =1 i =1
Efficiency: the ratio between the sum of all resources utilization durations for all the trains and the sum of all resources reservation demands for all trains
The method using heterarchical controllers does not include coordinators as can be seen in Figure 9. The distributed control system contains only local controllers and train agents. The train agent is responsible to get a reserved path from a platform to a critical resource situated on the frontier. It performs the reservation using the local resource table. The train agent requests the complementary train agent (from the neighbor station) to accept the train on the critical resource during a specified period of time [e, l] (where e is the earliest time and l is the latest time when the train arrives at the critical resource). The complementary agent tries to reserve the resource on the resource table. If the reservation succeeds, the complementary agent answers true. Otherwise it answers false. If the answer is true, the train agent loads the schedule on the Train Schedule Table. When the answer is false, the train agent cancels the reservation and tries the reservation of another path. When the train arrives at the critical resource, the corresponding detector signals that, the train agent handles the signal (via local controller) and notifies the complementary agent about the crossing event.
n
m
∑∑ R
Railway Traffic Network (traffic lights, switches or points, trains etc.)
[t ]
(2) Fig. 10. Performances of the on-line scheduling algorithm
where Ri,k[t] represents the effective time duration of resource Ri occupation by the Tk train; 5
TA 2010 Timisoara, Romania, Oct 5-8, 2010
Ghoseri, K. and Merscedsolouk, F., (2006). ACT-Ts: Train scheduling using ant colony system, Journal of Applied Mathematics and Decision Science, pp. 1-28. Goverde, R.M.P., (2006). A delay propagation algorithm for large-scale scheduled rail traffic,” Preprints of 11th IFAC Symposium on Control in Transportation Systems, Delft, Netherlands, 2006, pp. 169-175. Hauxthausen, A. and Peleska, J., (2000). Formal development and verification of a distributed railway control system, IEEE Trans. on Software Engineering, volume: 26, pp.687-701. Higgins, A. and Kozan, E., (1997). Heuristics techniques for single line train scheduling, Journal of Heuristics, 3, Kluwer Academic Publishers, pp. 43-62. Kauppi, A. Ć., Wikström, J., Sandblad, Ć. B. and Andersson, A. W., (2006). Future train traffic control: control by replanning, Cogn. Tech. Work, volume: 8, pp. 50–56. Li, K., Gao, ZiYou, Yang LiXing, (2007). Modeling and simulation for train control system using cellular automata, China Ser E-Tech Sci., volume: 50, no. 6, pp. 765-773. Lova, A.,Tormas, P., and Other, (2007). Intelligent train scheduling on high-loaded railway network, Algorithmic Methods for Railway Optimization, Springer, Berlin, volume: 4359, pp. 219-232. Pachl, J.,(2004). Railway Operation and Control, VTD Rail Publishing, Mountlake Terrace WA 98043 USA. Parkes, D.C., and Ungar, L.H., (2000). An auction-based method for decentralized train scheduling, Proceedings of the Fifth International Conference on Autonomous Agents, Montreal, Canada, pp. 43-50. Shoji, S., Igarashi, A. (1997). New trends of train control and management systems with real-time and non-real-time properties, Proceedings of the 3rd International Symposium on Autonomous Decentralized Systems (ISADS’97), pp. 319-326. Tao, T. (2003). A train control system for low-density lines based on intelligent autonomous decentralized system (IADS), Proceedings of the Sixth International Symposium on Autonomous Decentralized Systems (ISADS’03), pp. 203-207. Tianhua Xu Tao Tang, (2007). The modelling and analysis of data communication system (DCS) in Communication Based Train Control (CBTC) with Colored Petri Nets, Eighth International Symposium on Autonomous Decentralized Systems 2007 (ISADS'07), pp. 83-87. Tornquist, J. and Persson, J.A., (2005). Train traffic deviation handling using tabu search and simulated annealing, Proceeding of the 38th Annual Hawaii International Conference on System Science, pp. 73a. Zimmermann, A. and Hommel, G., (2003). A train control system case study in model-based real-time system design, Proceedings of the International Parallel and Distributed Processing Symposium (IPDPS’03), Nice, France, pp. 118b. Yangdong, Y., Wang, J. and Limin Jia, L., (2005). Analysis of temporal uncertainty of trains converging based on Fuzzy Time Petri Nets , L. Wang and Y. Jin (Eds.): FSKD 2005, LNAI 3613, Springer-Verlag Berlin Heidelberg, pp. 89 – 99.
Fig. 11. The resource allocation efficiency
Fig. 12. The arrival missed deadlines 8. CONCLUSIONS The open loop controllers could be successfully used for the case when train speed variations due to environment conditions are ignorable. In this case, the resource reservations can be performed off-line. For the case when the environment involves larger speed variations, the closed loop with the release of resources signaling as soon as the trains leave them can lead to better performances only when the scheduling is performed on-line. The heterarchical scheduling method has a reduced search space of the solution as compared to the coordinated scheduling method, but their allocation performances are similar. The on-line scheduling methods obtain better performances for timelines fulfilling as compared to the off-line scheduling methods. The proposed algorithm solves the deadlock avoidance problem by the complete allocation of the train paths between the platforms of two neighbor stations. The message transmission durations between two actors can be neglected taking into account the system dynamics. Consequently, the update of the system state can be performed without significant delays. REFERENCES Fahmy, S.F., Ravindran, B., and Jensen, E.D., (2008a). On collaborative scheduling of distributable real-time threads in dynamic, Networked Embedded Systems, Proceedings of the 11th IEEE Symposium on Object Oriented RealTime Distributed Computing (ISORC), pp. 485-491. Fahmy, S.F., Ravindran, B., and Jensen, E.D., (2008b). Scheduling distributable real-time threads in the presence of crash failures and message losses, ACM SAC, Track on Real-Time Systems, pp. 294-301. Fukuta, Y., G. Kogure, G., and other, (2007). Novel railway signal control system based on the internet technology and its distributed control architecture, Proceedings of the Eighth International Symposium on Autonomous Decentralized Systems (ISADS'07), pp. 77-82.
6