Railway Track Allocation by Rapid Branching
Railway Track Allocation by Rapid Branching∗
Ralf Borndörfer1 , Thomas Schlechte1 , and Steffen Weider1
1
Zuse-Institute Berlin (ZIB), Takustr. 7, 14195 Berlin, Germany, Email
{borndoerfer, schlechte, weider}@zib.de
Abstract
The track allocation problem, also known as train routing problem or train timetabling problem, is
to find a conflict-free set of train routes of maximum value in a railway network. Although it can
be modeled as a standard path packing problem, instances of sizes relevant for real-world railway
applications could not be solved up to now. We propose a rapid branching column generation
approach that integrates the solution of the LP relaxation of a path coupling formulation of
the problem with a special rounding heuristic. The approach is based on and exploits special
properties of the bundle method for the approximate solution of convex piecewise linear functions.
Computational results for difficult instances of the benchmark library TTPlib are reported.
1998 ACM Subject Classification G.1.6 Optimization, G.2.3 Application
Keywords and phrases track allocation problem, integer programming, rapid branching heuristic, proximal bundle method
Digital Object Identifier 10.4230/OASIcs.ATMOS.2010.13
1
Introduction
Routing a maximum number of trains in a conflict-free way through a track network is
one of the basic scheduling problems for a railway company. This optimal track allocation
problem, also known as train routing problem or train timetabling problem, has received
growing attention in the operations research literature, see [8, 2, 11, 6, 17] for some recent
references. A branch on the study of advanced models that incorporate, e.g., additional
robustness aspects, has already been started, see, e.g., [12]. However, the problem remains
that up to now the basic problem can hardly be solved even for small instances. Corridors
or single stations mark or are quickly beyond the limits of the current solution technology,
such that network optimization problems can not be addressed.
Finding a good track allocation model is a key prerequisite for progress towards the solution
of large-scale track allocation problems. The authors of [4] proposed a novel path coupling
formulation based on train path and track configuration variables. The model provides
a strong LP bound, is amenable to standard column generation techniques, and therefore
suited for large-scale computation. Indeed, it was shown that LP relaxations of large-scale
track allocation problems involving hundreds of potential trains could be solved to proven
∗
This research was funded by the German Federal Ministry of Economics and Technology (BMWi),
project Trassenbörse, grant 19M4031A.
© Ralf Borndörfer, Thomas Schlechte and Steffen Weider;
licensed under Creative Commons License NC-ND
10th Workshop on Algorithmic Approaches for Transportation Modelling, Optimization, and Systems (ATMOS ’10).
Editors: Thomas Erlebach, Marco Lübbecke; pp. 13–23
OpenAccess Series in Informatics
Schloss Dagstuhl Publishing, Germany
14
Railway Track Allocation by Rapid Branching
or near optimality in this way. However, similar results for integer solutions could not be
provided at that time.
This topic is addressed in this paper. Extending the work in [4], we present a sophisticated solution approach that is able to compute high-quality integer solutions for large-scale
railway track allocation problems. Our algorithm is an adaptation of the rapid branching
method introduced in [3] (see also the thesis [20]) for integrated vehicle and duty scheduling
in public transport. The method solves a Lagrangean relaxation of the track allocation
problem as a basis for a branch-and-generate procedure that is guided by approximate LP
solutions computed by the bundle method. This successful second application provides evidence that rapid branching is a general solution method for large-scale path packing and
covering problems.
The paper is structured as follows. Section 2 recapitulates the track allocation problem and
the path configuration model. Section 3 discusses the solution of an associated Lagrangean
relaxation by the bundle method. In Section 4 we adapt the rapid branching heuristic
to deal with track allocation (maximization) problems. Section 5 reports computational
results. We demonstrate that rapid branching can be used to produce high quality solutions
for large-scale track allocation problems.
2
The Track Allocation Problem
We briefly recall in this section a formal description of the track allocation problem; more
details can be found in the articles [5, 8, 2]. Consider an acyclic digraph D = (V, A)
that represents a time-expanded railway network. Its nodes represent arrival and departure
events of trains at a set S of stations at discrete times T ⊆ Z, its arcs model activities of
running a train over a track, parking, or turning around. Let I be a set of requests to route
trains through D. More precisely, train i ∈ I can be routed on a path through some suitably
defined subdigraph Di = (Vi , Ai ) ⊆ D from a starting point si ∈ Vi to a terminal point
S
ti ∈ Vi . Denote by Pi the set of all routes for train i ∈ I, and by P = i∈I Pi the set of all
train routes (taking the disjoint union).
Let s(v) ∈ S be the station associated with departure or arrival event v ∈ V , t(v) the time,
and J = {s(u)s(v) : (u, v) ∈ A} the set of all railway tracks. An arc (u, v) ∈ A blocks
the underlying track s(u)s(v) for the time interval [t(u), t(v)[, and two arcs a, b ∈ A are in
conflict if their respective blocking time intervals overlap. Two train routes p, q ∈ P are
in conflict if any of their arcs are in conflict. A track allocation or timetable is a set of
conflict-free train routes, at most one for each request set. Given arc weights wa , a ∈ A,
P
the weight of route p ∈ P is wp = a∈p wa , and the weight of a track allocation X ⊆ P is
P
w(X) = p∈X wp . The track allocation problem is to find a conflict-free track allocation of
maximum weight.
The track allocation problem can be modeled as a multi-commodity flow problem with
additional packing constraints, see [8, 2, 11]. This model is computationally difficult. We
consider in this article an alternative formulation as a path coupling problem based on ‘track
configurations’ as proposed by the authors of [4]. A valid configuration is a set of arcs on
some track j ∈ J that are mutually not in conflict. Denote by Qj the set of configurations
S
for track j ∈ J, and by Q = j∈J Qj the set of all configurations. Introducing 0/1-variables
xp , p ∈ P , and yq , q ∈ Q, for train paths and track configurations, the track allocation
Ralf Borndörfer, Thomas Schlechte, and Steffen Weider
15
problem can be stated as the following integer program:
(PCP)
max
P
wp xp
(i)
p∈P
s.t.
P
≤ 1,
∀i ∈ I
(ii)
yq
≤ 1,
∀j ∈ J
(iii)
yq
≤ 0,
∀a ∈ A
(iv)
∀ p ∈ P, q ∈ Q
∀ p ∈ P, q ∈ Q.
(v)
(vi)
xp
p∈Pi
P
q∈Qj
P
xp −
a∈p∈P
P
a∈q∈Q
xp , yq
xp , yq
≥ 0,
∈ {0, 1},
The objec (...truncated)