ArticlePDF Available

Multimodal Route Planning With Public Transport and Carpooling

Authors:
  • c.technology AG

Abstract and Figures

Increasing mobility demands raise the pressure on existing transport networks. As the most used mode of transport, private cars have a particularly strong environmental impact and produce congestion. Ridesharing or carpooling, where a driver and several riders form a carpool, can help to address these issues by increasing the number of persons per car. Therefore, recent years have seen a strong interest in carpooling. However, there exists no effective method of integrating carpooling into transport trip planners as of now, mainly due to the fuzzy and flexible nature e.g., no fixed stops, possibility of making detours of carpooling. This hinders the acceptance of carpooling by the general public. This paper proposes a new method to merge public transport and carpooling networks for multimodal route planning, considering the fuzziness and flexibility brought by carpooling. It is based on the concept of drive-time areas and points of action. The evaluation with real-world data sets shows that, compared with the state-of-the-art method, the proposed method merges static i.e., public transport and dynamic/fuzzy i.e., carpooling networks better, while retaining the desired flexibility offered by the latter, and thus creates a higher interconnectivity between the networks. Meanwhile, the merged network enables multimodal route planning, which can provide users with trips from an origin to a destination using different combinations of modes. IEEE
Content may be subject to copyright.
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 1
Multimodal Route Planning with
Public Transport and Carpooling
Haosheng Huang, Dominik Bucher, Julian Kissling, Robert Weibel and Martin Raubal
Abstract—Increasing mobility demands raise the pressure on
existing transport networks. As the most used mode of transport,
private cars have a particularly strong environmental impact and
produce congestions. Ridesharing or carpooling, where a driver
and several riders form a carpool, can help to address these issues
by increasing the number of persons per car. Therefore, recent
years have seen a strong interest in carpooling. However, there
exists no effective method of integrating carpooling into transport
trip planners by now, mainly due to the fuzzy and flexible nature
(e.g., no fixed stops, possibility of making detours) of carpooling.
This hinders the acceptance of carpooling by the general public.
This article proposes a new method to merge public transport and
carpooling networks for multimodal route planning, considering
the fuzziness and flexibility brought by carpooling. It is based
on the concept of drive-time areas and points of action. The
evaluation with real-world datasets shows that compared to the
state-of-the-art method, the proposed method merges static (i.e.,
public transport) and dynamic/fuzzy (i.e., carpooling) networks
better, while retaining the desired flexibility offered by the
latter, and thus creates a higher interconnectivity between the
networks. Meanwhile, the merged network enables multimodal
route planning, which can provide users with trips from an origin
to a destination using different combinations of modes.
Index Terms—Carpooling, Ridesharing, Multimodal Route
Planning, Public Transport, Network Linking
I. INTRODUCTION
MOBILITY has become more important over the past
few decades and will very likely continue to do so.
Increasing mobility in and between cities raises the pressure on
existing transport networks. To meet this increasing demand,
many cities around the world continuously improve their
public transport infrastructure, and motivate people to use
public transport such as subways, buses and trains. However,
private cars are still the most used means of transport, as
shown in a study which investigates the usage patterns of
different transport modes in 218 European cities between 2001
and 2011 [23]. The extensive use of private cars has led to
traffic congestions in urban and sub-urban areas, and brings
about many societal and environmental issues. Carpooling or
ridesharing, where a car driver and one or more riders form
a carpool, is a promising solution to address these issues by
Manuscript received May 14, 2018; revised xx; accepted xx. The work
was partly supported by the Swiss National Science Foundation within NRP
71 “Managing energy consumption” and by the Commission for Technology
and Innovation within the Swiss Competence Center for Energy Research
Mobility.
H. Huang, J. Kissling and R. Weibel are with the GIScience Center,
University of Zurich, Winterthurerstr. 190, 8057 Z ¨
urich, Switzerland (e-mails:
{haosheng.huang, robert.weibel}@geo.uzh.ch; ju.kissling@gmail.com).
D. Bucher and M. Raubal are with the Institute of Cartography and Geoin-
formation, ETH Zurich, Stefano-Franscini-Platz 5, 8093 Z¨
urich, Switzerland
(e-mails: {dobucher, mraubal}@ethz.ch).
increasing the number of persons per car [3], [6], [14]. Many
carpooling platforms exist on the Internet, such as BlaBlaCar,
e-carpooling.ch, and carpoolworld.com.
Specifically, in carpooling, a driver and one or more riders
share a part of their common itinerary using the driver’s car
as well as a part of the travel expenses [1]. Most drivers
are willing to make a short detour to pick up riders, which
increases flexibility. In addition, traveling using carpooling is
often much cheaper compared to public transport. All these
circumstances make carpooling a very attractive mode of
transport. However, stops defined by carpooling drivers are
often not the same as a user’s desired origin and destination,
which prevents users from sharing rides. To further promote
and make full use of carpooling, there is a strong need to
develop multimodal transport planning systems that combine
public transport and carpooling [1], [6]. These multimodal
planners will allow users to search for a trip from an origin to
a destination using different combinations of public transport
and carpooling.
Research on merging public transport and carpooling for
multimodal route planning is still at an early stage, and only a
few studies exist so far [1], [6]. This might be due to several
reasons. On the one hand, carpooling is still considered as
a niche market and therefore not attractive financially. On
the other hand, the dynamism, fuzziness and flexibility of
carpooling make it challenging to integrate carpooling with
public transport for multimodal route planning. Normally,
multimodal routing networks are built on static networks,
which consist of fixed routes and stops (e.g., bus stops) [4].
The basic principle of multimodal networks is network merg-
ing, where different transport networks are merged into one
single routable graph. This is usually done by applying spatial
methods like nearest neighbor algorithms to link nearby nodes
in different networks [4], [21]. The crucial point is that this
cannot be done easily or efficiently with carpooling, since no
fixed stops exist and carpooling is of a fuzzy nature, which
means detours can be made and therefore new stops can
be exploited. New methods must be developed to efficiently
merge the static (i.e., public transport) and dynamic/fuzzy (i.e.,
carpooling) networks, while retaining the desired flexibility
offered by carpooling.
In recognition of this research gap, this article proposes a
new method to merge public transport and carpooling networks
to facilitate multimodal route planning. Firstly, we apply the
principle of time-expanded models to represent and model
public transport and carpooling networks. Secondly, a merging
technique, which can represent fuzzy locations and retain flex-
ibility, is presented to merge the two networks into one single
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 2
routable graph. In particular, we apply the concept of drive-
time areas and points of action for this process. The proposed
method is evaluated in an experiment with the Swiss railway
network and real-life carpooling offers. We demonstrate that
the proposed method creates a high interconnectivity between
carpooling and the railway network. In addition, the merged
network enables multimodal route planning, which can provide
users with a trip from an origin to a destination using different
combinations of public transport and carpooling.
The remainder of this article is organized as follows. Sec-
tion II presents related work. In Section III, we describe the
proposed method. Section IV reports on the evaluation, and
Section V discusses the results. We draw conclusions and
present an outlook on future work in Section VI.
II. RE LATE D WOR K
A. Network Modeling and Route Planning
Route planning can be described as the problem of finding
a path through a graph. A graph consists of nodes or vertices,
which are connected by edges (often carrying a weight,
such as distance or travel time). In many cases, the optimal
path is defined by having the minimal sum of weights (i.e.,
minimal cost) along edges from a source to a destination node.
Dijkstra’s shortest path algorithm [12] arguably is the best
known route planning algorithm. Based on it, many speedup
and optimization techniques have been proposed, resulting in
several other route planning algorithms, such as A* [18], ALT
(A*, landmarks and triangle inequality) [17], ArcFlags [19]
and hierarchical approaches [15].
While a road network can usually be mapped to a graph rel-
atively straightforwardly, the case is less clear for other trans-
port networks, such as public transport. Even though trains
and buses also run on static routes, their time-dependence (via
timetables) requires specific modeling techniques [20], [21].
Three popular models exist for representing public transport
and their timetables (which include a set of time-dependent
events, i.e., departure and arrival times): time-expanded,time-
dependent, and frequency-based models.
In time-expanded models [4], [21], [22], public transport
stops (e.g., bus stops) are simply modeled as “stop”-
labeled nodes. Other nodes represent time events from
the timetable, and directed edges between these nodes are
added whenever it is possible to transfer from one to the
other (i.e., the departure of one transport vehicle is after
the arrival of the other). These time nodes are also linked
to nodes of their owning stops. While these models often
lead to a large number of nodes and edges, standard route
planning algorithm and their speedup techniques can be
directly applied on the resulting graph.
Time-dependent models contain an edge between stop
nodes if at least one connection exists (e.g., a bus line).
Weights of these edges are determined as a function of
time to reflect the time events of these stops [4], [7].
These models often have much smaller graph sizes than
time-expanded models, however, route planning based
on them becomes more complicated and time-consuming
due to the dynamic nature of the edge weights.
Frequency-based models [5] use the regularity of many
public transport networks to compress the graph and
reduce the query times. They store departure times, inter-
vals and frequencies instead of time-dependent functions.
In essence, time-dependent and frequency-based models shift
processing complexity to route planning algorithms, while
time-expanded models can be preprocessed better. Delays and
uncertainty are common in public transport which makes it
of essence that a graph can quickly be updated according to
the traffic state of the transport network [10], [13]. Several
methods have been proposed to make these updates [4]:
repairing,bypassing wrong parts and metric splits.
Route planning on public transport networks is hardly
purely based on travel distance, but often considers other
criteria, such as duration, and costs [16], [21]. Several typical
routing problems are often discussed in the literature: routing
with a given departure time range, routing with a given arrival
time range, and multi-criteria routing.
B. Multimodal Route Planning
Integrating different modes of transport (such as walking,
cycling, car travel, or public transport) is commonly referred
to as multimodal route planning if the involved networks
(physically or conceptually) differ [6], [8]. Multimodal route
planning can be achieved by merging the involved network
graphs into a single graph, and applying routing algorithms
on the merged graph. A common approach for merging
different networks is to solve the nearest neighbor problem
(NN) [21], which simply connects spatially close stops from
different networks. Specifically, a stop node Ain network Gis
connected with its closest stop node Bin another network G0.
Additional conditions are often respected, e.g., the distance
between Aand Bshould be shorter than a certain threshold.
To retain the transport mode information after linking dif-
ferent networks, nodes and edges in the merged multimodal
graph usually carry a label denoting the mode of transport [11].
C. Carpooling
In carpooling or ridersharing, a driver and one or several rid-
ers share part of their common trips using the driver’s car [1].
This potentially helps to reduce the societal and environmental
impacts brought by car travels. Therefore, carpooling has
become more and more popular in recent years.
While carpooling offers several economical and ecological
benefits, its integration into transport trip planners has not
been studied well previously. Aissat and Varone present one
of only few studies on this aspect [1]. They simply use an
existing multimodal transport planner and try to substitute each
of the individual parts of a potential trip with carpooling. In
their approach, an original part of the trip is only replaced if
the carpooling substitution (including waiting times) is faster
than the original. To find potential carpooling offers, they
compute all possible trips from carpooling pickup locations
to later stops on the original trip. Another approach was
proposed by [6]. They define the public transport network as
the riders’ network and the road network as the carpooling
drivers’ network. The idea, then, is to compute multiple
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 3
shortest paths, and synchronize the trips of riders and drivers.
This two-synchronization-point shortest path problem is made
up of a composition of 5 sub-paths, where two of them lead
to a carpooling pickup point, one from the pickup to the
carpooling drop-off, and two from the drop-off location to
the final destination of rider and driver. The pickup and drop-
off points are chosen by minimizing the summarized travel
cost of the involved parties. There are also many studies
developing methods to identify meeting points for car drivers
and riders [2], [9]. However, these methods always keep a
specific carpooling offer in mind, and do not try to find a best
carpooling offer from a set of possible choices.
While the above studies present some first attempts to
integrate carpooling into multimodal transport networks, they
still do not fully respect the inherent flexibility offered by
carpooling. For example, carpooling is not restricted to a fixed
route, and often allows detours. This potentially allows the
driver to pick up someone not directly at the stops he/she
defined or somewhere along the planned route. In other words,
many other pickup locations are potentially possible. The state-
of-the-art method NNP [4], [21], which is commonly used for
integrating different transport modes, also cannot effectively
address these issues. In recognition of this research gap, this
article proposes a new method to merge public transport and
carpooling networks for multimodal route planning, consider-
ing the fuzziness and flexibility brought by carpooling.
III. METHODOLOGY
This section introduces our methodology for multimodal
route planning, combining public transport and carpooling.
We first explore how public transport and carpooling networks
can be modeled using time-expanded models (Sections III-A
and III-B). Next, a merging technique is proposed to link
these two networks, considering the fuzziness/flexibility of car-
pooling (Section III-C). Finally, we illustrate how the merged
network can be used for multimodal routing (Section III-D).
A. Modeling of Public Transport Networks
In general, public transport relies on a timetable and op-
erates on established routes. A timetable consists of a set of
stations S, a set of public transport vehicles V(e.g., trains,
subways, and buses ), a set of times T, and a set of elementary
connections C. An elementary connection cCis a tuple
c= (v, s, ts, e, te), denoting that a public transport vehicle
vVstarts at a specified station sSat time tsT,
and arrives at station eSat time teT. Therefore,
the travel time of a connection is simply tets. Please
note that different vehicles lead to different tsand tevalues.
An elementary connection has no stops in between. It can
therefore be interpreted as a leg of a trip l3c. A trip lis a
list of sequential connections, and can be described as a tuple
l= (c1, . . . , cn). In a trip l, every connection chas the same
public transport vehicle v. Thus a trip represents the whole
travel of a certain vehicle (at a fixed time). A route rconsists
of multiple trips visiting the same stops: r={l1, . . . , ln}.
To illustrate the above definitions, we use a fictional ex-
ample. Assume that a public transport agency offers journeys
Fig. 1: A time-expanded model of a public transport network:
A trip is composed of a sequence of time nodes (tP T
i)at
different stop nodes (sP T
i), and it belongs to a route.
from New York (NY) via Washington (DC) to Miami (MI)
without any stops in between. Hence, it offers the route
r(NY-DC-MI) . There are four trains per day undertaking the route.
Hence four trips l14exist. These trips are time-dependent,
since they leave at specific times. On each trip the trains stop
in DC. Thus, each trip consists of two legs or connections c
(NY-DC and DC-MI). If the first train leaves at 10:00, arrives
at 14:00 in DC, leaves there at 14:05, and finally reaches MI
at 23:00, the connections are defined as c1=(train1, NY, 10:00,
DC, 14:00), and c2=(train1, DC, 14:05, MI, 23:00).
In the following, we transform the above defined public
transport network into a time-expanded graph model. At this
point, the following nodes and edges are defined (Figure 1).
Stop node sP T
iS. Each stop node holds information
about a specific stop, e.g., name, geographic location, and
wheelchair accessibility.
Time node tPT
i: A time node defines both the arrival
and departure time of a public transport vehicle vat the
stop sP T
i. Let Arrival(tP T
i)and Departure(tP T
i)be
the arrival and departure time. Thus, Arrival(tP T
i)<
Departure(tP T
i).
Edge (sP T
i, tP T
i): Mark the affiliation of a time node tP T
i
to a stop sP T
i.
Edge (tP T
i, tP T
i+1): The edge between two time nodes tP T
i
and tP T
i+1 represents the actual connection or a leg of a
trip. It is a directed edge. This edge is weighted by a
certain metric. In our case, the weight is set as the travel
duration Arrival(tP T
i+1)Departure(tP T
i).
Trip node lPT : A trip node represents a set of connec-
tions. It can hold information about a specific trip, e.g.,
vehicle types, and wheelchair accessibility.
Edge (tP T
i, lP T ): Mark the affiliation of a time node
tP T
ito a trip lP T . Hence, each trip lP T has edges with
multiple time nodes.
Route node rP T : A route node represents a set of trips. It
can hold information about a specific route, e.g., names.
Edge (rP T , lP T ): Mark the affiliation of a trip node lP T
to a route rP T . Hence, each route rP T has edges with
multiple trip nodes.
This model works for single ride journeys as trips are
represented separately. To retrieve a shortest or fastest path,
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 4
Fig. 2: Representing transfers in the time-expanded model. The
dashed edge (tP T
i, tP T
j)between two time nodes indicates that
a transfer from trip lP T
ito trip lP T
jis possible at stops sP T
i
and sP T
j, both of which belong to the meta-stop mP T .
standard routing algorithms such as Dijkstra’s and A* can be
applied on the sub-graph of the time nodes.
Modeling transfers needs further adaptations to the model.
Other than [21], we do not implement an additional transfer
node, but an additional edge between time nodes of different
trips if a transfer is feasible there. For example, in Figure 2,
a transfer edge (tP T
i, tP T
j)is created between time nodes tP T
i
and tP T
j, where tP T
ibelongs to trip lP T
iand tP T
jbelongs to
another trip lP T
j. The weight of this edge is set as the duration
Departure(tP T
j)Arrival(tP T
i). Please note that multiple
transfer edges might be created, as several transfers from tPT
i
to other time nodes might be feasible. These transfer edges
are labeled as “transfer” to differentiate them from original
parts of a trip. Threshold values are often used to check
whether a transfer is feasible or not. For example, if (3min
< Departure(tP T
j)Arrival(tP T
i)<10 min) holds, only
then the transfer edge (tP T
i, tP T
j)is created. This condition
defines transfer time in a static manner: the transfer time
from stop sP T
ito sP T
jshould be greater than 3 minutes,
but no longer than 10 minutes. Considering the fact that
multiple stops, or more precisely, stop points (e.g., platforms),
might belong to a same meta-stop (e.g., a train station), we
introduce a meta-stop node mP T and relate it with its child
stops. Furthermore, an edge (sP T
i, sP T
j)between every child
stop is created representing the variable transfer time. Please
note that if two stops do not belong to the same meta-stop
but are within walking distance, an edge between them can
also be created. The conditional for creating transfer edge
(tP T
i, tP T
j)can consequently be retrieved from (sPT
i, sP T
j).
Implementing variable transfer times adds complexity to the
model. Information regarding the edge (sP T
i, sP T
j)does not
necessarily have to be stored in the graph itself. An alternative
solution is to store pairs of child stops and their min./max.
transfer times in an external data table or even a text file.
Algorithm 1 shows the algorithm to create transfer edges
between time nodes. It has two inputs: a time-expanded graph
representing all single ride journeys, and a set of transfer
conditions between stops. Each condition defines what makes a
transfer between two stops feasible. The algorithm checks the
difference between the arrival time at a stop and the departure
time at another stop with the transfer condition of these two
stops. If the condition is met, a directed transfer edge with the
Fig. 3: A time-expanded model of carpooling. Similar to public
transport, a trip is composed of a sequence of time nodes
(tCP
i)at different stop nodes (sCP
i), and it belongs to a route.
time difference as its weight is created.
By this adaptation to the original time-expanded model,
journeys with transfers (e.g., a journey from A to C, with
transfer at B) can be retrieved by running a routing algorithm
on the resulting graph.
B. Modeling of Carpooling
Before modeling carpooling data, we need to gain a better
understanding of the characteristics of these data. By analyzing
offers from several existing carpooling platforms (BlaBlaCar,
e-carpooling.ch, carpoolworld.com), we found that a carpool-
ing offer typically consists of an origin (pick-up point), a
destination (drop-off point), and optionally a set of stopover
points that are along the way. The start time of the journey
is also given, as well as prices for the whole journey and
sometimes for each leg. The stop locations are usually not
given as exact longitude/latitude pairs, but rather as city names
or town names. Drivers can optionally specify a detour time,
which is usually between 0 and 30 minutes. This fuzziness in
terms of stop locations and detour times is a major difference
compared to public transport. In the following, we illustrate
how carpooling data can be represented in a time-expanded
model, and in Section III-C, we will show how this fuzziness
helps to link public transport and carpooling network graphs.
Similarly to how we modeled public transport network in
Section III-A, we model carpooling as a time-expanded graph,
as shown in Figure 3. It consists of a set of stop nodes, rep-
resenting the origin (sCP
1), the destination (sCP
n)and a set of
stopovers (sCP
2, . . . , sCP
n1)of the carpooling offer. In contrast
to public transport, carpooling does not directly provide the
information of arrival times at the stopover locations and the
destination, which have to be derived by routing the offer on a
road network. Therefore, we label the time nodes of stopovers
and destination as “derived” time nodes (tCP 0
2, . . . , tCP 0
n). For
each derived time node, we simply set its departure time the
same as its arrival time, as dropping off a passenger is often
very fast.
To enable transfers between different carpooling offers, the
same procedure used for public transport can be applied.
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 5
Algorithm 1 Creating Transfer Edges Between Time Nodes
Input. A time-expanded graph G= (V, E )representing all single ride journeys; a set of transfer conditions T C between
stops, and each transfer condition tc as a tuple (s1, s2, mindur, maxdur ), meaning that the transfer time from stop s1to s2
should be greater than mindur and no longer than maxdur.
Output. A new time-expanded graph G0= (V, E0)that is the original graph Genriched with possible transfer edges.
1: G0G
2: for all tc in T C do
3: V1all the time nodes that are linked to tc.s1
4: V2all the time nodes that are linked to tc.s2
5: Find feasible transfers from V1to V2.
6: for all time node v1in V1do
7: for all time node v2in V2do
8: dur departure time of v2- arrival time of v1
9: Check whether a transfer is feasible here; If yes, add a directed transfer edge from time node v1to v2to G0.
10: if dur > tc.mindur and dur < tc.maxdur then
11: Add the directed edge (v1, v2)to G0; Set its weight as dur; Label the edge as “transfer”
12: return G0
C. Model Merging and Linking
After modeling public transport and carpooling as time-
expanded graphs, the next step is to merge and link these
graphs, considering the fuzziness and flexibility brought by
carpooling. As both graphs use the same types of nodes,
merging them is straightforward. However, linking individual
nodes from the two merged graphs requires more work.
1) Linking via Origins, Destinations, and Stopovers of
Carpooling: As mentioned before, carpooling offers usually
do not specify exact locations for origins, destinations, and
stopovers. It is common to only mention the cities an offer
starts from, arrives in, and passes by. This inaccuracy brings
some challenges to link nodes from the public transport
and carpooling graphs. As carpooling does not have exact
stops, it is unclear how and to which public transport stop
a carpooling offer can be connected. In case of connecting
a carpooling stop (either start, destination, or stopover) to its
nearest public transport stop in the same city using the state-
of-the-art method, the flexibility of carpooling is lost, because
theoretically, the carpooling driver could pick up or drop off
the passenger at any stop within the city. However, connecting
a carpooling stop to every public transport stop within the
same city does not seem to be ideal, either. In a large city, it
would be inconvenient for the driver to deviate much from the
shortest path, simply to drop someone off.
To address the above issues, we firstly use existing geocod-
ing APIs to convert each carpooling stop name into geographic
coordinates (i.e., a longitude/latitude pair). Potential geocoding
solutions are provided by Google, Geonames and others.
At a second step, we check which public transport stops
can potentially be reached from this longitude/latitude pair,
considering the maximum detour restriction. To achieve this
aim, we apply the concept of drive-time areas (DTAs). A
DTA is a zone/polygon around a spatial feature measured
in units of time needed for travel by car1. For example, a
1https://support.esri.com/en/other-resources/gis-dictionary/term/drive-
time%20area
supermarket’s 20-minute DTA defines the area in which drivers
can reach the supermarket in 20 minutes or less. DTA can be
generated by using actual street networks and speed limits or
more accurately with approximated driving times derived from
historical traffic data. Some existing solutions exist for this
purpose, such as ESRI SteetMap Premium. We compute DTAs
around public transport stops, and check if a carpooling stop
lies within a DTA. Computing DTAs around public transport
stops instead of carpooling stops allows reusing these DTAs
when linking other carpooling offers.
Thus, drive-time areas DTAs are implemented around public
transport stops sP T , using the detour time as parameter. Rather
than just finding the nearest neighboring PT stop of a geocoded
carpooling stop sCP , as in the state-of-the-art method, a set
of PT stops are determined by checking whether their DTAs
contain sCP . If the DTA of a particular PT stop sPT contains
the CP stop sCP , it means that sP T can be reached from sCP
within the detour limit. Therefore, sCP can be linked to sP T .
With this, each carpooling stop can be linked to multiple PT
stops. To reduce the number of edges in the merged graph, we
only create an edge between sCP and each sP T s meta-stop.
Figure 4 shows an example where a carpooling stop sCP falls
within the DTAs of sP T
1and sP T
2. Consequently, edges for
(mP T
1, sCP )and (mP T
2, sCP )are created, where mP T
1and
mP T
2are the meta-stops of sP T
1and sP T
2.
After linking the public transport and carpooling stops,
we can then check whether a transfer from carpooling to
public transport, or vice versa, is possible. Following the same
procedure used for representing transfers in public transport
(Section III-A), we employ threshold values to check whether
a transfer is feasible or not. Hence, a directed transfer edge
(tCP , tP T )is created if a certain conditional, e.g., (3min
< Departure(tP T )Arrival(tC P )<10 min), is true
(Figure 5). The weight of the edge is set as Departure(tP T )
Arrival(tCP ). Note that multiple transfer edges might be
created, as several transfers from tCP to other time nodes
might be feasible. Similarly, these transfer edges are labeled
as “transfer” to differentiate them from original parts of a trip.
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 6
Fig. 4: A carpooling stop is contained by drive-time areas
of two public transport stops. (a) the example; (b) schematic
representation of the carpooling stop linked to the meta-stops
of the two public transport stops.
Fig. 5: Schematic representation of a transfer between car-
pooling and public transport. If a given conditional is true, a
transfer edge (tCP , tP T )is created.
With this, the fuzziness of the inaccurate geographic loca-
tions of the origin, destination, and stopovers of carpooling
offers can be represented. Furthermore, this leads to a more
flexible system, since transfers to public transport can not only
happen at a specific stop, but at multiple stops. This reflects
the flexibility offered by carpooling.
2) Representing Fuzziness and Flexibility and Linking
along Carpooling Routes: Carpooling is potentially more flex-
ible than public transport because it is not bound to predefined
routes. Hence, a carpooling driver can drive detours which
exploit new stops that are not directly on the planned route. In
the following, we show how this flexibility can be used to link
potential public transport stops around a carpooling route. As
a prerequisite, the carpooling route will be derived by applying
shortest-path algorithms on the given origin, destination, and
stopovers. Several mapping APIs exist for this purpose, such
as OpenRouteServices and the Google Directions API.
We then again apply the concept of DTAs to exploit
potential stops sCP 0
ialong a derived carpooling route. Half of
the detour time is used as parameter when computing DTAs, as
the driver needs to drive there and back. Similarly to the stop
merging shown in the previous section, rather than relating
sCP 0
ito a specific sP T
jstop, an edge (mP T
j, sCP 0
i)is created
between the meta-stop of sP T
jand sCP 0
i. Figure 6 shows an
example where a carpooling route crosses the DTA of sP T
2,
but not the DTA of sP T
1. Therefore, an edge will be created
between sCP 0
2and the meta-stop of sP T
2.
Please note that sCP 0
ialong a carpooling route cannot
be chosen randomly or by checking the Euclidean distance
between the route and sP T
j, as sP T
jmight not be reachable
Fig. 6: A carpooling route crosses the drive-time area of a
public transport stop sP T
2.
from sCP 0
i. For example, if the carpooling route is a highway
crossing the DTA of sP T
jbut without a ramp in the DTA, a
driver would not be able to reach sPT
j. To address the issue, we
introduce the concept of Points of Action (POAs). A POA is
defined as a point along the carpooling route where the driver
needs to take an action, such as turning left, turning right,
or continuing without changing direction. POAs are mainly
crossings, junctions, or highway ramps. If a driver does not
have to take an action, there will not be a POA. POAs of
a carpooling route can be identified by overlapping the route
with the road network. Consequently, for each POA, we check
whether it is within the drive-time areas of public transport
stops, as shown in Figure 6. If yes, this POA is a potential
stop along the carpooling route, and we create an edge between
this POA and the meta-stops of these public transport stops.
After linking public transport stops and POAs along the
carpooling route, we can then check whether a transfer from
carpooling to public transport, or vice versa, is possible.
Following the same procedure used for representing transfers
before (Sections III-A and III-C1), we employ threshold values
to check whether a transfer is feasible or not. Hence, if
a certain conditional, e.g., (10 min < Departure(tP T )
Arrival(tCP 0
P OA)travel time(sC P
P OA, sP T )<30 min), is
true, we will create a time node tCP
P OA for this POA, and create
a directed transfer edge (tCP 0
P OA, tP T ), as shown in Figure 7.
T ravel time(sCP
P OA, sP T )is the travel time from sCP
P OA to
sP T , and in the worst case, it is equal to half of the maximum
allowed detour time. Therefore, in approximation, it can be set
as half of the allowed detour time. The weight of the transfer
edge is set as Departure(tP T )Arrival(tC P 0
P OA). Note that
multiple transfer edges might be created, as several transfers
from tCP 0
P OA to other time nodes might be feasible. Similarly,
these transfer edges are labeled as “transfer” to differentiate
them from original parts of a trip. Furthermore, we also keep
the original edge (tCP 0
1, tCP 0
2)to show that a stop at the POA
is not a must, but rather optional.
The concept of POA has further benefits. Since POAs are
located at crossings, junctions, and other significant points on
the road network, different carpooling routes may exploit the
same POA if they are passing the same crossing. Consequently,
transfers between carpooling routes which intersect at a POA
can be created using the same approach.
In case a driver makes a detour to sPT via sCP
P OA, arrival
and departure times at all later stops will change. In this paper,
we assume that beyond the predefined origin, destination, and
stopovers, a carpooling driver will drive maximally one detour
along the route. This assumption is based on the observation
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 7
Fig. 7: Schematic representation of a transfer from a POA
sCP
P OA of carpooling to a public transport stop sP T . If a given
conditional is true, a transfer edge (tCP 0
P OA, tP T )is created.
that allowing an undefined or high number of detours would
require the driver to drive many short trips with many detours,
which is normally not acceptable for carpooling drivers and
passengers. With this assumption, the arrival and departure
times at each later stop do not need to be adjusted.
Algorithm 2 shows the algorithm combining the steps
described above in Section III-C1 and in this section. When
a new carpooling offer is created, the algorithm is used to
add the offer to the public transport graph. By adding all the
available offers, multimodal journeys with transfers between
public transport and carpooling, between public transport,
and between carpooling can be retrieved by running routing
algorithms on the resulting directed graph.
D. Routing
By applying the above method, a time-expanded multi-
model graph combining public transport and carpooling can
be created. Standard routing algorithms such as Dijkstra’s can
be directly applied on the resulting graph to provide routes
from an origin to a destination. In the following, we introduce
techniques to provide routes that are often requested by users
when using public transport or other time-dependent transport.
Routing with a given departure time range. Usually, a
user wants to query routes from an origin A to a destination B,
given a departure time range (e.g., leaving between 8:00 and
8:15). To query these routes, firstly, we identify all time nodes
TAthat belong to the child stops of A and whose departure
times are within the range. Secondly, all the times nodes TB
that belong to the child stops of B are identified. In the last
step, the routing algorithm then computes routes from any of
the time nodes in TAto any of the time nodes in TB, based on
the sub-graph of the time nodes of the merged network. This
will return a set of routes that depart from the origin within
the given time range, which can then be ordered according to
different criteria, such as the total travel time, the number of
transfers, or simply arrival time at the destination. This gives
users the possibility to choose the route they want to take.
To improve the performance of the above routing, some
optimization can be introduced, such as instead of using all
the time nodes at B, we can estimate the travel time between A
and B, and use this to approximately select time nodes whose
departure times are within a feasible range.
Routing with a given arrival time range. Similar to the
above task, a user might want to arrive at the destination B
by a certain time, but does not know when she should leave
at the origin A. The same procedure can be applied. However,
instead of reducing the set of time nodes at the origin, the
set of time nodes at the destination is reduced according to
the pre-defined arrival time range. This routing task can be
solved in either a forward search or a backwards search. In the
forward approach, the first step finds all the time nodes at the
destination B that lies within the given arrival time range. In a
second step, a standard routing algorithm is executed from any
time node at the origin A to the selected time nodes at B. In
the backwards approach, routing is performed in the opposite
direction of the edge direction. Thus, a routing algorithm is
executed from the selected time node at B to any time nodes
at A. Similarly, the resulting routes can be ordered according
to different criteria to help users choose a route to take.
IV. EVALUATION AND RESULTS
To test the feasibility of the proposed method, we evaluate it
using two real-world datasets from the Swiss Federal Railways
(SBB) and a large European carpooling platform. The evalu-
ation was conducted on a Lenovo ThinkPad T430s with an
Intel i7-3520 CPU 2.9 GHz and 16 GB memory. The network
graph was built and queried using Neo4j 3.0.8, a widely-used
graph database. Neo4j was used for simplicity reasons, as it
provides efficient graph storage, allows labeling nodes/edges,
and comes with standard routing algorithms such as Dijkstra’s.
A. Data
The railway network data in Switzerland is used in the
evaluation as a representative of public transport data. While
the mode of train may seem different from other modes
(e.g., bus and subway) from an end users perspective, it
shares the main characteristics of public transport, which relies
on a timetable and operates relatively stable on established
routes. We retrieved the railway data in the General Transport
Feed Specification format from geOps (http://gtfs.geops.ch/).
In total, the data contains 1’912 railway stations and 28’455
routes, which consist of about 790’000 time-stamped stops at
stations. The 1’912 stations consist of 4’683 platforms.
The carpooling data used within this work was retrieved for
the largest 18 cities in Switzerland. Approx. 18’000 carpooling
offers were retrieved from the platform within an 8-month
period, and 2’000 of them were randomly selected for this
evaluation to reduce the computational load. Each carpooling
offer consists of a driver (who advertised the trip on the
carpooling platform), an origin, a destination, a set of stopover
points that are along the way (optional), a maximal detour
time (optional), a price, and a capacity. To investigate the
spatial characteristics of the carpooling data, we applied the
geocoding and routing functions provided by Google’s Direc-
tions API (http://developers.google.com/maps/documentation).
Results show that carpooling offers tend to be for longer
journeys, and the average length is 480 km. Please note
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 8
Algorithm 2 Merging Public Transport and Carpooling Graphs
Input. A time-expanded graph GP T = (VP T , E PT )representing all public transport trips and transfers; a time-expanded
graph GCP = (VC P , ECP )representing a carpooling offer; a maximum detour time tdetour given by the CP driver; stops
SCP (i.e., origin sC P
o, destination sCP
dand stopovers SCP
so ) of the CP defined by the driver; a set of transfer conditions
tc0T C0at each PT stop where tc0= (x, mindur , maxdur ), defining the min. and max. time required for transferring
between PT and CP at this PT stop.
Output. A new time-expanded graph G0= (V0, E0)combining the PT and CP graphs.
1: G0(VP T VC P , EP T ECP )Combine the PT and CP graphs.
2: Use existing geocoding API to get the geographic coordinates of all CP stops SCP
3: Use existing routing API to get shortest route rfrom sCP
oto sCP
dvia SCP
so
4: Estimate arrival times at stopovers SC P
so and destination sCP
d
5:
6: Link each given CP stop to the PT graph (cf. Section III-C1).
7: for all CP stop sCP SC P do Find all nearby PT stops in an approximate way; they will be refined later.
8: SP T all PT meta-stops where the Euclidean dist. to sCP <(tdetour ·100 km/h)
9: for all PT stop sP T SP T do
10: aDTA of sP T , using tdetour as parameter
11: if sCP is within athen This means that sP T can be reached from sC P within tdetour.
12: Add edge (sCP , sP T )to G0Check whether transfers between CP and PT are possible here.
13: VP T all the time nodes that are linked to the child PT stops of sP T
14: for all Time node vPT VP T do
15: if Arrival time at sCP <departure time at vP T thenThis potentially allows transferring from CP to PT.
16: dur departure time at vP T - arrival time at sCP
17: if dur > mindur at sP T and dur < maxdur at sP T then
18: Add directed edge e= (tCP 0, vP T )to G0; tC P 0: time node of sCP
19: Set e’s weight as dur and its label as “transfer”
20: if Arrival time at vPT <departure time at sC P thenThis potentially allows transferring from PT to CP.
21: dur departure time at sCP - arrival time at vP T
22: if dur > mindur at sP T and dur < maxdur at sP T then
23: Add directed edge e= (vP T , tC P 0)to G0; tCP 0: time node of sC P
24: Set e’s weight as dur and its label as “transfer”
25: Algorithm continued on next page.
that they often connect places not in the vicinity of a train
station. We found that the 2’000 carpooling offers provided
878 independent routes where none of the origin, stopover,
and destination stops are in the 5-minute driving vicinity of a
train station. Figure 8 shows the distribution of the routes.
The merging process outlined in Algorithm 2 requires
information about drive-time areas (DTAs) around pub-
lic transport stops (i.e., train stations in this evaluation).
The StreetMap Premium road network dataset from Esri
(http://www.esri.com/data/streetmap) was used to compute
these DTAs for all the stations, using 5 minutes as a threshold
(Figure 9). We used this static value instead of a driver-defined
detour time to reduce the computational load. However, it
should be noted that the proposed method can deal with
variable time durations set by the driver.
B. Network Graph Generation and Merging
After retrieving all the data, we then applied the method
introduced in Section III-A on the railway data to generate
its network graph. Algorithm 1 was then used to create
transfers between different railway connections, and add them
to the graph. We used the transfer conditional (3min <
Fig. 8: Distribution of the 2’000 carpooling trips in the study.
Departure(tb)Arrival(ta)<10 min) when creating
transfers. In other words, we created respective transfer edges
(e.g., between different trains) if the transfer time between two
trains is greater than 3 minutes but no longer than 10 minutes.
Setting this conditional is just for simplicity; the proposed
method can deal with other user-defined ones. Meanwhile,
each station node consists of its DTA (i.e., polygon) computed
before.
We then added each carpooling offer to the railway net-
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 9
26: Exploit potential stops along CP route (cf. Section III-C2).
27: SCP
P OA all POAs along CP route r, computed by overlapping rwith road network
28: for all POA sCP
P OA SCP
P OA do
29: SP T all PT meta-stops where the Euclid. dist. to sCP
P OA <(tdetour /2·100 km/h)
30: for all PT stop sP T SP T do
31: aDTA of sP T (using tdetour /2as parameter)  tdetour /2, because the driver needs to go to PT and back.
32: if sCP
P OA within athen This means that sP T can be reached from sCP
P OA within tdetour/2.
33: Add a new stop node sCP
P OA to G0; Add edge (sCP
P OA, sP T )to G0
34: Estimate the arrival time tat the CP POA sC P
P OA
35: Add new time node tCP 0
P OA to G0, (using the estimated tas arrival/departure time)
36: Create the time node for sCP , and link it to the required nodes.
37: Add edges (tCP 0
P OA, sC P
P OA)and (tC P 0
P OA, lCP )to G0 lC P : trip node of the CP
38: Add directed edges between tCP 0
P OA and adjacent time nodes to G0
39: Set the edge weights as the travel time between the corresponding stop nodes
40: Check whether transfers between CP and PT are possible here.
41: VP T all the time nodes that are linked to the child PT stops of sP T
42: for all Time node vPT VP T do
43: if Arrival time at sCP
P OA <departure time at vP T then This potentially allows transferring from CP to PT.
44: dur departure time at vP T - arrival time at sCP
P OA
45: if dur tdetour/2> mindur at sP T and dur tdetour/2< maxdur at sP T then
46: Add directed edge e= (tCP 0
P OA, v PT )to G0; Set es weight as dur and its label as “transfer”
47: if Arrival time at vPT <departure time at sC P
P OA thenThis potentially allows transferring from PT to CP.
48: dur departure time at sCP
P OA - arrival time at vPT
49: if dur tdetour/2> mindur at sP T and dur tdetour/2< maxdur at sP T then
50: Add directed edge e= (vP T , tC P 0
P OA)to G0; Set e’s weight as dur and its label as “transfer”
51: return G0
Fig. 9: The 5-minute drive time areas computed around all
train stops in Switzerland. Note that they are much smaller in
the mountainous regions in the southern part of Switzerland.
work graph using the merging algorithm (Algorithm 2). The
same transfer conditional used above was employed to check
whether transferring from carpooling to railway, or vice versa,
is feasible. Algorithm 2 also needs to have the Points of Action
(POAs) of each carpooling route available. As mentioned in
Section III-C2, POAs can be identified by overlapping the
carpooling route with the road network. In this evaluation,
we simply used the instruction steps returned by the Google
Directions API (other existing routing APIs would also work)
to identify POAs. In urban areas, the number of steps is rather
high, for which reason we removed all POAs within less than
1 km of each other. In total, the 2’000 carpooling offers consist
of 1’061 unique driver-defined stops (i.e., starts, destinations
and stopovers), and 6’552 unique POAs.
After these, a multimodal network graph merging railway
and carpooling networks was created. As introduced in Sec-
tion III-D, standard routing algorithms such as Dijkstra’s can
be directly applied on the sub-graph of the time nodes in the
merged network to provide routes from a start to an end.
C. Results
1) Comparison with Nearest Neighbor Algorithms: To
compare the proposed method with the commonly employed
nearest neighbor (NN) algorithm, which is a state-of-the-
art method in merging different public transport networks
[4], [21], we solved the NN problem for all driver-defined
carpooling stops (i.e., starts, destinations and stopovers). Three
different distances were used: 1 km, 2 km, and 5 km. Take
5 km as an example: we linked a driver-defined carpooling
stop to its nearest railway station if their distance is smaller
than 5 km. As using POAs is a new concept introduced in
the proposed method, we did not apply NN to the carpooling
POAs. Table I compares the number of links created for
linking the railway and carpooling networks.
As can be seen, compared to the state-of-the-art method, the
proposed method improves the connection of carpooling stops
with railway stations. For example, for NN with 5 km, only
306 links were created for connecting carpooling stops and
railway stations; while with the proposed method, 969 links
were created. In addition, the proposed method was able to
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 10
Our method NN (1 km) NN (2 km) NN (5 km)
# Links between driver-defined CP stops and railway stations 969 199 254 306
# Links between carpooling POAs and railway stations 5’683 - - -
Total 6’652 199 254 306
TABLE I: The number of created connections between PT and CP stops.
exploit new stops (via POAs) along a carpooling route, which
created 5’683 further links to railway stations. In other words,
the proposed method is capable of connecting carpooling
offers to the railway network much better. It means that
carpooling passengers can potentially transfer to many more
railway stations, and vice versa.
2) Degree Centrality and PageRank Centrality: In total,
about 5’572’593 transfer edges between time nodes were
created, representing all possible transfers. Most of them
are pure railway transfers (i.e., from one train to another,
4’812’926), and a smaller number for pure carpooling transfers
(123’189). Additionally, 636’478 transfers exist with a modal
change (either from carpooling to train, or vice versa). To
investigate the effects of integrating carpooling into the railway
network, we computed the degree centrality and PageRank
centrality of each stop.
The degree centrality of a node counts all its connecting
nodes. A high degree centrality means that the node links
to many other nodes or many other nodes link to it. In
this experiment, we particularly check whether integrating
carpooling into the railway network improves the degree
centrality of each railway station. The degree centrality of
each station is computed by counting the number of its
connecting railway stations, carpooling stops, and POAs. In
general, the degree centrality scores of all railway stations
in the merged multi-modal network have improved, meaning
that integrating carpooling leads to the improvement of the
number of connections at each railway station. We found that
8.1% of the stations are improved in their centrality by more
than 10%, and 26% of the stations are improved by more than
3%. Figure 10 shows the heat map of the top 25% of railway
stations with their degree centrality being improved by more
than 5%. One can see that most of these stations lie in border
as well as alpine regions. In these regions, the railway network
(operated by SBB) is much less developed. This is particularly
interesting because it indicates that carpooling can be a good
addition to railway in less developed regions as well as for
long distances where trains run less frequency.
The PageRank centrality is based on the PageRank algo-
rithm, and computes the importance of nodes based on the
number of incoming links, the link propensity of the linkers
and the centrality of the linkers. In PageRank centrality, a node
is considered as important if it is linked by important nodes
or it is highly linked in general. In transport, the PageRank
shows the hubs in a transport network. In Figure 11, stops with
a very high PageRank score (i.e., >1.5 standard deviation) are
shown as yellow dots, while the underlying heat map shows the
density of these stops. It can be seen that the railway network
(left) focuses on the two hubs Zurich and Lausanne. Merging
Fig. 10: Heat map of the top 25% of railway stations with
their degree centrality being improved by more than 5%. These
stations are mostly located in border or alpine areas. To view
this figure in color, please refer to the online version of this
article.
Fig. 11: The PageRank centrality measure, showing transport
hubs: the density of stops with high PageRank score in railway
network (left), and in the multimodal network resulting from
merging the railway and carpooling network (right). To view
this figure in color, please refer to the online version of this
article.
carpooling with railway network using the proposed method
(right) leads to an improvement of the railway network, namely
important stops (i.e., stops with high PageRank score) spread
over larger areas, which indicates better coverage. This also
means that more stops are well connected, i.e., people do not
have to travel to the big hubs (like Zurich main station and
Lausanne main station) as many other stops now also serve
many destinations. Meanwhile, it can be stated that, with an
increasing number of important stops, the network is more
robust, as it is less affected by a failure of one or more stops.
In summary, integrating carpooling into the railway network
using the proposed method improves the number of connec-
tions at each railway station. Meanwhile, it also leads to a
better spread of important stops (i.e., transport hubs) over the
whole country, especially to the border and alpine areas.
3) Multimodal Route Planning: After merging the railway
and the carpooling networks, we can then apply Dijkstra’s
on the sub-graph of the time nodes in the merged network
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 11
Fig. 12: A multimodal trip from Bern Wankdorf to Olten,
involving both carpooling and a train.
to compute routes from an origin to a destination, using the
method introduced in Section III-D. The resulting routes may
be unimodal trips which only involve one mode, or multimodal
trips involving more than one mode. In the following, we
particularly illustrate two examples with multimodal trips.
Assume that a soccer fan Adriana went to watch a game of
her favorite team, FC Bern, at their Stadium in Bern Wankdorf.
The game finishes at 16:00. Therefore, she is looking for a trip
back to Olten at around 16:30. Querying the above merged
network leads to a multimodal trip from Bern Wankdorf to
Olten (Figure 12). The trip starts with carpooling from Bern
Wankdorf to Egerkingen, and continues from Egerkingen by
train. In total, it costs about 7.60 CHF, and takes 46 minutes.
According to the Swiss Federal Railways (SBB) website
(http://www.sbb.ch), the same trip with only trains, which
involves one transfer at Bern main Station, costs 30 CHF and
takes 47 minutes. In other words, the multimodal trip is less
expensive in terms of travel time and fare. Please note that the
resulting multimodal trip uses part of a carpooling offer, which
is from Sierre (Switzerland) to Li`
ege (Belgium). Both Bern
Wankdorf and Egerkringen were actually not defined by the
driver, but instead computed automatically via POAs, using the
proposed method. Therefore, using the state-of-the-art method
NNP would not be able to produce this multimodal trip.
Let’s look at another example. Assume that a user living in
Olten wants to visit the Expo in Milano at Rho Fiera Milano.
Figure 13 shows a multimodal trip from Olten to Rho Fiera
Milano, returned by applying the proposed method. The trip
starts from Olten to Lucerne by train, from Lucerne to Chiasso
by carpooling, and continues to the destination in another
carpool. It takes about 220 minutes, and costs about 27.20
CHF. The trip returned by SBB takes 294 minutes, involves
2 changes, and costs more than 103 CHF. This example
again shows that the multimodal trip combining trains and
carpooling is less expensive in terms of travel time and fare. In
this example, Lucerne is a stop defined by the driver of the first
carpool. Chiasso and Rho Fiera Milano are again POA stops
of the carpooling offers computed by the proposed method.
As can be seen from these examples, the proposed method is
suitable to support multimodal route planning. It can not only
make use of the driver-defined stops, but also explore potential
stops that are along the carpooling route. The resulting trips
Fig. 13: A multimodal trip from Olten to Rho Fiera Milano,
involving train and carpooling
seem to be cheaper, with shorter travel duration.
V. DISCUSSION
As shown in the above evaluation with real-world data,
the proposed method is suitable for merging public transport
and carpooling networks to allow multimodal route planning,
considering the fuzziness and flexibility of carpooling. Com-
pared to the state-of-the-art approach (i.e., nearest neighbour
method), the proposed method can better merge the static
(i.e., public transport) and dynamic/fuzzy (i.e., carpooling)
networks, while retaining the desired flexibility offered by
the latter, and thus creates higher interconnectivity between
the railway and carpooling networks. Meanwhile, the merged
network enables multimodal route planning, which can provide
users with a trip from an origin and a destination using
different combinations of public transport and carpooling.
By comparing the proposed method with existing studies on
multimodal route planning with carpooling [1], [6], we can see
that existing studies always keep a specific carpooling offer in
mind, and do not try to find the best carpooling offer from a
set of possible choices for a passenger. Instead, the proposed
method adds all valid carpooling offers to the public transport
networks, and is able to find the best offer from this merged
multimodal network.
In this study, we represented both public transport and
carpooling networks using time-expanded models. On the one
hand, this allows directly using standard routing algorithms
such as Dijkstra’s and A* as well as the associated speedup
techniques to efficiently solve the route planning tasks. On
the other hand, this approach leads to increased graph sizes, as
each event (e.g., arrival and departure) is represented as a node,
and edges between nodes are created. In short, this approach
adds complexity to the network graph, rather than to the
routing algorithm. While many graph databases, such as Neo4j
and AllegroGraph, exist for efficiently managing large-scale
graph data, it will be still very important to explore techniques
to reduce the size of the graph. Furthermore, techniques to
remove expired carpooling data (e.g., carpooling trips that
are already finished) should be developed, which will further
reduce the size of the merged multimodal network graph.
The concept of drive-time areas (DTAs) was applied in this
study to model the maximum detour allowed by carpooling
drivers, and thus retain the flexibility offered by carpooling. It
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 12
is important to note that computing DTAs is time-consuming,
but can be done in advance. This will speed up the merging
and linking process. Furthermore, this study computed DTAs
around public transport stops instead of carpooling stops,
which allows reusing these DTAs when linking/merging mul-
tiple carpooling offers. To further improve the performance
of the proposed method, techniques to efficiently compute
variable DTAs should be developed.
In the evaluation, we defined a minimal transfer time of 3
minutes and a maximum of 10 minutes. These values were
derived by checking valid transfer results on the SBB website
(http://www.sbb.ch/en), considering that the time should be
long enough to allow passengers to transfer but does not
require them to wait for long. As shown in both algorithms,
the transfer condition can be defined by the users. It can be
expected that by setting a larger time range, more transfer
edges between time nodes will be created, which will enable
more transfers between railway and carpooling networks.
The evaluation merged the Swiss railway data and car-
pooling data from a large European carpooling platform for
multimodal route planning. While railway timetables show the
main characteristics of public transport timetables, it would be
still interesting to see how well the proposed method works
with other public transport networks, especially those covering
smaller areas such as bus, subway and tram. We expect that
similar results will be observed. It would also be interesting
to see how well the proposed method works with frequency-
based timetables, which define the trip frequency each route
has. For instance, trams in Zurich service the same route on
weekdays every 7 minutes during the day.
VI. CONCLUSION AND FUTURE WO RK
Recent years have seen much interest in carpooling, which
aims to reduce the traffic congestions and travel costs. To
further promote and facilitate the use of carpooling, there is a
strong need to develop multimodal route planning systems that
combine public transport and carpooling. Due to the fuzzy and
flexible nature (e.g., no fixed stops, possibility to drive detours)
of carpooling offers, existing state-of-the-art methods such as
the nearest neighbor (NN) algorithm, which links nearby nodes
in different networks, cannot be applied for merging public
transport and carpooling networks. Based on the concepts
of drive-time area (DTA) and point of action (POA), this
article proposed a new method to merge public transport
and carpooling networks to allow multimodal route planning,
considering the fuzziness and flexibility of carpooling.
An evaluation with real-world datasets showed that the
proposed method is feasible for merging public transport and
carpooling networks into a multimodal routing network, while
retaining the desired flexibility offered by carpooling. Com-
pared to the state-of-the-art NN method, the proposed method
can create higher interconnectivity between both networks.
The evaluation also showed that by using standard Dijkstra’s
algorithm on the merged network, routes combining public
transport and carpooling modes can be provided to users. The
proposed method can be used to improve existing multimodal
route planning applications by adding one additional mode–
carpooling. This will enable the utilization of the full potential
societal and environmental benefits brought by carpooling.
As a next step, we would like to extend the current
method to support multi-criteria route planning, considering
many other aspects, such as number of transfers, prices, and
preferred modes. We also recommend further refining the
method to reduce the size of the merged routing network,
and to improve the performance of multimodal route planning.
Experiments with public transport modes covering smaller
areas and with frequency-based timetables can be also done
to comprehensively evaluate the method. Furthermore, it is
also useful to implement the method as a web application
to provide multimodal route planning for the general public.
To make multimodal route planning with carpooling work in
real life, operational issues such as carpooling cost distribution
policy, security, and availability of shared cars at transit stops
on a return journey should be carefully considered.
AUTHOR CONTRIBUTIONS
This paper is based on the Master Thesis of JK, supervised
by HH and DB. HH and DB summarized and extended the
work, shaping it into this article. RW and MR, as the head of
the research units, oversaw this work, and provided comments
to further improve the article.
REFERENCES
[1] Aissat, K., Varone, S.: Carpooling as complement to multi-modal
transportation. In: ICEIS 2015, pp. 236–255. Springer (2015)
[2] A¨
ıvodji, U.M., Gambs, S., Huguet, M.J., Killijian, M.O.: Meeting points
in ridesharing: A privacy-preserving approach. Transportation Research
Part C: Emerging Technologies 72, 239–253 (2016)
[3] Amirkiaee, S.Y., Evangelopoulos, N.: Why do people rideshare? an
experimental study. Transportation Research Part F: Traffic Psychology
and Behaviour 55, 9–24 (2018)
[4] Bast, H., Delling, D., Goldberg, A., M¨
uller-Hannemann, M., Pajor, T.,
Sanders, P., Wagner, D., Werneck, R.F.: Route planning in transportation
networks. In: Algorithm engineering, pp. 19–80. Springer (2016)
[5] Bast, H., Storandt, S.: Flow-based guidebook routing. In: Proceedings
of the Meeting on Algorithm Engineering & Experiments, pp. 155–165.
Society for Industrial and Applied Mathematics (2014)
[6] Bit-Monnot, A., Artigues, C., Huguet, M.J., Killijian, M.O.: Carpooling:
the 2 synchronization points shortest paths problem. In: 13th Workshop
on Algorithmic Approaches for Transportation Modelling, Optimization,
and Systems (ATMOS), pp. 12–p (2013)
[7] Brodal, G.S., Jacob, R.: Time-dependent networks as models to achieve
fast exact time-table queries. Electronic Notes in Theoretical Computer
Science 92, 3–15 (2004)
[8] Bucher, D., Jonietz, D., Raubal, M.: A heuristic for multi-modal route
planning. In: Progress in Location-Based Services 2016, pp. 211–229.
Springer (2017)
[9] Czioska, P., Trifunovi´
c, A., Dennisen, S., Sester, M.: Location-and time-
dependent meeting point recommendations for shared interurban rides.
Journal of Location Based Services 11(3-4), 181–203 (2017)
[10] Delling, D., Giannakopoulou, K., Wagner, D., Zaroliagis, C.: Timetable
information updating in case of delays: Modeling issues. Arrival
Technical Report (2008)
[11] Dibbelt, J., Pajor, T., Wagner, D.: User-constrained multimodal route
planning. Journal of Experimental Algorithmics (JEA) 19, 3–2 (2015)
[12] Dijkstra, E.W.: A note on two problems in connexion with graphs.
Numerische mathematik 1(1), 269–271 (1959)
[13] Firmani, D., Italiano, G.F., Laura, L., Santaroni, F.: Is timetabling routing
always reliable for public transport. In: ATMOS’13 workshop, vol. 33,
pp. 15–26. Schloss DagstuhlLeibniz-Zentrum fuer Informatik (2013)
[14] Furuhata, M., Dessouky, M., Ord´
o˜
nez, F., Brunet, M.E., Wang, X.,
Koenig, S.: Ridesharing: The state-of-the-art and future directions.
Transportation Research Part B: Methodological 57, 28–46 (2013)
IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS 13
[15] Geisberger, R., Sanders, P., Schultes, D., Vetter, C.: Exact routing
in large road networks using contraction hierarchies. Transportation
Science 46(3), 388–404 (2012)
[16] Goczyłla, K., Cielatkowski, J.: Optimal routing in a transportation
network. Eur J Oper Res 87(2), 214–222 (1995)
[17] Goldberg, A.V., Harrelson, C.: Computing the shortest path: A search
meets graph theory. In: Proceedings of SODA’05, pp. 156–165. Society
for Industrial and Applied Mathematics (2005)
[18] Hart, P.E., Nilsson, N.J., Raphael, B.: A formal basis for the heuristic
determination of minimum cost paths. IEEE transactions on Systems
Science and Cybernetics 4(2), 100–107 (1968)
[19] Hilger, M., K¨
ohler, E., M¨
ohring, R.H., Schilling, H.: Fast point-to-point
shortest path computations with arc-flags. The Shortest Path Problem:
Ninth DIMACS Implementation Challenge 74, 41–72 (2009)
[20] M¨
uller-Hannemann, M., Schulz, F., Wagner, D., Zaroliagis, C.:
Timetable information: Models and algorithms. In: Algorithmic Methods
for Railway Optimization, pp. 67–90. Springer (2007)
[21] Pajor, T.: Multi-modal route planning. Universit¨
at Karlsruhe (2009)
[22] Pyrga, E., Schulz, F., Wagner, D., Zaroliagis, C.: Efficient models
for timetable information in public transportation systems. Journal of
Experimental Algorithmics (JEA) 12, 2–4 (2008)
[23] Sierpi´
nski, G.: Changes of the modal split of traffic in europe. Archives
of Transport System Telematics 6(2013)
Haosheng Huang received the BSc and MSc de-
grees in computer science from South China Normal
University, China in 2004 and 2006 respectively,
and the PhD degree in GIScience from TU Wien,
Austria in 2013. He is a research group leader and
Senior Lecturer at the GIScience Center, University
of Zurich, Switzerland. His research interests include
GIScience, location based services, mobility and
transportation.
Dominik Bucher received the BSc and MSc degrees
in Electrical Engineering and Information Technol-
ogy from ETH Zurich, Switzerland in 2011 and 2014
respectively. He is a PhD student in Geoinforma-
tion Engineering at ETH Zurich, Switzerland since
2015. His research interests include location based
services, mobility and transportation, and big data
analytics.
Julian Kissling received the MSc degree in GI-
Science from University of Zurich, Switzerland in
2017. He is a software engineer in ESRI Switzer-
land.
Robert Weibel received the MSc and PhD degrees
in Geography from University of Zurich, Switzer-
land in 1985 and 1989 respectively. He is a full
professor of GIScience at the University of Zurich,
Switzerland. His research interests include compu-
tational cartography, computational movement anal-
ysis, and language and space.
Martin Raubal received the MSc and PhD de-
grees in Geoinformation from TU Wien, Austria in
1998 and 2001 respectively. He is a full profes-
sor of Geoinformation Engineering at ETH Zurich,
Switzerland. His research interests include location
based services, cognitive engineering for geospatial
services, mobile eye-tracking, spatial cognition, and
time geography.
... Antsfeld et al. [38] suggested using a linear utility function that incorporates travel time, ticket cost, and inconvenience of transfers. To merge the fixed and dynamic modes with the fuzzy and flexible nature, Huang et al. [39] considered the concept of drive-time areas and points of action, which can merge them better while maintaining the flexibility of the dynamic modes. Pantelidis et al. [40] formulated the traffic assignment in MaaS as stable matching of multiple transport operators and passengers. ...
Preprint
Full-text available
Mobility-as-a-Service (MaaS) integrates different transport modalities and can support more personalisation of travellers' journey planning based on their individual preferences, behaviours and wishes. To fully achieve the potential of MaaS, a range of AI (including machine learning and data mining) algorithms are needed to learn personal requirements and needs, to optimise journey planning of each traveller and all travellers as a whole, to help transport service operators and relevant governmental bodies to operate and plan their services, and to detect and prevent cyber attacks from various threat actors including dishonest and malicious travellers and transport operators. The increasing use of different AI and data processing algorithms in both centralised and distributed settings opens the MaaS ecosystem up to diverse cyber and privacy attacks at both the AI algorithm level and the connectivity surfaces. In this paper, we present the first comprehensive review on the coupling between AI-driven MaaS design and the diverse cyber security challenges related to cyber attacks and countermeasures. In particular, we focus on how current and emerging AI-facilitated privacy risks (profiling, inference, and third-party threats) and adversarial AI attacks (evasion, extraction, and gamification) may impact the MaaS ecosystem. These risks often combine novel attacks (e.g., inverse learning) with traditional attack vectors (e.g., man-in-the-middle attacks), exacerbating the risks for the wider participation actors and the emergence of new business models.
... H. Huang [11] proposed a method for merging public transport and car pooling networks for multi-modal route planning. The main idea behind the model is on the basis of drive time areas and point of action. ...
Article
Traffic flow is random and discontinuous bearing in mind the incalculable human behaviors and also because of various factors such as traveling time, fuel consumption, etc. There are also other various influential factors such as accidents, condition of roads, weather, among others which makes route planning a difficult job. Traffic congestion detection and route recommendation are major aspects while performing congestion control. The motivation of this paper is to present a route recommendation system based on a multi-layer fog-cloud architecture. We deploy Roadside Units (RSUs) which are important for calculating the information about traffic influencers such as travel time, congestion area intersections prediction, etc. A cloud service provider and a road side unit are responsible for detection of traffic and sharing of information with the help of VANET communication between vehicles that are relayed to other vehicles with the help of beacons and nearby RSUs using software defined network architecture. Road Weight Measurement (RWM) is used to detect the congestion affected roads and provide appropriate route recommendations using various fitness functions. The model can be useful for easing the concern of traffic congestion issues using optimum path calculation for finding the shortest and the fastest routes. comparison to other guidance systems.
... Antsfeld and Walsh [38] suggested using a linear utility function that incorporates travel time, ticket cost, and inconvenience of transfers. To merge the fixed and dynamic modes with the fuzzy and flexible nature, Huang et al. [39] considered the concept of drive-time areas and points of action, which can merge them better while maintaining the flexibility of the dynamic modes. Pantelidis et al. [40] formulated the traffic assignment in MaaS as stable matching of multiple transport operators and passengers. ...
Article
Mobility-as-a-service (MaaS) integrates different transport modalities and can support more personalization of travelers’ journey planning based on their individual preferences, behaviors and wishes. To fully achieve the potential of MaaS, a range of artificial intelligence (AI) (including machine learning and data mining) algorithms are needed to learn personal requirements and needs to optimize the journey planning of each traveler and all travelers as a whole, to help transport service operators and relevant governmental bodies to operate and plan their services, and to detect and prevent cyberattacks from various threat actors, including dishonest and malicious travelers and transport operators. The increasing use of different AI and data processing algorithms in both centralized and distributed settings opens the MaaS ecosystem up to diverse cyber and privacy attacks at both the AI algorithm level and the connectivity surfaces. In this article, we present the first comprehensive review on the coupling between AI-driven MaaS design and the diverse cybersecurity challenges related to cyberattacks and countermeasures. In particular, we focus on how current and emerging AI-facilitated privacy risks (profiling, inference, and third-party threats) and adversarial AI attacks (evasion, extraction, and gamification) may impact the MaaS ecosystem. These risks often combine novel attacks (e.g., inverse learning) with traditional attack vectors (e.g., man-in-the-middle attacks), exacerbating the risks for the wider participation actors and the emergence of new business models.
... In carpooling or ridesharing, the driver with one or several riders shares parts from the same destination using the car owned by the driver. [47]While product pooling for lighting systems is offered here, several consumers jointly use lighting system services for bonded warehouses. Costs borne by consumers for carpooling and product pooling for lighting systems can be shared between consumers. ...
Article
Full-text available
The growing nature of the business world necessitates continual innovation in business models. In response to the increasing need for sustainable and flexible business practices, Product-Service Systems (PSS) have gained traction across various industries. However, the LED manufacturing industry remains predominantly product-centric. This study investigates the feasibility of transitioning the LED lighting business model to a Product-Services Systems (PSS) approach to fill this gap. This study examines several alternate PSS Lighting System business models using morphological analysis. The Business Model Canvas v2.2 framework is then used to assess these options' acceptability, viability, and feasibility. Selected PSS lighting systems are then detailed within the Business Model Canvas. Four business models for the PSS Lighting System are identified in the study as potentially viable for implementation: product leasing, sharing, pooling, and activity management lighting systems. Additionally, this study advances our theoretical knowledge of PSS, especially concerning the PSS Lighting System business model. Furthermore, this study offers insights into expanding existing business models by integrating multiple lighting system models proposed in this study.
... Our MFT path planning problem is a multi-objective optimization problem inspired from the work of [19], [7], [20], [21]. The decision variables, dimensions are presented in the next subsections. ...
Chapter
Full-text available
The increasing demand for efficient global supply chain management and faster product delivery has led to a rise in the use of multimodal transportation systems (MFT). One of the key challenges in multimodal transportation is selecting the appropriate freight mode. This decision depends on several factors such as cost, transit time, reliability, mode availability, service frequency, and cargo characteristics. However, existing research often focuses on only two modes, namely trucks and trains, which fails to capture the complexities of real-world freight transportation decisions. Moreover, while reducing travel time and cost are primary objectives for service providers and researchers, other important considerations such as environmental impact are often overlooked. To this end, in this work, the researchers take into account four major modes of transportation (Air, Road, Rail, and Sea/Water) in a multimodal freight context aiming to optimize three distinct objectives: overall transportation cost, transportation time, and CO2 emissions. To solve this problem, the researchers adopt two the well-known metaheuristic algorithms: Tabu Search and the Genetic Algorithm through an experimental study demonstrating the efficacy of these evolutionary solution methods in tackling such challenging optimization problems.
... In their paper [13], the authors introduce a novel approach to integrate public transport and carpooling networks for multimodal route planning. This method accounts for the inherent fuzziness and adaptability introduced by carpooling and is based on the conceptual framework of drive-time areas and points of action. ...
Article
Full-text available
Drivers offering spare seats in their vehicles on long-distance (interurban) trips often have to pick up or drop off passengers in cities en route. In that case it is necessary to agree on a meeting point. Often, this is done by proposing well-known locations like train stations, which frequently induces unnecessary detours through the inner-city districts. In contrast, meeting points in the vicinity of motorways and arterial roads with good public transport connection can reduce driving time and mileage. This work proposes a location-based approach to enable a fast and automatic recommendation of suitable pick-up (and drop-off) points for drivers and passengers using a GIS workflow and comprehensive precomputation of travel times.
Article
Full-text available
Nowadays, problems of congestion in urban areas due to the massive usage of cars, last-minute travel needs and progress in information and communication technologies have fostered the rise of new transportation modes such as ridesharing. In a ridesharing service, a car owner shares empty seats of his car with other travelers. Recent ridesharing approaches help to identify interesting meeting points to improve the efficiency of the ridesharing service (i.e., the best pick-up and drop-off points so that the travel cost is competitive for both driver and rider). In particular, ridesharing services, such as Blablacar or Carma, have become a good mobility alternative for users in their daily life. However, this success has come at the cost of user privacy. Indeed in current’s ridesharing services, users are not in control of their own data and have to trust the ridesharing operators with the management of their data.
Chapter
Full-text available
Current popular multi-modal routing systems often do not move beyond combining regularly scheduled public transportation with walking, cycling or car driving. Seldom included are other travel options such as carpooling, carsharing, or bikesharing, as well as the possibility to compute personalized results tailored to the specific needs and preferences of the individual user. Partially, this is due to the fact that the inclusion of various modes of transportation and user requirements quickly leads to complex, semantically enriched graph structures, which to a certain degree impede downstream procedures such as dynamic graph updates or route queries. In this paper, we aim to reduce the computational effort and specification complexity of personalized multi-modal routing by use of a preceding heuristic, which, based on information stored in a user profile, derives a set of feasible candidate travel options, which can then be evaluated by a traditional routing algorithm. We demonstrate the applicability of the proposed system with two practical examples.
Article
Full-text available
Current route planning algorithms for public transport networks are mostly based on timetable information only, i.e., they compute shortest routes under the assumption that all transit vehicles (e.g., buses, subway trains) will incur in no delays throughout their trips. Unfortunately, unavoidable and unexpected delays often prevent transit vehicles to respect their originally planned schedule. In this paper, we try to measure empirically the quality of the solutions offered by timetabling routing in a real public transport network, where unpredictable delays may happen with a certain frequency, such as the public transport network of the metropolitan area of Rome. To accomplish this task, we take the time estimates required for trips provided by a timetabling-based route planner (such as Google Transit) and compare them against the times taken by the trips according to the actual tracking of transit vehicles in the transport network, measured through the GPS data made available by the transit agency. In our experiments, the movement of transit vehicles was only mildly correlated to the timetable, giving strong evidence that in such a case timetabled routing may fail to deliver optimal or even high-quality solutions.
Article
Enabled by mobile technologies and fueled by the economic downturn, ridesharing has emerged in recent years as a private transportation facet of the shared economy. Our study investigates the motives for participation in situated ridesharing. We propose a theoretical model that includes economic benefits, time benefits, transportation anxiety, trust, and reciprocity either as direct antecedents of ridesharing participation intention, or mediated through attitude towards ridesharing. We conduct a scenario-based survey, with 300 participants. Our findings indicate that, in situations where transportation anxiety is high (e.g. construction on the road), if people can trust the ridesharing service providers and participants, in the presence of economic and time benefits, they will have a strong intention to participate in ridesharing.
Conference Paper
We propose a new aspect of mobility that combines in a same journey and in real time a carpooling service and a traditional multi-modal transportation. This mix allows to improve and complete both services. The main idea of our approach is based on the traditional multi-modal path, in which we try to sequentially substitute some sub-paths of traditional multi-modal transportation to carpooling, in order to decrease the rider’s arrival time at his destination. For this purpose, we first define a closeness estimation between the user’s itinerary and available drivers. This allows to select a subset of potential drivers. We then compute sets of driving quickest paths, and design a substitution process. Finally, among all admissible solutions, we select a best one based on the earliest arrival time. We provide numerical results using geographical maps, real data and public transportation timetabling. Our numerical results show the effectiveness of our system, which improves rider’s arrival time compared to the traditional multi-modal path. The running time of our approach remains reasonable to use real-time transportation application.
Chapter
We survey recent advances in algorithms for route planning in transportation networks. For road networks, we show that one can compute driving directions in milliseconds or less even at continental scale. A variety of techniques provide different trade-offs between preprocessing effort, space requirements, and query time. Some algorithms can answer queries in a fraction of a microsecond, while others can deal efficiently with real-time traffic. Journey planning on public transportation systems, although conceptually similar, is a significantly harder problem due to its inherent time-dependent and multicriteria nature. Although exact algorithms are fast enough for interactive queries on metropolitan transit systems, dealing with continent-sized instances requires simplifications or heavy preprocessing. The multimodal route planning problem, which seeks journeys combining schedule-based transportation (buses, trains) with unrestricted modes (walking, driving), is even harder, relying on approximate solutions even for metropolitan inputs.
Article
Public-transportation route-planning systems typically work as follows. The user specifies a source and a target location, as well as a departure time. The system then returns one or more optimal trips at or after that departure time. In this paper, we consider guidebook routing, where the goal is to provide timeindependent answers that are valid over long periods of time. An example answer could be: Take Bus 10 to the main station, from there take Tram 11 or 13 (whichever comes next) to your target station. Trip duration: 30 minutes. Frequency: every 20 minutes. Valid: weekdays from 6am - 8pm. We show how to compute such guidebook routes efficiently and with provably good quality. An evaluation on real-world data shows that few guidebook routes usually suffice for good coverage. We also show how guidebook routing can be used to speed up transfer patterns, a state-of-the-art method for public transportation routing. Copyright
Article
In the multi-modal route planning problem we are given multiple transportation networks (e. g., pedestrian, road, public transit) and ask for a best integrated journey between two points. The main challenge is that a seemingly optimal journey may have changes between networks that do not reflect the user’s modal preferences. In fact, quickly computing reasonable multimodal routes remains a challenging problem: Previous approaches either suffer from poor query performance or their available choices of modal preferences during query time is limited. In this work we focus on computing exact multi-modal journeys that can be restricted by specifying arbitrary modal sequences at query time. For example, a user can say whether he wants to only use public transit, or also prefers to use a taxi or walking at the beginning or end of the journey; or if he has no restrictions at all. By carefully adapting node contraction, a common ingredient to many speedup techniques on road networks, we are able to compute point-to-point queries on a continental network combined of cars, railroads and flights several orders of magnitude faster than Dijkstra’s algorithm. Thereby, we require little space overhead and obtain fast preprocessing times.
Article
Carpooling is an appropriate solution to address traffic congestion and to reduce the ecological footprint of the car use. In this paper, we address an essential problem for providing dynamic carpooling: how to compute the shortest driver’s and passenger’s paths. Indeed, those two paths are synchronized in the sense that they have a common subpath between two points: the location where the passenger is picked up and the one where he is dropped off the car. The passenger path may include time-dependent public transportation parts before or after the common subpath. This defines the 2 synchronization points shortest path problem (2SPSPP). We show that the 2SPSPP has a polynomial worst-case complexity. However, despite this polynomial complexity, one needs efficient algorithms to solve it in realistic transportation networks. We focus on efficient computation of optimal itineraries for solving the 2SPSPP, i.e., determining the (optimal) pick-up and drop-off points and the two synchronized paths that minimize the total traveling time. We also define restriction areas for reasonable pick-up and drop-off points and use them to guide the algorithms using heuristics based on landmarks. Experiments are conducted on real transportation networks. The results show the efficiency of the proposed algorithms and the interest of restriction areas for pick-up or drop-off points in terms of CPU time, in addition to its application interest.