category: literaturenote citekey: schmidtintegratingroutingdecisionspublic2014 title: Integrating Routing Decisions in Public Transportation Problems authors: "Schmidt, Marie E." year: 2014 date: 2014-00-00 2014 doi: 10.1007/978-1-4614-9566-6 url: "https://doi.org/10.1007/978-1-4614-9566-6" zotero_key: ZGPZFWV7 zotero_storage: 9X58C8UQ collections: transpordi_planeerimine folder: 001_artiklid firstAuthor: "Schmidt, Marie E."
Marie E. Schmidt
Managing Editor Panos M. Pardalos (University of Florida)
Editor–Combinatorial Optimization Ding-Zhu Du (University of Texas at Dallas)
Advisory Board
J. Birge (University of Chicago)
C.A. Floudas (Princeton University)
F. Giannessi (University of Pisa)
H.D. Sherali (Virginia Polytechnic and State University)
T. Terlaky (McMaster University)
Y. Ye (Stanford University)
Optimization has been expanding in all directions at an astonishing rate during the last few decades. New algorithmic and theoretical techniques have been developed, the diffusion into other disciplines has proceeded at a rapid pace, and our knowledge of all aspects of the field has grown even more profound. At the same time, one of the most striking trends in optimization is the constantly increasing emphasis on the interdisciplinary nature of the field. Optimization has been a basic tool in all areas of applied mathematics, engineering, medicine, economics, and other sciences.
The series Springer Optimization and Its Applications publishes undergraduate and graduate textbooks, monographs and state-of-the-art expository work that focus on algorithms for solving optimization problems and also study applications involving such problems. Some of the topics covered include nonlinear optimization (convex and nonconvex), network flow problems, stochastic optimization, optimal control, discrete optimization, multi-objective programming, description of software packages, approximation techniques and heuristic approaches.
For further volumes:
http://www.springer.com/series/7393
Marie E. Schmidt Institute for Numerical and Applied Mathematics Göttingen, Germany
ISSN 1931-6828 ISSN 1931-6836 (electronic) ISBN 978-1-4614-9565-9 ISBN 978-1-4614-9566-6 (eBook) DOI 10.1007/978-1-4614-9566-6 Springer New York Heidelberg Dordrecht London
Library of Congress Control Number: 2013957935 Mathematics Subject Classification (2010): 90-02
This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. Exempted from this legal reservation are brief excerpts in connection with reviews or scholarly analysis or material supplied specifically for the purpose of being entered and executed on a computer system, for exclusive use by the purchaser of the work. Duplication of this publication or parts thereof is permitted only under the provisions of the Copyright Law of the Publisher's location, in its current version, and permission for use must always be obtained from Springer. Permissions for use may be obtained through RightsLink at the Copyright Clearance Center. Violations are liable to prosecution under the respective Copyright Law.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use.
While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made. The publisher makes no warranty, express or implied, with respect to the material contained herein.
Printed on acid-free paper
Springer is part of Springer Science+Business Media (www.springer.com)
To model and solve optimization problems arising in public transportation planning, data about the passengers is necessary and has to be included in the models in any phase of the planning process. In particular, when aiming at minimizing the passengers' travel time, information about passengers' travel routes is indispensable. For example, if many passengers travel between two stations using the same route, it may be beneficial to establish a high-speed line on this route; a good timetable should offer low waiting times for connections with high passenger numbers.
For this reason, many solution approaches assume a two-step procedure: in the first step, passenger routes are determined using shortest path, flow, or traffic assignment procedures. In the second step, the actual planning of lines, timetables, etc., is done. This approach ignores that for most passengers there are many possible ways to reach their destinations in the public transportation network; thus, the actual connections the passengers will take depend strongly on the decisions made during the planning phase.
In this book we aim at integrating the route determination procedure in the optimization process of public transportation problems. We consider three planning problems arising in public transportation planning: line planning specifies the paths and frequencies of the train lines to be established based on data about the infrastructure; timetabling determines arrival and departure times of trains at stations; and the task of delay management is to decide whether trains should wait for feeder trains or depart on time in case of delays. In order to maximize the passengers' benefit, our objective is the minimization of the passengers' overall travel time.
After formulating suitable network models for the considered problems with integrated routing, we investigate the computational complexity of the integrated problems. We prove NP-hardness results and derive polynomial algorithms for special cases, furthermore we investigate the approximability of some of the vi Preface
considered problems. For solving the integrated problems, we present exact integer programming approaches as well as a heuristic approach which alternates route determination and optimization steps.
Göttingen, Germany Marie E. Schmidt
| 1 | Introduction |
1 | ||
|---|---|---|---|---|
| 1.1 | Overview | 1 | ||
| 1.2 | Outline | 4 | ||
| 1.3 | Basic | Concepts Used in This Book |
5 | |
| 2 | Line | Planning | 9 | |
| 2.1 | Introduction to Line Planning |
9 | ||
| 2.1.1 | Line Planning Problems |
9 | ||
| 2.1.2 | Literature Overview |
12 | ||
| 2.1.3 | The Line Planning Problems Considered in This Book |
14 | ||
| 2.1.4 | Outline of the Line Planning Chapter |
20 | ||
| 2.2 | Modeling | Line Planning with Routing |
20 | |
| 2.2.1 | The Change-and-Go Network |
21 | ||
| 2.2.2 | Line Planning in the Change-and-Go Network |
23 | ||
| 2.2.3 | The Line Network |
25 | ||
| 2.2.4 | Uncapacitated Line Planning in the Line Network |
28 | ||
| 2.3 | Solving | Line Planning When Part of the Solution Is Fixed |
30 | |
| 2.3.1 | Solving Uncapacitated Line Planning When Part |
|||
| of the Solution Is Fixed |
30 | |||
| 2.3.2 | Solving Capacitated Line Planning When Part |
|||
| of the Solution Is Fixed |
31 | |||
| 2.4 | Classification of Line Planning Problems with Routing |
33 | ||
| 2.5 | Uncapacitated Line Planning with Routing |
35 | ||
| 2.5.1 | Uncapacitated Line Planning in General Networks |
35 | ||
| 2.5.2 | Uncapacitated Line Planning in Linear Networks |
44 | ||
| 2.6 | Capacitated | Line Planning with Routing |
60 | |
| 2.6.1 | Complexity of Capacitated Line Planning with Routing |
60 | ||
| 2.6.2 | Integer Programming Formulations |
64 |
viii Contents
| 3 | Timetabling | 73 | ||
|---|---|---|---|---|
| 3.1 | Introduction to Timetabling |
73 | ||
| 3.1.1 | Timetabling Problems |
73 | ||
| 3.1.2 | Literature Overview |
76 | ||
| 3.1.3 | The Timetabling Problem Considered in This Book |
79 | ||
| 3.1.4 | Outline of the Timetabling Chapter |
81 | ||
| 3.2 | Modeling | Timetabling with Routing Using |
||
| Event-Activity Networks |
82 | |||
| 3.3 | Solving | Timetabling When Part of the Solution Is Fixed |
85 | |
| 3.4 | Complexity | of Timetabling with Routing |
88 | |
| 3.4.1 | NP-Hardness of Timetabling with Routing |
88 | ||
| 3.4.2 | Inapproximability of Timetabling with Routing |
92 | ||
| 3.5 | Timetabling with Routing Between Events |
97 | ||
| 3.6 | An | Exact Algorithm for Timetabling with Routing |
99 | |
| 3.7 | Integer | Programming Formulations |
101 | |
| 3.7.1 | Flow-Based Formulation |
102 | ||
| 3.7.2 | Virtual-Activity-Based Formulation |
108 | ||
| 4 | Delay | Management |
113 | |
| 4.1 | Introduction to Delay Management |
113 | ||
| 4.1.1 | Delay Management Problems |
113 | ||
| 4.1.2 | Literature Overview |
117 | ||
| 4.1.3 | The Delay Management Problem Considered |
|||
| in This Book |
120 | |||
| 4.1.4 | Outline of the Delay Management Chapter |
122 | ||
| 4.2 | Modeling | Delay Management with Routing Using |
||
| Event-Activity Networks |
123 | |||
| 4.3 | Solving | Delay Management When Part of the Solution Is Fixed |
126 | |
| 4.4 | Complexity | of Delay Management with Routing |
130 | |
| 4.4.1 | NP-Hardness of Delay Management with Routing |
|||
| for One OD-Pair |
131 | |||
| 4.4.2 | An Algorithm for Delay Management with Routing |
|||
| with One OD-Pair |
136 | |||
| 4.4.3 | NP-Hardness of Delay Management with Routing |
|||
| for Instances with NTT Property |
151 | |||
| 4.4.4 | Inapproximability of Delay Management with Routing |
155 | ||
| 4.5 | Integer | Programming Formulation |
162 | |
| 5 | An | Iterative | Solution Approach for General Network |
|
| Problems | with Routing |
167 | ||
| 5.1 | Classification of Network Problems with Routing |
167 | ||
| 5.2 | An | Iterative Heuristic |
173 | |
| 5.3 | The | Price of Sequentiality |
175 | |
| 5.4 | Analysis | of the Iterative Heuristic for Timetabling with Routing |
176 | |
| ix |
|---|
| 5.5 | Analysis | of the Iterative Heuristic for Arc Speed-Up |
181 | |
|---|---|---|---|---|
| 5.5.1 | Definition of the Problem Arc Speed-Up |
181 | ||
| 5.5.2 | The Iterative Heuristic for Arc Speed-Up |
183 | ||
| 5.5.3 | Solving Arc Speed-Up Exactly |
185 | ||
| 5.5.4 | The Price of Sequentiality for Arc Speed-Up |
186 | ||
| 6 | Conclusions | and Outlook |
207 | |
| Frequently | Used | Notation |
213 | |
| References | 217 | |||
| Index | 225 |
This book treats three optimization problems arising in public railway transportation, namely
Our objective in the above-mentioned problems is to minimize the overall travel time of the passengers who use the public transportation system. Certainly, the routes that the passengers take influence the travel time. Hence, a good solution algorithm for the above-described problems takes passenger routes into account. That is, if many passengers travel between two stations using the same route, it might be beneficial to establish a high-speed line on this route. Or, to give an example with regard to the problems of timetabling and delay management, if many passengers change at a station from one train to another, the passengers would favor a timetable that does not make them wait too long for the second train, while in case of a delay on the incoming train, a good disposition timetable would ensure that the passengers do not miss the connecting train. Hence, in order to find good line concepts, timetables, or disposition timetables, it is important to know the passenger routes.
1
2 1 Introduction
Fig. 1.1 The public transportation network, consisting of stations and tracks, described in the example. The dashed trains are high-speed trains, the other trains are regional trains
For this reason, in the literature it is often assumed that a good routing, i.e., a collection of a route for every passenger, is part of the input of the above-described problems.
Thereby, many approaches lose sight of the fact that the line concepts, timetables, or disposition timetables themselves considerably influence which routes are favorable and which are not. Hence, approaches that estimate passenger routes without any knowledge of the transportation system to be established on the infrastructure are likely to produce suboptimal solutions.
This fact is illustrated in the following example which is sketched in Fig. 1.1:
Consider a passenger p who wants to travel from station s1 to station s2. There are two possible ways to do that: a shorter connection with a length of 100 km passing a station s3 and another connection which makes a slight detour via station s4 and thus has length 150 km. Without further information, one would suggest that p take the shorter connection.
However, due to constraints on the line concept or preferences of other passengers, it may turn out that a line concept is established in which the shorter route via s3 is served by very slow regional trains tr1 and tr2, making many intermediate stops at regional stations, while on the other hand the tracks .s1; s4/ and .s4; s2/ are served by high-speed trains tr3 and tr4. In view of our objective of minimizing the travel time, the passenger would choose the high-speed connection. Thus, our initial 'guess' for an optimal route, taking only the lengths of the tracks between the stations into account was misleading and did not find an optimal route with regard to the line concept.
1.1 Overview 3
Given additionally the knowledge of the timetable, it may turn out that the train tr4 in fact departs much later in s4 than the arrival of tr3 takes place. In this setting it turns out to be advantageous for p to choose the regional trains instead of waiting a long time at station s4. Again, our guess given only the input information of the timetabling problem, consisting in this case of the network and the line concept assumed above, leads to a suboptimal path for passenger p.
To round the example off with a quick glance on delay management we remark that for the given timetable in case of a delay on tr1, train tr2 might or might not wait for train tr1 at station s3, depending on the number of passengers that want to transfer at s3 and the number of passengers which already sit in tr2 and hope to continue their journey without delays. If tr2 does not wait, p would have better chosen the path via station s4, preferring a long waiting time to the prospect of being not able to continue the journey at station s3.
We conclude that the passenger routes are not at all fixed, i.e., contained in the input of our optimization problems, but depend on the chosen line concept, timetable, or disposition timetable, respectively, and should hence be considered as part of the solution instead.
The task of this book is to conceptually integrate the determination of passenger routes in the optimization step of line planning, timetabling, and delay management. In other words, our goal is to determine a line concept/timetable/disposition timetable which is optimal in the sense that it allows a routing with travel time shorter than or equal to the travel time of routings that are possible for other line concepts (or timetables/disposition timetables, respectively).
An important step when approaching an optimization problem, in particular if real-world instances can be expected to be large, is to investigate the complexity of (solving or approximating) the problem, since it allows to assess which solution methods may be possible to solve the problems and which running times can be hoped for. For this reason, a large part of this book concentrates on an analysis of the border between easy and hard problems in line planning, timetabling, and delay management, which can later on be used as a basis for developing solution methods.
In particular, we are interested in the following questions:
4 1 Introduction
Since public transportation problems are often very complex and hard to solve, most works concentrate only on one problem at a time, although there exist some attempts to combine multiple problems identified in public transportation planning into one large model (see, e.g., [LM07a] and references therein). Following this approach, we regard the problems of line planning with routing, (aperiodic) timetabling with routing, and delay management with routing as independent problems and dedicate a chapter to each of these problems.
An introduction to the respective problem and an overview over models, complexity results, and solution techniques is given at the beginning of each of the three chapters. To obtain an overview about the field of public transportation in general, we refer the interested reader to [BLZ97,GJPC04,HKLV05,DH07,GH08,CKT10], and references therein.
Chapter 2 treats line planning with routing. Based on a result implying strong NP-hardness for general line planning problems with routing, we concentrate on identifying restrictions on the input parameter of the problems which allow polynomial- or pseudopolynomial-time algorithms for line planning problems without capacity restrictions.
When taking into account capacity restrictions, line concepts that represent a system optimum may force some passengers to take long detours which do not represent the individually optimal route choices for these passengers. We formulate a model for capacitated line planning where every passenger can take a route that is individually optimal for him/her without provoking capacity conflicts and present an integer programming formulation to solve our problem.
In Chap. 3, after proving NP-hardness of aperiodic timetabling with routing in general, we utilize the fact that for a fixed routing timetabling can be solved by linear programming to define a timetabling problem with limited route choices which is still solvable in polynomial time. This motivates an exact algorithm for timetabling with routing as well as an integer programming formulation which differs from the straightforward approach of modeling passenger routes using multi-commodity flow constraints.
Surprisingly, in Chap. 4 delay management with routing turns out to be NP-hard even if there is only one passenger traveling. Hence, our main focus in this chapter is to develop a polynomial-time approximation algorithm for instances of delay management with routing considering only one passenger. We identify a restriction under which this algorithm provides optimal results and investigate whether these results can be extended to instances with more passengers. Although this turns out not to be the case, the algorithm can still be used in the last section of this chapter to enhance out the integer programming formulation which we develop based on a formulation for a delay management problem with fixed routing.
Motivated by the structural similarities between the considered problems, in Chap. 5 we develop a heuristic which can be applied to a whole class of network problems with routing. This heuristic alternatingly calculates a routing and a line concept/timetable/disposition timetable, relying on shortest path algorithms and existing optimization algorithms for finding an optimal line concept/timetable/disposition timetable in presence of a fixed routing. Furthermore, we establish an index measuring the worst-case quality of the heuristic.
Before we start the discussion of the problems, we define some concepts from graph theory needed in the following chapters and other prerequisites and notions used in this book in Sect. 1.3.
The problems of line planning, timetabling, and delay management are treated as independent problems in Chaps. 2–4. Hence, to some extent it is possible to read individual chapters of this book independently from the others. However, since the problems of line planning, timetabling, and delay management are subsequent steps of the public transportation planning process, definitions and notations in timetabling and delay management rely on precedent chapters and are not repeated but assumed to be known in later chapters. The iterative heuristic developed in Chap. 5 is stated for a general problem class, hence Chap. 5 could also stand alone, but examples for the illustration of the notions and the evaluation of the heuristic are taken from the preceding chapters.
In this book, we use some basic concepts from graph theory, complexity theory, and combinatorial and linear integer optimization.
For the theory of NP-completeness we refer to [GJ79]. Note that since all decision problems considered in this book are in NP, as can be easily verified, in our proofs of NP-completeness, we only specify a polynomial transformation from a problem Q0 that is known to be NP-complete to our problem Q. If all numbers occurring in the constructed instances of Q are polynomially bounded in the size of the corresponding instances of Q0 , strong NP-completeness follows. (Strong) NPhardness for an optimization problem follows from (strong) NP-completeness of the corresponding decision problem.
Models and concepts from linear integer and combinatorial optimization can be found in, e.g., [NW88]. We use the abbreviations LP for linear program and IP for linear integer program. When considering optimization problems, we use the term solution in the sense of feasible solution.
To avoid confusion we define all concepts from graph theory needed in this book below, following [Die06,AMO93] for the most part. Furthermore, at the end of this section we introduce the public transportation network (PTN) which models the infrastructure for public transportation problems and is hence used in the definitions of line planning, timetabling, and delay management.
Definition 1.3.1. An (undirected) graph G D .V; E/ is a pair of disjoint sets V and E - V V . The elements in V are called the vertices or nodes of G, the elements in E are called (undirected) edges. We denote an edge by e D fi; j g.
Most problems in public transportation are represented using directed graphs.
6 1 Introduction
Definition 1.3.2. A directed graph or digraph G D .V; A/ is a pair of disjoint sets V and A together with two mappings ˛ and ! from A to V . We denote a directed edge or arc of G by e D .˛.e/; !.e//.
Note that we can easily 'forget' that a digraph is directed replacing the arc set A by the edge set E WD ffi; j g W .i; j / 2 Ag. Since V \E D ;, we sometimes slightly abuse notation and write i 2 G or e 2 G for a vertex i or an edge e in a (di)graph G D .V; E/.
Let G D .V; A/ be a digraph. For v 2 V , let ı-.v/ WD fa W ˛.a/ D *v*g - A denote the set of arcs starting in v and ıC.v/ WD fa W !.a/ D *v*g - A denote the set of arcs ending in v.
In our application, all considered graphs are finite, e.g., they have a finite number of nodes and they do not have loops, e.g., no edges fi; ig (or .i; i /, in the directed case), or multiple edges. Thus, from now on, when talking about graphs we refer to finite graphs.
Since the graphs we use for modeling are also used for distance calculations, in many cases we assign labels to the edges or arcs representing their lengths.
Definition 1.3.3. An (undirected) graph G D .V; E/ with edge length Le for every edge e 2 E is called an (undirected) network, analogously we call a directed graph G D .V; A/ with arc length La for every arc a 2 A a (directed) network.
Definition 1.3.4. A linear network is an undirected network G D .V; E/ with node set V D f*v*1; *v*2;:::; *v*ng and edge set E D ff*v*1; *v*2g; f*v*2; *v*3g;:::; f*v*n-1; *v*ngg.
Let G D .V; E/ be a graph/undirected network. We refer to G0 D .V 0 ; E0 / with V 0 - V and E0 - .V 0 V 0 / \ E as a subgraph/subnetwork of G and write G0 G. Let V 0 be a subset of V and E0 WD ffi; j g 2 E W i; j 2 V 0 g. Then G0 D .V 0 ; E0 / G is called the subgraph/subnetwork induced by V 0 .
In a directed graph/directed network G D .V; A/, we call G0 D .V 0 ; A0 / with V 0 - V and A0 - A a subgraph/subnetwork of G and write G0 G. For a subset V 0 of V and A0 WD f.i; j / 2 A W i; j 2 V 0 g, we call G0 D .V 0 ; A0 / G the subgraph/subnetwork induced by V 0 .
Note that nodes can repeat in a path according to this definition. This is often referred to as a walk in the literature. A path P D .i1; i2;:::;in/ is called simple if ij ¤ ik for all j ¤ k. In directed graphs, we often refer to directed paths simply as paths. If we refer to undirected paths, we always emphasize that.
Note that a path is also uniquely determined by its edge or arc sequence, hence, we sometimes write P D .i1; e1; i2; e2;:::;en-1; in/, P D .i1; i2;:::;in/, or P D .e1; e2;:::;en-1/ instead of P D .fi1; i2;:::;ing; fe1; e2;:::;en-1g/.
Definition 1.3.6. The length of a (directed or undirected) path P D .VP ; AP / is given as l.P / D P a2AP La.
The shortest path problem is the task to find a path P with first node s and last node t of minimum length in a (directed or undirected network) with two specified nodes s and t.
Let G D .V; E/ be a directed or undirected graph with nonnegative edge lengths. For a given start node s, Dijkstra's algorithm (see, e.g., [NW88]) calculates a set of shortest paths fPt W t 2 V g to every other node t in the node set V ; thus, in particular it solves the shortest path problem defined above. If this algorithm is implemented using Fibonacci Heaps, a running time of O.m C n log.n// can be achieved (see [FT87]), where m is the number of edges/arcs and n is the number of nodes in the considered graph. Note that in directed acyclic graphs, it is possible to find shortest paths in O.m/ (see, e.g., [AMO93]).
The variant where shortest paths between all pairs of nodes have to be found is called the all-pairs shortest path problem. It can be solved, e.g., using the Floyd– Warshall algorithm in O.n3/.
Notation 1.3.7. Let G D .V; E/ be a (directed or undirected) network and let f.si ; ti/ W i 2 I g - V V denote a set of pairs of nodes. We call the set of paths fPi W i 2 I g where Pi is a shortest path from si to ti in G a shortest-path routing.
Note that, in case of positive edge or arc lengths, every shortest path is simple.
Definition 1.3.8. In an undirected graph, a path C defined by a node sequence i1;:::;in with i1 D in is called a cycle. If a graph does not contain any cycle as a subgraph, it is called acyclic.
Let G D .V; A/ be a directed graph and i; j 2 V .
Definition 1.3.9. Let G D .V; E/ be a non-empty directed or undirected graph.
8 1 Introduction
Definition 1.3.10. A tree is an undirected, connected, acyclic graph.
The basic network, common to all three problems studied in this book, is the so-called PTN, modeling the underlying infrastructure of stations and tracks.
Definition 1.3.11. A PTN is an undirected network
$$\mathcal{PTN} = (S, E).$$
In railway transportation, the vertices S represent train stations, the (undirected) edges E represent the physical connections between the vertices, i.e., the tracks. The length of a track e is included in the model as edge length Le 2 N0.
Given the public transportation network, i.e., information about the location of the stations, the tracks connecting the stations, and the lengths of the tracks, line planning aims at determining the lines, i.e., the routes served regularly by a train. Furthermore, in many line planning approaches, not only the routes which should be served are considered, but also the frequencies of the services are planned.
A line is a path in the PTN which is served by trains. In the line planning problems investigated in this book we are given a predefined set of potential lines, the line pool, among which we choose the lines we want to establish. It is also possible to define the set of potential lines only implicitly as a path from a predefined origin to a predefined destination [BGP08,BN10]. Another approach is to construct lines by combining small line parts, see, e.g., [LS67,SBP74,Son79,Fuh08].
The frequency of a line indicates how many trains of the line are operated in a certain time period. In the literature, both the problems of finding a line concept and the problem of finding a line concept together with a corresponding frequency assignment are referred to as line planning, while the problem of assigning a frequency to a given line concept is called frequency setting (see, e.g., [CF95, GSS04, dMI06]). There are various reasons why frequencies are an important feature in line planning. 10 2 Line Planning
When a passenger arrives at a station by train, his/her waiting time for the next connecting train depends on the frequency of the connecting train; hence in practice, line frequencies have a significant impact on travel times. However, there is a second reason to consider line frequencies: the capacity of the transportation system. If there are 500 passengers who want to take the same line on the same edge of the PTN during a certain time period and the capacity of a train is only 200, we need at least three trains serving the line.
In this book we ignore the impact of line frequencies on waiting times and refer the interested reader to [CF95, GSS04, dMI06] and references therein. Instead, we focus on uncapacitated line planning, where frequencies are not taken into account, and capacitated line planning, where frequencies are introduced due to capacity reasons.
In capacitated line planning we make use of the definition of trains as single realizations of a line which can transport only a certain number of passengers Cap at a time. In uncapacitated line planning capacity restrictions are not considered, i.e., Cap is set to 1.
Every line l is assigned a monotonously increasing function ˛l W RC 0 ! RC 0 , called line driving time function, which is often assumed to be the identity. However, like in [SS10b,SS12a,Sch12] in this book we consider the general case where line driving time functions can differ from the identity.
Furthermore, every line is assigned a line cost ˇl which specifies the cost caused by establishing line l with frequency fl . Often, ˇl consists of a fixed cost l 0 and a per-train cost bl > 0, i.e., ˇl.fl/ D blfl C l (see, e.g., [TTBP11]). In the problems considered in this book, we only consider per-train costs bl , i.e., l D 0. This simplification is common in the literature, it is, e.g., used in [GYW06, BN10, TTBP11]. More realistic models apportion costs according to rolling stock utilization [Bus98,CvDZ98,GvHK04,GvHK06].
Some models additionally assume upper bounds on the frequency of a line [TTBP11] or an edge of the PTN [Bus98,CvDZ98,GvHK04,GvHK06].
Some publications consider the simultaneous optimization of several transportation modes or train types which may differ, for example, in halting patterns, speed, and capacity (see, e.g., [CvDZ98,GvHK06,BGP07,BGP08,TTBP11,BK12]), while others assume that all considered vehicles are uniform and that different transportation modes or types of vehicles can be dealt with separately [BKZ97,Sch05,SS06]. The approach followed in this book allows different line driving time functions and can hence be classified somewhere in between these approaches.
In cost-oriented models (see, e.g., [BLL04, TTBP11, GvHK04, CvDZ98]) and some earlier models in passenger-oriented transportation (e.g., [BKZ97]) passenger demand is modeled by defining minimal frequencies on the edges of the PTN and has to be covered by the line concept. The minimal frequencies may be a direct input to the problem [Bus98,BLL04,TTBP11] or pre-estimated by a shortest-path routing in the PTN [CvDZ98,GvHK04,GvHK06].
However, when trying to maximize passengers' convenience, predefined passenger routes do not seem to be the right modeling approach since passengers choose routes according to the travel time and/or the numbers of transfers observed in the present line concept. Consequently, most line planning models assume that we are given every passenger's origin and his/her destinations as a set of origindestination pairs (OD-pairs).
Without budget considerations, a solution that maximizes passengers' convenience would lead to many lines which are rarely used. Therefore, some passenger-oriented line planning models minimize a weighted sum of the chosen passenger-oriented objective and the costs of the line concepts (see, e.g., [GYW06, BGP07, BGP08, NJ08, BN10]). Another option is to impose an overall budget B on the line costs [Sch05,SS06,SS10b,SS12a,Sch12]. Additionally, setting up too many lines can be avoided by upper bounds on frequencies, as done, e.g., in [Bus98, SS06, BGP08, NJ08].
The aim of cost-oriented line planning [CvDZ98,BLL04, GvHK04,TTBP11] is to minimize the costs of the established line concept subject to covering the passengers' demand. To cover passengers' demand, minimal frequencies are imposed on the edges of the PTN.
In contrast to cost-oriented line planning models, passenger-oriented line planning aims at maximizing the quality of the public transportation system from the passengers' point of view. There are two main approaches to passenger-oriented line planning: the direct traveler approach and the minimization of travel time.
The direct traveler approach maximizes passengers' travel quality by maximizing the number of travelers that do not have to change lines during their journey. It is introduced in [Die78] and developed further in [BKZ97, Bus98]. In [BKZ97] the routes for the OD-pairs are predefined and only direct travelers on these routes are counted. In [Die78,Bus98] in contrast, for every OD-pair a set of the so-called pleasant paths in the PTN is given. Any of these pleasant paths can be chosen for the passenger, if it allows a direct connection from origin to destination.
12 2 Line Planning
Also the travel time is an important criterion to measure passengers' convenience. It consists of the driving time between stations and the transfer time between trains. Since in line planning no timetable is known, the transfer time is estimated by transfer penalties pl l0 s for transfers from line l to line l0 at station s. To simplify the model, sometimes it is assumed that the transfer penalties are equal for all transfers (see, e.g., [Sch05, SS06]) or even set to 0 (see, e.g., [PB06, BGP07, BGP08]), which implies that only the driving time is minimized in the corresponding models. Borndörfer and Neumann [BN10] and Borndörfer and Karbstein [BK12] use a model that estimates transfer penalties to allow faster computation times with respect to exact models such as [SS06]. Guan et al. [GYW06] minimize a weighted sum of costs, travel time, and transfers.
Apart from the cited papers, the objective of minimizing travel time has already been formulated, e.g., in [LS67, SBP74, Son79,Man80]. However, solution approaches in these early papers are purely heuristic.
Another approach of passenger-oriented line planning with integrated passenger routing has been treated in [NJ08] under the objective of maximizing the travel quality which is defined as the time a passenger can save compared to the maximal accepted travel time.
In Sect. 2.1.1 we presented different modeling paradigms in line planning. In this section we give a broad overview on complexity results and exact solution techniques for solving line planning problems. Since there is a multitude of different line planning models and results, a more detailed overview is beyond the scope of this book. We refer the interested reader to the surveys about line planning given in [Chu84, IC95, Sch11], the more general survey papers listed in Sect. 1.2 and references therein.
In most more recent papers on line planning, the use of sophisticated solution techniques is justified with proofs of computational hardness for the considered problems.
In [Bus98] it is shown that in presence of lower and upper frequency bounds, choosing a feasible line concept with frequencies from a given line pool is (strongly) NP-complete by reduction from Hamiltonian Path. Given a passenger routing, in [CvDZ98] it is shown that covering the demand in a cost-optimal way is (strongly) NP-hard. In [TTBP11], the computational complexity of a cost-oriented line planning problem on linear networks and tree networks is investigated.
In [BNP09], Borndörfer et al. define the line connectivity problem: given an undirected graph, a set of OD-pairs and a set of lines with costs, the task is to find a set of lines with minimal costs such that for every OD-pair there exists a path in the graph from origin to destination which is completely covered by lines. For the corresponding decision problem, the authors show that it is in P if there is only one OD-pair, but strongly NP-complete in general, even if OD D S S, using a reduction from Set Cover.
Line planning with travel-time objective is (strongly) NP-complete if lines are constructed from scratch, even if only the number of transfers is counted in the objective function [Sch05]. In [PB06], Pfetsch and Borndörfer show that line planning with a weighted objective functions consisting of travel time and costs is NP-hard in case of free route choices as well as for the restrictions to unsplittable routes and shortest paths in the PTN. Furthermore, they investigate the gap between solutions to the line planning problems under different restrictions on the routings. In [Sch05, SS06] line planning with travel-time objective is considered on a linear network. The problem is shown to be (strongly) NP-hard even if only transfers are counted in the objective function and the line costs are equal for all lines. Here, the proof takes advantage of different halting patterns of the trains. [SS10b,SS12a] give an extensive overview about the complexity of different uncapacitated line planning problems on linear networks where all trains have the same halting patterns and extend their results to line planning problems with capacities. The results are presented in Sects. 2.5 and 2.6.1 of this book.
The different line planning problems in the literature are often modeled as integer programs. In cost-oriented models, the variables represent the frequencies of lines in the line pool, subject to capacity and coverage constraints that vary with the model [Bus98, GvHK04, GvHK06, TTBP11]. Sometimes, other decisions like the number of coaches [CvDZ98, Bus98, BLL04] are included in the formulation. Solution techniques include branch-and-bound [Bus98, CvDZ98], branch-and-cut [GvHK04], and variable fixing heuristics [BLL04].
In passenger-oriented approaches, passengers' demand is given in form of OD-pairs that have to be routed through the network. When using integer programming methods, passenger routes are modeled as paths or flows in the network.
In [BGP08], Borndörfer et al. propose an IP model to minimize a weighted sum of driving time and costs modeling passengers' route choices as flows in a directed version of the PTN. Instead of using a predefined line pool, also the lines are modeled as flows between line origins and line destinations.
To account for transfers, many flow-based formulations [Sch05, SS06, SS10b, SS12a, Sch12] make use of an extension of the PTN, the change-and-go network (CGN) (see Sect. 2.2.1), which consists of a path for each line and transfer arcs. For every arc of this network and every OD-pair, a flow variable is introduced.
14 2 Line Planning
To solve the LP-relaxation of a line planning problem with travel-time objective, in [Sch05, SS06] Scholl and Schöbel make use of the (almost) block-diagonal structure of the constraint matrix and apply Dantzig–Wolfe decomposition.
In contrast to flow-based formulations, path-based formulation introduce a variable for every possible path from origin to destination of an OD-pair.
Guan et al. [GYW06] propose an integer program which minimizes a weighted sum of costs, travel time, and transfers using variables for assigning passengers to routes and to lines covering the routes. To keep the number of variables small, the number of possible routes is restricted in the problem input.
Borndörfer et al. [BGP07,BGP08] propose an IP model using path variables for minimizing a weighted sum of driving time and costs. Like in the flow-based model proposed in [BGP08], they do not assume a fixed line pool, but allow all possible lines between a set of line origins and line destinations. However, in contrast to the flow-based model, the lines are not modeled by flows but, like the passengers' routes, by path variables. Borndörfer et al. [BGP07, BGP08] solve a relaxation of the model using column generation. While the pricing problem for the passengers' routes is a shortest path problem, the pricing problem for the lines turns out to be a longest path problem and strongly NP-hard. However, if the lengths of the lines are restricted, dynamic programming techniques can be used to solve the pricing problem efficiently [BGP07]. A similar approach is followed in [NJ08].
A disadvantage of the models proposed by [BGP07,BGP08] is that they do not account for passengers' transfers, i.e., only the driving time is considered in the objective function. The models proposed in [BN10, BK12] try to overcome this disadvantage by estimating the number of direct travelers [BN10] or the number of passengers' transfers [BK12]. Also here, column generation is used to solve a relaxation of the problem. Borndörfer and Neumann compare the obtained results to the results obtained using the model of [BN10].
Path-based IP models for the direct traveler approach are given in [Die78,BKZ97, Bus98].
We now describe the line planning problems considered in this book in more detail and introduce definitions and notations used throughout the book. We consider three different passenger-oriented line planning problems with the objective of minimizing the overall travel time: uncapacitated line planning with routing (uLPwR), simplified capacitated line planning with routing (scLPwR), and capacitated line planning with routing (cLPwR).
Let PT N D .S; E/ be a PTN. We define a line l to be a path in PT N specifying also a direction:
• A one-directional line l is given by a sequence
$$(s_1, e_1, s_2, e2, \ldots, e{k-1}, s_k)$$
of vertices si 2 S and edges ei 2 E such that ei D fsi ; siC1g which contains every node of the PTN at most once, unless s1 D sk.
Since a line .s1; e1; s2; e2;:::;ek-1; sk/ is uniquely represented by its node sequence .s1; s2;:::;sk/ or its edge sequence .e1; e2;:::;ek-1/, we sometimes represent it using one of these shorter notations. We denote by S.l/ WD fs 2 S W s 2 lg and E.l/ WD fe 2 E W e 2 lg the stations and edges visited by line l, and by L.s/ WD fl W l 3 sg and L.e/ WD fl W l 3 eg the lines visiting a given station s or edge e. To emphasize that siC1 is a direct successor of si on l (in the order defined by the line), we write .si ; siC1/ 2 l. Note that for bi-directional lines, we have both .si ; siC1/ 2 l and .siC1; si/ 2 l.
We denote by L a given line pool which can contain both one-directional and bi-directional lines l with associated line driving time function ˛l . Line costs are given by a multiplicative factor bl , i.e., ˇl.fl/ WD blfl for every l 2 L.
In capacitated line planning, we call a single realization of a line a train and assume that every train has a capacity Cap, which does not depend on the train or the line.
Definition 2.1.2. For a line l 2 L, the frequency fl 2 N states how many trains of line l are operated in a certain time period.
In capacitated line planning, a line concept is a set L0 - L together with a frequency fl 2 N for every l 2 L0 . To indicate that a line l is not contained in L0 , we sometimes write fl D 0.
Since in uncapacitated line planning the frequencies are either 0 (the line is not contained in the line concept) or 1 (the line is contained in the line concept), we often omit stating the frequencies explicitly and call L0 a line concept.
We assume an overall budget B on the costs of a line concept. That is, a line concept L0 - L is feasible if P l2L0 blfl B. Due to the f0; 1g-frequencies, in uncapacitated line planning this can be written as P l2L0 bl B.
16 2 Line Planning
Assuming that the passengers' demand for traveling between the stations is known, we use the notion of OD-pairs to define demand on the network.
Definition 2.1.3. A set of OD-pairs is a subset of pairs of stations OD - S S. For every OD-pair .u; v/ 2 OD, the number of passengers or passenger weight wuv is specified.
A passenger's journey can now be described in the following way:
Definition 2.1.4. A line-route Puv for a passenger of OD-pair .u; v/ 2 OD specifies
P is called the path corresponding to Puv in the PTN.
Puv does not only specify the path in the PTN, but also the lines used for traveling on the path and the stations where transfers between lines take place. We say that a line-route Puv is feasible for a line concept L0 if Puv uses only lines contained in L0 .
In order to estimate travel times, we make use of the line driving time function ˛l associated to every line l. Let Le denote the edge length for e 2 E and let ˛l be the line driving time function of a line l 2 L.e/. The driving time of line l on edge e 2 E is calculated as Ll e WD ˛l.Le/.
Transfers from one line to another are penalized using transfer penalties pl l0 s 2 N0 which arise when a passenger transfers from line l to line l0 at station s. Given driving times and transfer penalties, we can estimate the travel time along a line -route:
Let L0 be a line concept and P be a feasible line-route for L0
Since a line-route Puv does not only specify a path in the PTN but also the lines taken on the path, the line concept decides the feasibility of Puv. However, for any two line concepts L0 1, L0 2 for which Puv is feasible, the driving, transfer and travel times, and the cost along Puv coincide. Even so, to keep notation consistent to later chapters, we decide against the abbreviated notation d.Puv/ WD d.L0 ; Puv/, etc.
A line-routing for OD-pair .u; v/
$$\mathcal{R}_{uv} := {P : \text{ line-route } P \text{ is used by } (u, v)}$$
specifies a line-route for every passenger in .u; v/. We denote by wP uv the number of passengers of OD-pair .u; v/ using line-route P and require that P P2Ruv wP uv D wuv. A line-routing R is a set which contains a line-routing for every OD-pair .u; v/ 2 OD.
In uncapacitated line planning we assume that all passengers of an OD-pair take the same line-route. Hence, in this case a line-routing is just a collection of exactly one path Puv for every OD-pair .u; v/. When the set of OD-pairs is indexed, e.g., OD D f.*u*k; *v*k/ W k 2 Kg for an index set K, for the sake of simplicity, we also use the notation wk WD wuk vk and Pk WD Puk vk .
In capacitated line planning, passengers of the same OD-pair may take different line-routes.
A line-routing R is feasible for a given line concept L0 if every line-route in R is feasible for L0 and (in case of capacitated line planning) capacity constraints are not violated, i.e., for every edge e and every l 2 L.e/, the number of passengers traveling in l on e is at most fl Cap.
On the other hand, given a line-routing we can also demand that the line concept should be chosen in a way to make the line-routing feasible: A line concept L0 is feasible for a line-routing R if it is a feasible line concept, if all lines used by R are contained in L0 , and if (in case of capacity restrictions) the frequency fl of each line l on each edge e 2 E.l/ is at least the number of passengers using l on e divided by Cap.
Let L0 be a line concept and R D fPuv W .u; v/ 2 ODg a line-routing. The overall travel time is defined as
$$c(\mathcal{L}',\mathcal{R}) := \sum{(u,v)\in\mathcal{OD}} \sum{P\in\mathcal{R}{uv}} w{uv}^P c(\mathcal{L}',P).$$
We are now ready to define the first two line planning problems considered in this book.
• Uncapacitated line planning with routing An instance .PT N ;L; OD;B/ of uncapacitated line planning with routing (uLPwR) consists of a public transportation network PT N , a line pool L, a set of OD-pairs OD, and a budget B.
18 2 Line Planning
Fig. 2.1 Example for an instance where the solution found by the conventional frequency model is unrealistic. Travel demand is indicated by the dotted arrows
$$l1$$ $\alpha{l1}(x) = 2x, \quad b{l_1} = 2$ $l2$ $\alpha{l2}(x) = x, \quad b{l2} = 3$ $\alpha{l3}(x) = 2.5x, \quad b{l_3} = 1$
The task is to choose a feasible line concept L0 and a feasible (in the uncapacitated sense) line-routing R for L0 , such that the overall travel time c.L0 ; R/ of the passengers is minimized.
• Simple capacitated line planning with routing An instance .N;L; OD; B;Cap/ of simple capacitated line planning with routing (scLPwR) consists of a public transportation network PT N , a line pool L, a set
of OD-pairs OD, a budget B, and a restriction on the capacity of the trains Cap. The task is to choose a feasible line concept L0 together with frequencies fl 2 N for all l 2 L0 and a feasible (in the capacitated sense) routing R, such that the overall travel time c.L0 ; R/ is minimized.
(uLPwR) was defined in [SS10b, SS12a]. In [Sch05, SS06], Scholl and Schöbel investigate (scLPwR) with the additional restriction that the number of trains on every edge e of the corresponding PTN is restricted by a maximal edge frequency f max e .
Even ignoring timetabling issues, it is quite unrealistic to assume that in capacitated line planning, the feasibility of a routing will be enough to avoid capacity violations in trains. This is demonstrated in the following example.
We consider a linear PTN with three stations s1, s2, and s3 which are connected by edges of length 1. There are three lines: lines l1 and l2 go from s1 to s3. l1 has driving time function ˛l1 .x/ WD 2x for x 2 RC 0 , l2 has driving time function ˛l2 .x/ WD x for x 2 RC 0 , and l3 has a driving time function of ˛l3 .x/ WD 2:5x for x 2 RC 0 and goes from s2 to s3. The line costs are given by bl1 D 2, bl2 D 3, and bl3 D 1 and we have a budget B D 4. 50 passengers want to travel from s1 to s3 and 100 passengers travel from s2 to s3. We assume a train capacity of Cap D 100. See Fig. 2.1 for a picture of the PTN.
In order to minimize the overall travel time, we choose lines l2 and l3 with frequency fl2 D fl3 D 1 as a solution to scLPwR. Then half of the passengers starting the journey in B can board the fast line l2, while the others have to take the slower line. As long as we do not assume different prices for traveling on the lines, this solution does not seem to be realizable in practice, as all passengers would prefer to take the faster line.
The optimum calculated with conventional frequency models is a system optimum which may force some passengers to take large detours, while the more desirable goal would be to find a collection of individually optimal routing decisions. To overcome this difficulty, Borndörfer et al. suggest in [BGP08] to investigate a model that allows only paths with travel time in a predefined range (depending on shortest path distances in the PTN).
In contrast to this approach in the following we present a model from [Sch12] which allows all passengers to travel on shortest paths in the routing network.
For a given line concept L0 , we call a line-routing R shortest-path line-routing for L0 if for every OD-pair .u; v/ 2 OD the travel time on every line-route P 2 Ruv equals the minimal possible travel time from u to v on a line-route using lines from L0 .
The third line planning problem we consider in this book is defined as follows.
Capacitated line planning with routing
An instance .N;L; OD; B;Cap/ of capacitated line planning with routing (cLPwR) consists of a public transportation network PT N , a line pool L, a set of OD-pairs OD, a budget B, and a restriction on the capacity of the trains Cap.
The task is to choose a feasible line concept L0 together with frequencies fl 2 N for all l 2 L0 and a feasible shortest-path routing R in N.L0 /, such that the overall travel time c.L0 ; R/ is minimized.
A solution .L0 ; R/ consisting of a feasible line concept and a feasible shortestpath routing in N.L0 / does not necessarily exist, even if a solution .*L*Q0 ; *R*Q/, providing a system optimum, exists, as we see in the following example.
We are given a PTN consisting of four stations, s1; s2; s3, and s4 connected as shown in Fig. 2.2. There are two lines l1 D .s1; s2; s4/ and l2 D .s1; s3; s4/ with bl1 D bl2 D 1 and ˛l1 .x/ WD x and ˛l2 .x/ WD x for x 2 RC 0 . The budget is B D 2. The capacities of the trains are Cap D 10. The set of OD-pairs is OD WD f.s1; s2/; .s1; s3/; .s1; s4/g with passenger numbers *w*s1s2 D *w*s1s3 WD 5 and w.s1;s4/ WD 10. The only feasible line concept that allows all passenger to reach their destinations is to establish both lines with frequency fl1 D fl2 WD 1. However, in this solution, five passengers of OD-pair .s1; s4/ have to take line l2 and have a travel time of 4 which is not the shortest path distance between s org 1 and sdest 4 in N .L/.
However, a solution that in theory forces some passengers to take long detours will probably not be accepted in practice. Most likely, the passengers try to take the shorter paths anyway and hence violate the present capacity restrictions. Thus, whenever there exists a solution to cLPwR which allows all passengers to travel on shortest paths, it improves the quality of the transportation system compared to the system optimum to choose this solution.
20 2 Line Planning
Fig. 2.2 Example for nonexistence of a solution that allows passengers to travel on shortest paths. Demand for traveling is indicated by the dotted arrows in the PTN
In Sect. 2.2 we introduce the CGN and the line network and show how line planning problems can be modeled using these networks. Section 2.3 explains how line planning can be solved if part of the solution, i.e., the line concept or the routing, is fixed. From the strong NP-completeness result for the line connectivity problem in [BNP09], strong NP-hardness of uLPwR can easily be deduced. Therefore, in Sect. 2.4, we define subclasses of instances of uLPwR and investigate the computational complexity of these subclasses in Sect. 2.5. In particular we perform an extensive complexity analysis of uLPwR in linear PTNs in Sect. 2.5.2.
For capacitated line planning, i.e., scLPwR and cLPwR, we are able to prove strong NP-completeness of the corresponding decision problem even in a very restricted case in Sect. 2.6.1. This motivates Sect. 2.6.2 where we develop an integer program for cLPwR based on an integer programming formulation for scLPwR from [Sch05,SS06].
In this section we introduce the concept of the change-and-go network (CGN) which combines the PTN, the line pool, and the OD-pairs into one network model. It is often used for line planning purposes (see, e.g., [Sch05,SS06,SS10b,SS12a,Sch12]) since all information specified in a line-route can be conveniently represented as a path in the CGN.
Under some quite strong restrictions, i.e., if the considered PTN is linear, the line driving time is equal for all lines, and the transfer penalties do not depend on the stations where the transfers take place, we can condense the information contained in the PTN to a much smaller network, the line network. (see, e.g., [Sch05, SS10b, SS12a]). Under the mentioned restrictions, the line network allows faster solution algorithms than the CGN, since it omits parts of the structure which are dispensable in this case.
In order to depict the various travel possibilities from the origins to the destinations, the concept of a CGN was introduced in [Sch05, SS06]. We follow the slightly different modeling approach of [SS10b,SS12a] to cope with differing requirements like directed lines and different line driving times.
Given a public transportation network PT N , a line pool L, and a set of OD-pairs OD, we construct a CGN in the following way:
We first define the node set of the CGN. There are three different types of nodes. The travel nodes represent the stopping of lines.
Definition 2.2.1. Let S be the node set of PT N . The set of travel nodes is defined as Vtravel WD fŒs; l W s 2 S; l 2 L.s/g.
Furthermore, origins and destinations have to be integrated in the network. To this end, we define two mappings org and dest that map an OD-pair .u; v/ to an *origin node u*org WD org.u; v/ and to a *destination node v*dest WD dest.u; v/ which are added to the CGN.
To model passenger flows in the network, we need to represent the lines, provide possibilities for transfers, and include the passengers' demand. All of this is done by means of arcs.
Definition 2.2.3. Let E be the edge set of PT N .
• The set of driving arcs Adrive -Vtravel Vtravel is defined as
$$A_{\text{drive}} := {([s, l], [s', l]) : l \in \mathcal{L}, {s, s'} \in E(l), s \leq_l s'}.$$
The length of a driving arc .Œs; l; Œs0 ; l/ is given as c.Œs;l;Œs0;l/ WD Ll ss0 .
• The set of transfer arcs Atrans -Vtravel Vtravel is defined as
$$A_{\text{trans}} := {([s, l], [s, l']) : s \in S, l \neq l' \in \mathcal{L}(s)}$$
and the arc length of a transfer arc .Œs; l; Œs; l0 / is given as c.Œs;l;Œs;l0/ WD pl l0 s . 22 2 Line Planning
Fig. 2.3 Construction of the change-and-go network N (a) PTN (b) constructed CGN
• The set of origin arcs Aorg -Vorg Vtravel is defined as
$$A{\mathrm{org}} := {(u^{\mathrm{org}}, [u, l]) : u^{\mathrm{org}} \in V{\mathrm{org}}, [u, l] \in V_{\mathrm{travel}}}.$$
The length of every origin arc .*u*org; Œu; l/ is set to c.*u*org;Œu;l/ WD 0.
• Analogously the set of destination arcs Adest -Vtravel Vdest is defined as
$$A{\text{dest}} := {([v, l], v^{\text{dest}}) : v^{\text{dest}} \in V{\text{dest}}, [v, l] \in V_{\text{travel}}}$$
and c.Œv;l;*v*dest/ WD 0 for every .Œv; l; *v*dest/ 2 Adest.
For a 2 Adrive, let l.a/ be the (uniquely defined) line belonging to arc a. The CGN is now defined as N D .V; A/ with
$$V := V{\text{travel}} \cup V{\text{org}} \cup V{\text{dest}}$$ and $A := A{\text{drive}} \cup A{\text{trans}} \cup A{\text{org}} \cup A_{\text{dest}}$ .
We denote nN WD jV j and mN WD jAj.
In Fig. 2.3 an example for the construction of a CGN is given: a PTN is depicted in Fig. 2.3a. We have a line pool L WD fl1 D .s1; s2; s3/; l2 D .s4; s5; s6/; l3 D .s1; s4; s5; s2; s1/; l4 D .s3; s6/g with line driving times ˛l1 .x/ WD 1 2x, ˛l2 .x/ WD 3x, ˛l3 .x/ WD x and ˛l4 .x/ WD 5 4x and OD-pairs .s1; s6/ and .s4; s3/. In Fig. 2.3b the CGN is shown. The dotted lines represent the origins and destinations of the passengers and the dashed lines stand for the transfer possibilities between two lines.
It can be seen easily that given a public transportation network PT N D .S; E/, a line pool L, and a set of OD-pairs OD, the corresponding CGN is of size O.jSj j*L*j 2/ and that the time needed for its construction is of the same order: Since every line contains at most jSj stations and edges, for every line l 2 L it takes time O.jSj/ to follow l and draw the nodes Vtravel and the arcs Adrive corresponding to l. This gives O.jSjj*L*j/ over all lines. Given the travel nodes, at every station we draw at most j*L*j 2 transfer arcs which takes time O.jSjjLj 2/ for all stations. Finally, we add at most one origin node and j*L*j origin arcs at every station, the same holds for the destination nodes and the destination arcs.
Let a PTN, a line pool L, and a set of OD-pairs OD be given and let N D .V; E/ be the corresponding CGN. For an OD-pair .u; v/ every path Puv from origin node *u*org to destination node *v*dest in N represents a line-route for OD-pair .u; v/ and vice versa.
Hence we can translate the definitions of driving time, transfer time, travel time, and costs along a line-route to paths in N: Let L0 be a line concept and P a path in the routing network N.L0 /. We define
• the driving time along P as
$$d(\mathcal{L}', P) = \sum{a \in P \cap A{\text{drive}}} c_a,$$
• the transfer time along P as
$$t(\mathcal{L}', P) = \sum{a \in P \cap A{\text{trans}}} c_a,$$
• the travel time along P as
$$c(\mathcal{L}', P) = d(\mathcal{L}', P) + t(\mathcal{L}', P) = \sum_{a \in P} c_a,$$
• and the cost along P as
$$b(\mathcal{L}', P) = \sum_{l:\exists s \in S \ s.t. \ [s,l] \in P} b_l.$$
Using these definitions, for a line concept L0 , a feasible line-route P0 uv, and the corresponding path Puv in N it holds that
$$\begin{split} d(\mathcal{L}',P'{uv}) &= d(\mathcal{L}',P{uv}),\ t(\mathcal{L}',P'{uv}) = t(\mathcal{L}',P{uv}),\ c(\mathcal{L}',P'{uv}) = c(\mathcal{L}',P{uv}), \ \text{and}\ b(\mathcal{L}',P'{uv}) &= b(\mathcal{L}',P{uv}). \end{split}$$
Due to this observation, we identify line-routes and the corresponding paths in N.
24 2 Line Planning
Fig. 2.4 Routing network N.L0 / for L0 D fl1; l3; l4g
We define a routing Ruv for OD-pair .u; v/2 OD to be a collection of paths P from *u*org to *v*dest in the CGN. wP uv now denotes the number of passengers of OD-pair .u; v/ using path P. A routing R is then defined as R WD S .u;v/2OD Ruv.
Given a line concept L0 , the routing network N.L0 / is obtained by removing all arcs belonging to other lines from the CGN. That is, N.L0 / WD .V .L0 /; A.L0 // with
$$V(\mathcal{L}') := {[s, l] \in V{\text{travel}} : l \in \mathcal{L}'} \cup V{\text{org}} \cup V_{\text{dest}}$$
and
$$A(\mathcal{L}') := { (i, j) \in A : i, j \in V(\mathcal{L}') }.$$
In Fig. 2.4 the routing network N.L0 / for the example given in Fig. 2.3 and line concept L0 D fl1; l3; l4g is shown. All arcs belonging to line l2 are removed.
The definition of the routing network allows us to transfer the concept of individually optimal routings to the CGN: For a given line concept L0 , a routing R in the routing network N.L0 / is a shortest-path routing for L0 , if for every OD-pair .u; v/ 2 OD the travel time on every path P 2 Ruv equals the travel time on a shortest path from *u*org to *v*dest in N.L0 /.
Also the notion of feasibility can be transferred easily from line-routings to routings using the routing network notation:
Definition 2.2.4. A routing R in N is feasible for a line concept L0 (or, vice versa, L0 is feasible for R) if
$$\sum{(u,v)\in\mathcal{OD}} \sum{P\in\mathcal{R}{uv}:P\ni a} w{uv}^P \le f{l(a)} \text{Cap } \forall a\in A{\text{drive}}.$$
That is, given a line concept L0 , a routing is feasible for L0 if and only if the corresponding line-routing is feasible for L0 .
Let L0 be a line concept and R WD S .u;v/2OD Ruv be a feasible routing with passenger number wP uv for all .u; v/ 2 OD; P 2 Ruv. The overall travel time can be calculated as
$$c(\mathcal{L}',\mathcal{R}) = \sum{(u,v)\in\mathcal{OD}} \sum{P\in\mathcal{R}{uv}} w{uv}^P c(\mathcal{L}',P).$$
We can now restate the line planning problems from Definitions 2.1.5 and 2.1.6.
• Uncapacitated line planning with routing
An instance .N;L; OD;B/ of uncapacitated line planning with routing (uLPwR) consists of a CGN N, a line pool L, a set of OD-pairs OD, and a budget B.
The task is to choose a feasible (in the uncapacitated sense) line concept L0 and a routing R in N.L0 /, such that the overall travel time c.L0 ; R/ of the passengers is minimized.
• Simple capacitated line planning with routing
An instance .N;L; OD; B;Cap/ of simple capacitated line planning with routing (scLPwR) consists of a CGN N, a line pool L, a set of OD-pairs OD, a budget B, and a restriction on the capacity of the trains Cap.
The task is to choose a feasible (in the capacitated sense) line concept L0 together with frequencies fl 2 N for all l 2 L0 and a feasible routing R, such that the overall travel c.L0 ; R/ is minimized.
• Capacitated line planning with routing (cLPwR)
An instance .N;L; OD; B;Cap/ of capacitated line planning with routing (cLPwR) consists of a CGN N, a line pool L, a set of OD-pairs OD, a budget B, and a restriction on the capacity of the trains Cap.
The task is to choose a feasible line concept L0 together with frequencies fl 2 N for all l 2 L0 and a feasible (in the capacitated sense) shortest-path routing R in N.L0 /, such that the overall travel time c.L0 ; R/ is minimized.
Since they describe the same problems, we use Definition 2.2.5 as well as Definitions 2.1.5 and 2.1.6 for uLPwR, scLPwR, and cLPwR equivalently.
In Sect. 2.5 we partly restrict our analysis of uLPwR to linear PTNs as defined in Sect. 1.3. Under some additional restrictions, this allows us to condense the information contained in the CGN to a smaller network in the way explained in this section. Similarly, scLPwR and cLPwR can be regarded on line networks. However, since we investigate only uLPwR under these restrictions, we state our definitions in this section in terms of uLPwR.
26 2 Line Planning
As we will see in Lemma 2.2.6, in linear PTNs with all lines having the same driving time function, the travel time of an OD-pair depends only on the transfers on its path Puv from origin to destination (remember that in uLPwR all passengers of an OD-pair travel on the same path Puv). We can hence minimize the overall transfer time
$$t(\mathcal{L}',\mathcal{R}) := \sum{P{uv} \in \mathcal{R}} w{uv} t(\mathcal{L}', P{uv})$$
of a solution .L0 ; R/ to an instance I D .N;L; OD;B/ of uLPwR instead of the overall travel time.
Lemma 2.2.6. Let I D .PT N ;L; OD;B/ be an instance of uLPwR with PT N linear and line driving time functions ˛l WD ˛ with a fixed ˛ W RC 0 ! RC for all l 2 L0 . Let .L0 ; R/ be a solution to I . Then it holds that
$$(\mathcal{L}',\mathcal{R})$$ is an optimal solution to $I$ $\Leftrightarrow$ $t(\mathcal{L}',\mathcal{R}) \leq t(\hat{\mathcal{L}},\hat{\mathcal{R}})$ for all feasible solutions $(\hat{\mathcal{L}},\hat{\mathcal{R}})$ to $I$ .
Proof. Let .*u*k; *v*k/ 2 OD be an OD-pair. Note that for any path Pk for .*u*k; *v*k/ 2 N , the corresponding path PPTN k in PT N is the same, since PT N is linear. Since ˛l D ˛ for all l 2 L0
$$d(\mathcal{OD}) := \sum_{(u_k, v_k) \in \mathcal{OD}} wk \sum{e \in P_k^{\mathcal{DTN}}} \alpha(L_e)$$
is well-defined and does not depend on the chosen routing. We obtain
$$c(\mathcal{L}', \mathcal{R}) = \sum_{P_k \in \mathcal{R}} w_k c(\mathcal{L}', P_k)$$
$$= \sum_{P_k \in \mathcal{R}} wk \sum{a \in Pk \cap A{\text{drive}}} ca + \sum{P_k \in \mathcal{R}} wk \sum{a \in Pk \cap A{\text{trans}}} c_a$$
$$= \sum_{P_k \in \mathcal{R}} wk \sum{a \in Pk \cap A{\text{drive}}} \alpha(Le) + \sum{P_k \in \mathcal{R}} w_k t(\mathcal{L}', P_k)$$
$$= \sum_{(u_k, v_k) \in \mathcal{OD}} wk \sum{e \in P_k^{\mathcal{PTN}}} \alpha(L_e) + t(\mathcal{L}', \mathcal{R})$$
$$= d(\mathcal{OD}) + t(\mathcal{L}', \mathcal{R}).$$
Since d.OD/ does not depend on the chosen line concept or the chosen routing, the statement of the lemma follows. ut
Let I D .PT N ;L; OD;B/ be an instance of uLPwR. We say that the transfer penalties in I are station-independent if for every pair of lines l; l0 2 L, there is a pl l0 2 N0 with pl l0 s WD pl l0 for all s 2 S.l/ \ S.l0 /.
If for instance I D .PT N ;L; OD;B/ of uLPwR the PTN is linear, line driving time functions are equal, and transfer penalties are station-independent; the transfer time of an OD-pair on path Pk only depends on the line sequence which is used on Pk, i.e.,
$$t(\mathcal{L}', Pk) = \sum{a \in Pk \cap A{\text{trans}}} ca = \sum{([s.l], [s.l']) \in Pk \cap A{\text{trans}}} ps^{ll'} = \sum{([l.l'): \exists s \in Ss.t.([s.l], [s.l']) \in Pk \cap A{\text{trans}}} p^{ll'}$$
Let I D .PT N ;L; OD;B/ be an instance of uLPwR. In the remainder of this section we assume that
In this case, we can condense the information contained in the CGN to a smaller network, the line network. The nodes in the line network model the lines the passengers can take as well as origins and destinations.
Definition 2.2.7. The node set of the line network is defined as VL WD L [ Vorg [ Vdest.
Again the arcs are introduced to model travel possibilities.
• The set of transfer arcs of the line network is defined as
$$(AL){\text{trans}} := {(l, l') : S(l) \cap S(l') \neq \emptyset}.$$
The length of a transfer arc .l; l0 / 2 .AL/trans is cl l0 WD pl l0
• The set of origin arcs of the line network is defined as
$$(AL){\text{org}} := {(u^{\text{org}}, l) : u^{\text{org}} \in V_{\text{org}}, l \in \mathcal{L}(u)}.$$
The arc lengths are c.*u*org;l/ WD 0 for all .*u*org;l/ 2 .AL/org.
• The set of destination arcs of the line network is defined as
$$(AL){\text{dest}} := {(l, v^{\text{dest}}) : v^{\text{dest}} \in V_{\text{dest}}, l \in \mathcal{L}(v)}.$$
The arc lengths are c.l;*v*dest/ WD 0 for all .l; *v*dest/ 2 .AL/dest.
28 2 Line Planning
Fig. 2.5 Construction of the LN (a) linear PTN (b) constructed LN
We now define the line network (LN) as NL D .VL; AL/ with
$$A_L := (AL){\text{trans}} \cup (AL){\text{org}} \cup (AL){\text{dest}}.$$
We denote nNL WD jVLj and mNL WD jALj.
See Fig. 2.5 for an example. In Fig. 2.5a a PTN and five lines l1; l2; l3; l4, and l5 are given. Assume that OD D f.s1; s5/g. Figure 2.5b shows the corresponding LN for the so-defined instance of uLPwR.
Given an instance .PT N ;L; OD;B/ of uLPwR fulfilling (1)–(3) with PT N D .S; E/, the corresponding LN is of size O..*L*jCj*OD*j/ j*L*j/. The time needed for its construction is in O..jSjj*L*jCj*OD*j/ j*L*j/. This can be seen as follows: Given the nodes L of the LN, for every station s 2 S we draw a pair of directed transfer arcs between all pairs of nodes in L.s/. This can be done in O.jSjj*L*j 2/. Then for each of the origin and destination nodes (there are at most O.j*OD*j/), we add at most j*L*j origin or destination arcs. The resulting networks have O.j*L*jCj*OD*j/ nodes and O.j*L*j 2 C j*OD*jj*L*j/ arcs.
Let I D .N;L; OD;B/ be an instance of uLPwR with properties (1)–(3) from Sect. 2.2.3 and NL the corresponding LN. It is easy to check that for every OD-pair .u; v/ 2 OD, every path in NL from *u*org to *v*dest represents a line-route or a path in N from *u*org to *v*dest and vice versa.
Now, for a line concept L0 and a line-route P0 uv which is feasible for L0 , we can regard the corresponding path Puv in NL instead and calculate the transfer time along P0 uv as
$$t(\mathcal{L}', P'{uv}) = \sum{a \in P_{uv}} c_a.$$
If Puv is a simple path in NL, the cost along P0 uv is
$$b(\mathcal{L}', P'{uv}) = \sum{l \in P'_{uv}} b_l.$$
Note that any path corresponding to a "reasonable" line-route is simple. Hence for instances with properties (1)–(3), we identify line-routes, paths in the CGN, and paths in the LN.
Again, we can define a routing on our simplified network structure, which for instances of uLPwR with properties (1)–(3) corresponds to a routing in the CGN or a line-routing. A routing in an LN NL is a collection R WD fPuv W .u; v/ 2 *OD*g with Puv being a path from *u*org to *v*dest in NL.
Similar to the routing network in Sect. 2.2.1, we can define a line routing network as NL.L0 / WD .VL.L0 /; AL.L0 // with
$$VL(\mathcal{L}') := \mathcal{L}' \cup V{\text{org}} \cup V_{\text{dest}}$$
and
$$A_L(\mathcal{L}') := {(i, j) \in A_L : i, j \in V_L(\mathcal{L}')}.$$
We can easily transfer the notion of feasibility to routings in the LN: A routing R in NL is feasible for a line concept L0 (or, vice versa, L0 is feasible for R) if R is a routing in NL.L0 /, i.e., Puv - NL.L0 / for all Puv 2 R. That is, given a line concept *L*0 , a routing in NL is feasible for L0 if and only if the corresponding line-routing is feasible for L0 .
We can now restate uLPwR from Definitions 2.1.5 and 2.2.5 for instances fulfilling properties (1)–(3), where, due to Lemma 2.2.6, we can take the overall transfer time instead of the overall travel time as an objective.
Definition 2.2.9. An instance .NL;L; OD;B/ of uncapacitated line planning with routing (uLPwR) fulfilling conditions (1)–(3) consists of a line pool L, a LN NL, a set of OD-pairs OD, and a budget B.
The task is to choose a feasible line concept L0 and a feasible routing R in NL.L0 /, such that the overall transfer time t .L0 ; R/ of the passengers is minimized.
In the following, we assume that for every instance I D .PT N ;L; OD;B/ of uLPwR, N and NL are given, since they can be determined in polynomial time from .PT N ;L; OD;B/. To solve the problems or to prove complexity results, we use Definitions 2.1.5, 2.2.5, and (in case that conditions (1)–(3) hold) 2.2.9 for uLPwR equivalently. The running time of the algorithms is always stated with respect to the problem formulation used and the time needed to transfer a PTN to a CGN or to an LN is not added.
Also for scLPwR and cLPwR we use both Definitions 2.1.5 and 2.2.5 equivalently and do not add the time needed to transfer instances to the algorithms.
30 2 Line Planning
In this section we show that the choice of a line concept or a routing is enough to define a solution to line planning problems.
Definition 2.3.1. Let I D .N;L; OD;B/ be an instance of uLPwR and let R be a routing in N:
• We define the line concept corresponding to R as
$$\mathcal{L}(\mathcal{R}) := \bigcup_{P_k \in \mathcal{R}} {l : \exists a \in P_k \text{ with } l(a) = l}.$$
• If L.R/ is feasible, we call .L.R/; R/ the solution corresponding to R.
Analogously to Definition 2.3.1 we write L.P / WD fl W 9a 2 P with l.a/ D lg for any path P in a CGN N D .V; A/.
Since L.R/ is the minimal line concept that contains R, we have the following lemma.
Lemma 2.3.2. Let I D .N;L; OD;B/ be an instance of uLPwR and let R be a routing in N. Then the following equivalence holds:
$$\exists \ \mathcal{L}' \ feasible \ for \ \mathcal{R} \Leftrightarrow \mathcal{L}(\mathcal{R}) \ is \ feasible \ for \ \mathcal{R}.$$
Analogously to Definition 2.3.1 we can also specify solutions corresponding to a given line concept.
Definition 2.3.3. Let I D .N;L; OD;B/ be an instance of uLPwR and let L0 be a feasible line concept. If there exists a feasible routing for L0 , for every .*u*k; *v*k/ 2 OD we denote by *P*k.L0 / (or Puk vk .L0 /) the set of shortest paths from u org k to *v*dest k in N.L0 /.
• We denote by
$$OPT(\mathcal{L}') := { \mathcal{R}(\mathcal{L}') : { P_1(\mathcal{L}'), P2(\mathcal{L}'), \dots, P{|\mathcal{OD}|}(\mathcal{L}') : P_k(\mathcal{L}') \in \mathcal{P}_k(\mathcal{L}') }$$
the set of routings corresponding to L0 .
• We call f.L0 ; R.L0 // W R.L0 / 2 OPT.L0 /g the set of solutions corresponding to L0
Since R.L0 / is defined as a shortest-path routing, Lemma 2.3.4 follows directly. Lemma 2.3.4. Let I D .N;L; OD;B/ be an instance of uLPwR and let L0 be a feasible line concept. Then for every R.L0 / 2 OPT.L0 / it holds that
$$c(\mathcal{L}', \mathcal{R}(\mathcal{L}')) \le c(\mathcal{L}', \mathcal{R}')$$
for all routings R0 in N.L0 /.
Notation 2.3.5. Let I D .N;L; OD;B/ be an instance of uLPwR. In the following we sometimes describe a solution to I stating only
It has been shown in [Sch12] that also in scLPwR and cLPwR it is possible to construct a line concept from a given routing and vice versa.
For the first, we proceed analogously to Definition 2.3.1 and additionally set the frequencies just high enough such that every passenger can travel on his or her chosen path.
Definition 2.3.6. Let I D .N;L; OD; B;Cap/ be an instance of scLPwR or cLPwR and let R be a routing in N:.
• We define the line concept corresponding to R as
$$\mathcal{L}(\mathcal{R}) := \bigcup_{P_k \in \mathcal{R}} {l : \exists a \in P_k \text{ with } l(a) = l}.$$
with frequencies
$$fl := \max{a:l(a)=l} \left\lceil \frac{\sum{(P, w{uv}^P) \in R} w_{uv}^P}{\text{Cap}} \right\rceil.$$
• If L.R/ is feasible, we call .L.R/; R/ the solution corresponding to R.
Since L.R/ is the minimal line concept that contains R, we have the following lemma.
Lemma 2.3.7. Let I D .N;L; OD; B;Cap/ be an instance of scLPwR or cLPwR and let R be a routing in N. Then we have the following equivalence:
$$\exists \ \mathcal{L}' \ feasible \ for \ \mathcal{R} \Leftrightarrow \mathcal{L}(\mathcal{R}) \ is \ feasible \ for \ \mathcal{R}.$$
32 2 Line Planning
Given a line concept L0 , the frequencies of L0 determine capacities
$$ka := \begin{cases} 0 & \text{if } a \in A{\text{drive}} \text{ and } l(a) \notin \mathcal{L}', \ fl(a) \text{Cap} & \text{if } a \in A{\text{drive}} \text{ and } l(a) \in \mathcal{L}', \ \infty & \text{otherwise.} \end{cases}$$
on the arcs of the CGN. Finding a feasible routing for scLPwR or cLPwR for a given line concept hence resembles a multi-commodity flow problem (see e.g. [GJ79]) instead of a shortest path problem, as in the uncapacitated case. In the following we will see that in fact, finding a feasible line concept for a given routing in uLPwR is not easier than a multi-commodity flow problem, or, in particular, the problem Directed Two-Commodity Integral Flow.
An instance .G; r1; r2; t1; t2; R1; R2/ of Directed Two-Commodity Integral Flow consists of a directed graph G D .VG; AG/ with capacities ka for all a 2 AG. The question to decide is whether there are two flow functions f1; f2 W AG ! ZC 0 such that
$$\sum_{a \in \delta^{+}(v)} fi(a) - \sum{a \in \delta^{-}(v)} f_i(a) = 0 \quad \text{for } i = 1, 2,$$
$$\sum_{a \in \delta^+(t_i)} f_i(a) \ge R_i \quad \text{for } i = 1, 2.$$
Directed Two-Commodity Integral Flow is (strongly) NP-complete [GJ79].
Theorem 2.3.8. Let I D .N;L; OD; B;Cap/ be an instance of scLPwR or cLPwR and let L0 be a line concept. It is strongly NP-complete to decide whether there exists a feasible routing for L0 or not.
Proof. Let .G; r1; r2; t1; t2; R1; R2/ be an instance of Directed Two-Commodity Integral Flow. We now construct an instance I D .N;L; OD; B;Cap/ of scLPwR or cLPwR and a line concept L0
• Let L0 WD L with fla WD ka for all la 2 L be the given line concept. We see that due to the definitions of B, L0 is feasible.
We show now that there exists a solution to .G; r1; r2; t1; t2; R1; R2/ if and only if there exists a solution to I .
• Suppose that R WD *R*sr1 st1 [ *R*sr2 st2 is a feasible routing for L0 . We define
$$fi(a) := \sum{P \in \mathcal{R}{s{ri} s{ti}} : a \in P} w{s_{ri} s{t_i}}^P.$$
Then we can easily verify (1)–(3). Hence, .f1; f2/ is a solution to .G; r1; r2; t1; t2; R1; R2/.
• Note that if there is a solution .f1; f2/ to .G; r1; r2; t1; t2; R1; R2/, there is also a solution .f 1 ; f 2 / to .G; r1; r2; t1; t2; R1; R2/ with
$$\sum_{a \in \delta^{+}(t_i)} f_i^*(a) = R_i \quad \text{for } i = 1, 2.$$ (2.1)
• Let f 1 ; f 2 W AG ! ZC 0 be a solution to .G; r1; r2; t1; t2; R1; R2/ with
$$\sum_{a\in\delta^+(t_i)} f_i^*(a) = R_i \quad \text{for } i = 1, 2.$$
Then due to (2), and (2.1), f i defines a routing *R*sri sti for .sri ; sti/. R WD *R*sr1 st1 [ *R*sr2 st2 is feasible due to (1). Hence, R is a solution to the instance .N;L; OD; B;Cap/ of scLPwR.
• Since line driving time functions and transfer penalties are 0, R is a shortest-path routing in N.L0 /. Thus, R is a solution to the instance .N;L; OD; B;Cap/ of cLPwR.
In Theorem 2.5.1 we will see that even the problem of finding a feasible solution to uLPwR is strongly NP-complete in general. Thus, unless P D NP we cannot hope to find a polynomial-time optimization algorithm or even a polynomial-time approximation algorithm for the general line planning problem with routing.
Due to this result, we impose several restrictions on the problem structure of line planning with routing. In the following sections, we give polynomial- or pseudopolynomial-time algorithms for the obtained subcases or show that they are already NP-hard. The considered restrictions are the following:
• Capacity/frequency restrictions: We start discussing uncapacitated line planning with routing (uLPwR) as defined in Definitions 2.1.5, 2.2.5, and 2.2.9 in
ut
34 2 Line Planning
Sect. 2.5. In Sect. 2.6 we investigate the models scLPwR and cLPwR defined in Definitions 2.1.5, 2.1.6, and 2.2.9 for line planning under capacity restrictions.
While the restrictions on the structure of the OD-pairs are only interesting for theoretical reasons, many of the other assumptions are not as far from reality as they may seem on first glance. Equal line driving functions model the situation that all used trains are of the same type. This may not be completely true in practical instances; nevertheless, we can assume that the number of different train types is small and so is the number of different driving time functions.
Transfers from one train to another are inconvenient for the passengers due to the waiting time at the transfer station and the eventuality of missing connecting trains in case of delays. This is reflected in the transfer penalties. Without too much simplification we can assume that this inconvenience only depends on the number of transfers and not on the stations where the transfers take place nor on the involved trains. Hence, equal transfer penalties seem to be a reasonable choice. Thinking about reasonable passenger routes in public transportation settings, the restriction to instances with NLT appears natural. The situation that underlying PTNs (or at least parts of them) are linear frequently occurs in countries with less dense railway systems like New Zealand or India.
Although vehicle capacity is an important issue in public transportation planning, uncapacitated line planning accentuates the question which lines should be established for the passengers' convenience and leaves the adjustment of capacity requirements to a subsequent step of frequencies setting.
In this section we analyze the computational complexity of uLPwR under different restrictions based on the results from [SS10b, SS12a]. We start restricting the problem class to instances of uLPwR with only one OD-pair in Sect. 2.5.1. Seeing that this problem is already hard, we discover a property inherent to most practical instances that allows us to develop a pseudopolynomial-time solution algorithm for uLPwR with one OD-pair. If we additionally restrict the problem class to linear networks, in Sect. 2.5.2.1 we see that in some cases a significant speed-up is possible. Furthermore, when we relax our assumption of only one OD-pair in Sects. 2.5.2.2 and 2.5.2.3, we discover that in some cases we can transfer our results for one OD-pair to instances of uLPwR in linear networks with several OD-pairs.
Before we study the complexity of uLPwR, we shortly discuss complexity results regarding the related line connectivity problem defined by Borndörfer et al. in [BNP09]. Line Connectivity is defined as follows: Given an undirected graph G D .V; E/, a set of terminal nodes T V , and a set of lines L with nonnegative line costs which cover all edges of G, is there a subset of lines L0 L of minimal cost such that for each pair of distinct terminal nodes t1; t2 2 T there exists a path from t1 to t2 which is completely covered by lines of L0 ?
NP-hardness of this problem can be shown by reduction from the well-known Steiner Tree problem (see Definition on p. 61) by defining for every edge e in the PTN, a line le with unit line cost which serves only edge e.
In case of only two terminals, the Steiner tree problem corresponds to the problem of finding a shortest path between two nodes. Also the line connectivity problem can be solved in this case by a shortest path algorithm in an auxiliary graph. If all nodes are terminal nodes, the Steiner tree problem becomes the minimum spanning tree problem which can be solved to optimality by greedy algorithms (see, e.g., [Gib85]). However, it can be shown that line connectivity is strongly NP-hard even if all nodes of the graph are terminals and all line costs are equal using a reduction from Set Cover [BNP09].
The latter result implies NP-hardness of our line planning problem uLPwR. More precisely, setting OD D f.t1; t2/ W t1; t2 2 T g we obtain that it is even NP-complete to decide whether a feasible solution to uLPwR exists, if all line costs are equal. Since line driving time functions and transfer penalties do not influence the feasibility of a solution, we can assume that for every line l the line driving time function ˛l is defined by ˛l.x/ WD x for x 2 RC 0 and that pl l0 s WD 0 for all lines l; l0 and all stations s to strengthen the theorem.
36 2 Line Planning
Theorem 2.5.1. Finding a feasible solution to uLPwR is strongly NP-complete, even if
Hence, unless P D NP, there is no polynomial-time solution algorithm to find a feasible solution to uLPwR, much less one which finds a solution with guaranteed quality or even an optimal one. Theorem 2.5.1 hence justifies our approach of analyzing subclasses of instances of uLPwR according to the classification made in Sect. 2.4.
We now start our analysis of the optimization problem uLPwR by showing that without further limitations on the structure of the line pool, uLPwR is strongly NP-hard, even if we have only one OD-pair.
We prove this by reduction from the strongly NP-complete problem Hitting Set [GJ79]. An instance .P; Q; K/ of Hitting Set consists of a set P D fp1; p2;:::;pmg, a set of subsets Q D fq1; q2;:::;qng of P, and a natural number K < jPj. The question to decide is whether there is a subset P0 - P with jP0 j K such that every qj 2 Q contains at least one pi 2 P0 .
Proof. Let .P; Q; K/ be an instance of Hitting Set with P D fp1; p2;:::;pmg and Q D fq1; q2;:::;qng. We construct an instance I of uLPwR with one OD-pair in the following way.
• We set the set of stations to be
$$S := {s1, s{4n+2}} \cup {s{4(j-1)+2}, s{4(j-1)+3}, s_{4(j-1)+4} : j = 1, \dots, n}$$
$$\cup {s{4(j-1)+2}^i, s{4(j-1)+4}^i : j = 1, \dots, n, i = 1, \dots, m}$$
$$\cup {s_{4(j-1)+5}^i : j = 1, \dots, n-1, i = 1, \dots, m}$$
and define the set of edges of the PTN as
$$\begin{split} E &= {{s_1, s2}} \ &\quad \cup {{s{4(j-1)+2}, s{4(j-1)+3}}, {s{4(j-1)+3}, s{4(j-1)+4}}, {s{4(j-1)+4}, s{4(j-1)+6}} \ &\quad : j = 1, \dots, n} \ &\quad \cup {{s{4(j-1)+2}^i, s_{4(j-1)+4}^i} : j = 1, \dots, n, i = 1, \dots, m} \end{split}$$
Fig. 2.6 Example for the construction of the CGN in the proof of Theorem 2.6
$$\bigcup { {s{4(j-1)+4}^i, s{4(j-1)+5}^i}, {s{4(j-1)+5}^i, s{4(j-1)+6}^i} : j = 1, \dots, n-1, \\ni = 1, \dots, m }$$
We set M WD 2n C 2,
$$L{{s{4(j-1)+3},s{4(j-1)+4}}} := M \text{ for } j = 1,\dots,n,$$ and $L{{s{4(j-1)+5}^i,s{4(j-1)+6}^i}} := M \text{ for } i = 1,\dots,m, \ j = 1,\dots,n-1.$
All other edge lengths are set to Le WD 1.
Now whenever pi 2 qj , we identify si 4.j-1/C2 WD s4.j-1/C2 and si 4.j-1/C4 WD s4.j-1/C4.
An example for the CGN constructed for the set P D f1; 2; 3g and the set of subsets Q D ff1; 2g; f1; 3gg where we omit all transfer arcs that cannot be used in a solution .L0 ; R/ with c.L0 ; R0 / 5 is shown in Fig. 2.6. For the sake of a compact representation, the lines are omitted in the node labels.
Now we claim that if and only if there is a solution to the constructed instance of uLPwR with objective value better or equal to 2n C 1, there is a solution to the given instance .P; Q; K/ of Hitting Set.
$$(\mathcal{L}', P_{uv}) \geq M > 2n + 1.$$
38 2 Line Planning
Thus, for every j D 1; : : : ; n, fŒs4.j-1/C4; l 0; Œs4.j-1/C6; l 0gDfŒs4.j-1/C4; l 0; Œs4jC2; l 0g 2 Puv and there exists an i such that fŒsi 4.j-1/C2; li ; Œsi 4.j-1/C4; li g 2 Puv. Furthermore fŒs1; l 0; Œs2; l 0g 2 Puv.
Hence, for every j D 1; : : : ; n there is a line li 2 L0 such that a transfer from line l 0 to line li is possible at station s4.j-1/C2. In other words, for every j D 1; : : : ; n there is an index i with li 2 L0 such that si 4.j-1/C2 D s4.j-1/C2.
Setting P .L0 / WD fpi W li 2 L0 g we obtain that for every j D 1; : : : ; n there is an index i with pi 2 qj . Furthermore,
$$|P(\mathcal{L}')| = |\mathcal{L}'| - 1 = \sum_{l \in \mathcal{L}'} b_l - 1 \le B - 1 = K.$$
Then by construction c.L.Puv.P0 //; Puv.P0 // D 2n C 1, and
$$\sum{l \in \mathcal{L}(P{\text{int}}(P'))} bl \leq \sum{l \in {l^0} \cup {l^l: p_l \in q_l}} b_l \leq |P'| + 1 = K + 1.$$
ut
Note that the instances constructed in the reduction from Hitting Set in the proof of Theorem 2.5.2 look somehow artificial: although there might be situations where a line l has a long detour and we can take a shortcut using another line and entering an earlier train of line l0 , this is not very likely to happen in practice.
We hence assume the NLT property in most of the following results:
Definition 2.5.3. An instance I D .N;L; OD;B/ of uLPwR has the NLT property if there exists an optimal solution .L0 ; R/ to I such that for every P 2 R the following holds:
If i; k 2 Adrive \ P and l.i / D l.k/, then l.j / D l.i / for all j 2 Adrive \ P for which i P j P k.
The NLT property is not an unrealistic requirement on the line pool. If the line driving time functions are equal for all lines and the line pool only allows lines that run along shortest paths in the PTN, the NLT property is fulfilled, as we see in the following lemma. Such a line pool is not uncommon in the literature (see, e.g., [BKZ97]).
Lemma 2.5.4. Consider a public transportation network PT N and a line pool L. If
for every choice of OD - S S and B 2 N, the instance I D .PT N ;L; OD;B/ has the NLT property.
Proof. Let PT N D .V; E/. Consider an optimal solution .L0 ; R/ to I . Let .u; v/ 2 OD be an OD-pair and let Puv be the path chosen for .u; v/ in the corresponding routing network N.L0 / D .V .L0 /; A.L0 //. Suppose that there is a line l which is entered more than once on Puv. Let i1 be the node where l is left the first time and ik be the node where it is entered the second time. Let P0 be the subpath of Puv from i1 to ik and let P be the path from i1 to ik contained in l. For the travel time on P uv WD .Puv n P0 / [ P we obtain
$$c(\mathcal{L}', P{uv}^*) = \sum{a \in P_{uv}^*} c_a$$
$$= \sum_{a \in P} ca + \sum{a \in P_{uv}^* \setminus P} c_a$$
$$= \alpha \left( \sum_{{ij, i{j+1}} \in E: {[ij, I], [i{j+1}, I]} \in P} L_{{ij, i{j+1}}} \right) + \sum{a \in P{uv}^* \setminus P} c_a$$
$$\leq \alpha \left( \sum_{{i'j, i'{j+1}} \in E: \exists I' \text{ s.t. } ([ij, I'], [i{j+1}, I']) \in P'} L_{{i'j, i'{j+1}}} \right) + \sum{a \in P{uv}^* \setminus P} c_a$$
$$\leq \sum_{a \in P'} ca + \sum{a \in P_{uv}^* \setminus P} c_a$$
$$= \sum_{a \in P'} ca + \sum{a \in P_{uv}^* \setminus P'} c_a$$
$$= c(\mathcal{L}', P_{uv}).$$
Thus, we can replace P0 by P, i.e., consider P uv WD .Puv n P0 / [ P instead of Puv. We iterate this replacement procedure until the resulting path has the required property. ut
As we will see in Theorem 2.5.6, the NLT property allows us to find solutions to instances of uLPwR with one OD-pair in pseudopolynomial time. We achieve this by solving uLPwR with one OD-pair as a Resource-Constrained Shortest Path (RCSP) problem in the CGN.
An instance .G; .s; t /; R/ of the optimization problem RCSP (see, e.g., [BC89]) consists of a (directed or undirected) network G D .V; A/ with two nonnegative labels: the length La and the resource consumption ra, on each edge/arc a 2 A. An origin node s and a destination node t are specified, and a bound R 2 N on the resource consumption is given. The task is to find a path P of minimal length from s to t, under the constraint that P a2P ra R.
Let I D .N;L; OD;B/ be an instance of uLPwR with j*OD*j D 1, say OD D f.u; v/g. In order to transform our problem to a RCSP problem, we assign to every 40 2 Line Planning
transfer arc a D .Œs; l; Œs; l0 / and every origin arc a D .*u*org; Œu; l0 / a second label ba that represents the line cost of the line l0 which is entered, i.e., ba WD bl0 . For the driving arcs and the destination arcs, this cost label is set to ba WD 0. Let Puv be a path from *u*org to *v*dest in N.
We denote
$$\tilde{b}(\mathcal{L}(P{uv}), P{uv}) := \sum{a \in P{uv} \cap (A{\text{org}} \cup A{\text{trans}})} b_a.$$
Then
$$b(\mathcal{L}(P{uv}), P{uv}) = \sum{l:E(l)\cap P{uv} \neq \emptyset} b_l$$
$$= \sum{l:([u^{\text{org}},[u,l])\in P{uv}} bl + \sum{l:\exists s,l' \ s.t.([s,l'],[s,l])\in A{\text{trans}}\cap P{uv}} b_l$$
$$\leq \sum{a\in P{uv}\cap (A{\text{org}}\cup A{\text{trans}})} b_a$$
$$= \tilde{b}(\mathcal{L}(P{uv}), P{uv}). \tag{2.2}$$
This gives us the following lemma.
Lemma 2.5.5. Let I D .N; f.u; v/g;L;B/ be an instance of uLPwR and let P be a feasible solution with objective value c to the instance .N; .*u*org; *v*dest/; B/ of RCSP with the labels La WD ca and ra WD ba on the arcs a of N*, origin node uorg, destination node vdest, and the bound* B on the sum over the ba. Then .L.P /; fPg/ is a feasible solution to I with c.L.P /; fPg/ D c.
Note that if the NLT property holds, in (2.2) it follows that b.L.Puv/; Puv/ D Q b.L.Puv/; Puv/. In this case, the optimal solution path Puv to I is also optimal for RCSP. Hence, in this case we obtain the stronger result of Theorem 2.5.6.
Theorem 2.5.6. Given an instance I D .N; f.u; v/g;L;B/ of uLPwR which has the NLT property, any optimal solution to the instance .N; .*u*org; *v*dest/; B/ of RCSP with the labels La WD ca and ra WD ba on the arcs of N*, origin node uorg, destination node vdest, and the bound* B on the sum over the ba, is an optimal solution to I .
Although RCSP is NP-hard [WC96], it can be solved in pseudopolynomial time. The algorithm given in [Phi93] solves the RCSP problem in time O.jAjR C jV jR log.jV jR//.. For an instance I 0 D .G; .s; t /; R/ of RCSP, it constructs a search graph S D .VS ; AS /, that is, a graph whose node set VS consists of R copies of the node set of the initial graph G D .V; A/ for the constraint on the resources R. Nodes Œi; r in this graph represent the nodes i from the initial graph as well as the actual level of resource consumption. Consequently, an arc .Œi; r; Œj; r0 / is introduced if .i; j / 2 A and rij D r0 r. Applying Dijkstra's algorithm on S for start node, Œs; 0 provides us with a set of paths fPr W r D 1; : : : ; Rg where Pr is a shortest path from Œs; 0 to Œt; r in S if such a path exists. Choosing a path of minimal length from fPr W r D 1; : : : ; Rg, we obtain an optimal solution to I 0 .
Note that the structure of the search graph makes it possible to reverse the role of "resource" and "length": that is, given a bound P L on the path lengths, e.g., L WD a2A La for the set of edges or arcs A, we can construct a search graph S0 D .V 0 S ; A0 S / whose node sets consist of L copies of V . In this case, nodes Œi; l in S0 represent the nodes i from the initial graph as well as the traveled distance to the origin, i.e., .Œi; l; Œj; l0 / 2 A0 S , if .i; j / 2 A and Lij D l0 l. Applying Dijkstra's algorithm on S0 for start node, Œs; 0 provides us with a set of paths fPl W l D 1; : : : ; Lg where Pl is a shortest path from Œs; 0 to Œt; l if such a path exists. The path Pl with minimal l among all found paths is an optimal solution to I 0 .
Using the algorithm from [Phi93] and observing that the travel time in N is bounded by C WD maxf1;P a2A cag and the costs are bounded by BO WD minfB;P a2A bag, we obtain the following results.
Theorem 2.5.7. Let I D .N;L; OD;B/ be an instance of uLPwR with j*ODj D 1.*
Hence, an upper bound on the objective value of an instance I of uLPwR with one OD-pair is provided by the RCSP algorithm. On the other hand, a lower bound for the objective value of any line planning problem with routing is easily obtained by performing a shortest-path routing in the CGN (neglecting line costs).
By modifying a proof for NP-completeness of the decision version of the RCSP problem (see [WC96]), in Theorem 2.5.8 we find that we cannot do better than solving uLPwR with one OD-pair in pseudopolynomial time, even if we require that our instances have the NLT property.
We prove Theorem 2.5.8 by reduction from Partition. An instance of Partition consists of a set M of n natural numbers that sum up to a number M. The question is whether there is a subset M0 of M such that the sum of all elements in M0 is M 2 . Partition is NP-complete [GJ79].
42 2 Line Planning
Fig. 2.7 Example for the construction of an instance of uLPwR in the proof of Theorem 2.5.8 (a) The constructed PTN (b) The constructed CGN
Proof. Let M D fm1;:::;mng be an instance of Partition. We construct the following instance I of uLPwR:
Figure 2.7 shows an example with M D fm1; m2; m3; m4g. We observe that by construction the NLT property holds in all so-constructed instances.
Note that for every line-route Puv from u D s1 to v D snC1, the sum of its line costs b.L.Puv/; Puv/ and its traveling time c.L.Puv/; Puv/ is
$$b(\mathcal{L}(P{uv}), P{uv}) + c(\mathcal{L}(P{uv}), P{uv}) = nM.$$
We show that if and only if there is a line-route Puv from s1 to snC1 with cost b.L.Puv/; Puv/ B D M 2 and travel time c.L.Puv/; Puv/ nM M 2 , there is a solution to the given instance of Partition.
$$b(\mathcal{L}(P{uv}), P{uv}) \leq \frac{M}{2}, \quad c(\mathcal{L}(P{uv}), P{uv}) \leq nM - \frac{M}{2}$$
and
$$b(\mathcal{L}(P{uv}), P{uv}) + c(\mathcal{L}(P{uv}), P{uv}) = nM,$$
we can conclude that b.L.Puv/; Puv/ D M 2 holds. We define M.Puv/ WD fmj W ej 2 EPuv g and obtain that
$$\sum_{mj \in \mathcal{M}(P{uv})} mj = \sum{j: ej \in E{P_{uv}}} mj = \sum{j: lj \in \mathcal{L}(P{uv})} mj = \sum{j: lj \in \mathcal{L}(P{uv})} b_{lj} = b(\mathcal{L}(P{uv}), P_{uv}) = \frac{M}{2},$$
hence M.Puv/ is a solution to the given instance of Partition.
$$E{P{uv}}(\mathcal{M}') := {e_j : m_j \in \mathcal{M}'} \cup {e^j : m_j \notin \mathcal{M}'}.$$
Then EPuv .M0 / induces a path Puv.M0 / in PT N for which
$$\begin{split} b(\mathcal{L}(P{uv}(\mathcal{M}')), P{uv}(\mathcal{M}')) &= \sum{l: E{P_{uv}(\mathcal{M}')} \cap E(l) \neq \emptyset} bl \ &= \sum{j: E{P{uv}(\mathcal{M}')} \cap E(l^j) \neq \emptyset} b{l^j} + \sum{j: E{P{uv}(\mathcal{M}')} \cap E(lj) \neq \emptyset} b{lj} \ &= 0 + \sum{m_j \in \mathcal{M}'} m_j \ &= \frac{M}{2}, \end{split}$$
and
$$c(\mathcal{L}(P{uv}(\mathcal{M}')), P{uv}(\mathcal{M}')) = nM - b(\mathcal{L}(P{uv}(\mathcal{M}')), P{uv}(\mathcal{M}')) = nM - \frac{M}{2}.$$
Later, in Corollary 2.5.17, we see that the problem from Theorem 2.5.8 can be solved in polynomial time if the driving time function of all lines is equal and the PTN is linear.
Although it allows to reduce the solution time to pseudopolynomial time in the case of only one OD-pair, the NLT property does not help in the general case 44 2 Line Planning
of uLPwR, where we have more OD-pairs. In fact, even if we assume that every line covers only one edge of the PTN (a case in which the NLT property trivially holds), the problem of finding an optimal line concept and an optimal routing can be reduced to the Steiner tree problem (see [Sch05]).
In this section we restrict our analysis to linear PTNs as defined in Definition 1.3.4. Before we expose our results regarding the optimization problem uLPwR in the next three sections, we shortly discuss the solvability of the associated feasibility problem. In contrast to the result of Theorem 2.5.1, the restriction to linear PTNs allows polynomial-time solutions, by regarding the problem as a Set Cover problem with consecutive-ones property:
Theorem 2.5.9. An instance I D .PT N ;L; OD;B/ of the feasibility problem of uLPwR where PT N is a linear network can be solved in polynomial time.
Proof. Let I D .PT N ;L; OD;B/ be an instance of uLPwR with PT N D .V; E/ linear. Let E0 denote the set of edges that are used by at least one OD-pair. A line concept L0 is a feasible solution to I if and only if P l2L0 bl B and for all e 2 E0 there is at least one line l 2 L0 with e 2 E.l/. Thus, we can decide the feasibility problem by solving the following (weighted) Set Cover problem with
variables $$x_l := \begin{cases} 1 \text{ if } l \in \mathcal{L}' \ 0 \text{ otherwise} \end{cases}$$ for all $l \in \mathcal{L}$ :
$$\min \sum_{l=1}^{|\mathcal{L}'|} b_l x_l$$
$$s.t. \ Ax \ge 1,$$
$$x_l \in {0, 1},$$
where $$A := (a{el}){e=1,\dots,|E'|;\ l=1,\dots,|\mathcal{L}|}$$ with $a_{el} := \begin{cases} 1 \text{ if } e \in l \ 0 \text{ otherwise.} \end{cases}$
This integer program can be solved in polynomial time: Let the elements e0 i in E0 be indexed consecutively in the same order as in E. Then, for a line l, if e0 i 2 l and e0 k 2 l, also e0 j 2 l for all j 2 fi C 1; i C 2;:::; k 1g. Hence, A has the consecutive-ones property and is totally unimodular. Thus, the integer program can be solved by linear programming. ut
In Sect. 2.5.2.1 we consider the case of uLPwR for only one OD-pair in a linear PTN. In Sects. 2.5.2.2 and 2.5.2.3 we extend our results to situations with more OD-pairs.
The first theorem shows that even in the case of linear PTNs, the NLT property is indispensable for solving instances of uLPwR with one OD-pair efficiently.
Theorem 2.5.10. uLPwR is strongly NP-hard, even if
Proof. Similarly to Theorem 2.5.2 we prove this by reduction from Hitting Set. Let .P; Q; K/ be an instance of Hitting Set with P D fp1; p2;:::;pmg and Q D fq1; q2;:::;qng. We construct an instance I of uLPwR in the following way:
$$p{s{2j+1}}^{l^j l_i} := \begin{cases} 0 \text{ if } p_i \in q_j \ 1 \text{ otherwise.} \end{cases}$$
See Fig. 2.8 for an example of this construction with element set P D fp1; p2; p3; p4g and set of subsets Q D ffp2; p4g; fp1; p3g; fp2; p3; p4gg. The PTN is depicted in Fig. 2.8a. The CGN is shown in Fig. 2.8b where we only show transfer arcs with zero penalty.
We now claim that there is a solution .L0 ; R/ to the described instance of uLPwR with objective value c.L0 ; R/ 2n C 1 if and only if there is a solution to the instance .P; Q; K/ of Hitting Set.
Hence, for the set P .L0 / WD fpi W li 2 L0 g it holds that for every qj there is a pi 2 P .L0 / such that pi 2 qj . Furthermore,
$$|P(\mathcal{L}')| = |{p_i : li \in \mathcal{L}'}| = \sum{l \in \mathcal{L}'} b_l \le K.$$
46 2 Line Planning
Fig. 2.8 Example for the construction of an instance of uLPwR in Theorem 2.5.10 (a) constructed PTN (b) constructed CGN
ut
$$\sum{l \in \mathcal{L}(P{uv})(P')} b_l = |{li \in \mathcal{L}(P{uv}(P'))}| \le |P'| = K.$$
Due to this hardness result we assume in the following that the NLT property holds. Applying the result of Lemma 2.5.4 to linear PTNs, we obtain the following corollary.
Corollary 2.5.11. Let I D .PT N ;L; OD;B/ be an instance of uLPwR with
Then I has the NLT property.
Theorem 2.5.12. uLPwR is NP-hard, even if
and one of the following conditions is fulfilled:
This can be shown by reduction from Partition analogously to the proof of Theorem 2.5.8 (see [SS12a]). Thus, under the assumption that P ¤ NP, we cannot get substantially better than the pseudopolynomial running time of the RCSP algorithm proposed in Lemma 2.5.7.
Certainly, if the NLT property is fulfilled, for uLPwR with one OD-pair, we can apply the RCSP algorithm also on linear networks. However, compared to the running time of the algorithm presented in Theorem 2.5.7 we can obtain a speed-up if the line driving time functions of all lines are equal, due to the property shown in Lemma 2.2.6. There, we saw that in case of a linear PTN and equal line driving time functions for all lines, only the transfer penalties need to be considered.
Consequently, without loss of generality, when searching for an optimal solution .L0 ; R/ we can assume all driving arc lengths to be 0 in the situation of Lemma 2.2.6. Thus, we obtain the following corollary to Theorem 2.5.7.
Corollary 2.5.13. An optimal solution to an instance of uLPwR with
can be found in time
48 2 Line Planning
Proof. Due to Lemma 2.2.6 we can assume that all driving arcs in the CGN have length 0. Since the NLT property holds (Lemma 2.5.11), every line is entered at most once. Thus, the length of our path (counting only transfer arcs) in the CGN is at most Q WD maxf1;P l2L maxl02L maxs2S.l/ pl0 l s g. Applying the RCSP algorithm yields the result of the corollary. ut
Now we consider station-independent transfer penalties and equal line driving time functions. We are hence in the situation of Sect. 2.2.3 and can apply the RCSP algorithm to the problem in the LN instead of the CGN which leads to further speed-up.
any optimal solution to the instance .NL; .*u*org; *v*dest/; B/ of RCSP with the labels ca for all a 2 AL and bl l0 WD bl for all .l; l0 / 2 AL is an optimal solution to .NL; .u; v/;L;B/.
Proof. Consider an instance I D .NL; .u; v/;L;B/ of uLPwR as described in the lemma. Again, we assign to every arc a D .*u*org; l0 / or a D .l; l0 / the second label bl l0 WD bl0 and set bl*v*dest WD 0 for every l; l0 2 L0 for which the corresponding arcs are defined in the LN.
Since ca; la 0 for every a 2 AL, without loss of generality we can assume that any optimal path Puv for OD-pair .u; v/ 2 OD is simple. Hence,
$$b(\mathcal{L}(P{uv}), P{uv}) = \sum{l \in P{uv}} ba = \sum{a \in P_{uv}} ba =: \tilde{b}(\mathcal{L}(P{uv}), P_{uv}).$$ (2.3)
Therefore, any optimal solution to the instance .NL; .*u*org; *v*dest/; B/ of RCSP is an optimal solution to the instance .NL; .u; v/;L;B/ of uLPwR. ut
Applying the RCSP algorithm from [Phi93] described on p. 40 we obtain the following corollary.
can be solved in pseudopolynomial time O.mNLQO C nNLQO log.nNLQ// O with
$$\hat{Q} := \max \left{ 1, \sum{l \in \mathcal{L}} \max{l' \in \mathcal{L}} p^{l'l} \right}.$$
If additionally the transfer penalties are equal, we can assume all transfer penalties to be 1:
Lemma 2.5.16. Let I p D .Np L ;L; OD;B/ be an instance of uLPwR with
Let .*L*p; *R*p/ be an optimal solution to I p. Then t .*L*p; *R*p/ D p t .*L*1; *R*1/ for an optimal solution .*L*1; *R*1/ to the instance I 1 WD .N1 L;L; OD;B/ where N1 L is the LN Np L with transfer penalties 1 instead of p.
Proof. For any routing Rp
$$t(\mathcal{L}(\mathcal{R}^p), \mathcal{R}^p) = p \cdot \sum_{Pi \in \mathcal{R}^p} |A{\text{trans}}^p \cap P_i| = p \cdot t(\mathcal{L}(\mathcal{R}^1), \mathcal{R}^1)$$
which implies the statement of the lemma. ut
Due to Lemma 2.2.6, this leads to the following corollary to Theorem 2.5.15.
Corollary 2.5.17. Let I D .NL;L; OD;B/ be an instance of uLPwR with
I can be solved in time
In the next two sections we investigate whether the results of the previous section can be generalized. We stick to the restriction that the underlying PTN is linear but relax the strong assumption of only one OD-pair by allowing a set of OD-pairs OD D f.u; *v*k/ W k D 1:::;mg which all have the same origin u and start traveling in the same direction. Thereby, for the sake of a simpler notation, we assume that the destinations of the OD-pairs as well as the nodes in the PTN are labeled in the direction the OD-pairs are traveling.
50 2 Line Planning
Given a public transportation network PT N with a specified direction of travel, we write s PT N s0 , or s0 PT N s to indicate that station s precedes station s0 in the direction the OD-pairs travel in PT N , and s <PT N s0 , or, s0 >PT N s, respectively, to emphasize that additionally s ¤ s0 holds.
In case of several OD-pairs with the same origin, the NLT property alone is not enough to obtain pseudopolynomial running time anymore. By reduction from Hitting Set, similar to the proof of Theorem 2.5.2, uLPwR can be shown to be strongly NP-hard in general, even for instances which have the NLT property. (See [SS12a] for a proof.)
Similarly to the reduction in the proof of Theorem 2.5.8 we can show that when we have several OD-pairs having the same origin, uLPwR is NP-hard, even if all lines have the same line driving time function and if all transfer penalties are equal. Details of the proof are provided in [SS12a].
This contrasts the result of Corollary 2.5.17, where we could solve the case of only one OD-pair in polynomial time.
However, in the situation of Theorem 2.5.19, there is an optimal solution such that the routing is nested, as we will see in Lemma 2.5.20. We say that a collection of paths in a directed network N is nested if there is a simple path P in N such that
$$P^* = \bigcup{P \in \mathcal{R}} (P \cap (A{\text{drive}} \cup A_{\text{trans}})).$$
For every solution .L0 ; R/ there exists a routing R WD fP i W i D 1; : : : ; mg 2 OPT.L0 / which is nested.
Proof. Let a solution .L0 ; R/ be given. For every l 2 L0 denote by sl the last station on l. For every s 2 S l2L0 S.l/ choose a line ls 2 .L0 *L*.s// such that sls PT N sl0 for all l0 2 L0 \ L.s/. Then we construct a line-route P as follows:
We now show that P contains optimal line-routes from u to vi for i D 1; : : : ; m with regard to the line concept L0 . Denote by P i the line-route for OD-pair .u; *v*i/ contained in P and by Pi the corresponding path in the CGN. Assume that there is an i such that there exists a path P0 i from *u*org to *v*dest i with c.L0 ; P0 i / < c.L0 ; Pi/, or, equivalently,
$$|A_{\text{trans}} \cap Pi'| < |A{\text{trans}} \cap P_i|. \tag{2.4}$$
Let SPi WD .s1;:::;ski/ denote the sequence of stations where passengers on Pi enter or leave a line, i.e., s1 D u, ski D vi and for j D 2;:::; ki 1, sj 2 SPi if and only if Pi \ f.Œsj ; l; Œsj ; l0 / W l; l0 2 L0 g¤;. Let SP0 i WD ..s0 /1; : : : ; .s0 /k0 i/ denote the analogous sequence for P0 i .
Then s1 D u D .s0 /1, ski D vi D .s0 /k0 i and k0 i < ki due to (2.4). Thus, there is a j 2 f1; 2; : : : ; k0 i g such that .s0 /j PT N sj and .s0 /jC1 >PT N sjC1. Let l0 j denote the line taken by P0 i between .s0 /j and .s0 /jC1. Then sj 2 S.l0 j / and sl0 j PT N .s0 /jC1 >PT N sjC1 D sls which is a contradiction to the definition of ls . ut
Note that Lemma 2.5.20 implies that for every instance of uLPwR restricted as described there, there is an optimal solution .L0 ; R/ such that P WD S P i 2R P i is a path in N.L0 /. This enables us to transfer the instances of uLPwR with OD-pairs with the same origins to instances of uLPwR with only one OD-pair.
Lemma 2.5.21. Consider an instance I 1 D .N1; OD;L;B/ of uLPwR with
Denote by N2 the CGN built from PT N for the only OD-pair .u; *v*m/ 2 OD1 and transfer penalties given as
$$p_s^{ll'} := ps := \sum{(u,vj) \in \text{OD}: s <{\mathcal{PTN}vj}} w{uv_j} p.$$ (2.5)
Then there is a bijection between
52 2 Line Planning
fulfilling the property that
Proof. Without loss of generality we can assume that ca D 0 for all a 2 Adrive due to Lemma 2.2.6.
Furthermore setting P1 0 .P2/ D ; we obtain
$$\begin{split} c(\mathcal{L}(\mathcal{R}^2), \mathcal{R}^2) &= t(\mathcal{L}(\mathcal{R}^2), P^2) \ &= \sum_{([s,l],[s,l']) \in P^2} ps^{ll'} \ &= \sum{([s,l],[s,l']) \in P^2} \sum_{j=1,\dots,m:s < \mathcal{PTN^V}j} w{uvj} p \ &= \sum{r=1}^m \sum_{([s,l],[s,l']) \in (Pr^1(P^2) \backslash P{r-1}^1(P^2))} \sum{j=r}^m w{uvj} p \ &= \sum{r=1}^m \sum_{([s,l],[s,l']) \in (Pr^1(P^2) \backslash P{r-1}^1(P^2))} \sum{j=r}^m w{uvj} p \ &= \sum{r=1}^m |[Pr^1(P^2) \backslash P{r-1}^1(P^2)] \cap A{\text{trans}}| \sum{j=r}^m w_{uvj} p \ &= \sum{r=1}^m t(\mathcal{L}(\mathcal{R}^1), Pr^1(P^2) \backslash P{r-1}^1(P^2)) \sum{j=r}^m w{uvj} \ &= \sum{r=1}^m \sum_{j=r}^m t(\mathcal{L}(\mathcal{R}^1), Pr^1(P^2) \backslash P{r-1}^1(P^2)) w_{uvj} \ &= \sum{j=1}^m \sum_{r=1}^j t(\mathcal{L}(\mathcal{R}^1), Pr^1(P^2) \backslash P{r-1}^1(P^2)) w_{uvj} \ &= \sum{j=1}^m w_{uvj} \sum{r=1}^j t(\mathcal{L}(\mathcal{R}^1), Pr^1(P^2) \backslash P{r-1}^1(P^2)) \end{pmatrix} \end{split}$$
$$= \sum{j=1}^{m} w{uv_j} t(\mathcal{L}(\mathcal{R}^1), P_j^1(P^2))$$ $$= c(\mathcal{L}(\mathcal{R}^1), \mathcal{R}^1).$$
2. Vice versa, let R1 WD fP1 i W i D 1; : : : ; mg be a nested routing in N1 and denote
$$P^{1} := \bigcup{P{i}^{1} \in \mathcal{R}^{1}} \left[ P{i}^{1} \cap (A{\text{drive}} \cup A_{\text{trans}}) \right].$$
We define P2.P1/ as the path P1 i \ .Adrive [ Atrans/ regarded in N2 adding an origin and a destination arc and set R2 WD fP2.P1/g. Then like above, we have L.*R*1/ D L.*R*2/ and c.L.*R*2/; *R*2/ D c.L.*R*2/; P2.P1 P // D m jD1 wuvj t .L.*R*1/; P1 j / D c.L.*R*1/; *R*1/. ut
Applying Lemmas 2.5.20 and 2.5.21 we obtain the following theorem.
Theorem 2.5.22. Consider an instance I D .N;L; OD;B/ of uLPwR with
The instance is solvable in pseudopolynomial time
$$W := \sum{s \in S} \sum{{l_i, l_j}, l_i, lj \in \mathcal{L}(s)} \sum{(u, vj) \in \mathcal{OD}, s <{\mathcal{PTN}vj}} w{uv_j}.$$
Proof. Without loss of generality, we can assume that ca D 0 for all a 2 Adrive because of Lemma 2.2.6. Due to Lemma 2.5.20, there exists an optimal solution .L; R/ to I with R being nested. Thus, we can apply Lemma 2.5.21 and solve the instance I 2, constructed as described there, instead. This can be done in time
$$\begin{split} W := \max \left{ 1, \sum_{a \in A} ca \right} &= \max \left{ 1, \sum{a \in A_{\text{trans}}} ca \right} \ &= \max \left{ 1, \sum{{l_i, l_j}, l_i, l_j \in \mathcal{L}(\mathbf{S})} c_a \right} \end{split}$$
54 2 Line Planning
$$= \max \left{ 1, \sum{s \in S} \sum{{l_i, l_j}, l_i, lj \in \mathcal{L}(s)} \sum{(u, vj) \in \mathcal{OD}, s <{\mathcal{PTN}vj}} w{uv_j} p \right}. \tag{2.6}$$
due to Theorem 2.5.7. Since we can assume that p D 1 due to Lemma 2.5.16, we obtain the statement of the lemma. ut
The property that for every instance there is an optimal solution .L0 ; R/ such that the paths in R are nested can also be proven for instances without transfer penalties for which the NLT property holds. However, since this is possible even in the case of general sets of OD-pairs, this special case will be analyzed in the next section.
We finally investigate the case in which we allow a general structure of the OD-pairs. We make the following assumptions on the instances I D .PT N ;L; OD;B/ considered in this section.
In Lemma 2.5.20 we saw that for some instances of uLPwR in a linear PTN, we can assume that the solution paths are nested. Based on this observation, we developed an algorithm with pseudopolynomial running time in Theorem 2.5.22.
In the following we see that if we do not have transfer penalties, the property that there is an optimal solution with nested routing also holds for arbitrary sets of OD-pairs and lines with arbitrary line driving time functions.
For every solution .L0 ; R/ to I , there exists a nested routing R WD fP k W k D 1; : : : ; mg 2 OPT.L0 /.
Proof. Let .L0 ; R/ be a solution to I . Let sn be the last node in PT N , i.e., s sn8s 2 S. We consider a path P from s org 1 to sdest n in N.L0 / defined by the following line-route: for every edge e we choose a line le 2 argminl2L.e/*L*0 ˛l.Le/.
Let N.*u*k; *v*k/ denote the subnetwork induced by
$${[s,l]: s \in S \text{ s.t. } s \geq_{\mathcal{PTN}} uk \text{ and } s \leq{\mathcal{PTN}} v_k; l \in \mathcal{L}' \cap \mathcal{L}(s)}.$$
For every .*u*k; *v*k/ 2 OD we define P k to consist of the subpath .P\N.*u*k; *v*k// -P and the corresponding origin and destination arcs.
We show now that indeed c.L0 ; P k / c.L0 ; Pk/ for any path Pk for .u org k ; *v*dest k /: since the transfer penalties are 0 we have
$$\begin{split} c(\mathcal{L}', Pk) &= \sum{([s,l],[s',l]) \in Pk \cap A{\text{drive}}} ca \ &= \sum{([s,l],[s',l]) \in Pk \cap A{\text{drive}}} \alphal(L{ss'}) \ &\geq \sum{([s,l{{s,s'}}],[s',l_{{s,s'}}]) \in Pk^* \cap A{\text{drive}}} \alpha{l{{s,s'}}}(L_{ss'}) \ &= c(\mathcal{L}', P_k^*). \end{split}$$
Thus, $$c(\mathcal{L}', \mathcal{R}^*) \le c(\mathcal{L}', \mathcal{R})$$ .
In particular, this implies that there is an optimal solution with nested paths. Like in Lemma 2.5.21 we use this property to establish a correspondence between the described problem and a class of instances for which a solution approach is known.
Lemma 2.5.24. Consider an instance I 1 WD .N1;L; OD;B/ of uLPwR
Denote by N2 the CGN N1 with arc lengths
$$\tilde{c}_{([si,I],[s{i+1},I])} := \left( \sum_{k=1,\dots,m:(u,v_k) \in \text{OD}: uk \leq{\mathcal{PTNS}{i+1}} <{\mathcal{PTNV}k}} w{u_k vk} \right) \cdot c{([si,I],[s{i+1},I])}.$$
We define I 2 WD .N2;L; .s1; sn/; B/.
Then there is a bijection between
1. nested routings R1 for I 1, and
2. routings R2 for I 2. with the properties that
• $$\mathcal{L}(\mathcal{R}^1) = \mathcal{L}(\mathcal{R}^2)$$ ,
• and $$c(\mathcal{L}(\mathcal{R}^2), \mathcal{R}^2) = c(\mathcal{L}(\mathcal{R}^1), \mathcal{R}^1)$$ .
56 2 Line Planning
Proof. We use the following notation: For an CGN N D .V; A/ with set of OD-pairs OD we define
$$A(u_j, v_j) := { ([si, l], [s{i+1}, l]) \in A : {si, s{i+1}} \in \mathcal{PTN},$$
$$uj \leq{\mathcal{PTN}} si, s{i+1} <_{\mathcal{PTN}} v_j, l \in \mathcal{L}(si) \cap \mathcal{L}(s{i+1}) }$$
to be the subset of driving arcs that can be used by OD-pair .uj ; vj /.
Then L.*R*2/ D L.*R*1/. For the objective values given as the (cumulated) travel time of the OD-pairs we obtain
$$\begin{split} c(\mathcal{L}(\mathcal{R}^1), \mathcal{R}^1) &= \sum{j=1}^m w{u_j v_j} c(\mathcal{L}(\mathcal{R}^1), Pj^1(P^2)) \ &= \sum{j=1}^m w_{u_j vj} \sum{([si, I], [s{i+1}, I]) \in Pj^1(P^2)} c{([si, I], [s{i+1}, I])} \ &= \sum_{([si, I], [s{i+1}, I]) \in P^1(P^2)} \left( \sum_{uj \leq{\mathcal{PTN}Si <{\mathcal{PTN}vj}} w{u_j vj} \right) c{([si, I], [s{i+1}, I])} \ &= \sum_{([si, I], [s{i+1}, I]) \in P^1(P^2)} \tilde{c}_{([si, I], [s{i+1}, I])} \ &= \sum_{([si, I], [s{i+1}, I]) \in P^2} \tilde{c}_{([si, I], [s{i+1}, I])} \ &= c(\mathcal{L}(\mathcal{R}^2), \mathcal{R}^2). \end{split}$$
We want to use the result of Lemma 2.5.24 to solve instances I 1 of uLPwR in linear PTNs without transfer penalties. If the NLT property holds for the instance I 2 with one OD-pair constructed from I 1 as described in Lemma 2.5.24, we can apply the RCSP algorithm to solve I 2 (and thus also I 1) in pseudopolynomial time. This is the case if I 1 has the OD-NLT property:
Definition 2.5.25. Let I D .PT N ;L; OD;B/ be an instance of uLPwR with PT N D .S; E/ linear with S D fs1;:::;sng. Consider the instance I 0 D .PT N ;L; f.s1; sn/g;B/ which is equal to I , except that we exchanged OD with one OD-pair .s1; sn/. If the so-constructed instance I 0 has the NLT property, we say that I has the OD-NLT property.
Similarly to Theorem 2.5.22 we can use this property to solve uLPwR.
Theorem 2.5.26. Let I D .N;L; OD;B/ be an instance of uLPwR with
Then an optimal solution to I can be found in pseudopolynomial time
$$\hat{C} := \max \left{ 1, \sum{l \in \mathcal{L}} \sum{i=1}^{n-1} \left( \sum_{j=1,\dots,m: (u_j,v_j) \in \text{OD:} uj \leq{\mathcal{PTNS}{i+1} <{\mathcal{PTNV}j}} w{u_jvj} \right) \cdot c{([sl,l],[s{l+1},l])} \right}.$$
Proof. Due to Lemma 2.5.23 there is an optimal solution .L0 ; R/ to I such that R is nested. Due to Lemma 2.5.24 this solution corresponds to a solution of an instance I 2 of uLPwR with one OD-pair in an instance I 2 D .N2;L; .s1; sn/; B/ as defined there, where the arc lengths in N2 are given as
$$\tilde{c}_{si s{i+1}} := \left( \sum_{k=1,\dots,m:(u_k,v_k) \in \mathrm{OD}^1: uk \leq{\mathcal{PTN}} s{i+1} <{\mathcal{PTN}} vk} w{u_k vk} \right) \cdot c{si s{i+1}}.$$
with ca denoting the arc lengths in N. Since I has the OD-NLT property, I 2 has the NLT property. According to Theorem 2.5.7, an optimal solution can be found in time
$$\hat{C} := \max \left{ 1, \sum{l \in \mathcal{L}} \sum{i=1}^{n-1} \left( \sum_{j=1,\dots,m:(u,v_j) \in \text{OD:} uj \leq \mathcal{PTN} \cdot S{i+1} < \mathcal{PTN} \cdot vj} w{u_j v_j} \right) \cdot \mathcal{C}([si,l],[s{i+1},l]) \right}.$$
Adding the assumption of equal line driving time functions, we can even obtain polynomial running time in the LN.
| Restrictions line driving |
||||
|---|---|---|---|---|
| Restrictions | ||||
| transfer | mplexity Co |
mplexity Co |
mplexity Co |
|
| me function ti |
penalties | one OD-pair | same origin | general OD-pairs |
| Equal | No | NL // nNL log.n C NL O.m |
NL // nNL log.n C NL O.m |
NL // nNL log.n C NL O.m |
| penalties | (2.5.17.1) | (2.5.27) | (2.5.27) | |
| Equal | Equal | NL // nNL jLj log.n NL jLj C O.m |
OB//, N OB log.n nN C OB N O.m |
NP-hard (2.5.19) |
| penalties | (2.5.17.2) | W // N log.n W nN C W N O.m |
||
| (2.5.22), | ||||
| NP-hard (2.5.19) | ||||
| Equal | Station- | OB// NL OB log.n nNL C OB NL O.m |
NP-hard (2.5.12.2, 2.5.19) | NP-hard |
| independent | (2.5.13), | (2.5.12.2,2.5.19) | ||
| penalties | OQ// NL OQ log.n nNL C OQ NL O.m |
|||
| (2.5.15), | ||||
| NP-hard (2.5.12.2) | ||||
| Equal | No | OB//, N OB log.n nN C OB N O.m |
NP-hard (2.5.12.2,2.5.19) | NP-hard |
| restrictions | Q//, N log.n Q nN C Q N O.m |
(2.5.12.2,2.5.19) | ||
| (2.5.13) | ||||
| NP-hard (2.5.12.2) |
| No | No | OB//, N OB log.n nN C OB N O.m |
OB//, N OB log.n nN C OB N O.m |
OB//, N OB log.n nN C OB N O.m |
|---|---|---|---|---|
| restrictions | penalties | C // N log.n C nN C C N O.m |
OC // N nN OC log.n C OC N O.m |
OC // N nN OC log.n C OC N O.m |
| (2.5.7), | (2.5.26), | (2.5.26), | ||
| NP-hard (2.5.12.1) | NP-hard (2.5.12.1) | NP-hard (2.5.12.1) | ||
| No | Equal | OB//, N OB log.n nN C OB N O.m |
NP-hard | NP-hard |
| restrictions | penalties | C // N log.n C nN C C N O.m |
(2.5.12.1,2.5.19) | (2.5.12.1,2.5.19) |
| (2.5.7), | ||||
| NP-hard (2.5.12.1) | ||||
| No | Station- | OB//, N OB log.n nN C OB N O.m |
NP-hard | NP-hard |
| restrictions | independent | C // N log.n C nN C C N O.m |
(2.5.12.1,2.5.12.2,2.5.19) | (2.5.12.1,2.5.12.2,2.5.19) |
| penalties | (2.5.7), | |||
| NP-hard | ||||
| (2.5.12.1,2.5.12.2), | ||||
| No | No | OB//, N OB log.n nN C OB N O.m |
Strongly NP-hard | Strongly NP-hard |
| restrictions | restrictions | C // N log.n C nN C C N O.m |
(2.5.18) | (2.5.18) |
| (2.5.7), | ||||
| NP-hard | ||||
| (2.5.12.1,2.5.12.2) |
60 2 Line Planning
I can be solved in time O.mNL C nNL log.nNL //.
Proof. Without loss of generality, we can assume that ca D 0 for all a 2 Adrive because of Lemma 2.2.6. Due to Lemma 2.5.23, there exists an optimal solution .L; R/ to I with R being nested. Thus, we can apply Lemma 2.5.24 and solve the instance I 2, constructed as described there, instead. Since the line driving time functions are equal for I 2 and there are no transfer penalties, I 2 can be solved in the line network. Hence, we can directly regard I as an instance in terms of the line network NL and transfer it to an instance of I 2 in the corresponding line network N2 L. According to Corollary 2.5.17, I 2 can be solved in time O.mN2 L C nN2 L log.nN2 L //; hence, the statement of the lemma follows. ut
The results of Sect. 2.5 for uLPwR in linear PTNs with NLT or OD-NLT property are summarized in Table 2.1 where
• C WD maxf1;P
a2A cag,
Note that the request of the NLT or OD-NLT property is only an additional restriction for the cases with non-equal line driving time functions as shown in Lemma 2.5.11 and that for instances where all OD-pairs have the same origin the NLT property implies the OD-NLT property.
In this section we analyze the complexity of capacitated line planning with integrated routing and present integer programming formulations for scLPwR and cLPwR.
uLPwR can be regarded as a special case of scLPwR and cLPwR where the capacity is set to Cap WD P .u;v/2OD wuv. Thus, the hardness results from Sect. 2.5 generalize to scLPwR and cLPwR.
However, the capacity restrictions add extra complexity to the line planning problem: a while uLPwR with only one OD-pair can be modeled as a RCSP problem (Theorem 2.5.6) and solved in pseudopolynomial time (Theorem 2.5.7) if the NLT property holds, scLPwR and cLPwR are strongly NP-hard even under these restrictions.
Analogously to Definition 2.5.3, we define the NLT property for instances of scLPwR or cLPwR.
Definition 2.6.1. An instance .N;L; OD; B;Cap/ of scLPwR or cLPwR has the NLT property if there exists an optimal solution .L0 ; R/ to I such that for every P 2 R the following holds:
If i; k 2 Adrive \ P and l.i / D l.k/, then l.j / D l.i / for all j 2 Adrive \ P for which i P j P k.
Theorem 2.6.2. It is strongly NP-complete to decide whether there exists a feasible solution to scLPwR or cLPwR, even if
This can be proven by reduction from the strongly NP-complete problem Steiner Tree [GJ79] as done in [Sch12]. An instance .G; V 0 ;K/ of Steiner Tree consists of an undirected graph G D .V ; Q E/Q , a set of terminal nodes V 0 - VQ , and a number K. The question is whether there is a subtree T - G with at most K edges which contain all terminals V 0 . Such a tree is called Steiner Tree.
Proof. Given an instance .G; V 0 ;K/ of Steiner Tree with terminals V 0 WD ft0; t1;:::;tkg, we construct an instance I of cLPwR (or scLPwR, respectively) in the form required by the theorem as follows:
• We have a public transportation network PT N D .S; E/ consisting of k copies of G and some extra stations and edges that are specified later. For a node x 2 VQ we denote by xj the corresponding node in the j th copy of G, analogously ej is the j th copy of edge e 2 EQ. For every edge fx; yg 2 EQ we define an arbitrary order .x; y/ of x and y and add extra edges fy1; x2g; fy2; x3g;:::; fyk-1; xkg to E.
We choose an arbitrary terminal node t0 2 V 0 and connect all of its copies to a new station u. Then we connect the kth copies of all other terminals t k 1 ;:::;t k k by edges, inserting one other station in the middle of each edge, i.e., we add stations i1; i2;:::;ik and edges ft k 1 ; i1g; fi1; t k 2 g; ft k 2 ; i2g; fi2; t k 3 g;:::; fik-1; t k k g; ft k k ; ikg to G. We connect t j to t k j by an edge for all j D 1; : : : ; k 1. We add one more station v and edges .ij ; v/ for all j D 1; : : : ; k to G to obtain PT N .
All edges e have length Le WD 0.
62 2 Line Planning
All lines l are assumed to have equal line driving time functions, e.g., ˛l.x/ WD x for all x 2 RC 0 . We set the budget to B WD 2.K C k/. Note that every edge in the PTN is covered by exactly one line, thus any path in the PTN uniquely defines the used line-route.
An example for this construction is given in Fig. 2.9. The considered instance of Steiner Tree with six nodes and four terminals t0 WD 6, t1 WD 1, t2 WD 2, t3 WD 4 that are marked in gray is depicted in Fig. 2.9a. Figure 2.9b shows the constructed instance of cLPwR. For the sake of simplicity, the edges fyi ; xiC1g connecting the copies of the graph are omitted. The parts of the bi-directional lines lxy contained in the copies of the graph are marked by thick gray lines. The line l0 is drawn in light gray. All other lines are depicted as black lines.
Note that in this setting the travel time on every line-route for .u; v/ is 0; hence, every line-route is a shortest one. We conclude that in this instance every solution to cLPwR is a solution to scLPwR and vice versa. Therefore, in the following we continue our argumentation considering I as an instance of cLPwR. However, the result follows equivalently for an instance of scLPwR.
We show that there is a solution to the instance .G; V 0 ;K/ of Steiner Tree if and only if there is a solution to the constructed instance I of cLPwR.
$$\mathcal{L}(E') := {l_u^j : j = 1, \dots, k} \cup {l_e : e \in E'} \cup {l_0}$$ $$\cup {l_t^j : j = 1, \dots, k - 1} \cup {l_v^j : j = 1, \dots, k}$$
and set the frequency to fl WD 1 for every l 2 L. This line concept has costs
$$\sum_{l \in \mathcal{L}(E')} bl = \sum{j=1}^k b_{lu^j} + \sum{e \in E'} b_{le} + b{l0} + \sum{j=1}^k b_{lt^j} + \sum{j=1}^k b_{l_v^j} = 0 + K + (K+k) + 0 + k$$
$$= 2(K+k)$$
Fig. 2.9 Example for the instance constructed in the proof of Theorem 2.6.2 (a) Instance of Steiner Tree (b) Constructed PTN
and thus fulfills the budget restriction. Let Pj be the (uniquely determined) path from t0 to tj in T and Pj j its j th copy in PT N . Then for passenger pj of ODpair .u; v/ we define
$$P_{uv}^{j} := \begin{cases} (u, t_0^{j}) \cup P_j^{j} \cup (t_j^{j}, t_j^{k}) \cup (t_j^{k}, i_j, v) \text{ for } j = 1, \dots, k - 1, \ (u, t_0^{k}) \cup P_k^{k} \cup (t_j^{k}, i_k, v) & \text{for } j = k, \end{cases}$$
where [ is meant as composition of node sequences. Then .L.E0 /; Ruv/ with Ruv WD fPj uv W j D 1; : : : ; kg and wPj uv D 1 for j D 1; : : : ; k is a feasible solution to the constructed instance of cLPwR.
64 2 Line Planning
We conclude that for every j the line concept L0 allows a path Puk j from u to t k j for every j D 1; : : : ; k. Due to the construction of the lines le, we can transfer such a path Puk j to a path Pj from t0 to tj in G, transferring the sequence of lines of type le used in Puk j to a sequence of edges e in G. Thus, defining
$$\tilde{E}'(\mathcal{L}') := { e \in E : l_e \in \mathcal{L}' }$$
we obtain an edge set connecting t0 to all other terminals. Because of the budget constraint, the cost for establishing the lines le cannot exceed B .K Ck/k D K, and as the line costs are 1 for these lines, we conclude jEQ0 .*L*0 /j K. The graph GQ 0 with edge set jEQ0 j is connected, contains all terminals, and jEQ0 j K. Thus, GQ 0 contains a Steiner tree T with jT j K.
Note that due to the construction of the Steiner tree it follows that if there exists a feasible solution to the constructed instance of cLPwR, there is also a feasible solution such that every passenger j does not enter the ith copy of G for i ¤ j and thus no line is entered more than once by a passenger. Since the travel time for all solutions is equal, this implies the NLT property for the constructed instance. ut
Due to the high complexity of line planning with routing in general and scLPwR and cLPwR in particular, we develop integer programming formulations for these problems.
When modeling passenger flows in integer linear programming, there are mainly two approaches: the first one is to introduce a variable *z*Pk for every path Pk from u org k to *v*dest k in the CGN and every OD-pair .u; v/ 2 OD (see e.g. [PB06, BGP07, BGP08]). As there can be an exponential number of paths, this can lead to an exponential number of variables which is often addressed by column generation.
The second approach is to use an arc-based formulation where variables qk a indicate the number of passengers of OD-pair .*u*k; *v*k/ on arc a 2 A. Routings for the OD-pairs are then found using multi-commodity flow conditions. We use the second approach to model the considered capacitated line planning problems.
In this section we present a slight modification of an integer programming formulation for scLPwR developed in [Sch05, SS06] leaving out the upper bounds on frequencies used there. In addition to the model there, we allow lines going only to one direction and different line driving time functions.
The set of variables consists of integer variables
$$f_l := \text{frequency of line } l \quad \forall l \in \mathcal{L},$$
where fl WD 0 for all l … L0 , and
xk a WD number of passengers of OD-pair .*u*k; *v*k/ using arc a 8.*u*k; *v*k/ 2 OD;8a 2 N:
The IP formulation for solving scLPwR then reads
$$\min \sum_{(u_k, vk) \in \mathcal{OD}} \sum{a \in A} c_a x_a^k, \tag{2.7}$$
s.t. $$\sum_{a \in \delta^{-}(u_k^{\text{org}})} x_a^k = w_k \qquad \forall (u_k, v_k) \in \mathcal{OD}, \quad (2.8)$$
$$\sum_{a \in \delta^{+}(v)} xa^k - \sum{a \in \delta^{-}(v)} x_a^k = 0 \quad \forall (u_k, v_k) \in \mathcal{OD}, \ v \in V \setminus {u_k^{\text{org}}, v_k^{\text{dest}}}, \quad (2.9)$$
$$\sum_{a \in \delta^+(v_k^{\text{dest}})} x_a^k = w_k \qquad \qquad \forall (u_k, v_k) \in \mathcal{OD}, \quad (2.10)$$
$$\frac{1}{\operatorname{Cap}} \sum_{(u_k, v_k) \in \mathcal{OD}} xa^k \le f{l(a)} \qquad \forall a \in A_{\operatorname{drive}}, \quad (2.11)$$
$$\sum_{l \in \mathcal{L}} f_l b_l \le B,\tag{2.12}$$
$$x_a^k, f_l \in \mathbb{N}$$ $\forall (u_k, v_k) \in \mathcal{OD}, \ a \in A, \ l \in \mathcal{L}.$ (2.13)
Constraints (2.8)–(2.10) are flow constraints. They ensure that each passenger of an OD-pair .*u*k; *v*k/ travels along a path from u org k to *v*dest k in the CGN. Constraints (2.11) make sure that the constructed routing is feasible. The budget constraint is enforced in (2.12).
For each OD-pair .*u*k; *v*k/ the term P a2A caxk a denotes the travel time. Thus, the objective (2.7) is the minimization over the overall travel time of the OD-pairs.
Lemma 2.6.3. The solution .L0 ; R/ defined by an optimal solution .x; f / of the IP (2.7)–(2.13) is an optimal solution to scLPwR.
66 2 Line Planning
Note that since uLPwR is a special case of scLPwR with unlimited capacity it can also be solved using formulation (2.7)–(2.13), setting Cap P .uk ;vk /2*OD w*k. In this case, without loss of generality, the frequency variables fl can be assumed to take only the values fl D 1 if line l is established and fl D 0 otherwise.
We modify the approach of Sect. 2.6.2.1 to calculate an optimal solution to cLPwR. To this end, we introduce additional constraints that find shortest paths in the network and ensure that only these paths are taken by the passengers. In this section we assume that cij 2 N for all arcs .i; j / of the considered CGN.
For a network N D .V; E/ and an OD-pair .*u*k; *v*k/, let V .k/ be the set of nodes i in V for which there exists a directed path from u org k to i and from i to *v*dest k in N. Let N.k/ D .V .k/; A.k// denote the network induced by V .k/.
The idea of our approach is based on the following optimality conditions for shortest paths (see, e.g., [AMO93]), formulated in terms of a node potential d.
Definition 2.6.4. Let N D .V; A/ be a directed network. A node potential is a function d W V ! R.
Theorem 2.6.5. Let N D .V; A/ be a directed network and u 2 N. For j N u let du.j / denote the length of some directed path from u to j . The numbers du.j / represent shortest path distances if and only if they satisfy
$$d^u(j) - d^u(i) \le c_{ij}.$$
It follows directly that if .i; j / 2 A lies on a shortest path from u to j , it holds that
$$d^{u}(j) - d^{u}(i) + c_{ij} = 0. (2.14)$$
In our approach, in addition to the variables
$$f_l := \text{frequency of line } l \quad \forall l \in \mathcal{L},$$
where fl WD 0 for all l … L0 , and
xk a WD number of passengers of OD-pair .*u*k; *v*k/ using arc a 8.*u*k; *v*k/ 2 OD;8a 2 A.k/
also used in (2.7)–(2.13), we introduce variables rk i for .*u*k; *v*k/ 2 OD and i 2 V .k/ which take the role of backwards-directed node potentials: whenever there exists a directed path from i to vk dest in the routing network, rk i indicates the shortest path distance from i to vk dest in the routing network.
rk
yl ;z k rk
Mij
z
Furthermore, we introduce variables zk ij for every .*u*k; *v*k/ 2 OD and .i; j / 2 A.k/ that are forced to take the value 1 if .i; j / lies on a shortest path from i to *v*dest k in the routing network.
Since we are only interested in paths consisting of arcs from the routing network, we introduce additional binary variables
$$y_l := \begin{cases} 1 \text{ if line } l \text{ is established} \ 0 \text{ otherwise.} \end{cases} \forall l \in \mathcal{L}.$$
Then our problem can be represented using the following integer program:
$$\min \sum_{(a_k, vk) \in \text{OD}} \sum{\alpha \in A(k)} c\alpha x\alpha^k, \tag{2.15}$$
s.t. $$\sum_{a \in S^{-1}(k_k^{org}) \cap A(k)} x_a^k = w_k \qquad \forall (u_k, v_k) \in \mathcal{OD}, \qquad (2.16)$$
$$\sum{a \in \delta^{+}(v) \cap A(k)} x{a}^{k} - \sum{a \in \delta^{-}(v) \cap A(k)} x{a}^{k} = 0 \qquad \forall (u{k}, v{k}) \in \mathcal{OD}, v \in V \setminus {u{k}^{\text{org}}, v{k}^{\text{dest}}}, \tag{2.17}$$
$$\sum_{\alpha \in \mathcal{S}^+ (v_k^{\text{dest}}) \cap A(k)} x_k^k = w_k \qquad \forall (u_k, v_k) \in \mathcal{OD}, \quad (2.18)$$
$$\frac{1}{\operatorname{Cap}} \sum_{(a_k, v_k) \in \mathcal{OD}} xa^k \le f{l(a)}$$
$$\forall a \in A_{\operatorname{drive}} \cap A(k), \qquad (2.19)$$
$$\sum_{I \in \mathcal{L}} f_I b_I \le B,\tag{2.20}$$
$$y_l \le f_l$$ $\forall l \in \mathcal{L},$ (2.21)
$$M_1 \cdot y_l \ge f_l$$ $\forall l \in \mathcal{L},$ (2.22)
$$za^k \le y{l(a)}$$ $\forall a \in A_{\text{drive}} \cap A(k), (u_k, v_k) \in \mathcal{OD},$ (2.23)
$$rj^k + c{ij} - ri^k + z{ij}^k + M2^{ij} (1 - y{l(i,j)}) \ge 1$$ $\forall (u_k, v_k) \in OD, (i, j) \in A(k),$ (2.24)
$$rj^k + c{ij} - r_i^k - M2^{ij} \cdot (1 - z{ij}^k) \le 0$$ $\forall (u_k, v_k) \in \text{OD}, (i, j) \in A(k),$ (2.25)
$$r_{\nu_k^{\text{dest}}}^k = 0$$ $\forall (u_k, \nu_k) \in \text{OD}, \qquad (2.26)$
$$x_a^k \le z_a^k \cdot w_k \qquad \qquad \forall (u_k, v_k) \in \text{OD}, \ a \in A(k), \tag{2.27}$$
$$y{l}, z{u}^{k} \in {0, 1} \qquad \qquad \forall (u{k}, v{k}) \in \text{OD}, \ a \in A_{\text{drive}} \cap A(k), \ l \in \mathcal{L}, \tag{2.28}$$
$$r{l}^{k} \in \mathbb{N} \qquad \qquad \forall (u{k}, v_{k}) \in \text{OD}, \ i \in E, \tag{2.29}$$
$$f_l, x_a^k \in \mathbb{N}$$ $\forall (u_k, v_k) \in \text{OD}, \ a \in A(k), \ l \in \mathcal{L}.$ (2.30)
Here, the objective function (2.15) and the constraints (2.16)–(2.20) and (2.30) remain unchanged compared to the model described in Sect. 2.6.2.1, while constraints (2.21)–(2.29) are introduced to force the solution to contain only lines where enough capacity can be provided for all passengers that would choose this line because of shortest path considerations.
68 2 Line Planning
Before we prove the correctness of the formulation we shortly describe the meaning of the additional constraints and of the numbers M appearing in these constraints.
The variable yl is meant to indicate whether a line is established or not, and thus closely linked to the frequency variable fl . If we choose M1 big enough, we ensure in constraints (2.21) and (2.22) that yl D 1 if line fl is established, and yl D 0 otherwise. Constraints (2.23) force us to choose only arcs for the shortest path calculations that belong to established lines. Constraints (2.24) and (2.25) are introduced to calculate shortest paths in the routing network which is defined implicitly by the chosen y. Note that if rk j and rk i denote shortest path distances from i to *v*dest k or from j to *v*dest k , respectively, rk j C cij rk i measures the difference between the shortest direct path from i to *v*dest k and the shortest path from i to *v*dest k that contains arc .i; j /. The addition and subtraction of the constant Mij 2 avoids conflicts for arcs which are not contained in the routing network or which are not lying on shortest paths if Mij 2 is big enough. Constraints (2.26) set the distance from a destination node to itself to be 0 and hence initialize the implicit distance calculations. Inequalities (2.27) act a linking constraints of the passenger flow assignment and the shortest path calculations allowing only arcs on shortest paths as candidates for the passenger flows.
As the correctness of the IP formulation (2.15)–(2.30) might not be obvious, we prove it formally in Lemmas 2.6.6 and 2.6.7.
Lemma 2.6.6. Let I D .N;L; OD; B;Cap/ with N D .V; A/ be an instance of cLPwR and M1 2 N0 and Mij 2 2 N0 for all .i; j / 2 S .uk ;vk /2OD A.k/. Every feasible solution .x; f; y;z;r/ to the constraints (2.16)–(2.30) of the corresponding IP defines a feasible solution .L0 ; R/ to I with
$$c(\mathcal{L}', \mathcal{R}) = \sum_{(u_k, vk) \in \text{OD } a \in A} \sum{a \in A} c_a x_a^k.$$
Proof. Let .x; f; y;z;r/ be a feasible solution to the constraints (2.16)–(2.30). We define L0 WD fl 2 L W yl D 1g and denote by R the routing defined by x.
Due to constraint (2.20), L0 is a feasible line concept. Because of constraints (2.16)–(2.18), R is a routing and constraints (2.19) ensure that R is feasible for L0
It remains to show that R is a shortest-path routing in N.L0 /. To this end, we analyze the constraints (2.23)–(2.26) for every .*u*k; *v*k/ 2 OD.
$$rj^k + c{ij} - r_i^k + 1 \ge 1$$ and $rj^k + c{ij} - r_i^k \le 0$ .
Consequently
$$rj^k + c{ij} - r_i^k = 0. (2.31)$$
On the other hand, if yl.i;j / D 1 and zk ij D 0 constraint (2.24) implies
$$rj^k + c{ij} - r_i^k \ge 1. (2.32)$$
• Let i0 be a node and Pk i0 be a path from i0 to *v*dest k with zk ij D 1 for all .i; j / 2 Pk i0 . Using (2.31) and rk *v*dest D 0 we obtain
$$r{i'}^{k} = \sum{(i,j)\in P{i'}^{k}} c{ij}.$$ (2.33)
$$r{i'}^k \le \sum{(i,j)\in P^*} c{ij} < \sum{(i,j)\in P{i'}^k} c{ij} = r_{i'}^k.$$
Hence, there can be no path P that is shorter than Pk from i0 to *v*dest k in N.L0 /. Thus, in particular, every path P from u org k to *v*dest k with zk a D 1 for all a 2 P is the /.
shortest one in N.L0 Hence, every feasible solution .x; f; y;z;r/ to the constraints (2.16)–(2.30) defines a feasible solution .L0 ; R/ to cLPwR. Furthermore,
$$c(\mathcal{L}', \mathcal{R}) = \sum_{(u_k, vk) \in \mathcal{OD}} \sum{P \in \mathcal{R}k} \sum{a \in P} w_k^P c_a$$
$$= \sum_{(u_k, vk) \in \mathcal{OD}} \sum{a \in P} ca \sum{P \in \mathcal{R}_k : a \in P} w_k^P$$
$$= \sum_{(u_k, vk) \in \mathcal{OD}} \sum{a \in A(k)} c_a x_a^k. \tag{2.34}$$
70 2 Line Planning
Lemma 2.6.7. Let I D .N;L; OD; B;Cap/ with N D .V; A/ be an instance of cLPwR and let
$$M1 \ge \frac{1}{\operatorname{Cap}} \left( \sum{(u_k, v_k) \in \mathcal{OD}} w_k \right)$$
and for every .i; j / 2 S .uk ;vk /2OD A.k/
$$M2^{ij} \ge \left(\sum{a \in A} ca\right) + c{ij} + 1.$$
Then a solution .L0 ; R/ defined by an optimal solution .x; f; y; r;z/ to the IP (2.15)– (2.30) is an optimal solution to I and
$$c(\mathcal{L}', \mathcal{R}) = \sum_{(u_k, v_k) \in \text{OD } a \in A(k)} c_a x_a^k.$$
Proof. We first show that every solution .L0 ; R/ to cLPwR can be transformed to a solution .x; f; y;z;r/ that fulfills constraints (2.16)–(2.30). Given L0 and R we define for all .*u*k; *v*k/ 2 OD, a 2 A.k/, and l 2 L
xk a WD number of passengers of OD-pair .*u*k; *v*k/ using arc a in routing R;
$$fl := \max{a:l(a)=l} \left[ \frac{1}{\operatorname{Cap}} \sum_{(u_k, v_k) \in \mathcal{OD}} x_a^k \right],$$
$$y_l := \begin{cases} 1 \text{ if } f_l > 0\ 0 \text{ if } f_l = 0. \end{cases}$$
For every .*u*k; *v*k/ 2 OD and every i in V .k/, we set rk i to the shortest path distance of i to *v*dest k in N.L0 / or to M WD P a2A ca C 1 if no such shortest path exists. We furthermore set zk ij WD 1 if .i; j / lies on a shortest path from i to *v*dest k in N.L0 / and zk ij WD 0 otherwise.
Since L0 is a feasible line concept, constraints (2.20) are fulfilled. Since R is a feasible routing for L0 constraints (2.16)–(2.19) and (2.23) are fulfilled. Constraints (2.21) and (2.22) follow directly from the definitions of f , y, and xk.
Constraints (2.26) are trivially satisfied due to the definition of rk *v*dest k . Also constraints (2.27) are satisfied because x was defined by a routing on shortest paths in N.L0 /.
It only remains to check constraints (2.24) and (2.25).
$$\begin{split} rj^k + c{ij} - ri^k + z{ij}^k + M2^{ij} (1 - y{l(i,j)}) &= rj^k + c{ij} - r_i^k \ge 1 \ \text{and } rj^k + c{ij} - ri^k - (1 - z{ij}^k) M_2^{ij} &\leq r_j^k - ri^k - \sum{a \in \mathcal{A}} c_a \le 0. \end{split}$$
$$rj^k + c{ij} - ri^k + z{ij}^k + M2^{ij}(1 - y{l(i,j)}) = \sum_{a \in A} ca + 1 + c{ij} - r_i^k \ge 1$$
and $$rj^k + c{ij} - ri^k - (1 - z{ij}^k) M_2^{ij} = -r_i^k \le 0.$$
$$rj^k + c{ij} - ri^k + z{ij}^k + M2^{ij} (1 - y{l(i,j)}) \ge \sum_{a \in A} ca + 1 + c{ij} - r_i^k \ge 1$$
and $$rj^k + c{ij} - ri^k - (1 - z{ij}^k)M_2^{ij} \le rj^k + c{ij} - \left(\sum_{a \in A} ca + c{ij} + 1\right) \le 0.$$
Hence, constraints (2.24) and (2.25) are satisfied.
Furthermore, we see analogously to (2.34) that
$$\sum_{(u_k,vk)\in \text{OD}} \sum{a\in A} c_a x_a^k = c(\mathcal{L}',\mathcal{R}).$$
In combination with Lemma 2.6.6, this yields the statement of the lemma. ut
Given a public transportation system and a line concept with frequencies, the next step in public transportation planning is to establish a timetable, i.e., to fix the exact points in time when the trains should arrive and depart at the stations. This decision process is known under the name of timetabling or train scheduling.
The timetabling literature distinguishes between periodic and aperiodic timetabling. In periodic timetabling it is assumed that the timetable repeats after a (relatively short) time period, e.g., 1 h. For the sake of simplicity in modeling, some periodic timetabling models assume that every train is run once per time period [NV96, CR11, HPB13]. Periodic timetabling models where lines have different frequencies are also possible but require more modeling effort [Odi98]. See also [Lin00,CFT02,Pee03,Lie05,LM07b] for models used in periodic timetabling.
In aperiodic timetabling (see, e.g., [WYFL08, FM09, FSZ09, SK09, CCT10, SS10b, SS12b]) in contrast, arrival and departure times are fixed independently for each train of a line. In this book, we consider aperiodic timetabling. For this reason we state definitions and concepts for the timetabling problem with respect to the aperiodic timetabling problem. Many notions can easily be transferred to periodic timetabling, some require more modeling effort.
74 3 Timetabling
A timetable specifies the points in time at which trains arrive and depart at stations. For timetabling purposes, lower bounds on driving times are derived from the track lengths and the train speed as the minimal driving time needed. While some models assume that trains drive at full speed and hence always achieve these driving times (see, e.g., [NV96, Pee03, HPB13]), in most models it is allowed to slow down a train up to an upper bound on the driving time. This upper bound is interpreted as a constraint imposed to secure passengers' acceptance of the public transportation system. Some models (e.g., [LLMS09]), however, do not impose any upper bound on the driving time between stations.
Also for waiting times, lower and upper bounds are given. Again, the latter can be interpreted as an acceptance bound, while the former represents a physical bound on the time needed for passengers to board and alight the train. In the timetabling problem considered in this book, it is furthermore specified between which trains and at which stations it should be possible to transfer from one train to another train, and lower and upper bounds on changing times are given. The time difference between a driving, waiting, or changing time and the corresponding lower bound on its length is called slack time.
A timetable is called feasible, if it respects capacity restrictions and the upper and lower bounds on driving, waiting, and changing times.
When planning train schedules, capacity restrictions have to be taken into account: two trains cannot be on the same track or on the same platform at the same time: safety margins between two consecutive trains have to be respected.
Some timetabling models like the ones presented in [NO08, SK09, SS10b, SS12b] do not consider capacity restrictions. Also in this book, we will study the integration of passenger routing in timetabling without capacity constraints.
In other models, precedence relations between trains which use the same track or part of a track are treated as input to the timetabling problem (see, e.g., [Odi98]). In most cases, however, they are considered an important part of the timetabling process.
While some papers consider infrastructural capacity constraints on a macroscopic level [CFT02, CCT10, CR11], there also exist very detailed models of the railway infrastructure; see, e.g., [BLNN98, KP03, Pee03,BK10]. Since precedence decisions tend to make timetabling problems hard, the incorporation of these restrictions is often studied on railway corridors, i.e., a linear PTN with single or dual tracks [BLNN98, CFT02, BK10, HPB13]. Models which consider capacity restrictions on general PTNs can be found, e.g., in [KP03,LM07b].
For more details on reasonable constraints in train timetabling and how to integrate them in the periodic event scheduling framework for periodic timetabling, see [LM07b].
In the presence of capacity restrictions or periodicity constraints, finding a timetable which respects all constraints is a difficult problem itself. Hence, in some timetabling approaches, passengers are not considered at all [Odi96, Odi98, Lin00,Pee03,LZ05].
To simplify the timetabling problem, almost all models in the literature which take into account the passengers' demand assume that passenger loads for each train are given as an input to the problem. That is, it is assumed that the number of passengers who travel in a train between each pair of stations and transfer at each station is known. These numbers can, e.g., be estimated by using a trafficassignment procedure before starting the construction of the timetable and then summing up passenger loads.
However, in practice, passengers' travel routes depend on the chosen timetable. Hence, similar to the line planning problem, some models assume that demand is given as OD-pairs and passenger routing is integrated in the timetabling procedure [Nac98,Kin08,Lüb09,SS10b,SS12b,SG13].
Cordone and Redaelli [CR11] model variable demand by a discrete-choice model where the quality of the timetable influences a passenger's choice to travel by train or to use an alternative means of transport. They assume that every passenger is assigned a path in the PTN and a sequence of trains and that he/she can take either this path or an alternative means of transportation; hence in contrast to the above-mentioned models, passenger routing is not incorporated in this model.
Since it is already a hard problem to generate a feasible periodic timetable, some approaches in periodic timetabling do not formulate an objective at all but concentrate on finding feasible timetables (see, e.g., [Odi96,Odi98,Lin00,LZ05]).
A few cost-oriented models in timetabling aim at the minimization of costs related to rolling stock [Lin00, Pee03, LZ05]. Passengers are neglected in these approaches.
Another direction of research is to try to exploit the infrastructural capacity as much as possible. To this end, Heydar et al. [HPB13] minimize the length of the period after which the schedule repeats as a primary and the stopping times of the trains at intermediate stations as a secondary objective. Burdett and Kozan [BK10] use a make-span objective to achieve a high utilization of tracks. In [BLNN98, CFT02, FSZ09, CCT10], the distance to an ideal timetable is minimized.
Most timetabling models, however, aim at generating timetables which provide a high quality for the passengers. Objectives are to minimize the passengers' travel time [Pee03, Lie06, LPW08, LLMS09, SK09, SS10b, SS12b, SG13], slack time [Nac98,NO08], or waiting time during the transfers [DV95,WYFL08].
76 3 Timetabling
Cordone and Redaelli [CR11] assume that passengers choose an alternative means of transport if the quality of the timetable is not high enough and maximize the total demand captured.
Another objective that is receiving increasing attention in the literature is the robustness of timetables against disturbances and delays; see, e.g., [ORv06, CDDC07,KMHC08,FSZ09,FM09,SK09,LLMS09,LSSC10,GS10,Sch10].
Section 3.1.1 gives an overview on different objectives and constraints in timetabling. We complete this overview by a short sketch of different network models, hardness results, and solution techniques used to solve timetabling problems. For more comprehensive surveys on timetabling and train scheduling, see [CTV98,Lie06,LLER11,CT12] and references therein or the survey papers on optimization in public transportation cited in Sect. 1.2.
In some timetabling models, the times for departures and arrivals are chosen explicitly. For example, in [DV95], the problem to minimize waiting times in transfer nodes is modeled using one binary variable for every possible departure time in a node. In [CFT02, CCT10], the timetable is given as a set of paths in a graph where the nodes specify arrivals or departures of trains at a given time instant.
However, timetabling problems are mostly modeled using event-activity networks (EANs) (also called constraint graphs or disjunctive graphs), where arrivals and departures are represented as nodes in the network and the timetable is understood as an assignment of times to the nodes (see Sect. 3.2 for the definition of an EAN). Aperiodic versions of these networks can be found in [BLNN98, SK09, SS10b,SS12b].
EANs in periodic timetabling rely on the periodic event scheduling (PESP) framework developed by [SU89] and are used for periodic timetabling by, e.g., [Odi96,Nac98,Lin00,Pee03,Lie06,CR11].
When using the EAN as a modeling framework, constraints ensuring feasibility of the timetable (both in the aperiodic and in the periodic case) can be modeled easily by introducing variables for the scheduled times at the events [Lin00, Pee03, Lie06, CDDC07, LPW08, FM09, SK09], for the activity lengths [Lie06,LPW08,Lüb09,SG13], or for the slack times [Nac98,SK09].
When passenger routes are not fixed before the optimization step, but only demand in form of OD-pairs is given, this demand can be included in the EAN by adding additional origin and destination events and activities and routing constraints (see, e.g., [Nac98,Lüb09,SS12b]).
To simplify the timetabling problem almost all models in the literature which take into account the passengers' demand assume that passengers' routes are fixed before the optimization steps. However, there are some exceptions.
In [Nac98], Nachtigall remarks that passenger routes depend on the choice of the timetable and dedicates one chapter to a periodic timetabling model with integrated passenger routing. In this model, passenger routes are modeled as flows in the EAN. In order to include the passenger flows in the considered periodic timetabling model, flow constraints are added, resulting in a non-convex problem. A decomposition in two linear programs for an aperiodic version with fixed arrival and departure events is given. Furthermore Nachtigall shortly discusses special cases, in particular the case of fixed modulo parameters and fixed departure and arrival events that he proves to be solvable in polynomial time determining passenger flows and slack independently by linear programming.
In [Kin08], a heuristic solution iterating timetabling and routing step is proposed, shown to produce non-increasing objective values, and tested on real-world data. Also in [Lüb09, SG13], the passenger routing is included in the timetabling step by adding variables for passenger flows on arcs which at first leads to a nonlinear formulation, because the total travel time in this case is given as the sum over the product of variable arc length and variable passenger numbers. However, both authors succeed to linearize their formulations by introducing new variables combining both values.
In [Kas10], a heuristic that generates feasible line concepts and timetables simultaneously is used, and the output solution is compared by routing the passengers according to shortest paths and adding up the travel times. In [SS10b, SS12b], the model for aperiodic timetabling with routing (TTwR) considered in this book is investigated.
In [Roc84] Rockafellar discusses the problem of finding a feasible aperiodic timetable under the name of feasible differential problem (FDP). He shows that the problem can be solved in polynomial time. Furthermore, it is known that the constraints ensuring feasibility of the timetable for the aperiodic timetabling problem (or the FDP) can be modeled as a polyhedron using a totally unimodular matrix. Thus, for any linear objective function which does not require additional constraints, aperiodic timetabling can be solved by linear programming (see, e.g., [NO08]). Schmidt and Schöbel [SS10b, SS12b] investigate the computational complexity of aperiodic TTwR: the results are presented in Sects. 3.4 and 3.5 of this book.
78 3 Timetabling
It is strongly NP-complete to find feasible periodic timetables in the PESP framework as shown in [SU89] by reduction from Hamiltonian circuit. Odijk [Odi98] proved by reduction from graph-coloring that this result holds even for a fixed length of the time period. In [Lie05], Liebchen derives (in-)approximability results for the problem of satisfying as many PESP constraints as possible.
In [CFT02], Caprara et al. show that there is no polynomial-time approximation algorithm for the problem of scheduling trains on a single line such that capacity constraints are fulfilled and the distance to an ideal timetable is minimized, unless P D NP.
If no capacity restrictions on tracks or platforms are considered, the problem of finding an aperiodic timetabling can be modeled as an FDP and solved by the Feasible Differential Algorithm given in [Roc84].
Furthermore, it is well known (see, e.g., [NO08]) that in case of no capacity constraints and fixed passenger loads on the EAN, a timetable minimizing passengers' travel time can be found in polynomial time by linear programming. The corresponding linear program is given in Sect. 3.3. In contrast to aperiodic timetabling with fixed passenger loads, TTwR is NP-hard and can hence not be solved by linear programming. Two different integer programming formulations are given and compared in [SS12b,Anh12].
Solution approaches for aperiodic timetabling under capacity restrictions include Lagrangian relaxation [BLNN98,CFT02], column generation and separation techniques [CCT10], optimization-based heuristics [CFT02, WYFL08], and metaheuristics [HKF97, BK10]. Different integer programs are listed and compared in [CCT10]. A broader overview about models and solution approaches in aperiodic timetabling is given in [CT12].
Solution techniques for periodic timetabling are in most cases based on the PESP model and the paper [SU89]. To generate feasible periodic timetables, mostly constraint-generation and cutting-plane techniques are used [Odi96,Lin00].
Many integer programming formulations for periodic timetabling [Nac98,Lin00, Pee03, KP03, LZ05] are based on cycle-bases as investigated in Nachtigall's cycle periodicity formulation [Nac98]. A powerful method for solving periodic timetabling is the modulo simplex approach developed by Nachtigall and Opitz [NO08] which was extended in [GS11,GS13]. For the case that passenger loads are not fixed, iterative approaches which solve traffic assignment and timetabling problems, iteratively, are proposed in [Lüb09,CR11,Anh12,SG13]. See [LPW08,CT12, SG13] for comparisons of different solution approaches in periodic timetabling.
In this book, we consider an aperiodic timetabling problem with integrated passenger routing which does not take into account capacity restrictions. We now describe the problem in more detail and give some definitions used in the later parts of this chapter.
Since in aperiodic timetabling, arrival and departure times are fixed independently for each train of a line, from now on we consider a set of trains TR WD ftrl i W l 2 L; i D 1; : : : ; fl g. We denote by l.trl i/ WD l the line that a train trl i belongs to.
We denote the arrival of a train tr at a station s with .trsArr/ and its departure from this station with .tr d Dep/.
Definition 3.1.1. Given a public transportation network PT N D .S; E/ and a set of trains TR, an (aperiodic) timetable is a schedule which for every train tr 2 TR belonging to line l.tr/ D .s1; s2;:::;sj / defines a departure time .trsi-Dep/ 2 Z for stations si with i D 1; : : : ; j 1 and an arrival time .trsi-Arr/ 2 Z for stations si with i D 2;:::; j .
In this book, we assume that the arrival and departure times are integers which can be interpreted as the time difference to a fixed point in time in minutes. We say that a departure or an arrival is scheduled at a certain time t to express that the timetable assigns t to that event.
For a train of line l D .s1; s2;:::;sj / 2 L, the driving time from si to siC1 is given as .trsiC1-Arr/ .trsi-Dep/ for i D 1; : : : ; j 1, and the waiting time at station si is given as .trsi-Dep/ .trsi-Arr/ for i D 2;:::; j 1. To specify between which trains and at which stations it should be possible to transfer from one train to another train, we define a set of planned connections C which consists of triples .tr1; tr2; s/ of trains tr1; tr2, and a station s. For every .tr1; tr2; s/ 2 C, the changing time is defined as .tr2s-Dep/ .tr1s-Arr/.
As described in Sect. 3.1.1, we are given upper and lower bounds on driving, waiting, and changing times. Since we do not require periodicity nor consider capacity restrictions, we call a timetable feasible if it respects the upper and lower bounds:
Given a PTN, a set of trains, and a set of planned connections, together with upper and lower bounds on driving, waiting, and changing times, a timetable is feasible, if
• For the driving times, it holds that
$$\pi{(\operatorname{tr}-s'-\operatorname{Arr})} - \pi{(\operatorname{tr}-s-\operatorname{Dep})} \in [l{(\operatorname{tr}-s-\operatorname{Dep},\operatorname{tr}-s'-\operatorname{Arr})}, u{(\operatorname{tr}-s-\operatorname{Dep},\operatorname{tr}-s'-\operatorname{Arr})}]$$
for all tr 2 TR and .s; s0 / 2 l.tr/, 80 3 Timetabling
• For the waiting times it holds that
$$\pi{(\operatorname{tr}-s-\operatorname{Dep})} - \pi{(\operatorname{tr}-s-\operatorname{Arr})} \in [l{(\operatorname{tr}-s-\operatorname{Arr},\operatorname{tr}-s-\operatorname{Dep})},u{(\operatorname{tr}-s-\operatorname{Arr},\operatorname{tr}-s-\operatorname{Dep})}]$$
for all tr 2 TR and s 2 l.tr/,
• For the changing times, it holds that
$$\pi{(\operatorname{tr}'-s-\operatorname{Dep})} - \pi{(\operatorname{tr}-s-\operatorname{Arr})} \in [l{(\operatorname{tr}-s-\operatorname{Arr},\operatorname{tr}'-s-\operatorname{Dep})}, u{(\operatorname{tr}-s-\operatorname{Arr},\operatorname{tr}'-s-\operatorname{Dep})}]$$
for all .tr; tr0 ; s/ 2 C.
Like in line planning, our objective in timetabling is to minimize the overall travel time of the passengers. Again, the demand for traveling is given as a set of OD-pairs OD - S S where for every OD-pair .u; v/ 2 OD, the number of passengers or passenger weight wuv is specified.
A passenger's journey can be described in the following way.
Thereby,
P is called the path corresponding to Puv in the PTN.
When the set of OD-pairs is indexed, e.g., OD D f.*u*k; *v*k/ W k 2 Kg for an index set K, for the sake of simplicity, we also use the notation wk WD wuk vk and Pk WD Puk vk .
Let Puv be a train-route and P D .s1;:::;sj / be the corresponding path in the PTN. For a given timetable , the travel time along Puv is given as the sum over all driving, waiting, and changing times associated to Puv:
$$c(\pi, P{uv}) := \sum{{si, s{i+1}} \in P} (\pi{(tr(s{i+1}, Arr) - s{i+1} - Arr)} - \pi{(tr(s_i, Dep) - s_i - Dep)})$$
$$+ \sum_{si \in P} (\pi{(tr(s_i, Dep) - si - Dep)} - \pi{(tr(s_i, Arr) - s_i - Arr)}). \tag{3.1}$$
In (3.1), the terms for all stations si for i D 2;:::; j 1 cancel out. As a result, instead of summing up the lengths of all driving, waiting, and changing times of the paths, we can obtain the travel time on a path by just subtracting the departure time at the origin from the arrival time at the destination.
Lemma 3.1.3. Let Puv be a train-route and P D .s1;:::;sj / be the path in the PTN associated to Puv. Then, for a given timetable ,
$$c(\pi, P{uv}) = \pi{(\operatorname{tr}(s_j, \operatorname{Arr}) - sj - \operatorname{Arr})} - \pi{(\operatorname{tr}(s_1, \operatorname{Dep}) - s_1 - \operatorname{Dep})}.$$
A train-routing R is a set which contains exactly one train-route Puv for every ODpair .u; v/ 2 OD, i.e., R WD fPuv W .u; v/ 2 *OD*g. Given a timetable and a train-routing R D fPuv W .u; v/ 2 *OD*g, the overall travel time is defined as
$$c(\pi,\mathcal{R}) := \sum{(u,v)\in\mathcal{OD}} w{uv}c(\pi,P_{uv}).$$
Most traditional approaches in timetabling assume that passenger routes are given in the input, e.g., that they can be predicted before the timetable optimization step by traffic assignment procedures. Then, the goal of timetabling is to calculate a timetable which minimizes the sum of travel times over these given train-routes. This approach has the advantage that in aperiodic timetabling, the determination of optimal (with regard to the predefined passenger routes) timetables can be implemented very efficiently as we see in Sect. 3.3. However, the design of the timetable has a strong influence on travel times on the passenger routes in the transportation system. Hence it is not possible to predict which path is best for a passenger before knowing the timetable. For this reason, also in the timetabling problem, we integrate the routing step and the timetabling step.
Definition 3.1.4. An instance .PT N ; TR; C; l; u; OD/ of timetabling with routing (TTwR) consists of a public transportation network PT N D .S; E/; a set of trains TR with specified lines in the PTN; a set of planned connections C; upper and lower bounds u; l on the driving, waiting, and changing times; and a set of OD-pairs OD. The task is to find a feasible timetable and a train-routing R which minimize the overall travel time c.; R/.
TTwR was introduced in [SS10b].
In Sect. 3.2 we define the EAN which allows us to visualize timetables and routings much better. Similarly to the proceeding in Chap. 2, we restate the definitions given in this section there in terms of the EAN.
To model TTwR, in Sect. 3.2 we extend the EAN, often used for timetabling problems, by adding origin and destination events which model the passengers' origins and destinations. In Sect. 3.3 we summarize shortly how TTwR can be solved 82 3 Timetabling
in polynomial time when either the routing or the timetable is fixed. Contrasting this result, in Sect. 3.4.1 we show strong NP-hardness of TTwR using a reduction from Set Cover which also allows us to transfer inapproximability results from the Set Cover problem to TTwR in Sect. 3.4.2. Furthermore, we show that we can easily find a solution to TTwR whose approximation ratio is bounded in terms of the lower and upper bounds on the activities.
In Sect. 3.5 we define the problem timetabling with routing between events (TTwRE). Although this problem looks quite similar to TTwR, it turns out to be solvable in polynomial time. We shortly discuss how this result can be used to solve TTwR.
Based on a model for aperiodic timetabling with fixed routing, in Sect. 3.7 we propose two integer programming formulations for TTwR. The first formulation is based on multi-commodity flow constraints to model the passenger routes. The second integer programming formulation uses a different approach, exploiting the insights of Sect. 3.5.
To determine the arrival and departure times for all vehicles at all stations, the information coded in the change-and-go network, which is used to model line planning problems in Chap. 2, is not enough. Instead we use a modified event-activity network (EAN). EANs are widely used in the literature for timetabling problems; see, e.g., [Nac98,Lie06]. To include passengers' origins and destinations in the standard EAN model for timetabling, origin and destination events which model the passengers' origins and destinations can be added (see, e.g., [Nac98,Lüb09,SS10b,SS12b]).
Given a public transportation network PT N , a set of trains TR, a set of planned connections C, and a set of OD-pairs OD, we construct an EAN as explained in the following.
The nodes of the network are called events. They mainly represent the arrivals and departures of the trains at stations.
The set of operational events is *E*op WD *E*dep [ *E*arr.
We add nodes to the network which represent the passengers' origins and destinations.
The arcs of the EAN are called activities since they represent physical activities of the trains, i.e., driving between stations and waiting at stations to let passengers get on and off or, in case of the changing activities, the movement of passengers from one train to another.
• The set of *driving activities A*drive -*E*dep *E*arr as
$$\mathcal{A}_{\text{drive}} := { (\operatorname{tr} - s - \operatorname{Dep}, \operatorname{tr} - s' - \operatorname{Arr}) : \operatorname{tr} \in \operatorname{TR}, (s, s') \in l(\operatorname{tr}) },$$
• The set of *waiting activities A*wait -*E*arr *E*dep as
$$\mathcal{A}_{\text{wait}} := { (\text{tr} - s - \text{Arr}, \text{tr} - s - \text{Dep}) : \text{tr} \in \text{TR}, s \in l(\text{tr}) },$$
• The set of *changing activities A*change -*E*arr *E*dep as
$$\mathcal{A}_{\text{change}} := { (\text{tr} - s - \text{Arr}, \text{tr}' - s - \text{Dep}) : (\text{tr}, \text{tr}', s) \in \mathcal{C} }.$$
We denote by *A*op WD *A*drive [ *A*wait [ *A*change the set of operational activities.
The origin events are connected by means of origin activities to all departure events at the corresponding station; analogously, the destination events are connected by destination activities to corresponding arrival events.
• The set of *origin activities A*org -*E*org *E*dep as
$$\mathcal{A}{\text{org}} := { (u^{\text{org}}, \text{tr} - u - \text{Dep}) : u^{\text{org}} \in \mathcal{E}{\text{org}}, (\text{tr} - u - \text{Dep}) \in \mathcal{E}_{\text{dep}} },$$
• And the set of *destination activities A*dest -*E*arr *E*dest as
$$\mathcal{A}{dest} := { (tr - v - Arr, v^{dest}) : v^{dest} \in \mathcal{E}{dest}, (tr - v - Arr) \in \mathcal{E}_{arr} }.$$
The EAN is defined as N WD .E; A/ with
$$\mathcal{E} := \mathcal{E}{op} \cup \mathcal{E}{org} \cup \mathcal{E}{dest} \ \ and \ \ \mathcal{A} := \mathcal{A}{op} \cup \mathcal{A}{org} \cup \mathcal{A}{dest}.$$
For e 2 *E*dep [ *E*arr; a 2 *A*drive [ *A*wait, let tr.e/ or tr.a/ denote the train that e or a, respectively, belongs to.
Since there are no fixed edge lengths, the EAN is not a network in the sense of Definition 1.3.3, but an directed graph. However, we use the term "EAN" or "eventactivity network," since this is the common term in the literature.
We call *N*op WD .*E*op; *A*op/ the operational event-activity network/EAN. In timetabling problems where a fixed routing or fixed weights on the activities are part of the input, origin and destination events and activities are not needed, and the operational EAN is used and simply referred to as "EAN" (see, e.g.,[Odi96,Nac98,Lin00,Pee03,Lie06]).
84 3 Timetabling
Fig. 3.1 Cutout of an EAN. (a) A station with two passing trains and changing possibilities between the trains. (b) Additional origin and destination events
Figure 3.1 shows a cutout of an EAN. A station which is visited by two trains is shown. The trains drive into the station, arrive there, wait for passengers to get on and off, and then depart again and drive to the next station. In the station, changing between both trains is possible which is represented by the dashed lines. Note that changing activities always take place between the arrival of a train at a station and the departure of another train at the same station. In Fig. 3.1a, only the operational network is shown. In Fig. 3.1b, origin and destination nodes and arcs for OD-pair .s3; s4/ are added.
It is easy to see that given an instance .PT N ; TR; C; l; u; OD/ of TTwR, the corresponding EAN is of size O.jSjjTRjCj*C*j/. The time needed for its construction is of the same order.
We can now understand a timetable as an assignment W *E*op ! Z of points in time to the nodes in the network. The driving, waiting, and changing times can be understood as the arc lengths Lij WD j i for .i; j / 2 *A*op resulting from the timetable. We call the network N with arc lengths
$$L_{ij} := \begin{cases} \pi_j - \pii & \text{if } (i, j) \in \mathcal{A}{op}, \ 0 & \text{otherwise.} \end{cases}$$
routing network N ./. The slack time for an activity .i; j / 2 *A*op can now be calculated as sij WD Lij lij where lij denotes the lower bound on .i; j /. By induction, the following lemma can be shown.
Lemma 3.2.5. Let P be a path in N from i0 to j 0 . Then
$$\pi{j'} = \pi{i'} + \sum{(i,j)\in P} (l{ij} + s_{ij}).$$
Given the time bounds on the driving, waiting, and changing times, expressed in terms of the EAN, a timetable is feasible if
$$L_{ij} = \pi_j - \pii \in [l{ij}, u{ij}] \quad \forall (i, j) \in \mathcal{A}{op}.$$ (3.2)
Let an instance .PT N ; TR; C; l; u; OD/ of TTwR be given, and let N D .E; A/ be the corresponding EAN. For an OD-pair .*u*k; *v*k/ 2 OD, every possible trainroute is represented by a path Pk D .u org k ; i k 1 ;:::;i k nk ; *v*dest k / from u org k to *v*dest k in N and vice versa.
Given a timetable , we can calculate the travel time (or length) of Pk as the time difference between departure at the origin and arrival at the destination, i.e.,
$$c(\pi, Pk) = \pi{i_{nk}^k} - \pi{i_1^k} \tag{3.3}$$
according to Lemma 3.1.3.
We now transfer the definition of a train-routing to the EAN: A routing in the EAN is a collection R WD fPk W .*u*k; *v*k/ 2 *OD*g with Pk being a path from u org k to *v*dest k in the EAN. Then, as defined in (3.1), given a timetable and a routing R, the overall travel time is calculated as
$$c(\pi, \mathcal{R}) = \sum_{Pk \in \mathcal{R}} w{uv} c(\pi, P_k). \tag{3.4}$$
We now give an alternative definition of TTwR which is equivalent to Definition 3.1.4. We use this definition to simplify notation in the algorithms, integer programming approaches, and hardness proofs in the following sections.
Definition 3.2.6. An instance .N ; l; u; OD/ of TTwR consists of an EAN N D .E; A/; upper and lower bounds u; l on the lengths of the operational activities; and a set of OD-pairs OD. The task is to find a feasible timetable and a routing R that minimize the overall travel time c.; R/.
In contrast to the hardness result for uLPwR in Theorem 2.5.1, for an EAN with upper and lower bounds, a feasible timetable can be found in polynomial time using, e.g., the Feasible Differential Algorithm given in [Roc84].
86 3 Timetabling
Furthermore, it is well known (see, e.g., [NO08]) that for a fixed routing R, an optimal timetable .R/ can be found in polynomial time. Since we use this result in Sect. 3.5, we shortly sketch it here.
Definition 3.3.1. An instance .N ; l; u; R/ of the simplified timetabling problem (sTT) consists of an EAN N D .E; A/, upper and lower bounds u; l on the lengths of the operational activities, and a routing R (with passenger weights wk for every Pk 2 R).
The task is to find a feasible timetable WD .R/ such that
$$c(\pi, \mathcal{R}) \le c(\pi', \mathcal{R})$$
for all feasible timetables 0 on N .
Lemma 3.3.2. Given an EAN N D .E; A/, a routing R, and a timetable , we define activity weights wa WD P Pk2R P Pk3a wuk vk . Then the overall travel time can be calculated as
$$c(\pi, \mathcal{R}) = \sum{(i,j)\in\mathcal{A}{op}} w_{ij}(\pi_j - \pi_i).$$
Proof. For every Pk 2 R, let i k denote the first departure event on path Pk and j k the last arrival event. Then we have
$$c(\pi, \mathcal{R}) = \sum_{P_k \in \mathcal{R}} w_k c(\pi, P_k)$$
$$= \sum_{P_k \in \mathcal{R}} wk (\pi{j^k} - \pi_{i^k})$$
$$= \sum_{P_k \in \mathcal{R}} \left( wk \sum{(i,j) \in P_k} (\pi_j - \pi_i) \right)$$
$$= \sum_{Pk \in \mathcal{R}} \left( \sum{(i,j) \in P_k} w_k (\pi_j - \pi_i) \right)$$
$$= \sum{(i,j) \in \mathcal{A}{op}} \left( \sum_{P_k \in \mathcal{R}: P_k \ni (i,j)} w_k (\pi_j - \pi_i) \right)$$
$$= \sum{(i,j) \in \mathcal{A}{op}} \left( (\pi_j - \pii) \sum{P_k \in \mathcal{R}: P_k \ni (i,j)} w_k \right)$$
$$= \sum{(i,j) \in \mathcal{A}{op}} w_{ij} (\pi_j - \pi_i).$$
Note that in most traditional timetabling models, the travel demand is even directly given in the form of activity weights wa for a 2 *A*op instead of providing a routing (or a set of OD-pairs) (see, e.g., [Nac98,Lie06]).
Due to Lemma 3.3.2, we can now formulate sTT as an integer program, using the variables
$$\pii := \text{scheduled time at event } i \quad \forall \ i \in \mathcal{E}{op}.$$
The IP reads
$$\min \sum{(i,j)\in\mathcal{A}{op}} w_{ij}(\pi_j - \pi_i), \tag{3.5}$$
s.t. $$\pi_j - \pi_i \le ua$$ $\forall (i, j) \in \mathcal{A}{op},$ (3.6)
$$\pi_j - \pi_i \ge la$$ $\forall (i, j) \in \mathcal{A}{op},$ (3.7)
$$\pii \in \mathbb{Z}$$ $\forall i \in \mathcal{E}{op},$ (3.8)
where (3.5) is the objective function from Lemma 3.3.2 and (3.6) and (3.7) are the feasibility constraints for the timetable.
The constraint matrix of (3.5)–(3.8) is the transposed of a node–arc incidence matrix and thus totally unimodular. Thus, when solving the LP-relaxation of problem (3.5)–(3.8) for integer bounds, the resulting timetable is also integer:
Lemma 3.3.3. sTT can be solved in polynomial time by linear programming.
Definition 3.3.4. Let I D .N ; l; u; OD/ be an instance of TTwR and let R be a routing.
• The set of timetables corresponding to R is defined as
$$OPT(\mathcal{R}) := {\pi(\mathcal{R}) : \text{ is an optimal solution to the instance } I = (\mathcal{N}, l, u, \mathcal{R}) \text{ of sTT} }.$$
• The set of solutions corresponding to R is f..R/; R/ W .R/ 2 OPT.R/g.
Due to the definition of problem sTT, we have the following corollary.
Corollary 3.3.5. Let I D .N ; l; u; OD/ be an instance of TTwR and let R be a routing. For every .R/ 2 OPT.R/, it holds that
$$c(\pi(\mathcal{R}), \pi) \le c(\pi', \mathcal{R})$$
for all feasible timetables 0 in N .
On the other hand, for a given timetable , it is even easier to calculate a corresponding routing R.
88 3 Timetabling
Definition 3.3.6. Let I D .N ; l; u; OD/ be an instance of TTwR and let be a timetable in N . For every OD-pair .*u*k; *v*k/, let *P*k./ D Puk vk ./ denote the set of shortest paths from u org k to *v*dest k in the network N ./.
• The set of routings corresponding to is defined as
$$OPT(\pi) := { \mathcal{R}(\pi) : \mathcal{R}(\pi) = { P1(\pi), \dots, P{|\mathcal{OD}|}(\pi) } \text{ with } P_k(\pi) \in \mathcal{P}_k(\pi), k = 1, \dots, |\mathcal{OD}| }.$$
• The set of solutions corresponding to is defined as f.; R.// W R./ 2 OPT./g.
Since R./ is defined as a shortest-path routing, Lemma 3.3.7 follows directly.
Lemma 3.3.7. Let I D .N ; l; u; OD/ be an instance of TTwR and let be a timetable in N . For every R./ 2 OPT./, it holds that
$$c(\pi, \mathcal{R}(\pi)) \le c(\pi, \mathcal{R}')$$
for all routings R0 for OD.
Let I D .N ; l; u; OD/ be an instance of TTwR. In the following we sometimes describe a solution to I stating only
In this section we present a proof from [SS12b] which shows that, in contrast to the polynomial solvability of sTT, TTwR is strongly NP-hard.
Theorem 3.4.1. TTwR is strongly NP-hard, even if
Theorem 3.4.1 is shown by reduction from the problem Set Cover. An instance .P; Q; K/ of the decision problem Set Cover (called Minimum Cover in [GJ79]) consists of a set P D fp1;:::;pmg, a set of subsets Q D fq1;:::;qng with qj - P, and a natural number K. The question to decide is whether there is a subset Q0 - Q with jQ0 j K such that for every pi 2 P, there is at least one qj 2 Q0 such that pi is contained in qj . The decision problem Set Cover is strongly NP-complete [GJ79].
Fig. 3.2 The gadget gj representing a set qj in the reduction from Set Cover to TTwR in the proof of Theorem 3.4.1
Proof. Let .P; Q; K/ be an instance of Set Cover with P D fp1;:::;pmg and Q D fq1;:::;qng. Without loss of generality we assume that K n. Based on P and Q we construct an instance of TTwR in the following way:
We represent the elements pi 2 P by OD-pairs .u; *v*i/ with passenger numbers wuvi WD n C 1 where n denotes the number of sets in Q.
The sets qj 2 Q are represented by a gadget consisting of three trains .trj /1, .trj /2, and .trj /3, six stations s1; sj 2 ; sj 3 ; sj 4 ; sj 5 , and s 6 (where s1 is the same station for all OD-pairs); and an OD-pair .u; vj / with u WD s1 and vj WD s j 5 and wuvj WD 1, in the way depicted in Fig. 3.2.
The square nodes are the departure and arrival events where the train names are omitted in the node labels for the sake of a compact representation. The origin and destination events are represented by ovals. The dotted lines are the origin and destination activities, the solid lines represent driving and waiting activities, changing activities are represented by dashed lines. The gray line indicates where it is possible to leave this gadget.
For every pi 2 qj , we introduce a train trj i running from s 3 to a station vi and connect ..trj /2 s 3 Arr/ to a departure event .trj i s 3 Dep/ by a changing activity with upper and lower bound u..trj /2s 3 -Arr/;.trj i s 3 -Dep/ WD 0 and
l ..trj /2s 3 -Arr/;.trj s 3 -Dep/ WD 0. .trj i s j 3 Dep/ is connected to the arrival event of train trj i in vi by a driving activity a with upper and lower bound la WD 0, ua WD 0.
See Fig. 3.3 (in combination with Fig. 3.2) for an example of the construction for an instance of Set Cover with P D f1; 2; 3; 4g and Q D ff2; 3; 4g; f1; 4g; f2; 3gg. The square nodes are the departure and arrival events. The origin and destination events are represented by ovals. The dotted lines are the origin and destination activities, the solid lines represent driving and waiting activities, changing activities are represented by dashed lines. The nodes gj represent the gadgets from Fig. 3.2.
Summarizing, our instance I of TTwR is defined by the following input, which defines an EAN N with upper and lower bounds l; u and a set of OD-pairs OD:
90 3 Timetabling
Fig. 3.3 Example for the construction of the EAN in the proof of Theorem 3.4.1
$$C = {((\mathbf{tr}^{j})^{2}, (\mathbf{tr}^{j})^{1}, s{2}^{j}), ((\mathbf{tr}^{j})^{1}, (\mathbf{tr}^{j})^{2}, s{5}^{j}), ((\mathbf{tr}^{j})^{3}, (\mathbf{tr}^{j})^{2}, s_{4}^{j}) : j = 1, \dots, n}$$
$$\cup {((\mathbf{tr}^{j})^{2}, \mathbf{tr}{i}^{j}, s{3}^{j}) : p_{i} \in q^{j}}$$
• a lower bound l ..trj /1s 2 -Dep;.trj /1s 5 -Arr/ D 1 on driving activities ..trj /1 s j 2 Dep; .trj /1 s 5 Arr/ for j D 1; : : : ; n and lower bounds la WD 0 on all other activities. The upper bounds are ua D 1 for
$$a \in {((\mathbf{tr}^{j})^{1} - s{2}^{j} - \text{Dep}, (\mathbf{tr}^{j})^{1} - s{5}^{j} - \text{Arr}),$$
$$((\mathbf{tr}^{j})^{2} - s{2}^{j} - \text{Dep}, (\mathbf{tr}^{j})^{2} - s{3}^{j} - \text{Arr}),$$
$$((\mathbf{tr}^{j})^{2} - s{4}^{j} - \text{Dep}, (\mathbf{tr}^{j})^{2} - s{5}^{j} - \text{Arr}) : j = 1, \dots, n}$$
and ua WD 0 otherwise.
• the set of OD-pairs is OD D f.u; vj / W j D 1; : : : ; ng[f.u; *v*i/ W i D 1; : : : ; mg with u WD s1 and vj WD s 5 . The weights are wuvj D 1 and wuvi D n C 1.
We show that there is a solution .; R/ to the constructed instance I with c.; R/ K, if and only if there is a subset Q0 solving the Set Cover problem.
Let .; R/ be a solution to I with c.; R/ K. Since wuvi D n C 1, this implies that c.; Pi/ D 0, for the path Pi defined in R for .u; *v*i/, since otherwise,
$$c(\pi, \mathcal{R}) \geq w_{uv_i}c(\pi, P_i) \geq n+1 > K.$$
Having a look at the possible paths in the EAN N constructed for our instance I (see Figs. 3.2 and 3.3), we conclude that for every i there is at least one j such that ..trj /2s 3 -Arr/ ..trj /2s 2 -Dep/ D 0 and such that there exists a train trj i . With
$$Q(\pi, \mathcal{R}) := { q^j : \pi_{((\mathsf{tr}^j)^2 - s3^j - \mathsf{Arr})} - \pi{((\mathsf{tr}^j)^2 - s_2^j - \mathsf{Dep})} = 0 },$$
due to the construction of our instance I , this is equivalent to saying that for every pi , there is at least one qj 2 Q.; R/ such that pi 2 qj .
Furthermore, we note that if and only if
$$\pi{((tr^{j})^{2}-s{3}^{j}-Arr)}-\pi{((tr^{j})^{2}-s{2}^{j}-Dep)}=0$$
it follows that
$$\pi{((tr^{j})^{2}-s{5}^{j}-Arr)} - \pi{((tr^{j})^{2}-s{4}^{j}-Dep)} = 1,$$
due to the bounds on activity ..trj /1 s 2 Dep; .trj /1 s j 5 Arr/. For every j with ..trj /2s 5 -Arr/ ..trj /2s 4 -Dep/ D 1, we see that c.; Pj / D 1 for the path Pj for OD-pair .u; vj /. This leads to
$$\begin{split} |Q(\pi,\mathcal{R})| = & |{q^j : \pi_{((\mathsf{tr}^j)^2 - s^j3 - \mathsf{Arr})} - \pi{((\mathsf{tr}^j)^2 - s^j2 - \mathsf{Dep})} = 0}| \ = & |{j : \pi{((\mathsf{tr}^j)^2 - s^j3 - \mathsf{Arr})} - \pi{((\mathsf{tr}^j)^2 - s^j4 - \mathsf{Dep})} = 1}| \ \leq & \sum{(u,v^j) \in \mathcal{OD}} c(\pi,P^j) \ \leq & c(\pi,\mathcal{R}) \ \leq & K. \end{split}$$
92 3 Timetabling
$$\pi(Q'){((tr^{j})^{2}-s{1}-Dep)} := 0 \text{ and}$$
$$\pi(Q'){((tr^{j})^{2}-s{3}^{j}-Dep)} := \begin{cases} 0 \text{ if } q^{j} \in Q' \ 1 \text{ otherwise.} \end{cases}$$ (3.9)
This uniquely defines a timetable .Q0 / on N.
• For i D 1; : : : ; m, we choose a ji such that pi 2 qji and qji 2 Q0 and define the train-route Pi.Q0 / for .u; *v*i/ to go via gadget gji . This defines Pi.Q0 / uniquely. Then,
$$c(\pi(Q'), Pi(Q')) = \pi(Q'){(tr_i^{j_i} - \nui - Arr)} - \pi(Q'){(tr^{j_i})^2 - s_1 - Dep)} = 0.$$
For j D 1; : : : ; n, we choose the train-route Pj .Q0 / defined by taking first .trj /3 and then changing to .trj /2 in s 4 . Then
$$\begin{split} c(\pi(Q'), P^{j}(Q')) &= \pi(Q'){((\mathsf{tr}^{j})^{2} - s{5}^{j} - \mathsf{Arr})} - \pi(Q'){((\mathsf{tr}^{j})^{1} - s{1} - \mathsf{Dep})} \ &= \begin{cases} 1 - 0 = 1 \text{ if } \pi(Q'){((\mathsf{tr}^{j})^{1} - s{1} - \mathsf{Dep})} = 1 \ 1 - 1 = 0 \text{ otherwise.} \end{cases} \ &= \begin{cases} 1 \text{ if } \pi(Q'){((\mathsf{tr}^{j})^{2} - s{3} - \mathsf{Arr})} = 1 \ 0 \text{ otherwise.} \end{cases} \end{split}$$
Hence
$$c(\pi(Q'), \mathcal{R}(Q')) = \sum_{Pi \in \mathcal{R}} w{uv_i} c(\pi(Q'), Pi(Q')) + \sum{P^j \in \mathcal{R}} w_{uv^j} c(\pi(Q'), P^j(Q'))$$
$$= 0 + |{j : \pi(Q')_{((tr^j)^2 - s_3 - Arr)} = 1}|$$
$$= |Q'|.$$
The proof of Theorem 3.4.1 can be extended to show an inapproximability result for TTwR. To this end, we consider an optimization version of Set Cover. An instance .P; Q/ of the optimization version of Set Cover consists of a set P D fp1;:::;pmg and a set of subsets Q D fq1;:::;qng with qj - P. The task is to find a subset Q0 - Q of minimal size jQ0 j such that for every pi 2 P, there is at least one qj 2 Q0 such that pi is contained in qj [Fei98].
There exist many inapproximability results for Set Cover; see, e.g., [BGLR93, RS97, Fei98, AMS06] and references therein. Due to the one-to-one correspondence between solutions and objective values of the optimization version of Set Cover and the instances of TTwR constructed in the proof of Theorem 3.4.1, any approximation algorithm that solves TTwR with a certain approximation ratio could be used to solve Set Cover with a similar approximation ratio. Thus, inapproximability results for Set Cover can easily be transferred to TTwR.
To give an example how this is done, in Theorem 3.4.2, we transfer a result from [BGLR93] which says that there is no constant-factor polynomial-time approximation algorithm for Set Cover unless P D NP to TTwR. To do this, we use a reduction which is very similar to the one in Theorem 3.4.1.
Theorem 3.4.2. There is no constant-factor polynomial-time approximation algorithm for TTwR unless P D NP.
Proof. Let A be a polynomial-time approximation algorithm for TTwR. For a given instance I of TTwR, let .A; *R*A/ be the solution returned by the algorithm, and let .; R/ be an optimal solution. Suppose that there is a constant C 1 such that for all instances I of TTwR, it holds that
$$\frac{c(\pi^A, \mathcal{R}^A)}{c(\pi^, \mathcal{R}^)} \le C. \tag{3.10}$$
We show that in this case we can use the algorithm A to solve Set Cover with approximation ratio C in polynomial time.
Let .P; Q/ be an instance of Set Cover with P D fp1;:::;pmg and Q D fq1;:::;qng. For P and Q, we construct an instance I of TTwR as described in the proof of Theorem 3.4.1, changing only the passenger weights for OD-pairs .u; *v*i/ to wuvi WD C n C 1 (instead of wuvi D n C 1 as chosen in the proof of Theorem 3.4.1) for i D 1; : : : ; m.
$$c(\pi', P'_i) = 0$$ and $c(\pi', (P')^j) = 1$ ,
hence
$$c(\pi',\mathcal{R}') = \sum_{Pi' \in \mathcal{R}'} w{iw_i} c(\pi',Pi') + \sum{(P')^j \in \mathcal{R}'} c(\pi',(P')^j) = n.$$
94 3 Timetabling
• Suppose that A finds a solution .A; *R*A/ such that there is an .u; *v*i/ 2 OD with c.A; P A i / ¤ 0 for the path P A i defined by RA for .u; *v*i/. Then c.A; P A i / wuvi c.A; P A i / D C n C 1, and it follows that
$$C \ge \frac{c(\pi^A, \mathcal{R}^A)}{c(\pi^, \mathcal{R}^)} \ge \frac{c(\pi^A, \mathcal{R}^A)}{c(\pi', \mathcal{R}')} \ge \frac{Cn + 1}{n} > C$$
which is a contradiction. Hence, for the solution .A; *R*A/ returned by A, it holds that c.A; P A i / D 0 for i D 1; : : : ; m.
• Since c.; Pj / 2 f0; 1g for any choice of timetable and path Pj for .u; vj /, this implies that
$$c(\pi^A, \mathcal{R}^A) = \sum{P^j \in \mathcal{R}^A} w{uv^j} c(\pi, P^j) \le n.$$
$$\frac{|Q(\pi^A, \mathcal{R}^A)|}{|Q^|} \le \frac{c(\pi^A, \mathcal{R}^A)}{c(\pi^, \mathcal{R}^*)} \le C.$$
Hence, using A we can construct a polynomial-time C-approximation algorithm for Set Cover which contradicts the inapproximability results for Set Cover. ut
In the instance I of TTwR, constructed from an instance .P; Q/ of Set Cover in the proof of Theorem 3.4.2, we use lower bounds of 0 on the driving activities in order to obtain the same objective value as in the Set Cover problem. Hence, the question may arise whether the inapproximability is only due to this choice of zero bounds. In this case, confining the class of instances to such with strictly positive bound could cause a significant improvement in the approximation ratio. However a similar result can be obtained setting la WD c and ua WD c (where c 2 N is an arbitrary constant) for all activity bounds previously set to 0 in the proof of Theorem 3.4.2 and scaling the other bounds on the activity lengths to numbers that are much higher.
We notice that the inapproximability result in Theorem 3.4.2 seems to be caused by the high relative difference of the upper and lower bounds on some activities. Indeed, we prove in Theorem 3.4.4 that the output of any (reasonable) approximation algorithm must be bounded by the maximum relative difference of upper and lower bounds.
We make use of the following notation:
Notation 3.4.3. Given an instance .N ; l; u; OD/ of TTwR, for every OD-pair .*u*k; *v*k/ 2 OD, let
In Theorem 3.6.4 in the next section we will see that for every OD-pair .*u*k; *v*k/, we can determine l opt k in polynomial time.
In the next theorem we show three bounds on the quality of a solution .0 ; R.0 // defined by a timetable 0 . These bounds differ not only in the time that is needed to calculate them but also in their tightness.
Theorem 3.4.4. Let I D .N ; l; u; OD/ be an instance of TTwR, and let .; R/ denote an optimal solution to I . Then for any timetable 0 on N and R0 WD R.0 /, it holds that
$$\frac{c(\pi', \mathcal{R}')}{c(\pi^, \mathcal{R}^)} \leq \frac{\sum_{(u_k, v_k) \in \mathcal{OD}} w_k lk^{upp}}{\sum{(u_k, v_k) \in \mathcal{OD}} w_k lk^{opt}} \leq \frac{\sum{(u_k, v_k) \in \mathcal{OD}} w_k lk^{low}}{\sum{(u_k, v_k) \in \mathcal{OD}} w_k lk^{low}} \leq \max{a \in \mathcal{A}_{op}} \frac{u_a}{l_a}.$$
To prove Theorem 3.4.4, we need the following lemma.
Lemma 3.4.5. For a1; a2;:::;an; b1; b2;:::;bn > 0
$$\frac{a_1 + a_2 + \dots + a_n}{b_1 + b_2 + \dots + bn} \le \max{i=1,\dots,n} \left{ \frac{a_i}{b_i} \right}.$$
Proof. The lemma is proven inductively: for n D 1, the statement is obvious. Suppose now that the statement has been shown for n D k 1 with k>1. Denote Ak-1 D a1 C a2 CC ak-1 and Bk-1 D b1 C b2 CC bk-1. Now assume that
$$\frac{A_{k-1} + ak}{B{k-1} + bk} > \max \left{ \frac{A{k-1}}{B_{k-1}}, \frac{a_k}{b_k} \right}.$$
Multiplying both inequalities with the denominators yields
$$A{k-1}B{k-1} + ak B{k-1} > A{k-1}B{k-1} + A_{k-1}b_k$$
$A_{k-1}b_k + a_k b_k > ak B{k-1} + a_k b_k,$
96 3 Timetabling
and if we add up the inequalities, we obtain
$$A{k-1}B{k-1} + A_{k-1}b_k + akB{k-1} + a_kbk > A{k-1}B{k-1} + A{k-1}b_k + akB{k-1} + a_kb_k$$
which is clearly a contradiction. ut
Now we can prove Theorem 3.4.4.
Proof. 1. For every routing R WD fPk W .*u*k; *v*k/ 2 *OD*g, we have c.; Pk/ l opt k ; hence
$$c(\pi^, \mathcal{R}^) \ge \sum_{(u_k, v_k) \in \mathcal{OD}} w_k l_k^{\text{opt}}.$$
On the other hand, since R0 WD R.0 /, we have l.P0 k/ l upp k for all P0 k 2 R0 ; thus, we obtain
$$c(\pi', \mathcal{R}') \leq \sum_{(u_k, v_k) \in \mathcal{OD}} w_k l_k^{\text{upp}}.$$
This gives us the first inequality.
$$\begin{split} \frac{\sum_{(u_k,v_k)\in\mathcal{OD}} w_k lk^{\text{upp}}}{\sum{(u_k,v_k)\in\mathcal{OD}} wk \sum{a\in P_k^{\text{upp}}} ua} \ &= \frac{\sum{(u_k,v_k)\in\mathcal{OD}} wk \sum{a\in P_k^{\text{low}}} la}{\sum{(u_k,v_k)\in\mathcal{OD}} wk \sum{a\in P_k^{\text{low}}} la} \ &\leq \frac{\sum{(u_k,v_k)\in\mathcal{OD}} wk \sum{a\in P_k^{\text{low}}} ua}{\sum{(u_k,v_k)\in\mathcal{OD}} wk \sum{a\in P_k^{\text{low}}} ua} \ &\leq \max{(u_k,v_k)\in\mathcal{OD}} \frac{wk \sum{a\in P_k^{\text{low}}} u_a}{wk \sum{a\in P_k^{\text{low}}} ua} \ &= \max{(u_k,vk)\in\mathcal{OD}} \frac{\sum{a\in P_k^{\text{low}}} ua}{\sum{a\in P_k^{\text{low}}} ua} \ &\leq \max{(u_k,vk)\in\mathcal{OD}} \max{a\in P_k^{\text{low}}} \frac{u_a}{la} \ &\leq \max{a\in \mathcal{A}_{\text{op}}} \frac{u_a}{l_a}. \end{split}$$
ut
In this section we describe and investigate the problem timetabling with routing between events (TTwRE). Though at first glance TTwRE looks quite similar to TTwR, it turns out to be much easier to solve. TTwRE motivates an alternative formulation for TTwR which provides us with a first solution approach in Sect. 3.6 and, in Sect. 3.7.2, an alternative integer programming formulation.
In TTwRE we assume that instead of knowing only the origin and destination station of each passenger, we are also given the information about the train a passenger wants to board at the origin station and the train he/she wants to arrive with at his/her destination. We then obtain an OD-set consisting of departure events as origins and arrival events as destinations.
Definition 3.5.1. Given an EAN N , an operational OD-pair is a pair .i; j / with i 2 *E*dep and j 2 *E*arr. We denote the set of operational OD-pairs as *OD*op and the weights for the operational OD-pairs as *w*ij for .i; j / 2 *OD*op.
We then restrict our routings to contain only paths which start at a passenger's origin station and end at his or her destination station.
Definition 3.5.2. Let N be an EAN and *OD*op a set of operational OD-pairs in N .
We define the problem of TTwRE as follows.
Definition 3.5.3. An instance .N ; l; u; *OD*op/ of timetabling with routing between events (TTwRE) consists of an EAN N D .E; A/: upper and lower bounds u; l on the operational activities: and a set of operational OD-pairs *OD*op. The task is to find a feasible timetable and a routing *R*op for *OD*op which minimize the overall travel time.
In [Nac98], Nachtigall derives a similar problem from a periodic timetabling problem. He formulates the problem as an integer program using variables for the slack and the passenger flows and solves it by a decomposition in two subproblems to determine an optimal passenger flow and an optimal assignment of slack times separately by linear programming. The approach from [SS10b, SS12b] presented here is similar but allows us to see the problem from a somewhat different perspective, such that, in the subsequent sections, we are able to develop an exact algorithm and an integer program formulation based on the results obtained here.
98 3 Timetabling
Note that there may be several paths in N which, for an operational OD-pair .i; j /, connect departure event i to arrival event j . However, the choice of the routing is irrelevant for the objective value.
Lemma 3.5.4. Given an instance .N ; l; u; ODop/ of TTwRE and a timetable in N , it holds that
$$c(\pi, \mathcal{R}{op}^1) = c(\pi, \mathcal{R}{op}^2) = \sum{(i,j) \in \mathcal{OD}{op}} w_{ij}(\pi_j - \pi_i)$$
for every pair of routings R1 op; R2 op for ODop.
Proof. For a given timetable , we have
$$c(\pi, \mathcal{R}{\text{op}}^1) = \sum{P{ij} \in \mathcal{R}{\text{op}}^1} w{ij} c(\pi, P{ij})$$
$$= \sum{(i,j) \in \mathcal{OD}{\text{op}}} w_{ij} (\pi_j - \pii) = \sum{P{ij} \in \mathcal{R}{\text{op}}^2} w{ij} c(\pi, P{ij}) = c(\pi, \mathcal{R}_{\text{op}}^2).$$
Hence, for every OD-pair .i; j / 2 *OD*op, we could choose an arbitrary path Pij from i to j as a representative for the class of paths from i to j , set *R*op WD fPij W .i; j / 2 *ODg, and concentrate on calculating an optimal timetable. We could then interpret a given instance .N* ; l; u; *ODop/ of TTwRE as an instance .N* ; l; u; R0 / of sTT where we define R0 to consist of the paths Pij adding origin and destination activities at the stations belonging to departure event i and arrival event j .
ut
However, instead of choosing one of the existing paths between two nodes i and j , we represent the demand between these events by adding a virtual activity .i; j / and choose this activity as a path.
Definition 3.5.5. Given an instance .N ; l; u; *OD*op/ of TTwRE, we define the set of virtual activities to be *A*virt WD f.i; j / W .i; j / 2 *OD*opg and set the activity weight *w*ij to the passenger weight *w*ij of .i; j /.
Note that due to the same notation for directed arcs and operational OD-pairs, we are now using the same notation for an operational OD-pair .i; j / and the corresponding virtual activity. However, virtual activities should be understood to be just a representation of the operational OD-pairs in the EAN, so we could indeed write *OD*op D *A*virt.
In Fig. 3.4 an example for the concept of virtual activities is given. The OD-pair .tr1s1Dep; tr2s4Arr/ is represented by the dotted virtual activity with weight w.tr1s1-Dep;tr2s4-Arr/. Note that three different paths in the EAN can be chosen for operational OD-pair .tr1 s1 Dep; tr2 s4 Arr/, but that, given a timetable, the travel time of .tr1 s1 Dep; tr2 s4 Arr/ does not depend on the path choice.
Fig. 3.4 Example for the implementation of virtual activities
We have seen in Lemma 3.5.4 that in TTwRE, the overall travel time does not depend on the routing any more. That is, given a timetable, the overall travel time is P .i;j /2*OD*op *w*ij .j i/. Hence, similarly to the approach for sTT in Sect. 3.3, we can solve TTwRE by linear programming. Again, we use variables
$$\pii := \text{ scheduled time at event } i \quad \forall i \in \mathcal{E}{op}.$$
Then the integer program reads as follows
$$\min \sum{(i,j)\in\mathcal{OD}{op}} w_{ij} \cdot (\pi_j - \pi_i), \tag{3.11}$$
s.t. $$\pi_h - \pig \ge l{gh}$$ $\forall (g, h) \in \mathcal{A}_{op},$ (3.12)
$$\pi_h - \pig \le u{gh}$$ $\forall (g, h) \in \mathcal{A}_{op},$ (3.13)
$$\pi_g \in \mathbb{Z}$$
$$\forall g \in \mathcal{E}_{op}, \qquad (3.14)$$
where (3.11) is the overall travel time and (3.12) and (3.13) are the feasibility constraints for the timetable. We have the same totally unimodular coefficient matrix as in the IP formulation (3.5)–(3.8) of sTT.
Theorem 3.5.6. TTwRE can be solved in polynomial time by linear programming.
In this section we turn back to the problem TTwR and use the result from Theorem 3.5.6 to solve TTwR exactly.
Definition 3.6.1. Let N be an EAN and OD D f.*u*k; *v*k/ W k 2 Kg a set of ODpairs. We define the set of departure events for .*u*k; *v*k/ as
$$\mathcal{E}{\text{dep}}^k := { e \in \mathcal{E}{\text{dep}} : (u_k^{\text{org}}, (\text{tr} - u_k - \text{Dep})) : l(\text{tr}) \ni u_k }$$
100 3 Timetabling
and the set of arrival events for .*u*k; *v*k/as
$$\mathcal{E}{\mathrm{arr}}^k := { e \in \mathcal{E}{\mathrm{arr}} : ((\mathrm{tr} - \nu_k - \mathrm{Arr}, \nu_k^{\mathrm{dest}}) : l(\mathrm{tr}) \ni \nu_k }.$$
The idea of the approach from [SS12b] is to solve TTwRE for every possible combination of these arrival and destination events for all OD-pairs.
Definition 3.6.2. Let .*u*k; *v*k/ 2 OD be an OD-pair. We define
• the set of reasonable virtual activities representing .*u*k; *v*k/
$$\mathcal{A}^k{\mathrm{virt}} := {(i^k, j^k): \ i^k \in \mathcal{E}^k{\mathrm{dep}}, j^k \in \mathcal{E}^k{\mathrm{arr}}; \exists \ \mathrm{a \ directed \ path} \ P{i^k j^k} \ \mathrm{from} \ i^k \ \mathrm{to} \ j^k \ \mathrm{in} \ \mathcal{N};$$
and $$\sum{a \in P{i^k j^k}} l_a \le l_k^{\text{upp}}$$ },
$$\mathcal{V}(\mathcal{OD}) := { (i^1, j^1), (i^2, j^2), \dots (i^{|\mathcal{OD}{op}|}, j^{|\mathcal{OD}{op}|}) } : (i^k, j^k) \in \mathcal{A}_{virt}^k }.$$
Lemma 3.6.3. The following definition is equivalent to Definition 3.2.6. An instance .N ; l; u; OD/ of TTwR consists of an EAN N D .E; A/; upper and lower bounds u; l on the operational activities; and a set of OD-pairs OD.
The task is to find a feasible timetable and a set of operational OD-pairs ODop 2 V.OD/ such that
$$\overline{c}(\pi, \mathcal{OD}{op}) := \sum{(i,j) \in \mathcal{OD}_{op}} \pi_j - \pi_i$$
is minimal.
Proof. Let I D .N ; l; u; OD/ be an instance of TTwR.
$$c(\pi^, Pk) = \sum{(i,j) \in P_k} (\pi_j - \pii) \ge \sum{(i,j) \in Pk} l{ij} > l_k^{\text{upp}} \ge c(\pi^, P_k^{\text{upp}}).$$
Thus, exchanging Pk into Pupp k yields a better objective value. This is a contradiction to the optimality of .; R/. Hence, every optimal routing R defines a set of operational OD-pairs *OD*op.R/.
• Furthermore, given a timetable , for every such pair of associated routing R WD fPk W .*u*k; *v*k/ 2 *OD*g and set of operational OD-pairs *OD*op, we have
$$c(\pi, \mathcal{R}) = \sum_{Pk \in \mathcal{R}} (\pi{j^k} - \pi{i^k}) = \sum{(i^k, j^k) \in \mathcal{OD}{op}} (\pi{j^k} - \pi{i^k}) = \overline{c}(\pi, \mathcal{OD}{op}),$$
where i k denotes the first departure node on Pk and j k denotes the last arrival node. ut
Hence, solving the LP-relaxation of IP formulation (3.11)–(3.14) for all *OD*op 2 V.OD/, we find an optimal solution to TTwR.
Theorem 3.6.4. An instance .N ; l; u; OD/ of TTwR can be solved by solving every different instance .N ; l; u; ODop/ with ODop 2 V.OD/ of TTwRE and comparing the objective values. In particular we obtain a polynomial-time algorithm in the following cases:
In Fig. 3.5 we observe that there are five possible paths from s org 1 to sdest 4 . However, these paths can be represented using only three virtual activities a1, a2, and a3. Hence, we can solve TTwR by solving three instances of TTwRE and comparing the objective values.
In Sect. 3.5 we saw that an instance of TTwR can be solved by solving many instances of TTwRE. However, this method can only be applied efficiently if there are a small number of OD-pairs or if for every OD-pair, there is a very limited set of choices at which event to start and at which event to end the journey. This is usually not the case in practical applications of timetabling.
In the following, we provide two integer programming formulations for TTwR in Sects. 3.7.1 and 3.7.2. Both formulations rely on the formulation (3.5)–(3.8) used for solving sTT, where the routing was part of the input. To include the routing decisions into the optimization process, in the formulation in Sect. 3.7.1, passengers 102 3 Timetabling
Fig. 3.5 Solving TTwR by solving TTwRE: virtual activities for OD-pair .s1; s4/
are modeled as flow in the network, similar to the integer programming approaches for scLPwR, cLPwR, and delay management with routing (DMwR) presented in Sects. 2.6.2 and 4.5. The formulation in Sect. 3.7.2, based on the insights from Sect. 3.5, introduces a variable for every virtual activity instead.
Let I D .N ; l; u; OD/ be an instance of TTwR. Our first approach is to model the routing constraints using a multi-commodity flow formulation, similar to the one used in the line planning problems in Sect. 2.6.2. To this end, in addition to the timetable variables i already used in the formulation (3.5)–(3.8) of sTT, we introduce flow variables qk a specifying whether OD-pair .*u*k; *v*k/ uses activity a or not
$$q_a^k := \begin{cases} 1 & \text{if activity } a \text{ is used by OD-pair } (u_k, v_k), \ \forall a \in \mathcal{A}. \ 0 & \text{otherwise} \end{cases}$$
Furthermore, for every OD-pair .*u*k; *v*k/, we use variables t k org and t k dest specifying the departure time in the origin uk and the arrival time in the destination *v*k.
If the network *N*op is not connected, in order to avoid difficulties in calculating the "big-M"-values needed by our IP formulation, for the calculation of the timetable, we connect the different connected components by artificial activities as described in the following.
Notation 3.7.1. Suppose that Nop is not connected, but consists of m connected components N 1 op;:::; N m op. Let N 0 denote the network built from Nop by adding a changing activity .ji ; kiC1/ from an arbitrary arrival node ji in N i op to an arbitrary departure node kiC1 in N iC1 op for i D 1; : : : ; m 1 with lower bounds lji kiC1 WD 0 *and uji kiC1 WD 0.*
That is, N 0 is defined as N 0 WD .E0 ; *A*0 / with
$$\mathcal{E}' := \mathcal{E}{op} \text{ and } \mathcal{A}' := \mathcal{A}{op} \cup {(ji, k{i+1}) : i = 1, \dots, m-1}.$$
However, since the artificial activities .ji ; kiC1/ do not represent travel possibilities, they are not considered in the flow constraints (3.18)–(3.20).
The flow-based integer program is given as
$$\min \sum_{(u_k, v_k) \in OD} wk(t{\text{des}t}^k - t_{\text{org}}^k), \tag{3.15}$$
s.t. $$\pi_j - \pii \ge l{ij}$$ $\forall (i, j) \in \mathcal{A}', \qquad (3.16)$
$$\pi_j - \pii \le u{ij}$$ $\forall (i, j) \in \mathcal{A}', \qquad (3.17)$
$$\sum_{a \in \delta - (u_k^{\text{org}})} q_a^{q} = 1 \qquad \forall (u_k, v_k) \in \mathcal{OD}, \tag{3.18}$$
$$\sum_{a \in \delta^{-}(i)} qa^k - \sum{a \in \delta^{+}(i)} qa^k = 0 \qquad \forall i \in \mathcal{E}{op}, (u_k, v_k) \in \mathcal{OD},$$ (3.19)
$$\sum{a \in \delta^{+}(v{k}^{\text{lest}})} q{a}^{k} = 1 \qquad \forall (u{k}, v_{k}) \in \mathcal{OD}, \tag{3.20}$$
$$t_{\text{org}}^k \le \pii + M{\text{org}}^k (1 - q_{(uk^{\text{org}}, i)}^k) \qquad \forall i \in \mathcal{E}{\text{org}}^k, \tag{3.21}$$
$$t_{\text{dest}}^k \ge \pii - M{\text{dest}}^k (1 - q_{(i, vk^{\text{dest}})}^k) \qquad \forall i \in \mathcal{E}{\text{dest}}^k, \tag{3.22}$$
$$q_a^k \in {0, 1}$$ $\forall (u_k, v_k) \in \mathcal{OD}, a \in \mathcal{A},$ (3.23)
$$\pii \in \mathbb{Z}$$ $\forall i \in \mathcal{E}{op}, \qquad (3.24)$
$$t{\text{org}}^k, t{\text{dest}}^k \in \mathbb{Z}$$ $\forall (u_k, v_k) \in \mathcal{OD}.$ (3.25)
Like in the integer program (3.5)–(3.8) for sTT, constraints (3.16) and (3.17) ensure the feasibility of the timetable and link the timetables of the different connected components of *N*op. The constraints (3.18)–(3.20) are flow constraints, ensuring that every passenger leaves its origin, travels until its destination, and stops traveling there. Constraints (3.21) and (3.22) together with the objective function (3.15) set the variables t k org and t k dest to the corresponding departure and arrival times.
A formal proof of correctness is given in the following Lemmas 3.7.2 and 3.7.3 where we denote D .i/i2*E*op , q D .qk a /a2A;.uk ;vk /2OD, torg D .t k org/.uk ;vk /2OD and tdest D .t k dest/.uk ;vk /2OD:
104 3 Timetabling
Lemma 3.7.2. Let I D .N ; l; u; OD/ be an instance of TTwR. Then for any set fMk org; Mk dest W .*u*k; *v*k/ 2 *OD*g 2 N2jODj 0 , it holds that a feasible solution .; q; torg; tdest/ to the IP (3.15)–(3.25) defines a feasible solution .0 ; R0 / to instance I of TTwR with
$$c(\pi', \mathcal{R}') \leq \sum_{(u_k, v_k) \in \mathcal{OD}} wk(t{dest}^k - t_{org}^k).$$
Proof. Let .; q; torg; tdest/ be a feasible solution to the IP formulation (3.15)– (3.25), i.e., .; q; torg; tdest/ fulfills constraints (3.16)–(3.25). We define a timetable 0 setting 0 i WD i for all i 2 *E*op. 0 is feasible due to constraints (3.16) and (3.17). For every .*u*k; *v*k/ 2 OD, qk defines a routing R0 due to constraints (3.18)–(3.20). Thus, every feasible solution .; q; torg; tdest/ to (3.15)–(3.25) defines a feasible solution .0 ; R0 / to the instance I of TTwR. For every .*u*k; *v*k/ 2 OD, let jk denote the last arrival event on Pk 2 R0 . Then qk jk *v*dest D 1, hence t k dest jk due to constraint (3.22). Just the same, (3.21) forces t k org ik for the first departure event ik on Pk. Hence
$$c(\pi', Pk) = \pi{jk} - \pi{ik} \le t{\text{dest}}^k - t_{\text{org}}^k$$
and consequently
$$c(\pi', \mathcal{R}') \leq \sum_{(u_k, v_k) \in \mathcal{OD}} wk(t{\text{dest}}^k - t_{\text{org}}^k).$$
Lemma 3.7.3. Let I D .N ; l; u; OD/ be an instance of TTwR. Let Ek dep; Ek arr be defined as in Definition 3.6.1. Let for every OD-pair .*u*k; *v*k/ 2 OD the numbers Mk org and Mk dest be chosen in such a way that
ut
$$M_{org}^k \ge \pi_j - \pii \ \forall (i,j) \in \mathcal{E}{dep}^k \times \mathcal{E}_{dep}^k$$ and every feasible timetable $\pi$ for $\mathcal{N}'$
$$(3.26)$$
and
$$M_{dest}^k \ge \pi_j - \pii \ \forall (i,j) \in \mathcal{E}{arr}^k \times \mathcal{E}_{arr}^k$$ and every feasible timetable $\pi$ for $\mathcal{N}'$ . $$(3.27)$$
Then a solution .0 ; R0 / defined by an optimal solution .; q; torg; tdest/ to the IP (3.15)–(3.25) is an optimal solution to instance I of TTwR and
$$c(\pi', \mathcal{R}') = \sum_{(u_k, v_k) \in \mathcal{OD}} wk(t{dest}^k - t_{org}^k).$$
Proof. 1. Let .0 ; R0 / be a feasible solution to the instance I of TTwR. Let N 1 op;:::; N m op with N i op D .Ei op; Ai op/ denote the connected components of *N*op, and let ji ; ki be defined as in Notation 3.7.1. We define as follows:
Then for .i; j / 2 Ai op, we have
$$\pi_j - \pi_i = (\pi'j - \pi{k_i}) - (\pi'i - \pi{k_i}) = \pi'_j - \pi'i \in [l{ij}, u_{ij}],$$
since 0 is a feasible timetable on N . Since additionally ki D ji-1 for every i D 2;:::;m, constraints (3.16) and (3.17) are fulfilled.
For every .*u*k; *v*k/ 2 OD denote by Pk the path for OD-pair .*u*k; *v*k/ chosen by R0 , and let ik, jk be the first departure and last arrival node of Pk. Note that Pk is a path in N ; hence ik and jj are in the same connected component. We define
$$\begin{aligned} q_a^k &:= \begin{cases} 1 \text{ if } a \in P_k \ 0 \text{ otherwise} \end{cases} & \forall a \in \mathcal{A}, (u_k, vk) \in \mathcal{OD}, \ t{\text{dest}}^k &:= \pi_{jk} \ t{\text{dest}}^k &:= \pi_{j_k} \end{cases} & \forall (u_k, vk) \in \mathcal{OD}, \ t{\text{dest}}^k &:= \pi_{j_k} \end{cases}$$
We show that the so-defined solution fulfills the constraints (3.18)–(3.25).
Due to the definition of q, constraints (3.18)–(3.20) are fulfilled. For the first departure node ik on Pk, we have t k org D ik by definition. For i 2 Ek dep n fikg, it holds that qk u org k i D 0 due to the definition of q. Hence,
$$t{\text{org}}^k = \pi{i_k} = \pii + (\pi{i_k} - \pi_i) \le \pii + M{\text{org}}^k = \pii + M{\text{org}}^k (1 - q_{u_k^{\text{org}}_i}^k),$$
and (3.21) is fulfilled. Analogously, we see that (3.22) is fulfilled. Furthermore, due to the definition of torg and tdest and since for every k, ik and jk are in the same connected component, we have
$$\sum_{(u_k, v_k) \in OD} wk (t{\text{dest}}^k - t{\text{org}}^k) = \sum{(u_k, v_k) \in OD} wk (\pi{jk} - \pi{i_k})$$
$$= \sum_{(u_k, v_k) \in OD} wk (\pi'{jk} - \pi'{i_k})$$
$$= c(x', \mathcal{R}'),$$
where jk denotes the last arrival node on Pk.
106 3 Timetabling
$$c(\pi', \mathcal{R}') \leq \sum_{(u_k, v_k) \in \mathcal{OD}} wk (t{\text{dest}}^k - t_{\text{org}}^k).$$
Suppose that for an optimal solution .x; R/ to TTwR, it holds that
$$c(\pi^, \mathcal{R}^) < \sum_{(u_k, v_k) \in \mathcal{OD}} wk(t{\text{dest}}^k - t_{\text{org}}^k).$$
Then according to (1), there is a solution .; q; t org; t dest/ to (3.15)–(3.25) with
$$\sum_{(u_k,v_k)\in\mathcal{OD}} wk((t{\mathrm{dest}}^)^k - (t_{\mathrm{org}}^)^k) = c(x^, \mathcal{R}^) < \sum_{(u_k,v_k)\in\mathcal{OD}} wk(t{\mathrm{dest}}^k - t_{\mathrm{org}}^k).$$
This is a contradiction to the optimality of .; q; torg; tdest/. ut
The minimal values which the numbers fMk org; Mk dest W .*u*k; *v*k/ 2 *OD*g are allowed to take according to Lemma 3.7.3 such that (3.26) and (3.27) are fulfilled with regard to the connected network N 0 D .E; A0 / can be rewritten as follows.
$$M{\mathrm{org}}^k := \max{\pi \text{ feasible for } \mathcal{N}'} \left( \max{(i,j) \in \mathcal{E}{\mathrm{dep}}^k \times \mathcal{E}_{\mathrm{dep}}^k} (\pi_j - \pi_i) \right)$$
and
$$M{\text{dest}}^k := \max{\pi \text{ feasible for } \mathcal{N}'} \left( \max{(i,j) \in \mathcal{E}{\text{arr}}^k \times \mathcal{E}_{\text{arr}}^k} (\pi_j - \pi_i) \right)$$
These values can be determined in polynomial time. To that end, we solve the linear program
$$\max M_{\text{org}}^k(i,j) := \pi_j - \pi_i, \tag{3.28}$$
s.t. $$\pi_h - \pig \ge l{gh}$$ $\forall (g,h) \in \mathcal{A}',$ (3.29)
$$\pi_h - \pig \le u{gh}$$
$$\forall (g, h) \in \mathcal{A}', \tag{3.30}$$
$$\pi_g \in \mathbb{Z}$$
$$\forall g \in \mathcal{E}_{op},$$ (3.31)
for all .i; j / 2 Ek dep Ek dep (see Definition 3.6.1). Since the matrix defined by the constraints (3.29) and (3.30) is the same as in formulation (3.5)–(3.8) and hence totally unimodular and the bounds are integer, we obtain an optimal integer solution by linear programming. Then we can set
$$M{\mathrm{org}}^{k} := \max{(i,j) \in \mathcal{E}{\mathrm{dep}}^{k} \times \mathcal{E}{\mathrm{dep}}^{k}} M_{\mathrm{org}}^{k}(i,j).$$
Analogously, we can compute Mk dest.
We summarize our result in the following lemma.
Lemma 3.7.4. The minimal values for fMk org; Mk dest W .*u*k; *v*k/ 2 *OD*g such that (3.26) and (3.27) are fulfilled are
$$M{org}^{k} := \max{\pi \text{ feasible for } \mathcal{N}'} \left( \max{(i,j) \in \mathcal{E}{\text{dep}}^{k} \times \mathcal{E}{\text{dep}}^{k}} (\pi{j} - \pi_{i}) \right)$$
and
$$M{dest}^k := \max{\pi \text{ feasible for } \mathcal{N}'} \left( \max{(i,j) \in \mathcal{E}{\text{dep}}^k \times \mathcal{E}_{\text{dep}}^k} (\pi_j - \pi_i) \right).$$
These values can be calculated in polynomial time.
Although the calculation time for the numbers fMk org; Mk dest W .*u*k; *v*k/ 2 *OD*g is polynomial, it may be very long. The following value for fMk org; Mk dest W .*u*k; *v*k/ 2 *OD*g can be calculated much faster.
Lemma 3.7.5. P Let I D .N ; l; u; OD/ be an instance of TTwR. We define M WD a2Aop ua and set Mk org WD M and Mk dest WD M. Then (3.26) and (3.27) are fulfilled.
Proof. For .i0 ; j 0 / 2 Ek dep Ek dep, let Pi0j 0 denote an undirected path from i0 to j 0 in N 0 (such a path exists since N 0 is connected). Then
$$\pi{j'} - \pi{i'} \le \sum{(i,j) \in P{i'j'}} \pi_j - \pii = \sum{(i,j) \in P{i'j'} \cap \mathcal{A}{op}} \pi_j - \pii$$ $$\le \sum{(i,j) \in P{i'j'} \cap \mathcal{A}{op}} u{ij} \le \sum{a \in \mathcal{A}_{op}} u_a = M.$$
The same holds for .i0 ; j 0 / 2 Ek arr Ek arr. ut
An alternative formulation for integrating routing in timetabling problems using flow constraints is followed by [Lüb09, SG13] for periodic timetabling. There (translated to our notation), variables taking the role of qk ij .j i/ are introduced for every .i; j / 2 *A*op and every .*u*k; *v*k/ 2 OD. The weighted sum of these variables serves as objective function. The "big-Ms" required to set the new variables to the claimed values are of the size of the upper bounds on the activity lengths and thus significantly smaller than the ones presented in this book; however, the number of variables and constraints is larger than in our formulation.
108 3 Timetabling
Instead of using a flow formulation which introduces a variable for every activity and every OD-pair, it is also a natural idea to introduce a variable for every path an OD-pair might choose. In many routing problems, this approach has the inconvenience that it leads to an exponential number of variables, because of an exponential number of paths between origin and destination node of every OD-pair.
However, it has been shown in [SS12b] that we can exploit the insights gained in Sect. 3.5 to reduce the number of variables significantly. Instead of introducing a variable for every path Pk from u org k to *v*dest k for every OD-pair .*u*k; *v*k/ 2 OD, we introduce a variable for every virtual activity .i; j / 2 Ak virt:
$$z_{ij}^k := \begin{cases} 1 \text{ if virtual activity } (i, j) \text{ is used for OD-pair } (u_k, v_k) \ 0 \text{ otherwise.} \end{cases}$$
Note that for every OD-pair .*u*k; *v*k/, there might be an exponential number of paths from u org k to *v*dest k , but there are at most O.j*E*j 2/ reasonable virtual activities—and usually much less in practical applications.
We introduce variables t k which take the value of the travel time of an OD-pair .*u*k; *v*k/ for the timetable and the routing chosen by the integer program. Furthermore we use again the timetable variables i for i 2 *E*op of formulation (3.5)–(3.8) of sTT.
For a better comparability between the flow-based and the virtual-activity-based IP formulation, also in our second IP for TTwR, in case of an unconnected network we calculate a feasible timetable on N 0 instead of *N*op.
The virtual-activity-based integer program reads
virt
$$\min \sum_{(u,v)\in\mathcal{OD}} w_k t^k, \tag{3.32}$$
s.t. $$\pi_j - \pii \ge l{ij}$$ $\forall (i, j) \in \mathcal{A}', \quad (3.33)$
$$\pi_j - \pii \le u{ij}$$ $\forall (i, j) \in \mathcal{A}', \quad (3.34)$
$$\sum{(i,j)\in\mathcal{A}{\text{virt}}^k} z_{ij}^k = 1 \qquad \qquad \forall (u_k, v_k) \in \mathcal{OD}, \quad (3.35)$$
$$t^{k} \ge \pi{j} - \pi{i} - M^{k}(1 - z{ij}^{k}) \quad \forall (i, j) \in \mathcal{A}{\text{virt}}^{k}, (u{k}, v{k}) \in \mathcal{OD}, \quad (3.36)$$
$$z{ij}^k \in {0, 1} \qquad \qquad \forall (i, j) \in \mathcal{A}{\text{virt}}^k, \ (u_k, v_k) \in \mathcal{OD}, \quad (3.37)$$
$$\pii \in \mathbb{Z}$$ $\forall i \in \mathcal{E}{op}, \quad (3.38)$
$$t^k \in \mathbb{Z}$$ $\forall (u_k, v_k) \in \mathcal{OD}.$ (3.39)
ut
Like in the IP (3.5)–(3.8) for sTT, the constraints (3.33) and (3.34) ensure feasibility of the timetable on N 0 N . Constraints (3.35) ensure that exactly one virtual activity is chosen for every OD-pair, and constraints (3.36) set t k to the travel time of OD-pair .*u*k; *v*k/ if Mk is chosen big enough for every .*u*k; *v*k/ 2 OD.
We use the equivalent characterization of TTwR provided by Lemma 3.6.3 to show that this IP formulation for TTwR is correct in the following Lemmas 3.7.6 and 3.7.7.
Lemma 3.7.6. Let I D .N ; l; u; OD/ be an instance of TTwR and consider the corresponding IP formulation (3.32)–(3.39). For any set fMk W .*u*k; *v*k/ 2 *OD*g 2 NjODj 0 , a feasible solution .;z;t/ to (3.32)–(3.39) defines a feasible solution .0 ; OD0 op/ to I such that
$$\overline{c}(\pi', \mathcal{OD}'{op}) \leq \sum{(u_k, v_k) \in \mathcal{OD}} w_k t^k.$$
Proof. Let .;z;t/ be a feasible solution to the IP formulation (3.32)–(3.39). We define a timetable 0 setting 0 i WD i for all i 2 *E*org. Due to constraints (3.33) and (3.34), 0 is a feasible timetable. Furthermore, z defines a set of operational ODpairs OD0 op D S .uk ;vk /2*OD*f.i; j / W zk ij D 1g. Since *z*ik jk D 1 for .ik; jk/ 2 OD0 op, it follows from (3.36) that
$$\overline{c}(\pi', \mathcal{OD}'{op}) = \sum{(i_k, jk) \in \mathcal{OD}'{op}} wk(\pi{jk} - \pi{ik}) \le \sum{(u_k, v_k) \in \mathcal{OD}} w_k t^k.$$
Lemma 3.7.7. Let I D .N ; l; u; OD/ be an instance of TTwR, and let for every OD-pair .*u*k; *v*k/ 2 OD the number Mk be chosen in such a way that
$$M^{k} \geq (\pi{j{1}} - \pi{i{1}}) - (\pi{j{2}} - \pi{i{2}})$$
$$\forall (i{1}, j{1}), (i{2}, j{2}) \in \mathcal{A}^{k}_{virt} \text{ and every feasible timetable } \pi \text{ for } \mathcal{N}'.$$ (3.40)
Then a solution .0 ; OD0 op/, defined by an optimal solution .;z;t/ to the IP (3.32)– (3.39), is an optimal solution to the instance I of TTwR and
$$\overline{c}(\pi', \mathcal{OD}'{op}) = \sum{(u_k, v_k) \in \mathcal{OD}} w_k t^k.$$
Proof. 1. Let .0 ; R0 / be a feasible solution to I . Let N 1 op;:::; N m op with N i op D .*E*i op; Ai op/ denote the connected components of *N*op, and let ji ; ki be defined as in Notation 3.7.1. Like in Lemma 3.7.3, we define as follows:
110 3 Timetabling
• We set j WD 0 j for all j 2 E1 op. Then we proceed the connected components iteratively as follows:
Then for .i; j / 2 Ai op, we have
$$\pi_j - \pi_i = (\pi'j - \pi{k_i}) - (\pi'i - \pi{k_i}) = \pi'_j - \pi'i \in [l{ij}, u_{ij}],$$
since 0 is a feasible timetable on N . Hence, constraints (3.33) and (3.34) are fulfilled. Note that since ki D ji-1 for every i D 2;:::;m, is a feasible timetable on N 0 . Denote by .ik; jk/ the activity in OD0 op \ Ak virt. We define
$$z_{ij}^k := \begin{cases} 1 \text{ if } (i,j) = (i_k,j_k) \ 0 \text{ otherwise} \end{cases} \ \forall (u_k,vk) \in \mathcal{OD}, (i,j) \in \mathcal{A}{\text{virt}}^k,$$
$$t^k := \pi'_{jk} - \pi'{i_k} \qquad \forall (u_k,v_k) \in \mathcal{OD}.$$
Constraints (3.35) are fulfilled because OD0 op is a set of operational OD-pairs. For .ik; jk/ 2 OD0 op, constraints (3.36) are fulfilled by definition. For .i; j / 2 *A*k virt n .ik; jk/, we have
$$t^{k} \ge \pi{j{k}} - \pi{i{k}} = \pi{j} - \pi{i} - [(\pi{j} - \pi{i}) - (\pi{j{k}} - \pi{i{k}})]$$ $$\ge \pi{j} - \pi{i} - M^{k} = \pi{j} - \pi{i} - M^{k} (1 - z{i{j}}^{k}).$$
Due to the definition of t k, P .u;v/2*OD w*kt k D c.0 ; OD0 op/.
$$\overline{c}(\pi', \mathcal{OD}'{\mathrm{op}}) \leq \sum{(u_k, v_k) \in \mathcal{OD}} w_k t^k.$$
Suppose that for an optimal solution .; OD op/ to TTwR, it holds that
$$\overline{c}(\pi^, \mathcal{OD}_{\mathrm{op}}^) < \sum_{(u_k, v_k) \in \mathcal{OD}} w_k t^k.$$
Due to (1), there is a solution .;z; t/ to (3.32)–(3.39) with
$$\sum_{(u_k,v_k)\in\mathcal{OD}} w_k tk^* = \overline{c}(\pi^*, \mathcal{OD}{op}^*) < \sum_{(u_k,v_k)\in\mathcal{OD}} w_k t^k.$$
This contradicts the optimality of .;z;t/. ut
The minimal values which the numbers fMk W .*u*k; *v*k/ 2 ODg are allowed to take such that (3.40) is satisfied can be rewritten as
$$\max{\pi \text{ feasible for } \mathcal{N}'} \max{((i_1,j_1),(i_2,j2)) \in \mathcal{A}{\text{virt}}^k \times \mathcal{A}{\text{virt}}^k} (\pi{j1} - \pi{i1}) - (\pi{j2} - \pi{i_2}).$$
Again, these values can be determined in polynomial time by solving a series of linear programs.
$$\max \ M^{k}((i{1}, j{1}), (i{2}, j{2})) := (\pi{j{1}} - \pi{i{1}}) - (\pi{j{2}} - \pi{i{2}}), \tag{3.41}$$
s.t. $$\pi_h - \pig \ge l{gh}$$ $\forall (g,h) \in \mathcal{A}', \quad (3.42)$
$$\pi_h - \pig \le u{gh}$$ $\forall (g,h) \in \mathcal{A}', \quad (3.43)$
$$\pi_g \in \mathbb{Z}$$
$$\forall g \in \mathcal{E}_{op}, \quad (3.44)$$
for all ..i1; j1/; .i2; j2// 2 Ak virt Ak virt. Since the matrix defined by the constraints (3.42) and (3.43) is totally unimodular and we assume the bounds to be integer, we obtain a solution by linear programming. Then we can set
$$M^{k} := \max{((i{1},j{1}),(i{2},j{2})) \in \mathcal{A}{\text{virt}}^{k} \times \mathcal{A}{\text{virt}}^{k}} M^{k}((i{1},j{1}),(i{2},j_{2})).$$
We summarize our result in the following lemma.
Lemma 3.7.8. The minimal values for fMk W .*u*k; *v*k/ 2 ODg such that (3.26) and (3.27) are satisfied are
$$M^{k} := \max{\pi \text{ feasible for } \mathcal{N}'} \max{((i{1}, j{1}), (i{2}, j{2})) \in \mathcal{A}{virt}^{k} \times \mathcal{A}{virt}^{k}} (\pi{j{1}} - \pi{i{1}}) - (\pi{j{2}} - \pi{i{2}}).$$
These values can be calculated in polynomial time.
Like in Lemma 3.7.5, a bound that is faster to calculate can be obtained summing up the upper bounds on all operational activities.
Lemma 3.7.9. Given an instance .N ; l; u; OD/ of TTwR, we set Mk P WD a2*Aop ua. Then (3.40) is satisfied.*
Proof. For every .i; j / 2 Ak virt, there exists a (directed) path Pij from i to j in *N*op. Hence
$$(\pi_{j1} - \pi{i1}) - (\pi{j2} - \pi{i2}) = \sum{(i,j) \in P_{i_1j_1}} (\pi_j - \pii) - \sum{(i,j) \in P_{i_2j_2}} (\pi_j - \pi_i)$$
$$\leq \sum{(i,j) \in P{i_1j_1}} (\pi_j - \pi_i)$$
112 3 Timetabling
$$\leq \sum{(i,j)\in P{i_1j1}} u{ij}$$
$$\leq \sum{a\in\mathcal{A}{op}} u_a.$$
Numerical evaluations and a comparison of the two integer programming formulations can be found in [Anh12, SS12b]. There, the virtual-activity-based formulation appears to be superior in almost all tested cases, which may be due to the lower number of constraints and variables used.
ut
Delay management deals with the short-term adaption of a given timetable to small delays as they occur in daily train operations. The main decisions to make are the wait-depart decisions: Should a connecting train wait if a feeder train arrives with a delay? If it does not wait, transferring passengers lose their connection; however, if it waits it will also receive a delay.
In this section we define the delay management problem relying on the definitions from the preceding chapters, in particular from Sects. 2.1 and 3.1. Like in the timetabling problem, we are given a public transportation network PT N D .S; E/, a set of trains TR with specified lines in the PTN, a set of planned connections C, and lower bounds l on the driving, waiting, and changing times. Furthermore, we are given a timetable which specifies the arrival and departure times of the trains at the stations.
Delay management becomes relevant whenever delays in the train operations occur. When a train arrives late at a station, in most cases it will also depart later, arrive later at the following station, and so on, until the delay is absorbed by the slack times, i.e., the time buffers in the timetable. If a connecting train waits for passengers from a delayed feeder train, it will also receive a delay. Furthermore, delays may be transferred due to capacity restrictions, e.g., if a regional train has to stop to allow a delayed high-speed train to overtake or if trains have to wait outside stations until a platform becomes available.
We refer to the first occurrence of a delay as a source delay. That is, a source delay is one that is not caused by some other delay in the way described above. Source delays can be classified into two groups. We call a source delay operational if it arises because an operation (driving or waiting) takes longer than planned. Operational source delays are additive, i.e., if a train already has a delay of 5 min when it receives an additional operational source delay of 6 min, it will have a total delay of 11 min. If, on the other hand, delay is caused because an arrival or a departure cannot take place at the time it was initially scheduled because of e.g., the delayed arrival of a train driver or of a passengers from outside of the considered system (see, e.g., [GJPW07, KTZ11]), we speak of external source delays. In this case, if a train has a delay of 5 min and its departure is externally source-delayed by 6 min, it will have a total delay of 6 min.
Some delay management models can deal with both operational and external delays [DPP07,SS08,Bau10,Sch10], while others consider only operational [Dv01, GS07, CDPP12] or only external [GJPS05, Sch06, GJPW07, KTZ11, DHSS12] delays.
The spreading of the delay through the public transportation system depends on the slack times, the wait-depart decisions, and the capacity restrictions. It can be modeled in the framework of max-plus algebras [dDD98,Hd01,Gov05] or incorporated in the event-activity network (EAN) [Sch01,SS08,DSS11,DHSS12,Sch13] or similar graph models [DPP07, HGL08, CDPP12]. This is explained in more detail in Sect. 4.2.
If trains are rescheduled due to delays, capacity conflicts on tracks and in stations can arise. Hence, in addition to the wait-depart decisions, the planner has to make rescheduling decisions. While the delay management problem focuses on the wait-depart decisions in order to minimize passengers' travel time or delay, the train rescheduling problem investigates the question how trains should be rescheduled in order to find a feasible disposition timetable. To this end, the railway infrastructure is modeled on a microscopic level including blocks and signals, while most delay management models rely on the macroscopic PTN model as given in Definition 1.3.11.
Most delay management models consider only wait-depart decisions. Schachtebeck and Schöbel [SS08] and the articles [Sch09, Bau10, SS10a, Sch10, Bau10] include priority decisions on the tracks into the macroscopic delay management model. An additional reassignment of trains to platforms is done in [DSS11]. In [DPP07, CDPP12], a more detailed model is used for train rescheduling. Dollevoet et al. [DCDH12] iterate between macroscopic delay management and microscopic train rescheduling steps. Adenso-Díaz et al. [ADOGT99] consider a train rescheduling problem where it is additionally possible to cancel or reassign services.
Since delays in many cases happen unforeseen, delay management is often regarded as an online problem [BHLS07, GJPW07, Bau10, KTZ11, KS11], i.e., information about delays is only revealed gradually.
However, it is also interesting to study delay management as an offline problem, i.e., to assume that all delays are known in advance, as it is mostly done in the literature. A possible application of offline delay management is to predict secondary delays when source delays are known. Thus, it is a valuable tool for short-time adaption of timetables when delays are known in advance, e.g., because of construction works. Also in an online framework, solution methods for offline delay management can be applied to successively re-optimize the wait-depart decisions whenever new delays get known [Bau10,KS11]. Furthermore, offine delay management is in NP, while PSPACE-hardness was shown for an online delay management problem allowing free choices of trains in [BHLS07].
When delays occur, the initial timetable cannot be operated anymore and is hence modified to a disposition timetable x. The disposition timetable takes into account both the source delays and the lower bounds on the durations of the driving and waiting of trains.
When a train arrives late at a station due to delays, it is possible that connecting trains have already departed; thus, it may not be possible anymore to transfer to the connecting train. We say that the connection is dropped, otherwise, it is maintained.
In train rescheduling [DPP07, CDPP12] and early delay management models [dDD98,Dv01,Hd01], passengers' demand is not taken into account in the modeling and optimization process.
Some delay management models model demand as passenger loads on activities, i.e., it is assumed that for every waiting, driving, and changing activities it is known how many passengers perform this activity (see, e.g., [GS07,SS08,Sch10,DSS11]).
Schöbel [Sch01] proposes a model where passengers' demand is given in form of a routing in the EAN, i.e., the passengers' paths in the PTN as well as the sequence of trains the passengers take are specified. It is assumed that the underlying timetable is periodic, i.e., that it repeats itself after a fixed time period T , and that whenever the route chosen for an OD-pair cannot be realized because of dropped connections, passengers continue their journey one period later. In the following we refer to this problem as delay management with penalties. It is studied in [GGJC04, GJPS05, HGL08,Sch06,Sch07] as well.
However, there are also some models which assume that demand is given in form of OD-pairs. While in some delay management problem, like in line planning and timetabling, only origins and destinations are specified [GGJC04], other models assume that also start times are given [DHSS09,DH11,DCDH12,DHSS12,Sch13]. The start times can be interpreted as the times the passengers arrive at the stations. Hence, the latter models assume that passengers learn about the delays when they arrive at the station.
In a model proposed in [BHLS07] for online delay management, a routing is given in the input, and passengers are not allowed to change the corresponding paths in the PTN; however, they can freely choose among the trains going along these paths. In [GGJC04, DHSS09, DH11, DCDH12, DHSS12, Sch13], passengers are allowed to adapt their routes to the disposition timetable freely.
Delay management aims at finding a trade-off between the inconvenience caused by dropped connections and the additional delay spreading in the system if connections are maintained.
To this end, in [dDD98, Hd01, Dv01], train delays and penalties for dropping connections are accumulated. In [Sch06, GS07, CDPP12], the delay management problem is considered as a bicriteria problem aiming at minimizing both the delay of the vehicles and the weighted number of missed connections.
Passenger-oriented models aim at minimizing passengers' delay or travel time. Since an originally planned travel route cannot be followed anymore in case that a connection on the route is canceled, some models assume that passengers can be rerouted and minimize the rerouted travel time [DHSS09,DH11,DCDH12,DHSS12, Sch13]. Instead of rerouting the passengers, other delay management models (see, e.g., [Sch01,GGJC04,GJPS05,Sch06,Sch07,BHLS07,GJPW07,HGL08]) assume that the underlying timetable is periodic and back on time in the next period and hence estimate the travel time by imposing a penalty of the period length in case that a connection is dropped. In [Sch06, Sch07, SS08, Sch10, DSS11], a further simplification of the travel-time objective is investigated. Demand is no longer given in form of routings but in form of passenger loads on activities, and a penalty of T multiplied with the activity weight is applied whenever a connection a passenger wanted to use is dropped.
Krumke et al. [KTZ11] maximize the profit of the railway company, assuming a refund system for delayed passengers.
Various models for delay management can be found in the literature. The EAN used in this book was introduced into the public transportation context for modeling timetabling problems (see references in Sect. 3.1.2) and used to model the delay management problem for the first time in [Sch01]. Besides the EAN-based model, there are models in the context of max-plus algebra and control theory [dDD98, Dv01,Hd01] and simulation approaches, see, e.g., [SM99,SMBG01,SBK01]. Train rescheduling is sometimes modeled as a job-shop scheduling problem [DPP07, CDPP12] using an alternative graph formulation which is similar to the EAN.
In [Sch06], Schöbel shows that if all source delays have the same amount and all slack times are equal to 0, delay management with constant weights can be solved in polynomial time by linear programming. The complexity of (unrestricted) delay management with constant weights is still open.
In general, delay management with penalties is strongly NP-hard. (Strong) NP-hardness is shown in [GGJC04, GJPS05, Gat07] for many special cases of the problem. The complexity analysis accomplished in these publications also includes algorithms for polynomially solvable subcases. The special cases considered are generated by imposing restrictions on the network structure, the number of connections used per OD-pair, the slack time, the delay scenario, and the numbers of stations a train can visit. In most problems investigated in these publications, external source delays are considered which are brought into the system by passengers arriving from routes outside the system.
Delay management with routing (DMwR) is proven to be strongly NP-hard using a reduction from 3-SAT in [GGJC04]. More generally speaking, in [GJPS05], it is claimed that every special case considered in the complexity analysis of this paper which is (strongly) NP-hard for the model with fixed passenger routes is also (strongly) NP-hard for delay management with dynamic route choices. In [Sch13], DMwR is shown to be strongly NP-complete even if there is only one passenger. However, under a realistic assumption on the problem instances, delay management for one OD-pair can be solved in polynomial time [DHSS12,Sch13].
In [GS07,Sch06] it is shown that the bicriteria problem of minimizing the delay of the vehicles and the weighted number of missed connections simultaneously is NP-hard by reduction from the knapsack problem.
If additionally to the wait-depart decisions also decisions concerning the limited track capacities have to be taken, delay management with penalties is NP-hard, even in the special case where the wait-depart decisions are already made [CS07].
When wait-depart decisions are fixed, the initial timetable can be updated in polynomial time to a disposition timetable by the critical path method [Sch06]. Variants of the delay management problem which can be solved in polynomial time by cut-based approaches and dynamic programming are studied in [Gat07].
However, no polynomial algorithm for delay management is known. Therefore, in most publications the problem is solved by integer programming or integerprogramming-based heuristics.
When modeling delay management as an integer program, variables to construct the disposition timetable as well as variables keeping track of the wait-depart decisions are needed in most models.
To update the given timetable to a disposition timetable, in [GS07,SS08,SS10a, Sch10], variables for every departure and every arrival are introduced, and the conditions on the disposition timetable are established as linear constraints in the model. In [Sch01, Sch06, Sch07], the update to a disposition timetable is only implicitly modeled by propagating the delays through the network using delay variables and equivalent constraints. In [HGL08], this model is developed further such that variables neither for the disposition timetable nor for the delays are needed anymore.
To calculate the objective value of delay management with penalties, a straightforward approach is to introduce a variable for every route in the routing, which indicates whether all connections on the route are maintained or not. In the former case, the delay at the destination is counted, while in the latter a penalty of T is added to the objective function. A quadratic formulation and a linearization for this approach are proposed in [Sch01, Sch07, Sch06], and in [HGL08] a similar linear model is treated. Various integer programming formulations for delay management with penalties have been developed, analyzed, and compared in [Sch01, Sch07, Sch06, HGL08]. In [Sch06], Schöbel proves upper and lower bounds and network reduction results and develops a branch-and-bound algorithm for delay management with penalties based on this result. Heilporn et al. [HGL08] propose a branch-and-cut procedure and a constraint-generation approach to solve the problem. Furthermore, in [Sch06, Sch07] a nonlinear model with three types of variables based on the activities of the EAN is developed. The first type of variables indicates for every activity how many passengers use it. The second type of variables is introduced only for changing activities and indicates whether a changing activity is maintained or not. Thirdly for every changing activity and every route in the routing which uses the changing activity, a variable indicates whether the changing activity is reached without any anterior missed connection. Then the weighted delay on every maintained activity and the weighted penalty for dropped connections are combined to the objective function. A simplification of this nonlinear program, which fixes the passenger numbers to the values they would take without missed connections, yields a formulation for delay management with constant weights (see [Sch06,Sch07]), which is further used in [SS08,SS10a,Sch10]. Delay management with constant weights in general overestimates the overall delay [Sch06, Sch07]. However, in a setting where every node of the EAN is influenced by at most one source delay (this is called the never-meet property), the simplified model is equivalent to the original one. Delay management with constant weights is solved by a branch-and-bound procedure or, in case that the never-meet property holds, by decomposing the problem into subproblems, in [Sch06].
In [Sch06,GS07,CDPP12] delay management is modeled as a bicriteria problem minimizing simultaneously the sum over the delays and the number of missed connections. Also in these publications, variables based on changing activities are introduced to count the number of missed connections. An algorithm to find all efficient solutions is given.
Dollevoet et al. [DHSS09, DHSS12] propose and solve an integer programming formulation for DMwR. Since integer programming is impractical for large problem instances, in [DH11], Dollevoet and Huisman test various heuristic solution approaches for DMwR.
Delay management including priority decisions is analyzed in [Sch10, SS10a, SS08,Sch09]. Solution approaches include integer programming and variable-fixing heuristics. In [DPP07], a microscopic model for a train rescheduling problem is formulated as a job-shop problem and solved using branch-and-bound. Dollevoet et al. [DCDH12] iterate between delay management and train scheduling to use a delay management problem including capacity constraints on a microscopic level.
Since delays in many cases happen unforeseen, delay management is often regarded as an online problem. A competitive analysis for online delay management on a single line is done in [GJPW07,Gat07,KTZ11]. Different strategies for online delay management have been compared numerically in [Bau10,KS11]. In [BHLS07] it is shown that the considered online delay management problem is PSPACE-hard and a simulation platform to compare different heuristics for online delay management is presented.
When rescheduling trains in case of delays, it is also possible to skip services or to replace them by other train units. This extended rescheduling problem is studied, e.g., in [ADOGT99].
Other approaches to deal with delays in the daily railway operations are to give delay-resistant travel advice to passengers [GKMHC13,GHMHC13] or to construct delay-resistant timetables (see references in Sect. 3.1.2). In particular the concept of recoverable robust timetabling [CDSC09, LLMS09, Sch10] or recoverable robust timetable information [GHMHC13], where the possibility to reroute passengers is explicitly taken into account, is related to the delay management problem.
Anderegg et al. [APW02] consider a problem where buses arrive with an unknown delay at an origin station and the waiting time at this station has to be minimized.
In this section we define delay management with routing (DMwR) in the context of the PTN relying on the definitions and notations from the preceding chapters.
In the remainder of this book we assume external source delays which occur at arrivals and departures of trains.
Definition 4.1.1. Given a PTN PT N D .S; E/ and a set of trains TR, to every departure and every arrival of a train tr 2 TR at a station s 2 S, an (external) source delay d.trs-Dep/ 2 N0 (or d.trs-Arr/ 2 N0, respectively) is assigned.
Note that in realistic instances, for most events the associated source delay is 0. If d.trs-Dep/ > 0 (or d.trs-Arr/ > 0), we say that the departure (or arrival) of train tr at station s is delayed. Otherwise, it is not delayed.
Like in timetabling, we denote the lower bounds on driving, waiting, and changing times by vectors l of nonnegative integers.
Given a PTN PT N D .S; E/, a set of trains TR, lower bounds l on the driving and waiting times, a timetable , and source delays d, a disposition timetable x is a timetable (as defined in Definition 3.1.1) that satisfies
$$x{(\text{tr}-s-\text{Dep})} \ge \pi{(\text{tr}-s-\text{Dep})} + d{(\text{tr}-s-\text{Dep})} \ \forall \ \text{departures of trains tr at stations } s,$$ $x{(\text{tr}-s-\text{Arr})} \ge \pi{(\text{tr}-s-\text{Arr})} + d{(\text{tr}-s-\text{Arr})} \ \forall \ \text{arrivals of trains tr at stations } s.$
and
$$\begin{split} x{(\text{tr}-s-\text{Dep})} - x{(\text{tr}-s'-\text{Arr})} &\geq l{(\text{tr}-s-\text{Dep},\text{tr}-s'-\text{Arr})} \ \forall \text{ driving times of train tr on edge } {s,s'}, \ x{(\text{tr}-s-\text{Arr})} - x{(\text{tr}-s-\text{Dep})} &\geq l{(\text{tr}-s-\text{Arr},\text{tr}-s-\text{Dep})} \ \forall \text{ waiting times of train tr at station } s. \end{split}$$
We say that a connection .tr; tr0 ; s/ 2 C is maintained under disposition timetable x if
$$x{(\text{tr}'-s-\text{Dep})} - x{(\text{tr}-s-\text{Arr})} \ge l_{(\text{tr}-s-\text{Dep},\text{tr}'-s-\text{Arr})}$$
for the lower bound l.trs-Dep;tr0s-Arr/ on connection .tr; tr0 ; s/. Otherwise, .tr; tr0 ; s/ is dropped.
Different to our assumptions in the considered line planning and timetabling problems, in delay management, we assume that passengers are already at the origin station when they are informed about delays. Thus, other than in Definition 2.1.3, in delay management, the OD-pairs include the start times. That is, the passengers' demand is given in form of an origin, a destination, and a start time .u; v;/ -S S Z. For every so-defined OD-pair .u; v;/, the number of passengers or passenger weight wuv is specified.
We restrict the train-routes which a passenger can take to the ones starting not earlier than the passenger's arrival at the origin station.
Definition 4.1.2. Given a timetable , a start-time-train-route (ST-train-route) Puv for an OD-pair .u; v;/ 2 OD is a train-route for .u; v/ as defined in Definition 3.1.2, satisfying .tru-Dep/ for the train tr chosen for the departure at the origin.
Like in the preceding chapters, when the set of OD-pairs is indexed, e.g., OD D f.*u*k; *v*k; k/ W k 2 Kg for an index set K, for the sake of simplicity, we also use the notation wk WD wuk *vkk and Pk WD Pu*k *v*kk .
Due to dropped connections, it is possible that some ST-train-routes are not realizable anymore. An ST-train-route Puv is feasible for a disposition timetable x if the connections from one train to another, defined by Puv , are maintained. We can regard the feasibility from a different perspective, i.e., require the disposition timetable to maintain all connections on a given ST-train-route: A disposition timetable x is feasible for an ST-train-route Puv if the connections from one train to another, defined by Puv , are maintained.
These feasibility decisions are equivalent in the sense that if and only if an ST-train-route Puv is feasible for a disposition timetable x, x is feasible for Puv .
Since we assume that a passenger arrives at a given time at his/her origin station, his/her travel time along an ST-train-route Puv is calculated as the time difference between the start time and the arrival time at the destination, according to the disposition timetable:
$$c(x, P{uv\sigma}) := x{(tr(v,Arr)-v-Arr)} - \sigma,$$
where tr.v; Arr/ is the train chosen for the arrival at station v in Puv . See Lemma 3.1.3 for the different definition in timetabling.
An ST-train-routing R is a set containing exactly one ST-train-route for every OD-pair .u; v;/ 2 OD, i.e., R WD fPuv W .u; v;/ 2 *OD*g. An ST-train-routing R is feasible for a disposition timetable x if every ST-train-route Puv 2 R is feasible for x. A disposition timetable x is feasible for an ST-train-routing R if it is feasible for every ST-train-route Puv 2 R. Again, both feasibility definitions are equivalent in the sense that ST-train-routing R is feasible for disposition timetable x if and only if x is feasible for R.
Also in delay management our objective is to minimize the passengers' overall travel time c.x; R/ WD P P*uv2R wuv* c.x; Puv / over all feasible combinations of disposition timetables x and ST-train-routings R.
We are now ready to define the problem DMwR from [DHSS09,DHSS12].
Definition 4.1.3. An instance .PT N ; TR; C; l; ; OD;d/ of delay management with routing (DMwR) consists of a public transportation network PT N , a set of trains TR with specified lines in the PTN, a set of planned connections C, lower bounds on driving, waiting, and changing times l, a timetable , a set of OD-pairs OD, and source delays d. The task is to find a disposition timetable x and a feasible ST-train-routing R for x that minimize the overall travel time c.x; R/.
Given a connection .tr; tr0 ; s/ 2 C, the question whether .tr; tr0 ; s/ is maintained in the disposition timetable or not is referred to as a wait-depart decision.
In many papers, delay management is regarded from the perspective of the wait-depart decisions which relies on the insight that, given a set of maintained connections, a disposition timetable and an ST-train-routing which are optimal for the chosen set of maintained connections can easily be constructed (see, e.g., [Sch06]). Hence, the task of delay management can be reformulated as the decision about which connections should be maintained and which connections should be dropped. This idea is explained in more detail in Sect. 4.3.
We use EANs for modeling DMwR. The slight modification in the definition of an EAN compared to Sect. 3.2 that is necessary in the definition of an EAN for DMwR is explained in the next section, and DMwR is formulated in terms of the EAN in Definition 4.2.5.
In Sect. 4.3 we investigate how a given disposition timetable, a given set of maintained connections, or a given routing define a solution to DMwR.
Section 4.4 comprises a complexity analysis of DMwR. In Sects. 4.4.1 and 4.4.2 we concentrate on instances of DMwR with a single OD-pair. This problem is shown to be strongly NP-hard in Theorem 4.4.1. However, under some assumptions on the network structure, Algorithm 1 presented in Sect. 4.4.2 solves DMwR to optimality. Section 4.4.2 in addition contains further analysis of Algorithm 1, namely, it is shown that even if the provided solution is not optimal, it yields a lower bound as well as a two-approximation on the optimal objective value.
In Sect. 4.4.3 we investigate whether Algorithm 1 can be extended to find an optimal solution for instances of DMwR in which all OD-pairs have the same origin under the mentioned assumption on the network structure. Then, in Sect. 4.4.4, we show that for general instances of DMwR there can be no approximation algorithm, but that for instances in which the delay is bounded with respect to the travel time an easy approximation can be given.
Finally, in Sect. 4.5 we extend an integer program for delay management with constant weights to deal with DMwR.
EANs as used in Chap. 3 are also used to model delay management problems (see, e.g., [Sch06,Sch07,DHSS09,SS10a,DHSS12]). The construction of these networks from a public transportation network PT N , a set of trains TR, a set of planned connections C, and a set of OD-pairs OD D f.*u*k; *v*k/ W k 2 Kg is explained in detail in Sect. 3.2. Therefore, in this section we limit ourselves to point out the small difference of the EAN used in DMwR to the EAN used in TTwR which is due to the additional information of the start time in the set of OD-pairs OD D f.*u*k; *v*k; k/ W k 2 Kg that we are given in DMwR. To this end, let .PT N ; TR; C; l; ; OD;d/ be an instance of DMwR.
To include the start time we define a mapping org0 which maps an OD-pair .u; v;/ to an *origin node u*org. / WD org0 .u; v;/.
• the set of origin events
$$\mathcal{E}'_{\text{org}} := \text{org}'(\mathcal{OD}) = {u^{\text{org}}(\sigma) : (u, v, \sigma) \in \mathcal{OD}}$$
• and the set of origin activities A0 org - E0 org *E*dep
$$\begin{split} \mathcal{A}{\text{org}}' &:= { (u^{\text{org}}(\sigma), \text{tr}-u-\text{Dep}) : u^{\text{org}}(\sigma) \in \mathcal{E}{\text{org}}', (\text{tr}-u-\text{Dep}) \in \mathcal{E}{\text{dep}}, \ \pi{(\text{tr}-u-\text{Dep})} &\geq \sigma }. \end{split}$$
In other words, compared to Definitions 3.2.2 and 3.2.4, we add the start time to the description of the origin nodes and connect each origin node u org k . / only to departure event .tr u Dep/ at station u if the departure of train tr at station u is scheduled after the OD-pair's start time. Hence, a passenger cannot leave the station earlier than planned. Operational and destination events and activities are defined as in Definitions 3.2.1–3.2.4.
In this chapter the EAN is given by N WD .E; A/ with
$$\mathcal{E} := \mathcal{E}{op} \cup \mathcal{E}'{org} \cup \mathcal{E}{dest} \ \ \text{and} \ \ \mathcal{A} := \mathcal{A}{op} \cup \mathcal{A}'{org} \cup \mathcal{A}{dest}.$$
Note that in models where the a routing or passenger loads are fixed in the input (see, e.g., [Sch06]), the smaller operational EAN *N*op D .*E*op; *A*op/ is used and referred to as "EAN".
We reinterpret the source delays as assignments di 2 N0 to the events i 2 *E*op and transfer the definition of disposition timetables to EANs.
Definition 4.2.2. Given an EAN N D .E; A/ with lower bounds la on the operational activities a 2 *A*op, a timetable , and source delays de on the events e 2 E, a disposition timetable x is a timetable that satisfies
$$x_i \ge \pi_i + d_i \ \forall i \in \mathcal{E} \ \text{and} \ x_j \ge xi + l{ij} \ \forall (i,j) \in \mathcal{A}{\text{drive}} \cup \mathcal{A}{\text{wait}}.$$
In delay management the driving and waiting activities impose operational restrictions on the vehicles, whereas a changing activity does not imply that a train has to wait in case of a delay of another train. In fact, the wait-depart decision can be regarded as the main decision we want to take during the optimization process. Given a timetable , we denote by
$$\mathcal{A}{fix}(x) := { (i, j) \in \mathcal{A}{change} : x_j - xi \ge l{ij} }$$
$$(4.1)$$
the set of maintained changing activities.
Analogously to Sects. 2.2 and 3.2 every ST-train-route in the PTN represents a path in the EAN and vice versa. Hence, for a path Pk WD .u org k .k/; i k 1 ;:::;i k nk ; *v*dest k / in N and a disposition timetable x, we calculate the travel time as
$$c(x, Pk) = x{i_{n_k}^k} - \sigma.$$
A routing in the EAN is a collection R WD fPk W .*u*k; *v*k; k/ 2 *OD*g with Pk being a path from u org k .k/ to *v*dest k in the EAN. For a timetable and a routing R in the EAN, we can interpret the overall travel time as
$$c(x, \mathcal{R}) = \sum_{(u_k, v_k, \sigma_k) \in \mathcal{OD}} w_k c(x, P_k).$$
The feasibility definitions from Sect. 4.1.1 can now be translated to the EAN.
Definition 4.2.3. A routing R is feasible for a disposition timetable x (or, equivalently, a disposition timetable x is feasible for a routing R) if and only if
$$Pk \cap (\mathcal{A}{\text{change}} \setminus \mathcal{A}_{\text{fix}}(x)) = \emptyset \quad \forall P_k \in \mathcal{R}.$$
Hence, a routing is feasible for a disposition timetable x if and only if the corresponding ST-train-routing is feasible for x. (And a disposition timetable x is feasible for a routing if and only if it is feasible for the corresponding ST-trainrouting.)
Let x be a disposition timetable. To illustrate the paths which can be chosen for the OD-pairs and their lengths, we define a network that excludes all dropped changing activities and takes as arc lengths the time distance between the incident events:
Definition 4.2.4. Given an EAN N and a disposition timetable x, we define the routing network N .x/ WD .E; A.x// with
$$A(x) := \mathcal{A}{\text{drive}} \cup \mathcal{A}{\text{wait}} \cup \mathcal{A}{\text{fix}}(x) \cup \mathcal{A}'{\text{org}} \cup \mathcal{A}_{\text{dest}}.$$
The length of .i; j / 2 A.x/ is
$$L_{ij} := \begin{cases} \pi_j - \pii & \text{if } (i, j) \in \mathcal{A}{op} \cap \mathcal{A}(x), \ \pi_j - \sigmak & \text{if } j \in \mathcal{E}{op} \text{ and } i = u_k^{org}(\sigma_k) \text{ for an OD-pair } (u_k, v_k, \sigmak) \in \mathcal{OD}, \ 0 & \text{if } i \in \mathcal{E}{op} \text{ and } j = v_k^{org} \text{ for an OD-pair } (u_k, v_k, \sigma_k) \in \mathcal{OD}. \end{cases}$$
We can now redefine DMwR as stated in Definition 4.1.3.
Definition 4.2.5. An instance I D .N ; l; ; OD;d/ of DMwR consists of an EAN N , lower bounds on the lengths of the operational activities l, a timetable , a set of OD-pairs OD, and a set of source delays d. The task is to find a disposition timetable x and a feasible routing R for x in N .x/ that minimize the overall travel time c.x; R/.
Since they describe the same problem, in the following sections we equivalently use Definitions 4.1.3 and 4.2.5 and the associated definitions and notations for representing DMwR as a problem in the PTN or the EAN.
Note that the objective of DMwR can equivalently be described as the minimization of delays instead of travel times. Since this alternative point of view is useful in some explanations and proofs in the remainder of this chapter, we introduce it formally. To this end, let I D .N ; l; ; OD;d/ be an instance of DMwR. For every .*u*k; *v*k; k/ 2 OD, let Pk denote a path from u org k .k/ to *v*dest k in N with last operational node jk that minimizes SPk WD jk k. (Such a path can easily be found by shortest path calculations in N ./.) We call SPk the nominal travel time for OD-pair .*u*k; *v*k; k/.
The overall delay of a feasible solution .x; R/ to I is
$$c^{d}(x,\mathcal{R}) := \sum{P{k} \in \mathcal{R}} w{k}(c(x,P) - SP{k})$$ (4.2)
and the delay in a node e 2 *E*op is defined as d.x; e/ D xe e.
Naturally, the overall delay can be calculated from the delays in the last arrival nodes of every OD-pair's path.
ut
Lemma 4.2.6. Let .x; R/ be a feasible solution to I with R D fPk W .*u*k; *v*k; k/ 2 *ODg. Denote by* jk the last arrival node on a shortest path from uorg k .k/ to vdest k in N./. Let j 0 k denote the last node on Pk 2 R. Then
$$c^d(x,\mathcal{R}) = \sum_{P_k \in \mathcal{R}} wk (x{jk'} - \pi{j_k}).$$
Proof.
$$c^{d}(x,\mathcal{R}) := \sum_{P_k \in \mathcal{R}} w_k(c(x,P_k) - SPk) = \sum{P_k \in \mathcal{R}} w_k(c(x,P_k) + \sigma_k - (SP_k + \sigmak))$$ $$= \sum{(u_k,v_k,\sigma_k) \in \mathcal{OD}} wk(x{jk'} - \pi{j_k}).$$
Since SPk is constant for every .*u*k; *v*k; k/ 2 OD, the overall delay cd is an alternative objective function for DMwR:
Lemma 4.2.7. Let I be an instance of DMwR and .x; R/ a solution to I . .x; R/ minimizes c if and only if .x; R/ minimizes cd .
In this section we show that solutions to DMwR can be defined in a sensible way by the specification of a disposition timetable x, a set of maintained changing activities *A*fix, or a routing R. Furthermore, we prove some results about the so-defined solutions which we use in the proofs in the following sections and give some more formal prerequisites for the next sections.
First, suppose that a disposition timetable x is given. The set of corresponding maintained changing activities *A*fix.x/ is given as
$$\mathcal{A}{fix}(x) := {(i, j) \in \mathcal{A}{change} : x_j - xi \ge l{ij}}$$
according to (4.1).
We now define the corresponding routings:
Definition 4.3.1. Let I D .N ; l; ; OD;d/ be an instance of DMwR and let x be a disposition timetable for N . If there exists a feasible routing for x, for every ODpair .*u*k; *v*k; k/, we define Puk *v*kk .x/ D *P*k.x/ to be the set of shortest paths Pk.x/ from u org k .k/ to *v*dest k in the routing network N .x/.
• The set of routings corresponding to x is
$$OPT(x) := { \mathcal{R}(x) : \mathcal{R}(x) = { P1(x), \dots, P{|OD|}(x) } \text{ with } P_k(x) \in \mathcal{P}_k(x) }.$$
• The set of solutions corresponding to x is defined as f.x; R.x// W R.x/ 2 OPT.x/g.
Since R.x/ is defined as a shortest-path routing, Lemma 4.3.2 follows directly:
Lemma 4.3.2. Let I D .N ; l; ; OD;d/ be an instance of DMwR, and let x be a disposition timetable for N . If there is a feasible routing for x, for all R.x/ 2 OPT.x/, it holds that
$$c(x, \mathcal{R}(x)) \le c(x, \mathcal{R}')$$
for all routings R0 for OD that are feasible for x.
In order to define a solution corresponding to a given set of maintained changing activities *A*fix, we consider the delay management problem with fixed connections defined in [Sch06]:
Definition 4.3.3 ([Sch06]). An instance .N ; l; ; *A*fix;w;d/ of delay management with fixed connections (DMwFC) consists of an EAN N , lower bounds l on the operational activities, a timetable , a set of maintained changing activities *A*fix, weights w WD fwe 2 N W e 2 *E*opg for the events, and source delays d. The task is to find a disposition timetable x such that all changing activities in *Afix are maintained and P e2E w*e.xe e/ is minimized.
The result from [Sch06], which we cite in Lemma 4.3.5, states that the solution to this problem can be calculated, independently of the weights we for e 2 *E*op, as follows:
Definition 4.3.4. Consider an EAN N with lower bounds la on the operational activities a 2 *A*op, a timetable on N and source delays de on the operational events e 2 *E*op. Given a set of maintained changing activities *A*fix - *A*change, we define the disposition timetable x.*A*fix/ as
$$x(\mathcal{A}_{\mathrm{fix}})_j := \max{\pi_j + dj, \max{i:(i,j) \in \mathcal{A}{\mathrm{drive}} \cup \mathcal{A}{\mathrm{wait}} \cup \mathcal{A}{\mathrm{fix}}} {x(\mathcal{A}{\mathrm{fix}})i + l{ij}}}.$$
This method to generate a new disposition timetable is called critical path method [Sch06].
Note that in general, for a given set of maintained changing activities A0 fix
$$\mathcal{A}{\text{fix}}(x(\mathcal{A}{\text{fix}}')) = {(i,j) \in \mathcal{A}{\text{change}} : x(\mathcal{A}{\text{fix}}')j - x(\mathcal{A}{\text{fix}}')i \geq l{ij}} \supseteq \mathcal{A}_{\text{fix}}'$$
Lemma 4.3.5 ([Sch06]). Let I D .N ; l; ; Afix;w;d/ be an instance of DMwFC. The disposition timetable x.Afix/ is an optimal solution to I .
This implies the following result for DMwR.
Definition 4.3.6. Let I D .N ; l; ; OD;d/ be an instance of DMwR and let *A*fix be a subset of the changing activities.
$${(x(\mathcal{A}{fix}), \mathcal{R}(x(\mathcal{A}{fix})) : \mathcal{R}(x(\mathcal{A}{fix})) \in OPT(x(\mathcal{A}{fix}))}.$$
Lemma 4.3.7. Let I D .N ; l; ; OD;d/ be an instance of DMwR and let Afix be a subset of the changing activities. Then for every R.x.Afix// 2 OPT.x.Afix//
$$c(x(\mathcal{A}{fix}), \mathcal{R}(x(\mathcal{A}{fix}))) \leq c(x', \mathcal{R}')$$
for every disposition timetable x0 for which Afix Afix.x0 / and every routing R0 in N .x0 /.
Proof. Consider e 2 E. Setting weights
$$w_i^e := \begin{cases} 1 & \text{if } i = e \ 0 & \text{otherwise.} \end{cases}$$
Lemma 4.3.5 yields x.*A*fix/e x0 e. It follows that
$$c(x(\mathcal{A}{fix}), \mathcal{R}(x(\mathcal{A}{fix}))) = \sum_{Pk \in \mathcal{R}(x(\mathcal{A}{fix}))} wk c(x(\mathcal{A}{fix}), P_k)$$
$$\leq \sum_{P'_k \in \mathcal{R}'} wk c(x(\mathcal{A}{fix}), P'_k)$$
$$= \sum_{P'_k \in \mathcal{R}'} wk \left(x(\mathcal{A}{fix})_{i_k} - \sigma_k\right)$$
$$\leq \sum_{P'_k \in \mathcal{R}'} wk \left(x'{i_k} - \sigma_k\right)$$
$$= c(x', \mathcal{R}'),$$
where ik denotes the last arrival event on path P0 k. ut
The following two observations on disposition timetables will be used in the following sections.
Lemma 4.3.8. Let N be an EAN with timetable and lower bounds l. Let Afix be a subset of the changing activities. For i0 ; j 0 2 Eop with i0 N.x.Afix// j 0 denote by P.i0 ; j 0 ; Afix/, the set of paths from i0 to j 0 in N .x.Afix//, with P.j 0 ; j 0 ; Afix/ WD f;g. Then
$$x(\mathcal{A}{fix}){j'} = \max{i' \in \mathcal{E}{op}: i' \leq \mathcal{N}(x(\mathcal{A}{fix}))j'} \max{P \in \mathcal{P}(i',j',\mathcal{A}{fix})} \left{ \pi{i'} + d{i'} + \sum{(i,j) \in P} l_{ij} \right}.$$
This follows by induction from Definition 4.3.6.
Corollary 4.3.9. Let N be an EAN with timetable and lower bounds l. Let Afix be a subset of the changing activities. Then for every j 2 Eop
$$x(\mathcal{A}_{fix})_j \leq \pij + \max{i \in \mathcal{E}_{op}} d_i.$$
Other than, e.g., in delay management with penalties or in delay management with constant weights (see, e.g., [Sch06] or other papers referenced in Sect. 4.1.2), in DMwR for every OD-pair a path in the EAN has to be found. Hence, the routing defines a set of maintained changing activities and a timetable:
Definition 4.3.10. Let I D .N ; l; ; OD;d/ be an instance of DMwR and let R be a routing for OD.
• The set of maintained changing activities corresponding to R is
$$\mathcal{A}{fix}(\mathcal{R}) := \bigcup{P_k \in \mathcal{R}} (Pk \cap \mathcal{A}{change}).$$
Corollary 4.3.11. Let I D .N ; l; ; OD;d/ be an instance of DMwR and let R be a routing for OD. Then
$$c(x(\mathcal{R}), \mathcal{R}) \le c(x', \mathcal{R})$$
for every disposition timetable x0 for which Afix.R/ Afix.x0 /. Proof.
$$c(x(\mathcal{R}), \mathcal{R}) = c(x(\mathcal{A}_{fix}(\mathcal{R})), \mathcal{R}) \le c(x', \mathcal{R}),$$
according to Lemma 4.3.7. ut
In this sense, the specification of a disposition timetable, a set of maintained changing activities, or a routing determines a solution to DMwR.
Notation 4.3.12. Let I D .N ; l; ; OD;d/ be an instance of DMwR. In the following we sometimes describe a solution to I stating only
• the disposition timetable x referring to a corresponding full solution .x; R.x// with R.x/ being an arbitrary routing in OPT.x/
As specified in Definition 4.3.6, every set *A*fix - *A*change defines routings R.x.*A*fix// as a collection of shortest paths in N .x/. However, if there is only one OD-pair, for some sets *A*fix, it is possible to define another path which represents the structure of *A*fix in a better way. Since we make use of this concept in the next sections, we define it here.
Lemma 4.3.13. Let N D .E; A/ be an EAN, e1; e2 2 E and Afix - Achange. There is at most one path P from e1 to e2 such that P \ Achange D Afix.
Proof. Note that such a path P exists if and only if *Afix D f.ji ; ki/ W i D 1; : : : ; lg can be sorted in such a way that ji <N* jiC1 and tr.j1/ D tr.e1/, tr.jiC1/ D tr.ki/ and tr.kl/ D tr.e2/ for all i D 1; : : : ; l 1. Since the network is acyclic, this sorting is unique if it exists.
Since in .*E*op; *A*drive [ *A*wait/ the path between two nodes j; k 2 *E*op is unique (if it exists, i.e., if tr.j / D tr.k/), the specification of e1, e2 and the above sorting determine P uniquely. ut
Notation 4.3.14. Let Afix be a set of maintained changing activities and e1; e2 2 E. If there exists a path P from e1 to e2, defined by the equality
$$P \cap A{change} = A{fix}$$
as described in Lemma 4.3.13, we write P Afix e1e2 WD P.
Let .N ; l; ; OD;d/ be an instance of DMwR with N D .E; A/, e1; e2 2 E and *A*fix - *A*change such that P *A*fix e1e2 exists. Let Pe1e2 .*A*fix/ denote a shortest path from e1 to e2 in N .x.*A*fix//. Note that in general
$$P_{e_1e2}^{\mathcal{A}{\text{fix}}} \neq P_{e_1e2}(\mathcal{A}{\text{fix}}).$$
In this section we summarize the results on the computational complexity of DMwR from [DHSS09,DHSS12,Sch13]. First, in Sect. 4.4.1, we see that DMwR is strongly NP-hard, even for the case of only one OD-pair. Then, in Sect. 4.4.2, we develop a polynomial-time algorithm for DMwR for one OD-pair which provides us with a lower bound on the objective value for general DMwR problems. Under the assumption that for the considered OD-pair .u; v;/ there is no path from *u*org. / to *v*dest that enters a train more than once, this algorithm can even be guaranteed to find an optimal solution. Finally, in Sect. 4.4.3, we show that when generalizing our problem to a set of several OD-pairs, it turns out to be strongly NP-hard again, even under the mentioned restriction and if all OD-pairs have the same origin and the same start time.
Theorem 4.4.1. DMwR is strongly NP-hard, even if
We prove this theorem by reduction from the problem Hamiltonian Path, which remains NP-complete when the first and the last node of the path to find are fixed [GJ79]. An instance .G; t1; t2/ of the problem Hamiltonian Path with fixed start and end nodes consists of an undirected graph G and two specified vertices t1 and t2. The question is whether there is a path from t1 to t2 such that every vertex is contained exactly once in this path.
Proof. Consider an instance .G; t1; t2/ of the Hamiltonian Path problem with fixed start and end nodes and let n denote the number of nodes in G.
We construct an instance I D .PT N ; TR; C; l; ; OD;d/ of DMwR in the following way:
The set of trains is TR WD ftr1;:::; trng.
Whenever fi; i0 g 2 G for i; i0 2 f2;:::; n 1g, tri0 stops at station s i . It arrives there at time .j 2/.n 2/4 C .i 2/4 C 7 and departs at time .j 2/.n 2/4 C .i 2/4 C 8.
If fi; ng 2 G, tri stops at station sn-1. Its arrival time at this station is .n 2/.n 3/4 C 5.
We define the lower bounds on the driving and waiting times such that all slack times for driving and waiting are 0, i.e., lij WD j i for all subsequent arrivals and departures i; j .
We define
$$C := { (\mathbf{tr}{1}, \mathbf{tr}{i'}, s^{1}) : {1, i'} \in G }$$
$$\cup \bigcup{j=2}^{n-2} \bigcup{i=2}^{n-1} { (\mathbf{tr}{i}, \mathbf{tr}{i'}, s^{j}_{i}) : {i, i'} \in G }$$
$$\cup { (\mathbf{tr}{i'}, \mathbf{tr}{n}, s^{n-1}) : {i', n} \in G }. \tag{4.3}$$
The lower bounds on the changing times are l.trs-Arr;tr0s-Dep/ WD 2 for all .tr; tr0 ; s/ 2 C. Consequently, there is a slack time of 1 on each connection.
Let N be the EAN for instance I . From now on, we regard I as an instance in the EAN, i.e., I D .N ; l; ; OD;d/.
An example for this construction is given in Fig. 4.1. Figure 4.1a shows an instance of Hamiltonian Path with fixed start node 1 and fixed end node 5. The EAN constructed for the reduction is shown in Fig. 4.1b. The numbers in the nodes indicate the times the corresponding events are scheduled according to .
We show that there is a Hamiltonian path in G with start node 1 and end node n if and only if there is a solution .x; R/ with
i.e., if and only if it is possible for the OD-pair to arrive in sv without a delay.
This, of course, is equivalent to showing that if and only if there is a Hamiltonian path in G from 1 to n, there is a solution .x; R/ with c.x; R/ .n2/4.n3/C9, and hence proves our theorem.
Let $$P$$ be a path in $\mathcal{N}$ from $u^{\text{org}}(\sigma)$ to $v^{\text{dest}}$ and $\mathcal{R} := {P}$ .
Fig. 4.1 Example for the constructed instance of DMwR in the proof of Theorem 4.4.1. (a) Instance of Hamiltonian Path with fixed start node 1 and fixed end node 5. (b) EAN and timetable for the instance of DMwR constructed from (a) in the proof of Theorem 4.4.1
(a) The delay in the first arrival node of P is
$$d(x(\mathcal{R}), (\operatorname{tr}_1 - su - \operatorname{Dep})) = x(\mathcal{R}){(\operatorname{tr}_1 - su - \operatorname{Dep})} - \pi{(\operatorname{tr}_1 - su - \operatorname{Dep})} = d{(\operatorname{tr}_1 - s_u - \operatorname{Dep})}$$ $$= n - 1.$$
(b) Consider .i; j / 2 P n*A*change. Since there are no slack times on driving and waiting activities, we have j D i Clij and it follows from the definitions in Sect. 4.3 that
$$x(\mathcal{R}){j} - \pi{j} = \max{\pi{j}, x(\mathcal{R}){i} + l{ij}} - \pi{j} = \max{0, x(\mathcal{R}){i} - \pi{i}} = x(\mathcal{R}){i} - \pi{i}$$
Thus, given a node i 2 *E*op, we have d.x.R/; j / d.x.R/; i / for all successors j of i on train tr.i /.
(c) Consider .i0 ;j/ 2 P \ *A*change and let i be the direct predecessor of j on tr.j /. Like before we have j D i C lij and furthermore, according to the definitions of the changing times, j D i0 C lij C 1. Hence, due to Definitions 4.3.10 and 4.3.4, it follows that
$$\begin{split} x(\mathcal{R}){j} - \pi{j} &= \max{\pi{j}, x(\mathcal{R}){i} + l{ij}, x(\mathcal{R}){i'} + l{i'j}} - \pi{j} \ &= \max{0, x(\mathcal{R}){i} + l{ij} - \pi{j}, x(\mathcal{R}){i'} + l{i'j} - \pi{j}} \ &= \max{0, x(\mathcal{R}){i} - \pi{i}, x(\mathcal{R}){i'} - \pi{i'} - 1}. \end{split}$$
Using (1b) it follows inductively that
$$x(\mathcal{R})_j - \pi_j$$
$$= \begin{cases} x(\mathcal{R})_i - \pii \ge x(\mathcal{R}){i'} - \pi{i'} & \text{if } \operatorname{tr}(i, j) \text{ was already entered on path } P, \ x(\mathcal{R}){i'} - \pi_{i'} - 1 & \text{otherwise.} \end{cases}$$
(d) Hence, for .i; j / 2 P
$$x(\mathcal{R}){j} - \pi{j}$$
$$= \begin{cases} x(\mathcal{R}){i} - \pi{i} & \text{if } (i, j) \in \mathcal{A}{\text{drive}} \cup \mathcal{A}{\text{wait}}, \ x(\mathcal{R}){i} - \pi{i} - 1 & \text{if } (i, j) \in \mathcal{A}{\text{change}} \text{ and} \ P \cap {k : \text{tr}(k) = \text{tr}(j), k \leq{\mathcal{N}} j, } = \emptyset \ x(\mathcal{R}){k} - \pi{k} \geq x(\mathcal{R}){i} - \pi{i} \text{ for the direct predecessor } k \text{ of } j \text{ on } \text{tr}(j) \ & \text{otherwise}. \end{cases}$$
Thus,
$$d(x(\mathcal{R}), j) = x(\mathcal{R})_j - \pi_j = x(\mathcal{R})_i - \pi_i - 1 = d(x(\mathcal{R}), i) - 1$$
if and only if .i; j / is a changing activity to a train tr and no predecessor of j in tr is contained in P.
It follows that R D fPg is a solution to I if and only if for every tri for i D 2;:::; n, there is exactly one changing activity .e; ei/ 2 P \ *A*change with tr.ei/ D tri .
Suppose that P0 D .1; k2;:::;kn-1; n/ is a Hamiltonian path in G. Similar to Notation 4.3.14, we implicitly define a path P WD PS *u*org. /*v*dest from *u*org. / to *v*dest in N by the sequence S of changing activities contained in P,
$$S = [(\mathsf{tr}1 - s^1 - \mathsf{Arr}, \mathsf{tr}{k_2} - s^1 - \mathsf{Dep})]$$
$$\cup [(\mathsf{tr}_{ki} - s^i{ki} - \mathsf{Arr}, \mathsf{tr}{k{i+1}} - s^i{k_i} - \mathsf{Dep}) : i = 2, \dots, i - 2]$$
$$\cup [(\mathsf{tr}{k{n-1}} - s^{n-1} - \mathsf{Arr}, \mathsf{tr}_n - s^{n-1} - \mathsf{Dep})].$$
That is, the corresponding ST-train-route starts by taking tr1 from su to s1. In s1 the OD-pair transfers to train trk2 and uses this train until station s2 k2 . Then in s2 k2 the OD-pair transfers to train trk3 , in s3 k3 the OD-pair transfers to train trk4 , and so on. Finally, at station sn-1, the OD-pair transfers from trn-1 to trn.
Due to the construction of I , such a path exists and it enters every train exactly once. Hence, R WD fPg is a solution to I with overall delay
$$c^{d}(x(\mathcal{R}),\mathcal{R}) = x(\mathcal{R}){(\mathrm{tr}{n} - s{v} - \mathrm{Arr})} - \pi{(\mathrm{tr}{n} - s{v} - \mathrm{Arr})} = 0.$$
$$c^d(x,\mathcal{R}) = x_{(\operatorname{tr}_n - sv - \operatorname{Arr})} - \pi{(\operatorname{tr}_n - s_v - \operatorname{Arr})} = 0,$$
we can construct a solution to the given instance of Hamiltonian Path with fixed start and end nodes.
Let R D fPg be a routing consisting of a path P from *u*org. / to *v*dest in the constructed instance of DMwR with delay
$$d(x(\mathcal{R}), (\operatorname{tr}_n - sv - \operatorname{Arr})) = x(\mathcal{R}){(\operatorname{tr}_n - sv - \operatorname{Arr})} - \pi{(\operatorname{tr}_n - s_v - \operatorname{Arr})} = 0.$$
Consider the sequence of maintained changing activities
$$S = ((e_1, f_1), (e_2, f_2), \dots, (e_l, fl)) := A{\text{change}} \cap P$$
defined by P. As shown in (1), for every tri ; i D 2;:::; n, S contains exactly one changing activity .ei ; fi/ with tr.fi/ D tri . It follows that l D n 1.
Furthermore, due to (4.3), we observe that
• .e1; f1/ D .tr1 s1 Dep; trk2 s1 Dep/ for a train trk2 with f1; k2g 2 G,
Hence, .1; k2; k3;:::;kn-1; n/ is a Hamiltonian path in G. ut
We have seen in Theorem 4.4.1 that DMwR is strongly NP-hard in general, even if there is only one OD-pair. In this section we present a 2-approximation algorithm for DMwR with one OD-pair, which in addition calculates a lower bound on the objective value. Under some quite realistic assumptions on the network structure, the outcome of the algorithm is even guaranteed to be optimal.
Let I D .N ; l; ; f.u; v;/g;d/ be an instance of DMwR with one OD-pair. For the sake of simplicity, we assume that the passenger weight is wuv WD 1. Then the objective value of a solution .x; R/ can be calculated as c.x; Q R/ WD c.x; P / D xj 0 for the last arrival node j 0 on the path P 2 R. For any instance of DMwR with one OD-pair with higher passenger weights, we can obtain the solution from c.x; Q R/ by multiplication with the passenger weight.
In order to expose the structure of our algorithm, we extend the concept of DMwR with one OD-pair to deal with OD-pairs that are given as pairs of actual nodes in the EAN N , i.e., elements of the type .*u*org. /; i / where *u*org. / is the origin node and i 2 E is an arbitrary successor of *u*org. / in N :
Definition 4.4.2. An instance .N ; l; ; f.*u*org. /; i /g;d/ of extended delay management with routing with one OD-pair (DMwR') consists of an EAN N , lower bounds la on the lengths of the operational activities a 2 *A*op, a timetable , a pair of nodes .*u*org. /; i / where *u*org. / 2 E0 org, i 2 *E*op [ *E*dest, and source delays de on the operational events e 2 *E*op. The task is to find a disposition timetable x and a routing R WD fPg where P is a path from *u*org. / to i in N .x/ that minimize c0 .x; R/ WD xi .
Also in DMwR', a solution .x; R/ is determined by the disposition timetable x, the routing R, or the set of maintained changing activities *A*fix, as explained in Sect. 4.3 and summarized in Notation 4.3.12 for DMwR.
Notation 4.4.3. We sometimes describe a solution .x; R/ to DMwR' stating only x, R, or Afix, where we refer to the corresponding full solutions
.x.Afix/; R.x.Afix/// where
– x.Afix/ is calculated like in Definition 4.3.4, and
– R.x.Afix// WD fP .x.Afix//g, with P .x.Afix// being an arbitrary shortest path from uorg. / to i in N .x.Afix// D .E; A.x.Afix///.
Note that every instance .N ; l; ; f.u; v;/g;d/ of DMwR with one OD-pair can be understood as an instance .N ; l; ; f.*u*org. /; *v*dest/g;d/ of DMwR'; hence, DMwR' indeed is an extension of DMwR with one OD-pair.
Before we detail our algorithm for DMwR with one OD-pair, we show some properties which we need in order to prove correctness of the algorithm. To this end, let N be an EAN with lower bounds l, be a timetable, and d be a vector of source delays.
In Lemma 4.4.4 we observe that the addition of changing activities to a set A1 - *A*change does not influence the time for events i that happen before the added activities take place:
Lemma 4.4.4. Let A1 - A2 - Achange be two subsets of the changing activities. Let i 2 Eop be an event with the following property:
$$x(A_2)_i \leq x(A_2)_j$$ for all $(i, j) \in A_2 \setminus A_1$ .
Then it holds that x.A1/i D x.A2/i .
Similarly to the NLT property in line planning, we can define the no-train-twice (NTT) property which states that there is always a path with minimal arrival time such that the passengers use every train at most once.
Definition 4.4.5. Let N be an EAN. A path P has the NTT property if the following holds: If i; k 2 *E*op \ P with i P k and tr.i / D tr.k/, then tr.j / D tr.i / for all j such that i P j P k.
Lemma 4.4.6. Let e be an event in N . For every set Afix - Achange for which there exists a path from the origin node uorg. / to e in N .x.Afix//, there also exists a path P D .EP ; AP / from uorg. / to e that has the NTT property.
Proof. Assume that P0 is a path from *u*org. / to e in N .x.*A*fix// and let i; j; k be three events on P0 such that tr.k/ D tr.i / ¤ tr.j / and i <P j <P k. We construct a new path P1 in the following way: P1 consists of the same events as P0 between *u*org. / and i. Then P1 continues on tr.i / until k is reached. From k to e, P1 consists of the same events as P0. Note that P1 is a path in N .*A*fix/. Repeating this construction, we obtain a path with the claimed property. ut
The following Notation 4.4.7 and Lemmas 4.4.8 and 4.4.9 simplify the calculations of disposition timetables in some situations.
Notation 4.4.7. Let Q WD x.;/ denote the disposition timetable for an empty set of maintained changing activities calculated as defined in Definition 4.3.4. We set Q uorg. / WD and Q vdest WD .
Lemma 4.4.8 makes use of Q for the calculation of a disposition timetable x.*A*fix/:
Lemma 4.4.8. For a given set of maintained changing activities Afix - Achange, we have
$$x(\mathcal{A}_{fix})_e = \max \left{ \tilde{\pi}e, \max{i:(i,e) \in \mathcal{A}{drive} \cup \mathcal{A}{wait} \cup \mathcal{A}{fix}} { x(\mathcal{A}{fix})i + l{ie} } \right}. \tag{4.4}$$
Proof. According to Definition 4.3.4, we have
$$x(\mathcal{A}_{\text{fix}})_e = \max \left{ \pi_e + de, \max{i:(i,e) \in \mathcal{A}{\text{trive}} \cup \mathcal{A}{\text{trix}} \cup \mathcal{A}{\text{fix}}} {x(\mathcal{A}{\text{fix}})i + l{ie}} \right}.$$
We observe that for every set *A*fix -*A*change and every event e 2 *E*arr [ *E*dep
$$x(\mathcal{A}_{fix})_e \geq \tilde{\pi}_e \geq \pi_e + d_e$$ .
Hence, we can equivalently determine the minimal arrival times in the events e like in (4.4). ut
Lemma 4.4.9. Let P be a path from uorg. / to e in N . Denote AP fix WD Achange \ AP . Then
$$x(\mathcal{A}_{fix}^P)_e \ge \max{\tilde{\pi}e, x(\mathcal{A}{fix}^P)j + l{je}}$$
for the direct predecessor j of e on the path P. If P has the NTT property, we even have equality:
$$x(\mathcal{A}_{fix}^P)_e = \max{\tilde{\pi}e, x(\mathcal{A}{fix}^P)j + l{je}}.$$
Proof.
$$\begin{split} x(\mathcal{A}{\text{fix}}^{P}){e} &= \max \left{ \tilde{\pi}{e}, \max{i:(i,e) \in \mathcal{A}{\text{drive}} \cup \mathcal{A}{\text{wait}} \cup \mathcal{A}{\text{fix}}^{P}} {x(\mathcal{A}{\text{fix}}^{P}){i} + l{ie}} \right} \ &\geq \max{\tilde{\pi}{e}, x(\mathcal{A}{\text{fix}}^{P}){j} + l{je}}. \end{split}$$
This proves the first statement of the lemma. Now suppose that P has the NTT property.
• If .j; e/ 2 *A*drive [ *A*wait, or if .j; e/ 2 AP fix and .j; e/ is the first trip of the train tr.e/, then .j; e/ is the only activity terminating in e in N .AP fix/. Thus
$$\begin{split} x(\mathcal{A}{\text{fix}}^{P}){e} &= \max \left{ \tilde{\pi}{e}, \max{i:(i,e) \in \mathcal{A}{\text{drive}} \cup \mathcal{A}{\text{wait}} \cup \mathcal{A}{\text{fix}}^{P}} { x(\mathcal{A}{\text{fix}}^{P}){i} + l{ie} } \right} \ &= \max { \tilde{\pi}{e}, x(\mathcal{A}{\text{fix}}^{P}){j} + l{je} }. \end{split}$$
• Now let .j; e/ 2 AP fix and .k; e/ 2 *A*wait with tr.k/ D tr.e/. Since there is no i 2 P with i P k and tr.i / D tr.k/, we have x.AP fix/k D Qk and
$$\tilde{\pi}_e \geq \tilde{\pi}k + l{ke} = x(\mathcal{A}_{fix}^P)k + l{ke}.$$
It follows that
$$\begin{split} x(\mathcal{A}_{\text{fix}}^P)_e &= \max \left{ \tilde{\pi}e, \max{i:(i,e) \in \mathcal{A}{\text{drive}} \cup \mathcal{A}{\text{wait}} \cup \mathcal{A}{\text{fix}}^P} { x(\mathcal{A}{\text{fix}}^P)i + l{ie} } \right} \ &= \max { \tilde{\pi}e, x(\mathcal{A}{\text{fix}}^P)j + l{je}, x(\mathcal{A}_{\text{fix}}^P)k + l{ke} } \ &= \max { \tilde{\pi}e, x(\mathcal{A}{\text{fix}}^P)j + l{je} }. \end{split}$$
Based on the preceding Lemmas 4.4.4–4.4.9, we now explain Algorithm 1. The procedure is similar to Dijkstra's label setting algorithm for finding a shortest path in a graph. In every iteration k a best path from the origin event *u*org. / to a node eOk is determined, using the results about best paths to the preceding nodes.
In other words, given an instance I D .N ; l; ; f.u; v;/g;d/ of DMwR with one OD-pair, we iteratively solve instances IeO D .N ; l; ; f.*u*org. /; e/O g;d/ of DMwR' for different OD-pairs .*u*org. /; e/O , thereby constructing the solution to IeO from the solution to IieO for a direct predecessor ieO of eO in N .
To do so, in every iteration k we store a permanent time label T ŒeOk and a set of *maintained changing activities A*fixŒeOk that defines a path P *A*fixŒeOk *u*org. /eOk in the sense of Lemma 4.3.14.
In an iteration k let PERM.k/ be the set of events i for which a solution to DMwR' has been found and the above values T Œi and *A*fixŒi have been determined. For every e … PERM.k/ with a direct predecessor i 2 PERM.k/ we determine the preliminary time label
$$\tilde{T}[e] = \min_{i \in PERM(k): (i,e) \in \mathcal{A}} {{\tilde{\pi}e, T[i] + l{ie}}}.$$
Like in Dijkstra's algorithm we fix the event eO with smallest preliminary time label. In order to update the set of fixed changing activities *A*fixŒeO , we distinguish two cases: Let ieO be the direct predecessor of eO in the solution of DMwR' for OD-pair .*u*org. /; e/O . If aO D .ieO; e/O 2 *A*change, we obtain
ut
Require: Instance I D .N ; l; ; f.u; v;/g;d/ of DMwR.
Ensure: Set *A*fix *A*change and a lower bound lb on the optimal objective value.
$$\mathcal{A}{fix}[\hat{e}] := \mathcal{A}{fix}[i{\hat{e}}] \cup {(i{\hat{e}}, \hat{e})}.$$
Otherwise, we simply set
$$\mathcal{A}{fix}[\hat{e}] := \mathcal{A}{fix}[i_{\hat{e}}].$$
The algorithm is summarized above.
To prove correctness of the described algorithm in Theorem 4.4.19, we need some insights about the stored time labels T Œi and sets of maintained changing activities *A*fixŒi. These are provided in the following.
Let I D .N ; l; ; f.u; v;/g;d/ be an instance of DMwR to which we apply Algorithm 1.
Lemma 4.4.10. Let eO be the node chosen in step 7 of Algorithm 1, let ieO *be its direct predecessor as specified in step 8 and let Afix*ŒeO be defined as in steps 9–12. Then the path P *Afix*ŒeO uorg. /eO as defined in Notation 4.3.14 exists, and ieO is the direct predecessor of eO on P *Afix*ŒeO uorg. /eO .
Proof. If it exists, P *A*fixŒeO *u*org. /eO is uniquely defined by P *A*fixŒeO *u*org. /eO \ *A*change D *A*fix (see Lemma 4.3.13 and Notation 4.3.14). We show the existence of P *A*fixŒeO *u*org. /eO inductively:
ut
• For *u*org. /
$$P{u^{\operatorname{org}}(\sigma)u^{\operatorname{org}}(\sigma)}^{\mathcal{A}{\operatorname{fix}}[u^{\operatorname{org}}(\sigma)]} \cap \mathcal{A}{\operatorname{change}} = \emptyset \cap \mathcal{A}{\operatorname{change}} = \emptyset = \mathcal{A}_{\operatorname{fix}}[u^{\operatorname{org}}(\sigma)].$$
Notation 4.4.11. Let N be an EAN and uorg. / an origin node in N . For the sake of an easier notation in the following for any disposition timetable x, we write xuorg. / WD .
In the next lemma we show that the permanent time labels T Œi are a lower bound on the scheduled time in the events i with respect to disposition timetables that make it possible to reach event i from *u*org. /.
Lemma 4.4.12. Let eO ¤ vdest be an event chosen in step 7 of an iteration k of Algorithm 1. There is no A - Achange such that x.A/eO eO in N .A/.
Proof. This lemma is proven inductively:
• For the origin event *u*org. /, we have
$$T[u^{\operatorname{org}}(\sigma)] = \sigma = x(\emptyset){u^{\operatorname{org}}(\sigma)} = \min{A \subset A{\operatorname{change}}} x(A){u^{\operatorname{org}}(\sigma)}.$$
• Suppose that in the iterations k0 D 1; : : : ; k 1 of the algorithm for all the elements eOk0 added to PERM and all A - *A*change it holds that x.A/eOk0 T ŒeOk0 . It follows that
$$x(A)_e \ge T[e] \ \forall e \in PERM.$$ (4.5)
• Now let eO WD Oek be the event chosen in step 7 of the kth iteration. Suppose that there is a set A -*A*change such that
$$x(A)_{\hat{e}} < T[\hat{e}] \tag{4.6}$$
and there is a path PQ from *u*org. / to eO in N .A/. Due to Lemma 4.4.6, there also is a path P from *u*org. / to eO in N .A/, which has the NTT property.
ut
1. If the direct predecessor e0 of eO in P is in PERM
$$\begin{split} x(A){\hat{e}} &= \max \left{ \tilde{\pi}{\hat{e}}, \max{i:(i,\hat{e}) \in \mathcal{A}{\text{driv}} \cup \mathcal{A}{\text{wal}} \cup \mathcal{A}{\text{fix}}} {x(\mathcal{A}_{\text{fix}})i + l{i\hat{e}}} \right} \text{ [because of Lemma 4.4.8]} \ &\geq \max{\tilde{\pi}{\hat{e}}, x(A){e0} + l{e0\hat{e}}} \ &\geq \max{\tilde{\pi}{\hat{e}}, T[e0] + l{e0\hat{e}}} \ &\geq \min{\min \max {\tilde{\pi}{\hat{e}}, T[i] + l{i\hat{e}}}} \ &= T[\hat{e}]. \end{split} \text{ [because of (4.5)]}$$
which contradicts (4.6).
$$\begin{split} x(A){\hat{e}} &\geq x(A){e2} \ &= \max \left{ \tilde{\pi}{e2}, \max{i:(i,e2) \in A{\text{driv}} \cup A{\text{wait}} \cup A{\text{fix}}} \left{ x(A_{\text{fix}})i + l{ie2} \right} \right} \text{ [because of Lemma 4.4.8]} \ &\geq \max { \tilde{\pi}{e2}, x(A){e1} + l{e_1e2} } \ &\geq \max { \tilde{\pi}{e_2}, T[e1] + l{e_1e2} } \ &\geq \min{m \text{ max}} \max { \tilde{\pi}_{e2}, T[i] + l{ie2} } \ &\geq \min{m \text{ embility}} \max { \tilde{\pi}_{e2}, T[i] + l{ie_2} } \ &= \tilde{T}[e_2] \geq \tilde{T}[\hat{e}] = T[\hat{e}] \end{split}$$
which contradicts (4.6).
We emphasize that in particular, Lemma 4.4.12 holds for the sets *A*fixŒeO constructed in the algorithm:
Corollary 4.4.13. In every iteration of Algorithm 1 for every event e 2 Eop [ E0 org that is contained in PERM it holds that
$$T[\hat{e}] \le x(\mathcal{A}{fix}[\hat{e}]){\hat{e}} \tag{4.7}$$
for the labels T ŒeO *and the sets of changing activities Afix*ŒeO calculated by the algorithm.
Proof. Due to the construction of *A*fixŒeO , the path P *A*fixŒeO *u*org. /eO as defined in Notation 4.3.14 exists. The statement thus follows from Lemma 4.4.12. ut
If the path which is constructed by the algorithm has the NTT property, we can even show equality of the permanent time labels and the disposition timetable:
Lemma 4.4.14. Let eO ¤ vdest be the event chosen in step 7 of iteration k of Algorithm 1. If path P *Afix*ŒeO uorg. /eO as defined in Notation 4.3.14 has the NTT property it holds that
$$T[\hat{e}] = x(\mathcal{A}{fix}[\hat{e}]){\hat{e}}$$
for the labels T ŒeO *and the sets of changing activities Afix*ŒeO calculated by the algorithm.
Proof. We show the lemma inductively.
• For the origin node *u*org. /, we have
$$T[u^{\operatorname{org}}(\sigma)] = \sigma = x(\emptyset){u^{\operatorname{org}}(\sigma)} = x(\mathcal{A}{\operatorname{fix}}(u^{\operatorname{org}}(\sigma)))_{u^{\operatorname{org}}(\sigma)}.$$
$$\begin{split} \tilde{T}[\hat{e}] &= \begin{cases} \tilde{T}^{\text{old}}[\hat{e}] & \text{if } (\hat{e}^{\text{old}}, \hat{e}) \notin \mathcal{A} \ \min{\tilde{T}^{\text{old}}[\hat{e}], \max{\tilde{\pi}{\hat{e}}, T[\hat{e}^{\text{old}}] + l{\hat{e}^{\text{old}}\hat{e}}}} & \text{otherwise} \end{cases} \ &= \min{i \in \text{PERM}: (i, \hat{e}) \in \mathcal{A}} \max{\tilde{\pi}{\hat{e}}, T[i] + l_{i\hat{e}}}. \end{split}$$
Denote P WD P *A*fixŒeO *u*org. /eO and let P0 be the subpath from *u*org. / to the direct predecessor ieO of eO in P. Since there is no node i with i P eO and tr.i / D tr.e/O it follows that
$$x(\mathcal{A}{\text{fix}}[\hat{e}]){j{\hat{e}}} = x\left(\left{P{u^{\text{org}}(\sigma)\hat{e}}^{\mathcal{A}{\text{fix}}[\hat{e}]}\right}{j{\hat{e}}} = \tilde{\pi}{j_{\hat{e}}}$$
$$(4.8)$$
for the direct predecessor jeO of eO on tr.e/O . Since *A*fixŒeO D P *A*fixŒeO *u*org. /eO \ *A*change we have fi W .i; e/O 2 *A*drive [ *A*wait [ *A*fixgDfieO; jeOg. Therefore, and because of (4.8), it follows that
$$\begin{aligned} \max { \tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{change}} \cap P){i{\hat{e}}} + l{i{\hat{e}}\hat{e}} } \ &= \max { \tilde{\pi}{\hat{e}}, \tilde{\pi}{j{\hat{e}}} + l{j{\hat{e}}\hat{e}}, x(\mathcal{A}{\text{change}} \cap P){i{\hat{e}}} + l{j{\hat{e}}\hat{e}} } \ &= \max { \tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{change}} \cap P){j{\hat{e}}} + l{j{\hat{e}}\hat{e}}, x(\mathcal{A}{\text{change}} \cap P){i{\hat{e}}} + l{i{\hat{e}}\hat{e}} } \ &= \max \left{ \tilde{\pi}{\hat{e}}, \max{(i,\hat{e}) \in \mathcal{A}{\text{drive}} \cup \mathcal{A}{\text{wait}} \cup \mathcal{A}{\text{fix}}} { x(\mathcal{A}{\text{change}} \cap P){i} + l_{i\hat{e}} } \right}. \end{aligned}$$ (4.9)
Then
$$\begin{split} T[\hat{e}] &= \min{i \in \text{PERM:}(\hat{l}, \hat{e}) \in \mathcal{A}} \max{\tilde{\pi}{\hat{e}}, T[i] + l{i\hat{e}}} \ &= \max{\tilde{\pi}{\hat{e}}, T[i{\hat{e}}] + l{i\hat{e}}\hat{e}} \ &= \max{\tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{fix}}[i{\hat{e}}]){i{\hat{e}}} + l{i{\hat{e}}}\hat{e}} \ &= \max{\tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{change}} \cap P'){i{\hat{e}}} + l{i{\hat{e}}}\hat{e}} \ &= \max{\tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{change}} \cap P'){i{\hat{e}}} + l{i{\hat{e}}}\hat{e}} \ &= \max{\tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{change}} \cap P){i{\hat{e}}} + l{i{\hat{e}}}\hat{e}} \ &= \max{\tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{change}} \cap P){i{\hat{e}}} + l{i{\hat{e}}}\hat{e}} \ &= \max{\tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{change}} \cap P){i{\hat{e}}} + l{i{\hat{e}}}\hat{e}} \ &= \max{\tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{change}} \cap P){i{\hat{e}}} + l{i{\hat{e}}}\hat{e}} \ &= \max{\tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{change}} \cap P){i{\hat{e}}} + l{i{\hat{e}}}\hat{e}} \ &= \max{\tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{change}} \cap P){i{\hat{e}}} + l{i{\hat{e}}}\hat{e}} \ &= \max{\tilde{\pi}{\hat{e}}, x(\mathcal{A}{\text{change}} \cap P){\hat{e}} + l{i{\hat{e}}}\hat{e}} \ &= x(\mathcal{A}{\text{change}} \cap P){\hat{e}} \ &= x(\mathcal{A}{\text{fix}}[\hat{e}]){\hat{e}}. \end{split}$$ (due to Lemma 4.4.8)
This concludes the proof of the lemma. ut
This implies that every time Algorithm 1 treats a node eO for which the constructed path P *A*fixŒeO *u*org. /eO has the NTT property, T ŒeO is an optimal solution to the corresponding instance of DMwR':
Corollary 4.4.15. Let I 0 D .N ; l; ; f.uorg. /; e/O g;d/ *be an instance of DMwR' and denote by Afix*ŒeO the set of maintained changing activities for node eO 2 Eop calculated in Algorithm 1 for the instance I D .N ; l; ; f.u; v;/g;d/ of DMwR. If the path P *Afix*ŒeO uorg. /eO as defined in Notation 4.3.14 has the NTT property, it follows that .x.*Afix*Œe/; O fP *Afix*ŒeO uorg. /eO g/ is an optimal solution to I 0
Proof. This follows from Lemmas 4.4.12 and 4.4.14. ut
Now we show that the lower bound property of the permanent time labels proven in Lemma 4.4.12 for operational nodes also holds for the destination node *v*dest. For a path P from *u*org. / to *v*dest we abbreviate c0 .P / WD c.x.fPg/; fPg/.
Lemma 4.4.16. Let P denote the set of paths from uorg. / to vdest in N . It holds that
$$T[v^{dest}] \le \min_{P \in \mathcal{P}} c'(P) + \sigma.$$
Proof. Suppose that T Œ*vdest > minP2P* c0 .P /C. Let P 2 argminP2P c0 .P / and A WD P \ *A*change and let e0 be the direct predecessor of *v*dest on P. Then
$$c'(P^*) + \sigma < T[v^{\text{dest}}]. \tag{4.11}$$
1. If e0 2 PERM
$$\begin{split} &c'(P^) + \sigma \ &= \max{\tilde{\pi}_{v^{\text{dest}}}, x(A^)_{e0} + l{e0v^{\text{dest}}}} \ &= \min{i \in \text{PERM}:(i,v^{\text{dest}}) \in \mathcal{A}^} \max{\tilde{\pi}_{v^{\text{dest}}}, x(A^)i + l{iv^{\text{dest}}}} \ &\geq \min{i \in \text{PERM}:(i,v^{\text{dest}}) \in \mathcal{A}^*} \max{\tilde{\pi}{v^{\text{dest}}}, T[i] + l{iv^{\text{dest}}}} \quad \text{[because of Corollary 4.4.13]} \ &= \min{i \in \text{PERM}:(i,v^{\text{dest}}) \in \mathcal{A}^*} \max{\sigma, T[i] + l_{iv^{\text{dest}}}} \ &= T[v^{\text{dest}}]. \end{split}$$
which contradicts (4.11).
$$\begin{split} c'(P^) + \sigma &= x(A^)_{e0} \geq x(A^*){e2} \geq \max{\tilde{\pi}{e_2}, T[e1] + l{e_1e_2}} \ &\geq \tilde{T}[e_2] \geq \tilde{T}[\nu^{\text{dest}}] = T[\nu^{\text{dest}}] \end{split}$$
which contradicts (4.11). ut
If P *A*fixŒ*v*dest *u*org. /*v*dest has the NTT property, similar to Lemma 4.4.14 we obtain equality of the permanent time label and the arrival time in *v*dest:
Lemma 4.4.17. If the path P *Afix*Œvdest uorg. /vdest as defined in Notation 4.3.14 has the NTT property,
$$T[v^{dest}] = c' \left( P{u^{org}(\sigma)v^{dest}}^{A{fix}[v^{dest}]} \right) + \sigma$$
for the label T Œ*vdest and the set Afix*Œvdest defined in the last iteration of Algorithm 1.
Proof. Let e0 be the direct predecessor of *v*dest on P *A*fixŒeO *u*org. /*v*dest and PERM.k/ the set of permanently labeled nodes in Algorithm 1 in the last iteration k.
$$T[v^{\text{dest}}] = T[e0] = x(\mathcal{A}{\text{fix}}[e0]){e0} = c'\left(P{u^{\text{crg}}(\sigma)v^{\text{dest}}}^{\mathcal{A}_{\text{fix}}[e0]}\right) + \sigma = c'\left(P{u^{\text{crg}}(\sigma)v^{\text{dest}}}^{\mathcal{A}_{\text{fix}}[v^{\text{dest}}]}\right) + \sigma.$$
We say that an instance has the NTT property if for every path for an OD-pair which is not too long in N ./ the NTT property holds (see Definition 4.4.5 for the definition of the NTT property for paths):
Definition 4.4.18. Let I D .N ; l; ; OD;d/ with OD D f.*u*k; *v*k; k/ W k 2 Kg be an instance of DMwR. Let PO k be a path from u org k .k/ to *v*dest k in N with last arrival node jO k that minimizes the nominal arrival time SPk D xjO k k.
ut
We say that I has the NTT property, if for every k 2 K every path Pk from u org k .k/ to *v*dest k with last arrival node jPk and
$$\pi{j{Pk}} \le \pi{\hat{j}k} + \max{i \in \mathcal{E}_{op}} d_i$$
has the NTT property.
Given Lemmas 4.4.12–4.4.17, we conclude the main theorem of this section:
Theorem 4.4.19. Let I D .N ; l; ; f.u; v;/g;d/ be an instance of DMwR and let .Afix; lb/ be the output returned by Algorithm 1 for I . Let P Afix uorg. /vdest be defined as in Notation 4.3.14.
$$c(x(A{fix}), {P{u^{org}(\sigma)v^{dest}}^{A_{fix}}}) = lb.$$
The running time of Algorithm 1 is O.n2/ where n D jEj is the number of activities in the EAN N .
Proof.
• It follows from Lemma 4.4.16 that
$$lb = T[v^{dest}] - \sigma \le \min_{P \in \mathcal{P}} c'(x({P}), {P})$$
for the set P of paths from *u*org. / to *v*dest in N . Hence, lb is a lower bound on the optimal objective value of the instance I 0 D .N ; l; ; f.*u*org. /; *v*dest/g;d/ of DMwR'. Therefore, lb is also a lower bound on the objective value of I .
• Like in Definition 4.4.18, let PO denote a path from *u*org. / to *v*dest in N with last arrival node jO that minimizes the nominal arrival time SP D xjO .
For every node j 2 *E*op and every A - *A*change, due to Corollary 4.3.9, it holds that
$$x(A)_j \leq \pij + \max{i \in \mathcal{E}_{op}} d_i.$$
Let j 0 be the last arrival node on P *A*fix *u*org. /*v*dest . Since T Œ*v*dest D maxf; T Œj 0 g, in particular T Œ*v*dest j 0 . Thus, due to Lemma 4.4.16,
$$\pi{j'} \leq T[v^{\text{dest}}] \leq c'(\hat{P}) + \sigma = x(\mathcal{A}{\text{change}} \cap \hat{P}){\hat{j}} \leq \pi{\hat{j}} + \max{i \in \mathcal{E}{\text{op}}} d_i.$$
Hence, since I has the NTT property, P *A*fix *u*org. /*v*dest has the NTT property. Due to Lemma 4.4.17, it follows that
$$T[v^{\text{dest}}] = c' \left( P{u^{\text{org}}(\sigma)v^{\text{dest}}}^{\mathcal{A}{\text{fix}}} \right) + \sigma.$$
According to Lemma 4.4.16, this implies that R WD fP *A*fix *u*org. /*vdestg is an optimal solution to I 0 D .N* ; l; ; f.*u*org. /; *v*dest/g; dg with optimal objective value lb D T Œ*v*dest . Therefore, R is also an optimal solution to I with optimal objective value lb.
The generation of the disposition timetable in step 2 of Algorithm 1 is done in time O.m/ using the method given in Definition 4.3.4. Inspecting steps 4–6, we note that for the setting of the temporary labels TQ, summing up over all iterations, every activity a 2 A has to be considered at most once. As the steps 7–8 are done in time O.n/, steps 7–13 need time O.m/. Since step 15 is also in O.m/, the running time of the modified Dijkstra's algorithm is O.m/. ut
In practice, situations like the one constructed in the NP-hardness proof for DMwR in Theorem 4.4.1, where a lot of trains run on the same physical route and constantly overtake each other, are not very likely to happen. In fact, the NTT property, i.e., the assumption that for an OD-pair there is no reasonably short path where a train is entered more than once, under which Algorithm 1 returns optimal solutions for instances of DMwR with one OD-pair, holds for the real-world instances considered in [DHSS09,DHSS12].
However, we show in Theorem 4.4.21 that, even if optimality is not guaranteed, the solution obtained using Algorithm 1 for DMwR with one OD-pair is a 2 approximation of the optimal objective value. To prove the theorem we need the following lemma.
Lemma 4.4.20. Let I D .N ; l; ; f.u; v;/g;d/ be an instance of DMwR with one OD-pair. Let .Afix; lb/ be the output of Algorithm 1 and denote P WD P Afix uorg. /vdest \ Aop with P Afix uorg. /vdest as defined in Notation 4.3.14. Then
$$lb = \max{i{k'} \in P} \left{ \tilde{\pi}{i{k'}} + \sum{(i,j) \in P: i \ge pi'} l{ij} \right} - \sigma.$$ (4.12)
Proof. We first observe how lb is calculated in Algorithm 1. Let lj 0 be the number of the iteration when for the first time a direct predecessor j 0 of *v*dest enters PERM. Then in step 5 of iteration lj 0 we set T Œ Q *v*dest WD minf1; maxfT Œj 0 ; gg D T Œj 0 . In step 7 of iteration lj 0 C 1 there is no j 2 TEMP with T Œ Q *v*dest < T Œj Q , thus without loss of generality we can assume that T Œ*v*dest D T Œj 0 is set in step 7 of iteration lj 0 C 1. Then lb is set to T Œ*v*dest .
Let
$$P = (1, 2, ..., j')$$
and $P_k := (k, k + 1, ..., j') \subset P$ .
We now show inductively that for every $k = 1, ..., j'$
$$T[v^{\text{dest}}] = \max \left{ T[k] + \sum_{(i,j)\in Pk} l{ij}, \max{k'\in P{k+1}} \left{ \tilde{\pi}{k'} + \sum{(i,j)\in P{k'}} l{ij} \right} \right}.$$ (4.13)
$$\begin{split} & = T[v^{\text{dest}}] \ & = \max \left{ T[\hat{k}] + \sum{(i,j) \in P{\hat{k}}} l{ij}, \max{k' \in P{\hat{k}+1}} \left{ \tilde{\pi}{k'} + \sum{(i,j) \in P{k'}} l{ij} \right} \right} \ & = \max \left{ \max{\tilde{\pi}{\hat{k}}, T[\hat{k}-1] + l{\hat{k}-1\hat{k}}} + \sum{(i,j) \in P{\hat{k}}} l{ij}, \max{k' \in P{\hat{k}+1}} \left{ \tilde{\pi}{k'} + \sum{(i,j) \in P{k'}} l{ij} \right} \right} \ & = \max \left{ \tilde{\pi}{\hat{k}} + \sum{(i,j) \in P{\hat{k}}} l{ij}, T[\hat{k}-1] + \sum{(i,j) \in P{\hat{k}}} l{ij}, \max{k' \in P{\hat{k}+1}} \left{ \tilde{\pi}{k'} + \sum{(i,j) \in P{k'}} l{ij} \right} \right} \ & = \max \left{ T[\hat{k}-1] + \sum{(i,j) \in P{\hat{k}}} l{ij}, \max{k' \in P{\hat{k}}} \left{ \tilde{\pi}{k'} + \sum{(i,j) \in P{k'}} l{ij} \right} \right}. \end{split}$$
Since T Œ1 D maxfT Œ*u*org. /C0; Q 1gD Q1, the statement of the lemma follows. ut
We now show that Algorithm 1 is a 2-approximation algorithm for DMwR with one OD-pair.
Theorem 4.4.21. Let I D .N ; l; ; f.u; v;/g;d/ be an instance of DMwR with one OD-pair and let .x; R/ be an optimal solution to I . Let Afix - Achange denote the set of maintained changing activities returned by Algorithm 1 for I and R.x.Afix// 2 OPT.x.Afix//. Then it holds that
$$\frac{c(x(\mathcal{A}{fix}),\mathcal{R}(x(\mathcal{A}{fix})))}{c(x^,P^)} \leq 2.$$
Proof. We introduce some notation that is used in the proof:
Note that for all i0 2 P0 it holds that i0 . Hence, for all i0 2 P0
$$\sum{(i,j)\in P'{i'}} s{ij} = \pi{j'} - \pi{i'} - \sum{(i,j)\in P'{i'}} l{ij} \le \pi_{j'} - \sigma.$$ (4.14)
Furthermore, with T denoting the permanent time labels used in Algorithm 1
$$lb = T[\nu^{\text{dest}}] - \sigma = T[j'] - \sigma \ge \pi_{j'} - \sigma. \tag{4.15}$$
We can now bound lb from below.
$$\begin{aligned} & = \max{i' \in P'} \left{ \tilde{\pi}{i'} + \sum{(i,j) \in P'{i'}} l{ij} \right} \ & = \max{i' \in P'} \left{ \max_{e: \operatorname{tr}(e) = \operatorname{tr}(i'), \ e \leq N^{i'}} \left{ \pi_e + de + \sum{(i,j) \in P^{\operatorname{tr}(i')}{ei'}} l{ij} \right} + \sum{(i,j) \in P'{i'}} l{ij} \right} \ & = \max{i' \in P'} \left{ \max_{e: \operatorname{tr}(e) = \operatorname{tr}(i'), \ e \leq N^{i'}} \left{ \pi_e + de + \sum{(i,j) \in P^{\operatorname{tr}(i')}{ei'}} l{ij} \right} + \pi{j'} - \pi{i'} - \sum{(i,j) \in P'{i'}} s{ij} \right} \ & \left{ \operatorname{since} \pi{j'} = \pi{i'} + \sum{(i,j) \in P'{i'}} (l{ij} + s{ij}) \right} \ & \geq \max{i' \in P'} \left{ \max_{e: \operatorname{tr}(e) = \operatorname{tr}(i'), \ e \leq N^{i'}} \left{ \pi_e + de + \sum{(i,j) \in P^{\operatorname{tr}(i')}{ei'}} l{ij} \right} + \pi{j'} - \pi{i'} - (\pi{j'} - \sigma) \right} \ & = \max{i' \in P'} \left{ \max_{e: \operatorname{tr}(e) = \operatorname{tr}(i'), \ e \leq N^{i'}} \left{ \pi_e + de + \sum{(i,j) \in P^{\operatorname{tr}(i')}{ei'}} l{ij} \right} - \pi_{i'} + \sigma \right}. \end{aligned}$$
$$[\operatorname{due to} (4.14)]$$
Now x.*A*fix/j 0 can be bounded by 2lb:
$$\begin{split} & \underset{e \in \mathcal{E}{op}: e \leq \mathcal{N}(\mathcal{A}{fix}) j'}{\max} \max{P \in \hat{\mathcal{P}}(e,j',\mathcal{A}{fix})} \left{ \pi_e + de + \sum{(i,j) \in P} l{ij} \right} \ & = \max{i' \in P'} \left{ \max_{e: tr(e) = tr(i')} \left{ \pi_e + de + \sum{(i,j) \in P{eil'}^{tr(i')}} l{ij} \right} + \max{P \in \hat{\mathcal{P}}(i',j',\mathcal{A}{fix})} \left{ \sum{(i,j) \in P} l{ij} \right} \right} \ & = \max{i \in P'} \left{ \max{e: tr(e) = tr(i')} \left{ \pi_e + de + \sum{(i,j) \in P{eil'}^{tr(i')}} l{ij} \right} + \max{P \in \hat{\mathcal{P}}(i',j',\mathcal{A}{fix})} \left{ \sum{(i,j) \in P} l{ij} \right} \right} \ & = \max{i \in P'} \left{ \max{e: tr(e) = tr(i')} \left{ \pi_e + de + \sum{(i,j) \in P{eil'}^{tr(i')}} l{ij} \right} + \max{P \in \hat{\mathcal{P}}(i',j',\mathcal{A}{fix})} \left{ \pi{j'} - \pi{i'} - \sum{(i,j) \in P} s{ij} \right} \right} \ & = \max{i \in P'} \left{ \max{e: tr(e) = tr(i')} \left{ \pi_e + de + \sum{(i,j) \in P{eil'}^{tr(i')}} l{ij} \right} + \pi{j'} - \pi{i'} \right} \ & = \max{i \in P'} \max{e: tr(e) = tr(i')} \left{ \pi_e + de + \sum{(i,j) \in P{eil'}^{tr(i')}} l{ij} \right} + \pi{j'} - \pi{i'} - (\pi{j'} - \sigma) + (\pi{j'} - \sigma) \ & = \left( \max{i \in P'} \sum{e: tr(e) = tr(i')} \left{ \pi_e + de + \sum{(i,j) \in P{eil'}^{tr(i')}} l{ij} \right} - \pi{i'} + \sigma \right} \right} + \underbrace{\left( \pi{j'} - \sigma \right)}{\leq \text{lb}} \ & = \left( \max{i \in P'} \sum_{e: tr(e) = tr(i')} \left{ \pi_e + de + \sum{(i,j) \in P{eil'}^{tr(i')}} l{ij} \right} - \pi{i'} + \sigma \right} \right) + \underbrace{\left( \pi{j'} - \sigma \right)}{\leq \text{lb}} \ & = \left( \max{i \in P'} \sum_{e: tr(e) = tr(i')} \left{ \pi_e + de + \sum{(i,j) \in P{eil'}^{tr(i')}} l{ij} \right} - \pi{i'} + \sigma \right} \right) + \underbrace{\left( \pi{j'} - \sigma \right)}{\leq \text{lb}} \ & = \left( \max{i \in P'} \sum_{e: tr(e) = tr(i')} \left{ \pi_e + de + \sum{(i,j) \in P{eil'}^{tr(i')}} l{ij} \right} - \pi{i'} + \sigma \right} \right) + \underbrace{\left( \pi{j'} - \sigma \right)}{\leq \text{lb}} \ & = \underbrace{\left( \min{i \in P'} \sum_{e: tr(e) = tr(i')} \left{ \pi_e + de + \sum{(i,j) \in P{eil'}^{tr(i')}} l{ij} \right} - \pi{i'} + \sigma \right}}{\leq \text{lb}} \right}$$
Due to Theorem 4.4.19, c.x; P/ lb, hence
$$\frac{c(x(\mathcal{A}{fix}), \mathcal{R}(x(\mathcal{A}{fix})))}{c(x^, P^)} = \frac{x(\mathcal{A}{fix}){j'} - \sigma}{c(x^, P^)} \le \frac{2lb}{lb} = 2.$$
This concludes the proof. ut
2lb C :
Solving DMwR for one OD-pair may be of only theoretical interest since there are many OD-pairs in real-world instances. However, Algorithm 1 can be used to determine a lower bound on the optimal objective value for the general DMwR problem which improves the integer programming formulation for DMwR in Sect. 4.5.
Lemma 4.4.22. Let I D .N ; l; ; OD;d/ be an instance of DMwR with OD D f.*u*k; *v*k; k/ W k 2 Kg *with weights wk. Let* .x; R/ be an optimal solution to I . For every Pk 2 R let jk denote the last arrival node on Pk, and for every .*u*k; *v*k; k/ 2 OD let lbk denote the bound calculated by Algorithm 1 for the instance Ik WD .N ; l; ; f.*u*k; *vk; k/g;d/.*
It holds that
$$1bk \le x{j_k}^* - \sigma$$
for any .*u*k; *v*k; k/ 2 OD. In particular, we have
$$\sum_{(u_k,v_k,\sigma_k)\in\mathcal{OD}} w_k \mathrm{lb}_k \leq c(x^,R^).$$
Moreover, this bound on the objective value can be calculated in O.j*ODjn2/.*
In Sect. 4.4.2 we have seen that for the case of only one OD-pair, instances of DMwR can be solved to optimality in polynomial time by a Dijkstra-type solution algorithm if they have the NTT property. Dijkstra's shortest path algorithm can be generalized to find the shortest paths from an origin to all nodes in the graph. It is hence a natural question, whether such a generalization is also possible for Algorithm 1. Therefore, in this section we consider instances I D .N ; l; ; OD;d/ of DMwR where OD D f.u; *v*k;/ W k 2 Kg, i.e., all OD-pairs have the same origin u and the same start time , which have the NTT property. This generalization of our problem already turns out to be strongly NP-hard.
Proof. This theorem is proven by reduction from the NP-complete decision problem Set Cover (see Definition on p. 88). Let .P; Q; K/ be an instance of Set Cover with P D fp1;:::;pmg and Q D fq1;:::;qng. Note that the structure of Set Cover can be represented by a matrix M D .mij /iD1;:::;m;jD1;:::;n with
$$m_{ij} = \begin{cases} 1 & \text{if } p_i \in q^j \ 0 & \text{otherwise.} \end{cases}$$
We construct an instance I of DMwR in which P corresponds to the OD-pairs and Q corresponds to connections for which we have to decide whether they are maintained or not. We have to cover all OD-pairs (i.e., make sure that all passengers reach their destinations) with a minimal set of maintained connections, since maintaining a connection causes costs (represented as delays) to other passengers. Our construction of an instance of DMwR is the following:
We denote the corresponding EAN by N . Note that in this construction there can be no directed path that enters the same train more than once; hence, I has the NTT property.
In Fig. 4.2 the PTN for an instance of DMwR constructed from an instance of Set Cover with P D fp1; p2g and Q D ffp1g; fp2g; fp1; p2gg is pictured. There are six trains, tr0 represented by the thick line, tr1; tr2, and tr3 starting at station s0 and going from left to right and tr1 and tr2 going top down.
The detailed event-activity network N can be found in Fig. 4.3. Here, the square nodes are the departure and arrival events. The origin and destination events are represented by ovals. The dotted lines are the origin and destination activities, the solid lines represent driving and waiting activities, and changing activities are represented by dashed lines.
In this proof we use the reformulation of the objective function to the minimization of the overall delay instead of the overall travel time. We show that the instance .P; Q; K/ of Set Cover has a solution if and only if there is a set *A*fix such that cd .x.*A*fix/; R.x.*A*fix/// KQ WD m C K for R.x.*A*fix// 2 OPT.x.*A*fix//.
Fig. 4.2 The PTN (indicating the directions of the trains) for the instance of DMwR constructed from an instance of Set Cover with P D fp1; p2g and Q D ffp1g; fp2g; fp1; p2gg
We divide *A*change into three sets:
$$\mathcal{A}_{\text{change}}(s_0) := { (\text{tr}^0 - s_0 - \text{Arr}, \text{tr}^j - s_0 - \text{Dep}) : j = 1, \dots, m },$$
$$\mathcal{A}{\text{change}}(\text{tr}^0) := {(\text{tr}^0 - s{m+1}^j - \text{Arr}, \text{tr}^j - s_{m+1}^j - \text{Dep})},$$
$$\mathcal{A}{\text{change}}(M) := { (\operatorname{tr}^{j} - s{i}^{j} - \operatorname{Arr}, \operatorname{tr}{i} - s{i}^{j} - \operatorname{Dep}) }.$$
• Let Q0 be a solution to .P; Q; K/. We define
$$\mathcal{A}{\text{fix}}(Q') := \mathcal{A}{\text{change}}(M) \cup \mathcal{A}_{\text{change}}(\text{tr}^0) \cup {(\text{tr}^0 - s_0 - \text{Arr}, \text{tr}^j - s_0 - \text{Dep}) : q^j \in Q'}$$
and set x.Q0 / WD x.*A*fix.Q0 //. For .u; vj ; 0/ 2 OD, we choose the following train-route Pj : train tr0 is entered at station su and left at station s j mC1, where trj is entered. Then
$$c^{d}(x(Q'), P^{j}) = \begin{cases} 1 & \text{if } (\operatorname{tr}^{0} - s{0} - \operatorname{Arr}, \operatorname{tr}^{j} - s{0} - \operatorname{Dep}) \in \mathcal{A}_{\operatorname{fix}}(Q'), \ 0 & \text{otherwise.} \end{cases}$$ $$= \begin{cases} 1 & \text{if } q^{j} \in Q', \ 0 & \text{otherwise.} \end{cases}$$
Fig. 4.3 The EAN for the instance of DMwR constructed from an instance of Set Cover with P D f p1; p2g and Q D ff p1g; fp2g; fp1; p2gg
For .u; vi ; 0/ 2 OD, we choose the following train-route Pi : train tr0 is entered at station su and left at s i , where tri is entered. Hence, cd .x.Q0 /; Pi/ D 1. With R.Q0 / WD fPi W i D 1; : : : ; mg[fPj W j D 1; : : : ; ng, it follows that
$$c^{d}(x(Q'), \mathcal{R}(Q')) = \sum_{i=1}^{m} c^{d}(x(Q'), Pi) + \sum{j=1}^{n} c^{d}(x(Q'), P^j) = m + |Q'| \le m + K.$$
• Let x be a timetable for I with OPT.x/ ¤ ; and c.x; R.x// m C K for any R.x/ 2 OPT.x/. We set Q.x/ WD fqj W .tr0s0Arr; trj s0Dep/ 2 *A*fix.x/g. Consider pi 2 P and suppose that there is no qj 2 Q.x/ such that pi 2 qj . Due to the structure of the constructed instance, this implies that there is no path from *u*org.0/ to *v*dest i in N.x/ which is a contradiction to the existence of the solution .x; R/. Hence, for every pi 2 P, there is a qj 2 Q.x/ such that pi 2 qj . Furthermore, like in (4.4.3) we observe that for any path Pj 2 N.x/ from *u*org.0/ to .vj /dest it holds that
$$c^{d}(x, P^{j}) = \begin{cases} 1 \text{ if } (\mathsf{tr}^{0} - s{0} - \mathsf{Arr}, \mathsf{tr}^{j} - s{0} - \mathsf{Dep}) \in \mathcal{A}_{\mathsf{fix}}(x), \ 0 \text{ otherwise.} \end{cases} = \begin{cases} 1 \text{ if } q^{j} \in \mathcal{Q}(x), \ 0 \text{ otherwise.} \end{cases}$$
and that cd .x; Pi/ D 1 for any path Pi 2 N.x/ from *u*org.0/ to *v*dest i . Hence
$$|Q(x)| = |{q^j : (\text{tr}^0 - s_0 - \text{Arr}, \text{tr}^j - s0 - \text{Dep}) \in \mathcal{A}{\text{fix}}(x)}|$$
$$= |{(\text{tr}^0 - s_0 - \text{Arr}, \text{tr}^j - s0 - \text{Dep}) \in \mathcal{A}{\text{fix}}(x)}|$$
$$= \sum_{j=1}^n c^d(x, P^j)$$
$$= \sum{P^j \in \mathcal{R}(x)} c^d(x, P^j) - \sum{i=1}^m c^d(x, P_i)$$
$$\leq m + K - m$$
$$= K.$$
So every instance of Set Cover can be transformed in polynomial time to an instance of DMwR with the claimed properties. ut
To begin with, we remark that if we consider the objective function of minimizing the overall delay, specified in (4.2), unless P D NP, the nonexistence of a polynomial-time approximation algorithm, even for DMwR with only one OD-pair, can directly be concluded from the construction in the proof of Theorem 4.4.1:
Lemma 4.4.24. There is no polynomial-time algorithm with guaranteed approximation ratio for DMwR with objective function cd unless P D NP, even if we consider only instances of DMwR where
Proof. Let A be a polynomial-time algorithm for DMwR. Suppose that there is a function f in the input size such that, for any given instance I of DMwR, A returns a solution .xA; *R*A/ with
$$c^d(x^A, \mathcal{R}^A) \le f(|I|)c^d(x^, \mathcal{R}^),$$
where .x; R/ denotes an optimal solution to I . Given an instance .G; t1; t2/ of Hamiltonian Path, we construct an instance of DMwR as described in the proof of Theorem 4.4.1, apply A to this instance, and obtain a solution .xA; *R*A/. Let .x; R/ be an optimal solution to I . Then as described in the proof of Theorem 4.4.1, we apply A to this instance and obtain a solution .xA; *R*A/. Let .x; R/ be an optimal solution to I . Then
$$c^{d}(x^{A}, \mathcal{R}^{A}) = \begin{cases} 0 & \text{if } c^{d}(x^{}, \mathcal{R}^{}) = 0, \ > 0 & \text{otherwise.} \end{cases}$$
Due to steps (2) and (3) of the proof of Theorem 4.4.1, this implies
$$c^{d}(x^{A}, \mathcal{R}^{A}) = \begin{cases} 0 & \text{if there is a Hamiltonian path in } (G, t{1}, t{2}), \ > 0 & \text{otherwise.} \end{cases}$$
Hence, the algorithm decides the Hamiltonian Path problem. ut
On the other hand, when choosing the overall travel time to be our objective, we have seen in Lemma 4.4.21 that for one OD-pair Algorithm 1 is a 2-approximation algorithm. Unfortunately, unless P D NP, this result cannot be extended to instances with more OD-pairs:
Theorem 4.4.25. Unless P D NP, there is no polynomial-time constant-factor approximation algorithm for DMwR with objective function c, even if we consider only instances of DMwR where
Proof. Let A be a polynomial-time algorithm for DMwR and for an instance I let .xA; *R*A/ be the solution returned by A and let .x; R/ be an optimal solution. Suppose that there is a constant C 1 such that
$$\frac{c(x^A, \mathcal{R}^A)}{c(x^, \mathcal{R}^)} \le C$$
for all instances of DMwR which fulfill the conditions specified in Theorem 4.4.25.
We show that the existence of such a constant C would lead to a polynomial-time algorithm for the Hamiltonian Path problem. To this end, we modify the network constructed from an instance of Hamiltonian Path with fixed start and end nodes in the proof of Theorem 4.4.1 by adding a station, a train, and an OD-pair and modifying the initial delay and the timetable. Like in the proof of Theorem 4.4.1 and Lemma 4.4.24, in the instance of DMwR we construct here, it will turn out that there is a routing that does not yield any delay if and only if there is a Hamiltonian path from the start node to the end node in the given instance.
Let .G; t1; t2/ be an instance of Hamiltonian Path with fixed start and end nodes, and let n 3 denote the number of nodes in G. We construct an instance I D .PT N ; TR; C; l; ; OD;d/ of DMwR as follows:
$$S := {s_u, s_v, s^1, s^{n-1}} \cup {s_i : i = 2, \dots, n-1}$$ $$\cup {s_i^j : i = 2, \dots, n-1, j = 2, \dots, n-2} \cup {s'}.$$
The set of trains is TR WD ftr1;:::; trng[ftr0 g.
We define the lower bounds on the driving and waiting times such that all corresponding slack times are 0, i.e., lij WD j i for all subsequent arrivals and departures i; j .
We define
$$\begin{split} \mathcal{C} := & { (\operatorname{tr}1, \operatorname{tr}{i'}, s^1) : {1, i'} \in G } \ & \cup \bigcup{j=2}^{n-2} \bigcup{i=2}^{n-1} { (\operatorname{tr}i, \operatorname{tr}{i'}, s^ji) : {i, i'} \in G } \ & \cup { (\operatorname{tr}{i'}, \operatorname{tr}_n, s^{n-1}) : {i', n} \in G } \ & \cup { (\operatorname{tr}', \operatorname{tr}_n, s^{n-1}) }. \end{split}$$
The lower bounds on the changing times are l.trs-Arr;tr0s-Dep/ WD 2 for all .tr; tr0 ; s/ 2 C. Consequently, there is a slack time of dQ on each connection.
$$-(u,v,\sigma) := (s_u, sv, 0) \text{ with } w{uv\sigma} := 1, \text{ and }$$
$$-(\tilde{u}, v, \tilde{\sigma}) := (s', s{v'}, (n-2)(n-3)(\tilde{d}+3) + (2\tilde{d}+4)) \text{ with } w{\tilde{u}v\tilde{\sigma}} := \tilde{d}.$$
Let N be the EAN for instance I . From now on, we regard I as an instance in the EAN, i.e., I D .N ; l; ; OD;d/.
An example for this construction is given in Fig. 4.4. Figure 4.4a shows an instance of Hamiltonian Path with fixed start node 1 and fixed end node 5. The EAN constructed for the reduction is shown in Fig. 4.4b. The numbers in the nodes indicate the times the corresponding events are scheduled according to .
Note that if we remove station s0 , train tr0 , and OD-pair .*u*Q; v; /Q and set dQ D 1, we obtain the EAN constructed in the proof of Theorem 4.4.1.
Analogously to step (1) of the proof of Theorem 4.4.1, we see that for a solution .x; R/ with P WD Puv 2 R,
$$x(\mathcal{R}){j} - \pi{j}$$
$$= \begin{cases} x(\mathcal{R}){i} - \pi{i} & \text{if } (i, j) \in \mathcal{A}{\text{drive}} \cup \mathcal{A}{\text{wait}}, \ x(\mathcal{R}){i} - \pi{i} - \tilde{d} & \text{if } (i, j) \in \mathcal{A}{\text{change}} \text{ and} \ P' \cap {k : \text{tr}(k) = \text{tr}(j), k \leq{\mathcal{N}} j, } = \emptyset \ x(\mathcal{R}){k} - \pi{k} \geq x(\mathcal{R}'){i} - \pi{i} \text{ for the direct predecessor } k \text{ of } j \text{ on tr}(j) \ & \text{otherwise.} \end{cases}$$
Fig. 4.4 Example for the constructed instance of DMwR in the proof of Theorem 4.4.25. (a) Instance of Hamiltonian Path with fixed start node 1 and fixed end node 5. (b) EAN and timetable for the instance of DMwR constructed from (a) in the proof of Theorem 4.4.25
• That means whenever the path P enters a train that has not been entered before on activity .i; j / 2 *A*change, the delay in j is reduced by dQ compared to the delay in i and there is no other possibility to reduce the delay.
• Thus, if the path P enters every train tr1;:::; trn exactly once,
$$d(x(\mathcal{R}),(\operatorname{tr}_n-sv-\operatorname{Arr}))=x(\mathcal{R}){(\operatorname{tr}_n-sv-\operatorname{Arr})}-\pi{(\operatorname{tr}_n-s_v-\operatorname{Arr})}=0,$$
otherwise,
$$d(x(\mathcal{R}), (\operatorname{tr}_n - sv - \operatorname{Arr})) = x(\mathcal{R}){(\operatorname{tr}_n - sv - \operatorname{Arr})} - \pi{(\operatorname{tr}_n - s_v - \operatorname{Arr})} \ge q\tilde{d}$$ with $q \in \mathbb{N}$ .
Since .trn sv Arr/ is the last arrival node for both OD-pairs, we conclude analogously to steps (1)–(3) of the proof of Theorem 4.4.1 that there is a solution to the given instance of Hamiltonian Path with fixed start and end nodes if and only if there is a solution .x; R/ to the constructed instance of DMwR with cd .x; R/ D 0, or, in terms of the travel time,
$$c(x, \mathcal{R}) = (n-2)(n-3)(\tilde{d}+3) + (2\tilde{d}+7) + 3w_{\tilde{u}v\tilde{\sigma}}.$$
On the other hand, for every solution .x0 ; R0 / with cd .x0 ; R0 />0 and P0 WD Puv 2 R0 , we see that cd .x0 ; R0 / .wuvQ Q C 1/dQ. Hence, in terms of the travel time
$$c(x', \mathcal{R}') \ge (n-2)(n-3)(\tilde{d}+3) + (2\tilde{d}+7) + 3w{\tilde{u}v\tilde{\sigma}} + (w{\tilde{u}v\tilde{\sigma}}+1)\tilde{d}.$$ (4.16)
Suppose that there exists a Hamiltonian path from 1 to n in the given instance. In this case for an optimal solution .x; R/ of the constructed instance I
$$c(x^, \mathcal{R}^) = (n-2)(n-3)(\tilde{d}+3) + (2\tilde{d}+7) + 3w_{\tilde{u}v\tilde{\sigma}}$$
= $((n-2)(n-3) + 2)\tilde{d} + 3((n-2)(n-3) + 2) + 3w_{\tilde{u}v\tilde{\sigma}} + 1.$
Then algorithm A has to find an optimal solution to I , because if .xA; *R*A/ is not optimal,
$$c(x^{A}, \mathcal{R}^{A}) \ge (n-2)(n-3)(\tilde{d}+3) + (2\tilde{d}+7) + 3w{\tilde{u}v\tilde{o}} + (w{\tilde{u}v\tilde{o}}+1)\tilde{d}$$
due to (4.16), and using wuvQ Q D dQ D 3C..n 2/.n 3/ C 2/ C 1, we obtain
$$\frac{c(x^{A}, \mathcal{R}^{A})}{c(x^{}, \mathcal{R}^{})}$$
$$\geq \frac{(n-2)(n-3)(\tilde{d}+3) + (2\tilde{d}+7) + 3w{\tilde{u}v\tilde{\sigma}} + (w{\tilde{u}v\tilde{\sigma}}+1)\tilde{d}}{(n-2)(n-3)(\tilde{d}+3) + (2\tilde{d}+7) + 3w_{\tilde{u}v\tilde{\sigma}}}$$
$$= 1 + \frac{(w{\tilde{u}v\tilde{\sigma}}+1)\tilde{d}}{(n-2)(n-3)(\tilde{d}+3) + (2\tilde{d}+7) + 3w{\tilde{u}v\tilde{\sigma}}}$$
$$= 1 + \frac{(3C((n-2)(n-3)+2)+2)\tilde{d}}{(n-2)(n-3)(\tilde{d}+3)+(2\tilde{d}+7)+3w_{\tilde{u}v\tilde{\sigma}}}$$
$$= 1 + \frac{3C((n-2)(n-3)+2)\tilde{d}+2\tilde{d}}{(n-2)(n-3)\tilde{d}+5\tilde{d}+3(n-2)(n-3)+7}$$
$$= 1 + \frac{3C((n-2)(n-3))\tilde{d}+6C\tilde{d}+6C((n-2)(n-3)+2)+2}{(n-2)(n-3)\tilde{d}+5\tilde{d}+3(n-2)(n-3)+7}$$
$$= 1 + \frac{3C((n-2)(n-3))\tilde{d}+6C\tilde{d}+6C(n-2)(n-3)+7}{(n-2)(n-3)\tilde{d}+5\tilde{d}+3(n-2)(n-3)+7}$$
$$\geq 1 + \frac{C((n-2)(n-3))\tilde{d}+5C\tilde{d}+3C(n-2)(n-3)+7C}{(n-2)(n-3)\tilde{d}+5\tilde{d}+3(n-2)(n-3)+7}$$
$$= 1 + C > C$$
Hence, if (and only if) there is a Hamiltonian path from t1 to t2 in G, algorithm A returns a solution .x; R/ with delay cd .x; R/ D 0. Thus, A solves the Hamiltonian Path problem, which would imply that P D NP. ut
However, if the delay is bounded with regard to the nominal travel time of the OD-pairs, an easy approximation algorithm is to maintain all connections. This approach is known in the literature under the name of all-wait strategy (see, e.g., [Bau10]).
Lemma 4.4.26. Let I D .N ; l; ; OD;d/ be an instance of DMwR. For every .*u*k; *v*k; k/ 2 OD denote by PO k, a path from uorg k .k/ to vdest k with last arrival node jO k that minimizes the nominal travel time SPk D jO k k. Set M WD maxi2Eop di min.uk ;vk ;k /2OD.jO k k /. Then
$$\frac{c(x(\mathcal{A}{change}), \mathcal{R}(x(\mathcal{A}{change})))}{c(x^, \mathcal{R}^)} \le M + 1,$$
for an optimal solution .x; R/ to I .
Proof. Denote RO WD fPO k W .*u*k; *v*k; k/ 2 *OD*g. Since RO is feasible for x.*A*change/,
$$c(x(\mathcal{A}{change}), \mathcal{R}(x(\mathcal{A}{change}))) \le c(x(\mathcal{A}_{change}), \hat{R}).$$
Due to Corollary 4.3.9
$$c(x(\mathcal{A}{\mathrm{change}}), \hat{R}) \leq \sum{(u_k, v_k, \sigma_k) \in \mathcal{OD}} wk(\pi{\hat{j}k} + \max{i \in \mathcal{E}_{\mathrm{op}}} d_i - \sigma_k).$$
ut
Hence, since $$c(x^, \mathcal{R}^) \ge \sum_{(u_k, v_k, \sigma_k) \in \mathcal{OD}} wk(\pi{\hat{j}_k} - \sigma_k)$$ ,
$$\frac{c(x(\mathcal{A}{change}), \mathcal{R}(x(\mathcal{A}{change})))}{c(x^, \mathcal{R}^)} \ \leq \frac{c(x(\mathcal{A}{change}), \hat{R})}{c(x^, \mathcal{R}^)} \ \leq \frac{\sum{(u_k, v_k, \sigma_k) \in \mathcal{OD}} wk(\pi{\hat{j}k} + \max{i \in \mathcal{E}_{op}} d_i - \sigmak)}{\sum{(u_k, v_k, \sigma_k) \in \mathcal{OD}} wk(\pi{\hat{j}_k} - \sigmak)} \ \leq \frac{\sum{(u_k, v_k, \sigma_k) \in \mathcal{OD}} wk(\pi{\hat{j}_k} - \sigmak + M \cdot \min{(u{k'}, v{k'}, \sigma{k'}) \in \mathcal{OD}} {\pi{\hat{j}{k'}} - \sigma{k'}})}{\sum_{(u_k, v_k, \sigma_k) \in \mathcal{OD}} wk(\pi{\hat{j}_k} - \sigmak)} \ \leq \frac{\sum{(u_k, v_k, \sigma_k) \in \mathcal{OD}} wk(M + 1)(\pi{\hat{j}_k} - \sigmak)}{\sum{(u_k, v_k, \sigma_k) \in \mathcal{OD}} wk(\pi{\hat{j}_k} - \sigmak)} \ \leq \frac{(M + 1) \sum{(u_k, v_k, \sigma_k) \in \mathcal{OD}} wk(\pi{\hat{j}_k} - \sigmak)}{\sum{(u_k, v_k, \sigma_k) \in \mathcal{OD}} wk(\pi{\hat{j}_k} - \sigma_k)} \ = M + 1.$$
In this section we present an integer programming formulation for DMwR from [DHSS09, DHSS12]. The model is based on an IP formulation for delay management with constant weights introduced in [Sch06].
Like for cLPwR and for the first IP formulation for TTwR, we use a passenger flow-based formulation for modeling DMwR in an IP.
Let I D .N ; l; ; OD;d/ be an instance of DMwR. The first type of variables decides whether a changing activity is maintained or not. That is, for every changing activity a 2 *A*change, there is a binary variable *z*a, which is defined as
$$z_a = \begin{cases} 1 & \text{if } a \text{ is maintained,} \ 0 & \text{otherwise.} \end{cases}$$
The task of the next set of variables is the calculation of the disposition timetable. For every event e 2 *E*op, we define the variable xe as
xe WD time that event e takes place in the disposition timetable.
These variables suffice to model delay management with constant weights (see, e.g., [Sch06]).
However, since in DMwR the routing is not part of the input but of the solution that has to be found, we need additional variables to model the passenger flows:
$$q_a^k = \begin{cases} 1 & \text{if activity } a \text{ is used by OD-pair } (u_k, v_k, \sigma_k) \ 0 & \text{otherwise.} \end{cases}$$
Furthermore, for every OD-pair .*u*k; *v*k; k/ 2 OD, we introduce variables
$$t^k := \text{ arrival time of OD-pair } (u_k, v_k, \sigma_k).$$
We obtain the following IP:
$$\min \sum_{(u_k, v_k, \sigma_k) \in \mathcal{OD}} w_k(t^k - \sigma_k) \tag{4.17}$$
s.t. $$x_e \ge \pi_e + de$$ $\forall e \in \mathcal{E}{op}$ , (4.18)
$$xe \ge x{e'} + la$$ $\forall a = (e', e) \in \mathcal{A}{drive} \cup \mathcal{A}_{wait},$ (4.19)
$$xe \ge x{e'} + l_a - M_1(1 - za) \quad \forall a = (e', e) \in \mathcal{A}{\text{change}},$$ (4.20)
$$\sum_{a \in \delta^{-}(u_k^{\text{org}}(\sigma_k))} q_a^k = 1 \qquad \forall u_k^{\text{org}}(\sigmak) \in \mathcal{E}'{\text{org}}, \tag{4.21}$$
$$\sum_{a \in \delta^{-}(e)} qa^k = \sum{a \in \delta^{+}(e)} q_a^k \qquad \forall (u_k, v_k, \sigmak) \in \mathcal{OD}, e \in \mathcal{E}{op}, \tag{4.22}$$
$$\sum{a \in \delta^{+}(v{k}^{\text{dest}})} q{a}^{k} = 1 \qquad \forall v{k}^{\text{dest}} \in \mathcal{E}_{\text{dest}}, \tag{4.23}$$
$$q_a^k \le z_a$$ $\forall (u_k, v_k, \sigmak) \in \mathcal{OD}, a \in \mathcal{A}{\text{change}},$ (4.24)
$$t^{k} \ge x{e} - M{2}^{k} (1 - q{a}^{k}) \qquad \forall v{k}^{\text{dest}} \in \mathcal{E}{\text{dest}}, a = (e, v{k}^{\text{dest}}) \in \delta^{+}(v_{k}^{\text{dest}}),$$
$$\tag{4.25}$$
$$za \in {0, 1}$$ $\forall a \in \mathcal{A}{\text{change}},$ (4.26)
$$q_a^k \in {0, 1}$$ $\forall (u_k, v_k, \sigma_k) \in \mathcal{OD}, a \in \mathcal{A},$ (4.27)
$$xe \in \mathbb{N}$$ $\forall e \in \mathcal{E}{op},$ (4.28)
$$t^k \in \mathbb{N}$$ $\forall (u_k, v_k, \sigma_k) \in \mathcal{OD}.$ (4.29)
Before proving correctness of the IP formulation (4.17)–(4.29) in Lemmas 4.5.1 and 4.5.2, we explain informally the intention of the constraints: The objective function (4.17) minimizes the overall arrival time of all passengers. Constraints (4.18) imply that events cannot take place earlier than in the original timetable and that source delays are taken into account. To make sure that delays are propagated through the network correctly, constraints (4.19) transfer the delay from the start of activity a to its end. For maintained changing activities, that is changing activities for which za D 1, constraints (4.20) transfer delays from the feeder train to the connecting train. The value of M1 should be chosen large enough for these constraints to be correct. In [Sch06] it has been shown that M1 D maxe2E de is large enough. Constraints (4.18)–(4.20) are also used for modeling delay management with constant weights.
The flow constraints (4.21)–(4.23) ensure that every OD-pair leaves its origin, travels until its destination, and stops traveling there. Constraint (4.24) ensures that only maintained changing activities are used for traveling. Finally, constraint (4.25) defines the arrival time for OD-pair .*u*k; *v*k; k/ where Mk 2 is a large number.
For .*u*k; *v*k; k/ 2 OD, denote by Ek arr WD fe 2 *E*arr W .e; *v*dest k / 2 *A*destg the set of arrival events at station vk like in Definition 3.6.1.
Lemma 4.5.1. Let I D .N ; l; ; OD;d/ be an instance of DMwR. Then for any M1 2 N0 and fMk 2 W .*u*k; *v*k; k/ 2 *OD*g - NjODj 0 , it holds that a feasible solution .z; x; q;t/ to the IP (4.17)–(4.29) defines a feasible solution .x0 ; R0 / to instance I of DMwR and
$$c(x', \mathcal{R}') \leq \sum_{(u_k, v_k, \sigma_k) \in \mathcal{OD}} w_k(t^k - \sigma_k).$$
Proof. Let I D .N ; l; ; OD;d/ be an instance of DMwR. We consider the corresponding IP formulation (4.17)–(4.29). Let .z; x; q;t/ be feasible for the IP (4.17)–(4.29), i.e., .z; x; q;t/ fulfills constraints (4.18)–(4.29). We set x0 e WD xe 8e 2 *E*op. Then x0 defines a disposition timetable due to (4.18) and (4.19). Because of (4.20), za D 0 for all a 2 *A*change n *A*fix.x0 /. Hence,
$$qa^k = 0 \quad \forall a \in \mathcal{A}{\text{change}} \setminus \mathcal{A}_{\text{fix}}(x')$$ (4.30)
due to (4.24). For every .*u*k; *v*k; k/ 2 OD, the set of variables fqk a W a 2 *A*g defines a path Pk from u org k .k/ to *v*dest k in N due to (4.21)–(4.23). Due to (4.30), for every k Pk is a path in N .x0 / and hence feasible for x0 . Thus, .x0 ; fPk W .*u*k; *v*k; k/ 2 *OD*g/ is a feasible solution to I . Furthermore, from (4.25) it follows that for every .*u*k; *v*k; k/ 2 OD we have t k xek D x0 ek for the last arrival node ek on Pk and we have
$$\begin{split} c(x', \mathcal{R}') &= \sum_{(u_k, v_k, \sigma_k) \in \mathcal{OD}} w_k c(x', Pk) \ &= \sum{(u_k, v_k, \sigma_k) \in \mathcal{OD}} wk (x'{e_k} - \sigmak) \ &\leq \sum{(u_k, v_k, \sigma_k) \in \mathcal{OD}} w_k (t^k - \sigma_k). \end{split}$$
Lemma 4.5.2. Let I D .N ; l; ; OD;d/ be an instance of DMwR and let the numbers M1 and Mk 2 for every .*u*k; *v*k; k/ be chosen in such a way that
$$M1 \ge \max{e \in \mathcal{E}_{op}} d_e \quad and \quad M2^k \ge \max{e \in \mathcal{E}_{op}} de + \max{(i,j) \in \mathcal{E}{arr}^k \times \mathcal{E}{arr}^k} (\pi_j - \pi_i).$$
Then a solution .x0 ; R0 /, defined by an optimal solution .z; x; q;t/ to the IP (4.17)– (4.29) is an optimal solution to DMwR for instance I , and
$$c(x', \mathcal{R}') = \sum_{(u_k, v_k, \sigma_k) \in \mathcal{OD}} w_k(t^k - \sigma_k).$$
Proof. Let I D .N ; l; ; OD;d/ be an instance of DMwR. We consider the corresponding IP formulation (4.17)–(4.29).
$$\begin{split} x_e &:= xe' & \forall e \in \mathcal{E}{\text{op}}, \ q_a^k &:= \begin{cases} 1 & \text{if } a \in P_k, \ 0 & \text{otherwise} \end{cases} & \forall a \in \mathcal{A}, (u_k, v_k, \sigma_k) \in \mathcal{OD}, \ za &:= \begin{cases} 1 & \text{if } a \in \mathcal{A}{\text{fix}}(x'), \ 0 & \text{otherwise}, \end{cases} & \forall a \in \mathcal{A}_{\text{change}}, \ t^k &:= c(x', P_k) + \sigma_k & \forall (u_k, v_k, \sigma_k) \in \mathcal{OD}. \end{split}$$
We show that constraints (4.18)–(4.29) are fulfilled for .x; q;z;t/: Constraints (4.18) and (4.19) hold because x0 is a disposition timetable. For a 2 *A*fix.x0 /, (4.20) holds due to the definition of *A*fix (4.1). For a D .e0 ; e/ 2 *A*change n *A*fix.x0 /, it follows from Corollary 4.3.9 that
$$x_e \ge \pie \ge \pi{e'} + la \ge x{e'} + la - \max{i \in \mathcal{E}_{op}} de \ge x{e'} + l_a - M_1(1 - z_a).$$
Constraints (4.21)–(4.23) and (4.24) are fulfilled due to the definition of q and z. For every k, for the last arrival node ek on Pk, (4.25) is trivially fulfilled. For e 2 Ek arr n fekg, using Corollary 4.3.9, we obtain
$$t^{k} = x{e{k}} \ge \pi{e{k}} = \pi{e} - (\pi{e} - \pi{e{k}}) \ge x{e} - \max{i \in \mathcal{E}{op}} d{i} - (\pi{e} - \pi{e_{k}})$$
$$\ge x{e} - M{2}^{k} = x{e} - M{2}^{k} (1 - q{e{V_{k}^{\text{dest}}}}^{k}).$$
Furthermore, the definition of t k implies that
ut
$$\sum_{(u_k,v_k,\sigma_k)\in\mathcal{OD}} w_k(t^k - \sigma_k) = c(x',\mathcal{R}').$$
$$c(x', \mathcal{R}') \leq \sum_{(u_k, v_k, \sigma_k) \in \mathcal{OD}} w_k(t^k - \sigma_k).$$
Suppose that for an optimal solution .x; R/ to DMwR it holds that c.x; R/ < P .uk ;vk ;k /2*OD w*k.t k k/. Then according to (4.5.2), there is a corresponding feasible solution .z; x; q; t/ to (4.17)–(4.29) with
$$\sum_{(u_k, v_k, \sigma_k) \in \mathcal{OD}} w_k((t^)^k - \sigma_k) = c(x^, \mathcal{R}^*) < \sum_{(u_k, v_k, \sigma_k) \in \mathcal{OD}} w_k(t^k - \sigma_k).$$
This contradicts the optimality of .z; x; q;t/.
Given an instance I D .N ; l; ; OD;d/ of DMwR, formulation (4.17)–(4.29) can be tightened using the valid inequalities provided by Lemma 4.4.22, e.g., we add
$$t^k \ge \mathrm{lb}_k + \sigma_k \quad \forall (u_k, v_k, \sigma_k) \in \mathcal{OD},$$
where lbk denotes the output of Algorithm 1 for instance I D .N ; l; ; f.*u*k; *v*k; k/g;d/.
As we have seen in Lemma 4.2.7, DMwR can equivalently be formulated using the overall delay instead of the overall travel time as an objective. Hence, we could replace (4.17) with the equivalent objective function
$$\sum_{(u_k, v_k, \sigma_k) \in \mathcal{OD}} w_k(t^k - SP_k). \tag{4.31}$$
Using (4.31) instead of the overall travel time, the proposed integer programming formulation of DMwR specified by the modified objective (4.31) and the constraints (4.18)–(4.29) has been tested in [DHSS09, DHSS12] on several instances based on data from Dutch Railways and compared to an IP formulation for delay management with constant weights.
In this chapter we present an iterative approach for solving network problems with routing which alternatingly calculates routings and decides about the network structure.
To this end, in Sect. 5.1 we identify structural similarities between the problems considered in the preceding sections. We classify the problems in problem classes in order to find out to which extent they are tractable by our iterative approach which is presented and analyzed in Sect. 5.2 for problems from the defined problem classes.
In Sect. 5.3 we define the price of sequentiality, an indicator for the quality of the solutions found by the iterative approach which we analyze for the problems TTwR and arc speed-up in Sects. 5.4 and 5.5.
Consider the definitions of uLPwR, scLPwR, and cLPwR in the CGN (Definitions 2.2.5) and the definitions of TTwR and DMwR in the EAN (Definitions 3.2.6 and 4.2.5). We notice that common components in the input of the problems are
We call this representation of the OD-pairs node-OD-pairs.
Definition 5.1.1. Given a network N D .V; A/, a set of node-OD-pairs in N is a subset of the Cartesian product of the node set of N, i.e., *OD*node - V V . For every node-OD-pair .u; v/, the number of passengers or passenger weight wuv is specified.
We restate the definition of paths and routings in terms of the node-OD-pairs.
Notation 5.1.2. Let N D .V; A/ be an undirected graph and ODnode a set of node-OD-pairs in N.
$$\mathcal{R}_{uv} = {P : P \text{ path for } (u, v)}.$$
Every path P is assigned a number of passengers wP *uv, such that*P P2RuvwP uv Dwuv.
• A routing for the set of node-OD-pairs *OD*node is defined as
$$\mathcal{R} = \bigcup{(u,v) \in \mathcal{OD}{node}} \mathcal{R}_{uv}.$$
We capture the identified similarities of the problems uLPwR, scLPwR, cLPwR, TTwR, and DMwR in the definition of a joint problem class Q.
Definition 5.1.3. A minimization problem Q with objective function c belongs to the class Q of network problems with routing if it has the following properties:
$$f_{\mathcal{S}}: A \to \mathbb{Q} \times \mathbb{Z}, \ a \mapsto (\text{length}(a), \text{capacity}(a)).$$
Lemma 5.1.4. uLPwR, scLPwR, cLPwR, TTwR, and DMwR can be regarded as problems belonging to Q.
Proof. • For an instance I D .NCGN;L; OD;B/ of uLPwR, we set N WD NCGN for the CGN NCGN and *OD*node WD f.*u*org; *v*org/ W .u; v/ 2 *OD*g. A solution .*L*0 ; R/ to I consists of a routing R and a line concept L0 that defines which part of the network is built, i.e., can be used by the passengers, and which part is deleted. Hence, we can regard L0 as an assignment
$$f{\mathcal{L}'}((i,j)) := \begin{cases} (c{ij}, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{if } (i,j) \in A{\text{drive}}, l((i,j)) \in \mathcal{L}', \ (c{ij}, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{if } (i,j) \in A{\text{trans}}, l(i), l(j) \in \mathcal{L}', \ (c{ij}, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{if } (i,j) \in A{\text{org}}, l(j) \in \mathcal{L}', \ (c{ij}, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{if } (i,j) \in A{\text{dest}}, l(i) \in \mathcal{L}', \ (c{ij}, 0) & \text{otherwise.} \end{cases}$$
Furthermore, c.L0 ; R/ 0 for all solutions .L0 ; R/ to I . • Similarly, for an instance I D .NCGN;L; OD; B;Cap/ of scLPwR or cLPwR, N WD NCGN and *OD*node WD f.*u*org; *v*org/ W .u; v/ 2 ODg are defined by the input. A solution .L0 ; R/ to I consists of a routing R and a line concept L0 with frequencies fl > 0 for l 2 L0 . L0 defines which part of the network is built and the capacity of the network by the specification of the frequencies. We could regard L0 as a function
$$f{\mathcal{L}'}((i,j)) := \begin{cases} (c{ij}, fl \cdot \mathsf{Cap}) & \text{if } (i,j) \in A{\mathsf{drive}}, l((i,j)) \in \mathcal{L}', \ (c{ij}, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{if } (i,j) \in A{\mathsf{trans}}, l(i), l(j) \in \mathcal{L}', \ (c{ij}, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{if } (i,j) \in A{\mathsf{org}}, l(j) \in \mathcal{L}', \ (c{ij}, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{if } (i,j) \in A{\mathsf{dest}}, l(i) \in \mathcal{L}', \ (c_{ij}, 0) & \text{otherwise.} \end{cases}$$
where fl denotes the frequency of line l 2 L0 . Again it holds that c.L0 ; R/ 0 for all solutions .L0 ; R/ to I .
• For an instance .N ; l; u; OD/ of TTwR, we set N WD N and *OD*node WD f.*u*org; *v*org/ W .u; v/ 2 *OD*g. A solution .; R/ to I consists of a routing R and a timetable which defines the arc lengths of the network N./. Hence, we can understand as an assignment of Lij D j i to the arcs:
$$f_{\pi}((i,j)) := \begin{cases} (\pi_j - \pii, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{if } (i,j) \in \mathcal{A}{op}, \ (0, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{otherwise.} \end{cases}$$
Furthermore, c.; R/ 0 for all solutions .; R/ to I .
• For an instance .N ; l; ; OD;d/ of DMwR, we set *OD*node WD f.*u*org. /; *v*org/ W .u; v;/ 2 *OD*g and N WD N . A solution .x; R/ to I consists of a routing R and a disposition timetable x which defines the arc lengths of the network N .x/ and the existence of changing activities; hence, we identify x with the following function
$$f{X}((i,j)) := \begin{cases} (x{j} - x{i}, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{if } (i,j) \in \mathcal{A}{\text{drive}} \cup \mathcal{A}{\text{wait}} \cup \mathcal{A}{\text{fix}}(x), \ (x{j} - x{i}, 0) & \text{if } (i,j) \in \mathcal{A}{\text{change}} \setminus \mathcal{A}{\text{fix}}(x), \ (x{j} - \sigma, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{if } (i,j) \in \mathcal{A}'{\text{org}}, \ (0, \sum{(u,v) \in \mathcal{OD}} w{uv}) & \text{if } (i,j) \in \mathcal{A}_{\text{dest}}. \end{cases}$$
Furthermore, $$c(x, \mathcal{R}) \ge 0$$ for all solutions $(x, \mathcal{R})$ to $I$ .
The goal of this section is to identify for which of the problems considered in this book it is promising to determine a solution iteratively, i.e., to iterate the calculation of R and S while fixing S or R, respectively.
Obviously, this approach only makes sense if for a given routing we can determine a feasible network component and vice versa:
Definition 5.1.5. Let Q 2 Q be a network problem with routing and I be an instance of Q.
• Let R be a routing for I . We define the set of network components feasible for R
$$FEAS(\mathcal{R}) := {S : (S, \mathcal{R}) \text{ is feasible}}.$$
• Let S be a network component for I . We define the set of routings feasible for S
$$FEAS(S) := { \mathcal{R} : (S, \mathcal{R}) \text{ is feasible} }.$$
This notion of feasibility for a routing or a network component for uLPwR and scLPwR is captured in Definition 2.2.4. To obtain a feasible solution .L0 ; R/ to cLPwR, additionally to Definition 2.2.4, we need that R is a shortest-path routing in N.L0 /. For DMwR see Definition 4.2.3. In TTwR, every feasible timetable is feasible for every routing and vice versa.
In order to improve the objective values during an iterative procedure, we aim at finding the best possible solution in every step. To define problem classes for which this approach is possible, we introduce the following notation.
Definition 5.1.6. Let Q 2 Q be a network problem with routing and I be an instance of Q.
• Let R be a routing for I such that FEAS.R/ ¤ ;. We define
$$OPT(\mathcal{R}) := { \mathcal{S}(\mathcal{R}) \in FEAS(\mathcal{R}) : c(\mathcal{S}(\mathcal{R}), \mathcal{R}) \le c(\mathcal{S}', \mathcal{R}) \forall \mathcal{S}' \in FEAS(\mathcal{R}) }.$$
• Let S be a network component for I such that FEAS.S/ ¤ ;. We define
$$OPT(S) := { \mathcal{R}(S) \in FEAS(S) : c(S, \mathcal{R}(S)) \le c(S, \mathcal{R}') \forall \mathcal{R}' \in FEAS(S) }.$$
Note that the definition of OPT.S/ corresponds to the definitions of OPT.L0 / for a given line concept L0 in uLPwR (see Definition 2.3.3), OPT./ for a given timetable in TTwR, and OPT.x/ for a given disposition timetable x in DMwR (see Definition 4.3.1).
The definition of OPT.R/ corresponds to the definition of OPT.R/ for a given routing in TTwR. For an instance I of uLPwR with a given routing R, we have L.R/ 2 OPT.R/ in the sense of Definition 5.1.6 (see Definition 2.3.1), and for an instance I of DMwR with a given routing R, we have x.R/ 2 OPT.R/ in the sense of Definition 5.1.6.
Definition 5.1.7. Let Q 2 Q. We define the subclass *Q*opt - Q as follows: Q 2 *Q*opt if the following conditions hold:
Lemma 5.1.8. uLPwR, scLPwR, cLPwR, TTwR, and DMwR are in Qopt.
Proof. For every instance I of a problem Q 2 f*u*LP*w*R; scLP*w*R; cLP*w*R; T T *w*R; DM*w*Rg, there is only a finite number of solutions .S; R/. Hence, for any routing R for I , FEAS.R/ is a finite set, and FEAS.R/ ¤ ; implies OPT.R/ D argmin*S*2FEAS.R/ c.S; R/ ¤ ;. Analogously, for any network component S for I , FEAS.S/ is a finite set and FEAS.S/ ¤ ; implies OPT.S/ D argmin*R*2FEAS.S/ c.S; R/ ¤ ;. ut
Definition 5.1.9. Let Q 2 Q. We define the subclass *Q*opt pol - Q as follows: Q 2 *Q*opt pol if Q 2 *Q*opt and the following conditions hold:
Even if a problem Q is not in *Q*opt pol, if we have polynomial-time heuristics which find network components for given routings and routings for given network components with good objective values, an iterative approach could be successfully used to improve the solution quality of an initial solution. The class of problems for which this could be possible is described in the following definition:
Definition 5.1.11. Let Q 2 Q. We define the subclass *Q*feas pol - Q as follows: Q 2 *Q*feas pol if the following conditions hold:
However, none of the problems considered in this book is in *Q*feas pol n *Q*opt pol:
Lemma 5.1.12. scLPwR and cLPwR are not in Qfeas pol .
Proof. This follows from Theorem 2.3.8. ut
In order to obtain a polynomial-time iterative algorithm, we do not only need the property that the iterations can be performed in polynomial time, but we also need to find an initial solution in polynomial time.
Definition 5.1.13. We define the subclasses *Q*trac rout; *Q*trac comp - *Q*opt pol as follows: Let Q 2 *Q*opt pol be a problem for which a feasible solution .S; R/ exists.
Lemma 5.1.14. Let Q be a problem in Qopt pol.
$$Q \in \mathcal{Q}{rout}^{trac} \Leftrightarrow Q \in \mathcal{Q}{comp}^{trac}$$
,For every instance of Q we can find a feasible solution in polynomial time.
Proof. Let I be an instance of Q.
Definition 5.1.15. We hence define *Q*trac WD *Q*trac rout D *Q*trac comp.
Lemma 5.1.16. The restriction of uLPwR to linear PTNs, TTwR, and DMwR are in Qtrac.
Proof. • Let .N;L; OD;B/ be an instance of uLPwR. A feasible line plan can be found in polynomial time as described in the proof of Theorem 2.5.9 if it exists. Hence, the problem uLPwR restricted on linear PTNs is contained in *Q*trac comp.
ut
Lemma 5.1.17. uLPwR is not in Qtrac.
Proof. This follows from Theorem 2.5.1. ut
The results of this section are summarized in the following table.
| Qopt | Find R.S/ 2 OPT.S/ in polynomial time |
Find S.R/ 2 OPT.R/ in polynomial time |
Qopt pol |
Qtrac | |
|---|---|---|---|---|---|
| uLPwR | |||||
| in linear PTNs | x | x | x | x | x |
| uLPwR | x | x | x | x | – |
| scLPwR | x | – | x | – | – |
| cLPwR | x | – | x | – | – |
| TTwR | x | x | x | x | x |
| DMwR | x | x | x | x | x |
We propose the heuristic presented in Algorithm 2 to solve problems in problem class *Q*opt.
Due to Lemma 5.1.14 we can assume without loss of generality that we start with a given routing R0. However, we could equivalently formulate an iterative heuristic that starts with a feasible network component S.
Note that, in general, the sets OPT.Si / and OPT.Ri / contain more than one element and that the performance of the heuristic certainly depends on the choices made in steps 1, 2, 4, and 5.
However, we assume that the choices of the algorithm are deterministic and only depend on the network component Si-1 in step 4 and on the routing R0 or Ri , respectively, in steps 2 and 5. Hence, if Si D Si-1 for an i 2 f1; : : : ; sg, Algorithm 2 would find the same solution .Sj ; Rj / D .Si ; Ri / for every j D i;:::; s. This justifies the stopping criterion in steps 6–8.
Require: Instance I of problem Q 2 Qopt. Maximal number of iterations s 2 N [ f1g.
Ensure: Solution .S; R/ to I (if it exists)
1: Find an initial routing R0 with OPT.R0/ ¤ ;
2: Choose S0 2 OPT.R0/
3: for i D 1; : : : ; s do
4: Choose Ri 2 OPT.Si-
1/
5: Choose Si 2 OPT.Ri
/
6: if Si D Si-
1 then
7: Stop. return .Si
; Ri
/
8: end if
9: end for
10: Stop. return .Ss ; Rs /
Lemma 5.2.1. For Q 2 Qopt, steps 2, 4, and 5 of Algorithm 2 are well-defined, i.e.,
$$OPT(S^{i-1}) \neq \emptyset$$ and $OPT(R^i) \neq \emptyset$ for $i = 1, ..., s$ .
Proof. This lemma is shown inductively:
Lemma 5.2.2. Let I be an instance of a problem Q 2 Qtrac. For the solutions .*S*i ; Ri / calculated in Algorithm 2, it holds that
$$c(\mathcal{S}^i, \mathcal{R}^i) \le c(\mathcal{S}^{i-1}, \mathcal{R}^{i-1})$$ for $i = 1, \dots, s$ .
In particular, Algorithm 2 converges to a solution .S1; R1/ for s ! 1.
Proof. Since Si 2 OPT.Ri / it follows that
$$c(\mathcal{S}^i, \mathcal{R}^i) \le c(\mathcal{S}^{i-1}, \mathcal{R}^i) \text{ for all } i = 1, \dots, s,$$
and since Ri 2 OPT.Si-1/ it follows that
$$c(\mathcal{S}^{i-1}, \mathcal{R}^i) \le c(\mathcal{S}^{i-1}, \mathcal{R}^{i-1})$$ for all $i = 1, \dots, s$
which implies the lemma. Since c is bounded from below (see Definition 5.1.3), we obtain convergence. ut However, .*S*1; *R*1/ does not need to be optimal as we see in Sects. 5.5. We now regard the running time of Algorithm 2.
Lemma 5.2.3. If Q 2 Qopt pol, steps 2–9 of Algorithm 2 need polynomial time. In particular, every iteration of Algorithm 2 is in polynomial time.
If also the first routing can be found in polynomial time, Algorithm 2 has polynomial running time for a fixed maximal number of iterations s.
Lemma 5.2.4. If Q 2 Qtrac, for a fixed maximal number of iterations s, Algorithm 2 runs in polynomial time.
Note that for a problem Q 2 Q, given heuristics for finding a network component for a fixed routing in a network problem and vice versa, we could define an alternative iterative algorithm, substituting OPT.Ri / with FEAS.Ri / and OPT.Si / with FEAS.Si /. However, Lemma 5.2.2 does not hold in this case. Therefore, and since none of the problems uLPwR, cLPwR, scLPwR, TTwR, and DMwR is contained in *Q*feas pol n *Q*opt pol, we do not detail the alternative algorithm in this book.
In the following let Q be a problem in *Q*opt and let I be an instance of Q specifying a network N and a set of node-OD-pairs *OD*node. Let .S; R/ be an optimal solution to I .
Naturally, the outcome of Algorithm 2 depends on the initial routing chosen in step 1 as well as on the on the choices made in steps 2 and 4 and 5 of every iteration of Algorithm 2.
Notation 5.3.1. Denote by S0.I / the set of all solutions .*S*0; *R*0/ that may be returned at the end of steps 1 and 2 of Algorithm 2 and by Si .I / for i D 1; : : : ; s the set of solutions .Si ; Ri / that may be returned at the end of iteration i of steps 4 and 5 of Algorithm 2.
We now define the price of sequentiality which specifies the worst-case relative error of Algorithm 2 after each iteration, analogously to the ratio often used in the analysis of approximation algorithms.
Definition 5.3.2. Let I be an instance of a problem Q 2 *Q*opt.
• For i D 0; : : : ; s the price of sequentiality for I in iteration i is defined as
$$PoS^{i}(I) = \max_{(S^{i}, \mathcal{R}^{i}) \in S^{i}(I)} \frac{c(S^{i}, \mathcal{R}^{i})}{c(S^{}, \mathcal{R}^{})}$$
• The price of sequentiality for I is defined as
$$PoS(I) = \lim_{i \to \infty} PoS^{i}(I),$$
(for s WD 1 and ignoring the stopping criterion defined in steps 6–8 of Algorithm 2).
Note that if for an instance I of a problem Q 2 *Q*opt, it holds that jOPT.R/j D jOPT.S/j D 1 for all considered routings R and network components S, P oSi .I / depends only on the initial solution.
Since Algorithm 2 decreases in every step and converges (see Lemma 5.2.2), we see the following lemma.
Lemma 5.3.3. Let Q 2 Qopt and I be an instance of Q. Then
We are not only interested in the outcome of Algorithm 2 for a specific instance I of a problem Q, but in bounds that more generally hold for whole classes of instances of Q. Therefore, we generalize the definition of the price of sequentiality to classes of instances I.
Definition 5.3.4. Let Q be a problem and I be a class of instances of Q.
• For i D 0; : : : ; s the price of sequentiality for I in iteration i is defined as
$$PoS^{i}(\mathcal{I}) = \sup_{I \in \mathcal{I}} PoS^{i}(I).$$
• We define the price of sequentiality for I as
$$PoS(\mathcal{I}) = \sup_{I \in \mathcal{I}} PoS(I).$$
Naturally, the statement of Lemma 5.3.3 also holds for classes of instances:
Corollary 5.3.5. Let Q 2 Qopt and I be an instance of Q. Then
In this section we illustrate the theoretical concepts of the iterative heuristic and the price of sequentiality using the problem TTwR.
We have seen in Lemma 5.1.16 that TTwR is in *Q*trac. We restate Algorithm 2 for application for TTwR in Algorithm 3. As described in steps 3 and 7 of
Require: Instance I D .N ; l; u; OD/ of TTwR. Maximal number of iterations s.
Ensure: Solution .; R/ to I .
1: Find a routing R0 for OD in N .
2: Calculate activity weights w0
a WD P
P.u;v/2R0;Puv3a wuv.
3: Find a timetable 0 by solving sTT for the activity weights w0
a using the linear pro-
gram (3.5)–(3.8)
4: for i D 1; : : : ; s do
5: Find a shortest-path routing Ri in N .i-
1/.
6: Calculate activity weights wi
a WD P
P.u;v/2Ri ;Puv3a wuv.
7: Find a timetable i by solving sTT for the activity weights wi
a using the linear pro-
gram (3.5)–(3.8).
8: if i D i-
1 then
9: Stop. return .i
; Ri
/.
10: end if
11: end for
12: Stop. return .s ; Rs /.
Algorithm 3, for the calculation of a timetable .R/ 2 OPT.R/, we can use the linear programming approach described in Sect. 3.3. Certainly, any other algorithm for finding a .R/ 2 OPT.R/ could be used instead.
For the calculation of an initial routing R0 in step 1 of Algorithm 3, we could, e.g., use one of the following strategies.
However, any method, providing a routing or a timetable, could be used to create an initial solution.
We now give a small example which illustrates the approach of Algorithm 3 as well as it proves an infinite price of sequentiality for TTwR.
Consider the instance Ix D .N ; l; u; OD/ of TTwR depicted in Fig. 5.1a with wuv WD 1 and x 2 N. Suppose that the train-route P following tr2 is chosen for the first routing R0 (the nodes of the corresponding path are marked in gray) in step 1 of Algorithm 3. This choice of a first routing is possible for all strategies LOW , UPP, and SUM.
In Fig. 5.1b a timetable .*R*0/ 2 OPT.*R*0/ is shown. Suppose that this timetable 0 WD .*R*0/ is chosen in step 3 of Algorithm 3. Then R1 WD fPg is a shortest-path routing in N.0/ and might hence be chosen in the first iteration of step 5. Then in step 7 we find 1 D 0 and the algorithm stops with the solution .1; *R*1/ D .0; *R*0/ and objective value c.1; *R*1/ D x.
Fig. 5.1 Instance I of TTwR with P oS.I / D maxa2*A*op *u*a la . (a) EAN with bounds (b)Timetable and routing calculated by Algorithm 3 (c) Optimal solution
The optimal solution .; R/ in this situation is depicted in Fig. 5.1c (again the gray nodes indicate the path); it has objective value c.; R/ D 1.
Hence, for the constructed instance Ix, we have P oS.Ix/ D x 1 . Let *I*TTwR denote all instances of TTwR. We obtain
$$PoS(\mathcal{I}{TTwR}) \ge \sup{x \in \mathbb{N}} PoS(I_x) = \infty.$$
Lemma 5.4.1. Let ITTwR denote all instances of TTwR. Then
$$PoS(\mathcal{I}_{TTwR}) = \infty.$$
However, the result of Theorem 3.4.4 provides us with bounds on the price of sequentiality in case of bounded upper and lower bounds for the activity lengths. These bounds are reached in the example shown in Fig. 5.1, since P oS.Ix/ D x 1 D maxa2*A*op *u*a la for the instance Ix considered there. We obtain the following lemma.
Lemma 5.4.2. 1. Let I.rmax/ denote the class of instances of TTwR with maxa2*Aop ua la rmax. Then*
$$PoS(\mathcal{I}(r^{\max})) = PoS^{0}(\mathcal{I}(r^{\max})) = r^{\max}.$$
$$PoS(\mathcal{I}(R^{\max})) = PoS^{0}(\mathcal{I}(R^{\max})) = R^{\max}.$$
The lower bound l.tr2s1-Dep;tr2s2-Arr/ D 1 on .tr2 s1 Dep; tr2 s2 Arr/ in the example given in Fig. 5.1 may be called unrealistic, since there is no feasible timetable such that .tr2s2-Arr/ .tr2s1-Dep/ D 1.
However, the price of sequentiality stays unbounded for general instances of TTwR, even if we require that the instances must have realistic time bounds, in the sense that for every .i; j / 2 A, and every xij 2 Œlij ; *u*ij there exists a feasible timetable such that j i D xij . An example is given in Fig. 5.2.
Consider the instance I D .N ; l; u; OD/ of TTwR depicted in Fig. 5.2a with wuv WD 1 and x 3 2 N. Note that the time bounds in this instance are realistic.
We have four different paths for OD-pair .u; v/. In this example, for the first routing R0, the path P following tr2 (first and last even are marked in gray) is chosen for all choices of initial routings specified in (1.)–(3.) in step 1 of Algorithm 3.
In Fig. 5.2a timetable .*R*0/ 2 OPT.*R*0/ is shown. Suppose that this timetable 0 WD .*R*0/ is chosen in step 3 of Algorithm 3. Then R1 WD fPg is a shortest-path routing in N.0/ and might hence be chosen in the first iteration of step 5. In step 7 we find 1 D 0 and the algorithm stops with the solution .1; *R*1/ D .0; *R*0/ depicted in Fig. 5.2b and objective value c.1; *R*1/ D x C 2.
Fig. 5.2 Example for unbounded price of sequentiality, even for realistic instances. (a) EAN with bounds (b) Timetable and routing calculated by Algorithm 3 (c) Optimal solution
On the other hand, the optimal solution .; R/ in this situation is depicted in Fig. 5.2c (again the gray nodes indicate first and last event of the path), it has objective value c.; R/ D 4.
Hence, for the constructed instance Ix, we have P oS.Ix/ D xC2 4 . If we construct a sequence of instances Ix with x ! 1 we obtain P oS.*I*T T WR/ D 1 with *I*TTwR being the class of all possible instances for TTwR.
A numerical investigation of the iterative heuristic for TTwR and a comparison to solutions obtained by solving the IP formulations presented in Sect. 3.7 can be found in [Anh12]. For the instances tested there, the iterative heuristic provides close-tooptimal results and outperforms the IP formulations with respect to running times.
Similarly to the preceding section, in this section we analyze the iterative heuristic using the price of sequentiality as a quality measure. Since TTwR and the other problems considered in Chaps. 2–4 are already quite complicated, in this section we analyze the structure of the price of sequentiality using the arc speed-up problem as an example. Arc speed-up is a simple network problem, which is defined in Sect. 5.5.1. In Sect. 5.5.2 we show that arc speed-up is in *Q*trac and detail how the iterative heuristic given in Algorithm 2 can be applied to solve arc speed-up heuristically. In Sect. 5.5.3 we state an exact algorithm to solve the problem. These two approaches are compared in Sect. 5.5.4 by means of the price of sequentiality.
Let N D .V; A/ be a directed network with arc lengths La 2 N and let OD - V V be a set of OD-pairs in N. Like in every network problem with routing, also in the problem arc speed-up defined in this section, our task is to make a decision on the network component and find a routing such that the overall travel time is minimized.
In arc speed-up we do not have any capacity restrictions, hence, like in uLPwR, TTwR, and DMwR, we assume that all passengers of an OD-pair use the same path and define a routing in N as a collection of paths R WD fPuv W .u; v/ 2 *OD*g where Puv is a path from u to v.
Besides finding a routing, the task of arc speed-up is to choose an arc speed-up a 2 A whose length is decreased by a multiplication with a speed-up factor ˛ 2 Œ0; 1/.
Given a speed-up factor ˛, for a0 2 A, we denote by N.a0 / the network N with arc lengths
$$L_a^{a'} := \begin{cases} \alpha \cdot L_a & \text{if } a = a' \ L_a & \text{otherwise.} \end{cases}$$
We call N.a0 / the speed-up network corresponding to a0 .
Let a0 2 A be given and let R be a routing. Then the travel time along Puv 2 R in N.a0 / is
$$c(a', P{uv}) := \sum{a \in P_{uv}} L_a^{a'}.$$
The overall travel time in N.a0 / is
$$c(a',\mathcal{R}) := \sum{P{uv} \in \mathcal{R}} w{uv} c(a',P{uv}).$$
Note that
$$c(a', P{uv}) = \sum{a \in P_{uv}} La^{a'} = \begin{cases} \sum{a \in P_{uv}} La & \text{if } a' \notin P{uv} \ \sum{a \in P{uv}} La - (1 - \alpha) L{a'} & \text{otherwise.} \end{cases}$$ (5.1)
To prove the statements of this section, we make use of reformulations of the objective function. To this end, we define arc weights:
Definition 5.5.1. Let N D .V; A/ be a directed network, OD a set of OD-pairs and R a routing for OD. We denote by w.R/a WD P P*uv*2R;P*uv*3a wuv the arc weight of arc a in routing R.
Then, like in (5.1), c.a0 ; R/ can be rewritten as
$$c(a', \mathcal{R}) = \sum{(u,v) \in \mathcal{OD}} w{uv} \sum_{a \in P(u,v)} La^{a'} = \sum{a \in A} w(\mathcal{R})_a L_a^{a'}$$
$$= \sum_{a \in A} w(\mathcal{R})_a La - (1 - \alpha)w(\mathcal{R}){a'} L_{a'}$$
$$= \sum{(u,v) \in \mathcal{OD}} w{uv} \sum_{a \in P(u,v)} La - (1 - \alpha)w(\mathcal{R}){a'} L_{a'}.$$ (5.2)
We now define the problem arc speed-up.
Definition 5.5.2. An instance .N; OD; ˛/ of arc speed-up (ASU) consists of a directed network N D .V; A/ with edge lengths La, a set of OD-pairs OD - V V and a speed-up factor ˛ 2 Œ0; 1/. The task is to choose a arc speed-up a 2 A and a routing R, such that the overall travel time c.a; R/ in N.a/ is minimized.
Lemma 5.5.3. ASU is in Q.
Proof. An instance .N; OD; ˛/ of ASU contains a network N and a set of OD-pairs OD as required in Definition 5.1.3. A solution .a0 ; R/ specifies a routing R and an arc a0 which can be understood as an assignment fa0 W A ! Q Z to the arcs, namely
$$f_{a'}(a) := \left(La^{a'}, \sum{(u,v) \in \mathcal{OD}} w_{uv}\right).$$
Furthermore, c.a0 ; R/ 0 for every solution .a0 ; R/ to an instance I of ASU. Hence, ASU is in Q. ut
In this section we describe how Algorithm 2 can be applied to ASU. To this end, we explain how to find solutions to ASU when part of the solution, namely, the routing or the arc speed-up is fixed.
Let I D .N; OD; ˛/ be an instance of ASU with N D .V; A/ and let n WD jV j denote the number of nodes in N.
First we note that given an arc speed-up a0 2 A, we can find a shortest-path routing R.a0 / in N.a0 / using, e.g., the Floyd-Warshall algorithm, in O.n3/, where n is the number of nodes in the considered network.
Lemma 5.5.4. Let I D .N; OD; ˛/ be an instance of ASU with OD D f.*u*k; *vk/ W k 2 Kg,* N D .V; A/ and a0 2 A. Let n denote the number of nodes in N. Then OPT.a0 / (as it is defined in Definition 5.1.6) is the set of shortest-path routings in N.a0 /, i.e.,
$$OPT(a') = {{P_1, P2, \dots, P{|K|}} : P_k \text{ is a shortest path from } u_k \text{ to } v_k \text{ in } N(a')}$$
and a routing R.a0 / 2 OPT.a0 / can be found in O.n3/.
Given a routing R, we can also easily find a corresponding arc speed-up a.R/:
Lemma 5.5.5. Let I D .N; OD; ˛/ be an instance of ASU with N D .V; A/ and R be a routing. Let n denote the number of nodes in N. Then OPT.R/ (as it is defined in Definition 5.1.6) is given by
$$OPT(\mathcal{R}) := \underset{a \in A}{\operatorname{argmax}} { w(\mathcal{R})_a L_a }.$$
OPT.R/ can be found in O.n3/.
Proof. Given a routing R and an arc a0 2 A we have
$$c(a',\mathcal{R}) = \sum{(u,v)\in\mathcal{OD}} w{uv} \sum_{a\in P(u,v)} La - (1-\alpha)w(\mathcal{R}){a'} L_{a'}.$$
due to (5.2). Hence, OPT.R/ D argmaxa2Afw.R/aLag.
In order to find this set we calculate and compare w.R/a0La0 for every a0 2 A. Since every path P 2 R contains at most n1 arcs, we calculate fw.R/aLa W a 2 A s:t: w.R/aLa ¤ 0g in time O.n j*OD*j/ which is in O.n3/ since j*OD*j 2 O.n2/. ut
Hence, ASU is in Qopt pol. Since any combination of arc a0 2 A and routing R is a feasible solution, we see the following corollary.
Corollary 5.5.6. ASU is in Qtrac.
We now restate Algorithm 2 for the problem ASU in Algorithm 4 below. We use a shortest-path routing in N as initial routing.
Algorithm 4 Iterative heuristic for ASU
Require: Instance I D .N; OD; ˛/ of ASU. Maximal number of iterations s.
Ensure: Solution .a; R/ to I
1: Find a shortest-path routing R0 for OD in N.
2: Calculate arc weights w0
a WD P
P.u;v/2R0;Puv3a wuv.
3: Choose a0 2 argmaxa2Afw.R/aLag.
4: for i D 1; : : : ; s do
5: Find a shortest-path Ri routing in N.ai-
1/.
6: Calculate arc weights wi
a WD P
P.u;v/2Ri ;Puv3a wuv.
7: Choose ai 2 argmaxa2Afwi
aLag.
8: if ai D ai-
1 then
9: Stop. return .ai
; Ri
/
10: end if
11: end for
12: Stop. return .as ; Rs /
For ASU, we obtain a polynomial overall running time of the iterative heuristic:
Lemma 5.5.7. Let I D .N; OD; ˛/ be an instance of ASU with n nodes for which we apply Algorithm 4. Then
Proof. According to Lemma 5.5.4 and 5.5.5, every iteration of Algorithm 4 is in O.n3/. Due to the stopping criterion in step 8, the algorithm stops after at most jAj iterations, independently of the choice of s. ut
The price of sequentiality compares the solution found by the iterative heuristic with an exact solution. In ASU, exact solutions can be found in polynomial time, which facilitates such a comparison. An exact algorithm for ASU is stated in this section.
Let I D .N; OD; ˛/ be an instance of ASU and let n denote the number of nodes in N. I can be solved in time O.n5/ using an all-pairs shortest path algorithm to find a routing in N.a0 / for every choice of a0 2 A. However, since the networks N and N.a0 / differ only in the length of arc a0 , this approach can be speeded up:
The following Algorithm 5 solves ASU to optimality by finding an optimal routing in N first and then enumerating all arcs and updating shortest path lengths in the speeded-up network by a label-correcting step.
Algorithm 5 Exact algorithm for ASU
Require: Instance I D .N; OD; ˛/ of ASU.
Ensure: Arc a such that .a; R.a// is an optimal solution to I for any R.a/ 2 OPT.a/ and
objective value c D .a; R.a//.
1: Determine the shortest path distance d.i; j / for every pair of nodes .i; j / 2 V V .
2: Set c WD P
.u;v/2OD wuvd.u; v/.
3: for a0 D .i; j / 2 A do
4: for .u; v/ 2 OD do
5: Set d0
.u; v/ WD minfd.u; v/; d.u;i/ C ˛La0 C d.i; v/g.
6: end for
7: Set c0 WD P
.u;v/2OD wuvd0
.u; v/.
8: if c0 < c then
9: Set c WD c0
, and a WD a0
10: end if
11: end for
12: return c and a.
Theorem 5.5.8. Algorithm 5 finds an optimal solution to ASU with routing in time O.n4/, where n is the number of nodes in the considered network.
Proof. For i; j 2 V , like in Algorithm 5 denote by d.i; j / the shortest path distance from i to j . Let P N uv be a shortest path from u to v in N and a0 D .i; j / 2 A. Then P N uv is a shortest path from u to v in N if and only if d.u; v/ d.v;i/ C ˛La0 C d.j; v/. Otherwise, the path P N.a0 / uv , consisting of a shortest path from u to i in N, a0 D .i; j / and a shortest path from j to v in N, is a shortest path from u to v in N.a0 / with length d.v;i/ C ˛La0 C d.j; v/.
The minimum d0 .u; v/ calculated in step 5 of Algorithm 5 thus is the length of a shortest path from u to v in N.a0 /. For every arc a0 2 A, based on these numbers d0 .u; v/, the objective value is computed and compared. Algorithm 5 then outputs an arc speed-up for which the objective value is minimal; thus it is correct.
To find the shortest path distance between all pairs of nodes in step 1, we can apply an all-pair shortest path algorithm, e.g., the Floyd-Warshall algorithm in O.n3/.
For every arc and every OD-pair, step 5 is done in constant time, and for every arc, steps 7–10 are performed in O.j*OD*j/; thus, steps 3–11 are done in O.jAjj*OD*j/. Since step 2 can also be done in O.j*OD*j/, the overall running time of Algorithm 5 is O.n3CjAjj*OD*j/ which in terms of n is O.n4/, because jAj 2 O.n2/ and j*OD*j 2 O.n2/. ut
Hence, the running time of Algorithm 5 is even lower than the worst-case running time of the iterative approach specified in Algorithm 2.
However, the goal of this section is not to speed up the calculation of optimal solutions to ASU, but to analyze the price of sequentiality for this problem. This is done in the following sections.
Let I D .N; OD; ˛/ be an instance of ASU. Analogous to Notation 5.3.1, we denote by S0.I / the set of all solutions .*S*0; *R*0/ that may be returned at the end of step 3 of Algorithm 4 and by Si .I / for i D 1; : : : ; s the set of solutions .Si ; Ri / that may be returned at the end of iteration i of step 7 of Algorithm 4.
For the sake of a compact representation, in this section, we furthermore use the following notations.
Since c.I / ˛c.I / O , the natural bound on the improvement that speeding up an arc can achieve for the overall travel time is c.I / O c.I / 1 ˛ . This provides the first bound on the price of sequentiality.
Lemma 5.5.9. For any instance I and every i 2 N of ASU we have
$$\frac{c^i(I)}{c^(I)} \le \frac{\hat{c}(I)}{c^(I)} \le \frac{1}{\alpha}.$$
We now develop bounds on c.I / and c0.I / in terms of c.I / O . To simplify notation we use the following abbreviations: Given an instance I D .N; OD; ˛/ of ASU with arc set A we define
Lemma 5.5.10. Let I D .N; OD; ˛/ be an instance of ASU. The optimal objective value c.I / of I is bounded from below by
$$c^*(I) \ge \hat{c}(I) - L^{max}(I)(1 - \alpha)W^{sum}(I).$$ (5.3)
and
$$c^*(I) \ge \alpha[\hat{c}(I) - W^{sum}(I) + W^{max}(I)] + W^{sum}(I) - W^{max}(I). \tag{5.4}$$
Proof. It follows from (5.1) that
$$c(a^*, P{uv}) \ge \hat{c}(P{uv}) - L^{\max}(I)(1 - \alpha).$$
Summarizing over all OD-pairs we obtain (5.3).
If there are several different OD-pairs, at most the path of one OD-pair .u0 ; *v0 / can entirely be covered by the arc speed-up. For this path Pu*0v0 it holds that
$$c(a^*, P{u'v'}) \ge \alpha \hat{c}(P{u'v'})$$
For every .u; v/ 2 OD n f.u0 ; *v*0 /g the corresponding path Puv contains at least one arc a ¤ a. Since La 2 N for all a 2 A we have
$$c(a^*, P{uv}) \ge \alpha[\hat{c}(P{uv}) - 1] + 1 \quad \forall (u, v) \in \mathcal{OD} \setminus {(u', v')}.$$
Summarizing over all OD-pairs we obtain
$$c^*(I) \ge \alpha \left[ \hat{c}(I) - \left( \sum{(u,v) \in \mathcal{OD}} w{uv} - w{u'v'} \right) \right] + \sum{(u,v) \in \mathcal{OD}} w{uv} - w{u'v'}$$
which is minimal if we choose .u0 ; *v*0 / such that *wu*0v0 is maximal. This implies (5.4). ut
Comparing the bounds (5.3) and (5.4) from Lemma 5.5.10, we obtain the following result:
Lemma 5.5.11. Let I D .N; OD; ˛/ be an instance of ASU. Then
$$\begin{split} \hat{c}(I) - L^{max}(I)(1-\alpha)W^{sum}(I) &\leq \alpha [\hat{c}(I) - W^{sum}(I) + W^{max}(I)] \ &+ W^{sum}(I) - W^{max}(I) \end{split}$$
$$\Leftrightarrow \hat{c}(I) \leq W^{sum} L^{max}(I) + W^{sum} - W^{max}.$$
Lemma 5.5.12. For an instance I D .N; OD; ˛/, the objective value c.I / determined using the iterative heuristic 4 is bounded from above by
$$c(I) \le c^{i}(I) \le c^{0}(I) \le \hat{c}(I) - (1 - \alpha)W^{max}(I) \quad \forall i \in \mathbb{N}.$$ (5.5)
Proof. The first two inequalities follow from Lemma 5.2.2. To see the last inequality, we note that in step 1 Algorithm 4 chooses a shortest-path routing R0 in N and in step 3 an arc a0 2 argmaxa2Afw.R/aLag. We obtain
$$c^{0}(I) = \hat{c}(I) - (1 - \alpha) \max{a \in A} w(\mathcal{R}){a} L{a} \le \hat{c}(I) - (1 - \alpha) \max{(u,v) \in \mathcal{OD}} w_{uv},$$
since $$\max_{a \in A} L_a w(\mathcal{R}^0)a \ge \max{(u,v) \in \mathcal{OD}} w_{uv}$$ .
In the subsequent sections we use the bounds from Lemma 5.5.10 and 5.5.12 to deduce bounds on whole classes of instances.
Let *I*AR denote the class of all instances of ASU. As we will see later in Lemma 5.5.23, P oS.*I*AR/ D 1. We hence impose restrictions on the classes of instances of ASU.
Definition 5.5.13. We classify instances I D .N; OD; ˛/ with N D .V; A/ of ASU according to the following characteristics:
For fixed .n; Lmax; k;W sum; W max; ˛0 / 2 N5 Œ0; 1/ let *I*Œ.n; Lmax/; .k; W sum; W max/; ˛0 denote the set of instances having the described characteristics (1.)–(3.). When we consider a class of instances where a certain parameter is not restricted, we use the entry "-."
Not every combination .n; Lmax; k;W sum; W max; ˛0 / 2 N5 Œ0; 1/ corresponds to instances of ASU. We say that a combination .k; W sum; W max/ 2 N3 is feasible P if there exist numbers f*w*1;:::;*w*kg such that W max D maxjD1;:::;k wj and W sum D jD1;:::;k *w*k.
Furthermore, for the sake of a shorter notation, we use the following abbreviations:
$$\begin{split} &PoS^{i}[(n,L^{\max}),(k,W^{\text{sum}},W^{\max}),\alpha] := PoS^{i}(\mathcal{I}[(n,L^{\max}),(k,W^{\text{sum}},W^{\max}),\alpha]), \ &PoS[(n,L^{\max}),(k,W^{\text{sum}},W^{\max}),\alpha] := PoS(\mathcal{I}[(n,L^{\max}),(k,W^{\text{sum}},W^{\max}),\alpha]). \end{split}$$
In this section we derive the price of sequentiality for some classes of instances I which have in common that the speed-up factor ˛ is fixed and the size n is not fixed. We start in Lemma 5.5.14, fixing all values except n.
Lemma 5.5.14. Let Lmax 2 N, ˛ 2 Œ0; 1/ and a feasible .k; W sum; W max/ 2 N3 be given. Then it holds that
$$PoS^{0}[(-,L^{max}),(k,W^{sum},W^{max}),\alpha] \leq \frac{(L^{max}+1)W^{sum}-W^{max}-(1-\alpha)W^{max}}{\alpha L^{max}W^{sum}+W^{sum}-W^{max}}.$$
Proof. We define a function g W RC 0 ! R as the ratio between the bounds on the objective value found using Algorithm 4 and on the optimal objective value.
$$g(s) = \begin{cases} \frac{s - (1 - \alpha)W^{\max}}{(s - (W^{\sup} - W^{\max}))\alpha + W^{\sup} - W^{\max}} & \text{if } s \leq L^{\max}W^{\sup} + W^{\sup} - W^{\max} \ \frac{s - (1 - \alpha)W^{\max}}{s - L^{\max}(1 - \alpha)W^{\sup}} & \text{if } s > L^{\max}W^{\sup} + W^{\sup} - W^{\max}. \end{cases}$$
Note that then for every instance I 2 *I*Œ.; Lmax/; .k; W sum; W max/; ˛, it holds that
$$PoS^{0}(I) = \sup_{(\mathcal{S}^{0}, \mathcal{R}^{0}) \in S^{0}(I)} \frac{c(\mathcal{S}^{0}, \mathcal{R}^{0})}{c(\mathcal{S}^{}, \mathcal{R}^{})} \le g(\hat{c}(I)).$$ (5.6)
Hence
$$PoS^{0}[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha] \leq \sup_{I \in \mathcal{I}[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha]} g(\hat{c}(I))$$
$$\leq \sup{s \in \mathbb{R}^{+}{0}} g(s). \tag{5.7}$$
We now calculate the supremum of g on RC 0 .
• Note that for the break point s D LmaxW sum C W sum W max, we have
$$\begin{split} g(L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\text{max}}) \ &= \frac{L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max} - (1 - \alpha)W^{\max}}{(L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max} - (W^{\text{sum}} - W^{\max}))\alpha + W^{\text{sum}} - W^{\max}} \ &= \frac{L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max} - (1 - \alpha)W^{\max}}{L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max}} - L^{\max}(1 - \alpha)W^{\text{sum}}} \ &= \lim_{s \searrow (L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max})} g(s). \end{split}$$
• We observe that g.s/ is monotonously increasing on the interval Œ0; LmaxW sum C W sum W max, since
$$\begin{split} \frac{d}{d(s)} \frac{s - (1 - \alpha)W^{\text{max}}}{(s - (W^{\text{sum}} - W^{\text{max}}))\alpha + W^{\text{sum}} - W^{\text{max}}} \ &= \frac{(1 - \alpha)(W^{\text{sum}} - W^{\text{max}} + \alpha W^{\text{max}})}{[(s - (W^{\text{sum}} - W^{\text{max}}))\alpha + W^{\text{sum}} - W^{\text{max}}]^2} > 0. \end{split}$$
• Furthermore, g.s/ decreases monotonously on ŒLmaxW sum C W sum W max;1/, since
$$\frac{d}{d(s)} \frac{s - (1 - \alpha)W^{\text{max}}}{s - L^{\text{max}}(1 - \alpha)W^{\text{sum}}} = -\frac{(1 - \alpha)(L^{\text{max}}W^{\text{sum}} - W^{\text{max}})}{[s - L^{\text{max}}(1 - \alpha)W^{\text{sum}}]^2} < 0$$
Thus, g takes its maximum in s D LmaxW sum C W sum W max. Due to (5.7) it follows that
$$PoS^{0}(I) \leq \frac{(L^{\max} + 1)W^{\text{sum}} - W^{\max} - (1 - \alpha)W^{\max}}{\alpha L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max}}$$
for every $$I \in \mathcal{I}[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha].$$
We can show that the bound given in Lemma 5.5.14 is tight by constructing a worst-case instance.
Lemma 5.5.15. Let Lmax 2 N, ˛ 2 Œ0; 1/ and a feasible .k; W sum; W max/ 2 N3 be given. Then
$$PoS[(-, L^{max}), (k, W^{sum}, W^{max}), \alpha] = PoS^{0}[(-, L^{max}), (k, W^{sum}, W^{max}), \alpha]$$
$$= \frac{(L^{max} + 1)W^{sum} - W^{max} - (1 - \alpha)W^{max}}{\alpha L^{max}W^{sum} + W^{sum} - W^{max}}.$$ (5.8)
Proof. In Lemma 5.5.14 it is shown that
$$PoS^{0}[(-,L^{\max}),(k,W^{\text{sum}},W^{\max}),\alpha] \leq \frac{(L^{\max}+1)W^{\text{sum}}-W^{\max}-(1-\alpha)W^{\max}}{\alpha L^{\max}W^{\text{sum}}+W^{\text{sum}}-W^{\max}}.$$
Hence, since
$$PoS[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha] \le PoS^{0}[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha]$$
it remains to show that there is an instance IO 2 *I*Œ.; Lmax/; .k; W sum; W max/; ˛ such that
$$PoS(\hat{I}) = \frac{(L^{\max} + 1)W^{\text{sum}} - W^{\max} - (1 - \alpha)W^{\max}}{\alpha L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max}}.$$
Fig. 5.3 Network N in the worst-case instance IO for P oSŒ.-; Lmax/; .k; W sum; W max/; ˛
We now construct such an instance IO.
Consider the network N with .Lmax C 1/k nodes depicted in Fig. 5.3. The first k 1 dotted arcs represent a sequence of .Lmax 1/ arcs of length 1, directed in the direction of the dotted arcs. The dotted arc at the bottom represents a sequence of .Lmax 2/ arcs of length 1, directed in the direction of the dotted arcs. The numbers written at the other arcs are the arc lengths. That is, there is one arc a of maximal length La WD Lmax, all other arcs a have length La WD 1.
We define a set of OD-pairs OD D f.u; *v*k/ W k 2 Kg, i.e., all OD-pairs have the same origin u but different destinations vk with arbitrary weights wk for .u; *v*k/ 2 OD such that P .u;vk /2OD wk D W sum and max.u;vk /2OD wk D W max. Without loss of generality we assume that w1 w2 :::; *w*k. Therefore, we write *v*max WD vk and *v*min WD *v*1.
This defines our instance IO WD .N; OD; ˛/.
For every .u; *v*k/ 2 OD there are two paths from u to vi , namely, a path P0 k containing the arc of length Lmax and a path Pk which contains only arcs of length 1. Note that c.˛; P0 k/ D c.˛; Pk/ for every .u; *v*k/ 2 OD.
Assume that the routing R0 WD fPk W k 2 Kg is chosen in step 1 of Algorithm 4. Then maxa2Afw.R/aLag D max.ui ;*v*i/2OD wui vi D wuk vk and in step 3 an arc a0 of the lowermost path is chosen for speed-up. Hence
$$c^{0}(\hat{I}) = (L^{\max} + 1)W^{\text{sum}} - W^{\max} - (1 - \alpha)W^{\max}.$$ (5.9)
Then R0 2 OPT.a0/, hence we can assume that R1 D R0 and a1 D a0 in steps 5–7 of the first iteration which causes Algorithm 4 to stop in step 9 after the first iteration with solution .*R*1; a1/ D .*R*0; a0/.
Clearly, the optimal solution in this example is .a; R0 / with R0 WDfP0 k W k 2 Kg. Hence
$$c^(\hat{I}) = c(a^, \mathcal{R}') = \alpha L^{\max} W^{\text{sum}} + W^{\text{sum}} - W^{\max}. \tag{5.10}$$
ut
Combining (5.9) and (5.10) we obtain
$$PoS(\hat{I}) = \frac{(L^{\max} + 1)W^{\text{sum}} - W^{\max} - (1 - \alpha)W^{\max}}{\alpha L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max}}.$$
We now consider more general classes of instances, obtaining a higher price of sequentiality. To this end, we regard P oSŒ.; Lmax/; .k; W sum; W max/; ˛ as a function in its parameters Lmax, .k; W sum; W max/ and ˛ and maximize this function. Since
$$PoS^{0}[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha] = PoS[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha]$$
for every Lmax 2 N, feasible .k; W sum; W max/ 2 N3 and ˛ 2 Œ0; 1/ as shown in Lemma 5.5.15, the equality P oS0ŒI D P oSŒI also holds for all classes of instances for which we derive the price of sequentiality in the following sections. However, to avoid a lengthy notation, we omit the price of sequentiality after iteration 0 from the formulation of the statements given in the following.
Lemma 5.5.16. For every ˛ 2 Œ0; 1/ and every feasible .k; W sum; W max/ 2 N3, it holds that
$$PoS[-, (k, W^{sum}, W^{max}), \alpha] = \frac{1}{\alpha}.$$
Proof. According to Lemma 5.5.15, for fixed Lmax, the price of sequentiality is given as
$$PoS[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha] = \frac{(L^{\max} + 1)W^{\text{sum}} - W^{\max} - (1 - \alpha)W^{\max}}{\alpha L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max}}.$$
We now regard the price of sequentiality as a function g in Lmax. In order to find the maximum of this function, we consider the first derivative. We have
$$\frac{d}{dL^{\max}}g(L^{\max}) = \frac{d}{dL^{\max}} \frac{(L^{\max} + 1)W^{\text{sum}} - W^{\max} - (1 - \alpha)W^{\max}}{\alpha L^{\max}W^{\text{sum}} + W^{\min} - W^{\max}}$$
ut
$$= \frac{(1-\alpha)(W^{\text{sum}}(W^{\text{sum}} - W^{\text{max}}) + \alpha W^{\text{max}}W^{\text{sum}})}{[\alpha L^{\text{max}}W^{\text{sum}} + W^{\text{sum}} - W^{\text{max}}]^2}$$
0,
hence
$$\begin{split} PoS[-,(k,W^{\text{sum}},W^{\text{max}}),\alpha] &= \sup{L^{\text{max}} \in \mathbb{N}} PoS[(-,L^{\text{max}}),(k,W^{\text{sum}},W^{\text{max}}),\alpha] \ &= \lim{L^{\text{max}} \to \infty} PoS[(-,L^{\text{max}}),(k,W^{\text{sum}},W^{\text{max}}),\alpha] \ &= \lim_{L^{\text{max}} \to \infty} \frac{(L^{\text{max}}+1)W^{\text{sum}}-W^{\text{max}}-(1-\alpha)W^{\text{max}}}{\alpha L^{\text{max}}W^{\text{sum}}+W^{\text{sum}}-W^{\text{max}}} \ &= \frac{1}{\alpha}. \end{split}$$
In Lemma 5.5.9 we saw that for every instance I c.I / O c.I / 1 ˛ . Thus, Lemma 5.5.16 reveals that if we do not impose any restrictions on the networks, i.e., restrict the arc lengths or the number of nodes, in the considered classes of instances, the worstcase behavior of Algorithm 4 is asymptotically not better than not choosing any arc for speed-up. This, of course, is due to the fact that for increasing path lengths, the impact on the overall travel time of speeding up a single arc of length 1 (as done in the worst-case instance constructed in the proof of Lemma 5.5.15) decreases.
We hence keep Lmax fixed in the following and consider the subclasses of instances with less restrictions on the set of OD-pairs.
Since (5.8) does not depend on k, the following corollary to Lemma 5.5.15 follows directly.
Corollary 5.5.17. Let Lmax 2 N, ˛ 2 Œ0; 1/ and .W sum; W max/ 2 N2 with W sum W max be given. Then
$$PoS[(-, L^{max}), (-, W^{sum}, W^{max}), \alpha] = \frac{(L^{max} + 1)W^{sum} - W^{max} - (1 - \alpha)W^{max}}{\alpha L^{max}W^{sum} + W^{sum} - W^{max}}.$$ (5.11)
Lemma 5.5.18. For every Lmax 2 N, .W sum; k/ 2 N2 and ˛ 2 Œ0; 1/, we have
$$PoS[(-, L^{max}), (k, W^{sum}, -), \alpha] = \begin{cases} \frac{(L^{max} + 1)W^{sum} - \left\lceil \frac{W^{sum}}{k} \right\rceil - (1 - \alpha) \left\lceil \frac{W^{sum}}{k} \right\rceil}{\alpha L^{max}W^{sum} + W^{sum} - \left\lceil \frac{W^{sum}}{k} \right\rceil} & if (1 - \alpha)L^{max} < 1 \ \frac{W^{sum}(L^{max} - (1 - \alpha)) + (2 - \alpha)(k - 1)}{\alpha L^{max}W^{sum} + (k - 1)} & otherwise. \end{cases}$$
$$(5.12)$$
Proof. For fixed W max,
$$PoS[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha] = \frac{(L^{\max} + 1)W^{\text{sum}} - W^{\max} - (1 - \alpha)W^{\max}}{\alpha L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max}}.$$
It holds that W max W sum k and W max W sum k C 1. Hence
$$\begin{split} PoS[(-,L^{\max}),(k,W^{\text{sum}},-),\alpha] \ &= \sup_{W^{\max} \in [\frac{W^{\text{sum}}}{k},W^{\text{sum}}-k+1] \cap \mathbb{N}} \frac{(L^{\max}+1)W^{\text{sum}} - W^{\max} - (1-\alpha)W^{\max}}{\alpha L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max}}. \end{split}$$
We now calculate the maximum of
$$g(W^{\max}) := \frac{(L^{\max} + 1)W^{\operatorname{sum}} - W^{\max} - (1 - \alpha)W^{\max}}{\alpha L^{\max}W^{\operatorname{sum}} + W^{\operatorname{sum}} - W^{\max}}$$
on Œ W sum k ; W sum k C 1.
$$\frac{dg}{dW^{\text{max}}} = \frac{(1-\alpha)[(1-\alpha)L^{\text{max}} - 1]W^{\text{sum}}}{[\alpha L^{\text{max}}W^{\text{sum}} + W^{\text{sum}} - W^{\text{max}}]^2} = \begin{cases} < 0 \text{ if } (1-\alpha)L^{\text{max}} < 1\ \ge 0 \text{ otherwise.} \end{cases}$$ (5.13)
Hence, g is monotonously decreasing and takes its maximum in W sum k if .1 ˛/Lmax < 1 and is monotonously increasing and takes the maximum in W sum .k C 1/ otherwise. Since we assume that W max 2 N it follows that
$$\begin{split} &PoS[(-,L^{\max}),(k,W^{\text{sum}},W^{\max}),\alpha] \ &= \begin{cases} g(\lceil \frac{W^{\text{sum}}}{k} \rceil) & \text{if } (1-\alpha)L^{\max} < 1 \ g(W^{\text{sum}}-k+1) & \text{otherwise.} \end{cases} \ &= \begin{cases} \frac{(L^{\max}+1)W^{\text{sum}}-\lceil \frac{W^{\text{sum}}}{k} \rceil - (1-\alpha)\lceil \frac{W^{\text{sum}}}{k} \rceil}{\alpha L^{\max}W^{\text{sum}}+W^{\text{sum}}-\lceil \frac{W^{\text{sum}}}{k} \rceil} & \text{if } (1-\alpha)L^{\max} < 1 \ \frac{W^{\text{sum}}(L^{\max}-(1-\alpha)) + (2-\alpha)(k-1)}{\alpha L^{\max}W^{\text{sum}}+(k-1)} & \text{otherwise.} \end{cases} \end{split}$$
Lemma 5.5.19. For every Lmax 2 N, k 2 N and ˛ 2 Œ0; 1/ we have
$$PoS[(-, L^{max}), (k, -, -), \alpha] = \begin{cases} \frac{L^{max}k + k - 2 + \alpha}{\alpha L^{max}k + k - 1} & \text{if } (1 - \alpha)L^{max} < 1\ \frac{L^{max} - (1 - \alpha)}{\alpha L^{max}} & \text{otherwise.} \end{cases}$$ (5.14)
ut
Proof. • Suppose that .1 ˛/Lmax < 1. Since the function g, defined in the proof of Lemma 5.5.18, is monotonously decreasing, for fixed W sum, we have
$$PoS[(-, L^{\max}), (k, W^{\text{sum}}, -), \alpha] = g\left(\left\lceil \frac{W^{\text{sum}}}{k} \right\rceil\right) \le g\left(\frac{W^{\text{sum}}}{k}\right) = \frac{L^{\max}k + k - 2 + \alpha}{\alpha L^{\max}k + k - 1}.$$
Equality holds whenever W sum is divisible by k. Hence,
$$\begin{aligned} PoS[(-, L^{\text{max}}), (k, -, -), \alpha] &= \sup_{W^{\text{sum}} \in \mathbb{N}} PoS[(-, L^{\text{max}}), (k, W^{\text{sum}}, -), \alpha] \ &= \frac{L^{\text{max}}k + k - 2 + \alpha}{\alpha L^{\text{max}}k + k - 1}. \end{aligned}$$
• Now suppose that .1 ˛/Lmax 1. For fixed W sum we have
$$PoS[(-, L^{\max}), (k, W^{\text{sum}}, -), \alpha] = \frac{W^{\text{sum}}(L^{\max} - (1 - \alpha)) + (2 - \alpha)(k - 1)}{\alpha L^{\max}W^{\text{sum}} + (k - 1)}$$
due to Lemma 5.5.18. We consider the price of sequentiality as a function g in W sum:
$$g(W^{\text{sum}}) := \frac{W^{\text{sum}}(L^{\max} - (1 - \alpha)) + (2 - \alpha)(k - 1)}{\alpha L^{\max}W^{\sup} + (k - 1)}.$$
We have
$$\frac{dg}{dW^{\text{sum}}} := \frac{(k-1)(1-\alpha)(L^{\max}(1-\alpha)-1)}{[\alpha L^{\max}W^{\text{sum}} + (k-1)]^2} > 0,$$
hence g is monotonously increasing. Furthermore,
$$\begin{split} \lim{W^{\text{sum}} \to \infty} g(W^{\text{sum}}) &:= \lim{W^{\text{sum}} \to \infty} \frac{W^{\text{sum}}(L^{\text{max}} - (1 - \alpha)) + (2 - \alpha)(k - 1)}{\alpha L^{\text{max}}W^{\text{sum}} + (k - 1)} \ &= \frac{L^{\text{max}} - (1 - \alpha)}{\alpha L^{\text{max}}}. \end{split}$$
It follows that
$$\begin{aligned} PoS[(-, L^{\max}), (k, -, -), \alpha] &= \sup{W^{\text{sum}} \in \mathbb{N}} PoS[(-, L^{\max}), (k, W^{\text{sum}}, -), \alpha] \ &= \lim{W^{\text{sum}} \to \infty} PoS[(-, L^{\max}), (k, W^{\text{sum}}, -), \alpha] \ &= \frac{L^{\max} - (1 - \alpha)}{\alpha L^{\max}}. \end{aligned}$$
If we do not impose any restrictions on the set of OD-pairs, that is, we are looking at the class of instances *I*Œ.; Lmax/; ; ˛ with maximal arc length Lmax and speedup factor ˛, we have
Lemma 5.5.20. For every Lmax 2 N it holds that
$$PoS[(-, L^{max}), -, \alpha] = \begin{cases} \frac{L^{max} + 1}{\alpha L^{max} + 1} & \text{if } (1 - \alpha)L^{max} < 1\ \frac{L^{max} - (1 - \alpha)}{\alpha L^{max}} & \text{otherwise.} \end{cases}$$
Proof. For .1 ˛/Lmax 1 there is nothing to show. We hence assume that
$$(1-\alpha)L^{\max} < 1.$$
Due to Lemma 5.5.19, we have P oSŒ.; Lmax/; .k; ; /; ˛ D LmaxkCk-2C˛ ˛LmaxkCk-1 . Regarding the price of sequentiality as a function g of k we obtain
$$\frac{d}{dk}g(k) = \frac{d}{dk}\frac{L^{\max}k + k - 2 + \alpha}{\alpha L^{\max}k + k - 1} = \frac{(1-\alpha)(1-(1-\alpha)L^{\max})}{[\alpha L^{\max}k + k - 1]^2} > 0$$
Hence, g increases monotonously and asymptotically behaves like LmaxC1 ˛LmaxC1 . Hence, in this case
$$\begin{split} PoS[(-,L^{\max}),-,\alpha] &= \sup{k \in \mathbb{N}} PoS[(-,L^{\max}),(k,-,-),\alpha] \ &= \lim{k \to \infty} PoS[(-,L^{\max}),(k,-,-),\alpha] \ &= \lim_{k \to \infty} \frac{L^{\max}k + k - 2 + \alpha}{\alpha L^{\max}k + k - 1} \ &= \frac{L^{\max}+1}{\alpha L^{\max}+1}. \end{split}$$
The results of this section are summarized in Table 5.1.
Looking once more at Lemma 5.5.15, we observe that we can say something about the class of instances *I*Œ.; Lmax/; .k; W sum; W max/; where the speed-up factor ˛ 2 Œ0; 1/ is not fixed.
Lemma 5.5.21. For every Lmax 2 N and every feasible .k; W sum; W max/ 2 N3, it holds that
ut
$$PoS[(-,L^{max}),(k,W^{sum},W^{max}),-] = \frac{(L^{max}+1)W^{sum}-2W^{max}}{W^{sum}-W^{max}}.$$
Proof. For fixed ˛ the price of sequentiality is given as
$$PoS[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha] = \frac{(L^{\max} + 1)W^{\text{sum}} - W^{\max} - (1 - \alpha)W^{\max}}{\alpha L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max}}$$
due to Lemma 5.5.15. We regard the price of sequentiality as a function g in ˛. We have
$$\begin{split} &\frac{d}{d\alpha}g(\alpha)\ &=\frac{d}{d\alpha}\frac{(L^{\max}+1)W^{\text{sum}}-W^{\max}-(1-\alpha)W^{\max}}{\alpha L^{\max}W^{\text{sum}}+W^{\text{sum}}-W^{\max}}\ &=-\frac{2L^{\max}W^{\text{sum}}(W^{\text{sum}}-W^{\max})+W^{\text{sum}}(L^{\max}(L^{\max}-1)W^{\text{sum}}-W^{\max})+(W^{\max})^2}{[\alpha L^{\max}W^{\text{sum}}+W^{\text{sum}}-W^{\max}]^2} \end{split}$$ (5.15)
We show that (5.15) is negative:
$$-\frac{2L^{\max}W^{\text{sum}}(W^{\text{sum}}-W^{\text{max}})+W^{\text{sum}}(L^{\max}(L^{\max}-1)W^{\text{sum}}-W^{\max})^{2}}{[\alpha L^{\max}W^{\text{sum}}+W^{\text{sum}}-W^{\max}]^{2}}$$
$$=-\frac{(W^{\text{sum}}-W^{\max})^{2}+W^{\text{sum}}(W^{\text{sum}}-W^{\max})}{[\alpha W^{\text{sum}}+W^{\text{sum}}-W^{\max}]^{2}}$$ <0
Hence, the supremum of g.˛/ is attained for ˛ D 0. We obtain
$$\begin{split} PoS[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), -] &= \sup{\alpha \in [0, 1)} PoS[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha] \ &= \sup{\alpha \in [0, 1)} \frac{(L^{\max} + 1)W^{\text{sum}} - W^{\max} - (1 - \alpha)W^{\max}}{\alpha L^{\max}W^{\text{sum}} + W^{\text{sum}} - W^{\max}} \ &= \frac{(L^{\max} + 1)W^{\text{sum}} - W^{\max} - W^{\max}}{W^{\text{sum}} - W^{\max}}. \end{split}$$
Like in Sect. 5.5.4.1 we can derive the price of sequentiality for more general classes of instances.
ut
ut
ut
Lemma 5.5.22. For every Lmax 2 N and .k; W sum/ 2 N2, we have
$$PoS[(-, L^{max}), (k, W^{sum}, -), -] = \frac{(L^{max} - 1)W^{sum} + 2(k - 1)}{k - 1}$$
Proof. Due to Lemma 5.5.21, we have for fixed W max
$$PoS[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), -] = \frac{(L^{\max} + 1)W^{\text{sum}} - 2W^{\max}}{W^{\text{sum}} - W^{\max}}.$$
Analogously to the calculations of Lemma 5.5.18 (with ˛ D 0) we see that the price of sequentiality increases monotonously in W max and hence takes its maximum in W sum .k 1/. It follows that
$$PoS[(-, L^{\max}), (k, W^{\text{sum}}, -), -] = \frac{(L^{\max} + 1)W^{\text{sum}} - 2(W^{\text{sum}} - (k - 1))}{W^{\text{sum}} - (W^{\text{sum}} - (k - 1))}$$ $$= \frac{(L^{\max} - 1)W^{\text{sum}} + 2(k - 1)}{k - 1}.$$
Corollary 5.5.23. For every Lmax 2 N and k 2 N, we have
$$PoS[(-, L^{max}), (k, -, -), -] = \infty.$$
Proof. This follows directly from Lemma 5.5.22, since
$$\lim_{W^{\operatorname{sum}} \to \infty} \frac{(L^{\max} - 1)W^{\operatorname{sum}} + 2(k - 1)}{k - 1} = \infty.$$
Hence, we can continue Table 5.2 for unrestricted ˛ as shown in Table 5.1.
As we have seen in Lemma 5.5.16,
$$\lim_{L^{\max} \to \infty} PoS[(-, L^{\max}), (k, W^{\text{sum}}, W^{\max}), \alpha] = \frac{1}{\alpha},$$
which is no improvement compared to not choosing any arc for speed-up at all. However, having a closer look at the proof of Theorem 5.5.15, the worst-case example constructed there needs n D .Lmax C 1/k nodes.
P oSŒ.-; Lmax/; .k; W sum; W max/; -D P oSŒ.-; Lmax/; .k; W sum; W max/; - .LmaxC1/W sum-2W max W sum-W max P oSŒ.-; Lmax/; .k; W sum; -/; - .Lmax-1/W sumC2.kk-P oSŒ.-; Lmax/; .k; -; -/; - 1 P oSŒ.-; Lmax/; -; - 1 P oSŒ-; -; -1
Table 5.2 Price of sequentiality for the classes of instances considered in Sect. 5.5.4.2
In this section we analyze whether we can find bounds on the price of sequentiality also for classes of instances with unbounded Lmax if we bound the number of nodes n. For the sake of simplicity, we consider only instances with j*OD*j D 1.
Lemma 5.5.24. Let I D .N; OD; ˛/ be an instance of ASU with j*ODj D 1. Without loss of generality we can assume that wuv* D 1.
Proof. Let I D .N; OD; ˛/ be an instance of ASU with j*OD*j D 1 and wuv > 1 for the OD-pair .u; v/ 2 OD. We define I 0 WD .N; OD0 ; ˛/ with OD0 D f.u; v/g, and wuv D 1.
Let .a; R/ denote an optimal solution to I and .ai ; Ri / be a solution of Algorithm 4 after step 3 for i D 0 or after step 7 if i>0. R consists of one path P and Ri consists of one path Pi . Hence
$$PoS(I) = \frac{\hat{c}(I)}{c^(I)} = \frac{w{uv} \sum{a \in P^i} La^{a^i}}{w{uv} \sum_{a \in P^} La^{a^*}} = \frac{\sum{a \in P^i} La^{a^i}}{\sum{a \in P^} L_a^{a^}} = PoS(I').$$
We now improve the bound given in Lemma 5.5.12 for instances in I 2 *I*Œ.n; /; .1; ; /; ˛.
ut
Lemma 5.5.25. For every instance I 2 *IŒ.n; /; .1; ; /; ˛, it holds that*
$$c(I) \le c^{i}(I) \le c^{0}(I) \le \hat{c}(I) - (1 - \alpha) \left\lceil \frac{\hat{c}(I)}{n - 1} \right\rceil \ \forall i \in \mathbb{N}.$$
Proof. Let I D .N; OD; ˛/ 2 *I*Œ.n; /; .1; ; /; ˛. Without loss of generality we assume that wuv D 1 for the OD-pair .u; v/ 2 OD (see Lemma 5.5.24).
For the OD-pair .u; v/ 2 OD let P0 denote the shortest path from u to v in N which is found in step 1 of Algorithm 4. Then c.I / O D P a2P0 La.
ut
Since P0 contains every node at most once, it contains at most n 1 arcs. This implies
$$\max_{a \in P^0} L_a \ge \frac{\hat{c}(I)}{n-1}.$$
Hence, for a0 chosen in step 3 of Algorithm 4, it holds that La0 c.I / O n-1 . Thus
$$c^0(I) \le \hat{c}(I) - (1 - \alpha) \left\lceil \frac{\hat{c}(I)}{n - 1} \right\rceil.$$
In the following Lemma 5.5.26 we see that we can indeed find better bounds on the price of sequentiality if the number of nodes n is bounded.
Lemma 5.5.26. For every n 2 N, Lmax n 1 and ˛ 2 Œ0; 1/, we have
$$PoS^{0}[(n, L^{max}), (1, -, -), \alpha] \le \frac{(n-1) - (1-\alpha)}{(n-1)\alpha}.$$
Proof. Consider an instance I D .N; OD; ˛/ 2 *I*Œ.n; Lmax/; .1; ; /; ˛ with Lmax n 1. Without loss of generality we assume that wuv D 1 for the OD-pair .u; v/ 2 OD (see Lemma 5.5.24). We define a function g W Œ1; .n 1/Lmax ! R as the ratio between the bounds on the objective value found using Algorithm 4 and on the optimal objective value.
$$g(s) = \begin{cases} \frac{s - (1 - \alpha) \left\lceil \frac{s}{n - 1} \right\rceil}{s\alpha} & \text{if } s \le L^{\max} \ \frac{s - (1 - \alpha) \left\lceil \frac{s}{n - 1} \right\rceil}{s - L^{\max}(1 - \alpha)} & \text{if } L^{\max} < s \le (n - 1) L^{\max}. \end{cases}$$
Due to Lemma 5.5.25 and 5.5.10 and since every simple path in N contains at most n 1 arcs, we see that
$$PoS^{0}[(n, L^{\max}), (1, -, -), \alpha] \le \max{s \in [1, (n-1)L^{\max}]} g{n, L^{\max}, \alpha}(s).$$
Note that for the break point s D Lmax, we have
$$g(L^{\max}) = \frac{L^{\max} - (1 - \alpha) \left\lceil \frac{L^{\max}}{n - 1} \right\rceil}{L^{\max} \alpha} = \frac{L^{\max} - (1 - \alpha) \left\lceil \frac{L^{\max}}{n - 1} \right\rceil}{L^{\max} - L^{\max} (1 - \alpha)} = \lim_{s \searrow L^{\max}} g(s).$$ (5.16)
We now show that
$$\max_{s \in [1, (n-1)L^{\max}]} g(s) = \frac{(n-1) - (1-\alpha)}{(n-1)\alpha}.$$
To this end, we maximize g.s/ both on Œ1; Lmax and .Lmax; .n 1/Lmax and compare the results.
$$g(s) = \frac{s - (1 - \alpha)b}{s\alpha} = \frac{1}{\alpha} - \frac{(1 - \alpha)b}{s\alpha}.$$
Since ˛ 2 Œ0; 1/, this function is monotonously increasing in s and thus takes its maximum on the right end of the interval ..b 1/.n 1/; b.n 1/, i.e., for s D b.n 1/.
In order to find the maximum of g on Œ1; Lmax, we compare the maximum values for all such intervals. We note that for every b 2 N
$$g(b(n-1)) = \frac{b(n-1) - (1-\alpha)b}{b(n-1)\alpha} = \frac{(n-1) - (1-\alpha)}{(n-1)\alpha}$$
and thus does not depend on b.
Hence,
$$\sup{s \in [1, L^{\max}]} \frac{s - (1 - \alpha)b}{s\alpha} = \sup{b \in \mathbb{Z} \cap [1, \frac{L^{\max}}{n - 1}]} \frac{(n - 1)b - (1 - \alpha)b}{(n - 1)b\alpha} = \frac{(n - 1) - (1 - \alpha)}{(n - 1)\alpha}.$$
(We remark that Œ1; Lmax n-1 ¤ ; since we claimed that Lmax n 1.)
Since
$$\frac{d}{ds}\frac{s-(1-\alpha)b}{s-L^{\max}(1-\alpha)} = -\frac{(1-\alpha)(L^{\max}-b)}{[s-L^{\max}(1-\alpha)]^2} = \begin{cases} = 0 \text{ if } b = L^{\max},\ < 0 \text{ otherwise} \end{cases},$$
g is monotonously decreasing on every interval ..b 1/.n 1/; b.n 1/ for
$$b \in \left[\left\lfloor \frac{L^{\max}}{n-1} \right\rfloor, L^{\max} - 1\right] \cap \mathbb{Z}$$
while it is constant on ..Lmax 1/.n 1/; .n 1/Lmax, i.e., in the case of b D Lmax.
Thus,
$$g(s) \le \lim_{s \searrow b(n-1)} g(s) = \frac{b(n-1) - (1-\alpha)b}{b(n-1) - L^{\max}(1-\alpha)} \quad \forall s \in ((b-1)(n-1), b(n-1)].$$
Hence,
$$\sup{s \in (L^{\max}, (n-1)L^{\max}]} g(s) = \sup{b \in [\lfloor \frac{L^{\max}}{n-1} \rfloor, L^{\max}] \cap \mathbb{Z}} \frac{b(n-1) - (1-\alpha)b}{b(n-1) - L^{\max}(1-\alpha)}$$
We now maximize h.b/ WD b.n-1/-.1-˛/b b.n-1/-Lmax.1-˛/ on Œ ˙ Lmax n-1 ; Lmax. Since we can assume that n>2
$$\frac{d}{db}h(b) = \frac{d}{db}\frac{b(n-1) - (1-\alpha)b}{b(n-1) - L^{\max}(1-\alpha)} = -\frac{L^{\max}(1-\alpha)(n-2+\alpha)}{[b(n-1) - L^{\max}(1-\alpha)]^2} < 0,$$ (5.17)
i.e., h.b/ is monotonously decreasing.
Since Lmax n-1 may be fractional, we have two candidates for the supremum of g on
$$(L^{\max}, (n-1)L^{\max}],$$
namely
$$z1 := \lim{s \searrow L^{\max}} g(s) \text{ and } z_2 := h\left(\left\lceil \frac{L^{\max}}{n-1} \right\rceil\right) = g\left(\left\lceil \frac{L^{\max}}{n-1} \right\rceil(n-1)\right).$$
$$\lim_{s \searrow L^{\max}} g(s) = g(L^{\max}) \le \frac{(n-1) - (1-\alpha)}{(n-1)\alpha}.$$ (5.18)
$$h\left(\left\lceil \frac{L^{\max}}{n-1} \right\rceil\right) = \frac{\left\lceil \frac{L^{\max}}{n-1} \right\rceil (n-2+\alpha)}{\left\lceil \frac{L^{\max}}{n-1} \right\rceil (n-1) - L^{\max}(1-\alpha)}.$$
We show that
$$\frac{(n-1)-(1-\alpha)}{(n-1)\alpha} \geq \frac{\left\lceil \frac{L^{\max}}{n-1} \right\rceil (n-2+\alpha)}{\left\lceil \frac{L^{\max}}{n-1} \right\rceil (n-1) - L^{\max}(1-\alpha)}.$$
Assume that
$$\frac{(n-1)-(1-\alpha)}{(n-1)\alpha}<\frac{\left\lceil\frac{L^{\max}}{n-1}\right\rceil(n-2+\alpha)}{\left\lceil\frac{L^{\max}}{n-1}\right\rceil(n-1)-L^{\max}(1-\alpha)}.$$
Dividing by .n 2 C ˛/ and taking the inverse, we obtain
$$\left\lceil \frac{L^{\max}}{n-1} \right\rceil (n-1) - L^{\max}(1-\alpha) \left\lceil \frac{L^{\max}}{n-1} \right\rceil < (n-1)\alpha.$$
We subtract Lmax d Lmax n-1 e ˛ on both sides and obtain the equivalent inequality
$$\frac{\left\lceil \frac{L^{\max}}{n-1} \right\rceil (n-1) - L^{\max}}{\left\lceil \frac{L^{\max}}{n-1} \right\rceil} < (n-1 - \frac{L^{\max}}{\left\lceil \frac{L^{\max}}{n-1} \right\rceil}) \alpha.$$
Since
$$n-1-\frac{L^{\max}}{\left\lceil\frac{L^{\max}}{n-1}\right\rceil}=\frac{L^{\max}}{\frac{L^{\max}}{n-1}}-\frac{L^{\max}}{\left\lceil\frac{L^{\max}}{n-1}\right\rceil}>0,$$
dividing by .n 1 Lmax d Lmax n-1 e /, we obtain the equivalent inequality
$$\alpha > \frac{(n-1)\left\lceil \frac{L^{\max}}{n-1}\right\rceil - L^{\max}}{(n-1)\left\lceil \frac{L^{\max}}{n-1}\right\rceil - L^{\max}} = 1,$$
ut
which is a contradiction to the choice of ˛ 2 Œ0; 1/.
In Lemma 5.5.26 we saw a bound on the price of sequentiality for instances in the class *I*Œ.n; Lmax/; .1; ; /; ˛ with Lmax n 1. The following lemma shows that this bound holds in general for all instances in *I*Œ.n; /; .1; ; /; ˛.
Lemma 5.5.27. For every n 2 N and ˛ 2 Œ0; 1/
$$PoS^{0}[(n,-),(1,-,-),\alpha] \leq \frac{(n-1)-(1-\alpha)}{(n-1)\alpha}.$$
Proof. As we have seen in Lemma 5.5.19, for every Lmax 2 N
$$PoS[(-, L^{\max}), (1, -, -), \alpha] = \frac{L^{\max} - 1 + \alpha}{\alpha L^{\max}} = \frac{1}{\alpha} - \frac{1 - \alpha}{\alpha L^{\max}}.$$ (5.19)
This function is monotonously increasing in Lmax; hence
$$\begin{split} &PoS^{0}[(n,-),(1,-,-),\alpha] \ &= \sup{L^{\max} \in \mathbb{N}} PoS[(n,L^{\max}),(1,-,-),\alpha] \ &= \sup{L^{\max} \in [1,n-2]} PoS[(n,L^{\max}),(1,-,-),\alpha], \ &\sup{L^{\max} \in [n-1,\infty)} PoS[(n,L^{\max}),(1,-,-),\alpha] } \ &\leq \sup{L^{\max} \in [n-1,\infty)} {\frac{(n-2)-(1-\alpha)}{\alpha(n-2)},\frac{(n-1)-(1-\alpha)}{\alpha(n-1)} } \ &= \frac{(n-1)-(1-\alpha)}{\alpha(n-1)}. \end{split}$$
We show that the bound provided by Lemma 5.5.27 is tight.
Lemma 5.5.28. For every n 2 N and ˛ 2 Œ0; 1/, we have
$$PoS[(n,-),(1,-,-),\alpha] = \frac{(n-1)-(1-\alpha)}{(n-1)\alpha}.$$
Proof. In Lemma 5.5.27 it is shown that
$$PoS[(n,-),(1,-,-),\alpha] \le \frac{(n-1)-(1-\alpha)}{(n-1)\alpha}.$$
We now construct an instance IO 2 *I*Œ.n; /; .1; ; /; ˛ such that
$$PoS(\hat{I}) = \frac{(n-1) - (1-\alpha)}{(n-1)\alpha}.$$
Consider a network N with n nodes and n arcs as depicted in Fig. 5.4. The dotted arcs there represent a sequence of .n 3/ arcs of length La WD 1, directed in the direction of the dotted arcs. The other arc, a, has arc length La WD n 1.
The considered OD-pair is .u; v/. Due to Lemma 5.5.24, without loss of generality, we can assume that wuv D 1.
Note that there are two paths P and P0 from u to v. P0 consists of a and P consists of the short arcs. We have c.P / O D Oc.P0 / D n 1. Assume that in step 1 of Algorithm 4 R0 WD fPg is chosen. Then in step 3, an arc a with length La D 1 is chosen and in steps 5, and 7 of the first iteration the solution remains unchanged. Hence, c.I / D n 1 .1 ˛/.
ut
Fig. 5.4 Worst-case instance for P oSŒ.n; Lmax/; .1; -; -/; ˛0 for Lmax > n -1
We observe that the optimal solution is .a; fP0 g/ with objective value c.a; fP0 g/ D ˛.n 1/. Thus,
$$PoS(\hat{I}) = \frac{(n-1) - (1-\alpha)}{(n-1)\alpha}.$$
ut
In this book we investigated the problem of integrating routing decisions in network problems, in particular in the problems line planning, timetabling, and delay management. We mainly considered the following aspects, as stated in the introduction:
With respect to the first question, we found that after some small modifications, the networks CGN, LN, and EAN used in preceding works on line planning, timetabling, or delay management are highly suitable for the formulation of the problems of uLPwR, scLPwR, cLPwR, TTwR, and DMwR, respectively, since routings can be represented as collections of paths in the corresponding networks.
The second aspect investigated in this book was the computational complexity of the considered problems. Table 6.1 summarizes the obtained results.
We found that after fixing either the routing or the line concept/timetable/ disposition timetable, a solution to uLPwR, TTwR, or DMwR which is optimal with regard to the fixed input can be found in polynomial time. This is not the case in scLPwR and cLPwR: finding a feasible routing for a given line concept, due to the added capacity restrictions, is a multi-commodity flow problem instead of a shortest path problem.
If only one OD-pair is considered, TTwR can be solved in polynomial time by solving a series of linear programs. In contrast, uLPwR and DMwR are already strongly NP-hard for only one OD-pair if no additional assumptions on the network
| uLPwR | scLPwR/cLPwR | TTwR | MwR D |
|
|---|---|---|---|---|
| mponent Find corresponding for given routing network co |
Trivial | Trivial | Solve one LP | Critical path method |
| mponent Find corresponding routing for given network co |
m in CGN Shortest path proble |
(strongly NP-hard) mmodity m flow proble Multi-co |
m in EAN Shortest path proble |
m in EAN and critical path Shortest path proble |
| Find feasible solution |
Strongly NP-hard | Strongly NP-hard | m in EAN Solve one LP and shortest path proble |
m in EAN Shortest path method proble |
| OD-pair) mal solution Find opti (1 |
solvable by modified mially m for instances with NLT Strongly NP-hard, RCSP algorith pseudopolyno |
with NLT property even for instances Strongly NP-hard, |
Solve series of LPs | m for instances with NTT property with NLT property Strongly NP-hard, mially path algorith polyno |
| (same origin) mal solution Find opti |
even for instances Strongly NP-hard, with OD-NLT property property |
even for instances Strongly NP-hard, with OD-NLT property |
Strongly NP-hard | Strongly NP-hard |
| – | M /-appr. m No constant-factor for one OD-pair m 2-appr. algorith appr. algorith C in general, m trivial .1 algorith |
|---|---|
| one departure and or in case of only mber arrival event per for arbitrary of OD-pairs, but fixed nu OD-pair P In |
No constant-factor la /- m m appr. algorith ua appr. algorith maxa2Aop in general, trivial |
| under strongest Strongly NP-hard restrictions considered |
Not possible |
| mplexity analysis of uLPwR in linear See Table 2.1 for PTNs co |
Not possible |
| Special cases | NP) mability ¤ me ming P mial-ti approxi (assu Polyno |
structure are made. However, for both problems we identified a restriction on the class of instances for which an optimal solution can be found using modified shortest path algorithms.
For all problems, it was not possible to extend the results of polynomial- or pseudopolynomial-time solvability to instances with more OD-pairs. Even if all OD-pairs have the same origin (and under the above-mentioned restrictions on the instances of uLPwR and DMwR), the problems uLPwR, TTwR, and DMwR are strongly NP-hard.
As to approximation algorithms, things do not look much easier. We saw that for uLPwR it is already strongly NP-hard to find a feasible solution; hence, we cannot hope for polynomial- or pseudopolynomial-time algorithms unless P D NP. Furthermore, we showed that (unless P D NP) there is no constant-factor approximation algorithm for TTwR (even if all OD-pairs have the same origin) or DMwR (even under the restriction that there are at most two OD-pairs). However, it is still an open question whether there exists an approximation algorithm for DMwR if we restrict the class of instances such that all OD-pairs have the same origin or if we the require that no OD-pair can enter a train more than once.
For uLPwR in linear networks, we extensively studied how the complexity of the problem depends on restrictions of the different input parameters. We were able to classify all defined instance classes to be solvable in either polynomial time or NP-hard; however, for some of the problems, a pseudopolynomial-time algorithm neither could be found nor could its existence be disproved. Anyway, when adding capacity restrictions, even under the strongest restrictions on the instances, the problems scLPwR and cLPwR turned out to be strongly NP-hard.
Although the problems uLPwR, scLPwR, cLPwR, TTwR, and DMwR were proven to be strongly NP-hard even under strong restrictions, there may be hidden parameters which, when fixed, allow polynomial-time solution methods. It may even be possible to find algorithms whose running time is superpolynomial only in some input parameters. The identification of such parameters and proofs of existence (or nonexistence) of such parameterized algorithms could further refine the classification in tractable and intractable problems made in this book.
In this book we focused on the exact optimization algorithms and only touched on approximation aspects. The development of approximation algorithms or the proof of nonexistence of such algorithms should be investigated in more detail.
As a third aspect we investigated whether existing solution methods for line planning, timetabling, and delay management can be modified to solve the problems when the passenger routing is integrated. Apart from specialized algorithms developed for restricted classes of instances, we applied two different general strategies to solve network problems with routing.
On the one hand, for all of the considered problems, existing integer programming formulations could be adapted to solve the problems with integrated routing. IP formulations for TTwR and DMwR could be obtained by the addition of multi-commodity flow constraints to IP formulations used in timetabling and delay management problems with fixed routing.
Also the IP formulation for scLPwR from [SS06] uses this type of constraints. To overcome the "unrealistic" behavior of this model in presence of capacity constraints, in cLPwR we added implicit shortest path constraints to the IP formulation from [SS06], implying that a line concept can only be chosen as a solution if it allows all passengers to travel on shortest paths in the corresponding routing network. A comparison of the solution and the running time of scLPwR and cLPwR would be interesting, but is beyond the scope of this book.
In TTwR, we made use of the fact that a passenger's travel time depends only on the timetable and the chosen virtual activity, i.e., the trains chosen to start and end the journey at origin and destination which led to a different integer programming approach, based on virtual activities instead of flows.
Having a closer look at the structure of the constraint matrices of the flowbased formulations for uLPwR, scLPwR, TTwR, and DMwR, we observe that they have almost a block diagonal structure. For example, in the flow-based IP formulation for TTwR in Sect. 3.7, we have a submatrix of timetabling variables and timetable feasibility constraints, j*OD*j submatrices of routing variables and routing constraints, and only 2j*OD*j-constraints connecting these blocks. Hence, using the Dantzig–Wolfe decomposition method could lead to a better running time.
Also for the other IP formulations developed in this book, it should be investigated whether decomposition techniques can be applied or whether there is some other structure that can be exploited when solving these problems.
As a second solution approach, we proposed an iterative heuristic that alternatingly calculates the routing and the network component required as a solution to general network problems with routing. The use of this heuristic is reasonable if an optimal solution to the considered network problem with respect to a given routing or a given network component can be found much faster than an optimal solution for the actual problem and if a feasible initial solution is at hand. The performance of the heuristic was theoretically analyzed for TTwR and the arc speed-up problem (ASU). For many classes of instances of ASU, a tight bound on the price of sequentiality could be proven. However, for networks with restricted size but unrestricted arc lengths, the price of sequentiality was only identified for instances with only one OD-pair and is still open in the general case.
In [Anh12] the iterative heuristic was tested and compared to the integer programming formulations for TTwR where it showed good performance. Of course, it would be interesting to test it also on line planning, delay management, and other network problems with routing.
The integration of the passenger routing in the optimization process leads to a more realistic estimation of passengers' behavior and hence to better solutions. However, compared to real-world situations, the public transportation models considered in this book are highly simplified, neglecting, e.g., aspects like the capacity of tracks and stations or periodicity requirement on timetables. Hence, many extensions to the considered problems are possible and would make the models more applicable in practice.
In this book we assumed that passengers aim at minimizing their travel time. However, other aspects like the number of transfers, the costs, and the reliability of the chosen route play an important role in practice and should be taken into account in further work. When restrictions on the train capacity are taken into account, new models for route choice and more sophisticated solution techniques are required. A first attempt to include selfish routing in line planning is made by investigating cLPwR in Sect. 2.6; however, alternative models and methods should be taken into account. Furthermore, in practice most passengers would only travel by public transportation if the offered routes are fast and convenient enough. Hence, public transportation models which include not only passengers' route choice but also variable demand would be an interesting extension to the questions investigated in this book.
In this book, we regarded the problems of line planning, timetabling, and delay management independently. However, when these planning steps are operated one after another, suboptimal solutions are obtained. For example, in line planning, the line concepts were evaluated using only rough estimations of the changing times at stations. It was neglected that the "real" changing times depend on the timetable. Hence, it is possible that a line concept which is optimal with respect to the objective function specified in line planning leads to a worse timetable than a "suboptimal" line concept. Furthermore, timetables that are good with respect to the objective functions defined in timetabling tend to be vulnerable to delays. Hence, it could be helpful to have the next planning steps in mind when doing line planning or delay management or even to integrate some of the planning steps.
Timetable d Source delays x Disposition timetable Change-and-Go Networks N D .V; A/ Change-and-go network (CGN) Vtravel Set of travel nodes Vorg/Vdest Set of origin nodes with elements *u*org/*v*dest Adrive/Atrans/Aorg/Adest Set of driving/transfer/origin/destination l.a/ Line corresponding to arc a ca Length of arc a 2 A nN =mN Number of nodes/arcs in the CGN N.*L*0 / D .V .L/; A.L0 // Routing network for line concept L0 N.R/ D .V .R/; A.R// Routing network for routing R Line Networks NL D .VL; AL/ Line network Atrans/Aorg/Adest Set of transfer/origin/destination arcs cl l0 Length of arc .l; l0 / 2 AL nNL /mNL Number of nodes/arcs in the line network NL.*L*0 / D .VL.L/; AL.L0 // Line-routing network for line concept L0 NL.R/ D .VL.R/; AL.R// Line-routing network for routing R l.a/ Line corresponding to arc a Event-Activity Networks N D .E; A/ Event-activity network (EAN) consisting of events E and activities *A E*dep=*E*arr Set of departure/arrival events *E*k dep=Ek arr Set of departure/arrival events for OD-pair .uk ; vk / 2 *OD A*drive=*A*wait=*A*change Driving, waiting, changing activities *N*op D .*E*op; *A*op/ Operational network with set of operational events *E*op and set of operational activities *A*op la=ua Lower/upper bound on operational activity a sa Slack time on operational activity a *E*org Set of origin events (in TTwR) with elements *u*org or u org k *E*0 org Set of origin events (in DMwR) with elements *u*org. / or u org k .k / *E*dest Set of destination events with elements *v*dest or *v*dest k *A*org Set of origin activities (in TTwR) *A*0 org Set of origin activities (in DMwR) *A*dest Set of destination activities *A*fix Set of maintained changing activities tr.e/=tr.a/ Train to which event e/activity a belongs *A*virt Virtual activities l down k /l upp k Length of shortest path from *u*org to *v*dest according to lower/upper bounds N ./ Routing network for timetable N .x/ Routing network for disposition timetable x
ij Path from node i to node j defined by a set of maintained
changing activities *A*fix
P *A*fix
OD Set of OD-pairs with elements .u; v/ or .uk ; vk / 2 S S with weight wuv=wk (in uLPwR/scLPwR/cLPwR/TTwR) or elements .u; v;/ or .uk ; vk ; k / 2 S S Z with weight wuv =wk (in DMwR)
Puv=Pk Path or line-route/train-route for OD-pair .u; v//.uk ; vk / (in uLPwR/scLPwR/cLPwR/TTwR)
Puv =Pk Path or ST-train-route for OD-pair .u; v;//.uk ; vk / (in
Ruv Routing for OD-pair .u; v/ with path weight wP uv for Puv 2 Ruv (in scLPwR/cLPwR)
R Routing or line-routing/train-routing/ST-train-routing
c.S;P/ Travel time along path or line-route/train-route/ST-train-route P for network component S (e.g., line concept, timetable, disposition timetable)
c.S; R/ Travel time for line-routing/train-routing/ST-train-routing R for network component S (e.g., line concept, timetable, disposition timetable)
OPT.R/ Set of network components (e.g., line concept, timetable, disposition timetable) for routing R
OPT.S/ Set of routings for network component S (e.g., line concept, timetable, disposition timetable)
˛ Speed-up factor
DMwR)
R Routing
N.a0 / Speed-up network for arc a0
P oSi .I //P oS.I / Price of sequentiality (in iteration i) for instance I
P oSi X .I //P oSstop X .I / (in iteration i) for instance I using strategy X P oS bi X .I //P oS bstop X .I / (in iteration i) for instance I using strategy X
P oSi .I//P oS.I/ Price of sequentiality (in iteration i) for the class of instances I
1993.
[BKZ97] M. R. Bussieck, P. Kreuzer, and U. T. Zimmermann. Optimal lines for railway systems. European Journal of Operational Research, 96(1):54–63, 1997.
[dDD98] R. de Vries, B. De Schutter, and B. De Moor. On max-algebraic models for transportation networks. In Proceedings of the International Workshop on Discrete Event Systems, pages 457–462, Cagliari, Italy, 1998.
[GGJC04] M. Gatto, B. Glaus, R. Jacob, L. Peeters, and P. Widmayer. Railway delay management: Exploring its algorithmic complexity. In Proc. 9th Scandinavian Workshop on Algorithm Theory (SWAT), volume 3111 of Lecture Notes in Computer Science, pages 199–211, 2004.
[GYW06] J. F. Guan, Hai Yang, and S.C. Wirasinghe. Simultaneous optimization of transit line configuration and passenger line assignment. Transportation Research Part B, 40(10):885–902, 2006.
[LM07b] C. Liebchen and R. H. Möhring. The modeling power of the periodic event scheduling problem: Railway timetables– and beyond. In F. Geraets, L. Kroon, A. Schöbel, D. Wagner, and C. D. Zaroliagis, editors, Algorithmic Methods for Railway Optimization, volume 4359 of Lecture Notes in Computer Science, pages 3–40. Springer Berlin Heidelberg, 2007.
[Roc84] R. T. Rockafellar. Network flows and monotropic optimization. John Wiley & Sons, Inc., 1984.
[SS10a] M. Schachtebeck and A. Schöbel. To wait or not to wait and who goes first? Delay management with priority decisions. Transportation Science, 44(3):307–321, 2010.
A
activity
artificial, 102
changing, 83
destination, 83
driving, 83
maintained changing, 124
maintained changing activities
corresponding to a routing, 129
operational, 83
origin, 83, 123
reasonable virtual, 100
virtual, 98
waiting, 83
activity weight, 86
acyclic, 7
all-wait strategy, 161
arc, 6
destination, 22, 27
driving, 21
origin, 22, 27
transfer, 21, 27
arc speed-up, 181, see ASU
ASU, 182
B
budget, 11
C
capacitated line planning, 10
capacitated line planning with routing, see
cLPwR
capacity, 15
CGN, 22
change-and-go network, see CGN
cLPwR, 19, 25
connected, 7
connected component, 7
cost
along a path, 16, 23, 29
of a line, see line cost
critical path method, 127
D
delay
in a node, 125
of a solution, 125
delay management, 113
delay management with fixed connections,
see DMwFC
delay management with routing,
see DMwR
digraph, 6
direct traveler approach, 11
Directed Two-Commodity Integral Flow, 32
disposition timetable, 115, 120, 124
corresponding to a routing, 129
corresponding to a set of maintained
activities, 128
DMwFC, 127
DMwR, 122, 125
driving time, 12, 16, 23
between two stations, 79
of a line, 16
E
EAN, 83
operational, 83, 124
edge, 5
directed, 6
226 Index
| event | for an OD-pair, 17 |
|---|---|
| arrival, 82 | linear network, 6 |
| departure, 82 | LN, 28 |
| destination, 82 | |
| operational, 82 | |
| origin, 82, 123 | N |
| event-activity network, see EAN | nested, 50 |
| network | |
| directed, 6 | |
| F | undirected, 6 |
| feasible, 74 | NLT property, 38, 61 |
| for a disposition timetable, 121, 122, 124 | no-line-twice property, see NLT property |
| for a line concept, 17, 24, 29 | no-train-twice property, see NTT property |
| for a line-routing, 17 for a network component, 170 |
node, 5 destination, 21 |
| for a routing, 24, 124, 170 | origin, 21 |
| for an ST-train-routing, 122 | travel, 21 |
| line concept, 15 | node-OD-pair, 167 |
| line-route, 16 | NTT property |
| timetable, 79, 85 | for a path, 137 |
| frequency, 9, 15 | for an instance, 146 |
| frequency setting, 9 | number of passengers, 16, 121 |
| using a line-route, 17 | |
| using a path, 24, 168 | |
| G | |
| graph | |
| directed, 6 | O |
| undirected, 5 | OD-NLT-property, 57 |
| OD-pair, 16, 121 | |
| operational, 97 | |
| H | OD-pairs, 11 |
| Hamiltonian Path, 131 | origin-destination pair, see OD-pair |
| Hitting Set, 36 | |
| P | |
| L | Partition, 41 |
| length | passenger weight, see number of passengers |
| of a path, 7 | path, 6 |
| line, 9, 15 | directed, 6 |
| bi-directional, 15 | for a node-OD-pair, 168 |
| one-directional, 15 | for an operational OD-pair, 97 |
| line concept, 15 | undirected, 6 |
| corresponding to a routing, 30, 31 | planned connections, 79 |
| line connectivity problem, 35 | predecessor, 7 |
| line cost, 10 | direct, 7 |
| line driving time function, 10 | price of sequentiality, 175 |
| line network, see LN | PTN, 8 |
| line planning, 9 | public transportation network, see PTN |
| cost-oriented, 11 | |
| passenger-oriented, 11 | |
| line pool, 9 line routing network, 29 |
R RCSP, see Resource-Constrained Shortest Path |
| line-route, 16 | Resource-Constrained Shortest Path, 39 |
| line-routing, 17 | routing, 24, 29, 85, 97, 124, 168, 181 |
Index 227
| corresponding to a disposition timetable, | successor, 7 |
|---|---|
| 127 | direct, 7 |
| corresponding to a line concept, 30 | |
| corresponding to a set of maintained | |
| changing activities, 128 | T |
| corresponding to a timetable, 88 | timetable, 74, 79 |
| for a node-OD-pair, 168 | corresponding to a routing, 87 |
| for an OD-pair, 24 | timetabling, 73 |
| routing network, 24, 84, 125 | aperiodic, 73 |
| periodic, 73 | |
| timetabling with routing, see TTwR | |
| S | timetabling with routing between events, see |
| scLPwR, 18, 25 | TTwRE |
| Set Cover, 88 | train, 10, 15, 79 |
| shortest path line-routing | train-route, 80 |
| for a line concept, 19 | train-routing, 81 |
| shortest path problem, 7 | transfer penalty, 12, 16 |
| all pairs, 7 | station-independent, 27 |
| shortest-path routing, 7 for a line concept, 24 |
transfer time, 12, 16, 23, 26 along a path, 28 |
| simple, 6 | transportation mode, 10 |
| simple capacitated line planning with routing, | travel time, 12, 17, 23, 25, 81, 85, 86, 122, 124 |
| see scLPwR, see scLPwR | along a line-route, 16 |
| simplified timetabling problem, see sTT | along a path, 80, 85, 97, 121 |
| slack time, 74, 84 | nominal, 125 |
| solution, 5 | tree, 8 |
| corresponding to a disposition timetable, | TTwR, 81, 85, 100 |
| 127 | TTwRE, 97 |
| corresponding to a line concept, 30 | |
| corresponding to a routing, 30, 31, 87, 129 | |
| corresponding to a set of maintained | U |
| changing activities, 128 | uLPwR, 17, 25, 29 |
| corresponding to a timetable, 88 | uncapacitated line planning, 10 |
| source delay, 114, 120 | uncapacitated line planning with routing, see |
| speed-up factor, 181 | uLPwR |
| speed-up network, 182 | |
| ST-train-route, 121 | |
| ST-train-routing, 122 | V |
| start time, 116, 121 | vertex, 5 |
| Steiner Tree, 61 | |
| sTT, 86 | |
| subgraph, 6 | W |
| induced, 6 | wait-depart decision, 113, 122 |
| subnetwork, 6 | waiting time |
| induced, 6 | at a station, 79 |