Journey planning in schedule-based public transport is a most frequent problem nowadays and journey planners (web or mobile applications) are abundant. Given as input a timetable associated with a public transportation system, the journey planning problem asks for efficiently answering queries of the form: “What is the best journey from some station to some other station , provided that I wish to depart at time ?”. In a multimodal setting, the aforementioned problem is considered in combination with the different modes of transport (train, bus, tram, walking, EVs, bicycles, car, etc) one can consider. In multimodal journey planning the best route should be provided by a holistic algorithmic approach that not only considers each individual mode, but also optimizes their choice and sequence.
Depending on the considered metrics and modeling assumptions, the (uni- or multi-modal) journey planning problem can be specialized into various optimization problems. In the earliest arrival-time problem (EAP), one is interested in finding the best (or optimal) journey that minimizes the traveling time required to complete it. In the minimum number of transfers problem (MNTP), one is interested in computing a best journey that minimizes the number of times a passenger needs to change vehicle during the journey. Sometimes, these two optimization criteria are considered in combination, giving rise to multicriteria problems. We refer to  for a comprehensive overview on unimodal and multimodal journey planning.
A typical approach to deal with unimodal and multimodal journey planning optimization problems is to create, in a preprocessing phase, a structure that represents the timetable information, which subsequently allows for fast answering of queries. There is vast literature on this approach; see e.g.,  and the references therein.
Journey planning is quite challenging (despite its simple formulation), much more than its route planning counterpart in road networks. Schedule-based transportation systems exhibit an inherent time-dependent component that requires more complex modeling assumptions in order to obtain meaningful results, especially when transfer times from one vehicle to another has to be taken into account .
One additional challenge is to accommodate delays of public transport vehicles that often occur. The key issue is how to efficiently update the underlying timetable information structure so that best journey (typically EAP) queries are still answered fast and optimally with respect to the updated timetable.
The necessity for solving the aforementioned challenges as efficient as possible is crucial, since otherwise the real-time response requests posed to an actual journey planner, which is typically in heavy demand (e.g., the one of German railways, may receive in peak hours more than 420 queries per second), cannot be met both for queries and for digesting delays of schedule-based vehicles that occur frequently.
There are three main approaches of past work for solving the multimodal journey planning problem . One considers a combined cost function of travel time with penalties for modal transfers (see e.g., [1, 2, 18]). Another approach uses the label-constrained shortest path problem to obtain journeys that explicitly include (or exclude) certain sequences of transportation modes (see e.g, [8, 9, 11]. A third approach considers the computation of Pareto sets of multimodal journeys using a carefully chosen set of optimization criteria that aims to provide diverse (regarding the transportation modes) alternative journeys (see e.g, [3, 9]. Some of these approaches consider also car driving and flights (which are beyond the scope of this paper).
In this work, we consider urban multimodal schedule-based public transport (train, bus, tram) along with unrestricted w.r.t. departing time traveling (walking and electric vehicles – EVs). The most closely related work to ours is that in [9, 11], which computes multicriteria multimodal journeys. Our aim here is to investigate whether the recently introduced unimodal dynamic timetable model (DTM) , which handles efficiently EAP journey planning queries and updates extremely fast the underlying timetable information structure in case of delays, can be extended in the multimodal setting and can provide competitive query and update times w.r.t. state-of-the-art approaches.
In this work, we present Multimodal DTM (MDTM), an extension of the dynamic timetable model (DTM) , which can indeed model urban multimodal journeys while simultaneously offering competitive to state-or-the-art query times for computing best journeys as well as extremely fast update time for updating the timetable information in case of delays. We conducted an experimental study on two metropolitan public transport networks (Berlin and London). Our query algorithms answer multimodal EAP and multicriteria queries very efficiently when public transport (train, bus, tram) along with unrestricted w.r.t. departing time traveling (walking and EVs) is considered, and remain competitive to state-of-the-art approaches even in the case of unlimited walking. Our timetable information structure can be updated in less than 0.14 milliseconds in case of delays.
The rest of this paper is organized as follows. In Section 2, we present preliminary notions regarding timetable information modeling and (multimodal) journey planning, along with a succinct review of DTM. In Section 3 we present the multimodal DTM along with its query and update algorithms. In Section 4, we present our experimental study. We conclude in Section 5.
Schedule-based transportation is described by timetables that determine the (scheduled) departure and arrival times of public vehicles. We consider a timetable as a set tuple , where is the set of stops (or stations) in which the passengers may embark/disembark on/from a vehicle, is the set of vehicles (train, bus, metro, and any other means of transport that performs scheduled routes), and is the set of elementary connections , which represents the travel of a vehicle , leaving from stop at time and arriving at the immediately next stop at time . Elementary connections of schedule-based transport are restricted w.r.t. (the scheduled) departure of the vehicles.
One of the most common models for representing a timetable is the realistic time-expanded model (TE-real) . This model encodes a timetable into a directed graph with appropriate arc weights. In TE-real, nodes represent time events (arrival or departure times of a vehicle at a stop), while arcs represent either elementary connections (travel of a vehicle between consecutive stops), or transfer between different vehicles at the same stop, or waiting time between two time events (at the same stop). The arc weight is the time difference between the time events associated with the endpoints of the arc. Let us stress that transfer times introduce realistic transfer restrictions between vehicles, and represent the required minimum time that a passenger needs to be transferred between different vehicles within the same stop .
2.1 The Dynamic Timetable Model
The dynamic timetable model (DTM) is a new model introduced in , aiming at efficiently updating the timetable after a delay of a vehicle.
Given a timetable , the directed graph representing DTM, is defined as follows: (1) for each stop in , a switch node is added to , representing an arrival or start time event of a traveler at stop ; (2) for each elementary connection a departure node is added to , and a connection arc , connecting to the switch node of (the immediately next stop) , is added to ; (3) for each elementary connection , a switch arc arc , connecting the switch node of the departure stop to the departure node of at , is added to ; (4) for each vehicle which travels through the itinerary , an arc (vehicle arc), connecting the departure node of with the departure node of , is added to , for each .
The timetable routes are periodic, with period (typically ). Any transfer and travel time is assumed to last less than . Given two time instances and , such that , denotes the (cyclic) time difference between them.
The associated time references and the weight function are defined as follows. The time point of a departure node is fixed and it denotes the scheduled departure time of the associated public transportation vehicle. The time point of a switch node of stop , varies and represents any possible start or arrival time at the stop . The weight of each non switch (i.e., connection and vehicle) arc is fixed and is set to . The weight of the rest (i.e., switch) arcs varies and its default value is infinity.
For each connection , or denotes the arrival time at stop , departing from via the departure node , at time . For each stop, the departure nodes are ordered by their (arrival times at their arrival stop ). Moreover, for each switch node , we store the stop it is associated with, while for each departure node , we maintain both the departure time reference and the vehicle of connection which is associated with. Figure 1 shows a DTM graph. Departures of station labeled 20 and 35 concern train connections, while the rest concern bus connections.
2.2 Multimodal Journey
A multimodal transport network consists of schedule-based public transport along with road and pedestrian path networks, for supporting traveling with both unrestricted departure (e.g., for walking, cycling, and driving) and restricted departure (for embarking on public transport vehicles that follow scheduled timetables). In contrast to a restricted-departure timetable elementary connection, an unrestricted-departure connection is defined as an arc representing a time-independent traveling path from stop to stop .
A multimodal itinerary is a sequence of trip-paths consisting of unrestricted and restricted-departure connections such that, for each , and
A multimodal journey query is defined by a tuple where is a departure stop, is an arrival stop, is a minimum departure time from , and represents the desired transport mode(s). There are two natural optimization criteria used to answer a timetable query. They consist in finding a multimodal itinerary from to starting (from ) at a time after and arriving at either with the minimum possible arrival time or with the minimum number of vehicle transfers. These two criteria define the following core optimization problems: (a) the Earliest Arrival Problem (EAP) is the problem of finding a multimodal itinerary from to starting at a time after and arriving at stop as early as possible, (b) the Minimum Number of Transfers Problem (MNTP) is the problem of finding a multimodal itinerary from to starting at a time after and having as few transfers from one vehicle to another as possible, and (c) the multicriteria version of EAP and MNTP (multicriteria multimodal journey query).
Given a timetable , a delay occurring on a connection is modelled as an increase of minutes on the arrival time: . The timetable is then updated according to some specific policy which depends on the network infrastructure. The new timetable, called disposition timetable , differs from in the arrival and departure times of the vehicles that depend on in .
In this work, we consider the simplest policy for handling delays and updating the timetable (no vehicle waits for a delayed one), which is also considered in similar works (see e.g., ). Other policies can be found in e.g., [5, 6, 12, 16, 22]. Therefore, when a delay occurs on a connection , the only time references which are updated are those regarding the departure times of . Moreover, we assume that the policy does not take into account any possible slack times and hence the time references are updated by adding .
3 The Multimodal Dynamic Timetable Model
In this section, we introduce the multimodal dynamic timetable model (MDTM) aiming at modeling traveling in multimodal transport networks. We also provide the corresponding algorithms for solving EAP (and MNTP), and for handling delays (updating the timetable). MDTM is an extension of DTM . The key difference consists in the new ordering of the departure nodes within a stop.
Given a timetable , the directed graph representing MDTM is defined similarly to DTM, but with the following additional features:
For each stop , its associated departure nodes are grouped in a specific ordering: (i) a first grouping is created, where two departure nodes belong to the same group if the head switch node of their outgoing arcs is identical; (ii) within each group of , a second grouping is created, where two departure nodes belong to the same group if the transport mode they represent is identical (i.e., departures of the same means of transport are grouped together); and (iii) the departure nodes within each group of are ordered by increasing arrival time at the head switch nodes of their outgoing arcs.
For each unrestricted-departure connection from stop to stop , a switch-switch arc is added to .
Let denote a group of departure nodes resulted from the aforementioned grouping, having departure stop , arrival stop , and transport mode . Figure 2 shows the MDTM graph corresponding to the DTM graph of Figure 1. Then, includes departure nodes 5 and 15 of stop that correspond to bus connections departing from and arriving at .
3.1 Query Algorithm
We shall now present our query algorithm, named MDTM-QH, for solving EAP on a MDTM graph . An EAP query is answered by executing a modified Dijkstra’s algorithm on , starting from the switch node of stop .
Before discussing the details of our algorithm, we will first describe the additional data structures used by MDTM-QH with respect to the classic Dijkstra’s algorithm. In particular, for each switch node of a stop, algorithm MDTM-QH maintains a set of earliest arrival index tables, whose construction and contents are described below.
Each departure node is associated with a departure time and an arrival time . In general, all the departure nodes with the same departure stop can be ordered by either departure time or arrival time at an arrival stop. The first ordering favors an efficient search on the departure nodes to get the valid routes which have a valid departure time, i.e., a departure time greater than or equal to at which the traveler is at . The second ordering favors an efficient search on the departure nodes on the optimal routes which provide the earliest arrival times to their adjacent stops. The second ordering is already applied within the existing ( and ) departure groups of . However, we would also like to have the advantage of the first ordering. Therefore, for the purpose of searching effectively the departure nodes that have both valid departure times from stop and earliest arrival times to an adjacent arrival stop , we introduce the earliest arrival index tables. Let denote such a table, consisting of departure nodes with departure stop , arrival stop and transport mode . is constructed as follows: Let be the sequence of the departure nodes, ordered by arrival time at , for a trip departing from stop and arriving to stop with transport mode . Initially, is empty. Node is inserted in and is the current max departure time. Afterwards, for , if , then and is inserted at the end of table; otherwise, is skipped. If the table contains the departure nodes , , and for some , , then is the first departure node to start the search of the earliest arrival time at . This allows us to bypass the departure nodes, before in the arrival ordered sequence, with departure time less than .
Table 1 shows the contents of table , for the example shown in Figure 2. If a traveler has arrived or has started its journey from stop at time , then to continue at the adjacent stop , the search of valid and optimal path-solutions can start after the departure node 20.
To reduce the size and the operations in the priority queue of the query algorithm, we insert in it only the switch nodes and change the arc relaxation as described below (iteration step). The MDTM-QH algorithm works as follows.
Initialization. The switch node of the origin stop is inserted in the priority queue, with distance and time . During the algorithm execution, provided that the traveler is already at at time the minimum transfer time of is set to .
Iteration. At each step, a switch node is extracted from the priority queue. The node is settled having got the earliest arrival time for the optimal journey departing from at time and arriving to at time . Then the algorithm relaxes the outgoing arcs of following a node filtering and blocking process:
Using the existing grouping of departure nodes ( and ), the departure node groups corresponding to non-selected transportation modes are skipped;
Using the earliest arrival index tables, the algorithm can skip the departure nodes of stop that have an earlier than departure time or they provide non-optimal arrival times to the next adjacent stops. In particular, after is extracted, then for each adjacent arrival stop of stop and for each enabled transport mode : (1) a binary search is performed on the index table for getting the first contented departure node with that provide the earliest arrival time at stop ; and (2) an arc relaxation step is performed based on those departure nodes.
Let the sequence of the outgoing switch arcs of be , which corresponds to a travel using the transport mode and arriving at the stop . Let , , and let the node be the departure node that is returned by . Within the current time period , arcs can be safely skipped, because they provide earlier departures or non-optimal arrival paths from to . The first arc that is relaxed is . Provided that the next switch arcs and their departure node heads are ordered by arrival time, the algorithm relaxes the arcs and it stops as soon as falls over a departure node with (a) and (b) . The first condition ensures the minimum transfer time for the traveler in using a different vehicle to continue his/her travel. The second condition ensures that we will not miss optimal paths in with no transfer.
At each case, if the departure node head of the switch arc is visited for the first time or it has from a previous step a greater distance, then we set and . When the distance is updated, the algorithm relaxes also the outgoing arcs of the departure node . For its outgoing arc , if is visited for the first time or it has from a previous step a greater distance, then we set . Also if there is a vehicle (departure-departure) arc , then for the associated vehicle we also relax the outgoing arcs of the departure nodes at the next stops at which the vehicle passes, for the same route. In that case, we can stop if we fall over a departure which has an outgoing arc to a switch node which has not yet been visited or extracted from the priority queue. The algorithm finishes when the switch node of the destination stop is settled.
3.2 Improved Query Algorithm
In order to boost the performance of the query algorithm MDTM-QH
, we adapt the ALT heuristic. The combined algorithm is named MDTM-QH-ALT. ALT is a goal-directed technique, i.e., its main aim is that of pushing the shortest-path search faster towards the target stop . This is achieved by adding a feasible potential to the priority of each node in the queue. The feasible potentials are computed as follows. Given a set of nodes called landmarks, the feasible potential of a node towards a target is computed as . By the triangle inequality, it follows that is a lower bound to the distance and this is enough to prove the correctness of the shortest path algorithm (see  for more details). It is easy to see that the tighter the lower bounds are, the more narrowed the search space becomes (i.e., the faster the query algorithm performs). Therefore, choosing good landmarks that provide tight lower bounds is a fundamental part of the preprocessing phase of ALT.
As in DTM , we apply in MDTM an approach similar to that proposed in . In particular, we select as landmarks the switch nodes, each of which represents the arrival node group of a station. Therefore the lower bound distance, , between two switch nodes, and , denotes the minimum travel time among connections traveling from station to station . These lower bound distances can be computed during a preprocessing phase by running single-source queries from each switch node. The tightest lower bounds can be obtained by storing all pair station distances and by computing all-pairs shortest paths on the condensed version of the input graph (see ). This makes sense particularly when the stations are relatively few in number.
We combined ALT along with our query algorithm in Section 3.1. This combination reduces considerably the search space and leads to a more efficient algorithm.
3.3 The Multicriteria Multimodal Query Algorithm
In order to provide best journeys for a vector of cost functions over the multimodal transport options, we introduce themulticriteria extensions of MDTM-QH and MDTM-QH-ALT. In that case, in addition to computing journeys with a variety of transport modes, the optimal Pareto set of journeys is computed on the EA and MNT criteria (a set of pairwise non-dominating journeys, each of them being better to at least one objective criterion and no worse in all other criteria). Since all Pareto-optimal journeys are exponential in number, we focus on finding a solution that minimizes MNT, while retaining the EA below a given threshold (a variant also considered in ). Our multicriteria algorithm McMDTM-QH is described below. Its combination with ALT will be called McMDTM-QH-ALT.
Let be a multicriteria (EA, MNT) query, starting from the switch node of stop . The number of transfers is taken into account by setting the weight of all switch-departure arcs to 1 (representing a transfer between vehicles) and the weight of the rest of the arcs to 0. Due to the modeling, every single switch node in MDTM can have at least as many Pareto-optimal solutions as its incoming arcs. Initially, the cost minimization is on EA. Therefore, when the target switch node is settled, we have found the first (EA,MNT) Pareto optimal journey, with the minimum arrival time . We then let Dijkstra’s algorithm continue; whenever the target switch node is explored again with a smaller number of transfers than in any of the already found Pareto-optimal solutions, a new Pareto-optimal journey is found. The algorithm stops when all journey solutions, with arrival time to the target stop less or equal than , have been found.
3.4 Update Algorithm
We shall now present our update algorithm, based on , named MDTM-U, for updating the timetable when a delay occurs, that is, for updating the corresponding MDTM graph.
Given a timetable , we assume that a delay occurs first on a connection of , and it is propagated to the (affected) connections , which are performed by the same vehicle. Also let be the departure nodes corresponding to the affected connections. If is represented as a MDTM graph , then the MDTM update algorithm computes the MDTM graph , corresponding to the disposition timetable , as follows.
Edge weight increase: Starting with , the weight of arc is increased by .
Node reordering: For each of the other connections , , its associated departure node has its departure time increased by . Due to that increase, the arrival time ordering of the departure nodes on the affected stops may be invalidated. Hence, along with the new arrival times, the departure node might need to be moved to its correct position within its group, i.e., before a departure node with arrival time greater than .
4 Experimental Evaluation
4.1 Experimental setup
In this section, we present our experimental study to assess the performance of the algorithms presented in the previous sections. The experiments have been performed on a workstation equipped with an Intel Quad-core i5-2500K 3.30GHz CPU and 32GB of main memory. All algorithms implemented in C++ and compiled with gcc (v4.8.4, optimization level O3).
4.2 Input Data and Parameters
The input data for creating the multimodal transport networks are (a) timetable data sets in the General Transit Feed Specification (GTFS) format, containing various means of public transport and (b) road and pedestrian network data sets in the Open Street Map (OSM) format. The integrated networks concern the metropolitan areas of Berlin and London. The source of the timetable data for London is  and for Berlin is . The source of the road and pedestrian network data is . The packed-memory graph structure  was used for representing the input instances in all implemented algorithms.
Tables 2 and 3 provide detailed information about the input timetables. In Table 2, we report, for each timetable, the number of stations and the number of elementary connections between stops (a proxy for size), as well as the number of nodes V and arcs E of the corresponding graph, for each model. In the same table we include the sizes of the realistic time-expanded (TE-real) and the reduced time-expanded models (TE-red) [7, 20] for comparison.
|Berlin||12 838||4 322 549||12 967 647||21 612 745||8 645 098||17 024 138||4 335 387||12 701 695||4 335 387||12 708 568|
|London||20 843||14 064 967||42 194 901||70 324 835||28 129 934||55 758 468||14 085 810||41 837 355||14 085 810||41 856 048|
In Table 3, we report, for each timetable, the average transfer time for changing vehicles, the average number of adjacent stops or stations, and the percentage of the existed transportation means to the total number of the elementary connections.
For experimenting with MDTM, we additionally added non-restricted departure traveling paths, using the following two approaches:
Limited walking and driving travel time paths on transitively closed pedestrian and road networks. Via the pedestrian networks, we added single foot-paths for enabling walking between nearby stops. The foot-paths that were selected and added had shortest travel time of at most 10mins, with walking speed 1m/sec. Also, via the road networks, we added free flow speed driving-paths for enabling the driving between stops with EVs. For this scenario, we considered 10 EV-stations providing public communal EVs with shortest travel time of at most 1 hour. In addition, the driving-paths connect only EV-stations. In the Berlin instance, the switch-switch arcs representing foot-paths are 2381 and the driving-paths are 39. In the London instance, the switch-switch arcs representing foot-paths are 37226 and driving-paths are 60.
Unlimited walking travel time paths on the full pedestrian network. For this purpose, we connected each switch node in the public transit network with the nearest node in the pedestrian network by an access edge. This approach was inspired by that in . In the Berlin instance, the embedded pedestrian network had 932108 nodes and 1059556 edges. In the London instance, the embedded pedestrian network had 1520056 nodes and 1653052 edges.
To compute efficiently the different nearest node pairs in both cases, we used the tree data structure R-tree222R-tree is a balanced search tree that can order and group nearby geographical points by their minimum bounding geographical rectangle. The tree organizes its data in pages, each one of a maximum number of entries, M. The nearest neighbor search can be done efficiently in time, where is the number of the geographical points. . The combination of the query algorithms with ALT requires a preprocessing phase, whose requirements are reported in Table 4.
4.3 Experimental Results
For each input instance, we generated 1000 random queries consisting of source and target stop pairs, along with a departure time at each source stop. In the experimental evaluation we have included the EA query algorithms TE-QH, TE-QH-ALT, for TE-red , DTM-QH DTM-QH-ALT, for DTM , and the new algorithms MDTM-QH MDTM-QH-ALT, for MDTM. For the latter, we have also included the multicriteria (EA,MNT) query algorithms McMDTM-QH and McMDTM-QH-ALT with threshold on EA 100% and 120% (denoted with extension 1.0 and 1.2, respectively). Note that QH denotes an optimized version of Dijkstra’s algorithm (with the corresponding node blocking and extended arc relaxation methods ) and QH-ALT denotes its ALT extension . The results of the algorithms for answering multimodal queries are reported in Table 5, where we include only the ALT-based algorithms (marked with the ALT suffix) that had a much better performance (for completeness, we report the comparison among algorithms with and without the ALT heuristic in Table 7 in the Appendix).
|MCR-ht [9, 11]||361.23|
|MR--t10 [9, 11]||21.47|
We added in Table 5 the query times of the best previous (RAPTOR based) approaches MCR-ht and MR--t10333 MCR-ht weakens the domination rules by trading off walking and arrival time. In MR--t10 the walking duration is not used as criterion and it is limited to 10 minutes. in [9, 11]. We stress that the former computes multicriteria (on arrival time, number of transfers, and walking duration) multimodal journeys, while the latter computes multicriteria (on arrival time and number of transfers) multimodal journeys. The times are scaled versions of those reported in [9, 11] using the benchmark for scaling factors in . Note that since the MCR-ht, MR--t10, McMDTM-QH-ALT-1.0 and McMDTM-QH-ALT-1.2 report multicriteria multimodal queries, it is natural that they take more time than regular multimodal EAP (unicriterion) query algorithms. This is also true for the case of unlimited walking, due to the much larger search space explored by the algorithms. Nevertheless, McMDTM-QH-ALT-1.0 and McMDTM-QH-ALT-1.2 are competitive to MCR-ht and MR--t10.
From Tables 5 and 7, we observe that MDTM-QH achieves a smaller query time than TE-QH and DTM-QH. This is due to the grouping and ordering of nodes within each station. In the reduced model TE-red, within each stop, the arrival time events are not merged and the departure nodes are ordered by departure time. Therefore, TE-red has a disadvantage on finding optimal paths between stops and an advantage on finding valid paths between the stops. In DTM, within each stop, the arrival time events are merged into a switch node and the departure time events are ordered by arrival time (at the next station). Therefore, DTM has an advantage on finding the optimal paths between the stops and an disadvantage on finding the valid paths between the stops. In comparison to DTM, MDTM has the departure nodes ordered by arrival time within a set of groups ( and ), along with the earliest arrival index tables. In that way, MDTM gains an advantage on blocking non-selected transportation modes and also non-valid paths between the stops. In all the cases, having extended the optimized Dijkstra’s variant query algorithm with the ALT goal-directed speedup technique leads to a significant decrease in query time, by at least 40%. With ALT the query algorithms need less iterations on finding the target stop. Our multicriteria algorithms with are faster than those with , since they compute less journeys.
For evaluating updates (occurring after a delay), 1000 elementary connections were randomly selected, for each input instance, and for each elementary connection we randomly generated a delay affecting the corresponding train or bus, chosen with uniform probability distribution between 1 and 360 minutes.
In the experimental evaluation we have included the update algorithms TE-UH for TE-red , DTM-U for DTM , and the new algorithm MDTM-U for MDTM. The experimental results of the update algorithms are reported in Table 6. The updates times measure the average computational times for updating the graphs when a delay in a transportation vehicle itinerary has to be absorbed. In DTM-U, only (at most) two arc weights and few node time references need to be changed in the original graph to keep the EAP queries correct. Although MDTM-U has an additional computation cost to maintain the earliest arrival index table for any node time reference update, the time of MDTM-U is competitive to that of DTM-U. The updating algorithm in both cases are less than 138 s. That is due to the fact that the number of stations where something changes, as a consequence of a delay, is small with respect to the size of the whole set of stations .
5 Conclusions and Future Work
We described the Multimodal DTM, a model for multimodal route planning that constitutes an extension of the dynamic timetable model (DTM) (originally developed for unimodal journey planning) that compares favorably with other state-of-the-art multimodal route planners.
We are currently developing a mobile application for multimodal route planning, using Multimodal DTM as the core routing engine of the cloud-residing component. Our multimodal journey planner can also be combined with the mobile application developed in  that allows users to evaluate the suggested (by the planner) routes. We are also working in developing multicriteria multimodal journeys with more (than two) traveling options/criteria.
Acknowledgments. The last author is indebted to Tobias Zündorf for various interesting discussions.
-  G. Aifadopoulou, A. Ziliaskopoulos, and E. Chrisohoou. Multiobjective optimum path algorithm for passenger pretrip planning in multimodal transportation networks. J. Transp. Res. Board 2032(1), 26–34 (2007).
-  L. Antsfeld and T. Walsh. Finding multi-criteria optimal paths in multi-modal public transportation networks using the transit algorithm. In Proceedings of the 19th ITS World Congress (2012).
-  H. Bast, M. Brodesser, and S. Storandt. Result diversity for multi-modal route planning. In Algorithmic Approaches for Transportation Modeling, Optimization, and Systems – ATMOS 2013, OASIcs, pp. 123–136 (2013).
-  H. Bast, D. Delling, A. V. Goldberg, M. Müller-Hannemann, T. Pajor, P. Sanders, D. Wagner, and R. F. Werneck. Route planning in transportation networks. In Algorithm Engineering - Selected Results and Surveys, volume 9220 of Lecture Notes in Computer Science, pages 19–80. 2016.
S. Cicerone, G. D’Angelo, G. Di Stefano, D. Frigioni, and A. Navarra.
Recoverable robust timetabling for single delay: Complexity and
polynomial algorithms for special cases.
Journal of Combinatorial Optimization, 18(3):229–257, 2009.
-  S. Cicerone, G. D’Angelo, G. Di Stefano, D. Frigioni, A. Navarra, M. Schachtebeck, and A. Schöbel. Recoverable robustness in shunting and timetabling. In Robust and Online Large-Scale Optimization, volume 5868 of Lecture Notes in Computer Science, pages 28–60. Springer, 2009.
-  A. Cionini, G. D’Angelo, M. D’Emidio, D. Frigioni, K. Giannakopoulou, A. Paraskevopoulos, and C. D. Zaroliagis. Engineering graph-based models for dynamic timetable information systems. Journal of Discrete Algorithms, Vol. 46-47 (2017), pp. 40-58.
-  J. Dibbelt, T. Pajor and D. Wagner. User-constrained multi-modal route planning. In Algorithm Engineering and Experiments – ALENEX 2012, pp. 118–129. SIAM (2012).
-  D. Delling, J. Dibbelt, T. Pajor, D. Wagner, and R. Werneck. Computing multimodal journeys in practice. In 12th International Symposium on Experimental Algorithms (SEA 2013), volume 7933 of Lecture Notes in Computer Science, pages 260–271. Springer, 2013.
-  D. Delling, T. Pajor, and D. Wagner. Engineering time-expanded graphs for faster timetable information. In Robust and Online Large-Scale Optimization, volume 5868 of Lecture Notes in Computer Science, pages 182–206. Springer, 2009.
-  J. Dibbelt. Engineering Algorithms for Route Planning in Multimodal Transportation Networks. PhD Thesis, Karlsruhe Institute of Technology, February 2016.
-  M. Fischetti, D. Salvagnin, and A. Zanette. Fast approaches to improve the robustness of a railway timetable. Transportation Science, 43(3):321–335, 2009.
-  K. Giannakopoulou, S. Nikoletseas, A. Paraskevopoulos, and C. Zaroliagis. Dynamic Timetable Information in Smart Cities. in Proc. 22nd IEEE Symposium on Computers and Communications – ISCC 2017, IEEE Computer Society, pp. 42-47.
-  A. Goldberg and C. Harrelson. Computing the shortest path: A* search meets graph theory. In ACM-SIAM Symposium on Discrete Algorithms (SODA2005), pages 156–165. SIAM, 2005.
-  A. Guttman. R-trees: A dynamic index structure for spatial searching. In Proc. ACM SIGMOD International Conference on Management of Data (SIGMOD 1984), pp. 47-57.
-  C. Liebchen, M. Schachtebeck, A. Schöbel, S. Stiller, and A. Prigge. Computing delay resistant railway timetables. Computers & OR, 37(5):857–868, 2010.
-  G. Mali, P. Michail, A. Paraskevopoulos, and C. Zaroliagis. A new dynamic graph structure for large-scale transportation networks. In 8th International Conference on Algorithms and Complexity (CIAC2013), volume 7878 of Lecture Notes in Computer Science, pages 312–323. Springer, 2013.
-  P. Modesti and A. Sciomachen. A utility measure for finding multiobjective shortest paths in urban multimodal transportation networks. Eur. J. Oper. Res. 111(3), 495–508 (1998).
-  OpenStreetMap Data Extracts http://download.geofabrik.de.
-  E. Pyrga, F. Schulz, D. Wagner, and C. Zaroliagis. Efficient models for timetable information in public transportation systems. ACM Journal of Experimental Algorithmics, 12(2.4):1–39, 2008.
-  Reference CPU scores http://i11www.iti.kit.edu/~pajor/survey.
-  M. Schachtebeck and A. Schöbel. To wait or not to wait - and who goes first? delay management with priority decisions. Transportation Science, 44(3):307–321, 2010.
-  Transit Feeds. https://transitfeeds.com.
-  Transport for London. https://tfl.gov.uk.
-  D. Wagner and T. Zündorf. Public Transit Routing with Unrestricted Walking. In Algorithmic Approaches for Transportation Modeling, Optimization, and Systems – ATMOS 2017, OASIcs Series, Vol. 59 (2017), pp. 7:1-7:14.
Appendix A Appendix
Table 7 shows the performance of the algorithms with (✓) and without () the ALT heuristic for the case of limited walking (the unlimited case exhibited a similar performance difference).
|Berlin||TE-QH ||TE-QH-ALT ||18.34||6.88|
|DTM-QH ||DTM-QH-ALT ||27.63||12.17|
|London||TE-QH ||TE-QH-ALT ||15.13||5.14|
|DTM-QH ||DTM-QH-ALT ||31.12||10.25|