informs Vol. 42, No. 1, February 2008, pp. 57–69 issn 0041-1655 eissn 1526-5447 08 4201 0057
®
doi 10.1287/trsc.1070.0200 © 2008 INFORMS
Optimizing Timetable Synchronization for Rail Mass Transit Rachel C. W. Wong
Systems Engineering and Engineering Management Department, The Chinese University of Hong Kong, Shatin, New Territories, Hong Kong,
[email protected]
Tony W. Y. Yuen
Planning and Development Department, MTR Corporation Limited, Hong Kong,
[email protected]
Kwok Wah Fung
Operations Department, MTR Corporation Limited, Hong Kong,
[email protected]
Janny M. Y. Leung
Systems Engineering and Engineering Management Department, The Chinese University of Hong Kong, Shatin, New Territories, Hong Kong,
[email protected]
I
n most urban public transit rail systems, passengers may need to make several interchanges between different lines to reach their destination. The design of coordinated timetables that enable smooth interchanges with minimal delay for all passengers is a very difficult task. This paper presents a mixed-integer-programming optimization model for this schedule synchronization problem for nonperiodic timetables that minimizes the interchange waiting times of all passengers. A novelty in our formulation is the use of binary variables that enable the correct representation of the waiting times to the “next available” train at the interchange stations. By adjusting trains’ run times and station dwell times during their trips and their dispatch times, turnaround times at the terminals, and headways at the stations, our model can construct high-quality timetables that minimize transfer waiting times. We also discuss an optimization-based heuristic for the model. We have tested our algorithm for the Mass Transit Railway (MTR) system in Hong Kong, which runs six railway lines with many cross-platform interchange stations. Preliminary numerical results indicate that our approach improves the synchronization significantly compared with the current practice of using fixed headways and trip times. We also explore the trade-offs among different operational parameters and flexibility and their impact on overall passenger waiting times. Key words: mass transit; rail; timetabling; scheduling; transfers History: Received: February 2005; revisions received: September 2005, March 2006; accepted: March 2007.
1.
Introduction
Coordination and synchronization of the schedule is achieved by adjusting the dispatch time, run times and station dwell times of each train. Preliminary results indicate that the optimized timetables generated using our model significantly improve the synchronization over the current timetables in use. This paper is organized as follows. Section 2 gives a brief literature review. Section 3 explains the model assumptions and describes the MIP formulation. An optimization-based heuristic for the model is presented in §4. Section 5 discusses several case studies on the Mass Transit Railway (MTR) system in Hong Kong. In the scenarios explored, run times, dwell times, and dispatch times may be changed to different degrees. The impact on the reduction of transfer waiting times will be illustrated. Finally, §6 concludes with a summary of our findings and suggestions for further research.
Nowadays, urban mass transit systems usually do not provide point-to-point transportation service. Passengers are often required to interchange within a multimodal transportation network to complete a trip. During the transfer, passengers have nothing to do but wait for the connecting vehicle. Mohring, Schroeter, and Wiboonchuikula (1987) found that passengers perceived their waiting times to be almost twice what it actually is. Well-designed timetables, with good coordination between vehicles so that passengers can enjoy “immediate” transfer, are much hoped for by passengers and are a major service goal of transit systems. We propose a mixed-integer-programming (MIP) optimization model for the timetable synchronization problem (TTSP). Our model minimizes transfer waiting times of all passengers in a railway system. 57
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit
58
2.
Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
Brief Literature Review
There is a wealth of literature on timetabling and scheduling problems for public transport. An overview on the many aspects and issues involved is given by Bussieck, Winter, and Zimmermann (1997). For a synopsis of recent research, the reader is referred to Voß and Daduna (2001). The brief literature review here will focus on research related to timetabling and scheduling for transfer synchronization. Klemt and Stemme (1988) proposed a quadratic programming model for timetable synchronization that minimizes total transfer times. Domschke (1989) proposed several heuristics and a branch-and-bound (B&B) procedure for this problem. Daduna and Voß (1995) developed a tabu search algorithm and reported computation results on data for several German cities. Bookbinder and Désilets (1992) also considered a quadratic semi-assignment model that minimizes the mean disutility of transfers for bus trips. Although they computed the mean disutility using the probability distributions of the train arrival and departure times, their timetabling optimization is a deterministic model. The models in these three papers are periodic (by definition) because all headways, run times, and dwell times are fixed, and only the relative dispatch times among the different terminals can be varied. When operational parameters (run times, headways, etc.) are not fixed, the periodicity of a timetable has to be explicitly enforced by the model. Nachtigall and Voget (1996) applied a genetic algorithm for designing a periodic schedule; in that model, the number of passengers transferring between every pair of trains is assumed to be known. Nachtigall and Voget (1997) extended the genetic algorithm approach to periodic timetables with variable run times and associated track-building costs. Serafini and Ukovich (1989) introduced the periodic event scheduling problem (PESP) framework for scheduling periodic activities. Odijk (1996) applied a cut-generation algorithm for PESP to schedule trains at a Dutch railway station. Using periodic networks, Nachtigall (1996) investigated the periodic scheduling problem when there is a service priority among the interchange stations. Liebchen and Möhring (2002) used the PESP framework to construct timetables for the Berlin underground with consideration of many criteria, including maximizing the number of crosswise correspondences (the meeting frequency of feeder vehicles and connecting vehicles). The extension of the PESP framework to integrate line planning and vehicle scheduling with timetabling is discussed in Liebchen and Möhring (2004). Other researchers have considered nonperiodic timetables. Ceder and Tal (1999) proposed an MIP model for timetable synchronization for buses that
maximized the number of simultaneous arrivals of buses at the interchange stops and developed some heuristic solution methods. Pedersen, Jansen, and Nielsen (2002) applied tabu search to adjust the dispatching times of trains on a route to synchronize the timetable, but they considered only timetables with constant headways (see also Pedersen 2003). In actual operations, trains and buses do not run exactly on schedule. Knoppers and Muller (1995) investigated the expected waiting time at an interchange station and showed that coordination is only worthwhile when the arrival time of the feeder train does not fluctuate too much relative to the headway of the connecting train. Several researchers have considered the dispatch issue of synchronization control (that is, whether connecting trains should be held when the feeder train is delayed, which may mean additional delay for passengers on the connecting train and propagation of the disruption to the schedule downstream). Adamski (1995) analysed the probability model for waiting times of Bookbinder and Désilets (1992) and discussed a dynamic control model for dispatch control. Goverde (1998) introduced the concept of primary and secondary waiting times: The waiting times of originating and through passengers on the current transfer station, as well as the waiting times on subsequent stations resulting from the optimization in the service networks were considered. He formulated a model for computing the delay propagation in a service network as a discrete event dynamic system using max-plus linear algebra. Vansteenwegen and Van Oudheusden (2006) proposed a linear programming model and showed by simulation that their new timetable is better than the current timetable in the Belgian railway network. Considering that vehicles always suffer delays, they calculated the ideal buffer times for each connection, which were then used in a linear program to construct a new periodic timetable. They predefined all the connection patterns between feeder trains and connecting trains. In contrast, in our model, the connections are flexible and are part of the optimization. Chowdhury and Chien (2001) considered real-time dynamic dispatch of vehicles at a transfer station to minimize the total costs of vehicle holding, connection delay, and missed connections. Suhl, Biederbick, and Kliewer (2001) evaluated various dispatching strategies by simulation and presented an optimization model where, based on the existing timetable, arrival times and departure times of trains would be adjusted upward. The objective was to minimize prolonged trip times and transfer waiting times, but the total transfer waiting times are only approximated in their model. Although dynamic dispatching is important for real-time operations, the focus of our paper is on
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
pre-planning, the off-line development of a synchronized nonperiodic timetable so that planned dispatch of trains minimizes total transfer waiting times.
3.
The Time-Table Synchronization Problem (TTSP)
We present a MIP model for timetabling that minimizes the total transfer time by adjusting the run times, dwell times, dispatch times, and headways for all the trains within the planning horizon. This problem is NP-hard. A special case is the timetable construction problem (TCP), studied by Odijk (1994, 1996), where the arrivals and departures occur periodically; that is, the timetable repeats itself each period. Odijk (1994) proved that the TCP is NP-complete by reduction from the vertex-coloring problem. The special case of fixed run times, fixed dwell times, and fixed headway can also be modeled as a quadratic semi-assignment problem (see Klemt and Stemme 1988), which is equivalent to the maximum edge-weighted clique problem in complete multipartite graphs, shown to be NP-complete by Cameron (1991; see also Désilets 1989). 3.1. Underlying Assumptions In actual operations, passengers move at various speeds, and not all passengers catch the transfers intended. Because ours is a planning model, we make the following simplifying assumptions regarding passenger flows. First, we assume that the transfer time is known and fixed for all transfer passengers. The transfer time is the time for a passenger to get off the feeder train and walk across the interchange platform to the boarding area for the connecting train. The transfer times used in our case studies are determined by surveys conducted by the MTR Corporation Limited in Hong Kong. Second, the path choices of passengers are known and fixed. When there are alternative ways in the system to get to a destination, not all passengers will choose the same path. Fung, Tong, and Wong (2004) predicted the passenger flow for the MTR network by four criteria: in-vehicle time, waiting time, walking time, and the number of transfers (interchanges). By setting different weights for these four criteria, passengers’ path choices (and thus the overall passenger flows) can be predicted. In our model, for simplification, we assume that passengers choose their paths in the system by only two criteria: the number of interchanges and the number of stops on the trip. We assume passengers prefer not to transfer, so they choose a path with as few interchanges as possible. When two alternative paths entail the same number of interchanges, passengers will choose the one
59 with fewer stops. This assumption allows us to compute the number of transfer passengers at each station based on origin-destination counts. Other more accurate methods can be used to calculate the patronage; the structure of our mathematical model is not affected; only the coefficients in the objective function change. Third, we assume that passenger flows are evenly distributed within a short time period. It is difficult to count the exact number of passengers getting on a train. In our case studies, the origin-destination matrix given by the MTR Corporation is in 15-minute intervals. We divide the 15-minute period by the number of departing trains in that time interval to get the “weight” of passenger flow at the interchange station. Our model then minimizes the weighted sum of transfer waiting times for the entire system. Fourth, we assume the capacity of the trains is sufficient at any time to receive all passengers who want to enter that train. Obviously, infinite capacity is unrealistic, especially for rush-hour traffic in Hong Kong, but this assumption can substantially reduce the complexity of the model. With fixed headways, there is natural interleaving of feeder and connecting trains, thus bounding the number of passengers transferring into each connecting train and smoothing out congestion. With flexible headways, our model allows a connecting train to receive transfer passengers from more than one feeder train, and the applicability of the capacity assumption becomes more of a concern. 3.2. Modelling Transfer Waiting Times As noted in the previous section, some transfer passengers may prefer to skip trains and board later ones. However, the transfer waiting time that we count is the time to the first possible train only. In other words, we assume all passengers get on the next connecting train. To capture the value of this waiting time tq in our model, we define variable wt q to represent the “waiting time” of passengers transferring from the qth train on Route t to the q th train on Route t . Our model incorporates constraints so that the waiting times have the correct interpretation. A route refers to a railway line together with its direction; for example, in the MTR system, route TWD refers to the Tsuen Wan Line in the downtrack direction. Figure 1 shows the sequence of events at an interchange station. The arrow above the timeline indicates the arrival time of the qth feeder train on Route t to the station. The arrows below the timeline indicate the departure time of the q − 3th, q − 2th q + 1th trains from interchange station on Route t . The dashed arrows represent the “transfer” of passengers from the qth feeder train on Route t to Route t . Common sense dictates that passengers from the qth feeder train cannot get on the
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit
60
Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
q
tq
wt′(q′ +1) = 0
tq
wt′(q′ –3) = 0 Arrival of qth train on Route t
ett′
tq
wt′q′ ≥ 0
Time
tq
wt′(q′ –2) = 0
q′ – 3 Figure 1
wt′(q′ –1) = 0
tq
Departure of trains on Route t ′
q′ – 2
q′– 1
q′ +1
q′
Definition of Transfer Waiting Times
q − 3rd or the q − 2nd train, which leave before the qth feeder train arrives. Thus, the waiting times of those connections are set (via the model constraints) to zero. The transfer time, ett , is the time for passengers to walk across the interchange platform when transferring from Route t to Route t . Therefore, passengers from the qth feeder train still cannot get on the q − 1st train; the corresponding waiting time is also enforced by the constraints to be zero. As mentioned, our model considers only the transfer waiting times for passengers getting on the next possible connecting train; therefore the waiting times for passengers transferring from the qth feeder train to the q + 1st and later connecting trains are also set to zero via the constraints of the model. Thus, only the waiting time for the connection between the qth feeder train and the q th connecting train may be nonzero, and our model accurately captures the appropriate waiting times in the objective function.
transfer passenger counts and the standard times for crossing the platform are known for all interchange stations. Let H be the length of the time horizon under consideration. For each Route t ∈ T , Nt is the number of trains on Route t to be scheduled within the planning horizon. Other parameters will be introduced as the relevant constraints are discussed.
3.3. The MIP Model for TTSP Here we present the MIP optimization model for the TTSP. We first define the following sets and parameters. T is the set of routes. By a route, t ∈ T , we mean a line together with its direction (i.e., up- or downtrack). The set of mt + 1 stations on Route t is denoted by St = s0t s1t smt t . The set of route pairs with passenger groups requiring transfers is denoted by X ⊆ T × T For t t ∈ X we assume that the interchange station for transferring from Route t to Route t is uniquely defined (which is, in fact, true for the MTR system in Hong Kong). Let ett be the standard time for passengers to walk across the interchange platform when transferring from Route t to Route t at the interchange station. The number of passengers transferring from the qth train on Route t tq to a train on Route t is denoted by ct . The assumption on the uniqueness of the interchange station is for notational simplicity; it is not necessary as long as the
For each interchange route pair t t ∈ X, and q = 1 2 Nt , q = 1 2 Nt , we define
3.3.1. Decision Variables. The variables in the model are defined as follows. All variables are nonnegative. For each Route t ∈ T , and for each Station sjt ∈ St and q = 1 2 Nt , we define tq
Aj = Arrival time of the qth train on Route t at Station sjt tq Lj = Departure time of the qth train on Route t from Station sjt tq Rj = Run time of the qth train on Route t from Stat tion sj−1 to Station sjt tq Dj = Dwell time of the qth train on Route t at Station sjt .
tq
wt q = Waiting time of passengers who transfer from the qth train on Route t to the q th train on Route t at the interchange station tq t q = 1 if the qth train on Route t arrives early enough that passengers can transfer to the q th train on Route t ; 0 otherwise. 3.3.2. Objective. The objective of the TTSP is to minimize the total passenger transfer waiting times: Min
Nt Nt t t ∈X
q=1 q =1
tq
tq
ct wt q tq
(1)
As mentioned, the only nonzero wt q terms capture the appropriate waiting times for the corresponding group of transfer passengers. This is enforced by constraints (7) and (8), described later.
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit
61
Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
3.3.3. Constraints. For each Route t ∈ T , contq straints (2) and (3) track the arrival time Aj and tq departure time Lj of the qth train on Route t at/from t Station sj ∈ St for q = 1 2 Nt : tq
tq
Aj = L0 +
j k=1
tq
tq
Rk +
tq
j−1 k=1
tq
Dk
(2)
tq
Lj = Aj + Dj
(3)
Station 0 is the originating terminal of Route t. To fulfil the service requirements, there are minimum and maximum headways (interdeparture times of consecutive trains) at each station, denoted htj and h¯ tj , respectively. Thus, for each t ∈ T , each sjt ∈ St , and q = 1 2 Nt : tq
t q−1
htj ≤ Lj − Lj
≤ h¯ tj
(4)
Similarly, there are upper/lower bounds on the total trip times ( y t /y¯ t ) and turnaround times ( zt /z¯t ) for each route. When the qth train ends its trip at the destination terminal of Route t, it “turns around” to start a new trip from that terminal as the origin terminal, to become the qth train of Route , running on the same line but in the opposite direction of the previous trip. Currently, our model assumes that this equipment correspondence is preassigned, denoted by the function . This equipment preassignment precludes the potential of reducing or increasing the number of trains considered within the planning horizon by lengthening or shortening turnover and/or dwell times. Thus, for each Route t ∈ T , and for q = 1 2 Nt : tq
¯t y t ≤ Atq mt − L0 ≤ y tq
zt ≤ L 0
(5)
¯t − Atq mt ≤ z
(6)
Stations 0 and mt denote the origin and destination terminal stations on Route t. If q > N , there would still be a constraint (6), except that the value tq of L0 (originally beyond the horizon H) would be a constant instead of a decision variable. Essentially, the model handles the “boundary problem” by freezing the schedule that is just beyond the time horizon. All constraints (e.g., on run times, dwell times, turnaround times, etc.) that involve arrivals/ departures just beyond the time horizon are also included, with the values of variables for events beyond the time horizon fixed as constants. To enable the correct representation of the waiting times for transfer to the next available train at the interchange stations, we introduce binary varitq able t q , defined by the following constraints for all t t ∈ X, and q = 1 2 Nt , q = 1 2 Nt : tq
t q
tq
tq
Mt q − 1 ≤ Li − Ai + ett ≤ Mt q
(7)
where M is a large positive number (a value no smaller than H + max ett suffices) and i and i denote the (unique) interchange station with respect to Routes t and t , respectively. The earliest that passengers arriving at the interchange station from the qth feeder train on Route t can arrive at the boarding tq platform for the connecting train is Ai + ett . Thus, tq constraint (7) ensures that t q is equal to 1 if and only if the qth feeder train arrives early enough and the q th train on the connecting route departs late enough, so that passengers are able to make the transfer connection between these two trains. tq With the binary variables t q so defined, we can capture the appropriate transfer waiting time by using constraints (8), defined for all t t ∈ X and q = 1 2 Nt , q = 1 2 Nt : t q
tq
tq
tq
Lj − Aj + ett − Mt q −1 ≤ wt q
(8)
When the departure of the q th train is earlier than tq Ai + ett , the left-hand side is negative and the minimization objective will force the right-hand side (the transfer waiting time from the qth train to the q th tq train) to be zero. On the other hand, if t q −1 is equal to one (indicating that passengers from the qth train are able to get on the q − 1st or earlier trains, and there is no one waiting from the qth train to the q th train); in this case, the left-hand side is also negative, tq and the minimization objective will also set wt q to tq tq zero. Therefore, wt q is positive only when t q −1 = 0 t q
tq
and Lj − Aj + ett > 0, when the q th train is the first train that passengers from the qth train can catch. For the case illustrated in Figure 1, the q th connecting train is the first train that passengers from the tq qth train feeder train can get on, then t p = 0 for tq p ≤ q − 1, and t p = 1 for p ≥ q by constraint (7). With constraints (8) and the minimizing objective, the transfer waiting time for feeder train q is correctly set t q tq tq to Lj − Aj + ett , and wt p = 0 for p ≤ q − 1 and p ≥ q . Thus, constraints (7) and (8) ensure that the appropriate transfer waiting time is captured in the objective of the model. This problem of identifying the correct train connections for each individual train arises in nonperiodic timetabling when run times and dwell times are variable, because the interleaving of train arrivals and departures at interchange stations cannot be predetermined from dispatch times from the terminals. As far as we know, our model is the first MIP model that accurately represents these interchange waiting times when the train connections are not predefined. 3.3.4. Bounds. Operational requirements also set limits on run times and dwell times of the trains.
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit
62
Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
Thus, for all Routes t ∈ T , Stations sjt ∈ St and q = 1 2 Nt : tq rj
tq ≤ Rj
tq ≤ r¯j
(9)
tq dj
tq ≤ Dj
tq ≤ d¯j
(10)
tq tq tq tq where rj /r¯j and dj /d¯j are the allowable minimum/maximum run times and dwell times of trains on Route t running to and staying at Station sjt , respectively. For each Route t ∈ T the constraint: t 0 ≤ AtN mt ≤ H
(11)
ensures that all the trains complete their journeys within the planning horizon H The Nt th train is the last train on Route t during the planning horizon. There are also upper limits on the transfer waiting times set by service goals for each interchange station. Thus, for each t t ∈ X and q = 1 2 Nt , q = 1 2 Nt : tq tq t (12) 0 ≤ wt q ≤ w tq
t is the allowable maximum transfer waiting where w time for passengers transferring from the qth feeder train on Route t to Route t . Constraints (12) may be modelled as soft constraints if the service targets are such that the feasibility of the schedule cannot be attained. 3.4.
Other Operational Constraints
3.4.1. Regularity of Dwell Times. Our model allows dwell times for each train at each station to be adjusted individually; thus, dwell times at the same station may differ from train to train. For ease of operations and concern for customers’ perception, it may be desirable that the variation of the dwell times be restricted to a limited range, say d. To increase the regularity of dwell times, we could replace bounds (10) by the following two sets of constraints: For all t ∈ T , sjt ∈ St , q = 1 2 Nt :
t − d ≤ Djtq ≤ D
t + d D j j 2 2
(13)
For all t ∈ T , sjt ∈ St : djt +
d t d ≤ Dj ≤ d¯jt − 2 2
(14)
where djt and d¯jt are the allowable minimum and maximum dwell times as defined earlier. We introduce
jt to represent the midpoint of dwell the variable D times of all trains on Route t at Station sjt . Constraints (13) restrict the dwell time of each train to vary from the midpoint by no more than d/2 seconds. Constraints (14) ensures that the midpoint of dwell times,
~t Dj
~ Djt
t
dj
~t Dj
d/2 Figure 2
~t Dj
t
dj
d/2 Possible Range of Dwell Times at Each Station
jt , is not too close to the lower/upper bounds so that D all dwell times are still within the prescribed range &djt d¯jt '. Figure 2 shows the relationship graphically. When d is zero, constraint (13) requires that all trains stopping at station j have the same dwell time, but this common dwell time is still variable (within the bounds of constraint (14)), to be optimized by the model. 3.4.2. Regularity of Headways. Similar to the above requirement for dwell times, if we want to limit the variation of the headways at each station, Constraint (4) should be replaced by the following constraints: For all t ∈ T , sjt ∈ St , q = 1 2 Nt : tq−1
t − h ≤ Ltq
t + h H ≤H j − Lj j j 2 2
(15)
For all t ∈ T , sjt ∈ St : htj +
h
t ≤ h¯ t − h ≤H j j 2 2
(16)
where htj and h¯ tj are the allowable minimum and max jt is a variimum headways as defined previously. H able representing the midpoint of the range of values for headways between trains at Station sjt ; h is the maximum allowable headway range. When h is set to zero, these constraints impose a constant headway requirement at that station. 3.4.3. Collision Avoidance During Startup Periods. During the morning peak hours, more trains are needed to accommodate traffic in the center of town. Therefore, additional trains are operated that depart from nonterminal stations. Because run times and dwell times may vary among trains, collision with trains running on the same track has to be avoided. Let Ts be the set of routes for these special trains. Let B ⊆ T ∪ Ts × T ∪ Ts be the set of route pairs that tj share part of the same track. For t t ∈ B, let bt j be the minimum time gap required between the arrival of a train on Route t at Station sjt and the departure of a train on Route t at Station sjt (here, stations sjt and sjt “coincide,” that is, refer to the same physical station). For all t t ∈ B, Stations j and j , which “coincide” on Routes t and t , and q = 1 2 Nt and
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit
63
Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
q = 1 2 Nt , we define binary variables: tqj *t q j
= 1 if the qth train on Route t arrives at Statj tion sjt at least bt j seconds after the q th train on Route t departs from Station sjt ; 0, otherwise.
ISU 28 αTWU31
Collision avoidance is accomplished by the following constraints for t t ∈ B and q = 1 Nt , q = 1 Nt : tqj
tq
t q
tj
tqj
M*t q j − 1 ≤ Aj − Lj + bt j ≤ M*t q j tq
tj
t q
tqj
Lj + bt j − Aj ≤ M*t q j
(17) (18)
Figure 3
tqj *t q j .
Constraints (17) defines the variables Constraints (18) ensure that if the qth train does not follow tqj the q th train at the common station, that is, *t q j = 0, then its departure must precede the arrival of train q by the required clearance time.
4.
Optimization-Based Heuristic Solution Approach
There are 154 trains dispatched in a one-hour schedule for the MTR system in Hong Kong. Our TTSP model formulation for this data set has more than 40,000 constraints and 30,000 variables, of which about 10,000 are binary variables. In our initial run using a standard B&B approach (in CPLEX 6.5), even getting a feasible solution took three days and nights! To reduce the computation time, particularly for larger problems, we developed an optimizationbased heuristic method (OHM). A reasonable heuristic approach would be to fix many of the binary variables and then to solve the resultant restricted MIP. We first tried rounding the binary variables up or down according to their values in the optimal LP-relaxation solution; unfortunately, this turned out to be too simplistic, as a comparison between some of the optimal values of the LP-relaxation and the MIP indicates in Figure 3. One intuitive explanation is that the deftq initional constraints (7) for t q are not sufficiently tq “tight” when the integrality of the t q s are relaxed. tq tq tq When Lj − Aj + ett ≤ 0, t q “should” be zero but may still be a relatively large (positive) fractional value in the solution to the LP-relaxation. By modifying the objective function of the MIP formulation for the TTSP to include the binary variables, the optimal values of the LP-relaxation became better predictors of the optimal solution for the MIP, as illustrated in tq Figure 4. Although the inclusion of the t q ’s in the objective has no practical interpretation, it achieves a nice computational purpose. The key aspects of our OHM are the modification of the original MIP and the “prediction” or fixing of
x_ISU28_TWU28 x_ISU28_TWU29 x_ISU28_TWU30 x_ISU28_TWU31 x_ISU28_TWU32 x_ISU28_TWU33 x_ISU28_TWU34 x_ISU28_TWU35 x_ISU28_TWU36 x_ISU28_TWU37 x_ISU28_TWU38 : x_ISU28_TWU59 x_ISU28_TWU60
0.957768 0.966817 0.975867 0.984917 0.994867 0.995753 0 0.011689 0.020739 0.029789 0.038839 0.997311 0.998316
x_ISU28_TWU28 x_ISU28_TWU29 x_ISU28_TWU30 x_ISU28_TW31 x_ISU28_TW32 x_ISU28_TWU33 x_ISU28_TWU34 x_ISU28_TWU35 x_ISU28_TWU36 x_ISU28_TWU37 x_ISU28_TWU38 : x_ISU28_TWU59 x_ISU28_TWU60
0 0 0 0 0 0 0 1 1 1 1 1 1
Comparison of Optimal Values for Some Binary Variables in the LP-Relaxation and MIP
the binary variables. We first solve the LP-relaxation of the TTSP with the objective modified to: Min
Nt Nt
tq
t t ∈X q=1 q =1
tq
ct wt q +
Nt Nt t t ∈X q=1 q =1
tq
t q
(19)
Based on the optimal solution to the LP-relaxation, the nonzero binary variables are rounded up. A restricted MIP (with the original objective function) is then solved with most of the binary variables fixed to their rounded values. If we fix all the binary variables, the restricted MIP may be infeasible. If so, we then iteratively unfix some of the fixed binary variables until the problem becomes feasible (and hopefully near optimal!). The binary variables are naturally sequenced in ascending order of the train sequence, so binary variables around the “borderline” of fixed values are released in each iteration. The flow chart for OHM is shown in Figure 5. 4.1. Performance of the OHM In our computational experience, OHM fixed about 87% of binary variables. In one instance (using CPLEX 6.5), the time to obtain a solution using the OHM is x_ISU28_TWU28 x_ISU28_TWU29
0 0
x_ISU28_TWU30 x_ISU28_TWU31 x_ISU28_TWU32 x_ISU28_TWU33 x_ISU28_TWU34 x_ISU28_TWU35 x_ISU28_TWU36 x_ISU28_TWU37 x_ISU28_TWU38 : x_ISU28_TWU59 x_ISU28_TWU60
0 0 0 0 0 0.014706 0.023756 0.032805 0.041855
Figure 4
0.238311 0.24736
x_ISU28_TWU28 x_ISU28_TWU29 x_ISU28_TWU30 x_ISU28_TWU31 x_ISU28_TWU32 x_ISU28_TWU33 x_ISU28_TWU34 x_ISU28_TWU35 x_ISU28_TWU36 x_ISU28_TWU37 x_ISU28_TWU38 : x_ISU28_TWU59 x_ISU28_TWU60
0 0 0 0 0 0 0 1 1 1 1 1 1
Comparison Between the LP-Relaxation and MIP with the Modified Objective
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit
64
Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
Original MIP formulation
Modified MIP
LPrelaxation
Restricted MIP (MIP’)
Linear programming (LP)
Feasible?
Yes
“Optimal” Schedule Optimal schedule
No
Release some of the predictions
Figure 5
Fractional value of the “binary” variables
“Predict”some of the value of the binary variables Solve by CPLEX
Solve by CPLEX
Flow Chart for the OHM
reduced to only 30 minutes, compared to 19 hours using the standard B&B approach. The OHM reduces the solution time substantially in most of our computational experiments. The following examples illustrate the performance of the heuristic in the solution time and quality. Computation for these examples is done on a PC using CPLEX 9.1, and the solution values are rescaled so that the optimal value is 10,000. For the first set of problems that involve nonrushhour scenarios (see Table 1), OHM finds all the true optimal solutions. In most cases, the optimal solutions were found earlier in the B&B tree, and the overall computational times and sizes of the B&B tree were smaller than using the corresponding full standard MIP model. Another indication of the computational savings is that the number of cuts generated and applied by CPLEX in the solution process is much fewer for the OHM than for the full standard model. With the default settings, CPLEX ran out of memory in solving a second set of more difficult problems Table 1
Performance of the OHM (First Test Set)
Problem Full standard model Optimal solution Optimal solution first found at node Value of first feasible MIP solution Solution time (seconds) Number of nodes in B&B tree Cuts applied OHM Optimal solution Optimal solution first found at node Value of first feasible MIP solution Solution time (seconds) Number of nodes in B&B tree Cuts applied
A1
A2
A3
A4
10000 486
10000 390
10000 40
10000 100
15853
13962
15871
10933
5492 1092
3501 1046
178 41
131 1491
5825
5867
6105
1251
10000 190
10000 790
10000 20
10000 45
10939
13214
15871
12976
4822 1257
2367 796
125 21
31 214
449
496
728
329
Table 2
Performance of the OHM (Second Test Set)
Problem
B1
B2
B3
C
10000 8488
10000 86726
10000 810
? ?
Yes
Yes
Yes
No/5.98%
11028
12182
11858
10,678
60 14401
1903 89496
3.28 1558
6,419+ 124,040+
10000 5980
10000 3510
10000 810
10,000 73,810
11028
11489
11858
10,401
57 13999
3463 150145
2.96 1437
41,561 835,418
Full standard model Optimal solution Optimal solution first found at node Optimal?/Final duality gap Value of first feasible MIP solution Solution time (seconds) Number of nodes in B&B tree OHM Optimal solution Optimal solution first found at node Value of first feasible MIP solution Solution time (seconds) Number of nodes in B&B tree +
Out of memory.
(B1, B2, B3) for rush-hour scenarios; these problems were solved to optimality using the presolve option of CPLEX 9.1. See Table 2. Again the OHM found the true optimal solutions in all cases, although the savings in computational time were not as significant; in some cases, the heuristic took longer in verifying optimality. For a large example (Problem C in Table 2) involving all six MTR lines during rush hour, CPLEX ran out of memory (even with the presolve option) for the full standard MIP model, terminating with a solution of value 10,108, with 72,950 nodes unexplored. The OHM solved to optimality with a solution that is within 5.2% of the lower bound from the solution of the full standard model. We also reran the full model with the added constraint that the objective value has to be at least the “optimal” solution value from the heuristic, but the program ran out of memory again without finding a feasible MIP solution after 448,260 B&B nodes, with 256,831 nodes unexplored. 4.2. Computational and Modelling Issues By aggregating the run times and dwell times between interchange stations, the problem size can be reduced. For the MTR case studies, the aggregate model reduces the number of stations from 43 to 13 and the number of continuous variables by about onethird, but the number of binary variables remains unchanged. The number of constraints (2), (3), (4), (9), and (10) are reduced by about one-third. Although this aggregation may not reduce the size of the B&B tree, there may be a speedup in overall computational time because the LP-relaxation to be solved
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
at each node is much smaller. Of course, after the aggregate problem is solved, another optimization is needed to determine the detailed run times and dwell times for each train for all the stations between the interchanges. A major novelty of our model is that it considers headways not as fixed but as decision variables. Thus, this model can be applied to time intervals (e.g., during the transition between rush hour and nonrush hour) where the timetable cannot be periodic. Allowing irregular headways means that it is possible for two or more feeder trains to meet the same connecting train. The additional variables and constraints needed to identify the train connection correspondences make our problem more complex (and more time consuming to solve) than periodic schedules with fixed headways. Nonetheless, being able to quantify the improvement in overall waiting time (compared to operating with fixed headways) was considered by MTR to be a valuable insight from our case studies.
5.
Case Studies
In this section, we illustrate the quality of the synchronized timetables obtained by our model using several real cases from the MTR system in Hong Kong. Figure 6 is a map of the system. Our computational study focuses on the four urban lines (that is, without the Tung Chung line and the Airport Express line) with eight interchange stations. Because each line
Figure 6
Map of the MTR System in Hong Kong
65 has two routes (uptrack and downtrack), there are 16 interchanges. Except for those at Central and Quarry Bay stations, all are cross-platform interchanges. The current headways for these lines are in the range of 120–160 seconds. The allowable adjustments and variations from the current schedules and standards are listed in Table 3. 5.1. Case 1: Rush-Hour Timetable We applied our model and heuristic to the morning rush-hour period: 08:00–09:00 hours. There are 134 trains dispatched during this period. Using CPLEX 6.5 on a SUN Ultra 60 750 MHz Unix machine, we obtained a solution in about 10.5 hours. The generated timetable reduces the transfer waiting time of passengers by 41% on average, although the average waiting times are increased for some interchange stations. It should be mentioned that the schedule from our model has certain features (e.g., nonconstant headways) that may impact the operational complexity. 5.2. Minimizing “Just Miss” Passengers do not like just missing the connecting train by a few seconds, especially if they see the train leave. In the MTR system, there are (semi-opaque) platform guard doors that do not open until an arriving train is stopped. We introduce a metric we call “Just Miss,” defined when the sum of the crossplatform time and the transfer waiting time exceeds the headway of the connecting train at the station (as illustrated in Figure 7), because the feeder passengers will see the previous train leave as they are walking
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit
66
Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
Table 3
Allowable Adjustments to Operational Parameters
Operational parameters
Range of current standard values
Allowable adjustments
17–30 seconds 120–160 seconds 15–26 minutes 3–9 minutes
Same as the current standard ±5 seconds from the current standard ±30 seconds from the current standard ±5 seconds from the current standard ±5 seconds from the current standard 60 seconds
tq j
Run times, R Dwell times, Djtq tq−1 Headway, Ltq j − Lj Trip times, Atq − Ltq mt 0 t q − Atq Turnaround times, L0 mt tj Minimum time gap, bt j Regularity
Range of dwell times, d Range of headways, h
across the platform. To compare the frequency of this scenario happening in our timetable and the current timetable, we count the number of such occurrences at each interchange station. For the rush-hour timetable considered, the number of Just Misses is reduced by 58% from the timetable in current use. It is an encouraging result. 5.3. Case 2: Non-Rush-Hour Timetable Next, we consider the timetable for a non-rush-hour period: 14:00–16:00 hours. During this planning horizon, 193 trains are dispatched on four MTR lines. With lower train frequency and more flexibility, the solution time is only about four seconds for this case. The overall improvement of average transfer waitingtimes is 43%. The number of Just Misses is reduced by 100%; that is, in our generated timetable, there are no passengers who will miss but see a connecting train leave from the connecting platform. The current operation is quite restrictive on headways and dwell times and was designed heuristically without explicit quantification of some of the performance measures. By measuring and minimizing the total transfer waiting times, our algorithm obtained large improvements in this metric. As noted by other researchers (e.g., Liebchen and Möhring 2002), the indicated savings may not be completely realized in practice when other operational concerns (complexity in operational control, variation in passengers’ walking speed, etc.) are considered. It should also be noted that some reduction in transfer waiting times
Feeder train arrives
Cross-platform time
Connecting trains depart Figure 7
Occurrence of Just Miss
Transfer waiting time
Headway
6 seconds 6 seconds
may be attained by increasing dwell times of connecting trains and thus might increase waiting times for on-board passengers. This delay to on-board passengers appears to be minimal in the MTR system. In one scenario examined, the average on-board time (including run times and dwell times) increased by only 0.024%, but the average trip time still decreased by 2.5% because of the substantial reduction in transfer waiting time. 5.4. Sensitivity Analysis We explored the impact on the total transfer waiting times when run times, dwell times, or headways are adjusted to different degree. We can then evaluate the trade-offs among different operational parameters and flexibility. The cases discussed below cover the morning rush-hour period (08:00–09:00) and the afternoon non-rush-hour period (14:00–16:00). 5.4.1. Varying Dwell Times and Headways. We considered setting the minimum/maximum dwell times and headways to different degrees. They may be constant in some cases (that is, both d and h are equal to zero) or follow the basic setting as listed in Table 3. In each case, the bounds for the operational parameters not specifically mentioned are set according to Table 3. The results are shown in Table 4. During the rush-hour period, the average improvement of transfer waiting times is highly dependent on the flexibility of dwell times. If dwell times are set to be constant, the average improvement of waiting time sharply decreases from 41% to 24%. Results from Table 5 further illustrate the impact of the restrictions on headways and dwell times on the rush-hour timetable. If dwell times cannot be adjusted from the current practice, then there is neither improvement on the average transfer waiting times nor on the Just Miss count. During the non-rush-hour period, the average improvement of transfer waiting times is 43% in all cases. This may be because the current schedule already has constant headways and constant dwell
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit
67
Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
Table 4
Optimization Results for Varying Headways and Dwell Times Rush hour
Problem setting
Solution time (in seconds)
Waiting time improvement (%)
Just Miss improvement (%)
Solution time (in seconds)
Waiting times improvement (%)
Just Miss improvement (%)
1021 16879
38 24
56 47
15 15
43 43
100 100
9389
30
40
16
43
100
Constant headway Constant dwell times Constant headway Dwell time regularity, d = 2
times for many stations; therefore, the additional restrictions of “constant headways” and “constant dwell times” do not affect the solution quality. 5.4.2. Varying Run Times. If run times were decreased, vehicles would run faster and exhaust more energy. Thus, transit operators recommend that run times not be decreased. But how about increasing the run times? Results in Table 6 show the potential improvements. If run times can be prolonged for even just 1 second, the average improvement of waiting times sharply increases, especially for constant dwell times and headways. 5.5.
Piece-Wise Optimization of the Complete Timetable As the length of the planning horizon and the number of trains increase, the size of the MIP model and time required to reach a solution also increase multiplicatively. For expediency, we may consider dividing the entire day into several planning periods, solving the TTSP for each period, and then “patching” the timetable together. We investigated if there is degradation of the quality of the solution obtained by doing such piece-wise optimization. We considered a nonrush-hour period (14:00–15:30 hours) with 180 trains to be dispatched. By considering the entire planning horizon, the improvement in the total waiting times is 43%. Next we consider splitting this planning period into two half periods, namely, Period A (14:00–14:45, with 92 trains) and Period B (14:45–15:30, with 88 trains). We alternately solved the TTSP for one half period while keeping the timetable for the other half Table 5
Impact of Varying Headways and Dwell Times for Case 1 (Rush Hour)
Problem setting Constant headway Constant dwell times Headways as current timetable Constant dwell times Headway as current timetable Constant dwell times, ±2 seconds from standard
Non-rush hour
Solution time (in seconds)
Average waiting time improvement (%)
2538
17
18
13
2
7
period fixed. Note that because the schedules for the trains “on the boundary” are fixed, the optimization for each half period might be affected. The results are shown in Table 7. The model is solved to optimality in all cases. The computation time on an Ultra 60 750 MHz Unix machine for the optimization in each round is shown in brackets. The last column considers waiting times for all interchanges in the entire planning horizon. It is interesting to note that although the objective values are the same for Rounds 2–4, the generated timetables are different. Thus, a better timetable was eventually found in Round 5; this solution remains the same after Round 6, and the iteration stops. It is gratifying that even when we only solve each half period once, the “patched” solution (after two rounds) already achieves an improvement of 41%, compared to the 43% improvement obtained by solving for the entire planning horizon. If there are more than two fractional periods, there may be several ways to cycle through the (re-)optimization of the fractional periods. The results suggest that good solutions may be obtained even if we simply optimize the fractional periods sequentially in a single pass. This indicates that this “piece-wise” time-decomposition approach may be efficacious for designing timetables for the entire day.
6.
Conclusions
In most timetabling research and practice, the planned timetable is first designed, and then operational recourse principles are set to handle situations when the system does not run to schedule (e.g., because of breakdowns, traffic delays, etc.). Deterministic models are often used for the planned timetable, and stochastic models are used mostly for the determination of the recourse actions. This paper presents an MIP optimization model for planning a synchronized nonperiodic timetable that minimizes the total transfer waiting time for all passengers. The model and method presented in this paper are effective and easy to implement. Our case studies show that the synchronization timetable reduces passengers’ waiting
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit
68
Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
Table 6
Optimization Results (Run Times Can Be Prolonged) Rush hour Solution time (in seconds)
Waiting times improvement (%)
Just Miss improvement (%)
Solution time (in seconds)
Waiting times improvement (%)
Just Miss improvement (%)
Constant headway Run times to each station could be prolonged by 1 second
2,783
42
54
14
44
100
Constant headway Run times to each station could be prolonged by 1 second Regularity of dwell times, d =2
23,335
35
44
7
43
100
Problem setting
times significantly when comparing with the transfer waiting times according to the current timetable in use. Several improvements could warrant further research. The variation of waiting times for different trains from the same station should also be considered. Passengers may have certain expectations on the wait for the connecting train at the same interchange station. To deal with this, limits on the variation of transfer waiting times at each platform could be added to the constraints (or the objective) of the model, although the problem becomes more complicated if it becomes a nonlinear programming model. In reality, trains may miss their schedule. One reason may be the late arrival of a train at its terminal; a train may not be dispatched from its origin on time. The second reason is passengers’ behavior (e.g., blocking the closing doors), which may cause trains to depart from the station behind schedule. To consider these phenomena in our model, we could add some random variables to the dispatch times of train; that is, modify constraints (3). Adding the random delay makes the model more realistic but introduces stochasticity and added complexity into the model, which may significantly increase the computational solution effort required, given the very large size of the problem. Another way to investigate the impact of randomness of passenger behavior (e.g., possible Table 7 Round 1 2 3 4 5 6
Non rush hour
Piece-Wise Timetable Optimization Period A timetable (14:00–14:45, 92 trains)
Period B timetable (14:45–15:30, 88 trains)
Total waiting time improvement (%)
Optimized (3.56 seconds) Fixed to optimal solution from Round 1 Optimized (2.87 seconds)
Fixed to current Optimized (3.15 seconds)
23 41
Fixed to optimal solution from Round 2 Optimized (3.56 seconds)
41
Fixed to optimal solution from Round 4 Optimized (3.47 seconds)
42
Fixed to optimal solution from Round 3 Optimized (3.07 seconds) Fixed to optimal solution from Round 5
41
42
blocking of doors during rush hour, variation of crossplatform times among passengers) is via simulation studies. In practice, the MTR system studied in this paper operates at a high level of service with minimal deviations from the planned schedule. Thus, given the large size of the model and the tight adherence to the schedule of the MTR system, a deterministic model was deemed appropriate for the planning of the timetable. Acknowledgments
The authors thank the editor, associate editor, and referees for their meticulous review and their many suggestions, which greatly improved this paper. The authors also thank Lau Wai Hung for his help with some of the computation. The first and last authors are partially supported by the Hong Kong Research Grants Council (Grant CUHK4465/ 04E).
References Adamski, A. 1995. Transfer optimization in public transport. J. R. Daduna, I. Branco, J. M. Pinto Paixão, eds. Computer-Aided Transit Scheduling: Proc. Sixth Internat. Workshop Computer-Aided Scheduling Public Transport. Lecture Notes in Economics and Mathematical Systems, Vol. 430. Springer-Verlag, Berlin, Heidelberg, Germany, 23–38. Bookbinder, J. H., A. Désilets. 1992. Transfer optimization in a transit network. Transportation Sci. 26(2) 106–118. Bussieck, M. R., T. Winter, U. T. Zimmermann. 1997. Discrete optimization in a public rail transport. Math. Programming 79 415–444. Cameron, K. 1991. The maximum edge-weighted clique problem in complete multipartite graphs. J. Combin. Math. Combin. Comput. 9 33–37. Ceder, A., O. Tal. 1999. Timetable synchronization for buses. N. H. M. Wilson, ed. Computer-Aided Transit Scheduling. Lecture Notes in Economics and Mathematical Systems, Vol. 471. Springer-Verlag, Berlin, Heidelberg, Germany, 245–258. Chowdhury, S., S. I.-J. Chien. 2001. Dynamic vehicle dispatching at intermodal transfer station. Transportation Res. Record J. Transportation Res. Board 1753 61–68. Daduna, J. R., S. Voß. 1995. Practical experiences in schedule synchronization. J. R. Daduna, I. Branco, J. M. Pinto Paixão, eds. Computer-Aided Transit Scheduling. Lecture Notes in Economics and Mathematical Systems, Vol. 430. Springer-Verlag, Berlin, Heidelberg, Germany, 39–55.
Wong et al.: Optimizing Timetable Synchronization for Rail Mass Transit Transportation Science 42(1), pp. 57–69, © 2008 INFORMS
Désilets, A. 1989. Optimization of transfers in a transit network. Unpublished master’s thesis, University of Waterloo, Waterloo, Ontario, Canada. Domschke, W. 1989. Schedule synchronization for public transit networks. OR Spektrum 11 17–24. Fung, S. W. C., C. O. Tong, S. C. Wong. 2004. Predicting the performance of a mass transit system by using a conventional network model. Proc. Croucher Advanced Study Institute ASI on Advanced Modeling for Transit Supply and Passenger Demand, Hong Kong, 5–6. Goverde, R. M. B. 1998. Synchronization control of scheduled train services to minimize passenger waiting times. Transport, Infrastructure and Logistics; Competition, Innovation and Creativity: Proc. 4th TRAIL Annual Congress 1998, Part 2, TRAIL Conference Proceedings P98/1, Delft University Press, Delft, The Netherlands. Klemt, W.-D., W. Stemme. 1988. Schedule synchronization for public transit networks. J. R. Daduna, A. Wren, eds. Comput.-Aided Transit Scheduling: Proc. Fourth Internat. Workshop Comput.-Aided Scheduling Public Transport. Lecture Notes in Economics and Mathematical Systems, Vol. 308. Springer-Verlag, Berlin, Heidelberg, Germany, 327–335. Knoppers, P., T. Muller. 1995. Optimized transfer opportunities in public transport. Transportation Sci. 29(1) 101–105. Liebchen, C., R. H. Möhring. 2002. A case study in periodic timetabling. Electronic Notes Theoret. Comput. Sci. 66 6. Liebchen, C., R. H. Möhring. 2004. The modeling power of the periodic event scheduling problem: Railway timetables—and beyond. Technical Report 2004/20, Institüt für Mathematik, Technische Universität Berlin, Berlin. Mohring, H., J. Schroeter, P. Wiboonchuikula. 1987. The values of waiting time, travel time, and a seat on a bus. Rand J. Econom. 18(1) 40–56. Nachtigall, K. 1996. Periodic network optimization with different arc frequencies. Discrete Appl. Math. 69 1–17.
69 Nachtigall, K., S. Voget. 1996. A genetic algorithm approach to periodic railway synchronization. Comput. Oper. Res. 23(5) 453–463. Nachtigall, K., S. Voget. 1997. Minimizing waiting times in integrated fixed interval timetables by upgrading railway tracks. Eur. J. Oper. Res. 103 610–627. Odijk, M. A. 1994. Construction of periodic timetables. Part I: A cutting plane algorithm. Report 94-61, Faculty of Technical Mathematics and Informatics, Delft University of Technology, Delft, The Netherlands. Odijk, M. A. 1996. A constraint generation algorithm for the construction of periodic railway timetables. Transportation Res. B 30(6) 455–464. Pedersen, M. B. 2003. Minimizing passenger transfer times in public transport timetables. Orbit Newsletter of the Danish Oper. Res. Society (August, Special ISMP Issue) 13–20. Pedersen, M. B., L. N. Jansen, O. A. Nielsen. 2002. Minimizing passenger transfer times in public transport timetables. D. Wang, S.-M. Li, eds. Transportation in the Information Age. Proc. 7th Conf. Hong Kong Soc. Transportation Stud., Hong Kong, 229–239. Serafini, P., W. Ukovich. 1989. A mathematical model for periodic scheduling problems. SIAM J. Discrete Math. 2(4) 550–581. Suhl, L., C. Biederbick, N. Kliewer. 2001. Design of customeroriented dispatching support for railways. S. Voß, J. R. Daduna, eds. Computer-Aided Scheduling of Public Transport. Lecture Notes in Economics and Mathematical Systems, Vol. 505. SpringerVerlag, Berlin, Heidelberg, Germany, 365–386. Vansteenwegen, P., D. Van Oudheusden. 2006. Developing railway timetables which guarantee a better service. Eur. J. Oper. Res. 173(1) 337–350. Voß, S., J. R. Daduna, eds. 2001. Computer-Aided Scheduling of Public Transport. Lecture Notes in Economics and Mathematical Systems, Vol. 505. Springer-Verlag, Berlin, Heidelberg, Germany.