A Geometric Approach to Integrated Periodic Timetabling and Passenger Routing
Abstract
We offer a geometric perspective on the problem of integrated periodic timetabling and passenger routing in public transport. Inside the space of periodic tensions, we single out those regions, where the same set of paths provides shortest passenger routes. This results in a polyhedral subdivision, which we combine with the known decomposition by polytropes. On each maximal region of the common refinement, the integrated problem is solvable in polynomial time. We transform these insights into a new geometry-driven primal heuristic, integrated tropical neighborhood search (ITNS). Computationally, we compare implementations of ITNS and the integrated (restricted) modulo network simplex algorithm on the TimPassLib benchmark set, and contribute better solutions in terms of total travel time for all but one of the twenty-five instances for which a proven optimal solution is not yet known.
Keywords and phrases:
Periodic Timetabling, Passenger Routing, Polyhedral ComplexesFunding:
Fabian Löbel: Funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under Germany’s Excellence Strategy – The Berlin Mathematics Research Center MATH+ (EXC-2046/1, project ID: 390685689).Copyright and License:
2012 ACM Subject Classification:
Applied computing Transportation ; Mathematics of computing Combinatorial optimization ; Theory of computation Network optimizationEditors:
Jonas Sauer and Marie SchmidtSeries and Publisher:
Open Access Series in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
Public transport systems constitute the backbone of urban mobility in many areas, some of which are used by several million daily passengers. A skillful design of those systems is not only important for their regular users, but is also key to attract more passengers, which is a designated goal to improve sustainability, space consumption, and overall efficiency of mobility. Ideally, individuals will base their mode and route choice on their expected travel time. One key characteristic of efficient public transport is to bundle passengers on similar routes, that are operated with discrete frequencies. Therefore, it is unavoidable that passengers will spend some time waiting, e.g., before being able to board the next vehicle. For a public transport operator, it is thus necessary to offer a service that balances the needs of the passengers, so that the journey duration is adequate for most of the users.
For example, when creating a timetable, it is a reasonable goal to minimize the total travel time for all passengers. Unfortunately, periodic timetable optimization, which is mathematically often formulated in terms of the Periodic Event Scheduling Problem (PESP) [9, 21], is a very challenging NP-hard problem [14]. Even worse, the PESP model assumes that passengers always use the same route, regardless of the timetable. In practice, the opposite is true: Passengers choose their paths through the public transport network by the currently operated timetable. Consequently, it is only natural to include the route choice of passengers into the timetabling problem.
In this paper, we therefore investigate the problem of Integrated Periodic Timetabling and Passenger Routing (TimPass) [1, 6, 17, 18, 19, 20, 22]. The problem can be formulated as a bilinear mixed integer program and is hard to solve to optimality in practice. While a vast supply of heuristics for periodic timetabling is known [3], this is less true for the integrated problem, although there is some literature [11, 15, 16, 18]. Of course, a straightforward technique is to design iterative approaches, that compute a passenger routing, then improve the timetable for that routing, until at some point the passenger routes are changed again, and so forth. In real-world instances, not only the timetabling subproblem is difficult, but also frequent shortest path computations, that are necessary to evaluate the actual quality of a timetable, turn out to be a huge computational bottleneck. The sweet spot is hence to decide when to keep the current routing, and when to recompute passenger paths. For example, the modulo network simplex (MNS) algorithm [13] can be generalized to a family of heuristic algorithms for TimPass that differ in the frequency of shortest path computations [10].
Our theoretical main contribution is a geometric answer to this question. The space of solutions to the TimPass problem can be parametrized in terms of periodic tensions, i.e., the collection of durations of activities such as driving between two stations, dwelling inside a vehicle, or performing a transfer. This space admits a polyhedral decomposition by regions, such that for all tensions inside a region, the same set of paths is a shortest path for all origin-destination pairs [8]. Moreover, the tension space is known to admit a decomposition into polytropes [5]. The latter insight has led to tropical neighborhood search (TNS), a geometry-inspired PESP heuristic [4]. Considering the common refinement of the shortest path subdivision with the polytrope decomposition, we obtain a subdivision of the periodic tension space such that on each region, the TimPass problem becomes polynomial-time solvable (Corollary 14). When restricting to a polytrope, the computation of shortest paths for a single origin-destination pair can already be simplified (Lemma 11, Theorem 12, Corollary 13).
On the practical side, we introduce integrated tropical neighborhood search (ITNS), in a coarse and in a fine variant. The geometric idea is to solve TimPass on a region of the subdivision, and then to scan neighboring regions for improvements. We benchmark ITNS against integrated MNS techniques on the TimPass benchmark set [17]. As a result, we obtain better solutions for six of the instances within an hour on a regular desktop workstation, and can improve on the best known solution for all but three instances by taking advantage of parallelization on a compute cluster. Note that two of those three instances have already been solved to optimality previously.
The paper is structured as follows: We review the construction and introduce our notation of extended event-activity networks in Section 2, which allows us to define the TimPass problem. In Section 3, we recall the (restricted) integrated modulo network simplex algorithm. The geometric picture is unfolded in Section 4, leading to the integrated tropical neighborhood search algorithm presented in Section 5. Our computational results on the TimPassLib instances are evaluated in Section 6. We conclude the paper in Section 7.
2 Problem Modeling
This paper revolves around the Integrated Periodic Timetabling and Passenger Routing Problem (TimPass). It is based on a directed graph, which we call the extended event-activity network. We briefly explain the features of such networks in Section 2.1, before describing the TimPass optimization problem in Section 2.2.
2.1 Extended Event-Activity Networks
Originally proposed in [21], an event-activity network is a directed graph whose vertices are called events and whose arcs are called activities.
We are particularly concerned with timetabling in public transport. Each line or trip of a public transport network admits an alternating sequence of departure and arrival events, connected by an alternating sequence of driving and dwelling activities. Relations between different trips can be described by further activities, such as transfer activities that model passenger transfers, or headway activities that ensure a certain time distance between two events. An example network is depicted in Figure 1. The goal of timetabling is then to assign times to the events such that the resulting activity duration between adjacent events is within pre-specified bounds.
A passenger journey in a public transportation network has a natural interpretation as a path in a classical event-activity network. However, when a timetable and hence activity lengths (called tensions) have been determined, it is not reasonable to solve a shortest path problem on as is: Passengers are typically not required to start and end their journey at specific departure or arrival events. Instead, they might choose any line serving a close-by stop within walking distance of their point of origin. Analogously, it makes little sense to select a specific arrival event of a specific line at a specific stop as the endpoint of a journey.
We therefore extend the event-activity network by source cells and target cells that model the origins and destinations of passengers, respectively. Source cells have no incoming edges and can be connected to several departure events by means of access activities. In the same vein, target cells have no outgoing edges, but can be reached from several arrival events by other access activities. Those access activities allow, e.g., to model walking times to different stop locations.
Definition 1 (Extended Event-Activity Network).
An extended event-activity network is a directed graph such that
The same construction appears in, for example, [20, 10, 18, 12]. To illustrate, the event-activity network of Figure 1 is extended in Figure 2.
We can now interpret passenger routes as special paths in an extended event-activity network , which connect source cells in to target cells in such that they begin and end with a respective access activity and their remaining activities come from . Moreover, if we are given an appropriate time duration for each activity, we can ask for a shortest passenger route from a source cell to a target cell , and answer with a shortest --path in . How to find these times is the subject of the subsequent subsection.
2.2 The TimPass Problem
The TimPass problem is an extension of the Periodic Event Scheduling Problem (PESP) for periodic timetabling to extended event-activity networks incorporating passenger routing.
Definition 2 (TimPass).
Consider a tuple , where
-
is an extended event-activity network,
-
is a period time,
-
is a transfer penalty,
-
are lower bounds on activity lengths,
-
with are upper bounds on activity lengths,
-
is an origin-destination (OD) matrix.
The Integrated Periodic Timetabling and Passenger Routing Problem (TimPass) is to find a periodic timetable and a periodic tension such that
-
for all ,
-
for all ,
-
the total travel time is minimum, where is the cost of a shortest --path in with respect to activity costs given by
(1)
The periodic timetable gives the departure and arrival times, which repeat with a period time of . The periodic tension captures the length of each activity and is determined up to an integer multiple of by the event potentials and such that holds. Since the duration of access activities models walking times, we consider their tensions fixed to their lower bounds. To route the passengers, we assume that for each OD pair , all passengers travel along the same shortest path. This path is determined based on the travel times derived from the periodic tension and the lower bounds of the access activities. Additionally, each transfer activity incurs a penalty, with its actual duration increased by a supplement of .
Remark 3.
Since determining the existence of a feasible periodic timetable is already NP-hard [14], this property naturally extends from PESP to TimPass.
It is straightforward to state a mixed-integer programming formulation for TimPass:
| Minimize | (2) |
| subject to | (3) | ||||||
| (4) | |||||||
| (5) | |||||||
| (6) | |||||||
| (7) | |||||||
| (8) | |||||||
| (9) | |||||||
Here, we write for the set of OD pairs with positive demand. The constraints (3)–(6) define PESP, while (8)–(9) describe the selection of exactly one --path per OD pair from the set of all such paths . The number of passengers on each activity is then simply the sum over all passengers whose selected --path contains , as dictated by constraint (7). The objective (2) is to minimize the total (perceived, if ) travel time of all passengers.
Remark 4.
Remark 5.
There are several ways to reformulate the program (2)–(9). For instance, the Periodic Event Scheduling Problem admits formulations using integral cycle bases, or time expansion. Likewise, the TimPass model can be adapted. For example, the constraint (9) may also be replaced by , and there is also a time-expanded version.
3 The Restricted Integrated Modulo Network Simplex Algorithm
In this paper, we will not focus on mixed-integer programming techniques to solve TimPass, but rather on heuristic combinatorial algorithms. In this section, we recall the integrated modulo network simplex algorithm as introduced in [10].
The modulo network simplex (MNS) method adapts the well-known network simplex for periodic timetabling [13]. Feasible solutions of PESP (constraints (3)–(6)) can be encoded by spanning tree structures , which are spanning trees of the event-activity network where tree activity tensions are fixed to either their lower or upper bound. We can explore the solution space from a given initial timetable by iteratively adding a co-tree activity to the tree and removing one of the activities along the induced fundamental cycle. This yields a neighborhood relation between spanning tree structures. The method terminates, generally in a local optimum, if neither any pivot operation nor shifting of event timings along special cuts yields an improved objective value.
Let be an extended event-activity network. The association between solutions and spanning tree structures on holds for TimPass [2] as well, we merely have to decide when the passenger paths are updated throughout the procedure. One approach is to simply compute the shortest --path for every OD pair once stuck in a local optimum, or after every pivot operation. We have found previously however that this approach does not perform significantly better than solving PESP with fixed passenger paths and then computing the shortest paths of the final timetable [10].
Instead, when we determine the next improving pivot operation and compare the objective value of the current tree structure to each of its neighbors, we have to examine the neighbors under their respective optimal passenger paths. Since the number of co-tree activities whose tensions are altered by the pivot operation can be arbitrarily large, there is no obvious way to tell which shortest passenger paths are different in the neighboring solution. Therefore, for every pivot candidate that results in a feasible timetable, we have to run Dijkstra’s algorithm for every cell . We call this method the integrated modulo network simplex (IMNS). It requires executions of Dijkstra’s algorithm to obtain shortest passenger path trees in each iteration. Clearly, this is computationally intractable on large instance sizes.
To address this, we have previously devised the restricted integrated modulo network simplex (RIMNS) [10]. For a given , we first compute the shortest paths using at most two transfers for every OD pair assuming every activity has its tension at the lower bound. If every connection between and requires at least three transfers, we store only a single shortest path. When examining the pivot candidates, we simply select whichever path is shortest under the resulting activity tensions from each OD pair’s current path pool. After the pivot operation, we compute the actual shortest paths, update the objective if needed, and add any new --path to the respective pool. Note that it suffices to store access and transfer activities to fully encode a passenger path due to the structure of extended event-activity networks. Moreover, we have empirically determined to offer the best trade-off between runtime penalty and solution quality impact [10]. We use this method as a benchmark in our computational study presented in Section 6.
4 Geometric Interpretation of TimPass
As seen in the last section, the core question in the integrated modulo network simplex algorithm is when to compute a new routing of the passenger paths. We will now gain insight on this matter from a geometric point of view, developing a new heuristic for TimPass. To do so, we begin with a minimalistic example.
4.1 Introductory Examples
Example 6 (Slow line and express line).
We consider a TimPass instance as shown in Figure 3. We take and assume that all but the two transfer activities (dotted arrows) are fixed, i.e. , and that there are no transfer penalties. In this network, there are only two possible passenger paths from to : The path uses the red slow line, the other path includes the blue express line. Let and denote the periodic tensions of the two transfer arcs, respectively. We make the following observation: The path is a shortest --path if and only if f , and is a shortest --path if and only if .
For the timetabling part, we note that in this instance, a periodic tension is fully determined by and . However, feasible periodic tensions are only those where both paths take the same time modulo due to the cycle periodicity property [9, 14]. When depicting the possible values of and according to their bounds as the square , we hence identify the two blue highlighted line segments in Figure 4 as the space of feasible periodic tensions.
The hyperplane divides the square into two polytopes: For on the bottom-left side (orange in Figure 4), is shorter than , and on the top-right side (grey in Figure 4), is shorter than .
We conclude from Figure 4 that any with is an optimal solution to the TimPass instance: In this case, and provide the same travel time and taking the blue express line can never be faster anyway, since we need to transfer back to the red slow line to reach cell .
In a geometric language, we can make the following observations in Figure 4:
-
1.
The space of feasible periodic tensions is a disjoint union of line segments in the square.
-
2.
The hyperplane subdivides the square into two polytopes, where each polytope corresponds to the region where one of the two paths is a shortest path.
-
3.
A line segment of feasible tensions is never part of the interior of more than one shortest path region.
Example 7 (Two lines).
We now turn to a TimPass instance with an extended event-activity network as in Figure 5. Again, there is a red line and a blue line, but we can reach from using three paths: (blue-blue), (blue-red), (red-red). The only interesting tensions are for the transfer from blue to red and for the dwelling activity of the red line. The shortest - path is
| (10) | ||||
In Figure 6, we illustrate this situation: By the lower and upper bounds, lives again in the square . The square is now divided into three regions according to (10). In this example, any combination of determines a feasible periodic tension: The event-activity network without the access activities forms a tree.
Revisiting the three geometric observations from Example 6, we note for Example 7:
-
1.
The space of feasible tension is the full square.
-
2.
The three paths give rise to a polyhedral subdivision of the square, each maximal region corresponding to the unique shortest --path with respect to the periodic tensions of that region.
-
3.
The shortest path subdivision is also a proper subdivision of the square of periodic tensions.
Our interpretations look different at first glance. We offer a unifying perspective in the next subsection.
4.2 Theoretic Results
We will now generalize the geometric observations made in the previous examples. Let be a TimPass instance.
Definition 8 (Periodic Tension Spaces).
The fractional periodic tension polytope of is
The periodic tension space of is
The fractional tension polytope is the space of all vectors that satisfy the constraints of the linear programming relaxation of (2)–(9). is by definition a hyperrectangle, such as the squares in Example 6 and Example 7. The periodic tension space is the space of vectors that are feasible for the mixed-integer program (2)–(9), e.g., the blue line segments in Figure 4 and the full square in Figure 6.
Definition 9 (Polytrope [5]).
For each , we define the polytrope
We refer to [7] for the origin of the name polytrope, and recall a few results from [5]: Let be the cycle matrix of an integral cycle basis of the induced subgraph .
-
1.
For we have either or , the latter case occurring if and only if .
-
2.
The periodic tension space is the union of all , taken over all .
-
3.
For each , solving PESP restricted to is a linear program dual to minimum cost network flow, and hence solvable in polynomial time.
-
4.
One can define a neighborhood relation such that two non-empty polytropes and are neighbors if and differ by a column of .
These insights led to tropical neighborhood search, a powerful heuristic for the Periodic Event Scheduling Problem [4]. This is a local search that starts with a non-empty polytrope and scans for improving neighbors. Any polytrope has at most neighbors, and PESP can be solved on each polytrope in polynomial time.
We will generalize tropical neighborhood search to integrated tropical neighborhood search (ITNS). To this end, we need to include passenger paths into our considerations.
Definition 10 (Shortest Path Subdivision).
Let , and let be an --path in . We define
where is the cost function defined in (1). The collection of gives rise to the shortest path subdivision of .
Speaking geometrically, finding a passenger routing for a periodic tension then amounts to determining, for each , an --path such that . In Figure 4, the orange polytope is , defined by the inequality , and the grey polytope is , defined by . Analogously, we see the subdivision of the square into in Figure 6 according to (10).
The shortest path subdivision of naturally induces a subdivision of each polytrope . Looking at Figure 4, this subdivision is rather trivial, as is confirmed by the following:
Lemma 11.
Let , , . Then is a shortest --path w.r.t. for some if and only if it is a shortest --path w.r.t. , where
Proof.
Let be a --path. By the construction of extended event-activity networks, cannot contain access activities. For , we find a periodic timetable such that for all , and therefore
Therefore, if and are --paths, then holds if and only if .
The consequences of Lemma 11 are remarkable: For all tensions inside a polytrope , the same path can be chosen for a shortest path, as the costs depend only on – as long as the path starts at a departure event and ends at an arrival event. This result naturally extends to paths from source to target cells, where each of them is connected to a single event only, as is the case in Example 6. However, Example 7 demonstrates that this is no longer true when cell nodes are adjacent to multiple events. For a vertex , we define its out-neighborhood and its in-neighborhood .
Theorem 12.
Let and and . Then induces a polyhedral subdivision of . Each maximal region of the subdivision is parametrized by a departure event , an arrival event , and given by for a shortest --path containing the access activities and .
Proof.
Let , , , and let be an --path using and . Then
| (11) |
As in the proof of Lemma 11,
| (12) |
In particular, the cost of a path depends only on , its first departure event, and its last arrival event. If is another --path that contains and as well, then if and only if . The maximal regions of induced by the shortest path subdivision are hence described by a pair such that a shortest --path w.r.t. contains both and for all in that region. Due to Lemma 11, this shortest path can be chosen to be the same in each such region, say . The region is then described by the inequalities
Corollary 13.
For a single OD pair and an arbitrary , a shortest --path w.r.t. among all can be found in polynomial time.
Proof.
A tension can be found in polynomial time by the discussion following Definition 9. By Theorem 12, the shortest path subdivision subdivides into at most maximal polyhedral regions. Using Lemma 11, for each such region labeled by and , we can compute a representing path such that by computing a shortest path --path w.r.t. , and adding the activities and . We then determine an optimal tension by finding an optimal solution to the linear program
| Minimize | (13) |
| subject to | (14) | ||||||
| (15) | |||||||
| (16) | |||||||
This linear program is the restriction of (2)–(9) to the fixed periodic offset and the fixed path , where we dropped the now constant summand
in the objective function, and enlarged the domain of according to the definition of . It remains to select the best tension among the for all .
The method in the proof of Corollary 13 is based on the polynomial number of maximal regions of the shortest path subdivision of . For more than one OD pair, this number however becomes exponential, as the regions of the common refinement of all shortest path subdivisions are
| (17) |
for all combinations of for all . These regions single out those periodic tensions, where the same set of passenger routes yields shortest paths for all OD pairs.
When considering all OD pairs, we can hence not expect a polynomial-time algorithm for TimPass on . However, on a single region of the common refinement of all shortest path subdivisions, there is a positive result.
Corollary 14.
Let and let be a maximal region of the common refinement of all shortest path subdivisions for all OD pairs . Suppose that is described in terms of for all . Then TimPass can be solved in polynomial time when is restricted to .
Proof.
We determine for all as in the proof of Corollary 13. We then solve the restriction of (2)–(9) to the fixed and the chosen paths, which boils down to solving the linear program (14)–(16) w.r.t. to the objective function
5 Integrated Tropical Neighborhood Search
We now turn back to the question of when to reroute passengers in an alternating timetabling-routing procedure such as the integrated modulo network simplex (cf. Section 3). The geometric answer from Section 4 is the following: The passenger routing can be chosen to be the same on each of the regions (17). However, this investigation is limited to a single polytrope . In our upcoming local search algorithm, integrated tropical neighborhood search (ITNS), we will therefore always re-route the passengers when we leave a polytrope. Inside a polytrope, we will either find a solution heuristically using Corollary 14, or be more extensive and scan for local improvements by modifying one OD pair at a time only (Corollary 13).
We outline the three components of ITNS on a high level.
5.1 The Coarse Polytrope Heuristic
In the coarse polytrope heuristic, for a given initial tension , we determine the region in the sense of (17) such that and solve TimPass optimally by means of Corollary 14. To this end, we solve the linear program indicated in the proof, and its optimal objective value will give the minimum total travel time on .
Algorithm 15 (Coarse Polytrope Heuristic).
- Input:
-
periodic tension
- Output:
-
periodic tension and its total travel time
-
1.
For all , compute shortest paths w.r.t. , giving .
-
2.
Solve TimPass on (17) via Corollary 14 to obtain a tension and its total travel time . Return and .
5.2 The Fine Polytrope Heuristic
The fine polytrope heuristic proceeds as the coarse heuristic, but then tries to improve the solution by re-routing passengers for single OD pairs in the spirit of Corollary 13.
Algorithm 16 (Fine Polytrope Heuristic).
- Input:
-
periodic tension
- Output:
-
periodic tension and its total travel time
-
1.
Obtain from Algorithm 15.
-
2.
For a list of OD pairs :
-
Enumerate the regions be computing representing --paths as in the proof of Corollary 13.
-
For each such region, replace by and solve TimPass on the new region via Corollary 14.
-
If a solution with better travel time has been found, set and update .
-
-
3.
Return and its total travel time .
In view of Theorem 12, Step (2) can be understood as a heuristic exploration of the neighboring regions of . The algorithm may be fine-tuned by adapting the selection and sorting of the OD pairs. Note that for the linear programs in (2), only the objective function changes, so that warm-starting is possible.
5.3 Integrated Tropical Neighborhood Search
We embed the two polytrope heuristics into tropical neighborhood search for periodic timetabling [4].
Algorithm 17 (Integrated Tropical Neighborhood Search, ITNS).
- Input:
-
feasible TimPass instance
- Output:
-
periodic tension and its total travel time
-
1.
Compute a feasible solution to TimPass, giving .
-
2.
Obtain and by Algorithm 15 or Algorithm 16.
-
3.
Use Algorithm 15 to compute with tension among all neighbors of .
-
4.
If there is no with , return and .
-
5.
Choose a with , set and go to Step (2).
As computing shortest paths for all OD pairs is the major bottleneck, we do not use the fine polytrope heuristic in Step (3). Depending on the algorithm chosen in Step (2), we speak of coarse or fine ITNS. The ITNS might be refined in several ways, e.g., by different pivot or quality-first rules, see [4].
6 Computational Study
We present novel computational results of applying the (restricted) integrated modulo network simplex and the coarse/fine integrated tropical neighborhood search to the TimPassLib benchmark library [17].
6.1 Obtaining an Initial Solution
All presented algorithms in this paper are neighborhood searches that require an initial feasible timetable. We outline a heuristic to obtain those by constructing a spanning tree structure . First, note that it is usually assumed that holds for transfer activities . So if , adding all driving and dwelling activities to the lower bound tree and connecting the resulting line components by transfer activities always yields a feasible timetable. We can weigh the transfer activities by the number of passengers on them subject to a lower bound routing, i.e., with respect to shortest paths when all tensions are at their lower bound . If there are any other activities in , then special care has to be taken to ensure feasibility:
-
Turnaround activities model the required downtime between the end of a line and the beginning of its reversal direction due to constraints such as driver breaks. Thus, the driving and dwelling activities of a line, its reversal direction and turnover activities form a cycle whose tensions have to sum to zero modulo the period time due to the cycle periodicity property. We always add this cycle to the tree omitting one of its activities. Some activities may have to have their tension fixed to the upper bound to ensure feasibility.
-
If a line is repeated within the global period of the instance, its events are copied appropriately often in the event-activity network and connected by synchronization activities. We construct the connected tree component of a line to always include all of its repetitions along those timing activities.
-
Like transfers, headway activities connect line components but may have bounds that impact feasibility. When we add a line component to the tree under consideration of the previous two points, we collect all outgoing transfer and headway activities. We then process them in some order to either connect additional lines to the growing tree or, if both events incident to the activity are already in the tree, we store them for later. Once we have connected all lines and the tree is spanning, we check if the tension of the remaining co-tree activities is feasible. If not, we attempt pivot operations and to switch up membership in and along the fundamental cycle until we have a feasible timetable, or we have to give up.
Whether this process succeeds in finding a feasible timetable is sensitive to the order in which we process transfer and other activities. It always succeeds on the TimPassLib instances if we process activities in in decreasing order of and then the transfer activities weighted by the lower bound routing, or, if this fails, in increasing order of until , then the weighted transfer activities, then the remaining other activities.
6.2 Computational Results
We ran C++ implementations of our proposed methods on an initial solution obtained as explained in the previous subsection on each TimPassLib instance with a time limit of an hour. For an overview on the instance sizes we refer to [17] and https://timpasslib.aalto.fi/. For ITNS, we report the best solutions in terms of total travel time found across three parameter settings concerning a quality-first rule and numbers of OD pairs considered in Step (3) of Algorithm 16. We always sort the OD pairs with respect to decreasing weighted slack along the current path , i.e., , so that heavy demand relations with much longer travel times than necessary come first.
All computations have been carried out on an Intel Core i7-9700K CPU with 64 GB RAM. The results are presented in Table 1 in the appendix.
For six of the instances, we provide better incumbent solutions (Hamburg, grid, long, metro, Erding20, Erding21). The Stuttgart instance is very large and causes a memory problem in the ITNS implementation. The RIMNS performs particularly strong. For ITNS, the coarse version is on level with RIMNS, better on larger instances, but worse on smaller.
The fine ITNS is never better than coarse ITNS. This is also highlighted in Table 2 in the appendix, where we collect the computation times and the total travel time improvement in relation to the initial solution. It turns out – see that last column of Table 2 – that the improvements made in (2) of Algorithm 16 are very minor, while moving to neighboring polytropes has a larger impact on the total travel time. In particular, it is not advisable to spend computation time for the fine ITNS.
Unfortunately, we could not determine better travel times for the RxLy instances within one hour, whose current incumbents are based on a heavy machinery of periodic timetable optimization [3, 17]. However, since our methods performed strongly on the instances where the time limit was not an issue, we became curious if we would be able to beat the best known incumbents if we allotted more computation time. Moreover, it is straightforward to parallelize the exploration of the neighborhood of the current solution for both MNS and TNS, and the shortest path computations for TNS, yielding massive speed-up by moving to high-throughput cluster nodes with 96 threads composed of Intel Xeon Gold 6342 CPUs with 512 GB RAM. Within a wall time limit of 24 hours, we provide better incumbent solutions for all TimPassLib instances except toy, toy2, and Stuttgart, see Table 3 in the appendix. Note that toy and toy2 have already been solved to proven optimality previously. It becomes apparent that RIMNS outperforms coarse ITNS in this setting, the latter stopping earlier with worse local optima. The 24 new incumbents have all been computed by RIMNS, while coarse ITNS improves the TimPassLib bounds only for 6 instances.
7 Conclusion and Outlook
We have analyzed the geometry of integrated periodic timetabling and passenger routing, culminating in an extension of tropical neighborhood search to an integrated setting. The ITNS heuristic is complementary to the IMNS algorithm family, and is of a similar computational power. Both are promising candidates to get a fast good-quality solution for TimPass problems, as is demonstrated by our new incumbent solutions for the TimPassLib instances.
What remains open on the theory side is to settle the complexity status of optimizing TimPass over a single polytrope for all OD pairs simultaneously. Another line of future work, more on the practical side, would be to integrate the path restriction techniques from RIMNS into ITNS. In general, we believe that including ITNS into larger frameworks for solving TimPass instances will prove useful, and that further algorithmic refinements and implementation improvements are possible.
References
- [1] Ralf Borndörfer, Heide Hoppmann, and Marika Karbstein. Passenger routing for periodic timetable optimization. Public Transport, 9(1):115–135, 2017. doi:10.1007/s12469-016-0132-0.
- [2] Ralf Borndörfer, Heide Hoppmann, Marika Karbstein, and Fabian Löbel. The Modulo Network Simplex with Integrated Passenger Routing. In Andreas Fink, Armin Fügenschuh, and Martin Josef Geiger, editors, Operations Research Proceedings 2016, pages 637–644. Springer International Publishing, 2017. doi:10.1007/978-3-319-55702-1_84.
- [3] Ralf Borndörfer, Niels Lindner, and Sarah Roth. A concurrent approach to the periodic event scheduling problem. Journal of Rail Transport Planning & Management, 15:100175, 2020. doi:10.1016/j.jrtpm.2019.100175.
- [4] Enrico Bortoletto, Niels Lindner, and Berenike Masing. Tropical Neighbourhood Search: A New Heuristic for Periodic Timetabling. In Mattia D’Emidio and Niels Lindner, editors, 22nd Symposium on Algorithmic Approaches for Transportation Modelling, Optimization, and Systems (ATMOS 2022), volume 106 of Open Access Series in Informatics (OASIcs), pages 3:1–3:19, Dagstuhl, Germany, 2022. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. ISSN: 2190-6807. doi:10.4230/OASIcs.ATMOS.2022.3.
- [5] Enrico Bortoletto, Niels Lindner, and Berenike Masing. The Tropical and Zonotopal Geometry of Periodic Timetables. Discrete & Computational Geometry, 2024. doi:10.1007/s00454-024-00686-2.
- [6] Philine Gattermann, Peter Großmann, Karl Nachtigall, and Anita Schöbel. Integrating Passengers’ Routes in Periodic Timetabling: A SAT approach. In Marc Goerigk and Renato F. Werneck, editors, 16th Workshop on Algorithmic Approaches for Transportation Modelling, Optimization, and Systems (ATMOS 2016), volume 54 of Open Access Series in Informatics (OASIcs), pages 3:1–3:15, Dagstuhl, Germany, 2016. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/OASIcs.ATMOS.2016.3.
- [7] Michael Joswig and Katja Kulas. Tropical and ordinary convexity combined. Advances in Geometry, 10(2):333–352, 2010. Publisher: De Gruyter Section: Advances in Geometry. doi:10.1515/advgeom.2010.012.
- [8] Michael Joswig and Benjamin Schröter. Parametric Shortest-Path Algorithms via Tropical Geometry. Mathematics of Operations Research, 47(3):2065–2081, 2022. Publisher: INFORMS. doi:10.1287/moor.2021.1199.
- [9] Christian Liebchen. Periodic timetable optimization in public transport. PhD thesis, Technicsche Universität Berlin, 2006.
- [10] Fabian Löbel, Niels Lindner, and Ralf Borndörfer. The Restricted Modulo Network Simplex Method for Integrated Periodic Timetabling and Passenger Routing. In Janis S. Neufeld, Udo Buscher, Rainer Lasch, Dominik Möst, and Jörn Schönberger, editors, Operations Research Proceedings 2019, pages 757–763, Cham, 2020. Springer International Publishing. doi:10.1007/978-3-030-48439-2_92.
- [11] Bernardo Martin-Iradi and Stefan Ropke. A column-generation-based matheuristic for periodic and symmetric train timetabling with integrated passenger routing. European Journal of Operational Research, 297(2):511–531, 2022. doi:10.1016/j.ejor.2021.04.041.
- [12] Berenike Masing, Niels Lindner, and Enrico Bortoletto. Computing All Shortest Passenger Routes with a Tropical Dijkstra Algorithm, 2024. arXiv:2412.14654 [math]. doi:10.48550/arXiv.2412.14654.
- [13] Karl Nachtigall and Jens Opitz. Solving Periodic Timetable Optimisation Problems by Modulo Simplex Calculations. In Matteo Fischetti and Peter Widmayer, editors, 8th Workshop on Algorithmic Approaches for Transportation Modeling, Optimization, and Systems (ATMOS’08), volume 9 of Open Access Series in Informatics (OASIcs), pages 1–15, Dagstuhl, Germany, 2008. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/OASIcs.ATMOS.2008.1588.
- [14] Michiel A. Odijk. Construction of periodic timetables, Part 1: A cutting plane algorithm. Technical Report 94-61, TU Delft, 1994.
- [15] Gert-Jaap Polinder, Marie Schmidt, and Dennis Huisman. Timetabling for strategic passenger railway planning. Transportation Research Part B: Methodological, 146:111–135, 2021. doi:10.1016/j.trb.2021.02.006.
- [16] Stephanie Riedmüller. A path-based model for integrated periodic timetabling and passenger routing. Master’s thesis, Freie Universität Berlin, 2023.
- [17] Philine Schiewe, Marc Goerigk, and Niels Lindner. Introducing TimPassLib – A Library for Integrated Periodic Timetabling and Passenger Routing. Operations Research Forum, 4, 2023. doi:10.1007/s43069-023-00244-1.
- [18] Philine Schiewe and Anita Schöbel. Periodic Timetabling with Integrated Routing: Toward Applicable Approaches. Transportation Science, 54(6):1714–1731, 2020. Publisher: INFORMS. doi:10.1287/trsc.2019.0965.
- [19] Marie Schmidt. Integrating Routing Decisions in Public Transportation Problems. Springer Optimization and Its Applications. Springer New York, NY, 2014. doi:10.1007/978-1-4614-9566-6.
- [20] Marie Schmidt and Anita Schöbel. Timetabling with passenger routing. OR Spectrum, 37(1):75–97, 2015. doi:10.1007/s00291-014-0360-0.
- [21] Paolo Serafini and Walter Ukovich. A Mathematical Model for Periodic Scheduling Problems. SIAM Journal on Discrete Mathematics, 2(4):550–581, 1989. doi:10.1137/0402049.
- [22] Michael Siebert and Marc Goerigk. An experimental comparison of periodic timetabling models. Computers & Operations Research, 40(10):2251–2259, 2013. doi:10.1016/j.cor.2013.04.002.
Appendix A Result Tables
| instance |
|
|
|
|
|
|
||||||||||||
| Hamburg | 139 892 927 | 141 629 305 | 141 610 697 | 141 610 697 | 141 842 262 | 141 842 262 | ||||||||||||
| Schweiz | 60 084 289 | 62 622 935 | 65 322 356 | 63 899 227 | 64 910 675 | 65 014 781 | ||||||||||||
| toy | 21 466 | 21 466 | 21 466 | 21 466 | 21 466 | 21 466 | ||||||||||||
| toy2 | 19 114 | 19 114 | 19 123 | 19 130 | 19 198 | 19 198 | ||||||||||||
| regional | 1 804 642 | 1 834 884 | 1 855 092 | 1 855 092 | 1 855 092 | 1 855 092 | ||||||||||||
| grid | 47 824 | 49 279 | 48 894 | 48 922 | 49 775 | 49 787 | ||||||||||||
| long | 64 906 980 | 67 480 984 | 68 300 017 | 67 468 861 | 68 296 696 | 68 296 696 | ||||||||||||
| metro | 11 978 129 | 12 019 079 | 11 997 040 | 12 029 681 | 12 029 681 | 12 029 681 | ||||||||||||
| Erding20 | 12 206 083 | 12 258 126 | 12 239 162 | 12 239 477 | 12 270 189 | 12 270 701 | ||||||||||||
| Erding21 | 12 206 083 | 12 307 765 | 12 258 531 | 12 258 986 | 12 298 178 | 12 300 257 | ||||||||||||
| Stuttgart |
|
|
|
|
|
|
||||||||||||
| R1L1 | 522 575 407 | 542 908 145 | 548 590 857 | 547 888 106 | 548 783 948 | 549 254 243 | ||||||||||||
| R1L2 | 522 212 362 | 542 381 697 | 546 637 453 | 546 637 453 | 547 430 602 | 547 793 546 | ||||||||||||
| R1L3 | 522 199 838 | 543 067 240 | 547 066 363 | 547 052 294 | 547 404 978 | 548 056 874 | ||||||||||||
| R1L4 | 520 799 059 | 537 879 494 | 541 161 369 | 540 579 945 | 541 612 283 | 541 795 513 | ||||||||||||
| R2L1 | 650 575 045 | 681 061 389 | 687 561 970 | 686 752 397 | 686 026 782 | 686 571 886 | ||||||||||||
| R2L2 | 650 293 220 | 676 836 085 | 687 143 153 | 687 298 476 | 685 036 749 | 686 155 351 | ||||||||||||
| R2L3 | 649 767 761 | 675 793 893 | 681 918 089 | 681 601 445 | 680 839 415 | 681 528 634 | ||||||||||||
| R2L4 | 647 184 195 | 667 537 183 | 671 675 462 | 670 364 469 | 670 698 507 | 670 824 345 | ||||||||||||
| R3L1 | 665 804 283 | 694 086 648 | 704 342 418 | 702 079 664 | 702 474 126 | 703 168 722 | ||||||||||||
| R3L2 | 665 719 574 | 694 334 373 | 704 352 020 | 701 666 941 | 702 618 923 | 703 427 280 | ||||||||||||
| R3L3 | 665 595 680 | 691 688 857 | 699 347 941 | 695 870 751 | 697 620 096 | 698 196 101 | ||||||||||||
| R3L4 | 662 251 432 | 681 343 018 | 683 500 409 | 683 500 409 | 682 766 750 | 682 999 085 | ||||||||||||
| R4L1 | 723 276 168 | 754 707 390 | 764 266 997 | 764 266 997 | 762 687 598 | 763 002 450 | ||||||||||||
| R4L2 | 724 254 447 | 754 453 547 | 761 855 406 | 761 855 406 | 760 035 236 | 760 596 205 | ||||||||||||
| R4L3 | 722 434 044 | 751 351 849 | 755 869 038 | 755 869 038 | 754 672 008 | 754 766 718 | ||||||||||||
| R4L4 | 720 103 154 | 738 792 466 | 742 256 165 | 742 256 165 | 741 051 497 | 741 154 025 |
| instance |
|
|
|
|
|
||||||||||
| Erding20 | 201.671 | 599.255 | 3686 | 3174 | 2/80 | ||||||||||
| Erding21 | 172.526 | 410.702 | 22991 | 20912 | 1/120 | ||||||||||
| Hamburg | 0.955 | 3.966 | 201416 | 201416 | 0/20 | ||||||||||
| Schweiz | 3600 | 3600 | 411681 | 307575 | 1/96 | ||||||||||
| toy | 0.224 | 1.323 | 8300 | 8300 | 1/80 | ||||||||||
| toy2 | 0.260 | 2.798 | 0 | 0 | 0/10 | ||||||||||
| regional | 2.743 | 5.020 | 0 | 0 | 0/10 | ||||||||||
| grid | 13.171 | 13.162 | 126 | 114 | 0/60 | ||||||||||
| long | 105.494 | 183.894 | 3321 | 3321 | 0/30 | ||||||||||
| metro | 3.489 | 11.497 | 0 | 0 | 0/10 | ||||||||||
| Stuttgart | — | — | 0 | 0 | 0/0 | ||||||||||
| R1L1 | — | — | 1850443 | 1380148 | 3/120 | ||||||||||
| R1L2 | — | — | 1866879 | 1503935 | 6/155 | ||||||||||
| R1L3 | — | — | 1448324 | 796428 | 4/78 | ||||||||||
| R1L4 | — | — | 1180361 | 997131 | 2/84 | ||||||||||
| R2L1 | — | — | 2910082 | 2364978 | 3/155 | ||||||||||
| R2L2 | — | — | 3423781 | 2305179 | 2/140 | ||||||||||
| R2L3 | — | — | 2587672 | 1898453 | 4/102 | ||||||||||
| R2L4 | — | — | 976955 | 851117 | 3/50 | ||||||||||
| R3L1 | — | — | 1868292 | 1173696 | 4/67 | ||||||||||
| R3L2 | — | — | 1733097 | 924740 | 2/62 | ||||||||||
| R3L3 | — | — | 1727845 | 1151840 | 5/51 | ||||||||||
| R3L4 | — | — | 733659 | 501324 | 2/22 | ||||||||||
| R4L1 | — | — | 1579399 | 1264547 | 2/50 | ||||||||||
| R4L2 | — | — | 1820170 | 1259201 | 1/50 | ||||||||||
| R4L3 | — | — | 1197030 | 1102320 | 2/40 | ||||||||||
| R4L4 | — | — | 1204668 | 1102140 | 5/50 |
| instance | TimPassLib | parallelized RIMNS | parallelized coarse ITNS | |||||||||||||||
|
|
solution |
|
|
|
time [s] | solution | time [s] | ||||||||||
| Hamburg | 139 892 927 | 141 629 305 | 141 610 697 | 1.24 | 1.23 | 1.07 | 2 | 141 842 262 | 1 | |||||||||
| Schweiz | 60 084 289 | 62 622 935 | 62 484 232 | 4.23 | 3.99 | 5.46 | 25 474 | 64 906 482 | 606 | |||||||||
| toy | 21 466 | 21 466 | 21 466 | 0.00 | — | — | 1 | 21 466 | 1 | |||||||||
| toy2 | 19 114 | 19 114 | 19 114 | 0.00 | — | — | 1 | 19 198 | 1 | |||||||||
| regional | 1 804 642 | 1 834 884 | 1 827 124 | 1.68 | 1.25 | 25.66 | 25 | 1 855 092 | 1 | |||||||||
| grid | 47 824 | 49 279 | 48 894 | 3.04 | 2.24 | 26.46 | 15 | 49 775 | 3 | |||||||||
| long | 64 906 980 | 67 480 984 | 67 189 746 | 3.97 | 3.52 | 11.41 | — | 68 296 696 | 38 | |||||||||
| metro | 11 978 129 | 12 019 079 | 11 997 040 | 0.34 | 0.16 | 53.82 | 200 | 12 029 681 | 2 | |||||||||
| Erding20 | 12 206 083 | 12 258 126 | 12 239 162 | 0.43 | 0.27 | 36.44 | 421 | 12 270 189 | 202 | |||||||||
| Erding21 | 12 206 083 | 12 307 765 | 12 258 531 | 0.83 | 0.43 | 48.42 | 410 | 12 298 178 | 411 | |||||||||
| Stuttgart | 45 072 189 100 | 48 325 440 573 | 48 724 661 870 | 7.22 | — | — | — | 48 724 661 870 | — | |||||||||
| R1L1 | 522 575 407 | 542 908 145 | 540 895 611 | 3.89 | 3.51 | 9.90 | 34 262 | 546 503 687 | 18 489 | |||||||||
| R1L2 | 522 212 362 | 542 381 697 | 540 026 016 | 3.86 | 3.41 | 11.68 | 51 367 | 544 594 207 | 19 547 | |||||||||
| R1L3 | 522 199 838 | 543 067 240 | 540 484 607 | 4.00 | 3.50 | 12.38 | 59 193 | 544 803 285 | 16 801 | |||||||||
| R1L4 | 520 799 059 | 537 879 494 | 533 350 776 | 3.28 | 2.41 | 26.52 | — | 538 789 771 | 30 126 | |||||||||
| R2L1 | 650 575 045 | 681 061 389 | 674 214 817 | 4.69 | 3.63 | 22.46 | — | 682 608 885 | 29 379 | |||||||||
| R2L2 | 650 293 220 | 676 836 085 | 674 539 523 | 4.08 | 3.73 | 8.61 | — | 680 897 566 | 38 062 | |||||||||
| R2L3 | 649 767 761 | 675 793 893 | 672 506 998 | 4.01 | 3.50 | 12.51 | — | 677 313 411 | 31 854 | |||||||||
| R2L4 | 647 184 195 | 667 537 183 | 661 262 179 | 3.14 | 2.18 | 30.57 | — | 667 277 862 | — | |||||||||
| R3L1 | 665 804 283 | 694 086 648 | 689 439 206 | 4.25 | 3.55 | 16.47 | — | 697 177 072 | 53 182 | |||||||||
| R3L2 | 665 719 574 | 694 334 373 | 690 122 292 | 4.30 | 3.67 | 14.65 | — | 695 894 374 | 69 366 | |||||||||
| R3L3 | 665 595 680 | 691 688 857 | 686 486 157 | 3.92 | 3.14 | 19.90 | — | 693 936 887 | 57 760 | |||||||||
| R3L4 | 662 251 432 | 681 343 018 | 676 201 297 | 2.88 | 2.11 | 26.74 | — | 679 596 915 | — | |||||||||
| R4L1 | 723 276 168 | 754 707 390 | 751 888 172 | 4.35 | 3.96 | 8.97 | — | 758 684 327 | 510 03 | |||||||||
| R4L2 | 724 254 447 | 754 453 547 | 750 917 302 | 4.17 | 3.68 | 11.75 | — | 757 584 922 | 47 399 | |||||||||
| R4L3 | 722 434 044 | 751 351 849 | 747 309 217 | 4.00 | 3.44 | 14.00 | — | 751 346 581 | — | |||||||||
| R4L4 | 720 103 154 | 738 792 466 | 735 412 808 | 2.60 | 2.13 | 18.08 | — | 738 168 298 | — | |||||||||
