0% found this document useful (0 votes)
15 views

An Efficient Train Scheduling Algorithm On A Single-Track Railway System

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views

An Efficient Train Scheduling Algorithm On A Single-Track Railway System

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

J Sched

https://doi.org/10.1007/s10951-018-0558-0

An efficient train scheduling algorithm on a single-track railway


system
Xiaoming Xu1,2 · Keping Li2 · Lixing Yang2 · Ziyou Gao2

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Abstract Since scheduling trains on a single-track railway 1 Introduction


line is an NP-hard problem, this paper proposes an efficient
heuristic algorithm based on a train movement simulation 1.1 Motivation and proposed approach
method to search for the near-optimal train timetables within
the acceptable computational time. Specifically, the time– Although the road and air aviation transports have shown
space statuses of trains in the railway system are firstly tremendous growth in recent years, from an economic stand-
divided into three categories, including dwelling at a station, point, both of them are inferior to railway transport sector
waiting at a station and traveling on a segment. A check due to railway’s low energy consumption and large capacity
algorithm is particularly proposed to guarantee the feasi- (Wang et al. 2014), especially for the passenger transporta-
bility of transition among different statuses in which each tion industry. However, owing to the high investment and
status transition is defined as a discrete event. Several detailed complex physical geography (e.g., maintain area, frigid
operation rules are also developed to clarify the scheduling zone), railway construction may be limited by either geo-
procedure in some special cases. We then design an itera- graphical conditions or capital budgets, resulting in a lot
tive discrete event simulation-based train scheduling method, of two-way single-track railways, such as Qinghai–Tibet
namely, train status transition approach (TSTA), in which railway in China. To make the single-track railways work
the status transition check algorithm and operation rules are efficiently, railway companies and researchers paid much
incorporated. Finally, we implement some extensive exper- attention to the methodologies of train scheduling problem
iments by using randomly generated data set to show the (TSCP) in recent decades. In particular, two challenges usu-
effectiveness and efficiency of the proposed TSTA. ally need to be considered for solving this type of problem.
One is how to efficiently dispatch trains in the same direc-
Keywords Train scheduling · Single-track railway · Train tion with different speeds or grades (denoted by Problem 1,
status transition · Discrete event model P1); the other is how to schedule trains traveling in different
directions (denoted by Problem 2, P2).
Caprara et al. (2002) proved that any Max Independent
Set Problem (MISP, an NP-Hard problem, see Garey and
Johnson (1979) can be polynomially transformed into a
train timetabling problem (TTP) (similar to P1). Cai and
B Lixing Yang Goh (1994) also shown that a special case of P2 on single-
[email protected]
track railway line is at least as hard as the integer knapsack
Xiaoming Xu problem which is known to be an NP-complete problem
[email protected]
(see Garey and Johnson 1979). To deal with the realistic
1 School of Automotive and Transportation Engineering, Hefei large-scale TSCP, a variety of optimization techniques have
University of Technology, Hefei 230009, China been proposed by many researchers in the literature, such as
2 State Key Laboratory of Rail Traffic Control and Safety, branch-and-bound (Zhou and Zhong 2007; D’Ariano et al.
Beijing Jiaotong University, Beijing 100044, China 2007), Lagrangian relaxation (Cacchiani et al. 2010; Caprara

123
J Sched

et al. 2002), genetic algorithm (Xu et al. 2016; Yang et al. 1.2 Literature review
2012), and commercial optimization software (e.g., GAMS
in Yang et al. 2013, 2014). However, even with the exist- The aim of TSCP is to determine the arrival/departure time
ing optimization methods and sophisticated computational for trains at/from each station with the challenge of deal-
tools, it still takes much time to search for feasible solu- ing with a set of operational and safety requirements, such
tions without guaranteed optimality in the large-scale train as occupance constraints of railways resource and headway
scheduling process on single-track rail lines. Besides, as a constraints (Lusby et al. 2011). Cordeau et al. (1998), Lusby
complex system, railway transportation might be affected et al. (2011), Cacchiani and Toth (2012), Cacchiani et al.
by complex compound delays and ripple effects from con- (2014) and Fang et al. (2015) reviewed many key modeling
flicts at junctions and stations, leading to the difficulties of aspects of different versions of TSCP. In what follows some
formulating analytical models (see Dessouky and Leachman works closely related to TSCP on the single-track railway
1995). With this concern, many researchers turn to using will be reviewed briefly.
simulation approaches (e.g., Dessouky and Leachman 1995; In conventional studies, the TSCP is commonly formu-
Dorfman and Medanic 2004; Li et al. 2014) to schedule trains, lated by mathematical models and then solved by some
in which some critical operational strategies, including head- developed exact solution methods (e.g., branch-and-bound
way, meet&pass, meet&overtake and signal techniques, can procedure), commercial optimization software (e.g., GAMS,
be well implemented in the simulation framework through CPLEX), and even heuristics (e.g., Lagrangian relaxation
defining effective capacity checking algorithms. approach). For instance, in the literature (Szpigel 1973)
However, as addressed by Pachl (2007) and Li et al. was recognized as the first paper that applied mathemati-
(2014), the deadlock avoiding problem involved in P2 is still cal optimization method to TSCP, where the author modeled
a big challenge in the simulation approaches and real-time the departures and crossings of trains on a single-track
train dispatching systems. For instance, the capacity check railway line using linear programming (LP) and a branch-
algorithm proposed by Dorfman and Medanic (2004) is not and-bound solution framework is developed to find timeta-
always valid to avoid potential deadlocks in some compli- bles that minimize the total transit time. Carey (1994a, b)
cated situations. Besides, unreasonable operational rules can and Carey and Lockwood (1995) developed iterative decom-
also lead to deadlocks in the railway system (see Sect. 3). position approaches to solve train timetabling and routing
Thus, developing a deadlock-free algorithm and improving problems on the general rail networks including one-way
fault–tolerant operational rules in the scheduling process double/multiple tracks and two-way single-track. In their
become two key motivations for our paper. Typically, this approach, some heuristics, such as node branching, vari-
paper makes the following contributions to the literature. able fixing, and bounding strategies were proposed, with
which dispatchers can plan large-scale complex rail sys-
1. We propose a high-efficiency heuristic based on a tems in an acceptable time. Dollevoet et al. (2014) also
train movement simulation method to search for high- proposed an iterative optimization framework to solve a
quality timetables, called train status transition approach macroscopic delay management model and a microscopic
(TSTA). Compared to the train advance strategy by Dorf- train scheduling model. To minimize the delay time and
man and Medanic (2004), our approach can improve the fuel consumption cost for trains on a single-track line, Hig-
quality of the generated timetables and save computer gins et al. (1996) presented a two-objective optimization
memory in the implementations. Moreover, TSTA is model, based on which they developed a branch-and-bound
easy to be extended to other practical operations through solution method. Zhou and Zhong (2007) formulated a gen-
designing effective train status transition check algorithm eralized resource-constrained model for single-track TSCP
(TSTCA) to avoid deadlocks. where time horizon-based variables for handling station
2. To verify the performance of the TSTA, a rigorous math- capacity constraints are introduced, and they proposed a
ematical model for TSCP in the single-track railway branch-and-bound algorithm-based solution approach. Sim-
system is formulated. Compared with the traditional ilarly, Corman et al. (2011, 2012, 2014, 2017) applied
model, this paper considers the tracks allocation of the branch-and-bound procedure-based approaches and heuris-
stations as a binary variable, which is integrated with tic algorithms to optimizing multi-class and inter-area trains
headway constraints to describe the station capacity con- rescheduling problems. Considering the uncertainty of real
straints. railway systems, Yang et al. (2009) proposed an expected
value programming model for trains on a single-track railway
line, where the numbers of passengers getting on/off trains at
stations were assumed to be fuzzy variables. The GAMS, a
commercial optimization software, was applied in Yang et al.
(2009) to solve the formulated model. To limit the number of

123
J Sched

decision variables, the ordering decisions concerning trains ing conflicts. In order to quickly compute a good solution, Cai
which are far away from each other are considered fixed et al. (1998) presented some greedy heuristics to schedule
in Törnquist and Persson (2007). As addressed in the last trains on a single-track railway line, where the corresponding
section, Cai and Goh (1994) proved that the TSCP on the two- conflict resolution strategies for different conflict scenarios
way single-track railway line is an NP-hard problem. With (e.g., overtaking conflict and collision conflict) are designed.
this concern, they presented a fast polynomial-time algorithm There are two important characteristics of their algorithm,
to search for a good feasible timetable with minimum total including (1) the algorithm allows a train to start from any
cost penalized on stops and delays for trains. Caprara et al. position, and (2) the algorithm is developed to possess a
(2002) proved that trains’ overtaking on single-track railways capability to schedule if needed, physical backups of some
is also an NP-hard problem. They developed a Lagrangian trains. Similarly, Lu et al. (2004) presented a graphical tech-
relaxation-based approach to determine a periodic timetable nique for modeling complex rail networks, based on which a
for a set of trains. Analogously, in order to introduce as many deadlock-free algorithm for dispatching trains is developed.
new freight trains as possible and keep the timetables as close On the basis of a discrete event model, Dorfman and Medanic
as possible to the ideal ones, Cacchiani et al. (2010) presented (2004) proposed a travel advance strategy (TAS) for trains in
a graph-theoretic representation for the above TSCP, and the single-track railway networks, where a train arrives at a
developed a Lagrangian relaxation-based heuristic to solve station, siding, or junction is regarded as a discrete event.
the proposed problem. Analogously, to avoid deadlocks, a capacity check algo-
With high-quality solution methods, a lot of researchers rithm was developed based on the analyses of system global
put their focus on the real-time railway train traffic man- information. Considering that deadlocks can be divided into
agement problem (rtRTMP, Pellegrini et al. 2014), including absolute and relative deadlocks, Li et al. (2008) extended
train routing (routes selection) and scheduling problem, and the TAS where train acceleration and deceleration rates were
related railway traffic management systems. Samà et al. also taken into account. Furthermore, Xu et al. (2014, 2015)
(2016, 2017) proposed a number of algorithmic approaches, improved the TAS to search for balanced train timetables and
including ant colony optimization method, tabu search, and investigate train flows on single-track railway lines as well
variable neighborhood search algorithms, to search for good as improve the utilization rate of railway tracks and reduce
solutions for rtRTMP. Corman et al. (2010a) presented a train delays.
number of algorithmic improvements implemented in a In this paper, our main focus is not the modeling of the train
real-time traffic management system, namely railway traf- timetabling problem but the efficient discrete event model-
fic optimization by means of alternative graphs (ROMA), based solution method for the train scheduling problem on
where a truncated branch-and-bound algorithm and a fast single-track railway lines. To demonstrate the effectiveness
heuristic are used to solve train re-routing and scheduling of the proposed method, we also formulate a mixed-integer
problem. Based on ROMA, Corman et al. (2010b) developed linear programming model for train scheduling problems on
a distributed optimization system to reschedule trains in two the single-track railway line, where the track allocation in
dispatching areas. Corman et al. (2014) presented an evaluat- each intermediate station is particularly taken into consid-
ing research for timetables and dispatching measures with the eration. In the following, we compare the characteristics of
consideration of disturbances. For more railway traffic man- the proposed method with those of closely related literature,
agement system, one can refer to the works by Mazzarello including Dorfman and Medanic (2004) and Li et al. (2008).
and Ottaviani (2007), Liu and Dessouky (2017), Kroon et al. (1) As for the station structure, the capacity in each inter-
(2014), D’Ariano (2009), Goverde et al. (2013), etc. mediate station in this paper is extended to 3 instead of 2,
Owing to the complex environment for trains in net- which leads to more complex situations in the scheduling pro-
works, it is difficult to formulate the mathematical models cess that cannot be dealt with by the algorithms of Dorfman
for TSCP (see Dessouky and Leachman 1995). In this sense, and Medanic (2004) and Li et al. (2008). Thus, an improved
both accurate and heuristic methodologies, which are devel- capacity check algorithm is particularly designed in Sect. 3.
oped based on analytical models, are also difficult to be (2) In order to improve the solution quality, for some complex
designed. With this concern, many researchers and practi- situations, we focus on the design of specific operation rules,
tioners began to apply simulation approaches to searching including track occupancy rules, headway control rules, and
for high-quality train schedules. Typically, in simulation overtaking rules. Typically, those rules have significant influ-
approaches, the deadlock avoiding algorithm is a big chal- ences on the scheduling decisions. For more details, please
lenge (see Pachl 2007). Dessouky and Leachman (1995) see Sect. 4.1.
developed a simulation modeling method for analyzing com- The rest of this paper is organized as follows. In Sect. 2, the
plex rail networks, where track speed limits, headway, and train scheduling problem in single-track railway systems is
acceleration are taken into consideration. In the simulation, a described explicitly in which some details, assumptions, and
least-track-time-requirements-first rule is applied to resolv- notations for the considered TSCP are presented. Enlightened

123
J Sched

siding track
by Dorfman and Medanic (2004), a new check algorithm for
main track
train movements is developed based on the train status tran-
sition scheme in Sect. 3. In Sect. 4, several special operation
rules in scheduling process are presented and a new train Fig. 1 An illustration of partial single-track railway line
scheduling method, namely train status transition approach
(TSTA), is proposed. Section 5 implements extensive case
studies to demonstrate the effectiveness and efficiency of the
proposed model and solution method, where solutions gener-
ated by CPLEX solver are regarded as benchmarks. Finally,
a conclusion is made in Sect. 6.
Fig. 2 Illustrations for some meet&overtake events

2 Train scheduling problem on a single-track


railway line

We initiate this section by giving some necessary assump-


tions, notations used throughout this paper and a brief
description of the single-track railway system (including the Fig. 3 Illustrations for some meet&pass events
railway structure, train operations, safety constraints, etc.).
Then, we shall specifically describe the considered problem.
Some necessary assumptions are given below. time and departure time for train i at station k in the obstacle
situation (i.e., there exist other trains running in the same
Assumption 1 The route of each train is fixed. That is, no railway system).
variables related to train route selections are considered in Figure 1 shows a typical two-way single-track railway line
this paper. More specifically, as assumed in Cai and Goh with two terminal stations and a series of intermediate sta-
(1994), there are only two groups of trains, namely inbound tions. Two groups of trains, including inbound and outbound
and outbound trains. Trains traveling in the same direction trains with preplanned departure time d̄i,Ori(i) (i ∈ N ), need
have the same routes. to be scheduled from their origin stations to destination sta-
tions, resulting in possible meeting events along the railway
Assumption 2 Each intermediate station has two sidings
line, as shown in Figs. 2a and 3a. However, due to the struc-
and one main track (see Fig. 1). Additionally, there are suf-
ture of the single-track railway line, trains are only allowed to
ficient tracks in terminal stations.
meet&overtake and meet&pass at stations. Besides, consid-
Assumption 3 Each train’s speed is constant. That is, accel- ering the operation safety, some headway constraints should
erated and decelerated speeds are ignored, since the aim of also be considered in practice. For trains traveling in the same
this study is to present a conflict-free algorithm. direction, we use h aa (h dd ) to represent the time interval
between two consecutive arrivals (departures) at the same
Assumption 4 For simplicity, stations and trains are regarded station. For trains traveling in different directions, we use
as points since their lengths are much shorter than that of the h ad (h da ) to represent the time difference between the time
railway segment. Thus, travel time on each station track is at which one train arrives at (departs from) and the time at
supposed to be zero. which one train departs from (arrives at) the same station.
Conflict-free requirements must also be considered in the
With above assumptions, let N be the set of trains, in train scheduling process. For example, the situation in Fig. 2a
which N = N I ∪ N O (N I and N O are, respectively, the sets is infeasible in the real-world applications. For this case, there
of inbound and outbound trains). Let i, j ∈ N be the train are at least two conflict-free solutions, shown in Fig. 2b, c, in
index, Ri the set of stations along the route of train i ∈ N , which arrival headway h aa and departure headway h dd are,
where train i’s origin and destination stations are indexed by respectively, taken into account. Likewise, a similar situa-
Ori(i) and Des(i). We use k ∈ Ri to indicate station and tion goes for the case shown in Fig. 3, where a cross-conflict
define that k + is the successor station of station k along the exists in Fig. 3a, whereas two adjusted timetables are shown
route of a train, Ck is the capacity of station k, ti,k d is the
in Fig. 3b, c.
s
dwell time for train i at station k, and ti(k,k + ) is the travel Regarding the objective of TSCP, train delay is an impor-
time for train i on segment (k, k + ). āi,k and d̄i,k indicate tant and simple indicator to measure the performance of the
the arrival time and departure time for train i at station k in scheduled timetable, which is usually minimized in the lit-
the free-run situation, whereas ai,k and di,k index the arrival erature (e.g., D’Ariano et al. 2007; Meng and Zhou 2014;

123
J Sched

Fig. 4 Two deadlocks caused by the capacity check algorithm in Dorfman and Medanic (2004). a Station with one siding, b station with two
sidings

Samà et al. 2016). Thus, an ideal schedule is expected to in sufficient quick time to allow for online implementation,
approach the free-running mode as much as possible. With and (3) possibly optimal. With these concerns, beginning
this consideration, this paper uses the total train delay as an with the discussion on the work of Dorfman and Medanic
index to evaluate the quality of the generated schedule, given (2004), this section particularly focuses on designing an effi-
as cient train status transition check algorithm on the basis of a
train movement simulation method.
! f
Z= (Tio − Ti ),
i∈N 3.1 Discussions on Dorfman and Medanic (2004)
f
where Tio and Ti are train i’s actual and free-running travel To quickly schedule the involved trains, Dorfman and
time on its route, respectively. Typically, fast trains need Medanic (2004) proposed a train advance strategy on the
less travel time to traverse the same track. Thus, during the basis of the train movements simulation. In essence, the most
scheduling process, to obtain a schedule with less train delay, important task in the scheduling process is to avoid the poten-
fast trains may have the priority to use the same railway tial conflicts and deadlocks. A railway segment typically
resource (including station tracks and segments) in the case falls into the state of deadlock when no train on this seg-
that both fast and slow trains can use this resource without ment can advance without causing a collision. For this case,
causing any conflicts. a capacity check algorithm (CCA) is developed in Dorfman
With the safety concerns, the aim of the considered and Medanic (2004) to determine whether a train dwelling at
TSCP is to propose a high-efficient approach to determine a station can depart from its current station without leading
the proper stations and sidings for each pair of trains to to a deadlock on the remainder of its route.
implement meet&overtake (trains in the same direction) and However, due to the complexity of operation environ-
meet&pass (trains in different directions) operations with the ments, we note that the CCA cannot always work effectively.
objective of minimizing total train time delay, in which some That is, in some situations even if a train can pass the CCA
given parameters, such as train speeds and dwell time, are successfully at the current state, a deadlock may potentially
also taken into consideration. Typically, the aforementioned take place in the following operations. Here, an illustration
safety constraints lead to much difficulties in generating a in Fig. 4 shows two deadlocks that cannot be detected by the
feasible solution with sufficient optimality. As a benchmark, CCA. In Fig. 4a, each station has only one siding (this case
a formal mathematical model for TSCP on the single-track is presented in Dorfman and Medanic (2004). Situation (1)
railways is presented in “Appendix A,” where the detailed in Fig. 4a presents a particular state of four trains in which
system constraints associated with dwell time, segment travel both trains i and j can pass the CCA and then they depart
time, cross-conflicts, overtaking conflicts and station capac- from stations k − 1 and k + 1, respectively. As the time goes
ity, etc., are all well-formulated according to the practical on, we can obtain situation (2), which results in a deadlock
operations. at station k obviously. On the other hand, we further expand
the capacity of each station (i.e., there are two sidings at a
station), as shown in Fig. 4b. In this case, although both trains
3 Train status transition check approach i and j can pass the CCA in situation (1) of Fig. 4b, it finally
leads to a deadlock at station k illustrated in situation (2) of
For TSCP on a single-track railway, Cai and Goh (1994) Fig. 4b.
pointed out that dispatchers practically desire an algorithm Besides of the infeasibility of CCA shown above, the
with the following characteristics (in descending order of overtaking rules proposed by Dorfman and Medanic (2004)
priority): (1) it must furnish a feasible solution, (2) do so may also cause deadlocks. According to their strategies, the

123
J Sched

space status of a train in the railway system is categorized


into three types, including dwelling at a station, waiting at
a station for the departure and traveling on a segment. For
simplicity, we use ϕi (t) to denote the train i’s status at time
t. Then, ϕi (t) = 1, 2 and 3, respectively, indicate aforemen-
tioned three statuses as shown in Fig. 6 where dwell time and
departure-departure headway h dd are also taken into con-
sideration. Furthermore, Fig. 6 also illustrates the detailed
Fig. 5 A deadlock caused by the overtaking rule in Dorfman and transitions of train status, which follows a circulated chang-
Medanic (2004) ing sequence law, i.e., status 1 → status 2 → status 3 → status
1 → · · · . For instance, if a train’s current status is 1, its next
status will be changed as 2, which means this train has com-
slow train is required to wait at its current station for being
pleted its dwell operation and prepares to leave the station.
overtaken by the following fast train. Nevertheless, if this
If the remainder of its route has sufficient capacity and the
operation is carried out without distinctions, a deadlock may
departure–departure headway h dd has been controlled (for
also take place in some situations. For example, Fig. 5 shows
more details, see Sects. 3.3 and 4.1), this train is allowed to
a deadlock caused by the overtaking rule in Dorfman and
change its status from 2 to 3. Once its status becomes 3, this
Medanic (2004). Specifically, if slow train i − 1 is required
train is required to depart from the current station immedi-
to wait at station k due to the capacity of the current station
ately; otherwise, this train should wait at this station for the
and railway segment, fast train i cannot enter station k, caus-
departure permission, where its status still keeps 2, resulting
ing trains j −1 and j to stuck at station k (see Fig. 5b). On the
in the waiting time. In this process, four separated nodes are
other hand, note that if we rectify their overtaking rules, this
particularly introduced at each station to distinct different
deadlock can be resolved easily. That is, when slow train i −1
status, as shown in Fig. 6. Specifically, node si denotes the
is allowed to leave station k first and simultaneously avoid %
arrival of a train at station i, node si denotes the termination of
the headway conflict between trains i − 1 and i on segment %%
(k, k + 1), this deadlock can be finally eliminated (please see loading and unloading passenger operations, node si denotes
%%%
Sect. 4.1 for more details). Considering that the strategies pre- the waiting time at the corresponding station, and node si
sented by Dorfman and Medanic (2004) may produce a high denotes the end of the headway control. Typically, the oper-
%
probability of generating infeasible schedules on two-way ations between nodes si and si are compulsive, whereas the
%% %%%
single-track railway lines, which is typically undesirable in occurrence of operations between si and si is closely depen-
the real-world applications, we propose a new train schedul- dent on the situation of the current system. Obviously, if no
ing algorithm with high fault–tolerant performances in what waiting time (including possible time headway) is required,
%%% %% %
follows. nodes s1 and s1 will overlap node s1 .
As defined in Dorfman and Medanic (2004), a discrete
3.2 Definitions for train status transition event is said to occur when a train arrives at a station, sid-
ing, or junction. In the scheduling process, the corresponding
Essentially, train movements in a railway system must be positions of trains at each discrete event should be updated,
accompanied by a series of updates of train information, such based on which travel time on their remaining segments needs
as train position and train speed. For convenience, the time– to be computed. Suppose the current system time is t, the

Fig. 6 An illustration of train


status transitions

123
J Sched

focal train’s index is i, train i is traveling on segment (k, k + ), train changes its status. Specifically, in the transition from
and its position and speed are, respectively, pi (t) and vi . status 1 to status 2, since train position will not be changed,
Then, train i’s remaining travel time λi on segment (k, k + ) it is safe for the occurrence of this transition. However, in
can be formulated as the transition from status 2 to status 3, since train’s position
is changed, the capacity of the railway line is also updated.
λi = (X (k + ) − pi (t))/vi , (1) That is, the above transition 2 → 3 may lead to deadlock in
the remainder route. Thus, we should check the feasibility
where X (k + ) is the position of station k + . In fact, if a train of transition 2 → 3. Obviously, the transition from status
doesn’t change its average speed on the segment, its segment 3 to status 1 is an absolutely safe operation, which can be
travel time is a constant. Considering this fact, as shown in implemented without any capacity checking.
Fig. 6, we can calculate the remaining segment travel time
according to a simple equation
Algorithm 1 the Main part of Train Status Transition Check
λi = ti,(k,k + ) − (t − di,k ) (2) Algorithm (TSTCA)
Initialization: Input the focal outbound train i and system information,
including train status, train speeds, etc; set n O = 1, n I = 0, s O = 1,
instead of Eq. (1). Obviously, Eq. (2) can be calculated more s I = 0, check1 = true, check2 = true
conveniently, which is conducive to saving computer mem- for k = k0 : train i’s destination station (not including) do
+ +
ory in the scheduling process. Enlightened by Dorfman and initialize n sO = 0, n kO = 0, n sI = 0, n kI = 0
Medanic (2004), we here propose a train status transition for all j ∈ N /i do
system, which can be expected to improve the quality of if train j is running on train i’s next segment then
if trains k and i travel in the same direction, n sO ++; otherwise
scheduling processes. In general, the proposed heuristic con- n sI + +
sists of three phases, i.e., initializing the system, determining else if train j dwells at train i’s next station k + then
+
the system update step and updating the system information. if trains j and i travel in the same direction, n kO + +; other-
k +
As the heuristic is developed on the basis of status transition wise n I + +
which is essentially a discrete event, for brevity, three defini- end if
end for
tions for the proposed train status transition system are given n O + = n sO , n I + = n sI
below with the given current system time t. if n sI > 0 then
call check step 1, update check1
Definition 1 (Event) An event occurs at the time that a train’s end if
+
status is changed. if n kI > 0 then
call check step 2, update check2
end if
update station capacities for outbound and inbound trains: s O + =
Definition 2 (Discrete time) The discrete time of the train
Ck + − n k+ k+
O − 1, s I + = C k + − n I − 1
is defined as the time interval between the current event and end for
the time that a train (e.g., train i) changes its status (denoted if both check1 and check2 are true then
by λit ). if n I > s I , train i cannot pass the TSTCA; otherwise, train i
passes the TSTCA
end if
outputs
Definition 3 (System next event) Assume that the discrete the information whether train i passes the TSTCA
time vector is #t = {λt1 , λt2 , . . . , λt|N | } at current system
time t, where |N | is the number of considered trains, and
the system next event occurs at time t + λtmin , where λtmin =
Based on the status transitions, we here focus on designing
min{λt1 , λt2 , . . . , λt|N | }.
a train status transition check algorithm (TSTCA) to ensure
the operational safety of transition 2 → 3. We use the term
that a train passes the TSTCA to denote that it is safe for
3.3 Train status transition check algorithm the considered train to enter the next railway section, i.e., the
status for this train can be safely changed from 2 to 3. The
As addressed by Dorfman and Medanic (2004), to avoid pseudocode of TSTCA is displayed in detail in Algorithms 1–
potential deadlocks, when a train prepares to depart from 3, in which without loss of generality, an outbound train i is
a station, a capacity check algorithm needs to be used to taken into consideration. Table 1 lists the definitions of some
determine whether there is always at least one free track at symbols used in Algorithms 1–3.
each station at the end of every movement for trains. Like-
wise, to avoid the potential deadlocks on the remaining route
of a train, it is necessary to evaluate the feasibility that a

123
J Sched

Table 1 Subscripts and parameters used in TSTCA


Symbol Definition Symbol Definition
+
nb Number of b-bound trains on the remaining route n kb Number of b-bound trains at station k +
sb Station capacity on remaining b-bound route n sb Number of b-bound trains on section s
mb Number of b-bound trains on a specified route k0 Train i’s current station
Here b is the index of inbound/outbound, i.e., b ∈ {I, O}

Algorithm 2 Check step 1 (a part of TSTCA) environment for the considered train in two special situations
Initialization: Input train i, train i’s current station k0 , current con- (see lines 11 and 14 of Algorithm 1).
sidered station k and system information, set m O = 1, m I = 0; As addressed in Dorfman and Medanic (2004), generaliza-
for r = k0 : k do
tions can be made to their CCA to allow for stations (where
for all j ∈ N /i do meet&pass operations can be implemented) with multiple
if trains i and j travel in the same direction then siding lines. In this sense, our TSTCA can be regarded as
if train j dwells at station r (r &= k0 ) and train j fails to pass a generalization of the CCA by adding one siding in each
TSTCA then
mO + +
station. It is worth pointing out that the TSTCA can be used
end if to deal with the local situation that involves five trains (see
else if train j is an inbound train and train j travels on segment Fig. 7a), whereas the CCA can only deal with the local sit-
(r, r + ) then uation involving three trains (see Fig. 7b). In what follows,
mI + +
end if
two examples are presented to illustrate the check process
end for of the TSTCA, in which the considered trains fail to pass
end for Algorithm 2 in the first example and fail to pass Algorithm 3
if m O > s O or m I > s I then in the second example, respectively.
train i fails to pass the TSTCA, check1 = false, break
end if
Firstly, we consider a simple situation that an inbound train
j is traveling on the next section that the focal train i will use.
Obviously, in this situation, a conflict between trains i and
j will occur if the focal train enters its next section (i.e., the
Algorithm 3 Check step 2 (a part of TSTCA) status is changed from 2 to 3). For this situation, in TSTCA,
Initialization: Input train i, train i’s current station k0 , current con- it can be found that the criterion in line 11 of Algorithm 1
sidered station k and system information, set m O = 1, m I = 0
is true, then Algorithm 2 is called. According to the local
for r = k0 : k + 1 do information, we have m I = 1 (see lines 7–8) which leads to
for all j ∈ N /i do the case that the criterion in line 12 of Algorithm 2 is true.
if train j dwells at station r or runs on segment (r, r + ) then Then, Algorithm 2 determines that the focal train i fails to
if trains i and j travel in the same direction, m O + +; other-
pass TSTCA (see line 13), which is consistent with the above
wise m I + +
end if deduction.
end for Secondly, recall the cases shown in Sect. 3.1. We take train
end for i in situation (1) of Fig. 4b as the second example to illustrate
if m O > s O and m I > 0 then
the detailed check process of the proposed TSTCA. Suppose
train i fails to pass the TSTCA, check2 = false, break
end if the current time is t. As shown in Algorithm 1, we now check
the capacity of station k − 1. we first set n O = 1 (including
focal train), n I = 0, s O = 1, s I = 0, check1 = true,
Particularly, the main focus of TSTCA is to determine check2 = true. Considering the case that train i dwells at its
whether there exists at least one available path (including current station k −1, we set n sO = 0, n kO = 0 (k = (k −1)+ ),
a series of tracks in stations and sections) for the consid- n sI = 0, n kI = 0. Obviously, two trains i − 1 and i − 2 in the
ered train. Algorithm 1 is the main procedure of TSTCA, same direction travel on the segment between stations k − 1
which first evaluates the capacities of all the stations that and k (n sO = 2) and train j in the different direction dwells at
the focal train currently occupies or will visit (see lines 1– station k (n kI = 1). Then, we have n O = 0 + n sO = 0 + 2 = 2
18) according to local information, and then check whether and n I = 0+n sI = 0+0 = 0 (see lines 2–10 in Algorithm 1).
there is enough station capacity for inbound trains (existing Since n sI = 0, check step 1 is skipped. Furthermore, because
in the remainder of the focal train’s route) to dwell accord- n kI is greater than 0, we call Algorithm 3. Since no train except
ing to the global information (see lines 19–21). Furthermore, for train i exists at station k, TSTCA determines that train i
Algorithms 2 and 3 are, respectively, used to check the local can pass Algorithm 3.

123
J Sched

Fig. 8 The structure of an intermediate station

scheduling procedure, the track occupancy rule at the inter-


mediate station is designed as below:

1. The empty track with the minimum index number has


the priority of being occupied by the coming train. For
Fig. 7 An illustration of train status transitions
instance, if no train dwells at the current station, the com-
ing train will be designated to the main track T0 . Besides,
Now, we update the station capacity for trains in different if there exists one train dwelling at the considered station,
directions, resulting in s O = 2 and s I = 1 (see line 17 in e.g., dwelling at track T1 , then the coming train will be
Algorithm 1). Meanwhile, the considered station is updated dispatched to dwell at track T0 instead of T2 .
as station k (see line 1 in Algorithm 1). Similarly, we obtain 2. Given the situation that three trains dwell at the same
+ +
n sO = n sI = n kO = 0 (k + = k + 1) and n kI = 1. Then, station at the same time, we have that all the tracks are
check step 1 is skipped and check step 2 should be taken into occupied and no track is available for the coming train
consideration, where we have m O = 3 and m I = 1. Accord- which is traveling on the track. The coming train will
ing to the judging criteria presented in line 8 of Algorithm 3, be assigned to the track occupied by a former train in
it can be deduced that check2 = false. That is, train i fails to the same direction if there exists such a former train.
pass the TSTCA. Clearly, this check result is different from After the former train leaves the considered station, the
that obtained by CCA in Dorfman and Medanic (2004) (see coming train can enter the track assigned to it. Please see
Sect. 3.1). “overtaking rule” in the following discussion.
Besides, it is easy to deduce that train j also fails to pass
TSTCA at time t. Therefore, at time t train i and train j are Theoretically, the proposed track occupancy rule can gen-
forced to dwell at station k −1 and station k +1, respectively. erate the track assignment explicitly for all the trains dwelling
Figure 7 displays the possible succeeding situations for the at the station in the simulation solution. In the train schedul-
considered 4 trains, where situation (1) in Fig. 7 is the same ing model, we use decision variables µri,k (r ∈ {0, 1, 2}, i ∈
as that in Fig. 4b. Clearly, the deadlock showed in Fig. 4b is N , and k ∈ Ri ) to determine the track occupancy priorities
eliminated. of trains (please see the model in “Appendix A”).

4.1.2 Headway control rule


4 Detailed operation rules and train status
transition approach (TSTA) Headway control plays a significant role in ensuring the
safety of railway systems. To show the detailed operations
4.1 Detailed operation rules in the scheduling procedure, we here specify the departure–
departure headway between two trains running in the same
Besides the TSTCA, some dispatching strategies should also direction. Without loss of generality, we assume that train
be taken into consideration, such as how to assign a plat- i − 1’s speed is not lower than that of its successor train i
form to the observed train at a station and how to control and ai−1,k < ai,k . Given various possible arrival time for an
the time headway between two trains. For this purpose, we opposite train j at station k, we have four possible departure–
next explicitly design operation rules for trains in some spe- departure headway control situations among trains i, i − 1
cial situations. In detail, we present several critical operation and train j, as shown in Fig. 9.
rules in the scheduling process, including track occupancy d ,
Specifically, in Fig. 9a we have di−1,k + h dd ≤ ai,k + ti,k
rule, headway control rule, and overtaking rule. which means the time difference between the departure time
of trains i − 1 and i is longer than the required departure–
4.1.1 Track occupancy rule departure headway. Thus, the departure event of train i − 1
will not influence train i’s departure operation from station
Figure 8 displays the structure of an intermediate station, k. Then, train i is allowed to depart from station k once its
where the main track is indicated by T0 and the other two dwell operation is completed. In Fig. 9b–d, train i − 1 is
side tracks are indexed by T1 and T2 , respectively. In the delayed by the opposite train j because of the limited track

123
J Sched

Fig. 9 Four departure–departure headway control cases

Fig. 10 Illustrations of
meet&pass and meet&overtake
events for three trains

Fig. 11 Illustration of
meet&pass and meet&overtake
events for four trains

capacity. Afterward, train i will be delayed, since the time at the current station for successor train’s overtaking since
difference between the departures of trains i and i −1 must be the faster train is often given a priority for traversing so
not less than the minimum time headway h dd . Obviously, for as to decrease the total delay (see Dorfman and Medanic
all the cases in Fig. 9, if the capacity of the remaining route 2004). For instance, Fig. 10 displays one meet&pass and
is sufficient, train i’s expected departure time from station one meet&overtake operations among three trains, where
k can be estimated as max{di−1,k + h dd , ai,k + ti,kd }, which Fig. 10a, d shows the detailed successive procedure that the
typically guarantees that (1) the time headway between trains slow train i is overtaken by its successor fast train i + 1. The
i and j − 1 is not less than h dd , and (2) train i has enough corresponding timetable is shown in Fig. 10e.
time to complete its dwell operations at this station. It is worth pointing out that because of the limited sta-
tion capacity, the aforementioned schedule strategy may be
4.1.3 Overtaking rule
invalid in some particular situations. For example, in the case
of Fig. 11b, the aforementioned schedule strategy determines
If the successor train’s speed is greater than the considered
that the slow train i should wait at station k for train i + 1’s
train’s speed, the considered train may be scheduled to wait

123
J Sched

Fig. 12 An illustration of
discrete time

overtaking. However, we can see that train i + 1 cannot enter system information, including train status, position, etc. The
the considered station because there is no available track at scheduling procedure will be terminated if all the involved
station k. Accordingly, trains i, i + 1, j, and j + 1 will be trains’ arrival time at their destinations is determined. Finally,
stuck in this situation, leading to a local deadlock. To avoid a high-quality train timetable can be generated.
this potential deadlock, we should revise the aforementioned
overtaking operation strategy. The new solution is to sched- 4.2.1 Calculations of discrete time
ule slow train i to leave station k before train i + 1. The
succeeding train movements are shown in Fig. 11c, d, where If train i cannot pass the capacity check algorithm, it must
no deadlock exists. Note that even if the headway require- wait at its current station for the occurrence of the next dis-
ment is satisfied, train i + 1 still cannot depart from station k crete event caused by other trains. For this case, we define its
immediately following train i because the overtaking oper- discrete event time λi as a sufficient large number M, e.g.,
ation cannot be implemented on any track segment. Then, λi = M. Theoretically, the calculation methods of discrete
considering the track capacity constraint, we need to com- time λi are different if train status are different, which are
pute the appropriate departure time for train i +1 from station formulated as follows
k according to the travel time information of trains i and i +1  d
on the next segment. Specifically, the expected departure time  ti,k − (t − ai,k ), if ϕi (t) = 1;
for train i + 1 from station k can be calculated as λi = see Eq. (4), if ϕi (t) = 2; (3)

ti,(k,k + ) − (t − di,k ), if ϕi (t) = 3.
di,k + max{h dd , ti+1,k
d s
, ti,(k,k s
+ ) − ti+1,(k,k + ) + h
aa
},
In particular, if ϕi (t) = 2, the calculation of λi is fully
which can guarantee (1) the operation time at station k is not dependent on the situation of train i. As analyzed in Sect. 4.1,
d
less than ti+1,k , and (2) the departure–departure headway and for the case of ϕi (t) = 2, we have

%
d } − t},
max{0, max{di−1,k + h dd , ai,k + ti,k in the case with headway control rule;
λi = dd s s (4)
max{0, di,k + max{h , ti,(k,k + ) − ti+1,(k,k + ) } − t}, in the case with overtaking rule.

With the detailed computations with respect to each


arrival–arrival headway constraints are satisfied. The corre- involved train, we can finally determine the system discrete
sponding timetable is displayed in Fig. 11e. time point (see Definition 3) at which the next system discrete
event occurs.
4.2 Train status transition approach (TSTA) Figure 12 displays several calculations of discrete time
for different trains in detail. As shown in Fig. 12a, at time
This section describes the entire procedure of the proposed t trains i and i − 1 (ϕi (t) = ϕi−1 (t) = 3) travel on the
train scheduling approach, namely train status transition segment between stations 1 and 2, while train j prepares to
approach (TSTA). Specifically, the TSTA is an iterative leave station 2 (i.e., train j’s status is 2). In this case, on the
method. At each iteration of the train scheduling procedure, basis of aforementioned analyses we have λit and λi−1 t as
we need to implement the following steps: (1) use TSTCA shown in Fig. 12c. However, since train j cannot pass the
to check the feasibility of all potential train status transi- TSTCA, its discrete time at time t is the maximum value M.
tion; (2) determine system next discrete event; (3) update Clearly, we have λit < λi−1t < λtj . According to Definition 3,

123
J Sched

the next system event is that train i arrives at station 2 and 5 Computational results
the corresponding system discrete time λtmin is equal to λit .
Suppose t1 = t + λtmin . At time t1 we obtain the situation This section demonstrates the efficiency and effectiveness of
shown in Fig. 12b, where train i arrives at station 2, train j the proposed TSTA, in which the objective values obtained
still dwells at station 2 and train i − 1 travels on the segment. by different solution methods and detailed operation charac-
teristics are also analyzed. In the numerical examples, a total
4.2.2 System information update approach of twenty randomly generated railway corridors are taken
into consideration as the experimental environments, where
Clearly, the time point, at which the next system event occurs, each railway corridor consists of ten stations and nine seg-
satisfies λi ≥ λmin for train i. If λi > λmin , train i’s informa- ments. The length of a segment along each railway corridor
tion will remain unchanged. On the other hand, if λi = λmin , is randomly generated which is subject to a uniform distribu-
train i’s status at system time t + λmin will be updated tion between 50 and 100 km. For descriptive convenience, the
according to the current situations. The train information dwell time for each train at its origin and terminal station is set
update rules are summarized as follows: (1) If ϕi (t) = 1: as 0. We randomly select the dwell time for each train at each
ϕi (t + λmin ) = 2, train i’s position remains unchanged. (2) intermediate station from {0, 180, 360}, where each time is
If ϕi (t) = 2: ϕi (t + λmin ) = 3, di,k = t + λmin , train i’s posi- selected with probability 1/3. In addition, in this set of exper-
tion remains unchanged. (3) If ϕi (t) = 3: ϕi (t + λmin ) = 1, iments, we set h dd = h da = 3 min and h aa = h ad = 0, and
ai,k + = t + λmin , train i’s current station is updated as k + . the other relevant parameters (including speed, dwell time at
a station) of trains in different groups are generated indepen-
4.2.3 Algorithm framework dently. The departure time interval between two trains at the
same origin station is set as 60 min.
Finally, Algorithm 4 presents the entire train scheduling pro- All the experiments are implemented on a personal com-
cedure, where the technical details introduced above are also puter with a 1.80 GHz Intel Core i5 processor and 4.00 GB
displayed. RAM. The algorithms are coded in Microsoft Visual Studio
2012 C# on the Windows 8.1 platform. CPLEX 12.5 is used
as the black-box tactical MIP solver in executing the LB and
Algorithm 4 The framework of Train Status Transition LB+RINS (see “Appendix B”), which provides benchmarks
Approach (TSTA) for evaluating the quality of solutions by the proposed TSTA.
1: inputs
2: the information of railway system
3: outputs
4: train timetable 5.1 Cases of heterogeneous trains traveling in the same
5: while NOT all trains arrive at their destinations do direction
6: Step 1: check train status transition
7: for i = 1 : |N | do
8: if train i’s status is 2 then In practice, railway operators usually schedule trains in
9: if train i passes TSTCA (Algorithm 1) then different directions to travel on separated railway lines to
10: calculate train i’s discrete time λi according to Equation shorten the travel time for passenger trains, above all on
(4) the high-speed railway in eastern China. As addressed in
11: else
12: let train i’s discrete time λi be a sufficient large number Sect. 1, for this case we should consider how to effectively
M schedule trains with different speeds with the consideration
13: end if of minimizing delay. Typically, a degenerated version of the
14: else formulated model shown in “Appendix A” can also deal
15: calculate train i’s discrete time λi according to Equation (3)
16: end if with this practical situation, where the hard constraints (9),
17: end for (10), (12) and (13) will not be taken into consideration. With
18: Step 2: determine system next discrete event this concern, in this section, we intend to use TSTA, LB,
19: determine system discrete time λmin = min{λ1 , · · · , λ|N | } LB+RINS (see “Appendix B”) as well as default CPLEX
20: Step 3: update system information
21: for i = 1 : |N | do solver to schedule heterogeneous trains on the same railway
22: if λi > λmin then corridor. In the experiments, the tested trains are assumed
23: train i’s information remains unchanged to travel in the same direction. The numbers of considered
24: else trains vary from 50 to 94, leading to a series of large-scale
25: update train information according to the information update
rules shown in Section 4.2.2 problems, where the speeds of fast and slow trains are, respec-
26: end if tively, 180 km/h (50 m/s) and 108 km/h (30 m/s). We set the
27: end for total computational time as 1 h for the LB, LB+RINS and
28: end while default CPLEX in each experiment.

123
J Sched

Table 2 Results for cases of heterogeneous trains with different numbers of trains
Train scale TSTA LB LB+RINS Default CPLEX
Z (s) CT (ms) Gap (%) Z (s) CT (s) Gap (%) Z (s) CT (s) Gap (%) Z $ (s) CT (s)

50 5,379,011 24 0.27 5,364,512 299 0.00 5,364,512 349 0.00 5,364,512 338
54 6,276,721 26 0.17 6,266,307 419 0.00 6,266,307 350 0.00 6,266,307 405
58 7,194,753 28 0.17 7,182,324 502 0.00 7,182,324 522 0.00 7,182,324 499
62 7,982,711 36 0.23 7,964,679 773 0.00 7,964,679 750 0.00 7,964,735 718
66 9,031,078 40 0.19 9,013,963 762 0.00 9,013,963 889 0.00 9,013,963 697
70 10,047,157 47 0.14 10,033,307 1051 0.00 10,033,307 1139 0.00 10,033,307 993
74 11,172,048 53 0.14 11,155,907 1379 0.00 11,155,907 1468 0.00 11,155,907 1257
78 12,343,955 50 0.14 12,327,180 969 0.00 12,327,180 955 0.00 12,327,180 769
82 13,570,442 82 0.10 13,556,215 728 0.00 13,556,215 691 0.00 13,556,215 592
86 14,885,326 59 0.14 14,864,171 1476 0.00 14,864,171 958 0.00 14,864,550 918
90 16,232,521 69 0.12 16,212,532 977 0.00 16,212,532 1100 0.00 16,212,644 857
94 17,650,056 77 0.14 17,635,246 3600 0.06 17,635,361 3600 0.06 17,625,091 2570
Here Gap = (Z Heur − Z CPLEX )/Z CPLEX , Heur ∈ {TSTA, LB, LB+RINS}; Z $ is the proven optimal objective value provided by CPLEX solver

Table 2 lists the solutions obtained by different approaches ious train overtaking events in different experiments. For
and relative gaps. Here, we determine that Gap = (Z Heur − instance, in the train group with 50 trains, speeds of trains
Z CPLEX )/Z CPLEX , Heur ∈ {TSTA, LB, LB+RINS}. In this 0 and 2 are, respectively, 50 and 30 m/s, while they are the
set of experiments, 12 implementations with different num- same 50 m/s in the train group with 54 trains. Therefore,
bers of trains are taken into consideration. For the exper- the small and relatively stable optimal gaps can effectively
iments where the numbers of trains are less than 90, the validate the robustness of the proposed TSTA. On the other
LB, LB+RINS, and CPLEX solver can effectively find the hand, as for the computational time, the TSTA can schedule
same optimal solution with acceptable computational time. trains with high-efficiency in comparison with other three
However, due to the complex scheme structures of the LB approaches. For different experiments, TSTA only takes tens
and LB+RINS, in most experiments, the actual computa- of milliseconds to solve the different-scale problems, while
tional time used in these two approaches is longer than other three approaches consume much longer time to gener-
that consumed by the CPLEX solver. This fact coincides ate almost the same solutions. For instance, in the case with
with common sense because their searching process may 94 trains, the computational time for the LB, LB+RINS and
include a sequence of subproblem-based nodes, resulting in CPLEX is more than 40 minutes. However, only 77 ms is con-
the increase of total computational time. For example, when sumed to generate almost the same solution by the proposed
we solve the problem with 94 trains, the computational time TSTA. This fact indicates that the proposed approach is more
for the LB and LB+RINS, respectively, is 3600 s. In com- suitable for online scheduling with the guaranteed solution
parison, the computational time by CPLEX solver turns out quality in comparison with the traditional approaches.
to be 2570 s.
It is worthwhile mentioning that the proposed TSTA 5.2 Cases of heterogeneous trains traveling in different
demonstrates its high-performance in producing near-optimal directions
solutions for different experiments. On one hand, it follows
from Table 2 that the relative gaps between objective val- Next, we aim to apply the proposed scheduling methods to
ues produced by the TSTA and the optimal ones keep at dispatching heterogeneous trains traveling in different direc-
an extremely low level even for different scales of involved tions on the single-track railway line. Typically, the hard
trains. In detail, with the variation of numbers of trains from constraints (9), (10), (12) and (13) in “Appendix A,” which
50 to 94, the relative gaps merely fluctuate in the interval increases the complexity of the considered problem, need to
[0.10%, 0.27%], which implies the effectiveness of the TSTA be taken into account in this section. In what follows, two sets
in the process of searching for high-quality solutions. Fur- of experiments are implemented to validate the dependability
thermore, what should be pointed out is that in different train of the proposed approach from different perspectives.
groups, the types (indexed by train speed) are randomly gen-
erated. That is, trains with the same ID in different groups
of trains are different to a large extent, resulting in var-

123
J Sched

Table 3 Results for cases of heterogeneous trains with different numbers of trains
Train scale TSTA LB LB+RINS Default CPLEX
Z (s) CT (ms) Gap (%) Z (s) CT (s) Gap (%) Z (s) CT (s) Gap (%) Z (s) CT (s)

6 147,013 1 1.03 145,515 1 0.00 145,515 1 0.00 145,515 0


8 219,190 1 2.34 214,174 1 0.00 214,174 1 0.00 214,174 0
10 287,133 2 1.76 282,155 22 0.00 282,155 33 0.00 282,155 23
12 386,602 4 4.73 369,131 1149 0.00 369,131 1395 0.00 369,131 704
14 444,271 6 1.88 436,076 3600 0.00 436,076 3600 0.00 436,076 3600
16 577,319 8 2.91 569,477 3600 1.51 566,556 3600 0.99 560,988 3600
18 713,775 10 3.13 693,028 3600 0.14 692,087 3600 0.00 692,087 3600
20 829,489 15 2.13 813,101 3600 0.12 806,113 3600 − 0.75 812,165 3600
22 916,130 17 1.84 894,892 5400 − 0.52 892,580 5400 − 0.78 899,553 5400
24 1,082,113 40 2.68 1,070,340 5400 1.56 1,054,444 5400 0.05 1,053,901 5400
26 1,169,085 25 − 2.49 1,170,409 5400 − 2.38 1,140,397 5400 − 4.88 1,198,918 5400
28 1,359,949 26 − 1.26 1,349,814 5400 − 2.00 NSE‡ 5400 – 1,377,313 5400
30 1,502,957 30 – NSE 5400 – NSE 5400 – NSE 5400
32 1,658,253 36 − 5.32 1,750,789 5400 − 0.04 1,661,773 5400 − 5.12 1,751,451 5400
34 1,892,304 47 – NSE 5400 – NSE 5400 – NSE 5400
36 2,028,523 48 – NSE 7200 – NSE 7200 – NSE 7200
38 2,313,709 59 – NSE 7200 – NSE 7200 – NSE 7200
40 2,383,981 53 – NSE 7200 – NSE 7200 – NSE 7200

Here, Gap = (Z Heur − Z CPLEX )/Z CPLEX , Heur ∈ {TSTA, LB, LB+RINS}; CT is the CPU time; ‡ NSE means “no solution exists” in CPLEX
solver within the given time

5.2.1 Case studies on the same railway corridor those by TSTA (see Table 3). Furthermore, when the number
of tested trains turns large (e.g., 34–40), the LB, LB+RINS
In the first set of experiments, we schedule trains on the same and default CPLEX cannot output any feasible solutions even
railway corridor with different train scales. In this process, if the computation time is set as 1.5 or 2 h. Therefore, we just
different results are outputted for individual solution meth- use the TSTA to schedule trains in large-scale cases where the
ods, including the optimal objectives, computational time and numbers of trains are more than 40, and the generated results
relative gaps with respect to the CPLEX results. The detailed are listed in Table 4. In comparison, TSTA demonstrates its
experimental results are recorded in Tables 3 and 4 for a clear powerful ability in searching for the high-performance solu-
overview. tion, in which the computational time is, in general, less than
As expected, compared to the implementations in Sect. 5.1, one second for all the considered instances.
the computational time increases drastically even for the rela- Moreover, in most experiments with large train scales
tively small number of trains traveling in different directions. (e.g., 22–32 trains), the solutions obtained by the LB and
Table 3 shows that the LB, LB+RINS and default CPLEX LB+RINS are more optimal than those by default CPLEX.
can find the optimal solutions for the problems with 6, 8, In comparison with the LB, the LB+RINS can find much
10 or 12 trains in 1 h. As for the solution quality, the TSTA better solutions in the same conditions. It is worth pointing
can return the near-optimal solutions. Typically, as shown out that in the experiments with 6–24 trains, we embed the
in Table 3, the optimality gaps between the solutions by solutions obtained by TSTA to the initial root node in the
TSTA and the proven optimal solutions are really small in LB-based approaches. Besides, it is also clear that in most
which the gap is less than 3% in the cases with 6, 8 and experiments with a large number of trains (more than 20),
10 trains, and the maximal gap occurs in the experiment with the solutions obtained by LB are superior to that of default
12 trains (i.e., only 4.73% ). However, if the number of trains CPLEX, while they are all inferior to those of RINS+LB.
is more than 12 and less than 30, the aforementioned three
CPLEX-based methods can only provide feasible solutions
within the given computational time. Specifically, in those 5.2.2 Case studies on different railway corridors
experiments with 26 and 28 trains, the qualities of solutions
outputted by the CPLEX-based alternatives are worse than In the second set of experiments, we use different methods
to schedule the same group of trains on different railway

123
J Sched

Table 4 Results for larger-scale heterogeneous trains scheduled by TSTA


Train scale 44 48 52 56 60 64 68 72

Z (s) 2,737,953 3,252,257 3,765,623 4,149,608 4,763,995 5,226,817 5,787,727 6,509,002


CT (ms) 74 73 82 73 106 114 97 129

Train scale 76 80 84 88 92 96 100 –

Z (s) 7,091,601 7,746,447 8,427,671 9,246,321 9,970,692 10,724,709 11,391,588 –


CT (ms) 147 131 151 187 205 200 219 –

corridors. Table 5 records the computational results and rel- 5.3 Timetables
ative gaps in each experiment, where both the current best
objective values Z and the lower bound objective values Z $ Figure 13 displays the timetables scheduled by the default
obtained by CPLEX solver are presented. Note that although CPLEX and TSTA for 20 heterogeneous trains on the same
solutions corresponding to Z $ may be infeasible, Z $ is the corridor. We can see that in Fig. 13a, the trajectories of
convincing evidence to evaluate the quality of the solution trains 1 and 3 are very close, and the same situations occur
generated by TSTA. It follows from the results that the aver- for trains 8&10, 11&13, 15&19, and 16&18. However, the
age CPU time consumed in solving different problems by close trajectories are very dangerous in the real-world oper-
the proposed TSTA is about 15.4 ms, and the average relative ations. In Fig. 13b, fewer trains closely follow the previous
gap between solutions by TSTA and lower bounds is around trains, which is more suitable for practical applications. As
10%. Moreover, compared with the proven lower bounds, shown in Table 5, the corresponding objective values are,
the average optimality gaps for the solutions obtained by LB, respectively, 812,165 and 829,489 s, where the optimality
LB+RINS and default CPLEX are, respectively, 7.37, 7.07, gap is only 2.13% (Gap = (Z TSTA − Z CPLEX )/Z CPLEX ). The
and 7.09%. This result shows that the proposed TSTA can find above results illustrate that the timetable obtained by TSTA
high-quality solutions for large-scale TSCP instantaneously. is not only a high-quality feasible timetable but also a practi-
That is, TSTA has a great advantage at computational effi- cal timetable. To obtain a straightforward overview, Fig. 14
ciency, which can be expectedly used for online dispatching presents a timetable of 100 heterogeneous trains obtained
in the real-world applications. by TSTA within 219 ms. Obviously, this timetable can be
According to the results of average gaps, we can con- regarded as convincing evidence for illustrating the feasible
clude that from the perspective of solution quality, the order and reasonable for the real-world applications. Since it may
of these four algorithms should be “TSTA” ≺ “LB” * cost a lot of time for CPLEX to search for a good (or even
“Default_CPLEX” * “LB+RINS,” where the expression “A feasible) solution, the corresponding timetables scheduled
* B” means A is not better than B. This conclusion is similar by CPLEX are not given here for comparison.
to that pointed out in Danna et al. (2005), where the exper-
imental data show LB gives somewhat better results than
default CPLEX overall, but runs into serious trouble on the 6 Conclusion
problems of the “large spread” set. Besides, LB+RINS is the
most effective method in most samples. Although the aver- This paper proposed an efficient heuristic approach for train
age relative optimality gap between LB+RINS and default scheduling problem, i.e., train status transition approach
CPLEX is only − 0.02%, 12 out of 20 experiments show that (TSTA). The core of TSTA is the train status transition check
LB+RINS is better than default CPLEX. This result gives algorithm which is rooted in the capacity check algorithm
evidence that LB+RINS is superior to default CPLEX in proposed by Dorfman and Medanic (2004). Furthermore, a
most cases. To make CPLEX solver output feasible solutions rigorous mathematical model for the train scheduling prob-
as soon as possible, we particularly set the initial solution as lem on the single-track railway systems was formulated,
the one obtained by TSTA, while the objective value is set where the station capacity is taken into consideration. Based
to be the maximum value instead of that of TSTA’s solu- on this model, three CPLEX-based methods, including LB,
tion. Therefore, it is not strange that the solution by TSTA in LB+RINS and default CPLEX, were used to search for
sample 2 is superior to those obtained by LB and LB+RINS. the optimal (or near-optimal) timetables. Considering the
practical applications, we implemented a large number of
numerical examples to schedule two types of heterogeneous
trains, including trains traveling in the same direction and
trains traveling in different directions on the randomly pro-

123
123
Table 5 Solutions and comparisons for cases of heterogeneous trains in different experiments
Sample TSTA LB LB+RINS Default CPLEX
Z (s) CT (ms) Gap (%) Z (s) CT (s) Gap (%) Z (s) CT (s) Gap (%) Z (s) Gap (%) Z $ (s) CT (s)

No. 0 829,489 15 8.16 813,101 3600 6.02 806,113 3600 5.11 812,165 5.90 766,933 3600
No. 1 819,540 16 11.75 783,827 3600 6.88 774,911 3600 5.67 766,481 4.52 733,346 3600
No. 2 849,531 14 9.34 861,397 3600 10.86 855,925 3600 10.16 841,180 8.26 776,995 3600
No. 3 837,624 14 7.27 831,443 3600 6.48 831,443 3600 6.48 826,497 5.85 780,834 3600
No. 4 773,196 13 10.50 746,097 3600 6.63 746,185 3600 6.64 748,713 7.00 699,726 3600
No. 5 797,999 16 9.85 786,723 3600 8.29 778,452 3600 7.16 774,014 6.55 726,463 3600
No. 6 830,976 26 8.56 807,290 3600 5.47 805,331 3600 5.21 806,077 5.31 765,430 3600
No. 7 779,192 17 7.47 754,676 3600 4.09 757,119 3600 4.43 761,636 5.05 725,030 3600
No. 8 898,549 16 16.95 850,774 3600 10.73 837,512 3600 9.00 847,043 10.24 768,351 3600
No. 9 801,077 13 9.70 783,540 3600 7.30 776,460 3600 6.33 782,296 7.13 730,226 3600
No. 10 834,051 14 10.18 811,346 3600 7.18 816,162 3600 7.81 814,333 7.57 757,003 3600
No. 11 860,368 15 9.98 847,636 3600 8.35 853,531 3600 9.10 859,621 9.88 782,308 3600
No. 12 795,233 13 11.08 756,661 3600 5.69 767,543 3600 7.21 760,349 6.21 715,892 3600
No. 13 862,716 16 12.07 839,709 3600 9.08 839,249 3600 9.02 837,301 8.77 769,792 3600
No. 14 841,821 13 10.46 829,901 3600 8.89 824,834 3600 8.23 826,748 8.48 762,129 3600
No. 15 834,093 15 8.28 817,129 3600 6.08 816,244 3600 5.96 825,604 7.18 770,329 3600
No. 16 860,720 14 12.68 821,355 3600 7.53 817,631 3600 7.04 821,995 7.61 763,830 3600
No. 17 839,575 20 12.46 802,180 3600 7.45 804,407 3600 7.75 795,565 6.56 746,572 3600
No. 18 821,122 12 8.88 803,167 3600 6.50 795,879 3600 5.53 795,879 5.53 754,148 3600
No. 19 843,362 16 10.61 818,880 3600 7.40 817,919 3600 7.27 822,413 7.86 762,480 3600
Avg. 830,511 15.4 10.31 808,342 3600 7.37 806,142.5 3600 7.07 806,295.5 7.09 752,891 3600
Here Gap = (Z Heur − Z $ )/Z $ , Heur ∈ {TSTA, LB, CPLEX, LB+RINS}; Z$ is the current lower bound value provided by CPLEX solver
J Sched
J Sched

Fig. 13 Train timetables scheduled by different approaches. a Train timetable obtained by CPLEX (20 trains), b Train timetable scheduled by
TSTA (20 trains)

Fig. 14 Train timetable scheduled by TSTA for 100 trains on a single-track railway corridor

duced single-track railway corridors. The results illustrated Acknowledgements This research was supported by the National
that compared to other scheduling approaches, the TSTA can Natural Science Foundation of China (Nos. 71701062, 71431003,
71422002), the Anhui Provincial Natural Science Foundation of China
generate high-quality and more practical timetables within an (No. 1708085QG167), and the State Key Laboratory of Rail Traffic
extremely short time (usually less than 1 s), which is suitable Control and Safety (No. RCS2017K004), Beijing Jiaotong University.
for real-time train scheduling on the single-track railway sys-
tems.
Typically, the TSTA can be expectedly improved in
the future work if more global information is considered.
Appendices
Besides, we here only consider the train scheduling prob-
lem on the single-track railway line. It is more interesting
A Mathematical model of train timetabling
to extend the TSTA to schedule trains on the single-track
problem
railway networks.
To describe the scheduling process mathematically, the deci-
sion variables are listed as follows, in which for simplicity
we use terms “SN” and “DN” to denote conditions that (1)

123
J Sched

∀i, j ∈ N I or i, j ∈ N O , i &= j and (2) ∀i ∈ N I , j ∈ 


N O or ∀i ∈ N O , j ∈ N I , respectively. 
 di,k + h dd ≤ d j,k + M(1 − ξi,Dj,k D
),



 ∀i, j ∈ N I or i, j ∈ N O , i &= j; k ∈ Ri ∩ R j (8a)
 

 1, if train i arrives at station k earlier than 
 dd DD
 d j,k + h ≤ di,k + M(1 − ξ j,i,k ),

ξi,Aj,k
A
= train j, and SN;
 ∀i, j ∈ N I or i, j ∈ N O , i &= j; k ∈ Ri ∩ R j
0, otherwise. 

 
 (8b)


 1, if train i departs from station k earlier than 
 DD DD

 ξ + ξ = 1, ∀i, j ∈ N , i & = j; k ∈ R ∩ R
ξi,Dj,k
D
= train j, and SN;  i, j,k
 j,i,k i j
 (8c)
0, otherwise.


 1, if train i arrives at station k earlier than the

departure of train j from station k,
ξi,AD
j,k = 
 and DN;

 
 ai,k + h ad ≤ d j,k + M(1 − ξi,ADj,k ),
0, otherwise. 

 
 ∀i ∈ N I , j ∈ N O or ∀i ∈ N O , j ∈ N I ; k ∈ Ri ∩ R j
 1, if train i departs from station k earlier than 



ξi,Dj,k
A
= the arrival of train j at station k, and DN; 
 (9a)
 

 ad AD
0, otherwise.  a j,k + h ≤ di,k + M(1 − ξ j,i,k ),


 1, if train i uses segment (k, k + ) before train j,  ∀i ∈ N I , j ∈ N O or ∀i ∈ N O , j ∈ N I ; k ∈ Ri ∩ R j
k,k + 

ωi, j = j, and DN; 
 (9b)
 

0, otherwise. 
 AD AD
ξi, j,k + ξ j,i,k = 1,
 



 1, if train i occupies track r at station k, 
 ∀i ∈ N I , j ∈ N O or ∀i ∈ N O , j ∈ N I ; k ∈ Ri ∩ R j

µri,k = r ≤ Ck ; 
 (9c)
0, otherwise.
M : a sufficient large number

A.1 Mathematical model 



 di,k + h da ≤ a j,k + M(1 − ξi,Dj,k
A
),



 ∀i ∈ N I , j ∈ N O or ∀i ∈ N O , j ∈ N I ; k ∈ Ri ∩ R j
The mathematical model for the considered TSCP is then 



formulated as 
 (10a)


 da D A
'  d j,k + h ≤ ai,k + M(1 − ξ j,i,k ),

Minimize (di,Des(i) − d̄i,Des(i) ) ∀i ∈ N I , j ∈ N O or ∀i ∈ N O , j ∈ N I ; k ∈ Ri ∩ R j
i∈N 


 (10b)



 D A D A
s.t. 
 ξi, j,k + ξ j,i,k = 1,




d 
 ∀i ∈ N I , j ∈ N O or ∀i ∈ N O , j ∈ N I ; k ∈ Ri ∩ R j
ai,k + ti,k ≤ di,k , ∀i ∈ N ; k ∈ Ri (5) 
s (10c)
di,k + ti(k,k + ) ≤ ai,k + , ∀i ∈ N ; k ∈ Ri \Des(i) (6)

 ξi,Dj,k
D
= ξi,Aj,k
A
∀i, j ∈ N I or i, j ∈ N O , i &= j;
 ai,k + h aa ≤ a j,k + M(1 − ξi,Aj,k A
), +,



 ∀i, j ∈ N I or i, j ∈ N O , i &= j; k ∈ Ri ∩ R j (7a) k, k + ∈ Ri ∩ R j (11)



 a + h aa ≤ a + M(1 − ξ A A ),
j,k i,k j,i,k ξi,Dj,k
A AD
+ ξ j,i,k = 1, ∀i ∈ N I , j ∈ N O or ∀i ∈ N O ,

 ∀i, j ∈ N I or i, j ∈ N O , i &= j; k ∈ Ri ∩ R j (7b) j ∈ N I ; k ∈ Ri ∩ R j (12)



 AA AA

 ξ + ξ j,i,k = 1, ∀i, j ∈ N , i &= j; k ∈ Ri ∩ R j
 i, j,k
(7c)

123
J Sched

 + a train occupies a station at the given time, and then pro-



 di,k + h da ≤ a j,k + (1 − ωi,kkj )M, posed a constraint that the number of trains simultaneously



 ∀i ∈ N I , j ∈ N O or ∀i ∈ N O , j ∈ N I ; dwelling at the same station must be less than or equal to



 the station capacity. However, this method essentially cre-

 k, k + ∈ Ri ∩ R j (13a)

 ates a mass of 0–1 variables. For the similar case, Carey

 ad kk +

 ai,k + + h ≤ d j,k + + (1 − ωi, j )M, (1994a, b) presented choice-based constraints to handle the


 ∀i ∈ N I , j ∈ N O or ∀i ∈ N O , j ∈ N I ; limitation of lines, platforms and routes of trains. Enlight-

 k, k + ∈ Ri ∩ R j (13b) ened by Carey (1994a, b), Li et al. (2014) then proposed a


 +
 ωkk + ωkk = 1, + track choice-based constraint for station capacity, as shown in

 i, j j,i

 constraints (14). Obviously, these constraints consider each
 ∀i ∈

 N I , j ∈ N O or ∀i ∈ N O , j ∈ N I ; (13c) station as a small network, where each train can only occupy



 +
k, k ∈ Ri ∩ R j (13d) one track at the same station (see constraints (14a)) and each



 kk + + track can be occupied by at most one train at any time (see
ωi, j = ωi,k j k , ∀i ∈ N ; k, k + ∈ Ri (13e)
constraints (14b)). Lastly, we require that the train departure
time from its origin station should not be earlier than the
preplanned one, i.e., constraints (15).
 ' r

 µi,k = 1, ∀i ∈ N , k ∈ Ri (14a)



 r ∈C k B Local branching (LB) and relaxation induced
di,k + h da ≤ a j,k + (1 − ξi,Aj,k
A )M + (1 − µr )M
i,k
neighborhood search (RINS)

 r

 +(1 − µ )M, ∀i, j ∈ N , i & = j; (14b)

 j,k
k ∈ Ri ∩ R j ; r ∈ C k To effectively solve mixed-integer programming (MIP) mod-
els, Fischetti and Lodi (2003) proposed a local branching
(LB) approach through dynamically adding the siding con-
straints in the searching process, in which the commercial
software CPLEX is used as a tactical MIP solver to solve the
di,Ori(i) ≥ d̄i,Ori(i) , ∀i ∈ N (15) subproblems on different branches. However, as addressed
by Danna et al. (2005), the local search relies extensively on
Constraints (5) ensure that the involved train can com- the notion of a solution neighborhood, and the neighborhood
plete its pre-specified operations at some designated stations, is almost always tailored to the structure of the considered
such as loading/unloading passengers and changing crew. problem. To this end, Danna et al. (2005) proposed two
Constraints (6) guarantee the minimum travel time for the approaches, called relaxation induced neighborhood search
observed train, which can be extended according to the (RINS) and guided dives, respectively, to further speed up the
practical applications. Constraints (7) indicate that there is solution process. For the completeness of this research, both
an arrival–arrival time headway h aa between two consec- the LB and RINS will be introduced briefly in what follows.
utive trains in the same direction when they arrive at the
same station according to a specified sequence. Likewise, the B.1 Local branching
departure–departure time headway h dd is considered sim-
ilarly. Moreover, the arrival–arrival order at station k and Roughly speaking, the LB is a simple external branching
departure–departure order at station k + should be consistent, framework involving three core parts, i.e., (1) define the
which essentially guarantees no conflicts between these two neighborhood of a feasible solution to produce different sub-
trains on segment (k, k + ). For trains heading for different spaces, (2) search for optimal/suboptimal solutions in the
directions, we consider the arrival–departure and departure– subspaces, and (3) perform diversification. Given a generic
arrival time headway constraints (9) and (10). Then tracing 0–1 MIP problem (P) and a feasible solution x̄, Fischetti and
constraints (11) are formulated. Constraints (12) express the Lodi (2003) defined the k − O P T neighborhood N (x̄, k)
correlation between ξi,Dj,k
A and ξ AD . Each section between
j,i,k of x̄ as the set of the feasible solutions of (P) satisfying the
two stations has only one track (segment). additional local branching constraint:
Since the single-track railway line is considered, it is ' '
impossible for trains in different directions to run on the same '(x, x̄) := (1 − x j ) + xj ≤ k (16)
track simultaneously. Then, corresponding constraints (13) j∈ S̄ j∈B \ S̄
are proposed to guarantee the unique occupancy of single rail
tracks. Considering the station capacity, Zhou and Zhong where S̄ = { j ∈ B : x̄ j = 1} is the binary support of x̄.
(2007) used a time-based 0–1 variable to denote whether Then, Fischetti and Lodi (2003) proposed two types of LB

123
J Sched

algorithms based on the different strategies, namely exact and References


heuristic approaches. The exact approach can be expected
to quickly generate the optimal solution for the considered Cacchiani, V., Caprara, A., & Toth, P. (2010). Scheduling extra freight
trains on railway networks. Transportation Research Part B, 44(2),
problem by combining with the default MIP solver. On the
215–231.
other hand, to search for the near-optimal solutions as soon Cacchiani, V., Huisman, D., Kidd, M., Kroon, L., Toth, P., Veelenturf,
as possible, the heuristic LB in particular takes the branching L., et al. (2014). An overview of recovery models and algorithms
diversification and computational time into the consideration, for real-time railway rescheduling. Transportation Research Part
B, 63, 15–37.
including the overall time limit (total time limit) and time
Cacchiani, V., & Toth, P. (2012). Nominal and robust train timetabling
limit on the branch nodes (node time limit). problems. European Journal of Operational Research, 219(3),
727–737.
Cai, X., & Goh, C. (1994). A fast heuristic for the train scheduling
problem. Computers & Operations Research, 21(5), 499–510.
Remark 1 As for the problem discussed in this research, we Cai, X., Goh, C., & Mees, A. (1998). Greedy heuristics for rapid
can produce an initial feasible solution for the LB by using scheduling of trains on a single track. IIE Transactions, 30(5),
481–493.
our proposed heuristics TSTA. When the LB is terminated, Caprara, A., Fischetti, M., & Toth, P. (2002). Modeling and solving the
the outputted solution can be regarded as a high-quality solu- train timetabling problem. Operations research, 50(5), 851–861.
tion for the real-world applications. Carey, M. (1994a). A model and strategy for train pathing with choice
of lines, platforms, and routes. Transportation Research Part B,
28(5), 333–353.
Carey, M. (1994b). Extending a train pathing model from one-way to
two-way track. Transportation Research Part B, 28(5), 395–400.
B.2 Relaxation induced neighborhood search Carey, M., & Lockwood, D. (1995). A model, algorithms and strategy
for train pathing. Journal of the Operational Research Society,
In the searching process of a general branch-and-cut tree, 46(8), 988–1005.
Corman, F., D’Ariano, A., & Hansen, I. (2014a). Evaluating disturbance
two possible solutions might be returned at the termination robustness of railway schedules. Journal of Intelligent Transporta-
of the algorithm. That is, (1) the incumbent is feasible with tion Systems, 18(1), 106–120.
respect to the integrality constraints, but it is not optimal Corman, F., D’Ariano, A., Hansen, I., & Pacciarelli, D. (2011). Optimal
until the last and optimal integer solution has been found; multi-class rescheduling of railway traffic. Journal of Rail Trans-
port Planning Management, 1(1), 14–24.
and (2) some variables in a solution are not integral, but the Corman, F., D’Ariano, A., Marra, A. D., Pacciarelli, D., & Samà, M.
objective value is better than that of the incumbent. With these (2017). Integrating train scheduling and delay management in real-
concerns, Danna et al. (2005) proposed an effective approach, time railway traffic control. Transportation Research Part E, 105,
i.e., RINS, to integrate advantages of the aforementioned two 213–239.
Corman, F., D’Ariano, A., Pacciarelli, D., & Pranzo, M. (2010a). A
solutions. The RINS algorithm is performed on a node of the tabu search algorithm for rerouting trains during rail operations.
incumbent, and the procedure includes three steps (for more Transportation Research Part B, 44(1), 175–192.
details, see Danna et al. 2005). Typically, if RINS is invoked Corman, F., D’Ariano, A., Pacciarelli, D., & Pranzo, M. (2010b). Cen-
at every node in the branch-and-cut tree, the neighborhoods tralized versus distributed systems to reschedule trains in two
dispatching areas. Public Transport, 2(3), 219–247.
induced by the relaxations of consecutive nodes may be quite Corman, F., D’Ariano, A., Pacciarelli, D., & Pranzo, M. (2012). Optimal
similar. For this case, Danna et al. (2005) concluded that it inter-area coordination of train rescheduling decisions. Trans-
is preferable to apply RINS algorithm to every f nodes for portation Research Part E, 48(1), 71–88.
some f - 1. Essentially, the aforementioned LB is also a Corman, F., D’Ariano, A., Pacciarelli, D., & Pranzo, M. (2014b).
Dispatching and coordination in multi-area railway traffic man-
branch-and-cut procedure whose node can also be performed agement. Computers & Operations Research, 44, 146–160.
with RINS. Therefore, LB and RINS can be integrated as a Cordeau, J. F., Toth, P., & Vigo, D. (1998). A survey of optimization
new heuristic, i.e., LB+RINS in Danna et al. (2005). models for train routing and scheduling. Transportation Science,
32(4), 380–404.
Danna, E., Rothberg, E., & Pape, C. (2005). Exploring relaxation
induced neighborhoods to improve MIP solutions. Mathematical
Programming, 102(1), 71–90.
Remark 2 In this paper, the solutions obtained by the CPLEX Dessouky, M., & Leachman, R. (1995). A simulation modeling method-
solver, LB and LB+RINS are treated as the benchmark solu- ology for analyzing large complex rail networks. Simulation,
tions. Since the considered problem is typically an NP-hard 65(2), 131–142.
problem, it will probably take long time to find an initial fea- D’Ariano, A. (2009). Innovative decision support system for railway
traffic control. IEEE Intelligent Transportation Systems Magazine,
sible solution for the aforementioned methodologies. With 1(4), 8–16.
this concern, the TSTA algorithm can be integrated with LB D’Ariano, A., Pacciarelli, D., & Pranzo, M. (2007). A branch and bound
and LB+RINS, respectively, to provide the initial solution at algorithm for scheduling trains in a railway network. European
the root node of these two approaches, which can essentially Journal of Operational Research, 183(2), 643–657.
speed up the problem-solving process.

123
J Sched

Dollevoet, T., Corman, F., D’Ariano, A., & Huisman, D. (2014). An Pachl, J. (2007). Avoiding deadlocks in synchronous railway sim-
iterative optimization framework for delay management and train ulations. In 2nd international seminar on railway operations
scheduling. Flexible Services and Manufacturing Journal, 26(4), modelling and analysis (pp. 28–30).
490–515. Pellegrini, P., Marlière, G., & Rodriguez, J. (2014). Optimal train rout-
Dorfman, M. J., & Medanic, J. (2004). Scheduling trains on a railway ing and scheduling for managing traffic perturbations in complex
network using a discrete event model of railway traffic. Trans- junctions. Transportation Research Part B, 59, 58–80.
portation Research Part B, 38(1), 81–98. Samà, M., Corman, F., & Pacciarelli, D. (2017). A variable neighbour-
Fang, W., Yang, S., & Yao, X. (2015). A survey on problem models and hood search for fast train scheduling and routing during disturbed
solution approaches to rescheduling in railway networks. IEEE railway traffic situations. Computers & Operations Research, 78,
Transactions on Intelligent Transportation Systems, 16(6), 2997– 480–499.
3016. Samà, M., Pellegrini, P., D’Ariano, A., Rodriguez, J., & Pacciarelli,
Fischetti, M., & Lodi, A. (2003). Local branching. Mathematical Pro- D. (2016). Ant colony optimization for the real-time train routing
gramming, 98(1–3), 23–47. selection problem. Transportation Research Part B, 85, 89–108.
Garey, M., & Johnson, D. (1979). Computers and intractability: A guide Szpigel, B. (1973). Optimal train scheduling on a single track railway.
to the theory of NP-completeness (pp. 90–91). San Francisco, CA: In M. Ross (Ed.), Operational research ’72 (pp. 343–352). Ams-
W.H. Freeman. terdam: North-Holland.
Goverde, R., Corman, F., & D’Ariano, A. (2013). Railway line capacity Törnquist, J., & Persson, J. (2007). N-tracked railway traffic re-
consumption of different railway signalling systems under sched- scheduling during disturbances. Transportation Research Part B,
uled and disturbed conditions. Journal of Rail Transport Planning 41(3), 342–362.
& Management, 3(3), 78–94. Wang, Y., Li, K., Xu, X., & Zhang, Y. (2014). Transport energy con-
Kroon, L., Huisman, D., & Maróti, G. (2014). Optimisation models for sumption and saving in China. Renewable and Sustainable Energy
railway timetabling. In I. A. Hansen & J. Pachl (Eds.), Railway Reviews, 29, 641–655.
timetabling and operations: Analysis, modelling, optimisation, Xu, X., Li, K., & Li, X. (2016). A multi-objective subway timetable
simulation, performance evaluation (2nd ed., pp. 155–173). Ham- optimization approach with minimum passenger time and energy
burg: DVV Media Group. consumption. Journal of Advanced Transportation, 50(1), 69–95.
Higgins, A., Kozan, E., & Ferreira, L. (1996). Optimal scheduling of Xu, X., Li, K., & Yang, L. (2015). Scheduling heterogeneous train traffic
trains on a single line track. Transportation Research Part B, 30(2), on double tracks with efficient dispatching rules. Transportation
147–161. Research Part B, 78, 364–384.
Lu, Q., Dessouky, M., & Leachman, R. (2004). Modeling train move- Xu, X., Li, K., Yang, L., & Ye, J. (2014). Balanced train timetabling on a
ments through complex rail networks. ACM Transactions on single-line railway with optimized velocity. Applied Mathematical
Modeling and Computer Simulation, 14(1), 48–75. Modelling, 38(3), 894–909.
Li, F., Gao, Z., Li, K., & Yang, L. (2008). Efficient scheduling of rail- Yang, L., Li, K., & Gao, Z. (2009). Train timetable problem on a single-
way traffic based on global information of train. Transportation line railway with fuzzy passenger demand. IEEE Transactions on
Research Part B, 42(10), 1008–1030. Fuzzy Systems, 17(3), 617–629.
Li, F., Sheu, J., & Gao, Z. (2014). Deadlock analysis, prevention and Yang, L., Li, K., Gao, Z., & Li, X. (2012). Optimizing trains movement
train optimal travel mechanism in single-track railway system. on a railway network. Omega, 40(5), 619–633.
Transportation Research Part B, 68, 385–414. Yang, L., Zhou, X., & Gao, Z. (2013). Rescheduling trains with
Liu, L., & Dessouky, M. (2017). A decomposition based hybrid heuris- scenario-based fuzzy recovery time representation on two-way
tic algorithm for the joint passenger and freight train scheduling double-track railways. Soft Computing, 17(4), 605–616.
problem. Computers & Operations Research, 87, 165–182. Yang, L., Zhou, X., & Gao, Z. (2014). Credibility-based rescheduling
Lusby, R., Larsen, J., Ehrgott, M., & Ryan, D. (2011). Railway track model in a double-track railway network: A fuzzy reliable opti-
allocation: Models and methods. OR Spectrum, 33(4), 843–883. mization approach. Omega, 48, 75–93.
Mazzarello, M., & Ottaviani, E. (2007). A traffic management sys- Zhou, X., & Zhong, M. (2007). Single-track train timetabling with guar-
tem for real-time traffic optimisation in railways. Transportation anteed optimality: Branch-and-bound algorithms with enhanced
Research Part B, 41(2), 246–274. lower bounds. Transportation Research Part B, 41(3), 320–341.
Meng, L., & Zhou, X. (2014). Simultaneous train rerouting and
rescheduling on an N-track network: A model reformulation
with network-based cumulative flow variables. Transportation
Research Part B, 67, 208–234.

123

You might also like