Demand-responsive Scheduling in Railway Transportation
Christoph Gr
¨
une
1 a
and Stephan Zieger
2 b
1
Department of Computer Science, RWTH Aachen University, Aachen, Germany
2
Institute of Transport Science, RWTH Aachen University, Aachen, Germany
Keywords:
Integer Programming, Railway Scheduling, Demand-responsive Transport, Rural Railway Networks, Dial-a-
Ride, Timetabling.
Abstract:
Rural rail transportation can contribute significantly to achieving climate goals and encountering mobility
challenges, especially by reactivating currently disused railway lines. Rural areas are mainly characterised
by their dispersed demands. Thus, small highly automated rail vehicles could be operated on-demand and
thus service-oriented. The operation of those networks is complex and the economic efficiency must be corre-
spondingly high. Therefore, optimised resource planning is necessary. The paper focuses on the planning of
a-priori known transport requests.
The paper presents a formulation for the underlying Integer Programming mathematical model that optimises
travel times and number of vehicles used under consideration of railway specific constraints such as headway
times and deadlock prevention. The modelling goes beyond existing Dial-a-Ride approaches and adds the nec-
essary routing constraints for rail systems as well as energy management constraints for potential refuelling or
recharging.
The potential for application of the approach is evaluated in a computational study. A validation scenario
shows in an exemplary manner on the one hand how the constraints affect routing on a single track railway
line and on the other hand how solving the model with a black-box solver such as Gurobi is handled for this
scenario. On a real-world railway line, it can be shown that the Integer Programming solver is able to induce
meaningful results for limited input sizes. Further potential improvements are discussed as well.
1 INTRODUCTION
The Commission of the European Union (European
Commission, 2020) identified several mega trends
that will influence general life in the coming decades.
These include challenges such as climate change, ur-
banisation, the ageing population as well as transport
and behavioural changes. In order to mitigate or even
avoid the consequences, the strengthening of the rail-
way system is an essential factor. Especially in rural
areas, transport services are often poor, non-existent
or discontinued. As demand in rural areas is usually
much lower and more dispersed, smaller automated
rail vehicles are a viable option such as the ANT sys-
tem proposed by Siemens (Schlaht et al., 2018) or
the Aachen Rail Shuttle (Schindler and von Stillfried,
2020).
These small automated trains can operate on a
demand-responsive basis, thereby improving both ac-
a
https://orcid.org/0000-0002-7789-8870
b
https://orcid.org/0000-0003-4936-0018
cessibility and availability of public transport. In this
paper, technical and legal challenges are assumed to
be solved and the focus is on operational questions.
The emphasis here is on the scheduling, routing and
energy management of the vehicles. In contrast to
road transport, rail transport has some other types of
constraints. The degrees of freedom in rail transport
are often lower, but the dependencies are significantly
higher.
1.1 Our Contribution
Our main contribution is the integrated modelling
of scheduling, routing and energy management con-
straints in the railway setting. This integration of the
various constraints goes beyond existing approaches
which are often solved as stages, as discussed in the
Problem Statement. Especially the routing is much
more relevant and complicated in the railway setting
as several constraints such as headway times or dead-
lock prevention are rather specific and much more rel-
Grüne, C. and Zieger, S.
Demand-responsive Scheduling in Railway Transportation.
DOI: 10.5220/0011018700003191
In Proceedings of the 8th International Conference on Vehicle Technology and Intelligent Transport Systems (VEHITS 2022), pages 239-248
ISBN: 978-989-758-573-9; ISSN: 2184-495X
Copyright
c
2022 by SCITEPRESS Science and Technology Publications, Lda. All rights reserved
239
evant.
We develop a model to tackle the overall problem.
With this modelling, effects of infrastructure expan-
sion or the size of the vehicle fleet can be quanti-
fied by using the modelling as a black box. Thus,
different infrastructure variants in combination with
the optimal scheduling solution can be used as a deci-
sion support tool for the implementation of a demand-
responsive railway system.
In the main model, the number of vehicles and re-
quests are fixed and all requests must be served. Fur-
ther objective variants enable for example maximising
the number of passengers served with the available re-
sources. This is relevant when the number of vehicles
is fixed and often there are a few requests which have
extraordinary costs for fulfilling. Another variation
of the objective function is minimising the number of
used vehicles while still fulfilling all requests. Here,
the service quality is of importance, but the reduction
of costs for the acquisition of the vehicles is the main
objective.
1.2 Related Work
The Dial-a-Ride Problem (DARP) has a long stand-
ing history (Stein, 1978). It is a special routing and
scheduling problem in which the users specify re-
quests for their pick-up and drop-off at their origin
and destination, respectively. The objective is usually
to compute a schedule fulfilling several constraints
and maximising the number of transported persons
while minimising the costs doing so. Cordeau and La-
porte (Cordeau and Laporte, 2003; Cordeau and La-
porte, 2007) as well as Ho et al. (Ho et al., 2018)
provide an excellent overview on model variants and
solution techniques.
In contrast to the also well-studied Periodic Event
Scheduling Problem (Serafini and Ukovich, 1989;
Liebchen and M
¨
ohring, 2007) which has many ap-
plications in railway scheduling the DARP is char-
acterised by its irregular requests and corresponding
scheduling. The DARP has been studied mainly for
rubber-tyred systems. Railway systems offer less de-
grees of freedom in terms of moving directions for
example compared to cars. However, the degree of
interdependence is much stronger, e.g. on single track
lines (Szpigel, 1973; Landex, 2009). Several schedul-
ing approaches by means of Integer Programming ex-
ist for the railway scheduling problem (Castillo et al.,
2009; Castillo et al., 2011; Caimi et al., 2017), but
their scope is often limited and concern the construc-
tion of schedules on main lines or improve dispatch-
ing decisions (Weik et al., 2018; Li et al., 2013).
Cats and Haverkamp (Cats and Haverkamp, 2018a;
Cats and Haverkamp, 2018b) assume an automated
demand-repsonsive rail service on main lines and de-
termine the optimal line and station capacity for such
a system. To the best of the authors knowledge this is
the only related work in this setting.
1.3 Outline
The paper’s structure is as follows. In the Prelimi-
naries, the graph representation of the railway infras-
tructure is presented. Following, the problem is stated
informally. In Sec. 3, the main part of the paper, the
model is proposed by means of Integer Programming
and different variants are discussed. Subsequently, a
computational study (Sec. 4) is performed in which
first a validation scenario is investigated and after-
wards a real railway line are subject to the study. Fi-
nally in Sec. 5, the paper is summarised and an out-
look on further open work is discussed.
2 PRELIMINARIES
In the beginning, the abstraction from real-world rail-
way infrastructure to a graph is described. The ab-
straction is necessary to use models which will then
be able to provide decision support for real-world in-
stances. In the end of the section the problem is stated
informally.
2.1 Railway Network Modelling
The railway network consists of several components
and can basically be divided into the line section and
stations as denoted in Fig. 1. The stations are char-
acterised by their capacity for dwelling and the possi-
bility of boarding and alighting passengers. The line,
in turn, is located between two stations and is usu-
ally single or double track. Specifically, in rural ar-
eas, the lines are often single track. Depending on
the underlying protection system, the lines are often
divided into blocks based on the placement of sig-
nals. This segmentation is therefore often modelled
as several sections of the line. Due to the compar-
atively high number of individual train movements,
which strongly stress the capacity, and the technical
possibilities with the use of automated vehicles, a re-
duction of the block sizes is to be aimed for. In this
way, headway times of trains are kept as short as pos-
sible and the capacity is used in the best possible way.
In fact, the use of automated and connected vehicles
likely results in minimum headway times in the realm
of the relative braking distance, i.e. just a few seconds
VEHITS 2022 - 8th International Conference on Vehicle Technology and Intelligent Transport Systems
240
for homogeneous vehicles, and is assumed in the fol-
lowing.
Station
Line
Station
Line
Station
Figure 1: Rail infrastructure with three Stations and a
double-track line as well as a single track line between
those.
The abstraction of the infrastructure is performed
by the introduction of a graph G = (V, E). In Fig. 2 the
exemplary transformation for the infrastructure from
Fig. 1 is depicted. In this graph, the set of vertices
V represents the beginning/end of a block section and
especially the station entrance/exit, i.e. switch areas.
The edge set E models the block sections and station
tracks. Generally the edge set is undirected, but if the
direction of movement is relevant, e.g. due to signals
on a double track section, the undirected edges can be
turned into directed arcs. In case the distance between
two stations is longer than one time step, the edge can
be subdivided into a path of appropriate length.
1
1
1
1
1
1
1 1 1 1
3
4 2
Figure 2: Example mesoscopic infrastructure abstraction by
means of a graph with appropriate edge capacities.
The model is focused on the usage of the edges
and therefore they contain several properties. First
of all, they have a capacity, which is usually one be-
cause, for safety reasons, only one train is allowed to
be within one section at any given time. We abstract
the trains’ pre- and post-occupation of sections as they
are likely to traverse the network as ”moving block”.
In stations, the edge capacity determines the number
of vehicles the station can withhold and can alterna-
tively be modelled as multigraph if all edges should
have capacity equal to one. Additionally, edges in-
clude the information about the travel time on those.
These have to be integer and longer sections are usu-
ally split up such that each edge needs one time step
to be traversed.
2.2 Problem Statement
Usually, the transport planning problem consists of
a series of hard tasks which are often executed one
after each other. These are demand estimation,
line planning, scheduling, platform and track assign-
ment, rolling stock planning, crew scheduling as well
as shunting and maintenance planning (Goossens,
2004). In the case of highly automated unmanned ve-
hicles, the problem reduces to the scheduling, plat-
form and track assignment as well as rolling stock
assignment aspects. In fact, the routing of trains of
capacity greater than one, which is a sub-problem of
this problem, is already NP-hard (Guan, 1998). Thus,
this problem is expected not to be solvable efficiently.
The task is to find a feasible schedule transport-
ing the passengers directly from origin to destination
while fulfilling all routing and energy management
constraints, if possible. The resulting schedule should
minimise the costs, i.e. the number of train move-
ments. Other possible objectives are discussed in
Sec. 3.2. The passengers specify their origin and des-
tination along with some time window each. When
the passengers board or alight, the trains will need to
be assigned some dwell time to give sufficient time
for doing so. The vehicles operated on the network
are constrained by their capacity, i.e. the number
of passengers which can be transported at the same
time, and the energy capacity. Often, rural railway
lines are not electrified and thence the vehicles have
to recharge or refuel after some time.
The railway system is characterised by strong in-
terdependencies. One prime example is the minimum
headway time, i.e. the least amount of time which has
to pass between two successive (or opposing) trains
such that the second train can move unhindered from
the first train. The trains therefore need to have suffi-
cient spacing between each other.
3 MIXED INTEGER
PROGRAMMING
FORMULATION
In the following, the problem is to be modelled by
means of an Integer Programming formulation. In
the first part, an overview on the notation is given.
Then, the model is presented and the constraints are
explained. Finally, necessary modifications for differ-
ent objective variants are discussed.
3.1 Model
The relevant notation of the model is summarised in
Tab. 1. The table contains the description of the graph,
sets, parameters and variables.
Illustrating the use of the tracker variables for the
passengers and vehicles, Fig. 3 depicts the states for
passenger p assigned to train r. It can be seen that
each passenger is always in a clearly defined and dis-
Demand-responsive Scheduling in Railway Transportation
241
Table 1: Relevant notation for the model.
G Underlying graph
V (G) Vertex set of graph G
H(G) V (G) Station vertex set
D H(G) Depot vertex
E(G) Edge set of graph G
H
E
(G) E(G) Station edge (platform) set
D
E
E(G) Depot edge
c
e
Vehicle Capacity of edge e E(G)
R Set of all vehicles
P Set of all passengers
T Time horizon
T Set of all timestamps of the discretised interval [0, T ]
s(p) Start station vertex of passenger p P
s
e
(p) Start station edge of passenger p P
d(p) Destination station vertex of passenger p P
d
e
(p) Destination station edge of passenger p P
W
s
(p) Start time window for passenger p P
W
d
(p) Destination time window for passenger p P
w Dwell time at stations
L(p) Distance from s(p) to d(p) for p P
ε Percentage distance extension
c(r) Passenger capacity of vehicle r R
˙
E(r) Charging speed of vehicle r R
c
E
(r) Energy storage capacity of vehicle r R
hs
t
p
, y
t
p
, hd
t
p
, ad
t
p
Auxiliary variables {0,1}
M
·,·
, W Big-M-parameters
x
t
r,e
Is vehicle r R using edge e E(G) at time t
¯
T ? {0,1}
y
t
r, p
Is person p P in vehicle r R at time t
¯
T ? {0,1}
a
t
h, p
Is person p P at station h {s(p), d(p)} H(G) at time t
¯
T ? {0,1}
h
t
r,h, p
Does vehicle r R dwell for passenger p P
at stations h {s(p), d(p)} H(G) at time t
¯
T ?
{0,1}
f
t
r
Does vehicle r R refuel/recharge at time t
¯
T ? {0,1}
v
r, p
Does vehicle r R transport passenger p P? {0,1}
tinct state. In the beginning, they wait for the train,
then they board the train at their origin, travel to their
destination and alight there and, finally, their request
is completed.
t
0
1
a
t
s(p), p
h
t
r,s(p), p
y
t
r,p
h
t
r,d(p), p
a
t
d( p), p
p waits for r
p enters r
p travels in r
p disembarks from r
p has arrived
Figure 3: The plot of the 5 tracker variables a
t
s(p), p
, h
t
r,s(p), p
,
y
t
r, p
, h
t
r,d(p), p
, a
t
d(p), p
.
Following, the objective and constraints are pre-
sented and explained below.
min
rR
eE\H
E
t
¯
T
x
t
r,e
(1)
The objective in Eq. (1) minimises the number of used
edges which are not station edges, i.e. travelled dis-
tance of all vehicles is minimised. In consequence,
the vehicles only move if absolutely necessary and
the objective can be understood as the minimisation
of operation costs for the operator given the set of ve-
hicles.
eE
x
t
r,e
= 1 r R, t
¯
T (2)
e
0
N
e
[e]
x
t1
r,e
0
x
t
r,e
r R, e E, t
¯
T \ {0} (3)
Eq. (2) ensures that each of the vehicles is located on
exactly one edge for each time step. Together with
Eq. (3), the vehicles then can only move to adjacent
edges and a flow conservation in the time-expanded
VEHITS 2022 - 8th International Conference on Vehicle Technology and Intelligent Transport Systems
242
graph is enforced. The neighbourhood N
e
[e] is closed
as vehicles have to be able to wait or dwell, e.g. in
front of switches or in stations while waiting for the
next passenger request.
rR
v
r, p
= 1 p P (4)
h
t
r,s(p), p
v
r, p
r R, p P, t
¯
T (5)
y
t
r, p
v
r, p
r R, p P, t
¯
T (6)
h
t
r,d(p), p
v
r, p
r R, p P, t
¯
T (7)
Eq. (4) assigns each passenger to a vehicle such that
all passenger requests have to be served. The follow-
ing three equations (5)-(7) ensure that the tracker vari-
ables h
t
r,s(p), p
, y
t
r, p
and h
t
r,d(p), p
for each passenger and
vehicle pair can only be activated if the passenger is
assigned to the vehicle.
pP
y
t
r, p
c(r) r R, t
¯
T (8)
rR
x
t
r,e
c
e
e E, t
¯
T (9)
The next two equations are concerning capacities.
Eq. (8) enforces the vehicle’s capacity c(r) not to be
exceeded, i.e. at most c(r) passengers are able to
travel in one vehicle at the same time. The second
part limits the line capacity depending on the avail-
able infrastructure. In the same time step, only one
vehicle is allowed at each line section and therefore
c
e
is usually set to one for the open line. This con-
straint ensures a safety distance between two succes-
sive trains which is known as the minimum headway
distance. On a single track line the constraint further-
more prevents deadlocks, i.e. two trains facing each
other without the chance of evasion. In stations, c
e
denotes the number of vehicles a station can contain
at each step in time.
tW
s
(p)
h
t
r,s(p), p
1 p P (10)
tW
d
(p)
h
t
r,d(p), p
1 p P (11)
Eqs. (10) and (11) allow the specification of time win-
dows for boarding and alighting for each passenger.
With these equations it is possible to map the passen-
gers (dis-)satisfaction with waiting times.
t
¯
T
y
t
r, p
(1 + ε)L
p
r R, p P (12)
Besides the waiting times, users expect not to take ex-
tended detours between their starting point location
and destination. Eq. (12) allows to define an accepted
detour factor ε extending the length of the shortest
path L(p).
c
E
(r) +
t
0
[0,t]
(
˙
E(r) f
t
0
r
eE\E
H
x
t
0
r,e
) c
E
(r)
r R, t
¯
T (13)
c
E
(r) +
t
0
[0,t]
(
˙
E(r) f
t
0
r
eE\E
H
x
t
0
r,e
) 0
r R, t
¯
T (14)
f
t
r
x
t
r,D
E
r R, t
¯
T (15)
The Eqs. (13)-(15) are concerned with the charging
process. Each vehicle starts with a full charge c
E
(r).
Subsequently, exactly
˙
E(r) units of energy can be re-
generated in each charging step ( f ). For simplifi-
cation, only the movement costs one unit of energy.
Eq. (13) ensures that charging does not exceed the en-
ergy capacity c
E
(r) of a vehicle. At the same time,
Eq. (13) ensures that there is always enough energy.
The last constraint guarantees that the vehicle is at the
depot when it is charging.
a
0
s(p), p
= 1 p P (16)
a
T
s(p), p
= 0 p P (17)
y
0
r, p
= 0 r R, p P (18)
y
T
r, p
= 0 r R, p P (19)
a
0
d(p), p
= 0 p P (20)
a
T
d(p), p
= 1 p P (21)
Eqs. (16)-(21) set the variables which have to be fixed
in the beginning or end. In the beginning (Eqs. (16)-
(17)), the passengers are definitely waiting at their
starting point location s(p) and will not be waiting
there at the end of the time horizon. Each passenger
p can only be transported in a vehicle r after waiting
at the starting point location s(p) and before reaching
their destination d(p). Therefore, the y-variable is set
to 0 in the beginning and end of the time horizon in
Eqs. (18) and (19). Finally, the passengers are never
located at their destination d(p) at the beginning of
the time horizon, but are definitely there at the end.
rR
t
¯
T
h
t
r,s(p), p
1 p P (22)
rR
t
¯
T
y
t
r, p
1 p P (23)
rR
t
¯
T
h
t
r,d(p), p
1 p P (24)
Each passenger has to be transported. To ensure that
all necessary variables are at least enabled once dur-
ing the time horizon, Eqs. (22)-(24) enforce setting
each to one for at least one time step. The a-variables
already fulfil this demand as per the previous set of
equations.
Demand-responsive Scheduling in Railway Transportation
243
a
t
s(p), p
+
rR
(h
t
r,s(p), p
+ y
t
r, p
+ h
t
r,d(p), p
) + a
t
d(p), p
= 1
p P, t
¯
T (25)
x
t
r,s
e
(p), p
h
t
r,s(p), p
r R, p P, t
¯
T (26)
x
t
r,d
e
(p), p
h
t
r,d(p), p
r R, p P, t
¯
T (27)
y
t
r, p
1 a
tw
s(p), p
r R, p P, t
¯
T , t w (28)
y
tw
r, p
1 a
tw
d(p), p
r R, p P, t
¯
T , t w (29)
Every passenger has to be in one of the states (wait-
ing at the station before boarding, boarding, driving,
alighting, service finished) during the time horizon.
Therefore, Eq. (25) enforces one of the corresponding
variables always to be set to one. Eqs. (26)-(27) con-
nect the waiting state of the passenger for boarding
and alighting with the position of the allocated vehi-
cle. This implies the vehicle to move to the boarding
edge, travel with the passenger and stop at the alight-
ing edge as well. The passengers are allowed some
time w for boarding and alighting and Eqs. (28)-(29)
take these constraints into account.
hs
t1
p
hs
t
p
(30)
rR
h
t
r,s(p), p
6= 1 + M
11
h
d1
(31)
hs
t
p
= 1 + M
11
(1 h
d1
) (32)
hs
t
p
6= 1 + M
12
h
d2
(33)
a
t
s(p), p
= 0 + M
12
(1 h
d2
) (34)
y
t1
p
y
t
p
(35)
rR
y
t
r, p
6= 1 + M
21
y
d1
(36)
y
t
p
= 1 + M
21
(1 y
d1
) (37)
y
t
p
6= 1 + M
22
y
d2
(38)
p P, t
¯
T \ {0}
h
t
r,s(p), p
= 0 + M
22
(1 y
d2
) (39)
r R, p P, t
¯
T \ {0}
hd
t1
p
hd
t
p
(40)
rR
h
t
r,d(p), p
6= 1 + M
31
hd
d1
(41)
hd
t
p
= 1 + M
31
(1 hd
d1
) (42)
hd
t
p
6= 1 + M
32
hd
d2
(43)
p P, t
¯
T \ {0}
y
t
r, p
= 0 + M
32
(1 hd
d2
) (44)
r R, p P, t
¯
T \ {0}
ad
t1
p
ad
t
p
(45)
rR
a
t
d(p), p
6= 1 + M
41
ad
d1
(46)
ad
t
p
= 1 + M
41
(1 ad
d1
) (47)
ad
t
p
6= 1 + M
42
ad
d2
(48)
p P, t
¯
T \ {0}
h
t
r,d(p), p
= 0 + M
42
(1 ad
d2
) (49)
r R, p P, t
¯
T \ {0}
Eqs. (30)-(49) introduce many auxiliary variables.
Each 5-tuple of constraints follows the same pat-
tern. The general idea is to ensure that the pas-
sengers are handled in the correct order of variables
(a
t
s(p), p
, h
t
r,s(p), p
, y
t
r, p
, h
t
r,d(p), p
, a
t
d(p), p
). In some cases,
e.g. with very loose time windows, the chronological
order of the service is not imposed directly. There-
fore, these additional constraints need to be incorpo-
rated. For the sake of the argument, the general pro-
cedure for each block of constraints is discussed by
means of the first set as all of those work the exact
same way. The blocks are written in non-standard
form on purpose for better readability. All transfor-
mation steps are done according to Bisschop (Biss-
chop, 2006, Chap. 7).
First, an auxiliary variable hs
t
p
is introduced which
ensures that once the corresponding tracker variable
h
t
r,s(p), p
became active the auxiliary variable is always
set to one. The following two constraints state that
if the corresponding tracker variable h
t
r,s(p), p
is set to
one (A) then the auxiliary variable hs
t
p
is set to one as
well (B). From this moment on, hs
t
p
will be set to one
even if h
t
r,s(p), p
is already set to zero again.
Let ¬A and ¬B denote the negation of A and B as
usual. Then the statement ”if A then B is equivalent
to the logical expression ”(A and ¬B) is false”. The
negation ”¬ (¬A and B)” is then true. This in turn is
equivalent to state ”(¬A or B) is true” which is repre-
sented by Eqs. (31) and (32) using the Big-M-method.
The final two equations in this block work the exact
same way and state that if the auxiliary variable hs
t
p
is set to to one the previous tracker variable a
t
s(p), p
cannot be one anymore and will not be so, too. This
ensures that exactly one tracker variable is set to one
for each passenger for each time step.
VEHITS 2022 - 8th International Conference on Vehicle Technology and Intelligent Transport Systems
244
3.2 Variants
The problem as is can be used in different variants
covering different objectives. These also have strong
implications on economic factors and passenger satis-
faction. In the model presented above, all passengers
have to be served and all vehicles could potentially be
used, even if unnecessary, as only the number of used
edges outside the station is relevant and penalised in
the objective function.
First, it might not be possible to serve all request
with the available amount of vehicles. Then, the
model would just return that there exists no feasible
solution. Another approach is to maximise the num-
ber of serviced passengers while still minimising the
costs for doing so. This goal can be achieved by alter-
ing the objective function (Eq. (1)) to
minW (
rR
pP
v
r, p
)
+
rR
eE\H
E
t
¯
T
x
t
r,e
. (50)
Some large enough value W ensures that the first part
of the sum is always relevant and thus the number of
passengers is indeed maximised.
Second, from an economical point of view it
makes sense to minimise the number of vehicles in
usage. Therefore, one possibility is specifying for
example the number of vehicles equal to the num-
ber of passengers and then find out how many vehi-
cles are necessary at all. Therefore, another variable
v
r
{0, 1} is introduced indicating if a vehicle is used.
The objective (Eq. (1)) changes to
minW
rR
v
r
+
rR
eE\H
E
t
¯
T
x
t
r,e
(51)
and the following constraint is necessary
pP
v
r, p
|P|
v
r
r R. (52)
For each vehicle r R, the number of passengers
(v
r, p
) that have used it is counted and the sum is then
divided by |P|. Since v
r
is an integer, the variable is
always set to 1 if and only if the vehicle is used and,
by the objective function, to 0 otherwise.
4 COMPUTATIONAL STUDY
In this section, at first two scenarios for testing the
implementation of the model are described. One of
them is a pure validation scenario presenting the con-
flict management on single track sections. Next, the
framework of the implementation is presented. Fi-
nally, some results are discussed for the two scenarios
which will be the bridge to the conclusion of the pa-
per.
4.1 Scenario Description
In order to evaluate the solving procedure on the
mathematical programming formulation two different
railway networks are used.
The first instance is a simple artificial infrastruc-
ture of two stations with a short single track line in be-
tween. This infrastructure is used to perform parame-
ter tests and to validate the correctness of the mathe-
matical programming formulation, especially with re-
gard to conflict detection and avoidance. In Fig. 4 the
route map can be found. The numbers correspond to
the mileage of the stations.
(0.0) Station 1
(2.0) Station 2
Figure 4: Route map of the validation instance.
Additionally, the solution procedure is tested
against a real-world infrastructure as an illustra-
tive example. The former railway line Solingen–
Wuppertal-Vohwinkel connected the towns Solingen
and Wuppertal, both in North Rhine-Westphalia, Ger-
many. Most of the line is disused, partly even disman-
tled. The 22 km long railway line is mostly single-
track and has 10 stations. Fig. 5 presents a the route
map for this railway line.
(0.0) Solingen Hbf
(4.9) Weyersberg
(5.6) Solingen (Weyersberg)
(6.0) Solingen Gr
¨
unewald
(6.2) Solingen S
¨
ud
(6.8) Solingen Mitte
(8.5) Solingen Nord
(10.1) Solingen-Wald
(15.4) Solingen-Gr
¨
afrath
(22.0) Wuppertal-Vohwinkel
Figure 5: Route map of the railway line Solingen—
Wuppertal-Vohwinkel.
4.2 Framework
The model is the integral part within the procedure
which is implemented in Matlab 2019b (MATLAB,
2020) as a frame. There, the infrastructure and re-
quest generation is performed. The model itself
is written according to the specifications of ZIMPL
(Koch, 2005) which is then also used to transform
the text model into a machine readable model file.
Demand-responsive Scheduling in Railway Transportation
245
Then, Gurobi (Gurobi Optimization, 2020) is used
as a solver and the output is evaluated and visu-
alised within Matlab again. The computations are
performed on a machine with an i5-6500@3.2GHz (4
Cores) with 16 GB RAM.
4.3 Results
In the first part, some results are presented for the val-
idation scenario and then for the real-world example.
c = 1 c = 1
c = 3 c = 3
(a) Graph representation for the validation
infrastructure.
1 2
Stations
0
5
10
Time
Train 1
Train 2
Train 3
(b) One optimal schedule for the validation
scenario.
0 200 400 600 800
Time [s]
0
20
40
60
80
100
Gap [%]
T = 30
T = 20
T = 15
T = 10
(c) Gap over the runtime for different time
windows.
Figure 6: Results for the validation scenario.
The abstraction of the route map can be seen in
Fig. 6a. Assuming that the vehicles travel at an aver-
age speed of about 60 km/h, this results in a distance
of about 1 km per minute. The minute measure also
seems to be a good time length for the time steps in
the following cases. In general, there is a trade-off be-
tween the accuracy of the modelling and the efficient
computability of the solution.
The graph consists of the two stations with self
loops (platforms) and an intermediate node that acts
as a separator for subsequent train runs. To illustrate,
3 passengers are to travel from one station to the other,
respectively, each vehicle can only transport 1 person
and the time window is set to 10 minutes and starts at
time step 0. In Fig. 6b an optimal solution is plotted as
a time-distance diagram. Due to the limited time win-
dow, the requests have to be bundled and processed
directionally one after the other. This allows the trains
to follow each other in the same direction with one
time unit between them. If the trains were to run al-
ternately, two time units would be blocked for each
train.
In Fig. 6c the gaps between the found solution and
the proven lower bound are presented over a maxi-
mum computing time of 15 minutes for the same sce-
nario, but with an increasing time window. It can
be observed that just by increasing the time window
slightly, an optimal solution is found within seconds,
but this cannot be effectively proven by the solver us-
ing the lower bound. Due to the high number of sym-
metries and the almost arbitrary pattern according to
which the requests can be processed, there are likely
problems in quickly proving the optimum. Lower
bounds can be helpful here, such as
pP
dist(s
e
(p), d
e
(p))
max
rR
c(r)
,
which would also have given the value 12 (6 requests
with length 2 each) as the correct lower bound for this
instance.
In the second part, the operation on the railway
line Solingen–Wuppertal-Vohwinkel is examined as
an example. The resulting graph consists of 27 ver-
tices and 36 edges on which the vehicles are routed.
The case study is performed with the following set
of parameters. The number of passengers ranges be-
tween 5 and 20, and the vehicles between 2 and 6. A
time frame as well maximum ride time of 120 minutes
is set and each time step corresponds to one minute
which seems appropriate for a reasonable segmenta-
tion of this line. The requests are generated randomly
with a uniform distribution along the line. Their start
time within the first 80 time steps is distributed uni-
formly as well. Additionally, a time window of 10
minutes allows some flexibility in handling and pool-
ing the requests. The dwell time is set to one minute
and the vehicle is able to accommodate 5 passengers.
In this scenario charging is not considered to decrease
the complexity.
Each of the scenarios is set up 100 times and each
trial has a time limit of 3 minutes for the optimisation.
A summary of the runs is displayed in Fig. 7
First of all, it must be mentioned that the number
of feasible instances or instances for which a feasi-
ble solution was found within 3 minutes varies for the
different cases. While in the first scenarios a feasi-
ble solution could still be found for almost all cases,
there are, for example, only 3 feasible solutions for
15 passengers and 6 trains. For three scenarios, no
feasible solutions were found or generated at all. In
some cases, it is also intuitive that there are fewer
VEHITS 2022 - 8th International Conference on Vehicle Technology and Intelligent Transport Systems
246
5 Pax 10 Pax 15 Pax 20 Pax
2T 3T 4T 5T 6T 2T 3T 4T 5T 6T 2T 3T 4T 5T 6T 2T 3T 4T 5T 6T
0
0.2
0.4
0.6
0.8
1
MIPGap
(a) Gap over different passenger (Pax) and train (T) sce-
narios.
5 Pax 10 Pax 15 Pax 20 Pax
2T 3T 4T 5T 6T 2T 3T 4T 5T 6T 2T 3T 4T 5T 6T 2T 3T 4T 5T 6T
0
20
40
60
80
100
120
140
160
180
Computation Time [s]
(b) Computation time over different passenger (Pax) and
train (T) scenarios.
Figure 7: Results for the computational study on the
Solingen–Wuppertal-Vohwinkel railway line.
feasible solutions. For example, it is more difficult
to transport 15 passengers with 2 trains rather than
with 5 trains, especially if the requests are distributed
over the whole line. On the other hand, more trains
also create significantly more conflicts, which lead to
greater complexity in finding a feasible solution and
are also more challenging to coordinate operationally.
In Fig. 7a the relative gap between primal and dual
solution of the optimisation problem (MIPGap) is de-
picted. To begin with, it can be observed that the gap
is always less than 1. This seems to indicate an under-
lying structure of the problem that the solver knows
to exploit. Furthermore, with the exception of one
outlier (15 passengers, 6 trains), it is evident that the
problem size is increasing and that better solutions
can be found more quickly for smaller scenarios.
Fig. 7b provides an insight on the actually used
computation time. Ignoring the outlier (15 passen-
gers, 6 trains) again, it can be observed that basically
only with the smallest train fleet (2 trains) the compu-
tation took sometimes less than 3 minutes finding an
optimal or close to optimal solution.
The black-box pre-solving already indicates that
there seems to be potential for strong pre-processing
enabling the processing of larger instances. The de-
termination of the infeasibility of an instance is often
reached within the first few seconds, which is crucial
because if the timeout were to occur without a solu-
tion, the situation with no solution and with a solution
not yet found would be indistinguishable.
5 CONCLUSION
Offering demand-responsive transport on rails can in-
crease the attractiveness, availability and accessibil-
ity of public transport, especially in rural areas. This
necessitates the efficient use of resources, which re-
quires an optimisation of the activities involved. The
Integer Program presented in Sec. 3 models the prob-
lem with many facets.
Due to the time sensitive encoding of the vari-
ables, e.g. the dependence on time steps even in those
in which nothing happens the instance size grows very
fast. Correspondingly, the computation time is very
sensitive on the size of the time horizon. Some con-
straints, e.g. the enforced correct processing order in
Eq. (30)-(49), are not always necessary or even re-
dundant, but in some cases such as very large time
windows they are necessary.
All in all, the run time can possibly be de-
creased by either tuning black-box solvers such
Gurobi (Gurobi Optimization, 2020) for this task or
developing dedicated tailored algorithms such as by
Castillo et al. (Castillo et al., 2009). This approach
could then be supported by significant pre-processing.
Another possibility is the development of heuristics
which provide (ideally provable) good solutions for
the problem. Besides the improvement of computa-
tion, the problem clearly demands for a robust formu-
lation which should be a logical next step. The vari-
ations in the requests over an extended period, e.g. a
year, should be considered as uncertain input and an
operator should be able to handle different scenarios.
The corresponding number of vehicles should be able
to satisfy the varying demand. Conclusively, the prob-
lem deserves a lot of attention and has much room for
improvement in various directions.
ACKNOWLEDGEMENTS
This work is funded by the Deutsche Forschungsge-
meinschaft (DFG, German Research Foundation)
2236/1.
REFERENCES
Bisschop, J. (2006). AIMMS optimization modeling.
Demand-responsive Scheduling in Railway Transportation
247
Caimi, G., Kroon, L., and Liebchen, C. (2017). Models for
railway timetable optimization: Applicability and ap-
plications in practice. Journal of Rail Transport Plan-
ning & Management, 6(4):285–312.
Castillo, E., Gallego, I., Ure
˜
na, J. M., and Coronado, J. M.
(2009). Timetabling optimization of a single railway
track line with sensitivity analysis. TOP, 17:256–287.
Castillo, E., Gallego, I., Ure
˜
na, J. M., and Coronado, J. M.
(2011). Timetabling optimization of a mixed double-
and single-tracked railway network. Applied Mathe-
matical Modelling.
Cats, O. and Haverkamp, J. (2018a). Optimal infrastructure
capacity of automated on-demand rail-bound transit
systems. Transportation Research Part B: Method-
ological, 117:378–392.
Cats, O. and Haverkamp, J. (2018b). Strategic planning
and prospects of rail-bound demand responsive tran-
sit. Transportation Research Record, 2672:404–410.
Cordeau, J. F. and Laporte, G. (2003). The Dial-a-Ride
Problem (DARP): Variants, modeling issues and al-
gorithms. 4OR, 1:89–101.
Cordeau, J. F. and Laporte, G. (2007). The dial-a-ride prob-
lem: Models and algorithms. Annals of Operations
Research, 153:29–46.
European Commission (2020). Transforming europe’s rail
system.
Goossens, J.-W. (2004). Models and algorithms for railway
line planning problems.
Guan, D. J. (1998). Routing a vehicle of capacity greater
than one. Discrete Applied Mathematics, 81(1):41
57.
Gurobi Optimization (2020). Gurobi optimizer reference
manual.
Ho, S. C., Szeto, W. Y., Kuo, Y.-H., Leung, J. M. Y., Peter-
ing, M., and Tou, T. W. H. (2018). A survey of dial-a-
ride problems: Literature review and recent develop-
ments. Transportation Research Part B: Methodolog-
ical, 111:395–421.
Koch, T. (2005). Rapid mathematical programming.
Landex, A. (2009). Evaluation of railway networks with
single track operation using the uic 406 capacity
method. Networks and Spatial Economics, 9(1):7–23.
Li, F., Gao, Z., Li, K., and Wang, D. Z. (2013). Train routing
model and algorithm combined with train scheduling.
Journal of Transportation Engineering, 139:81–91.
Liebchen, C. and M
¨
ohring, R. H. (2007). The modeling
power of the periodic event scheduling problem: rail-
way timetables—and beyond.
MATLAB (2020). version 9.7.0 (R2019b). The MathWorks
Inc.
Schindler, C. and von Stillfried, A. (2020). Fahren auf Sicht
- Ein Betriebskonzept f
¨
ur den fahrerlosen Nahverkehr.
Eisenbahntechnische Rundschau, 69(10):22–27.
Schlaht, J., Frink, L., Laumen, P., Pfeifer, A., Schindler,
C., and Nießen, N. (2018). Automated Nano Trans-
port System - Ansatz zur Entwicklung autonomer
Schienenfahrzeuge. In Proceedings of the 1st Inter-
national Railway Symposium Aachen, pages 60–77.
Serafini, P. and Ukovich, W. (1989). A mathematical model
for periodic scheduling problems. SIAM Journal on
Discrete Mathematics, 2:550–581.
Stein, D. M. (1978). Scheduling dial-a-ride transportation
systems. Transportation Science, 12:232–249.
Szpigel, B. (1973). Optimal train scheduling on a single
line railway.
Weik, N., Zieger, S., and Nießen, N. (2018). Traffic
management heuristics for bidirectional segments on
double-track railway lines. In Operations Research
Proceedings 2017, pages 729–735. Springer.
VEHITS 2022 - 8th International Conference on Vehicle Technology and Intelligent Transport Systems
248