Log In Sign Up

Scalable and Congestion-aware Routing for Autonomous Mobility-on-Demand via Frank-Wolfe Optimization

by   Kiril Solovey, et al.

We consider the problem of vehicle routing for Autonomous Mobility-on-Demand (AMoD) systems, wherein a fleet of self-driving vehicles provides on-demand mobility in a given environment. Specifically, the task it to compute routes for the vehicles (both customer-carrying and empty travelling) so that travel demand is fulfilled and operational cost is minimized. The routing process must account for congestion effects affecting travel times, as modeled via a volume-delay function (VDF). Route planning with VDF constraints is notoriously challenging, as such constraints compound the combinatorial complexity of the routing optimization process. Thus, current solutions for AMoD routing resort to relaxations of the congestion constraints, thereby trading optimality with computational efficiency. In this paper, we present the first computationally-efficient approach for AMoD routing where VDF constraints are explicitly accounted for. We demonstrate that our approach is faster by at least one order of magnitude with respect to the state of the art, while providing higher quality solutions. From a methodological standpoint, the key technical insight is to establish a mathematical reduction of the AMoD routing problem to the classical traffic assignment problem (a related vehicle-routing problem where empty traveling vehicles are not present). Such a reduction allows us to extend powerful algorithmic tools for traffic assignment, which combine the classic Frank-Wolfe algorithm with modern techniques for pathfinding, to the AMoD routing problem. We provide strong theoretical guarantees for our approach in terms of near-optimality of the returned solution.


Analysis and Control of Autonomous Mobility-on-Demand Systems: A Review

Challenged by urbanization and increasing travel needs, existing transpo...

A simulation-based evaluation of a Cargo-Hitching service for E-commerce using mobility-on-demand vehicles

Time-sensitive parcel deliveries, shipments requested for delivery in a ...

On the needs for MaaS platforms to handle competition in ridesharing mobility

Ridesharing has been emerging as a new type of mobility. However, the ea...

PFaRA: a Platoon Forming and Routing Algorithm for Same-Day Deliveries

Platoons, vehicles that travel very close together acting as one, promis...

Data-Driven Model Predictive Control of Autonomous Mobility-on-Demand Systems

The goal of this paper is to present an end-to-end, data-driven framewor...

Decentralized Optimization of Vehicle Route Planning – A Cross-City Comparative Study

New mobility concepts are at the forefront of research and innovation in...

Data Driven VRP: A Neural Network Model to Learn Hidden Preferences for VRP

The traditional Capacitated Vehicle Routing Problem (CVRP) minimizes the...

I Introduction

Mobility in urban environments is becoming a major issue on the global scale [22]. The main reasons are an increasing population with higher mobility demands and a slowly adapting infrastructure [1], resulting in serious congestion problems. In addition, the usage of public transit is dropping, whilst mobility-on-demand operators such as Uber and Lyft are increasing their operation on urban roads, increasing further congestion [7, 25, 41]. For instance, the yearly cost of congestion in the US has doubled between 2007 and 2013 [37, 49], and in Manhattan cars are traveling about 15% slower compared to five years ago [17].

Space limitations and a largely fixed infrastructure make congestion an issue difficult to address in urban environments. While existing public transportation systems need to be extended to ease congestion, it is important to adopt technological innovations improving the efficiency of urban transit. The advent of cyber-physical technologies such as autonomous driving and wireless communications will enable the deployment of abk:amod systems, i.e., fleets of self-driving cars providing on-demand mobility in a one-way vehicle-sharing fashion (see Fig. 1). Specifically, such a system is designed to carry passengers from their origins to their destinations, potentially in an intermodal fashion (i.e., utilizing several modes of transportation), and to assign empty vehicles to new requests. The main advantage of abk:amod systems is that they can be controlled by a central operator simultaneously computing routes for customer-carrying vehicles and rebalancing routes for empty vehicles, thus enabling a system-optimal operation of this transportation system. This way, abk:amod systems could replace current taxi and ride-hailing services and reduce the global cost of travel [44].

Conversely to conventional navigation providers computing the fastest route by passively considering congestion in an exogenous manner, abk:amod systems controlled by a central operator enable one to consider the endogenous impact of the single vehicles’ routes on road traffic and travel time, and can thus be operated in a congestion-aware fashion.

Fig. 1: The AMoD network. The white circles represent intersections and the black arrows denote road links. The dotted arrows represent pick-up and drop-off locations for single customers.

Statement of contributions: We introduce a computationally-efficient approach for congestion-aware AMoD

routing to minimize the system cost—the total cost of executing the routing scheme over all the vehicles in the system. To the best of our knowledge, this is the first method that takes into consideration the full representation of the volume-delay function that estimates the travel time based on the amount of traffic. Moreover, we demonstrate that our approach is faster by at least one order of magnitude than previous work (see Section 

II) for congestion-aware AMoD, while being more accurate in terms of congestion estimation.

On the algorithmic side, we develop a reduction which transforms the AMoD routing problem into a Traffic Assignment Problem (TAP), where the latter does not involve rebalancing of empty vehicles. We then prove mathematically that an optimal solution for the latter TAP instance yields a solution to our original AMoD problem with the following properties: (i) The majority (e.g., 99% in our experiments) of rebalancing demands are fulfilled and (ii) the system cost of the solution is upper bounded by the system optimum where 100% of the rebalancing demands are fulfilled. (We note that, in practice, the unfulfilled rebalancing demand, being just a small fraction – say,

– can be addressed via post-processing heuristic strategies with minimal impact on cost.)

Such a reformulation of the AMoD problem allows us to leverage state-of-the-art techniques for TAP, that can efficiently compute a congestion-aware system optimum. In particular, we employ the classic Frank-Wolfe algorithm [13, 27], which is paired with modern shortest-path techniques, such as contraction hierarchies [14] (both of which are implemented in recent open-source libraries [8, 12]). This allows us to compute in a few seconds (on a commodity laptop) AMoD routing schemes for a realistic test case over Manhattan, New York, consisting of passenger travel requests.

Organization: The remainder of this paper is structured as follows. In Section II we provide a review of related work. In Section III we formally define the instances of TAP and AMoD we are concerned with in this work. There we also discuss the assumptions of our model and possible limitations. In Section IV we provide a description of the Frank-Wolfe algorithm for TAP. Our main theoretical contribution is given in Section V, where we describe our approach for AMoD by casting it into TAP, and develop its mathematical properties. In Section VI we demonstrate the power of our approach and test its scalability on realistic inputs. We conclude the paper with a discussion and future work in Section VII.

Ii Related Work

There exist several approaches to study abk:amod systems, spanning from simulation models [16, 21, 23] and queuing-theoretical models [53, 18] to network-flow models [29, 34, 44]. On the algorithmic side, the control of abk:amod systems has been mostly based on network flow models employed in a receding-horizon fashion [19, 45, 46], and thresholded approximations of congestion effects [34], also accounting for the interaction with public transit [35] and the power-grid [33]. In such a framework, cars can travel through a road at free-flow speed until a fixed capacity of the road is reached. At that point, no more cars can traverse it. Such models result in optimization problems solvable with off-the-shelf linear-programming solvers—making them very well suitable for control purposes—but lacking accuracy when accounting for congestion phenomena, which are usually described with volume-delay functions providing a relationship between traffic flow and travel time. In particular, the abk:bpr developed the most commonly used volume-delay function [9], which has been applied to problems ranging from dynamic estimation of congestion [31] to route planning in agent-based models [5, 24]. Against this backdrop, a piecewise-affine approximation of the abk:bpr function is presented in [36] and combined with convex relaxation techniques to devise a congestion-aware routing scheme for abk:amod systems resulting in a quadratic program. Nevertheless, in large urban environments with several thousand transportation requests such approaches usually lead to computational times of the order of minutes, possibly rendering them less suitable for real-time control purposes.

Mathematically, AMoD can be viewed as an extension of TAP, where the latter ignores the cost and impact of rebalancing empty vehicles. Historically, TAP was introduced to model and quantify the impact of independent route choices of human drivers on themselves, and the system as a whole (see  [27, 39]). Algorithmic approaches for TAP typically assume a static setting in which travel patterns do not change with time, allowing to cast the problem into a multi-commodity minimum-cost flow [3], which can then be formulated as a convex programming problem. One of the most popular tools for convex programming in the context of TAP is the Frank-Wolfe algorithm [13]. What makes this algorithm particularly suitable for solving TAP is that its direction-finding step corresponds to multiple shortest-path queries (we expand on this point in Section IV). Recent advances in pathfinding tailored for transportation networks [6], including contraction hierarchies [12, 14], have made the Frank-Wolfe approach remarkably powerful. In particular, a recent work [8] introduced a number of improvements for pathfinding, and combines those with the Frank-Wolfe method. Notably, the authors present experimental results for TAP, where their approach computes within seconds a routing scheme for up to 3 million requests over a network of a large metropolitan area. Nevertheless, such an approach is not directly applicable to AMoD problems as it would not account for the rebalancing of empty vechicles.

Finally, we mention that AMoD is closely related to Multi-Robot Motion Planning (MRMP), which consists of computing collision-free paths for a group of physical robots, moving them from the initial set of positions to their destination. MRMP has been studied for the setting of discrete [38, 50, 52] and continuous [11, 40, 42] domains, respectively. The unlabeled variant of MRMP [2, 43, 47, 48, 51], which involves also target assignment, is reminiscent of the rebalancing empty vehicles in AMoD, as such vehicles do not have a priori assigned destinations.

Iii Preliminaries

In this section we provide a formal definition of TAP and AMoD, as our work will exploit the tight mathematical relation between these two problems.

The basic ingredient in our study is the road network, which is modeled as a directed graph : Each vertex represents either a physical road intersection or points of interest on the road. Each edge represents a road segment connecting two vertices . To model the travel times along the network, every edge is associated with a cost function , which represents the travel time along the edge as a function of flow (i.e., traffic) along the edge, denoted by . In order to accurately capture the cost, every edge has two additional attributes: the capacity of the edge , which can be viewed as the amount of flow beyond which the travel time will increase rapidly, and the free-flow travel time , i.e., the nominal travel time when . We mention that those attributes are standard when modeling traffic (see, e.g., [27]). The time-invariant nature of this model captures the average value of the flows for a certain time period.

To compute we use the bpr function [9], which is often employed in practice. It is noteworthy that our approach presented below can be modified to work with other functions such as the modified Davidson cost [4]. Specifically, we define the cost function as

where typically and .

Travel demand is represented by passenger requests , where represents the amount of customers willing to travel from the origin node to the destination node per time unit.

Iii-a Traffic Assignment

Here we provide a mathematical formulation of traffic assignment. We denote by the flow induced by request on edge . We introduce the following constraint which ensures that the amount of flow associated with each request is maintained when a flow enters and leaves a given vertex. The amount of flow corresponding to the request , leaving and entering must match the demand flow as


and , denote heads and tails of edges leaving and entering , respectively. We also impose non-negative flows as


The objective of TAP is specified in the following definition. Informally, the goal is to minimize the total travel time experienced by the users in the system, that is the sum of travel times for each individual request .

Definition 1.

The traffic-assignment problem (TAP) consists of minimizing the expression


where .

Iii-B Autonomous Mobility-on-Demand

In an abk:amod system, the formulation of TAP captures only partially the cost of operating the full system. In particular, vehicles need to perform two types of tasks: (i) occupied vehicles drive passengers from their origins to their destinations; (ii) after dropping passengers off at their destination, empty vehicles need to drive to the next origin nodes, where passengers will be picked up. Indeed, the formulation of TAP above only captures the cost associated with (i), but not (ii). Another crucial difference between TAP and AMoD, which makes the latter significantly more challenging, is the fact that the travel destinations of empty vehicles are not given a priori and should be computed by the algorithm. Thus, we extend the model to include also rebalancing empty vehicles and define as the rebalancing flow of empty vehicles over . We force empty vehicles to be rebalanced from destination nodes to origin nodes as


where is a boolean indicator function. Observe that nodes with more arriving than departing passengers do not require rebalancing. We use to denote the total number of rebalancing requests and enforce non-negativity of rebalancing flows as

Definition 2.

The autonomous-mobility-on-demand problem (AMoD) consists of minimizing the expression , subject to (1), (2), (4), (5), where .

Iii-C Discussion

A few comments are in order. First, we make the assumption that mobility requests do not change in time. This assumption is justified in cities where transportation requests change slowly with respect to the average travel time [26]. Second, the model describes vehicle routes as fractional flows and it does not account for the stochastic nature of the trip requests and exogenous traffic. Given the mesoscopic perspective of our study, such an approximation is in order. Moreover, given the computational effectiveness of the approach, our algorithm is readily implementable in real-time in a receding horizon fashion, whereby randomized sampling algorithms can be adopted to compute integer-valued solutions with near-optimality guarantees [32]. Third, we assume exogenous traffic to follow habitual routes and neglect the impact of our decisions on the traffic base load, leaving the inclusion of reactive flow patterns to future work. Fourth, we model the impact of road traffic on travel time with the abk:bpr function [9], which is well established and, despite it does not account for microscopic traffic phenomena such as traffic lights, serves the purpose of route-planning on the mesoscopic level. Finally, we constrain the capacity of the vehicles to one single customer, which is in line with current trends, and leave the extension to ride-sharing to future research [10, 46].

Iv Convex Optimization for TAP

In this section we describe the Frank-Wolfe method for convex optimization, which will later be used for solving AMoD. First, we have the following statement concerning the convexity of TAP.

Claim 1 ((Convexity)).

TAP (Definition 1) is a convex problem.


Given a specific edge , observe that the derivative of the expression is strictly increasing, which implies that it is convex. As the expression consists of a sum of convex functions, it is convex as well. ∎

Iv-a The Frank-Wolfe Algorithm

Due to the convexity of the problems introduced, we can leverage convex optimization to solve TAP, and consequently AMoD, as we will see later on. Specifically, we use the Frank-Wolfe algorithm (FrankWolfe), which is well suited to our setting and has achieved impressive practical results for large-scale instances of TAP in a recent work [8].

Before introducing FrankWolfe, it should be noted that it is typically employed to minimize the user-equilibrium cost function captured by


for some , whereas we are interested in computing the system optimum corresponding to the minimum of , using as defined in the previous section. However, we can enforce the user-equilibrium reached by selfish agents to correspond to the system optimum by using the marginal costs

which quantifies the sensitivity of the total cost with respect of small changes in flows. Specifically, to compute the system optimum, we only need to apply FrankWolfe to minimize (Equation 6). (See more information on this transformation in [27].) The algorithm below will be presented with respect to .

The following pseudo-code (Algorithm 1) presents a simplified version of FrankWolfe, which is based on [27, Chapter 4.1]. The algorithm begins with an initial solution , which satisfies (1), (2). To obtain , one can, for instance, assign each request to the shortest route over the traffic-free graph , while ignoring the flows of the other users.

2:while stopping criterion not reached do
3:     , s.t. satisfies (1), (2)
5:     ;
Algorithm 1 FrankWolfe

In each iteration of the algorithm, the following steps are performed. In line 3 a value of minimizing the expression , which satisfies (1), (2), is obtained. It should be noted that this corresponds to solving a linear program with respect to , due to the fact that is already known, and one is working with the gradient of rather than the function itself. We will say a few more words about this computation below. In line 4 a scalar is found, such that

is minimized, which corresponds to solving a single-variable optimization problem, which can be done efficiently. At the end of the iteration in line 5 the solution is updated to be a linear interpolation between

and . The last value of computed before the stopping criteria has been reached, is returned in the end. Due to the convexity of the problem, it is guaranteed that as , converges to the optimal solution of TAP.

Iv-B All-or-nothing Assignment

What makes FrankWolfe particularly suitable for solving TAP is the special structure of the task of computing which minimizes . First, observe that it is equivalent to minimizing the expression . Next, notice that for any it holds that , where is the value corresponding to of . That is, every variable is multiplied by . Thus, minimizing the expression while satisfying (1), (2) is equivalent to independently assigning the shortest route for every request , over the graph , where the cost of traversing the edge is independent of the traffic passing through it, and is equal to .

This operation is known as All-or-Nothing assignment, due to the fact that each request is assigned to one specific route. Its pseudo code is given below (Algorithm 2). The ShortestPath

routine returns a vector

, where for every that is found on the shortest path from to on , weighted by , , and otherwise.

1:for  do
Algorithm 2 AllOrNothing


In this section we establish an equivalence between TAP and AMoD. In particular, we show that a given AMoD problem can be transformed into a TAP, such that a solution to the latter, which is obtained by FrankWolfe, yields a solution to the former.

The crucial difference between the two problems is that in TAP every vehicle has a specific origin and destination vertex, whereas in AMoD this is not the case. In particular, while in AMoD empty rebalancers originate in specific destination vertices of user requests, the destinations of these rebalancers can in theory be any of the origin vertices. However, we show that this gap can be bridged by supplementing the original graph with an additional “dummy” vertex, and connecting to it edges emanating from all the vertices that need to be rebalanced. We then set the costs of the edges to guarantee an almost complete rebalancing, i.e., only a small fraction of the rebalancing requests will not be fulfilled. In the remainder of this section we provide a detailed description of the approach and proceed to analyze its theoretical guarantees.

V-a The construction

We formally describe the structure of this new graph , where , and

Recall that indicates that there are fewer user requests arriving to than there are departing from the vertex, which implies that rebalancers should be sent to this vertex. The vertex is new and will serve as dummy target vertex for all the rebalancers. See example in Figure 2.

To ensure that a sufficient number of rebalancers will arrive at each vertex that needs to be rebalanced, we assign to every edge the cost , where , and , where is a large constant whose value will be determined later on.

The final ingredient in transforming AMoD to TAP is providing excess vehicles with specific origins and destinations. Given the original set of requests , for every such that we add the request , where is its intensity. This yields the extended requests set .

Fig. 2: A simple example for the construction. The graph  consists of the vertices to and the (black) edges between them. The demand for  is , where each triplet denotes the intensity, origin, and destination, respectively. Red vertices indicate shortage of incoming vehicles (e.g., four passengers depart from vertex , but only two vehicles arrive), green indicates excess (e.g, four vehicles terminate in vertex but only two passengers leave), black represents vertices with met demand (e.g., vertex where two vehicles terminating, and two passengers departing). Consequently, the graph  additionally contains the dummy vertex , and edges drawn in blue, originating from vertices of with shortage. Accordingly, the capacity is set to . extends with the request . Observe that its intensity corresponds to the total excess in vertices .

As each free or occupied vehicle has a specific destination, we can think of the AMoD problem as a new TAP problem over the graph and the extended set of requests . As rebalancers are no longer needed to be considered separately from the users, we may redefine to be the total flow along an edge , including users and rebalancers. Denote . The cost function for the corresponding TAP is , where .

We show in the remainder of this section that after choosing  correctly, then , which minimizes the system optimum under the constraints (1), (2), with respect to , represents a high-quality solution to the AMoD problem, in which the majority of rebalancing requests are fulfilled. It is worth clarifying that the cost of the obtained flow is represented by .

V-B Analysis

First, we note that the new objective function remains convex owing to the fact that for every new dummy edge its cost function is monotone and increasing with respect to its flow (see Claim 1). Given a vector assignment for TAP over , it will be useful to split it into variables corresponding to the edges , and variables corresponding to .

The motivation for setting the specific capacity value to edge is given in the following lemma. Recall that .

Lemma 1 ((Optimal assignment for dummy edges)).

Let minimize , under the constraint that . Then , where .


Note that is convex, and feasible for the constraint . Thus, it has a unique minimum. To find it, we shall use Lagrange multipliers.

Let and define the Lagrangian . For any ,

The constraint yields that , which is then plugged into , where we use the fact that , to yield . We then substitute to yield , which concludes the proof. ∎

We arrive at the main theoretical contribution of the paper, which states that can be tuned to obtain a solution where the fraction of unfulfilled rebalancing requests is as small as desired. Notice that for a given solution , the expression represents the fraction of unfulfilled requests.

Theorem 1 ((Bounded fraction of unfulfilled requests)).

Let subject to (1), (2). For every exists such that if then .


Let be an assignment satisfying (1), (2) such that , which minimizes the expression . That is, minimizes over all which fully satisfies the rebalancing constraints. (Observe that such represents the optimal solution of the original AMoD problem.) If turns out to yield the minimum of without conditioning on then the result follows. Thus, we assume otherwise. Fix and let represent any assignment, satisfying (1), (2), and for which it holds that .

Our goal is to find a value of such that for any it holds that . This implies that using such we are guaranteed that if a solution returned by FrankWolfe will have at most unfulfilled request. This is equivalent to requiring that

Notice that by Lemma 1, it holds that .

Recovering a precise upper bound for the expression , which depends on , is quite difficult. We therefore resort to a crude (over-)estimation of it, which is the value . Thus, we wish to find such that .

Define , for every , where . For every such the following holds:

where the inequality follows from Bernoulli’s inequality. Also, note that . Thus,

where the second to last inequality is due to Cauchy-Schwarz, and is the number of dummy edges.

Thus, we have just shown that for any it holds that . To conclude, for , it follows that , which implies that any value satisfying the constraints (1), (2) and minimizing , also guarantees that . ∎

We will consider the practical aspects of computing a proper in Section VI. The next corollary is the final piece of the puzzle. It proves that when using a proper , not only that is bounded, but also the value is at most .

Corollary 1 ((Bounded cost of routing)).

Fix and let such that . Then (i) , and (ii) , where under constraints (1), (2).


Let be as defined in the previous proof. It is clear that satisfies (i). Now, observe that by definition , and by Lemma 1, . Then the following derivation proves (ii):

Vi Experimental results

In this section, we use experimental results to demonstrate the power of our approach for AMoD routing via a reduction to TAP (Section V) on a real-world case study. In the first set of experiments in Section VI-C we validate experimentally the theory developed in Section V-B. In summary, we observe that the approach yields near-optimal solutions within a few seconds, where most (more than 99%) of the rebalancing requests are fulfilled, when is properly tuned. We then test the scalability of the approach on scenarios involving as much as 600k user requests, where we observe that running times and convergence rates scale only linearly with the size of input. In the final set of experiments we demonstrate the benefit of the approach over previous methods.

Vi-a Implementation Details

All results were obtained using a commodity laptop equipped with 2.80GHz 4 core i7-7600U CPU, and 16GB of RAM, running 64bit Ubuntu 18.04 OS. The C++ implementation of the FrankWolfe algorithm is adapted (with merely minor changes) from the routing-framework, which was developed for [8]. For shortest-path computation in the AllOrNothing routine, we use contraction hierarchies [14], which are embedded in the routing-framework, and are in turn based upon the code in the RoutingKit (see [12]). Running times reported below are for a 4-core parallelization.

In our experiment we observed that in some situations, the first few iterations of FrankWolfe route most of the rebalancers to a select set of dummy edges, so that the actual flow is far larger than the capacity. This leads to numeric overflows when working with the standard C++ double and to failure of the program. We mention that this phenomenon was not observed for the modified Davidson cost function [4], linearized at of the capacity, which has a more gentle gradient. To alleviate the problem when working with bpr, one can resort to using long double or linearize the value of the function after a certain threshold is reached. We chose the latter, by linearizing at of the capacity. We emphasize that this does not affect the final outcome of the algorithm.

Finally, we mention that we experimented with a few cost functions (including linear, and modified Davidson) for the dummy edges, until we settled on bpr, which yields the best convergence rates.

Vi-B Data

Similarly to [36], our experiments are conducted over Manhattan in New York City, where the OD-pairs are inferred from taxi rides that occurred during the morning peak hour on March 1st, 2012. As in [36], we assume to centrally control all ride-hailing vehicles in Manhattan, and accordingly scale taxi rides requests by a factor of . The total number of real user OD-pairs in our experiments is thus (unless stated otherwise). In order to take into consideration the fact that autonomous vehicles need to share the road with private vehicles, which should increase the overall cost of travelling along edges, we introduce a parameter of exogenous traffic (as was done in [36]). In particular, for a non-dummy edge , with a flow , we assign the cost , where denotes the exogenous flow. For simplicity, we set this value so that the fraction of over the capacity of the edge is the same, over all edges. That is, we choose a value and set . Unless stated otherwise, , which approximates the scenario of the rush-hour traffic, mentioned above. The underlying road-map was extracted from an Open Street Map [15], where .

Vi-C Results

Before proceeding to the experiments we mention that in some results we compare the outcome of our algorithm with an optimal value, denoted by OPT. To obtain it, we run the algorithm, with a corresponding set of parameters, for iterations. This provides a good approximation of the real optimum. E.g., for the final iteration of the algorithm, when minutes, the relative difference in the real and dummy cost is and , respectively. The terms real and dummy costs correspond to and , respectively.

Validation of the theory. Our first set of experiments is designed to validate the convergence of the approach, and the theory presented in Section V. In summary, we observe that with already small a solution where a large majority of rebalancing requests are fulfilled is achieved. Moreover, the system cost for the rebalaced system is also very close to the optimal value. Importantly, this is achieved within only iterations of FrankWolfe, corresponding to around seconds.

In order to test how the value of affects the fraction of unbalanced requests , as stated in Theorem 1, and the real and dummy costs of solution, i.e., , respectively, we experiment with values of in the range of to minutes (see Figure 3).

In terms of the fraction of unfulfilled requests , as Theorem 1 states, increasing reduces this value. For instance, when , , but already when then , after 100 iterations. It should be noted that a small value of is reached only when is noticeably larger than (see middle and bottom plots in Figure 3, for comparison).

This implies that our estimation for suggested in Theorem 1 is quite conservative. From a practical point of view, we recommend iterating over using binary search until a desired value of is achieved.

We now discuss the relation between the magnitude of and . We observe that increases with . This follows from the fact that a smaller requires rebalancers to increase the total length of their trips in order to accommodate more requests. Here we can also observe a possible drawback in setting to be needlessly large, as it takes more iterations to settle on the correct value of . This follows from the fact that to obtain a smaller requires more iterations.

Lastly, observe that already after approximately 50 iterations, all three values reach a plateau, i.e., increasing the number of iterations only slightly changes the corresponding value. Also note that values of OPT, computed for , are very close to corresponding values for the same after only iterations. This indicates that a small number of iterations suffices to reach a near-optimal value, be it , , or .

Fig. 3: Validation of theoretical results. For all the plots, OPT represents the corresponding optimal value for . [TOP] A plot of . The left number in the legend represents , whereas the value in the brackets denotes after iteration . For instance, OPT yields , whereas for the same after iterations we have that . [CENTER] A plot of . The left number in the legend represents , whereas the value in brackets denotes after iteration . E.g., for is only longer than OPT. [BOTTOM] A plot for .

Scalability. In this set of experiments we demonstrate the scalability of the approach by increasing the total number of OD requests. We use the set of OD pairs, which was utilized in the above experiments, as a basis, and then multiply this set by and . The last case includes travel requests. In an attempt to make the four settings similar in terms of the total traffic on the road, we pair each setting with exogenous traffic of , respectively.

Each scenario was executed for iterations. For the first two plots we chose to show results only for the first iterations, as the change is very minor from this point on. We also omit a plot for the dummy cost as we found it uninformative. The results are presented in Figure 4.

The rate of convergence and the final result for behave similarly for the four settings. However, we note that we expect to see a more significant difference for a more realistic data set, as a bigger data set would have more diverse OD pairs. Nevertheless, we emphasize that our four settings do not yield similar solutions with respect to flow distribution, as the scale of flow affects the cost. In terms of the running time, we mention that it scales proportionally to the number of OD pairs (e.g., x is roughly 4 times quicker than x), and the rate of change with respect to the number of iterations is roughly constant.

Fig. 4: Plots for scalability experiments. [TOP] A plot of , i.e., fraction of unfulfilled rebalancing requests. The left notation in the legend (x) indicates the used number of copies of the original OD set, whereas the value in brackets denotes after iteration . [CENTER] A plot of . The value in brackets denotes the ratio of deviation for between the iterations and . [BOTTOM] A plot of total running time. The value in brackets denotes the running time after iteration .

Comparison with previous work. Here we demonstrate the benefits of computing a solution to AMoD using the precise formulation of the cost function bpr, as opposed to a piecewise-affine approximation of bpr, or a congestion-unaware solution. The piecewise-affine approximation approach was suggested in [36], where the bpr function is approximated by two affine functions (see more details in Section II). In terms of computation time, our approach yields the results in around 15 seconds, whereas the reported running times of [36] are below 4 minutes for similar hardware. We wish to point out that [36] do not minimize travel time for rebalancing vehicles, and also include walking times in their analysis. The congestion-unaware approach, which was utilized in earlier works (see, e.g., [28]), generates a solution without considering the effect of congestion of the routed vehicles on the overall cost.

We implemented all three types of solution using our framework, by replacing the precise formulation of the bpr function, where relevant. We wish to clarify that the cost function used on the dummy edges remains bpr, to guarantee rebalancing (see Section V-B), as this does not affect the real solution cost. The computation was done with . The same applies to OPT which was computed using the full bpr.

We ran the three approaches for varying values of (see plots of the comparison in Figure 5). As was observed in previous studies, congestion-unaware planning underestimates the real travel cost, which results in plans that divert traffic to overly congested routes. The deviation from OPT increases with exogenous traffic. Already for , the total cost is around times OPT. Approximate bpr is much more accurate in this respect. However, it either under- or overestimates the real cost, which yields plans where vehicles are rerouted from low-cost routes to more congested routes. Approximate bpr yields plans whose deviation from OPT is twice as high for the precise bpr, when ; it coincides with our solution for ; for larger values of the deviation becomes more noticeable. For instance, when it yields a solution of around  times OPT. In contrast, our approach yields an accurate estimation of OPT for the entire range of .

Fig. 5: Plots for comparison experiments. For each of the three types of cost functions we plot the ratio between the obtained cost and the cost for OPT, as a function (-axis). The corresponding value for is given in the brackets.

Vii Discussion and Future Work

This paper presented a computationally-efficient framework to compute the system-optimal operation of a fleet of self-driving cars providing on-demand mobility in a congestion-aware fashion. To the best of our knowledge, this is the first scheme providing high-quality routing solutions for large-scale abk:amod fleets within seconds, thus enabling real-time implementations for operational control through receding horizon optimization (to account for new information that is revealed over time) and randomized sampling (to recover integer flows with near-optimality guarantees [32]). Our approach consists of reducing our problem to a TAP instance, such that an optimal solution achieved for the latter yields an optimal for AMoD. This allows us to leverage modern and highly effective approaches for TAP. We showcased the benefits of our approach in a real-world case-study. The results showed our method outperforming state-of-the-art approaches by at least one order of magnitude in terms of computational time, whilst improving the system performance by up to 20%.

This work opens the field for several extensions, and leaves a few open questions. On the side of theory, our immediate goal is to analyze the convergence rate of our approach. There is an abundance of recent results on the theoretical properties of FrankWolfe (see, e.g., [20, 30]

), which regained popularity in recent years due to applications in machine learning

111See However, it is not clear whether these results are applicable to our setting, and what their implications are on the convergence of the real cost , rather than . We also plan to investigate approaches to obtain a more informative estimation of the constant (see Theorem 1). On the implementation side, we mention that the performance can be further improved by using customizable contraction hierarchies [12] for pathfinding, and bundling identical OD pairs. We also point out the fact that the AllOrNothing routine is embarrassingly parallel, and a significant speedup can be gained from using a multi-core machine. Finally, on the application side, we aim at exploiting the high computational efficiency of the presented approach by implementing it in real-time using receding horizon schemes. To this end, it might be necessary to employ a time-expansion of the road-graph and account for stochastic effects, as it was done in [18, 45]. In addition, it is of interest to extend this framework to capture the interaction with public transit [35] and the power grid [33], and account for the interaction of self-driving vehicles with the urban infrastructure.


We would like to thank Valentin Buchhold for advising on the routing-framework. We thank Dr. Ilse New and Michal Kleinbort for proofreading this paper and providing us with their comments and advice. Our special thanks are also extended to our labmates Ramón Darío Iglesias, Matthew Tsao, and Jannik Zgraggen for the fruitful discussions. The second author would like to express his gratitude to Dr. Chris Onder for his support. This research was supported by the National Science Foundation under CAREER Award CMMI-1454737 and the Toyota Research Institute (TRI). The first author is also supported by the Fulbright Scholars Program. This article solely reflects the opinions and conclusions of its authors and not NSF, TRI, Fulbright, or any other entity.


  • CIA [2018] The world factbook. Central Intelligence Agency, 2018. Available at
  • Adler et al. [2015] A. Adler, M. De Berg, D. Halperin, and K. Solovey. Efficient multi-robot motion planning for unlabeled discs in simple polygons. IEEE Trans. Automation Science and Engineering, 12(4):1309–1317, 2015.
  • Ahuja et al. [1993] R. K. Ahuja, T. L. Magnanti, and J. B. Orlin. Network Flows: Theory, Algorithms, and Applications. Pearson, 1993.
  • Akcelik [1978] R Akcelik. A new look at Davidson’s travel time function. Traffic Engineering & Control, 19(N10), 1978.
  • Aslam et al. [2012] J. Aslam, S. Lim, and D. Rus. Congestion-aware traffic routing system using sensor data. In Proc. IEEE Int. Conf. on Intelligent Transportation Systems, 2012.
  • Bast et al. [2016] H. Bast, D. Delling, A. Goldberg, M. Müller-Hannemann, T. Pajor, P. Sanders, D. Wagner, and R. F. Werneck. Route Planning in Transportation Networks, pages 19–80. Springer International Publishing, 2016.
  • Berger [2018] P. Berger. MTA blames Uber for decline in New York City subway, bus ridership. The Wall Street Journal, 2018. available online.
  • Buchhold et al. [2018] V. Buchhold, P. Sanders, and D. Wagner. Real-time traffic assignment using fast queries in customizable contraction hierarchies. In International Symposium on Experimental Algorithms, pages 27:1–27:15, 2018. URL
  • Bureau of Public Roads [1964] Bureau of Public Roads. Traffic assignment manual. Technical report, U.S. Dept. of Commerce, Urban Planning Division, 1964.
  • Cáp and Alonso-Mora [2018] M. Cáp and J. Alonso-Mora. Multi-objective analysis of ridesharing in automated mobility-on-demand. In Robotics: Science and Systems, 2018.
  • Cáp et al. [2015] M. Cáp, Novák P., A. Kleiner, and M. Selecký. Prioritized planning algorithms for trajectory coordination of multiple mobile robots. IEEE Trans. Automation Science and Engineering, 12(3):835–849, 2015.
  • Dibbelt et al. [2016] J. Dibbelt, B. Strasser, and D. Wagner. Customizable contraction hierarchies. ACM Journal of Experimental Algorithmics, 21(1):1.5:1–1.5:49, 2016. URL
  • Frank and Wolfe [1956] M. Frank and P. Wolfe. An algorithm for quadratic programming. Naval research logistics quarterly, 3(1-2):95–110, 1956.
  • Geisberger et al. [2012] R. Geisberger, P. Sanders, D. Schultes, and C. Vetter. Exact routing in large road networks using contraction hierarchies. Transportation Science, 46(3):388–404, 2012.
  • Haklay and Weber [2008] M. Haklay and P. Weber. OpenStreetMap: User-generated street maps. IEEE Pervasive Computing, 7(4):12–18, 2008.
  • Hörl et al. [2018] S. Hörl, C. Ruch, F. Becker, E. Frazzoli, and K. W. Axhausen. Fleet control algorithms for automated mobility: A simulation assessment for Zurich. In Annual Meeting of the Transportation Research Board, 2018.
  • Hu [2017] W. Hu. Your Uber car creates congestion. should you pay a fee to ride? The New York Times, 2017. available online.
  • Iglesias et al. [2016] R. Iglesias, F. Rossi, R. Zhang, and M. Pavone. A BCMP network approach to modeling and controlling Autonomous Mobility-on-Demand systems. In Workshop on Algorithmic Foundations of Robotics, 2016.
  • Iglesias et al. [2018] R. Iglesias, F. Rossi, K. Wang, D. Hallac, J. Leskovec, and M. Pavone. Data-driven model predictive control of autonomous mobility-on-demand systems. In Proc. IEEE Conf. on Robotics and Automation, 2018.
  • Lacoste-Julien and Jaggi [2015] S. Lacoste-Julien and M. Jaggi. On the global linear convergence of Frank-Wolfe optimization variants. In Neural Information Processing Systems, pages 496–504, 2015.
  • Levin et al. [2017] M. W. Levin, K. M. Kockelman, S. D. Boyles, and T. Li. A general framework for modeling shared autonomous vehicles with dynamic network-loading and dynamic ride-sharing application. Computers, Environment and Urban Systems, 64:373 – 383, 2017.
  • Levy et al. [2010] J. I. Levy, J. J. Buonocore, and K. Von Stackelberg. Evaluation of the public health impacts of traffic congestion: a health risk assessment. Environmental Health, 9(1):65, 2010.
  • Maciejewski et al. [2017] M. Maciejewski, J. Bischoff, S. Hörl, and K. Nagel. Towards a testbed for dynamic vehicle routing algorithms. In Int. Conf. on Practical Applications of Agents and Multi-Agent Systems - Workshop on the application of agents to passenger transport (PAAMS-TAAPS), 2017.
  • Manley et al. [2014] E. Manley, T. Cheng, A. Penn, and A. Emmonds. A framework for simulating large-scale complex urban traffic dynamics through hybrid agent-based modelling. Computers, Environment and Urban Systems, 44:27–36, 2014.
  • Molla [2018] R. Molla. Americans seem to like ride-sharing services like Uber and Lyft. But it’s hard to say exactly how many use them. Recode, 2018. Available at
  • Neuburger [1971] H. Neuburger. The economics of heavily congested roads. Transportation Research, 5(4):283–293, 1971.
  • Patriksson [2015] Michael Patriksson. The Traffic Assignment Problem: Models and Methods. Dover Publications, 2015. ISBN 0486787907.
  • Pavone et al. [2011] M. Pavone, S. L. Smith, E. Frazzoli, and D. Rus. Load balancing for Mobility-on-Demand systems. In Robotics: Science and Systems, 2011.
  • Pavone et al. [2012] M. Pavone, S. L. Smith, E. Frazzoli, and D. Rus. Robotic load balancing for Mobility-on-Demand systems. Int. Journal of Robotics Research, 31(7):839–854, 2012.
  • Peña et al. [2016] J. Peña, D. Rodríguez, and N. Soheili. On the von Neumann and Frank-Wolfe algorithms with away steps. SIAM Journal on Optimization, 26(1):499–512, 2016.
  • Rivas et al. [2016] A. Rivas, G. Inmaculada, S. Sánchez-Cambronero, R. M. Barba, and L. Ruiz-Ripoll. A continuous dynamic traffic assignment model from plate scanning technique. Transport Research Procedia, 18:332–340, 2016.
  • Rossi [2018] F. Rossi. On the Interaction between Autonomous Mobility-on-Demand Systems and the Built Environment: Models and Large Scale Coordination Algorithms. PhD thesis, Stanford University, Dept. of Aeronautics and Astronautics, 2018.
  • Rossi et al. [2018a] F. Rossi, R. Iglesias, M. Alizadeh, and M. Pavone. On the interaction between Autonomous Mobility-on-Demand systems and the power network: Models and coordination algorithms. In Robotics: Science and Systems, 2018a. Extended version available at
  • Rossi et al. [2018b] F. Rossi, R. Zhang, Y. Hindy, and M. Pavone. Routing autonomous vehicles in congested transportation networks: Structural properties and coordination algorithms. Autonomous Robots, 42(7):1427–1442, 2018b.
  • Salazar et al. [2018] M. Salazar, F. Rossi, M. Schiffer, C. H. Onder, and M. Pavone. On the interaction between autonomous mobility-on-demand and the public transportation systems. In Proc. IEEE Int. Conf. on Intelligent Transportation Systems, 2018. In Press. Extended Version, Available at
  • Salazar et al. [2019] M. Salazar, M. Tsao, I. Aguiar, M. Schiffer, and M. Pavone. A congestion-aware routing scheme for autonomous mobility-on-demand systems. In European Control Conference, 2019. Submitted.
  • Schrank et al. [2007] D. Schrank, T. Lomax, and S. Turner. The 2007 urban mobility report. Technical report, Texas Transportation Institute, 2007.
  • Sharon et al. [2015] G. Sharon, R. Stern, A. Felner, and N. R. Sturtevant. Conflict-based search for optimal multi-agent pathfinding. Artificial Intelligence, 219:40–66, 2015.
  • Sheffi [1985] Y. Sheffi. Urban Transportation Networks: Equilibrium Analysis with Mathematical Programming Methods. Prentice Hall, 1985.
  • Shome et al. [2019] R. Shome, K. Solovey, A. Dobson, D. Halperin, and K. E. Bekris. dRRT*: Scalable and informed asymptotically-optimal multi-robot motion planning. Autonomous Robots, 2019.
  • Siddiqui [2018] F. Siddiqui. Failing transit ridership poses an ‘emergency’ for cities, experts fear. The Washington Post, 2018. available online.
  • Solovey et al. [2015] K. Solovey, J. Yu, O. Zamir, and D. Halperin. Motion planning for unlabeled discs with optimality guarantees. In Robotics: Science and Systems, 2015.
  • Solovey and Halperin [2016] Kiril Solovey and Dan Halperin. On the hardness of unlabeled multi-robot motion planning. I. J. Robotics Res., 35(14):1750–1759, 2016.
  • Spieser et al. [2014] K. Spieser, K. Treleaven, R. Zhang, E. Frazzoli, D. Morton, and M. Pavone. Toward a systematic approach to the design and evaluation of Autonomous Mobility-on-Demand systems: A case study in Singapore. In Road Vehicle Automation. Springer, 2014.
  • Tsao et al. [2018] M. Tsao, R. Iglesias, and M. Pavone. Stochastic model predictive control for autonomous mobility on demand. In Proc. IEEE Int. Conf. on Intelligent Transportation Systems, 2018. In Press. Extended Version, Available at
  • Tsao et al. [2019] M. Tsao, D. Milojevic, C. Ruch, M. Salazar, E. Frazzoli, and M. Pavone. Model predictive control of ride-sharing autonomous mobility on demand systems. In Proc. IEEE Conf. on Robotics and Automation, 2019.
  • Turpin et al. [2014a] M. Turpin, N. Michael, and V. Kumar. Capt: Concurrent assignment and planning of trajectories for multiple robots. I. J. Robotics Res., 33(1):98–112, 2014a.
  • Turpin et al. [2014b] M. Turpin, K. Mohta, N. Michael, and V. Kumar. Goal assignment and trajectory planning for large teams of interchangeable robots. Auton. Robots, 37(4):401–415, 2014b.
  • Tuttle and Cowles [2014] B. Tuttle and T. Cowles. Traffic jams cost Americans $124 billion in 2013. Time - Money, 2014.
  • Yu [2018] J. Yu. Constant factor time optimal multi-robot routing on high-dimensional grids. In Robotics: Science and Systems, 2018.
  • Yu and LaValle [2012] J. Yu and S. M. LaValle. Distance optimal formation control on graphs with a tight convergence time guarantee. In IEEE Conference on Decision and Control, pages 4023–4028, 2012.
  • Yu and LaValle [2016] J. Yu and S. M. LaValle. Optimal multirobot path planning on graphs: Complete algorithms and effective heuristics. IEEE Trans. Robotics, 32(5):1163–1177, 2016.
  • Zhang and Pavone [2016] R. Zhang and M. Pavone. Control of robotic Mobility-on-Demand systems: A queueing-theoretical perspective. Int. Journal of Robotics Research, 35(1–3):186–203, 2016.