Transportation Research Part D 65 (2018) 524–539
Contents lists available at ScienceDirect
Transportation Research Part D journal homepage: www.elsevier.com/locate/trd
Real-time energy consumption minimization in railway networks ⁎
Teresa Montronea, , Paola Pellegrinib, Paolo Nobilic
T
a
ESTECO S.p.A, AREA Science Park, Padriciano 99, Trieste 34149, Italy University Lille Nord de France, F-59000 Lille, IFSTTAR, COSYS, LEOST, Rue Élisée Reclus, BP-70317, F-59650 Villeneuve d’Ascq, F-59666, France c University of Salento, Via per Arnesano, Lecce 73100, Italy b
A R T IC LE I N F O
ABS TRA CT
Keywords: Railway traffic management Energy consumption Mixed-integer linear programming
A new timetable must be calculated in real-time when train operations are perturbed. Although energy consumption is becoming a central issue both from the environmental and economic perspective, it is usually neglected in the timetable recalculation. In this paper, we formalize the real-time Energy Consumption Minimization Problem (rtECMP). It finds in real-time the driving regime combination for each train that minimizes energy consumption, respecting given routing and precedences between trains. In the possible driving regime combinations, train routes are split in subsections for which one of the regimes resulting from the Pontryagin’s Maximum Principle is to be chosen. We model the trade-off between minimizing energy consumption and total delay by considering as objective function their weighted sum. We propose an algorithm to solve the rtECMP, based on the solution of a mixed-integer linear programming model. We test this algorithm on the Pierrefitte-Gonesse control area, which is a critical area in France with dense mixed traffic. The results show that the problem is tractable and an optimal solution of the model tackled can often be found in real-time for most instances.
1. Introduction In the railway system, the timetable is designed so that traffic can be smoothly operated. The timetable specifies the passing and stopping times of each train at a set of relevant points along the infrastructure. These times are such that, in absence of perturbations, trains traveling at their planned speed never encounter signals with restrictive aspects. However, when unexpected events occur during operations, causing train delays, a new timetable must be computed in real-time. In practice, this computation is usually not fully automated, but a dispatcher manually establishes routes and schedules to perform traffic operations minimizing delays. The real-time Railway Traffic Management Problem (rtRTMP) is the problem of automatically establishing the train routing and scheduling in real-time, minimizing a function of delay propagation. In the literature, several models and algorithms are proposed for handling and solving the rtRTMP, e.g., Corman et al. (2010), D’Ariano et al. (2008), Mannino and Lamorgese (2010) and Pellegrini et al. (2015). Typically, the rtRTMP does not consider energy consumption, which, however, is becoming a central issue both from the environmental and economic perspective. In this paper, we define the real-time Energy Consumption Minimization Problem (rtECMP). Indeed, when a train travels through an infrastructure, it uses different driving regimes to follow a speed profile compatible both with the infrastructure characteristics and the traffic condition. Energy consumption depends on the driving regimes followed by the trains. The rtECMP finds the driving regime combinations which minimize energy consumption in real-time. These combinations consider as an input the routing and the
⁎
Corresponding author. E-mail address:
[email protected] (T. Montrone).
https://doi.org/10.1016/j.trd.2018.09.018
1361-9209/ © 2018 Elsevier Ltd. All rights reserved.
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
precedences between the trains of an rtRTMP solution and comply with them. The objective of the problem is the minimization of the weighted sum of energy consumption and total delay. Therefore, the importance of energy consumption and total delay in the problem depends on their weights in the objective function. Few approaches exist in the literature to deal with this problem, as we discuss in the literature review. Typically, they are adaptations of approaches originally designed for optimizing train speed profiles in absence of traffic, and can deal with no more than a couple of trains at a time. In this work, we propose a Mixed-Integer Linear Programming (MILP) model to formalize the rtECMP. Moreover, we define an algorithm based on the solution of this MILP model, which we call Train Driving Regime Combination-MILP, or TDRC-MILP. TDRCMILP starts with the calculation of the trains travel times and energy consumption corresponding to different driving regime combinations. After this calculation, it creates the model, solves it through a MILP solver and returns the optimal solution or the best solution found after the elapse of a predefined maximum computation time. We propose an experimental analysis on instances representing traffic in the Pierrefitte-Gonesse control area in France. This control area corresponds to a complex junction with dense mixed traffic. The rest of the paper is organized as follows. Section 2 introduces some railway definitions that are used in the rest of the paper. Section 3 describes the train movements, in particular the train driving regimes used in this work. Section 4 presents a detailed literature review on the methods to minimize energy consumption in real-time. Section 5 introduces the rtECMP and Section 6 describes the MILP model which formalizes it. Section 7 presents the algorithm and Section 8 reports the experimental analysis. Section 9 concludes the paper. Finally, Appendix A summarizes the main notation used here and Appendix B reports some detailed results omitted in the text for sake of brevity. 2. Railway definitions Railway networks are split in control areas that are managed by dispatchers. A control area may contain junctions that are locations where several lines cross. Moreover, a control area may include stations, i.e., particular junctions where trains may stop for what is called dwell time for some specific activities or services, such as boarding and unloading passengers. In a control area, the safety separation between trains is ensured by the signaling system. In railway signaling systems, the interlocking describes how tracks and signals are electrically or otherwise interconnected to prevent conflicting train movements and to ensure that movements are safe. Signals delimit sections of tracks called block sections. More specifically, a block section is delimited by two signals, one at its start (entry signal) and another at its end (exit signal). The exit signal of a block section corresponds to the entry signal of the subsequent one. Each block section contains one or more track-circuits, which are portions of tracks where the presence of a train is automatically detected. Block sections that share some track-circuits are called incompatible, an example of which is presented in Fig. 1. Here, block section 1 is composed of track-circuits A, B, D and block section 2 is composed of A, B, C . Track-circuit B contains a switch, which is a mechanical installation that enables the train to be guided from a track to another. The block sections share track-circuits A and B: they have the same entry signals but different exit signals. They are said to be incompatible because their simultaneous use by two trains is not compatible with the safety regulations, unless the precise position of the trains is known and the common track-circuits are guaranteed to be cleared by the first one before the second one can occupy them. Block sections can be used by at most one train at a time. To warrant the respect of this rule, when a block section is to be traversed by a train, all its track-circuits need to be reserved concurrently before the start of their physical occupation. When these track-circuits are reserved, all block sections, including one or more of them, are locked. These are the block sections incompatible with the one that is to be traversed. The unlocking of the block sections depends on the interlocking system. In this paper, we consider the route-lock route-release interlocking system (Pachl, 2008), in which all the incompatible block sections are released simultaneously shortly after the train exits the traversed one. For precision, let us mention that the reservation of the track-circuits and the lock of the block sections start shortly in advance to consider the formation time. The formation time is given by the time for clearing the signals, the time needed by the train driver to see the signal aspect, and the route formation time. Similarly, the unlocking is not immediate after the exit of the train, indeed a short time is necessary for resetting the block sections in the default condition. This is named release time. The signaling systems can have n aspects, the most frequent being three. In a three-aspect signaling system, all block sections are long enough to assure that each train that enters one of them at its maximum allowed speed is able to stop at the end of it. More specifically, the three-aspects are green, yellow and red. When a block section is opened by a green signal, both the block section itself and the following one are available. Therefore, a train crossing the green signal can travel at its planned speed, and both the block section in which it is entering and the following one are reserved for it. When a block section is opened by a yellow signal, the subsequent block section is available, but the following one is not. Hence, the train travel must be such that the train itself will be able
Fig. 1. Example of incompatible block sections. 525
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
to stop at the end of the block section. According to the characteristics of the train, an immediate brake may or may not be necessary. Finally, a red signal means that the train needs to stop because the block section opened by the signal is not available. If the signaling system has more than three aspects, further restrictive aspects separate the green and the yellow ones. The interlocking system just described is named fixed block system. This system is in place today in almost all European railway systems. Exceptions can be found in some urban systems and in extremely recent high speed lines. Here, an alternative system named the moving block system is partially implemented. This system is part of the European Rail Traffic Management System (Oxalis, 2013). This is a project developed by the European Union and railway stakeholders in cooperation with several major industrial companies (e.g., Alstom Transport, Ansaldo STS, Bombardier Transportation) to design and implement an efficient and uniform European railway system. In the moving block system, the safety separation between trains is ensured by imposing speed reductions and stops as in the fixed block one, but considering the end of the block sections moving with the preceding train. We call route a sequence of block sections that can be traversed between the origin and destination of the trains in the control area. The trains enter the control areas traversing their routes and following a timetable. As mentioned in the introduction, the timetable specifies the passing and stopping times of each train at a set of relevant points along the infrastructure. In particular, we call schedule the time at which a train enters each block section or track-circuit of its route. The timetable is generated so that the trains traveling at their planned speed never encounter signals with restrictive aspects. 3. Train movements The movements of the trains can be modeled through differential equations which depend on the rolling stock, the railway infrastructure and the environmental conditions. Indeed, the tractive, braking and resistance forces in these equations are influenced by the mass and the resistances of each vehicle, the slope and the curve of tracks, but also air or wind. However, the environmental conditions are usually neglected. The fundamental differential equation is the basic train motion equation that describes the relation between speed v at time t according to the Newton force equilibrium. Precisely:
F (t )−FR (v (t )) = mfp a (t )
(1)
where
• F is the tractive force F of the engine when F (t ) ⩾ 0, and the braking force F , otherwise; F (v (t )) is the resistance force in the infrastructure; • v (t ) is the train speed at time t; • m is the train mass; • a (t ) is the train acceleration at time t; • f is a mass factor that considers the rotating parts of the train. T
B
R
p
When distance is considered as the independent variable instead of time, another equation describes the relation between speed v and distance traversed x. Precisely:
F (x )−FR (v (x )) dv (x ) = mfp . v (x ) dx
(2)
Indeed, since acceleration can be expressed as
a (x (t )) =
dv (x (t )) , dt
the Newton force equilibrium becomes
F (x (t ))−FR (v (x (t ))) = mfp
dv (x (t )) . dt
This equation does not change if we multiply both sides by
1 : v (x (t ))
F (x (t ))−FR (v (x (t ))) dv (x (t )) = mfp . v (x (t )) v (x (t )) dt Since speed can be expressed as
v (x (t )) =
dx (t ) , dt
we obtained
F (x (t ))−FR (v (x (t ))) dv (x (t ))) = mfp . v (x (t )) dx (t ) If we consider x as the independent variable, by omitting the dependence from t, Eq. (2) is deduced. 526
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
In the following formulas, we consider v as function of t. The tractive force FT is the maximum effort that the train can apply for moving. FT depends both on the train characteristics and on the current speed v. It is usually described numerically by a hyperbolic formula. This formula approximates the effort for a certain speed interval [vk , vk + 1] and depends on the engine. Precisely:
FT (v (t )) =
ck , v (t )
vk < v (t ) ⩽ vk + 1
(3)
where ck is a parameter depending on the rolling stock characteristics. The braking force FB is the maximum effort which can be applied to stop the train. FB is usually approximated based on a constant deceleration rate, so it is independent of the speed. Different deceleration rates are possible. Between them, the most often considered ones are the maximum service and the sharp deceleration rate (Brunger and Dahlhaus, 2009). Under normal circumstances, the maximum service deceleration is recommended, because it allows the train to brake in a comfort mode. The sharp deceleration is reserved for an emergency stop. The resistance force is the sum of line, curve and vehicle resistance, LR , CR and MR , respectively: (4)
FR (v ) = LR + CR + MR (v (t )). More specifically, the line resistance depends on the train mass and the track slope angle ρ . Precisely:
LR = mg sin(ρ), where g =
9.81 m/s2
(5)
is the gravity constant. It is usually approximated as
LR = mg tan(ρ),
(6)
because for small values of ρ , sin(ρ) ≈ tan(ρ) . The curve resistance is due to track curve and train mass and it is usually calculated by the Roeckl formula. Precisely: 6.3
⎧CR = m rc − 55 , if rc ⩾ 300 m ⎨CR = m 4.91 , if rc < 300 m rc − 30 ⎩
(7)
where rc is the curve radius. Finally, the vehicle resistance combines both rolling resistance and air resistance, and depends both on the rolling stock characteristics and on the current train speed. It is usually approximated by the Davis formula. Precisely:
MR (v (t )) = A + Bv (t ) + Cv (t )2
(8)
where A, B and C are non-negative constants specific to the rolling stock. Formula (8), which we consider in this paper, is the massindependent version, but also a mass-dependent version exists. The trains that move on the infrastructure require mechanical energy. The mechanical energy E depends on the traction power P (t ) over time t. More specifically, the traction power and the mechanical energy are, respectively: (9)
P (t ) = F (t ) v (t ) E=
∫0
τ
P (t ) dt
(10)
where τ is the total time for which the energy is computed. Let the travel duration be the time needed by a train to travel along its whole route. The travel duration of each train is calculated taking into account the travel times. The travel times consist of the running and clearing times computed for each block section. They are, respectively, the times needed by a train to travel on and to clear each block section. In particular, a block section is clear if the tail of the train has exited it. These times are calculated by means of Eqs. (1) or (2), which are influenced by the rolling stock and the infrastructure. We note that the travel times change if the route traversed by the train changes, even if the previously mentioned characteristics are the same. For example, the running time of a block section can be different when a train enters it after passing through a switch in different positions. Trains can follow different driving regimes, such as acceleration and braking. These driving regimes must respect some constraints due to the infrastructure and rolling stock characteristics. In each driving regime the energy consumption evolves differently. When the energy must be minimized, there are four optimal driving regimes that the train driver can follow (Miyatake and Hideyoshi, 2010). These optimal regimes are found by the Optimal Control Theory (Vinter, 2000) according to the application of the Pontryagin’s Maximum Principle (PMP) (Pontryagin et al., 1962). Indeed, the problem of the mechanical energy minimization, which consists of the minimization of traction power P (t ) over time, is a standard optimal control problem, as shown for example in Montrone (2017). In short, the optimal driving regimes are:
• The maximum acceleration regime: the maximum traction power P (t ) = FT (v (t )) v (t ) is given to the engine, so that the maximum energy is consumed. The maximum traction power is equal to the tractive force FT that a train is able to produce at speed v. For the maximum acceleration regime, Eq. (1) that describes the train movement reduces to 527
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
FT (v (t ))−FR (v (t )) = mfp a (t ).
• The cruising regime: it consists in maintaining the speed constant. Therefore, the acceleration is null and the tractive power depends only on resistance force FR (v ) at speed v. More specifically,
P (t ) = FR (v (t )) v (t ). Eq. (1) reduces to
F (t ) = FR (v (t )).
• •
The above formulas apply when the slope angle is large enough, that is, when it is greater than the threshold under which the descent may allow the train to accelerate without effort. Otherwise, the train must brake to maintain its speed constant and the mechanical power is null. The coasting regime: the engine is stopped. The train moves by inertia, therefore the mechanical energy is null. The maximum deceleration regime: it allows the train to brake using the maximum service deceleration. Therefore, the traction power and mechanical energy are null and Eq. (1) reduces to
FB (t )−FR (v (t )) = mfp a (t ).
We refer the interested reader to Howlett and Pudney (1995) for more details. 4. Literature review In the literature, some authors propose methods to minimize energy consumption in real-time railway traffic operations. Anyway, this problem is still rather unexplored: so far, only few methods have been developed to minimize energy consumption in real-time and they usually do so under some quite strong assumptions. Some methods consider only the situation in which traffic is regular. In particular, these methods exploit planned time supplements to follow energy-efficient driving regimes during operations. Time supplements are usually additional times introduced in the timetable to recover possible delays caused by unexpected events that may occur during the train operations. Therefore, these times can be used to minimize energy consumption when traffic is regular. Remark that the methods proposed in this situation are considered applicable in real-time if they are able to find solutions quickly. However, since unperturbed traffic is considered, they might be actually applied off-line in the planning phase, without the need of any change. Instead, when perturbations occur and the original timetable becomes infeasible, the energy consumption must be optimized considering precedence relations between trains and possible speed restrictions due to the interlocking system. In this section, we start with the description of the main contributions concerning regular traffic. The first method proposed to tackle the real-time energy minimization problem is the one by Albrecht (2005), who applies in realtime a method previously proposed for finding efficient driving regimes in the original timetable (Albrecht and Oettich, 2002). This method considers a multi-objective problem in which both energy consumption minimization and probability of connections with other public transport services maximization are considered. The authors propose a Dynamic Programming method to solve this problem. Su et al. (2013) propose a method to find the speed profiles which minimize energy consumption. In particular, the method integrates three algorithms. The first algorithm is an exact algorithm to find the optimal speed profile with a given schedule. The second algorithm calculates the minimum running times given constant speed limits. Finally, the third algorithm exploits the time supplements to define efficient running times. In this method the traction force, the braking force and the resistance force are supposed constant, because the variations of the slopes, the curves and the speed limits are not considered. This method is fast enough to be used in the Automatic Train Operation (ATO) system for real-time control. The method is tested on some numerical examples based on Beijing Yizhuang metro line in China and the computation time reported for finding the optimal solution is 0.15 s. Song and Song (2016) propose a dual-speed curve optimization for energy-saving operation of a high-speed train. The dual-speed curve optimization is a method which contains two processes: an off-line global optimization and an on-line local optimization. The global optimization is solved by a genetic algorithm, while a predictive control is developed for local optimization to refine the global optimization in real-time. Only very recently, some papers have been published on the consideration of perturbed traffic. Among them, Su et al. (2014) extend the method introduced in Su et al. (2013) including the consideration of headway times, that is, the minimum time separation between consecutive trains, to be able to deal with more than one train. Wang et al. (2011) suppose that both the fixed and the moving block interlocking system described in Section 2 are possible. The authors study the problem of finding both the speed profiles and the schedules of two trains without energy recovery where the slopes and speed limits can change. They propose a MILP model and both a greedy and a so-called simultaneous approach. In the greedy approach, first the optimal solution of one train is determined by solving the MILP problem. Next, the optimal solution of the following train is found based on the first results. In the simultaneous approach, the two optimal solutions are found concurrently. In a following paper, Wang et al. (2015) propose a method that handles intermediate stops at stations and signals by means of additional constraints using the so-called Train Path Envelope (TPE). In particular, the TPE consists of a set of positions with a target 528
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
time and speed point or window and it can be calculated to respect the precedences dictated in a rtRTMP solution. The authors formulate the problem as a multiple-phase optimization model and use the Gauss Pseudospectral method (Rao, 2003) to solve it. They test the method on the Dutch corridor between Utrecht and s-Hertogenbosch showing the validity of the approach for real-time application. Moreover, they show the influence of the TPE on the optimal speed profile. This method does not consider explicitly the interlocking system: the definition of the TPE for each train is done such that the distance between trains is always sufficient to ensure safety and prevent trains from encountering restrictive signals. Finally, Wang and Goverde (2016) present a method to find the optimal speed profiles and the control regimes for safe, punctual, comfortable and energy-efficient train operations including the interlocking system. They define a model that includes both operational constraints and interlocking constraints. The first constraints give the time and speed restrictions due to the timetable, while the second constraints refer to the influences of the interlocking system. The model includes also additional constraints to use the TPE for modeling the intermediate stops. The authors formulate this model as a multiple-phase optimization model and solve it by a Pseudospectral method. 5. Problem description As it emerges from the discussion in the previous section, different variants of the problem of minimizing energy consumption in real-time have been considered. In this section, we describe the one we deal with in this paper. Specifically, we focus on the situation of perturbed traffic. During train operations, unexpected events cause delays that often propagate due to the emergence of conflicts. A conflict occurs when two trains, running at their planned speed, would require incompatible block sections concurrently, implying that one of them needs to stop or slow down. In this case, a new timetable needs to be defined and followed, with new passing and stopping times and possibly with different train routes. The decision of the new train routes and precedences is made in the rtRTMP. Indeed, there is a trade-off between delays and energy consumption, in particular, given a set of routing and precedence decisions, different speed profiles are possible. Typically, the rtRTMP minimizes the delays considering the trains traveling as fast as possible through the control area dealt with. In this case, energy consumption is maximum. The rtECMP is the real-time optimization problem of finding the new schedules and driving regime combination for each train that minimize delays and energy consumption, while respecting the routings and precedences between the trains imposed by the rtRTMP. Indeed, in the rtECMP a solution of the rtRTMP is considered as an input and the train driving regime combination is optimized while satisfying it. In the model considered in this paper, we make some assumptions. First, we consider a three-aspect signaling system (green, yellow and red) to assure the safety of train travels. This type of signaling system is the most common in practice, and an eventual extension of the model to consider more complex fixed block systems would not change its nature. Moreover, we assume that the visibility distance of all signals is 0, that is, a train entering a block section with a yellow aspect will have to stop at the end of it. Once stopped, the driver sees the signal opening the next block section and may immediately accelerate if the signal already turned green or yellow. This behavior does not perfectly match reality, in which a driver can see the next signal some time before reaching it. However, considering a longer visibility distance corresponds to taking into account a huge amount of speed profiles for each train in each block section: for example, if the visibility distance is 400 m, at any time while traveling along this distance the signal may change aspect and the train may be allowed to accelerate. Since this would significantly complicate the model, we make this simplifying assumption in this work. We think it does not jeopardize the validity of the model because, in general, one of the driving regime control principles at the basis of energy consumption minimization is trying to avoid the encounter of restrictive aspect signals along the train trips. Hence, trains will drive to avoid as much as possible entering block sections with yellow aspect signals, limiting the influence of the assumption. Instead, when this is unavoidable, the assumption will indeed have an impact, also considering that acceleration regime, especially after stops, requires significant energy consumption. However, in preliminary experiments we observed that although a difference with respect to the actual behavior exists, it is in general not very large: indeed the number of trains that come to a full stop is extremely low. For example, on a set of 50 instances presented in Section 8 (perturbation 1, solved considering 3 subsections, α = 0.5 and β = 0.5) the average number of stops in front of a signal is only 0.42. Therefore, we think that the zero visibility distance assumption is appropriate to keep the model both meaningful and tractable. Finally, we assume that the possible driving regimes to be followed by the trains are maximum acceleration, cruising, coasting and maximum deceleration as reported in Section 3. Moreover, each train can change the driving regime in predefined positions, called switching points, within the block sections. In particular, each block section is divided into a fixed number of subsections in which the train follows one of the four possible regimes. The switching points in each block section are fixed and the problem searches the optimal driving regime combination. The rtECMP considers a control area that may include stations. Let B be the set which contains all the block sections, some of them located into stations, in the control area considered. Moreover, we take into account several trains. Let T be the set which contains all trains that travel across the control area considered in the time horizon under study. Let Vi0 be the initial speed of train i in the first block section of its route. We assume that the trains start at the maximum speed allowed if they enter the control area from a neighboring one, or at speed 0 if the origin of their route is a station within the control area considered. The maximum speed allowed is the minimum between the speed limits and the train maximum speed. For each train i ∈ T , Bi is the set of block sections that i must traverse to follow the route chosen by the rtRTMP and Si the subset of block sections where i must stop. The block sections in Si are located inside stations. Moreover, ji∗ is the last block section in Bi , that is, the destination of the route of train i. If in the rtRTMP two trains i and i′ are supposed to traverse incompatible block sections j and j′, respectively, i preceding i′, then the pair (i, i′) is included 529
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
in the set P jj′. Let COij be the set containing feasible driving regime combinations for each train i ∈ T in each block section j ∈ Bi . Let Vij0 be the set of considered initial speeds for i in j. Indeed, the initial speed in a block section must be equal to the train final speed in the previous one. Finally, let Q (ij)k be the set containing pairs (k ′, l) ∈ (Vij0, COij ) of train initial speeds and driving regime combinations that imply k as train final speed, for train i ∈ T and block section j ∈ Bi . 6. Model formulation In this section, we introduce the MILP formulation which we propose to model the rtECMP. It considers the notation explained in Section 5, which is summarized in Appendix A. The continuous variables of the model represent the times at which each train enters each block section of its route and its total delay. The binary variables indicate whether a driving regime is used in a block section or not. Other variables handle the stop duration at red signals and the braking at yellow signals. More specifically, the continuous variables, all non-negative, are:
• t , ∀ i ∈ T , j ∈ B , which defines the time at which a train enters a block section of its route; • q , ∀ i ∈ T , j ∈ B , which handles the possible stop duration at the end of block section j; • d , ∀ i ∈ T , which indicates the total delay of train i at its intermediate stops and at its exit from the control area. ij
i
i
ij i
The binary variables are:
•y
∀ i ∈ T , j ∈ Bi , k ∈ Vij0, l ∈ COij , which indicates the initial speed k and driving regime combination l selected for train i in block section j. Precisely, ijkl ,
1 if i enters j with speed k and uses combination l yijkl = ⎧ ⎨ ⎩ 0 otherwise.
• z , ∀ i ∈ T , j ∈ B , which indicates whether a train must stop at the red signal at the end of a block section (entering the block ij
i
section with a yellow signal). Precisely,
1 if i enters j with a yellow signal and must stop at the end of it z ij = ⎧ ⎨ ⎩ 0 otherwise.
The input values that are needed to formulate the problem depend on the infrastructure characteristics, on the train initial speed and on the possible driving regime combinations. They must be pre-calculated as we will show in Section 7. Specifically, the input values are:
• LB , which is the lower bound of t , ∀ i ∈ T , j ∈ B ; • UB , which is the upper bound of t , ∀ i ∈ T , j ∈ B ; • r , which is the release time, ∀ j ∈ B ; • f , which is the formation time, ∀ j ∈ B ; • w , which is the originally scheduled departure time of train i from station S , with block section j ∈ S , ∀ i ∈ T ; • e , which is the originally scheduled time at which train i should exit the last block section of its route, ∀ i ∈ T ; • d , which is the minimum dwell time of train i in the station where block section j is located, ∀ i ∈ T , j ∈ S ; • r , which is the running time of train i on block section j if entering at speed k and using driving regime combination l, ∀ i ∈ T , j ∈ B , k ∈ V , l ∈ CO ; • c , which is the clearing time of train i on block section j if entering at speed k and using driving regime combination l, ∀ i ∈ T , j ∈ B , k ∈ V , l ∈ CO ; • E , which is the energy consumption of train i on block section j if entering at speed k and using driving regime combination ij
ij
i
ij
ij
i
j
j
i
ij
i
i
i
ij
ijkl
i
0 ij
ij
i
0 ij
ij
ijkl
ijkl
l, ∀ i ∈ T , j ∈ Bi , k ∈ Vij0, l ∈ COij .
Finally, let α and β be two non negative parameters indicating the importance of energy consumption and delay, and M a large constant. The objective is the minimization of the weighted sum of energy consumption and total delay:
minα ( ∑ i∈T
∑ ∑ ∑
Eijkl yijkl ) + β ∑ di.
j ∈ Bi k ∈ Vij0 l ∈ COij
i∈T
(11)
In addition to the binary and non-negativity constraints, the model includes several constraints, which are the Bound, Route, Station, Precedence, Signal, Stop Time and Delay Constraints described in the following. The Bound Constraints give the upper and the lower bound to continuous variables.
LBij ⩽ tij ⩽ UBij,
∀ i ∈ T , j ∈ Bi ,
(12) 530
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
0 ⩽ qij ⩽ UBij + 1−LBij + 1,
∀ i ∈ T , j ∈ Bi .
(13)
LBij can be set as the time at which train i enters the control area plus the minimum running time needed to traverse all the block sections before j. UBij can be set as the maximum allowed train travel duration, however fixed, minus the minimum running time to traverse all the block sections after j. Note that these constraints are introduced to strengthen the formulation, by reducing the domain of variables. The Route Constraints guarantee that each train follows exactly one driving regime combination in each block section, starting from any initial speed (Constraints (14)). Moreover, they ensure that the final speed in each block section is equal to the initial speed in the following one (Constraints (15)) and that each train arrives at each block section after spending the necessary running time in the previous one (Constraints (16)). Constraints (16) are not applied to block sections in Si , where train i has a scheduled stop. These block sections are handled separately in the Station Constraints.
∑ ∑
yijkl = 1,
∀ i ∈ T , j ∈ Bi ,
k ∈ Vij0 l ∈ COij
∑
(14)
∑
yijk′l =
(k ′, l) ∈ Q (ij)k
yij′kl ,
∀ i ∈ T , j ∈ Bi ⧹ {ji∗ }, j′ follows j, ∀ k ∈ Vij0′, (15)
l ∈ COij′
∑ ∑
tij′−tij =
rijkl yijkl + qij ,
∀ i ∈ T , j ∈ Bi ⧹ {ji∗ }, j′ follows j, j ∉ Si.
k ∈ Vij0 l ∈ COij
(16)
The Station Constraints ensure that each train stops at least for the minimum dwell time at each station where it has a scheduled stop (Constraints (17), (18)). Moreover, the train must not leave the station, that is, enter the following block section, before its planned departure time (Constraints (19)).
∑ ∑
tij′−tij =
rijkl yijkl + dij + qij ,
∀ i ∈ T , j ∈ Si, j′ ∈ Bi , j′ follows j,
k ∈ Vij0 l ∈ COij
∑
yijkl = 1,
(17)
∀ i ∈ T , j ∈ Si, (18)
(k , l) ∈ Q (ij )0
tij′ ⩾ wij,
∀ i ∈ T , j ∈ Si, j′ ∈ Bi , j′ follows j.
(19)
The Precedence Constraints ensure that at most one train at a time traverses each block section (Constraints (20)). Remark that the precedences between trains are inputs supplied by a rtRTMP solver. When train i must traverse block section j and i′ must traverse j′, if (i′, i) ∈ P jj′ then i′ must release j′ before i can enter j.
tij−ti′j′ ⩾ f j +
∑
∑
gi′j′ kl yi′j′ kl , ∀ (i′, i) ∈ P jj′, j ∈ Bi , j′ ∈ Bi′, j′ incompatible with j,
k ∈ Vi0′j′ l ∈ COi′j′
(20)
where gi′j′ kl = r i′j′ kl + c i′j′ kl + r j′. The Signal Constraints ensure that a train enters a block section with a yellow signal when traffic imposes it. Hence, the train stops at the end of the block section. This is the case when it has to give precedence to one or more other trains. In particular, the signal will be yellow if there is at least one of these trains which is traversing or is still to traverse a block section that is incompatible with the one following the block section opened by the signal itself (Constraints (21), (22)). Fig. 2 illustrates the rationale for the Signal Constraints, where we consider train i and block section j″. The latter is followed by j on the route of train i. Block section j′ belongs to the route of train i′ and it is incompatible with j. Train i′ has the precedence in j′ with respect to i in j, that is, (i′, i) ∈ P jj′. If i is traversing j″ before i′ releases j′ , i must have entered with a yellow signal and it will have to stop at the end of j″ (red signal) to guarantee safety. Since the visibility distance of all signals is assumed to be 0, it will stop for qij″ time units (qij″ ⩾ 0 ) even if block section j is released before i gets to the end of j″.
Mz ij″ + tij″ ⩾ f j″ + ti′j′ +
∑
∑
gi′j′ kl yi′j′ kl ,
∀ (i′, i) ∈ P jj′, j″ , j ∈ Bi , j follows j″ , j′ ∈ Bi′, j′ incompatible with j,
k ∈ Vi0′j′ l ∈ COi′j′
∑
yij″kl ⩾ z ij″,
(21)
∀ i ∈ T , j ″ ∈ Bi . (22)
(k , l) ∈ Q (ij″)0
For Constraints (21) to be meaningful, M must be at least equal to the time distance between the time at which i′ exits from j′ and the time at which i enters j″. Constraints (21) assure that if there exists i′ which has not released j′ when i enters j″ which precedes j, with
Fig. 2. Signal constraints explanation. 531
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
j′ incompatible with j and i′ having precedence over i, then the variable z ij″ is set to 1. If z ij″ = 1, then Constraints (22) assure that i will stop at the end of j″. The Stop Time Constraints ensure that qij is 0 when a train does not have to stop at a red signal. qij ⩽ Mz ij ,
∀ i ∈ T , j ∈ Bi .
(23)
The Delay Constraints set variables di to quantify the delay of train i at the stations where it has a scheduled stop and at its destination.
⎛ (tij′−wij ) + ⎜t iji∗ + ⎜ j ∈ Si, j′ ∈ Bi , ⎝ ′ j follows j
∑
∑ k ∈ V 0∗ iji
(
∑ l ∈ COij ∗ i
⎞ y ij ∗ kl r iji∗ kl )−ei⎟ ⩽ di , i ⎟ ⎠
∀ i ∈ T,
where the first term represents the departure delay from intermediate stations and
ji∗
(24)
t iji∗
+
∑k ∈ V 0 ( ∑l ∈ CO ∗ y ij ∗ kl r iji∗ kl ) i iji iji∗
is the scheduled
of its route, ∀ i ∈ T . time at which train i exits the last block section Remark that, here, we consider the total delay of each train. Hence, the presence of buffer times may imply the possibility to compensate some intermediate delays through early arrivals at some stations. This modeling choice may be easily changed by setting a delay variable for each train at each stop and at its exit from the infrastructure, if suitable for a specific study. 7. TDRC-MILP TDRC-MILP is introduced to solve the rtECMP. The algorithm requires as its inputs all the values and parameters necessary for the formulation described in Section 6, in particular, running and clearing times and energy consumption. These quantities are computed within TDRC-MILP based on infrastructure and train characteristics (as the length of the block sections, the speed limits, the slopes, the curves, the train mass, the train maximum speed, etc.), according to the formulas described in Section 3. The algorithm starts with the calculation of the travel times introduced in Section 3 and the energy consumption for all trains in each block section of their route, considering all the feasible initial speeds and driving regime combinations: it calculates rijkl, cijkl and Eijkl, ∀ i ∈ T , j ∈ Bi , k ∈ Vij0, l ∈ COij . To do so, for each train i ∈ T , the algorithm splits each block section j ∈ Bi into s subsections. For each block section j, starting from each possible initial speed k ∈ Vij0 , the algorithm calculates the train travel time and the energy consumption associated with one driving regime among maximum acceleration, cruising, coasting and maximum deceleration for each subsection. The maximum acceleration or deceleration can be replaced by acceleration-cruising or cruising-deceleration, respectively. Indeed, if the maximum acceleration for the whole length would bring the train to exceed the maximum speed allowed, the maximum acceleration regime is actually computed considering a suitable combination of acceleration until the maximum speed allowed and cruising at this speed. Similarly, if an immediate maximum deceleration would bring the train to stop before the end of the subsection, the maximum deceleration regime is actually computed considering a suitable combination of cruising and deceleration to stop exactly at the end of the subsection itself. Note that an alternative would have been to consider coasting preceding the deceleration. We do not expect this would significantly change the results. For the first block section, only one value of k exists: Vi0 . This is 0 if the origin of the train is a station within the control area considered, and the maximum speed allowed otherwise. For the others, the possible values of k are all possible final speeds of the previous block section. These speeds are included between 0 and the maximum speed allowed. They depend on each train and route characteristics, hence their number in each block section can vary quite substantially. The algorithm calculates each value by solving the basic motion equation expressed with the distance as independent variable (Eq. (2)). More specifically, first the algorithm divides each subsection into h portions of equal and sufficiently short length. Then, it calculates in each portion the relevant times and energy consumption, as well as the final speed, which is the initial speed of the following portion. Finally, it combines the values in each portion to calculate the ones in each subsection, that is, it sums the values opportunely. This calculation can be made in a pre-computation phase, since it depends on the train and infrastructure characteristics but not on the traffic scenario to be dealt with. After the calculation of rijkl, cijkl and Eijkl , TDRC-MILP creates in real-time the MILP model described in Section 6 and solves the optimization problem using a MILP solver. TDRC-MILP includes a constraining option which enables a procedure to reduce the number of feasible train driving regime combinations. In particular, if this option is enabled, the procedure deletes the combinations that do not respect a given criterion. This criterion assures that each regime can be only followed by one that consumes less or equal energy. Precisely, any regime can follow the maximum acceleration, while after a maximum deceleration, only another deceleration is allowed. Moreover, the cruising can be followed by cruising, coasting or maximum deceleration, while coasting only by coasting or maximum deceleration. As the computation of the running and clearing time and energy consumption, this procedure can be performed during a pre-computation phase. The MILP model will then be generated in real-time considering the reduced set of feasible driving regime combinations. Let us mention that this criterion is inspired by the Optimal Control Theory. Indeed, the problem of the mechanical energy minimization can be formulated as an optimal control problem and the PMP involves the driving regimes used in this work, as reported in Section 3. Even if only under some assumptions (Scheepmaker et al., 2017), it has been shown that the optimal sequence of the driving regimes between two stations (where a train has scheduled stops) is given by the maximum acceleration, cruising, coasting and maximum 532
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
Fig. 3. The optimal sequence of driving regime combination.
braking, as shown in Fig. 3. 7.1. Implementation details We implement TDRC-MILP in Java integrating it with IBM ILOG CPLEX Optimization Studio V12.6.1 (IBM, 2016). Precisely, the calculation of running and clearing times and energy consumption is made in Java 8, while the formulation of the model requires the integration with CPLEX Studio 12.6.1, which is used as MILP solver. We run the experiments on an Intel Xeon (R) CPU E5-2667 v4 @3.2 GHz, 8 cores, 32 GB RAM with Ubuntu 16.04LTS Linux operating system. 8. Experimental analysis We test TDRC-MILP on the French Pierrefitte-Gonesse control area shown in Fig. 4. It includes an infrastructure with 89 trackcircuits grouped into 79 block sections. This control area does not include stations and contains 39 possible routes. The traffic is dense, and during a weekday 336 trains travel on the infrastructure. The trains can be of three types, precisely, high-speed trains, conventional passengers trains and freight trains. Each train has particular rolling stock characteristics. For example, their maximum speeds are, respectively, 300 km/h, 160 km/h and 100 km/h, while their masses are 180 T, 495 T and 553 T. We create four daily traffic perturbations by imposing that 20% of trains, randomly selected, enter the control area with a random delay between 5 and 15 min. For each perturbation, we consider a one-hour scenario including all trains entering the control area between 6:00 AM and 7:00 AM. This leads to instances with either 15 or 16 trains. For each perturbation, we obtain 50 rtECMP instances by finding alternative feasible routes and precedence constraints through the rtRTMP solver RECIFE-MILP (Pellegrini et al.,
Fig. 4. The Pierrefitte-Gonesse Infrastructure. 533
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
2015). Specifically, in each solution the route of each train is randomly chosen among the ones available for it in the rtRTMP instance. Then, 5% of precedence relations between trains are randomly set as constraints. To obtain a rtECMP instance, RECIFE-MILP optimizes the remaining 95% of precedence relations for at most three minutes. If the optimal solution concerning these remaining relations is not found within three minutes, the best solution found is considered. The computation time limit for TDRC-MILP is alternatively 30 s or 900 s of wall clock time. The first is a computation time which may be considered for a real-time application, where a time limit of few minutes needs to be shared between the rtRTMP solver and the rtECMP one. Three minutes is an often considered time for this whole process (Sama et al., 2016; Rodriguez, 2007), which may allow devoting 30 s to the rtECMP. To study the influence of the weights in the objective function, we normalize energy consumption and total delay. The normalization factor for energy consumption is the maximum consumption possible on a block section. As a consequence, it is possibly different for each instance, as the route followed by trains can vary. Instead, we assume that the maximum delay for each train is always 2 h (7200 s) and we divide the delay by 115200 s, that is 7200 s multiplied by the number of trains in the instance. This upper bound of the total delay is defined based on the analysis of the duration of the scenario and the entrance delay distribution, as well as on our experience on the control area considered. For a preliminary analysis, we set the weights associated with energy consumption and delay in the objective function (11) as α = 0 and β = 1: the trains travel as fast as possible and no attention is paid to the energy consumption. This is what is typically done in railway simulators. We use this weight combination to validate our computations with respect to the OpenTrack simulator (OpenTrack Railway Technology Ltd., 2016). After this initial validation, we test different weights α and β to study their influence on the optimal solution, driving regime combination and computation time. Specifically, we consider the following weight combinations (α, β ): (0.0001, 1) ; (0.25, 0.75) ; (0.5, 0.5) ; (0.75, 0.25) and (1, 0.0001) . Moreover, we study the influence of the number of subsections in which the block sections are split. In particular, we consider 3 or 4 subsections of equal length. Therefore, the driving regime combinations that can be selected by TDRC-MILP are made up by 3 and 4 driving regimes, respectively. When the number of subsections is 3, we suppose at first that all feasible combinations are considered: the constraining option described in Section 7 is not enabled. Then, we enable this option, so the driving regime combinations considered are only the ones in which each regime is followed by one that consumes less or equal energy. When the number of subsections is 4, we always enable the constraining option. Indeed, in a preliminary analysis, we noted that with 4 subsections the instances become too large if we do not enable this option, and TDRC-MILP is unable to find a feasible solution due to lack of memory. Tables 1–3 report the results when the time limit is 30 s. The corresponding tables for the 900 s limit are reported in Appendix B. Each table concerns a configuration in terms of number of subsections and constraining option. For each configuration, we report the average results when varying the weights of energy consumption and delay in the objective function. These average results are given in terms of computation time (either the time at which the optimum was proven or the available one), gap (relative and percent), delay and energy consumption. For the short time limit, each average is over the instances for which at least a feasible solution is found for all weight combinations: the number of these instances is reported between parentheses near the perturbation name. Indeed, the algorithm is unable to find even a feasible solution for some instances within this time limit. However, when at least a feasible solution is found, the average gap is always smaller than 0.3% . Therefore, we conclude that TDRC-MILP is often able to find good solutions even if few seconds are allocated. We could not find a reason for the impossibility of rapidly finding feasible solutions for some instances, but we think the issue may be solved by initializing the search through a heuristic. Instead, when the time limit is less stringent, at least a feasible solution is found for all instances, and this is even the optimal one unless 3 subsections with no Table 1 Results with time limit = 30 s, number of subsections = 3 and constraining option not enabled. The number between parentheses reports the number of instances on which the average is computed for each perturbation, i.e., those for which at least a feasible solution was found with all weight combinations. Perturbation 1 (19 instances)
Perturbation 2 (35 instances)
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
30 30 30 30 30
0.23 0.22 0.19 0.19 0.00
6945 8646 9300 11,086 12,469
4102 849 338 88 0
30 30 30 30 21
0.13 0.10 0.12 0.12 0.02
11,959 12,730 14,302 16,735 20,119
4079 830 319 121 0
Perturbation 3 (17 instances)
Perturbation 4 (16 instances)
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
30 30 30 22 13
0.12 0.08 0.08 0.06 0.00
12,554 13,588 14,998 15,936 17,177
4173 746 105 25 0
30 30 30 30 23
0.25 0.12 0.13 0.14 0.00
13,177 12,578 14,374 17,366 17,771
534
Energy [MJ] 4422 972 286 90 0
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
Table 2 Results with time limit = 30 s, number of subsections = 3 and constraining option enabled. The number between parentheses reports the number of instances on which the average is computed for each perturbation, i.e., those for which at least a feasible solution was found with all weight combinations. Perturbation 1 (43 instances)
Perturbation 2 (48 instances)
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
30 30 30 19 13
0.06 0.03 0.02 0.00 0.00
5733 6884 7776 9066 10,246
3512 518 192 33 0
30 30 30 21 11
0.04 0.02 0.01 0.00 0.00
9309 5126 11,484 11,850 13,577
3411 417 71 11 0
Perturbation 3 (44 instances)
Perturbation 4 (49 instances)
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
30 30 30 22 13
0.05 0.03 0.03 0.00 0.00
12,147 13,607 14,500 14,969 16,493
3430 516 109 28 0
30 30 31 28 15
0.06 0.04 0.03 0.00 0.00
9892 11,199 12,356 12,933 14,389
Energy [MJ] 3657 616 114 38 0
Table 3 Results with time limit = 30 s, number of subsections = 4 and constraining option enabled. The number between parentheses reports the number of instances on which the average is computed for each perturbation, i.e., those for which at least a feasible solution was found with all weight combinations. Perturbation 1 (41 instances)
Perturbation 2 (45 instances)
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
30 30 30 19 13
0.09 0.05 0.04 0.01 0.00
6078 7091 8267 9809 13,436
4322 735 237 41 0
30 30 30 30 18
0.05 0.03 0.02 0.03 0.00
9629 10,794 11,751 12,578 16,195
4044 551 145 62 0
Perturbation 3 (39 instances)
Perturbation 4 (40 instances)
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
30 30 30 30 18
0.07 0.04 0.03 0.01 0.00
12,534 13,557 14,814 15,449 18,406
4104 627 139 55 0
30 30 30 30 22
0.08 0.05 0.05 0.03 0.00
10,366 11,434 12,723 13,399 17,860
Energy [MJ] 4458 674 140 63 0
constraining option enabled are considered. The difficulty of the problem seems to be higher when α = 0.0001, β = 1, regardless of the configuration. Indeed, the algorithm requires more time to find the optimal solution when it has 900 s available, and it reaches in general a higher gap when it has 30 s. This difficulty may be due to the existence of several combinations with similar values of delay. Since the delay is the most relevant quantity in this case, TDRC-MILP finds it more difficult to effectively explore the tree of solutions. Moreover, we can observe that when the constraining option is not enabled, TDRC-MILP requires more time to find the best solution, or reaches a higher gap. Indeed, within 30 s, TDRC-MILP is able to find a feasible solution for 43.5% of instances and the average gap across all perturbations and weight combinations is 0.10%. Instead, when the constraining option is enabled, TDRC-MILP is able to find a feasible solution for 92% and 82% of instances, and the average gaps are 0.02% and 0.03%, respectively, for 3 and 4 subsections. Therefore, we can conclude that when the constraining option is not enabled, the problem is more difficult. This is of course due to the high number of driving regime combinations, which implies a high number of binary variables. In particular, the model includes 131271 binary variables in average for all perturbations and weight combinations when the option is not enabled and 3 subsections are considered, while 64666 and 87026 ones with 3 or 4 subsections and constraining option enabled. In general, the results show that the trends of energy consumption and delay follow our expectations: even if the optimal solution is not always found, the higher the weight of a quantity in the objective function, the better the results in terms of this quantity and the worse the results in terms of the other. The analysis of the driving regimes in the solutions returned by TDRC-MILP shows that some trains behave differently when the 535
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
weight combination changes. In particular, when the highest importance is given to the delay (high β ) the trains tend to often accelerate to reach their destination as soon as possible, although this requires a lot of energy. When the highest importance is given to the energy consumption (high α ), the maximum acceleration regime that requires the largest amount of energy is avoided as much as possible and the driving regime combinations are mostly made up of coasting and maximum deceleration. For example, if we consider the results obtained in 900 s for the first perturbation, with 3 subsections and constraining option not enabled, when β = 1, all 800 trains (16 trains per instance and 50 instances) accelerate at least once regardless of the number of subsections. Instead, when α = 1, only 12 trains accelerate. When α = 0.5, β = 0.5, 128 trains accelerate, since TDRC-MILP must solve the trade-off between delay and energy consumption. An example is shown in Fig. 5, which reports the speed profile of a train in one of the instances under study. The blue1 continuous line represents the train speed profile when α = 0.0001, β = 1, the red dotted line when α = 0.5, β = 0.5 and the green dash-dotted line when α = 1, β = 0.0001. As it can be observed, when the highest importance is given to the delay minimization the train accelerates most of the time. When the highest importance is given to the energy consumption minimization, the train never accelerates and it coasts or brakes until it reaches its destination. Finally, when both energy and delay are minimized, the train mainly coasts maintaining its speed constant thanks to the absence of gradient, and it brakes before the end of its route to avoid a conflict with another train which travels slowly too. Finally, we perform a statistical analysis in which we apply the Wilcoxon rank-sum test with a confidence level of 0.95. First of all, this analysis shows that the cases in which the time limit is 30 s are significantly worse than the ones with time limit 900 s. Moreover, the configurations in which the constraining option is not enabled are significantly worse than the ones with this option enabled. Finally, the configurations in which the number of subsections is 4 are significantly worse than the ones with 3 subsections, only if the constraining option is enabled; otherwise, the opposite holds. Therefore, we can conclude that the configurations in which the constraining option is enabled and the number of subsections is 3 are the best, regardless of the time limit. 9. Conclusion In this paper, we have formalized the rtECMP as the problem of minimizing train delays and energy consumption given fixed routes and precedences. In a traffic management system, when train operations are perturbed, the rtECMP receives these routes and precedences by an rtRTMP solver. Then, it computes the efficient driving regime combinations to be executed by the drivers. After formalizing the problem, we presented TDRC-MILP. It is a MILP-based algorithm for finding good approximations of optimal solutions of the model tackled. TDRC-MILP first splits the block sections into subsections; after that, it computes the running times and energy consumption implied by different driving regimes (maximum acceleration, cruising, coasting and maximum deceleration), which are the ones resulting from the Pontryagin’s Maximum Principle. This can be done in a pre-processing phase, since it does not depend on traffic conditions. Then, once a perturbation is to be tackled and routes and precedences are known, TDRC-MILP decides the optimal driving regime combination for each train and each block section. TDRC-MILP includes the possibility of enabling the so called constraining option to reduce the number of driving regime combinations which can be selected. Precisely, when the constraining option is enabled the possible driving regime combinations are the ones in which each regime can be followed by one that consumes less or equal energy. This is the typical choice made in the literature when designing train speed profiles. We tested TDRC-MILP on instances representing the peak-hour traffic in the French Pierrefitte-Gonesse control area. These instances include either 15 or 16 trains and different sets of routes and precedences. The experimental analysis shows the influence on the solution of the weights associated with energy consumption and delay in the objective function. Moreover, the results show that realistic instances are tractable with the proposed approach, and good approximation of the optimal solutions can often be found in real-time. Finally, the results show that even if in principle it is better to have maximum flexibility in the choice and in the granularity of driving regime combinations (constraining option not enabled and 4 subsections), better results are obtained for the lowerflexibility and the smaller-space instances (constraining option enabled and 3 subsections). Moreover, enabling the constraining option has greater impact than decreasing the number of subsections. Indeed, the lower-flexibility but greater-space instances (constraining option enabled and 4 subsections) allow finding better results than the greater-flexibility and lower-space ones (constraining option not enabled and 3 subsections). To summarize, the results show that it is possible to find solutions which allow saving energy without remarkably increasing delay. These solutions can be found in real-time for many instances. In future works, we will design a meta-heuristic algorithm able to find good solutions of the rtECMP for all instances in real-time and we will exploit the results of TDRC-MILP for assessing its behavior. A more ambitious future research direction consists in the integration of the rtECMP and the rtRTMP. In this integrated problem, the decisions to be taken will concern the routing and precedence relationships between trains, together with their energy-efficient speed profiles. This problem has never been dealt with in literature: the effective solution of the rtRTMP alone is nowadays considered an open topic, for which a fully satisfactory approach has not yet been found. Integrating the choice of the optimal (or sufficiently good) speed profiles will greatly increase the difficulty of the problem. Finally, a topic which we will investigate concerns the coordination of decisions in different control areas. Indeed, as done in the rtRTMP literature, TDRC-MILP considers the problem concerning the control area studied as independent from the rest of the network. Instead, undoubtedly the decisions made have an impact on neighboring areas and may influence the behavior of the whole system. The same issue holds when defining routes and precedences in the rtRTMP, for which few studies exist trying to propose methods for coordinating decisions across control areas (Corman et al., 2012). Taking inspiration from these studies, and hopefully 1
For interpretation of color in Fig. 5, the reader is referred to the web version of this article. 536
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
Fig. 5. Train Speed Profile in solutions with different weights of delay and energy consumption in the objective function (11): Energy (α = 1, β = 0.0001), Trade-off (α = 0.5, β = 0.5), Delay (α = 0.0001, β = 1). Table 4 Results with time limit = 900 s, number of subsections = 3 and constraining option not enabled. Perturbation 1
Perturbation 2
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
900 900 900 900 38
0.01 0.01 0.04 0.03 0.00
6816 7932 9612 12,683 16,064
4369 1170 554 131 0
900 900 900 900 33
0.01 0.01 0.02 0.02 0.00
10,228 11,458 12,938 15,187 19,203
4030 953 425 157 0
Perturbation 3
Perturbation 4
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
900 900 900 574 39
0.01 0.01 0.00 0.00 0.00
13,302 14,492 16,329 17,708 19,585
4167 956 321 557 0
900 900 900 900 46
0.02 0.03 0.03 0.02 0.00
10,971 12,231 14,224 16,541 20,855
Energy [MJ] 4365 1194 452 150 0
Table 5 Results with time limit = 900 s, number of subsections = 3 and constraining option enabled. Perturbation 1
Perturbation 2
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
275 149 39 21 12
0.00 0.00 0.00 0.00 0.00
5756 6940 7950 9147 10,700
3701 580 194 37 0
443 229 55 22 12
0.00 0.00 0.00 0.00 0.00
9248 10,537 11,420 11,844 13,676
3472 423 91 26 0
Perturbation 3
Perturbation 4
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
900 354 89 27 14
0.00 0.00 0.00 0.00 0.00
11,937 13,196 14,426 14,976 16,685
3584 557 126 29 0
901 354 61 28 15
0.00 0.00 0.00 0.00 0.00
9880 11,136 12,332 12,858 14,437
537
Energy [MJ] 3826 642 116 36 0
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
Table 6 Results with time limit = 900 s, number of subsections = 4 and constraining option enabled. Perturbation 1
Perturbation 2
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
338 210 60 29 17
0.00 0.00 0.00 0.00 0.00
5779 7065 8341 9757 13,620
4294 770 241 67 0
900 311 52 49 16
0.00 0.00 0.00 0.00 0.00
9450 10,750 11,761 12,427 16,422
3911 559 163 82 0
Perturbation 3
Perturbation 4
α
β
Time [s]
Gap (% )
Delay [s]
Energy [MJ]
Time [s]
Gap (% )
Delay [s]
0.0001 0.25 0.5 0.75 1
1 0.75 0.5 0.25 0.0001
900 495 168 40 21
0.00 0.00 0.00 0.00 0.00
12,233 13,383 15,014 15,680 19,121
4156 762 156 68 0
901 571 279 53 23
0.00 0.00 0.00 0.00 0.00
10,157 11,450 12,848 13,456 18,435
Energy [MJ] 4477 820 152 66 0
from the future ones which will propose general approaches for coordination, we will study how to make wiser decisions in each control area considering the overall system perspective. Acknowledgment This study was partially funded by the CPER ELSAT2020 project co-financed by the European Union with the European Regional Development Fund, the French state and the Hauts-de-France Region Council. Appendix A. Notation In this appendix, we summarize the notation introduced in Sections 5 and 6, and used in Section 7. T: Set of trains that travel in the control area considered B: Set of block sections (including those in stations) in the control area considered i, j, k , l : Respectively, a train, a block section, an initial speed and a driving regime combination Bi : Sequence of block sections along the route of train i, ∀ i ∈ T and Bi ⊆ B Si : Set of block sections located inside stations where train i must stop, ∀ i ∈ T and Si ⊆ Bi COij : Set of allowed driving regime combinations for each train i ∈ T in each block section j ∈ Bi Vi0 : Initial speed for train i in the first block section of its route in the control area considered Vij0 : Set of considered initial speeds for train i in block section j ∈ Bi P jj′: Set containing the ordered pairs (i′, i), i, i′ ∈ T , such that i′ travels j′ ∈ Bi′ before i travels j ∈ Bi , with j and j′ incompatible block sections ji∗: Last block section in Bi , that is, the destination of the route of train i, ∀ i ∈ T s: Number of subsections in a block section h: Number of portions in a subsection for calculation of times, energy consumption and final speeds using the finite difference method LBij : Lower bound of tij, ∀ i ∈ T , j ∈ Bi UBij : Upper bound of tij, ∀ i ∈ T , j ∈ Bi r j : Release time, ∀ j ∈ B f j : Formation time, ∀ j ∈ B wij : Originally scheduled time at which train i should departure from station Si , with block section j ∈ Si, ∀ i ∈ T ei : Originally scheduled time at which train i should exit the last block section of its route, ∀ i ∈ T dij : Minimum dwell time of train i in the station where block section j is located, i, ∀ i ∈ T , j ∈ Si rijkl : Running time of train i on block section j if entering at speed k and using driving regime combination l, ∀ i ∈ T , j ∈ Bi , k ∈ Vij0, l ∈ COij cijkl : Clearing time of train i on block section j if entering at speed k and using driving regime combination l, ∀ i ∈ T , j ∈ Bi , k ∈ Vij0, l ∈ COij Eijkl : Energy consumption of train i on block section j if entering at speed k and using driving regime combination l, ∀ i ∈ T , j ∈ Bi , k ∈ Vij0, l ∈ COij Q (ij)k : Set containing pairs (k ′, l) ∈ (Vij0, COij ) of initial speeds and driving regime combinations that imply k as train final speed when exiting block section j, for train i ∈ T and block section j ∈ Bi . 538
Transportation Research Part D 65 (2018) 524–539
T. Montrone et al.
Appendix B. Results with 900 s as time limit In this appendix, we report the results obtained by TDRC-MILP when the time limit is 900 s. In particular, Tables 4–6 summarize the results of the different configurations tested in terms of number of subsections and constraining option. As the tables shown in Section 8, for each configuration, Tables 4–6 report the average results when varying the weights of energy consumption and delay in the objective function. The average results are given in terms of computation time (either the time at which the optimum was proven or the available one), gap, delay and energy consumption. They are computed across the 50 instances tackled for each perturbation. Remark that the solutions found with different number of subsections and setting of constraining option are not directly comparable. Indeed, as mentioned in Section 8, the normalization factor of the energy consumption in the objective function changes in the different cases. The use of equal normalization factors would allow such a comparison, and hence possibly the qualitative analysis of the setting and of the number of subsections in different situations. Since the main aim of these experiments is to show that it is possible to find relevant solutions to realistic size instances in reasonable times, we considered the comparison and the additional analysis out of the scope of this paper.
References Albrecht, 2005. Energy-efficient train control in suburban railways: experiences gained from onboard tests of a driver assistance system. In: RailDelft: 1st International Seminar on Railway Operations Modelling and Analysis. Delft, Holland. Albrecht, V., Oettich, S., 2002. A new integrated approach to dynamic schedule synchronization and energy saving train control. WIT Trans. Built Environ. 61. Brunger, Dahlhaus, 2009. Railway timetable and traffic: analysis, modelling and simulation. In: Hamburg, Germany (4), pp. 58–82 (Chap. Running Time Estimation). Corman, D’Ariano, Pacciarelli, Pranzo, 2010. A tabu search algorithm for rerouting trains during rail operations. Transport. Res. Part B 44, 175–192. Corman, D’Ariano, Pacciarelli, Pranzo, 2012. Optimal inter-area coordination of train rescheduling decisions. Transport. Res. Part E 48, 71–88. D’Ariano, Corman, Pacciarelli, Pranzo, 2008. Reordering and local rerouting strategies to manage train traffic in real-time. Transport. Sci. 42, 405–419. Howlett, Pudney, 1995. Energy-Efficient Train Control. Springer. IBM, 2016. CPLEX Optimization Studio V12.6.1. < http://www.ibm.com/support/knowledgecenter/SSSA5P_12.6.1/ilog.odms.studio.help/Optimization_Studio/ topics/COS_home.html > (accessed December 2016). Mannino, Lamorgese, 2010. Reordering and local rerouting strategies to manage train traffic in real-time. Transport. Sci. 42, 405–419. Miyatake, Hideyoshi, 2010. Optimization of train speed profile for minimum energy consumption. IEEJ Trans. Electr. Electron. Eng. 5 (3), 263–269. Montrone, 2017. Energy Consumption Minimization in Railway Systems (Ph.D. Thesis). University of Salento, Lecce, Italy. OpenTrack Railway Technology Ltd, 2016. OpenTrack Railway Technolo-gies. < http://www.opentrack.ch > (accessed April 2017). Oxalis, 2013. The European Rail Traffic Management System (ERTMS). < http://http://www.ertms.net// > (accessed April 2017). Pachl, 2008. Railway timetable and traffic: analysis, modelling and simulation. In: Eurailpress, Hamburg, Germany (2), pp. 9–37 (Chap. Timetable Design Principles). Pellegrini, Marliere, Pesenti, Rodriguez, 2015. RECIFE-MILP: an effective MILP-based heuristic for the real-time railway traffic management problem. IEEE Trans. Intell. Transport. Syst. 16 (5), 2609–2619. Pontryagin, Boltyanskii, Gamkrelidze, Mischenko, 1962. The mathematical theory of optimal processes. Interscience Publishers John Wiley & Sons, Inc, New York, London. Rao, 2003. Extension of a pseudospectral legendre method to non-sequential multiple-phase optimal control problems. In: AIAA Guidance, Navigation, and Control Conference, vol. 3, pp. 1961–1979. Rodriguez, 2007. A constraint programming model for real-time train scheduling at junctions. Transport. Res. Part B 41, 231–245. Sama, Pellegrini, D’Ariano, Rodriguez, Pacciarelli, 2016. Ant colony optimization for the real-time train routing selection problem. Transport. Res. Part B 85, 89–108. Scheepmaker, Goverde, Kroon, 2017. Review of energy-efficient train control and timetabling. Eur. J. Oper. Res. 257, 355–376. Song, Song, 2016. A novel dual speed-curve optimization based approach for energy-saving operation of high-speed trains. IEEE Trans. Intell. Transport. Syst. 17, 1564–1575. Su, Li, Tang, Gao, 2013. A subway train timetable optimization approach based on energy-efficient operation strategy. IEEE Trans. Intell. Transport. Syst. 14 (2), 883–893. Su, Tang, Li, Gao, 2014. Optimization of multitrain operations in a subway system. IEEE Trans. Intell. Transport. Syst. 15 (2), 673–684. Vinter, 2000. Optimal Control. Birkhauser, Boston, Basel, Berlin. Wang, De Schutter, Ning, Groot, Van den Boom, 2011. Optimal trajectory planning for trains using mixed integer linear programming. In: ITSC 2011, 14th International IEEE Conference on Intelligent Transportation Systems. Washington, DC, USA, pp. 1598–1603. Wang, Goverde, 2016. Multiple-phase train trajectory optimization with signalling and operational constraints. IEEE Trans. Intell. Transport. Syst. 69, 255–275. Wang, Goverde, Ma, 2015. A multiple-phase train trajectory optimization method under real-time rail traffic management. In: 2015 IEEE 18th International Conference on Intelligent Transportation Systems, pp. 771–776.
539