System Optimal Routing of Traffic Flows with User Constraints using Linear Programming

For static trafﬁc assignment problems, it is well-known that (1) the total travel time in a user-equilibrium solution can be substantially higher than the total travel time in a system-optimum solution, and (2) the user-experienced travel time in a system-optimum solution can be substantially higher that the user-experienced travel time in a user-equilibrium solution. By seeking system optimal trafﬁc ﬂows subject to user constraints, a comprise solution can be obtained that balances system and user objectives. We propose a linear programming based approach to efﬁciently obtain a solution that effectively balances system and user objectives. A computational study reveals that solutions with near-optimal total travel times can be found in which most users experience travel times that are better than user-equilibrium travel times and few users experience travel times that are slightly worse than user-equilibrium travel times.


Introduction
Road congestion is one of the most pressing problems in urban areas, as it has negative economic, environmental, and health impacts. Since in most situations, road network infrastructure expansion is not feasible, because of a lack of available space or the huge costs, alternative solutions have to be explored.
Route guidance is natural and popular choice. Many vehicles, nowadays, are equipped with navigational devices that can compute a shortest route (based on user preferences) from an origin to a destination. The 1 latest versions of these devices can also display current traffic conditions and use current traffic data on shortest route computations. Unfortunately, these devices do not consider the potential impact of the directions provided to a driver on the traffic system. As a consequence, the same route may be suggested to many users, which, if the recommended routes are followed by the users, may simply result in congestion occurring in other parts of the road network rather than a reduction in system-wide congestion or in avoiding an increase in system-wide congestion. Coordinating route guidance across the users of the system, and adherence to the suggested routes by the users, is needed to reduce congestion or, even better, to avoid congestion. In the (near) future, with the introduction of self-driving vehicles, this may become a reality. Our research focuses on optimization models to support these developments.
Route choice, or traffic assignment, concerns the selection of routes (alternatively called paths) between origins and destinations in transportation networks. It is the fourth step in the conventional transportation forecasting model, following trip generation, trip distribution, and mode choice. Traffic assignment problems are defined on a road network with an origin-destination (OD) matrix specifying demand, i.e, the number of vehicles per time unit that is expected to travel from each origin to each destination. Details on forecasting demand on road networks can be found in Sheffi (1985), Ben-Akiva and Lerman (1985), Florian and Hearn (1999) and de Dios Ortuzar and Willumsen (2011).
A distinction is made between static and dynamic traffic assignment problems. In a dynamic traffic assignment problem, origin-destination demand varies over time. Early studies on dynamic traffic assignment date back to Merchant and Nemhauser (1978). However, this class of traffic assignment problems is very challenging Jahn et al. (2005) and there is no generally accepted model or methodology Papageorgiou (1990); Mahmassani and Peeta (1995); Peeta and Ziliaskopoulos (2001); Ben-Akiva et al. (2012). In a static traffic assignment problem, on the other hand, origin-destination demand is assumed to be constant over time. Sheffi (1985) points out that this assumption is realistic during a rush hour period when traffic exhibits a steady-state behavior. This class of problems has been widely studied (see Sheffi (1985) and Patriksson (2015) for references) and is also the focus of our research.
In his seminal work, Wardrop (1952) introduced two, now famous, principles that describe the characteristics of the so-called user and system equilibrium. In the user equilibrium, the journey times along all routes used from an origin to a destination are equal and less than the journey time that would be experienced by a single user on any unused route, i.e., no user can lower his transportation cost through unilateral action. In the system equilibrium the average journey time is minimum, i.e., the sum of the journey times experienced 2 by all users is as small as possible.
To compute journey times, it is critical to be able to compute the experienced travel time on an arc, which, of course, depends on the traffic flow on the arc. To do so, a latency function t a (x) is used, which gives the experienced travel time on arc a given traffic flow x. The most popular latency functions are the Davidson's function t a (x) = t FF a (1 + αx a u a −x a ), where t FF a is the arc free-flow travel time and u a and α are tuning parameters, and the U.S. Bureau of Public Road function t a (x) = t FF a [1 + 0.15( x a u a ) 4 ], where t FF a represents the arc free-flow travel time and u a represents the maximum rate of vehicles that can enter an arc without experiencing substantial delays due to congestion.
Differences between user equilibrium and system optimum traffic assignments are extensively studied in literature (see, for example, Mahmassani and Peeta (1993)). The user equilibrium ensures fairness for users traveling between the same origin and destination. On the other hand, in a system optimum traffic assignment, some users may be assigned to paths that are much longer, in terms of distance or travel time, than paths assigned to other users traveling from the same origin to the same destination.
Controlling the unfairness that is inherent in a system optimum traffic assignment is critical when seeking an efficient and implementable traffic assignment. This has lead several researchers to explore system optimal routing of traffic flows with user constraints, in which only paths that ensure a certain level of fairness among users with the same origin and destination are considered. In order to generate a set of paths that is likely to result in an acceptable level of fairness, the concept of normal length of an arc is introduced, an a priori estimate of the traversal time of an arc. Natural choices for the normal length of an arc are its distance, its free-flow traversal time, or its traversal time in the user equilibrium. The distance and free-flow traversal time are normal length measures that do not depend on the demand in the network, while the traversal time in the user equilibrium does depend on the demand in the network. The set of paths generated for an origin-destination pair contains all paths that have a travel time that is within a certain percentage of a shortest travel time path evaluated using the normal length.
To the best of our knowledge, the first attempt at computing a constrained system optimum is due to Jahn et al. (2000). Their model seeks to minimize the total (experienced) travel time, uses the Davidson latency function, and restricts the set of paths considered by using the geographic distance as the normal length of an arc. The solution method is based on the Frank-Wolfe algorithm. In a subsequent paper, the latency function is replaced by the one provided by the U.S. Bureau of Public Road and the traversal time in the user equilibrium is used as the normal length of an arc Jahn et al. (2005). The computational results, on data for seven real road networks, show that total travel time close to the system optimum total travel time can be achieved with travel times experienced by users close to the travel times experienced by users in the user equilibrium traffic assignment. A more theoretical assessment of the efficiency and fairness of constrained system optimum traffic assignments is presented in Schulz and Stier-Moses (2006). Recently, Lujak et al. (2015) investigated a model in which the weighted geometric mean of the experienced travel times of the used paths is minimized. A generic latency function is used and the set of paths considered is restricted by using the free-flow traversal time as the normal length of an arc. The solution method is a multiagent negotiation model. Correa et al. (2007) study the problem of minimizing the maximum experienced travel time on any used path in road networks with congestion, i.e., road networks with flow-dependent arc traversal times. They compare the resulting traffic assignment with the system optimum and user equilibrium traffic assignments in terms of the average experienced travel time on any used path (which is equivalent to the total experienced travel time) and the unfairness, i.e., the maximum ratio of the largest experienced travel time and the smallest experience travel time for an origin-destination pair. Note that in this setting there are no restrictions on the set of paths considered. Angelelli et al. (2016) present a linear programming model in which user inconvenience is minimized while keeping the network non-congested, if possible, or at its minimum congestion level, otherwise. They assume a constant, flow-independent, latency function and measure user inconvenience as the ratio of the travel time of the user's path and the fastest travel time from the user's origin to the user's destination. The network is considered non-congested if the flow on every arc is less than or equal to the maximum rate of vehicles that can enter the arc without experiencing substantial delays. The computed user inconvenience is accurate only when the network can be kept non-congested.
The set of paths considered is restricted by using the free-flow traversal time as the normal length of an arc.
The advantage of their proposed model is that it can be solved with any (commercial) linear programming solver. The disadvantage is that it assumes constant, flow-independent, arc traversal times.
In this paper, a linear programming model is presented, thus retaining the desirable property that it can be solved efficiently by any (commercial) linear programming solver, that accommodates a flow-dependent latency function, thereby removing the unwanted limitation that user inconvenience is only computed accurately when the system is non-congested. The model seeks to minimize the total (experienced) travel time, using the latency function provided by the U.S. Bureau of Public Road, and restricts the set of paths considered by using the free-flow traversal time as the normal length of an arc. A piecewise linear approximation of the flow-dependent latency function ensures the linearity of the model. Thus, the model assigns paths to users so as to minimize the total travel time experienced, but uses only paths that are expected to have a limited inconvenience. An extensive computational study demonstrates that solutions with near-optimal total travel times can be found in which most users experience travel times that are better than user-equilibrium travel times and few users experience travel times that are slightly worse than user-equilibrium travel times.
The remainder of the paper is organized as follows. In Section 2, we introduce and discuss the relevant traffic assignment models. In Section 3, we introduce the solution methods developed to solve these traffic assignments models. In Section 4, we discuss the results of an extensive study of the constrained system optimum model with a piecewise linear approximation of the latency function. Finally, in Section 5, we present some concluding remarks.

Traffic assignment models
In this section, we present the mathematical models that form the basis of this study. We consider a directed network G = (V, A), where V represents the set of vertices and A ⊆ V × V represents the set of arcs. Each arc (i, j) ∈ A represents a road segment on which vehicles can travel. A latency function t i j (x), is defined for each arc (i, j) ∈ A representing the arc traversal time when the rate of vehicles entering the arc is x. The free-flow traversal time of an arc (i, j) ∈ A is denoted by t FF i j and represents the traversal time experienced when no other vehicles enter the arc t FF i j = t i j (0). In addition, there is a set C ⊆ V × V of commodities, i.e., represented by origin-destination (OD) pairs, where each c ∈ C has an origin O c ∈ V , a destination D c ∈ V , and a demand rate d c , representing the number of vehicles per time unit that travel from O c to D c . The set of all the possible paths between origin O c and destination D c is denoted by K c . The indicator a kc i j takes value 1 if path k ∈ K c contains arc (i, j) ∈ A and takes value 0 otherwise. The decision variables y k c represent the flow of commodity c ∈ C routed on path k ∈ K c . The variables x i j represent the (total) flow on arc (i, j) ∈ A.

The user equilibrium
The user equilibrium model (UE MODEL), as formulated in Beckmann et al. (1956), is the following: Constraints (1) set the flow on an arc as the sum of the flow on each path passing through the arc.
Constraints (2) ensure that the demand d c of commodity c ∈ C is routed on paths in K c . Finally, constraints (3) -(4) define the domains of the decision variables. As pointed out in Sheffi (1985), the objective function has no direct interpretation but is constructed in such a way that the solution to the model is equivalent to the user equilibrium.

The system optimum
The system optimum model (PATH-BASED SO MODEL), as formulated in Beckmann et al. (1956), is the following: The objective function minimizes the total travel time experienced by the users while the constraints are the same as in the user equilibrium model formulation. The equivalent arc-based formulation (ARC-BASED 6 SO MODEL) is the following: Variables x c i j represent the flow of commodity c on arc (i, j), Constraints (5) impose that the total flow on arc (i, j) is the sum of the flows of all commodities c ∈ C passing through it, and constraints (6) -(8) guarantee flow conservation and that demand is completely routed. Finally, constraints (9) define the domain of the variables x c i j .
Note that the user equilibrium is a feasible solution to the system optimum model, and, therefore, the total travel time experienced in a system optimum is less than or equal to the total travel time experienced in a user equilibrium. The difference between the total travel times of the two traffic assignments is commonly referred to as the price of anarchy and reflects how selfish routing (user equilibrium) affects the total travel time when compared to a system-wide coordinated traffic assignment (system optimum).

The constrained system optimum
Like the system optimum model, the constrained system optimum model (C-SO MODEL) assigns paths to commodities so as to minimize the total travel time experienced by users. However, the set of paths considered is restricted as follows. We define the path inconvenience to be the relative percentage difference between the normal length of the path and the shortest normal length path from the same origin to the same destination. For a given percentage γ, the set of paths K γ c for commodity c ∈ C contains all the paths with an inconvenience not larger than γ. We refer to γ as the maximum inconvenience. Recall that the normal length 7 of an arc (and thus a path) can be defined in a number of different ways. The C-SO MODEL formulation is the following: The only difference with PATH-BASED SO MODEL is that the set of path K γ c for commodity c ∈ C is a subset of K c .

Solution methods
In this section, we present the solution methods for the models that form the basis of this study.

Computing the user equilibrium
There are several ways to compute the UE on a network. In Sheffi (1985) and Patriksson (2015) heuristic methods, such as the capacity restraint method and the incremental assignment method, as well as exact methods are proposed. We implemented the following convex combination method to obtain the UE: Step 0: Perform an "all-or-nothing" assignment based on the free-flow traversal times t 0 i j = t FF i j , (i, j) ∈ A, i.e., route the entire demand of a commodity on the fastest path with respect to t FF i j . The resulting flows are represented by {x 1 i j }. Set n = 1.
Step 1: Update the current traversal times based on the flows {x n i j } and the latency function, i.e., t n i j = t i j (x n i j ), (i, j) ∈ A.
Step 2: Perform an "all-or-nothing" assignment based on the current traversal times t n i j . The resulting flows 8 are denoted by {y n i j }. This gives a descent direction.
Step 3: Perform a line search, i.e., find the δ n that solves Since we have assumed that the arc latency function is which can be solved easily (note that t FF i j , x n i j and y n i j are fixed).
Step 4: Compute flows {x n+1 i j }, i.e., x n+1 i j = x n i j + δ n (y n i j − x n i j ), (i, j) ∈ A.
Step 5: Convergence test. Let l n c be the travel time for commodity c at the n-th iteration. If ∑ c∈C |l n c −l n−1 c | l n c ≤ κ, then STOP, otherwise set n = n + 1 and return to Step 1.

Piecewise linear approximation
Since we want to take advantage of the enormous power of modern (commercial) linear programming solvers, we will replace the objective function in the system optimum models, when it is nonlinear, with a piecewise linear approximation. More specifically, we replace the terms F i j (x i j ) = t i j (x i j )x i j in the objective function of ARC-BASED SO MODEL and C-SO MODEL by a piecewise linear convex function on [0,U i j ], where U i j is a natural upper bound on the admissible flow x i j through arc (i, j).

Let
be a set of breakpoints that partition the domain [0,U i j ] of function F i j into n intervals, and let be the set of corresponding function values. Furthermore, let ∆ h i j = b h i j − b h−1 i j for h = 1, . . . , n be the length of the h-th interval. The piecewise linear approximation σ i j (x) of F i j (x) is given by (see Figure 1) When the latency functions are convex, as is the case with the Davidson and the US Bureau of Public Road latency functions, then F i j (x) and its approximation σ i j (x) are convex as well. The convexity of σ i j (x) functions allows them to be easily expressed in a linear programming model.
This results in the following LIN-SO MODEL: Variable x c i j represents the flow of commodity c on arc (i, j) and variable x i j represents to total flow on arc (i, j). They are linked through constraints (14). Auxiliary variables λ h i j represent the fraction of flow x i j assigned to interval [b h−1 i j , b h i j ]. Constraints (14) ensure that the entire flow x i j is assigned. The convexity of F i j (x), the objective function, and constraints (15)  The piecewise linear approximation can be also applied to the C-SO MODEL and results in the following As before, variables x i j and y ck represent the flow on arc (i, j) and the flow on the k-th path of commodity c ∈ C, respectively, and constraints (24) and (24) ensure that the flow on arc (i, j) is set correctly and that the entire demand for a commodity is routed, respectively. Constraints (21)-(23) play the same role as the corresponding constraints in LIN-SO MODEL. For convenience, the notation used in LIN-C-SO MODEL is summarized in Table 1.

Computational results
A large and diverse set of instances has been used in a computational study to assess the performance of the LIN-C-SO MODEL. The instances differ, among others, in terms of geography and demand pattern. Details of the instances can be found in Angelelli et al. (2016)  set of all possible paths for c ∈ C K γ c set of eligible paths for c ∈ C with maximum inconvenience γ Parameters u i j parameter representing the maximum rate of vehicles that can enter the arc (i, j) ∈ A without experiencing substantial delays due to congestion t FF i.e., t i j = t FF i j (1 + 0.15( To define a set of restricted paths, we use the free-flow travel time of an arc as its normal length.

Piecewise linear approximation accuracy
In the computational experiments with LIN-SO MODEL and LIN-S-CO MODEL, we use a piecewise linear approximation of the objective function The piecewise linear approximation is obtained by dividing the domain [0,U i j ] of the flow variable x i j associated with arc (i, j) into n = 1000 equal length intervals. In Figure 2, we show F i j (x i j ) and its piecewise linear approximation σ i j (x i j ) for the latency function with parameters t FF i j = 0.2 hours and u i j = 2500 vehicles/hour. We see that the two functions almost overlap -to enhance the visual effect, we have magnified parts of the figure using a 20x scaling factor. In fact, the maximum relative difference, i.e., , is always less than 0.5%. High-quality approximations can also be obtained with a smaller number of intervals, e.g., n ≥ 50. However, as the solution times with the chosen number of intervals was acceptable, we did not explore the choice of the number of intervals in much detail.

Statistics
We collect and compute the statistics shown in Table 2. Note that the total travel time of a traffic assignment is always evaluated using the non-linear latency function t FF i j (1 + 0.15(

Results for the LIN-C-SO model
We analyze the traffic assignments produced by the LIN-S-CO MODEL for maximum inconvenience values ranging from 0% to 35% in increments of 1% and averaged over the 80 instances. Recall that inconvenience and maximum inconvenience are defined in terms of the normal length of arcs and used only to define a restricted set of paths. The reported free-flow inconvenience and UE inconvenience are defined using the actual experienced travel times. The fraction of arcs falling in each of the following six classes: OD paths Selected paths Selected paths in the optimal solution of the LIN-C-SO model: • average number of selected paths per OD pair, • maximum number of selected paths per OD pair.  Figure 3 shows the (average) total travel time, Θ LIN-C-SO , as a function of the maximum inconvenience, γ. As a reference, we have included, in the form of two horizontal lines, the (average) total travel time of the user equilibrium assignment, Θ UE , and the (average) total travel time of the system optimum traffic assignment, Θ LIN-SO . We see that when the maximum inconvenience is greater than 10%, then Θ LIN-C-SO is almost equal to Θ LIN-SO . Furthermore, we see that only when the maximum inconvenience, γ, is very small. i.e., 0, 1, or 2%, we have Θ UE ≤ Θ LIN-C-SO . Already with a maximum inconvenience of 3%, there are enough paths in the set of restricted paths used in the LIN-S-CO MODEL to achieve a smaller (average) total travel time than in the UE. This is a manifestation of the "price of anarchy", i.e., individual decision making (UE equilibrium model) results in worse performance than coordinated decision making (SO and C-SO models). Figure 4a shows the (average) free-flow inconvenience, I FF , as a function of the maximum inconvenience, γ. The dashed line helps to identify those values of the maximum inconvenience for which the experienced free-flow inconvenience is larger than the maximum inconvenience. We see that that happens for maximum inconvenience values less than or equal to 4%. In addition, we see that when the maximum inconvenience is greater than 10%, I FF is less than or equal to 3%. As the average free-flow inconvenience  Figure 4b, we show the maximum free-flow inconvenience over all instances as a function of the maximum inconvenience. As expected, it takes longer for the maximum experienced free-flow inconvenience to drop below the maximum inconvenience, i.e., only for maximum inconvenience values greater than or equal to 10%. We also see that maximum free-flow inconvenience stabilizes around 7% for maximum inconvenience values greater than or equal to 14%.
The free-flow inconvenience compares the experienced travel time to the shortest free-flow travel time.
A more relevant and insightful comparison, however, may be the comparison with the experienced travel time in the user equilibrium traffic assignment, i.e., I UE . Figures 5a and 5b show the average value of I UE and the maximum value of I UE , respectively, as a function of the maximum inconvenience. We see that for a maximum inconvenience of 5%, the average I UE becomes negative. This means that, on average, users are experiencing travel times that are shorter than the travel time experienced in the user equilibrium traffic assignment. In fact, for a maximum inconvenience of 5% the maximum I UE is also low, about 7%. For higher maximum inconvenience values, we see even better performance, e.g., at 12% the average I UE is -1% and the maximum I UE is 0. That is, at 12%, we are able to reduce the average experienced travel time without increasing the maximum experience travel time (compared to the travel times experienced in the UE traffic  To provide more detail about the traffic assignment produced by the LIN C-SO MODEL, we present, in Figure 6, the average and maximum number of used paths for an OD pair, and, in Figure 7, information on the ratio of arc flow and arc capacity across the arcs in the network. Figure 6 shows that, on average, the number of used paths for an OD pair is close to one, which means that, on average, the demand of an OD pair is routed along a single path. However, it is also clear that in most settings the demand of a few OD pairs is routed along multiple paths, up to seven paths for γ = 19%. Figure 7 shows the distribution of the ratio of arc flow and arc capacity across the arcs in the network. The arcs are divided into utilization classes A through F. Class A contains the least used arcs (with a ratio between 0 and 0.2). Intermediate classes contain arcs with moderate flows, in which any user experienced delays are still acceptable. Class F contains the most heavily used arcs with flows exceeding the practical capacity, which implies that on these arcs users will experience significant delays. As expected, we see that the fraction of heavily used arcs decreases when the maximum inconvenience increases so as to avoid significant delays and minimize total experienced travel time.

Final remarks and future research
The LIN-C-SO MODEL has an important advantage over previously proposed constrained system optimum models: it is a linear programming model and, hence, it is more likely that even very large instances can be solved efficiently. As such, it has larger potential to be of use in practical settings. However, the upfront enumeration of the sets of restricted paths from an origin to a destination may prove to be computationally prohibitive for very large instances, when the number of paths could easily reach several millions. A natural extension, therefore, will be developing a column generation approach for the LIN-C-SO MODEL, possibly using heuristics to dynamically identify beneficial paths. Furthermore, as pointed out in the introduction, the steady-state assumption, which allows us to work with static traffic assignments, may be reasonable during rush hour periods, but will not be appropriate for a period in which the demand varies over time. To accommodate varying demand over time, a time-dependent variant of the LIN-C-SO MODEL can be investigated.