Tree Decomposition Methods for the Periodic Event Scheduling Problem
Tree Decomposition Methods for the Periodic
Event Scheduling Problem
Irving van Heuven van Staereling
Centrum Wiskunde & Informatica
Science Park 123, Amsterdam, Netherlands
/
Abstract
This paper proposes an algorithm that decomposes the Periodic Event Scheduling Problem
(PESP) into trees that can efficiently be solved. By identifying at an early stage which partial solutions can lead to a feasible solution, the decomposed components can be integrated back
while maintaining feasibility if possible. If not, the modifications required to regain feasibility
can be found efficiently. These techniques integrate dynamic programming into standard search
methods.
The performance of these heuristics are very satisfying, as the problem using publicly available
benchmarks can be solved within a reasonable amount of time, in an alternative way than the
currently accepted leading-edge techniques. Furthermore, these heuristics do not necessarily rely
on linearity of the objective function, which facilitates the research of timetabling under nonlinear
circumstances.
2012 ACM Subject Classification Mathematics of computing → Graph algorithms
Keywords and phrases Dynamic Programming, Trees, Periodic Event Scheduling Problem
Digital Object Identifier 10.4230/OASIcs.ATMOS.2018.6
1
Introduction
In many countries with an advanced transport network, the planning process of the transport
provider is an extremely complicated and time-consuming procedure. Due to the applications
of the algorithms proposed in this paper, we focus mainly on the train timetabling process,
although the algorithms presented in this paper are not restricted to this setting. From a
high-level point of view, the planning process for train networks, can be divided into the
following tasks [1]:
1. Network planning: constructing the infrastructure of the railway network.
2. Line planning: determining the routes (and frequencies) of trains within the railway
network.
3. Train timetable generation: determining the arrival and departure times of trains, including their routes through the infrastructure/stations.
4. Rolling stock and personnel planning: assigning the available rolling stock and personnel
to the trips.
5. Real time traffic: ensuring the realization of the planning by solving irregularities (e.g.,
delays) on an operational level.
This paper focuses on a part of the third step within this hierarchy, the design of train
timetables (excluding routing through the infrastructure). Due to the numerous constraints
that are involved in a timetable, it is practically undesirable or even impossible to construct a
feasible timetable manually, which motivates the research for automated timetable generation.
© Irving I. van Heuven van Staereling;
licensed under Creative Commons License CC-BY
18th Workshop on Algorithmic Approaches for Transportation Modelling, Optimization, and Systems (ATMOS
2018).
Editors: Ralf Borndörfer and Sabine Storandt; Article No. 6; pp. 6:1–6:13
OpenAccess Series in Informatics
Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl Publishing, Germany
6:2
Tree Decomposition Methods for the Periodic Event Scheduling Problem
A considerable part of this research is based on the Periodic Event Scheduling Problem
(PESP), as initially proposed in [16]. One of the earlier and more influential solution methods
in a railway timetabling context is found in [15], which briefly will be described further.
Moreover, an overview of the operations research of railway timetabling can be found in [3],
while an overview for the PESP in particular (including extensions) can be found in [5].
Overview
As opposed to the modern solution methods that are based on mathematical programming,
this research combines dynamic programming based methods with heuristics to find feasible
and optimal solutions within the PESP framework. In Section 2, the PESP model will be
discussed, alongside its complexity and differences between the model within this paper and
the models in the literature.
Section 4 considers a special case of the PESP which can be solved efficiently using
dynamic programming, even when a (possibly non-linear) optimization function is used
(the standard PESP is a feasibility problem). This dynamic provides the required insights
to understand several heuristics that will be proposed in Section 5, whose performance is
described in the experimental results in Section 6 and the method is concluded in Section 7.
Sections 1 to 3 contains work that for a large part already has been discussed and/or noted
in the current literature, while Sections 4 until 7 concern own work.
2
Problem description
2.1
The Periodic Event Scheduling Problem
The Periodic Event Scheduling Problem (PESP) aims to schedule a number of events within
a cyclic framework of length T , i.e., all events occur exactly once every cycle. In a railway
timetabling context, examples of such events can be the departure, pass-through or arrival of
a train at a station.
Define V as the set of events that need to be scheduled, and decision variable vi ∈ [0, T )
as the time at which event i takes place for all i ∈ V . Within the standard PESP model
with constraint set A, every constraint a ∈ A may only induce a lower and upper bound,
respectively La and Ua , on the scheduled time difference of two events i and j. Therefore,
constraints can be formulated as:
(vj − vi ) mod T ∈ [La , Ua ]
(1)
for every (i, j) ∈ A. Thus, every constraint can be specified by two events and two constants.
For example, if i and j represent the departure of two different trains from the track, safety
regulations could require the trains to depart at least 3 minutes after each other. In this case,
La = 3 and Ua = 57 to prevent trains (from possibly different cycles) to coincide, assuming
T = 60.
A PESP instance can be transformed and visualized in a directed graph D = (V, A), where
n = |V | is the number of vertices/variables, and m = |A| is the number of arcs/constraints.
For every constraint a, an arc i → j is introduced and labeled with [La , Ua ]. For convenience,
vertices and variables are used as synonyms throughout this paper. The same holds for
constraints and arcs. See Figure 1 for a simple example with only three constraints.
I. I. van Heuven van Staereling
6:3
v1
]
20
5,
[1
[1
0,
20
]
v2
[20, 35]
v3
Figure 1 Example of a PESP instance visualized in a graph (T = 60).
As a notational remark: x mod T is abbreviated to (x)T , where x can be a number, but
also an interval (that will be scaled within the interval [0, T ). Since the graph formulation is
slightly preferred in the literature, this paper adopts the same notation, which allows the
problem to be formally defined as follows.
Periodic Event Scheduling Problem (PESP)
Given:
Goal:
A directed graph D = (V, A), a feasible interval [La , Ua ] for every a = (i, j) ∈ A
and a cycle time T .
Find a v ∈ [0, T )n such that vj − vi ∈ [La , Ua ] for every a = (i, j) ∈ A, or state
infeasibility.
Trivi (...truncated)