Svoboda | Graniru | BBC Russia | Golosameriki | Facebook
Next Article in Journal
Conservation Laws and Exact Solutions for Time-Delayed Burgers–Fisher Equations
Next Article in Special Issue
Evaluation and Analysis of Heuristic Intelligent Optimization Algorithms for PSO, WDO, GWO and OOBO
Previous Article in Journal
Tensor Decompositions and Their Properties
Previous Article in Special Issue
A Survey on Fair Allocation of Chores
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Non-Aggressive Adaptive Routing in Traffic

by
Madhushini Narayana Prasad
1,*,
Nedialko Dimitrov
1 and
Evdokia Nikolova
2
1
Department of Operations Research and Industrial Engineering, The University of Texas at Austin, 204 E. Dean Keeton Street, C2200, Austin, TX 78712, USA
2
Department of Electrical and Computer Engineering, The University of Texas at Austin, 2501 Speedway, Austin, TX 78712, USA
*
Author to whom correspondence should be addressed.
Mathematics 2023, 11(17), 3639; https://doi.org/10.3390/math11173639
Submission received: 11 May 2023 / Revised: 16 August 2023 / Accepted: 19 August 2023 / Published: 23 August 2023
(This article belongs to the Special Issue Optimisation Algorithms and Their Applications)

Abstract

:
Routing a person through a traffic road network presents a tension between selecting a fixed route that is easy to navigate and selecting an aggressively adaptive route that minimizes travel time. In this paper, we propose a novel routing framework that strikes a balance between adaptability and simplicity. Specifically, we propose to create non-aggressive adaptive routes that seek the best of both these extremes in the navigation world. These selected routes still adapt to changing traffic conditions, but we limit the number of adjustments made en route. This framework improves the driver experience by providing a continuum of options between saving travel time and reducing navigation stress. We design strategies to model single and multiple route adjustments, and investigate numerous techniques to solve these models for better route selection. To alleviate the intractability of handling real-life traffic data, we devise efficient algorithms with easily computable lower and upper bounds. We finally perform computational experiments on our algorithms to demonstrate the benefits of limited adaptability in terms of reducing the travel time.

1. Introduction

Traffic congestion is an unprecedented problem in many major cities in the United States. The number of vehicles on road has increased significantly in recent years, leading to increased congestion. In year 2021, there were an estimated 282 million registered vehicles in the United States, up from 225 million in year 2000 [1]. According to data from the Census Bureau [2], there were about 1.8 vehicles available per US household in year 2016. These number of vehicles per household varies depending on the city and its population density. For example, in Austin, Texas, the population in year 2016 was 925 K [3] and there were 1.9 vehicles per household in year 2016 [2]. Figure 1a,b show that the number of vehicles per household and population density in Austin has been steadily increasing in recent years [1,3]. In year 2000, the average number of vehicles per household in Austin was 1.43. This number has increased by 48.2% in the past 23 years, up to 2.12 in year 2023. On the other hand, the population in Austin is also expected to increase by at least 30% by year 2030 [4]. This will lead to an even greater increase in the number of vehicles on road, and will further exacerbate the problem of traffic congestion. According to an INRIX report [5] and a congestion statistics report [6], due to poor traffic conditions, Austin-area commuters wasted about 41 h on average in traffic in year 2020 (3 hours more than in year 2012), the seventh-highest of any city in the country, thereby increasing the overall travel time by 22%. The problem of traffic congestion is expected to worsen due to future predicted population growth, which can lead to significant increase in travel times, decreased fuel efficiency, and increased air pollution. It can also have a negative impact on businesses and city’s economy. One way to alleviate traffic congestion is to use efficient routing strategies. These strategies can help drivers find the fastest and most efficient routes to their destinations, and help drivers avoid congested areas.
There are various strategies and tools currently available to develop optimized routes. For example, Google Maps and Waze route in different ways and serve a different clientele. Google Maps creates a fixed static route which is easier to navigate but could be potentially slow. On the other extreme, Waze provides an aggressive adaptive route. A snapshot of routes generated between a specific source–destination pair using Google Maps and Waze are shown in Figure 2a and Figure 2b, respectively. It is to be noted that the latter recommends a recourse path en route to the destination, which is depcited in Figure 2b with teal color. An (aggressive) adaptive route by Waze is a potentially faster route that dynamically changes and adapts to traffic conditions, but the frequent route changes may lead to high stress in navigation. To alleviate this issue and create a middle-ground that seeks the best of both extremes, in this work, we develop a methodology to compute non-aggressive adaptive routes.
A non-aggressive adaptive route adapts dynamically to changing traffic conditions but in a limited way—for example, by allowing only a certain number of route-shifts at critical junctures. These routes seek to provide both low travel times and low stress of navigation. At the start of the route, the conditions on the roads are only known through a probability distribution. As the driver approaches closer to individual intersections, specific road conditions are observed and the routes are adjusted to minimize the travel time.
The contributions of this paper can be summarized as follows:
  • We propose a novel routing framework for routing in road networks with limited adaptability. We call this non-aggressive adaptive routing, aiming to seek both low travel times and low navigation stress compared to traditional routing technologies like Google Maps and Waze;
  • We design several strategies to model and compute such non-aggressive adaptive routes, based on where and how the route adjustments are performed;
  • We develop exact mathematical methods such as complete enumeration and dynamic programming algorithms for each of the strategies. We also derive easily computable bounds that can be used to solve these algorithms efficiently for large networks;
  • We evaluate and analyze the performance of proposed algorithms using the Austin road network as an example and demonstrate the benefits of limited adaptability.
The remainder of the paper is organized as follows. In Section 2, we discuss the related work on adaptive routing. In Section 3, we present our proposed routing strategies and the respective solution methodologies. In Section 4, we develop efficient bounds to render our algorithms tractable for large sized networks, and also present the computational evaluation of our proposed tractable algorithms using Austin road network. Finally, Section 5 concludes our work by summarizing the key contributions and pointing to future research directions.

2. Related Work

Consider the case of routing a driver from point s to t in a traffic network. Adaptive routing is a stochastic shortest path problem where the edge costs are unknown until arriving at one of its endpoints. The decision to continue or change the route is based on the traffic condition at that edge. Croucher [7] appears to be the first to have studied a model of this type but in a fairly restricted setting. In that model, a first-choice arc is selected for every node, there is some probability that the arc fails, and, if it fails, a second outgoing arc is selected at random. Andretta and Romeo [8] considered a similar model with the choice of recourse computed in an optimal way. In their work, a recourse path to the destination is computed for every edge, assuming that the edge is inactive. In our work, if an edge has traffic congestion, it is still considered active with greater time delay for traversal. Additionally, if an edge is selected for observation and found to be congested, the driver may revert to a recourse route. Unlike the past literature, our work describes a sequence of models in which the driver may observe between one and all edges for traffic congestion.
Another widely studied variant of adaptive routing is the Canadian Traveller Problem (CTP). CTP was first defined in [9] (see also [10]). The goal is to find an optimal routing policy that guarantees a good route under uncertain road conditions, minimizing the expected cost of travel. In this problem, the arc costs are deterministic but unknown and, once a road is considered blocked, it remains blocked forever. In general, CTP is known to be #P-hard and there has been no significant progress on approximation algorithms. Several variants to this problem, such as k CTP, k vital edges problem, and deterministic and stochastic recoverable CTP, are defined in [11]. Polychronopoulos and Tsitsiklis [12] presented another variation to CTP where the realization of arc costs is learned progressively as the graph is traversed. They provided dynamic programming algorithms to solve models with both dependent and independent arc costs and they established that the running time of these algorithms is exponential in number of arcs. There are few other algorithms that address the adaptive routing problem with time-dependent and stochastic costs [13,14,15,16]. In our work, we assume independent arc costs and limit the number of re-routing decisions, as opposed to CTP and its variants. We also present tractable dynamic programming algorithms which are solvable in polynomial time.
Special cases of CTP were studied by Nikolova and Karger [17] to explore exact solutions. They explained the connection of CTP to Markov Decision Processes (MDPs) solvable in polynomial time. They also presented polynomially solvable dynamic programming algorithms for a standard version of CTP on directed acyclic graphs (DAGs). It is important to note that our problem is a generic version of CTP. CTP can be derived by equating the number of re-routing decisions to the total number of edges in the network, which, in one of our proposed routing strategies, we call the parallel model.
The research presented here complements these works by examining non-aggressive adaptive routing, identifying an optimal yet small number of decision points on a route. The focus of our work is to derive the benefits of adaptive routing but with a limited number of adaptations to reduce driving stress. To this end, we propose, compare, and contrast several models for defining the decision points, and develop tractable algorithms to compute the optimal routing policy.
Many other recent extensions to adaptive routing have been proposed, primarily focusing on route planning under uncertainty for different modes of transportation [18,19,20], route planning under uncertainty with optimal information location points [21], stability of transportation networks [22], stochastic time-dependent networks [23], maximizing the probability of on-time arrival [24], application to online decision problems [25], and competitive analysis of CTP [26].
Another emerging field in adaptive routing models is the development of connected automated vehicles (CAV) technology [27,28], vehicle-to-vehicle (V2V) commnuication [29], and automonous vehicle tracking [30,31], with a variation to consider user preferences [32]. CAVs can provide real-time information about the individual position and velocity of vehicles, which can be used to develop more accurate and efficient routing algorithms. However, in this work, we focus on macroscopic routing models with high-level traffic congestion and delay information. We believe that, by understanding macroscopic traffic patterns, we can develop better routing algorithms for both CAVs and non-CAVs in the future.

3. Model Description

Consider a directed acyclic network G = ( N , A ) , with specified source s and destination t nodes, as shown in Figure 3a. We believe that directed acyclic networks (DAGs) are a more general representation of real-world traffic networks and best suited to generate practical recommendations to users. On a city road network G, N represents the set of road intersections and A represents the set of roads or edges connecting those intersections. We consider potential traffic congestion on the edges given by the set A.
We examine a simple model of traffic congestion where each edge is in either a high traffic state or low traffic state, independently of other edges. The traffic probability distribution is assumed to be known ahead of time. Every edge e = ( a , b ) is defined by three inputs: e = ( c , d , p ) , where c a b represents the travel time under low traffic, d a b represents the travel time due to high traffic, and  p a b represents the probability of low traffic on the edge. This is visually depicted in Figure 3b.
Given these inputs, we determine the edges to be observed for traffic congestion and the corresponding adjustment routes should high traffic states be observed on those edges. We call an edge selected for observation and for possible route adjustment an adjustment edge. When the driver reaches the source node of an adjustment edge and observes low traffic, they proceed through the edge. If the driver observes high traffic, then they take an adjustment route. To simplify the exposition, we start with a single route adjustment and then provide several extensions to multiple route adjustments. A detailed discussion on these route adjustment strategies is presented in the following subsections.
We begin with a simple example presented in Figure 4. This example shows that the optimal adjustment edge need not be a part of the fixed non-adaptive shortest route. The shortest path from s to t can be computed as s b t with expected travel time 10. If edge ( a , t ) is observed, there is 20% chance of low traffic with zero travel time. However, there is 80% chance of high traffic at edge ( a , t ) , and, if the driver adjusts the route to a b t , then the travel time is 11. With the single observation of edge ( a , t ) , the expected travel time is 11 · 0.8 + 0 · 0.2 = 8.8 , which is lower than the expected travel time without any adjustments (which is equal to 10). An interesting aspect of this example is that the edge ( a , t ) is not on the fixed (no-adjustment) shortest path.

3.1. Single Route Adjustment Policy

A pictorial representation of a single route adjustment policy is shown in Figure 5, where the route from source s to destination t has a single adjustment edge, ( u , v ) . In this policy, the driver takes the shortest path from s to u, and observes edge ( u , v ) for traffic. In case of low traffic, driver continues on the edge ( u , v ) and takes the shortest path from v to t. In case of high traffic, driver takes an adjustment route from u to t. The overall expected travel time for any adjustment edge ( u , v ) is computed using
E 1 [ ( u , v ) ] = E [ s u ] + p u v ( c u v + E [ v t ] ) + ( 1 p u v ) E [ u t | d u v ] ,
where E [ i j ] represents the expected travel time of a no-adjustment shortest path from node i to j, E [ i j | d i k ] represents the expected travel time of a no-adjustment shortest path given edge ( i , k ) is congested, and  E 1 [ ( u , v ) ] represents the expected travel time of a single route adjustment policy using the adjustment edge ( u , v ) . One could determine the adjustment edge that yields minimal expected travel time, arg min ( u , v ) E 1 [ ( u , v ) ] , using complete enumeration, given by
Z 1 [ s t ] = min { E [ s t ] ; min ( u , v ) A E 1 [ ( u , v ) ] } ,
where Z 1 [ s t ] represents the overall minimum expected travel time from s to t due to the single-route adjustment policy. An equivalent integer programming formulation is presented in Appendix A.1.

3.2. Multiple Route Adjustment Policy

There are several potential models for multiple route adjustments. We present and explore three different strategies that we call the series unforced, series forced, and parallel models. We develop dynamic programming-based algorithms to solve these route adjustment models, and, finally, compare their performances.

3.2.1. Series Unforced Model

Let us start with two adjustment edges as shown in Figure 6, which follow what we call a series unforced model. In this model, once the driver makes a route adjustment, he loses the potential to observe the other edges for traffic. Say, for instance, the source s and destination t nodes are connected by a highway. The driver enters the highway from source s, and, upon arriving at u 1 , observes edge ( u 1 , v 1 ) for traffic. In case of high traffic, driver adjusts the route to reach the destination t and never gets to make any other route adjustments. In case of low traffic, driver traverses the edge ( u 1 , v 1 ) , and continues on the highway until u 2 where they observe edge ( u 2 , v 2 ) for traffic. In case of high traffic at ( u 2 , v 2 ) , driver adjusts the route to destination t. In case of low traffic, driver traverses the edge ( u 2 , v 2 ) , and continues on the highway to reach the destination t.
Let E suf [ ( u 1 , v 1 ) , ( u 2 , v 2 ) ] denote the expected travel time with respect to the adjustment edges ( u 1 , v 1 ) and ( u 2 , v 2 ) . One could find a pair of edges that yield a minimum expected travel time through complete enumeration, arg min ( u 1 , v 1 ) ( u 2 , v 2 ) E suf [ ( u 1 , v 1 ) , ( u 2 , v 2 ) ] , using
E suf [ ( u 1 , v 1 ) , ( u 2 , v 2 ) ] = E [ s u 1 ] + ( 1 p u 1 v 1 ) E [ u 1 t | d u 1 v 1 ] + p u 1 v 1 { c u 1 v 1 + E [ v 1 u 2 ] + p u 2 v 2 c u 2 v 2 + E [ v 2 t ] + ( 1 p u 2 v 2 ) E [ u 2 t | d u 2 v 2 ] } .
The first summand is the expected travel time from s to u 1 . The second summand is the expected travel time from u 1 to t if high traffic is observed at ( u 1 , v 1 ) . The third summand is the travel time from u 1 to t if low traffic is observed at ( u 1 , v 1 ) . This third summand includes within it a version of (1), computing the travel time from v 1 to t that is dependent on the observation of traffic at edge ( u 2 , v 2 ) . Similarly, one could express the computation of the minimum expected travel time with k adjustment edges recursively with the equation for k 1 adjustment edges as follows. Let Z k suf [ s t ] denote the overall minimum expected travel time when k adjustment edges are observed for traffic. We can then write
Z 1 suf [ s t ] = Z 1 [ s t ] , and Z k suf [ s t ] = min { Z k 1 suf [ s t ] ; min ( u , v ) A [ E [ s u ] + ( 1 p u v ) E [ u t | d u v ] + p u v ( c u v + Z k 1 suf [ v t ] ) ] } .
The basecase Z 1 suf [ s t ] represents the minimum expected travel time for a single adjustment edge. The recursive equation to compute Z k suf [ s t ] includes a Z k 1 suf [ s t ] in case it is unnecessary to observe k edges. The second term involves picking the first edge ( u , v ) for observation, and the remaining length of the paths to destination is based on the probabilities of that observation.
The recursive Equation (4) yields a dynamic programming algorithm for computing the best set of k adjustment edges. The dynamic programming algorithm reduces the computational effort from O ( m k ) , roughly what is required with complete enumeration using (3), to  O ( m k ) , where m = | A | . This brings significant computational savings, though, as is discussed later, this is still insufficient for practical applications.

3.2.2. Series Forced Model

An alternate model with two adjustment edges, which we call series forced, is depicted in Figure 7. In this model, the driver is forced to observe all the adjustment edges; hence, they have the potential to adjust the route at every such adjustment edge. Consider the same instance where the driver enters the highway from source s and observes an edge ( u 1 , v 1 ) for traffic. In case of high traffic, driver adjusts the route but returns to the next source node u 2 to observe adjustment edge ( u 2 , v 2 ) . In case of low traffic, driver traverses the edge ( u 1 , v 1 ) , and continues on the highway until u 2 , where they observe edge ( u 2 , v 2 ) for traffic. In case of high traffic at ( u 2 , v 2 ) , driver adjusts the route to destination t. In case of low traffic, driver traverses the edge ( u 2 , v 2 ) , and continues on the highway to reach the destination t. In this model, the driver always observes all the adjustment edges, irrespective of the traffic states of previous adjustment edges.
Let E sf [ ( u 1 , v 1 ) , ( u 2 , v 2 ) ] denote the expected travel time if adjustment edges ( u 1 , v 1 ) and ( u 2 , v 2 ) are selected. One could find a pair of adjustment edges that yield a minimum expected travel time, which is given by arg min ( u 1 , v 1 ) ( u 2 , v 2 ) E sf [ ( u 1 , v 1 ) , ( u 2 , v 2 ) ] through complete enumeration using
E sf [ ( u 1 , v 1 ) , ( u 2 , v 2 ) ] = E [ s u 1 ] + p u 1 v 1 [ c u 1 v 1 + E [ v 1 u 2 ] ] + ( 1 p u 1 v 1 ) E [ u 1 u 2 | d u 1 v 1 ] + p u 2 v 2 [ c u 2 v 2 + E [ v 2 t ] ] + ( 1 p u 2 v 2 ) E [ u 2 t | d u 2 v 2 ] .
The first summand in (5) is the expected travel time from s to u 2 . This first summand includes within it a version of (1), computing the travel time from s to u 2 as dependent on the observation of edge ( u 1 , v 1 ) . The second summand is the expected travel time from u 2 to t with traffic state observed at ( u 2 , v 2 ) . Thus, (5) can be expressed as a recursive equation for k adjustment edges as follows:
Z 1 sf [ s t ] = Z 1 [ s t ] , and Z k sf [ s t ] = min { Z k 1 sf [ s t ] ; min ( u , v ) A Z k 1 sf [ s u ] + p u v ( c u v + E [ v t ] ) + ( 1 p u v ) E [ u t | d u v ] } ,
where Z k sf [ s t ] denotes the overall minimum expected travel time obtained using the series forced model when k adjustment edges are observed for traffic. Though inefficient, an integer programming formulation for this model is presented in Appendix A.2.
An interesting fact is that there is no evidence to show the superiority of one series model over the other, in terms of reducing expected travel time. To illustrate this, let us consider the example network in Figure 8a. The edge weights ( c , d , p ) represent the travel time under low traffic, the travel time under high traffic, and the probability of low traffic, respectively. The expected travel time of the series models are computed using (4) and (6), and the resulting best adjustment edges are highlighted in red in Figure 8b and Figure 8c, respectively. We obtain Z 2 suf [ s t ] as 34.8 and Z 2 sf [ s t ] as 35.6, with the series unforced model performing better than the series forced model. Let us now consider another example network as in Figure 9a. We follow the same routine to obtain Z 2 suf [ s t ] as 55.4 and Z 2 sf [ s t ] as 50.8. In this network, the series forced model performs better than the series unforced model. This shows that the performances of the series models are incomparable, and they depend on the network instance considered. Generally, one may think that the series forced model should perform better, because it has the ability to execute several observations in sequence as opposed to just one. However, as these examples demonstrate, it may be too expensive to execute the secondary observations, when unnecessary, as compared to the series unforced model.

3.2.3. Parallel Model

Another model with two adjustment edges, which we call parallel, is depicted in Figure 10. In this model, the driver has the potential to observe edges and make route adjustments, in both original and adjustment routes. Consider the same instance where the driver enters the highway from source s and observes an edge ( u 11 , v 11 ) for traffic. In case of low traffic, driver traverses the edge ( u 11 , v 11 ) , and continues on the highway until u 12 , where they observe edge ( u 12 , v 12 ) for traffic. In case of high traffic at ( u 11 , v 11 ) , driver adjusts the route to reach node u 22 and observes an edge ( u 22 , v 22 ) for traffic in the adjusted route. In case of high traffic at the second adjustment edge ( ( u 12 , v 12 ) or ( u 22 , v 22 ) ), driver adjusts the route to destination t. In case of low traffic, driver traverses the edge, and continues on the route to reach the destination t. Unlike series models, here driver observes different adjustment edges based on the traffic state of previous adjustment edges.
Let E pll [ ( u 11 , v 11 ) , ( u 12 , v 12 ) , ( u 22 , v 22 ) ] denote the expected travel time if adjustment edges ( u 11 , v 11 ) , ( u 12 , v 12 ) , and  ( u 22 , v 22 ) are selected. One could find a set of adjustment edges that yield a minimum expected travel time, arg min ( u 11 , v 11 ) , ( u 12 , v 12 ) , ( u 22 , v 22 ) E pll [ ( u 11 , v 11 ) , ( u 12 , v 12 ) , ( u 22 , v 22 ) ] , through complete enumeration using
E pll [ ( u 11 , v 11 ) , ( u 12 , v 12 ) , ( u 22 , v 22 ) ] = E [ s u 11 ] + p u 11 v 11 [ c u 11 v 11 + { E [ v 11 u 12 ] + p u 12 v 12 [ c u 12 v 12 + E [ v 12 t ] ] + ( 1 p u 12 v 12 ) E [ u 12 t | d u 12 v 12 ] } ] + ( 1 p u 11 v 11 ) { E [ u 11 u 22 | d u 11 v 11 ] + p u 22 v 22 [ c u 22 v 22 + E [ v 22 t ] ] + ( 1 p u 22 v 22 ) E [ u 22 t | d u 22 v 22 ] }
The first summand is the expected travel time from s to u 11 . The second and third summands together represent the weighted sum of expected travel times from u 11 to t, with weights representing the traffic state at ( u 11 , v 11 ) . The second summand includes within it a version of (1), computing the travel time from v 11 to t as dependent on the observation of edge ( u 12 , v 12 ) . The third summand includes within it a modified version of (1), the difference being the first term, where we compute the expected travel time from u 11 to u 22 given that high traffic is observed at ( u 11 , v 11 ) .
Let Z k pll [ s t ] denote the overall minimum expected travel time from s to t with k adjustment edges. It is to be noted that the driver’s policy may include more than k adjustment edges, but only k edges will be observed in total as they travel from s to t. We now express (7) as recursive equations as follows:    
Z 1 pll [ s t ] = Z 1 [ s t ] , Z k pll [ s t ] = min { Z k 1 pll [ s t ] ; min ( u , v ) A [ E [ s u ] + p u v ( c u v + Z k 1 pll [ v t ] ) + ( 1 p u v ) Z k 1 pll [ u t | { d u v } ] ] } , and Z 1 pll [ g i | D ] = min { min ( g , v ) A D [ p g v ( c g v + E [ v i ] ) + ( 1 p g v ) E [ g i | D { d g v } ] ] , min ( u g , v ) A [ E [ g u | D ] + p u v ( c u v + E [ v i ] ) + ( 1 p u v ) E [ u i | { d u v } ] ] } , Z k pll [ g i | D ] = min { min ( g , v ) A D [ p g v ( c g v + Z k 1 pll [ v i ] ) + ( 1 p g v ) Z k 1 pll [ g i | D { d g v } ] ] , min ( u g , v ) A [ E [ g u | D ] + p u v ( c u v + Z k 1 pll [ v i ] ) + ( 1 p u v ) Z k 1 pll [ u i | { d u v } ] ] } ,
where Z k pll [ g i | D ] denotes the minimum expected travel time from any g to i, given that high traffic is observed at all edges in set D = { d g , j 1 , d g , j 2 , , d g , j k 1 } .
It is easy to see that the series models are special cases of parallel model, i.e., a solution to a series model can be expressed as a solution to the corresponding parallel model. Hence, the parallel model always outperforms the series models in terms of reducing travel time, but at the expense of more computational effort. It also follows that a parallel model reduces to a Canadian Traveller Problem (CTP) on directed acyclic graphs (DAGs) when all edges in the network are observed for traffic, i.e., k equals | A | . Thus, the proposed dynamic programming algorithm can be used to solve CTP on DAGs. The dynamic programming algorithm proposed in [17] differs from our algorithm mainly by the following two points:
(1)
In [17], an optimal outgoing edge is computed upon arrival at a node as the graph is traversed. This is different from our dynamic programming approach, where we pre-compute both the original and adjustment routes to the destination;
(2)
The algorithm [17] iterates over all the edges in the network, whereas our algorithm is made to stop when observing more adjustment edges no longer reduces the expected travel time.

4. Large Scale Tractable Algorithms

We use the Austin road network (Figure 11) to evaluate the performance of our proposed dynamic programming algorithms. The travel times c on the edges are known (Source URL: http://austintexas.gov/department/gis-and-maps/gis-data, accessed on 2 November 2018), and we assume the probability of low traffic and delay offsets based on the street type, as depicted in Figure 11. The Austin road network consists of about 100,000 edges and it is impractical to find the best adjustment edges, even in a single route adjustment policy, through complete enumeration. For example, it takes about 6 h to find a single adjustment edge for the example source–destination pair shown in Figure 11. Inspired by the traditional branch and bound techniques, we develop easily computable lower and upper bounds to first prune the network and then eliminate many possibilities of adjustment edges, in order to reduce the overall problem size and create truly tractable algorithms.

4.1. Network Pruning

We first focus on developing some easily computable upper and lower bounds to prune the network size. This improves the run time of the shortest path procedures and, consequently, the tractability of the proposed dynamic programming algorithms.
Let Z k M [ s t ] represent the minimum expected travel time with k adjustment edges and any route adjustment model M .
Lemma 1.
The minimum expected travel time between two nodes s and t is non-decreasing with k adjustment edges, i.e.,  E [ s t ] Z 1 [ s t ] Z 2 M [ s t ] Z k 1 M [ s t ] Z k M [ s t ] .
Proof. 
The recursive Equation (8) shows that Z k pll [ s t ] Z k 1 pll [ s t ] , for any k 2 . Recursively, we can write, Z 1 [ s t ] Z 2 pll [ s t ] Z k 1 pll [ s t ] Z k pll [ s t ] . To show E [ s t ] Z 1 [ s t ] , consider an edge ( u , v ) on the shortest path from s to t. Then, the expected travel time of the shortest path, E [ s t ] , can be written as
E [ s t ] = E [ s u ] + p u v c u v + ( 1 p u v ) d u v + E [ v t ] .
A term-by-term comparison of (9) with (1) shows that E [ s t ] is an upper bound to E 1 [ ( u , v ) ] because going through a high traffic edge ( u , v ) is one potential routing for E [ u t d u v ] . Thus, E [ s t ] is an upper bound to Z 1 [ s t ] . Using similar logic, the lemma can be proven for the series models as well. □
Let us assume that there exists an optimal policy π that includes edge ( i , j ) on one of the paths generated and let Z k ( π ) be the corresponding expected travel time. A lower bound on the travel time of any path going through edge ( i , j ) can be given by
L B P ( i , j ) = c s i + c i j + c j t .
where c i j represents the shortest path from i to j with edge lengths c, i.e., assuming low traffic on all the edges.
Let ρ = min ( u , v ) A { p u v , 1 p u v } . In other words, the probabilities of low traffic are bounded away from (0, 1) by at least ρ . Under a single route adjustment, every path occurs in policy π with probability of at least ρ . Under k route adjustments, every path occurs with probability of at least ρ k . This leads to the following lemma defining a lower bound on any policy that uses edge ( i , j ) .
Lemma 2.
Every k-route adjustment policy π that includes edge ( i , j ) on some path has Z k ( π ) ρ k L B P ( i , j ) + ( 1 ρ k ) c s t .
Proof. 
 Any path with edge ( i , j ) occurs with probability at least ρ k and has length at least L B P ( i , j ) . All other paths in the policy π have length at least c s t . □
Now, we are ready to present our theorem on network pruning.
Theorem  1.
An edge ( i , j ) with ρ k L B P ( i , j ) + ( 1 ρ k ) c s t > E [ s t ] , for any k 1 , will not be on any path in the optimal routing policy.
Proof. 
Let π denote the optimal routing policy. By Lemma 2, we have Z k ( π ) ρ k L B P ( i , j ) + ( 1 ρ k ) c s t . If  Z k ( π ) > E [ s t ] , by Lemma 1, π is not an optimal routing policy. Hence, the edge ( i , j ) will not be on any path in the optimal policy π . □
Using the result of Theorem 1, one can prune the network by eliminating several possibilities. The network pruning procedure is also summarized in Algorithm 1. For the example source-destination pair considered, and for k = 1 and ρ = 0.4 , the network is pruned to 17,328 edges.
Algorithm 1 Network Pruning
Require: 
The following are input parameters:
  1.  
N e t w o r k which denotes city network with latitutde and longitude of nodes, and edges connecting those nodes;
  2.  
Edge weights e = ( c , d , p ) include free flow times c [ e ] , low traffic probability p [ e ] and travel time due to high traffic d [ e ] ;
  3.  
Latitude and longitude of source s and destination t, and maximum number of adjustment edges k.
Ensure: 
p r u n e d N e t w o r k
1:
function  n e t w o r k P r u n i n g ( N e t w o r k , s , t , k ) :
2:
Create an empty network, p r u n e d N e t w o r k
3:
Compute the expected travel time due to shortest path from s to t as E [ s t ]
4:
for every edge ( i , j ) N e t w o r k  do
5:
    Compute lower bound L B ( i , j ) = ρ k L B P ( i , j ) + ( 1 ρ k ) c s t , using (10) and Lemma 2
6:
    if  L B ( i , j ) E [ s t ]  then
7:
        Append edge ( i , j ) to p r u n e d N e t w o r k
8:
    end if
9:
end for
10:
return p r u n e d N e t w o r k

4.2. Critical Adjustment Edges

In addition to pruning the network size, it is also possible to obtain a set of critical adjustment edges that contain the optimal solution (as summarized in Algorithm 2). For this, we employed different lower bounds, as discussed in this section.
Lemma 3.
An optimal single route adjustment policy π with adjustment edge ( u , v ) has Z 1 ( π ) L B A 1 ( u , v ) , where L B A 1 ( u , v ) is given by
L B A 1 ( u , v ) = E [ s u ] + c u v + E [ v t ] .
Proof. 
By definition, we have d u v > c u v . Edge ( u , v ) is an optimal adjustment edge, so using (1) and (2) yields
Z 1 ( π ) = min ( u , v ) A E 1 [ ( u , v ) ] = E [ s u ] + p u v ( c u v + E [ v t ] ) + ( 1 p u v ) E [ u t | d u v ] .
We proceed to complete the proof by contradiction.
Assume E [ u t | d u v ] < c u v + E [ v t ] . Consider a policy π that uses no adjustment edge and the route E [ s u ] is followed by E [ u t | d u v ] . Thus, the policy π has length E [ s u ] + E [ u t | d u v ] < E [ s u ] + p u v ( c u v + E [ v t ] ) + ( 1 p u v ) E [ u t | d u v ] , implying π is not optimal. This yields E [ u t | d u v ] c u v + E [ v t ] .
Using this result, we have
Z 1 ( π ) = E [ s u ] + p u v ( c u v + E [ v t ] ) + ( 1 p u v ) E [ u t | d u v ] E [ s u ] + p u v ( c u v + E [ v t ] ) + ( 1 p u v ) ( c u v + E [ v t ] ) E [ s u ] + ( c u v + E [ v t ] ) .
 □
We define the following variables to simplify our notations in the remainder of the section. One can easily pre-compute these quantities and use it in subsequent computations.
[ j ] = max ( a , b ) A ( 1 p a b ) d a b + E [ b j ] E [ a j | d a b ] , § [ j ] = max ( a , b ) A ( 1 p a b ) E [ a j | d a b ] , α = max ( a , b ) A p a b and β = max j N [ j ] .
Lemma 4.
(Series unforced model).  An optimal route adjustment policy π with edge ( u , v ) as its first adjustment edge has Z k suf ( π ) L B A k suf ( u , v ) , where L B A k suf ( u , v ) , is given by
L B A k suf ( u , v ) = E [ s u ] + c u v + E [ v t ] [ t ] k = 0 k 2 α k .
Proof. 
Because π is an optimal policy and edge ( u , v ) is the first adjustment edge, using (4), we have
Z k suf ( π ) = E [ s u ] + ( 1 p u v ) E [ u t | d u v ] + p u v ( c u v + Z k 1 suf [ v t ] ) .
We show E [ u t | d u v ] c u v + Z k 1 suf [ v t ] , by contradiction. Assume E [ u t | d u v ] < c u v + Z k 1 suf [ v t ] . Consider a policy π that uses no adjustment edges and the route E [ s u ] is followed by E [ u t | d u v ] . Thus, the policy π has length E [ s u ] + E [ u t | d u v ] < E [ s u ] + ( 1 p u v ) E [ u t | d u v ] + p u v ( c u v + Z k 1 suf [ v t ] ) , implying π is not optimal. Thus, E [ u t | d u v ] c u v + Z k 1 suf [ v t ] .
Using this result, we have
Z k suf ( π ) = E [ s u ] + ( 1 p u v ) E [ u t | d u v ] + p u v ( c u v + Z k 1 suf [ v t ] ) E [ s u ] + ( 1 p u v ) ( c u v + Z k 1 suf [ v t ] ) + p u v ( c u v + Z k 1 suf [ v t ] ) E [ s u ] + c u v + Z k 1 suf [ v t ] .
This is a valid yet intractable lower bound to Z k suf ( π ) . To alleviate this issue, we derive a lower bound for Z k 1 suf [ v t ] . The potential savings in travel time from i to j due to the single-route adjustment policy (using (1) and (4)) are given by
E [ i j ] Z 1 [ i j ] E [ i j ] min ( u , v ) A ( E [ i u ] + p u v ( c u v + E [ v j ] ) + ( 1 p u v ) E [ u j | d u v ] ) max ( u , v ) A ( E [ i u ] + p u v ( c u v + E [ v j ] ) + ( 1 p u v ) ( d u v + E [ v j ] ) ( E [ i u ] + p u v ( c u v + E [ v j ] ) + ( 1 p u v ) E [ u j | d u v ] ) ) max ( u , v ) A ( 1 p u v ) d u v + E [ v j ] E [ u j | d u v ] = [ j ] .
It is important to note that (14) holds for all route adjustment models since Z 1 suf [ i j ] = Z 1 sf [ i j ] = Z 1 pll [ i j ] = Z 1 [ i j ] .
The potential savings in travel time from i to j due to the two-route adjustment policy are given by
Z 1 [ i j ] Z 2 suf [ i j ] max ( u , v ) A ( E [ i u ] + p u v ( c u v + E [ v j ] ) + ( 1 p u v ) E [ u j | d u v ] ( E [ i u ] + p u v ( c u v + Z 1 [ v j ] ) + ( 1 p u v ) E [ u j | d u v ] ) ) max ( u , v ) A p u v ( E [ v j ] Z 1 [ v j ] ) max ( u , v ) A p u v [ j ] = α . [ j ] .
The penultimate inequality is due to (14). Combining this result with (13) for k = 3 , we obtain
Z 3 suf ( π ) E [ s u ] + c u v + Z 2 suf [ v t ] E [ s u ] + c u v + Z 1 [ v t ] α [ t ] E [ s u ] + c u v + E [ v t ] [ t ] α [ t ] .
Extending this logic to any k yields
Z k suf ( π ) E [ s u ] + c u v + E [ v t ] ) [ t ] k = 0 k 2 α k .
 □
Lemma 5.
(Series forced model). An optimal route adjustment policy π with edge ( u , v ) as its last adjustment edge has Z k sf ( π ) L B A k sf ( u , v ) , where L B A k sf ( u , v ) is given by
L B A k sf ( u , v ) = E [ s u ] [ u ] ( k 2 ) β + c u v + E [ v t ] .
Proof. 
 Because π is an optimal policy and edge ( u , v ) is the last adjustment edge, using (6), we have
Z k sf ( π ) = Z k 1 sf [ s u ] + p u v ( c u v + E E [ v t ] ) + ( 1 p u v ) E [ u t | d u v ] .
Given edge ( u , v ) is the optimal adjustment edge, we show E [ u t | d u v ] c u v + E [ v t ] following the same procedure as in the proof of Lemma 4.
Assume E [ u t | d u v ] < c u v + E [ v t ] . Consider a policy π that uses only the first k 1 adjustment edges of π in the same sequence and does not use the last adjustment edge. In other words, the  route Z k 1 sf [ s u ] is followed by E [ u t | d u v ] . Thus, the policy π has length Z k 1 sf [ s u ] + E [ u t | d u v ] < Z k 1 sf [ s u ] + ( 1 p u v ) E [ u t | d u v ] + p u v ( c u v + E [ v t ] ) , implying π is not optimal. Thus, E [ u t | d u v ] c u v + E [ v t ] , given ( u , v ) is the last adjustment edge.
Using this result, we have
Z k sf ( π ) = Z k 1 sf [ s u ] + p u v ( c u v + E [ v t ] ) + ( 1 p u v ) E [ u t | d u v ] Z k 1 sf [ s u ] + p u v ( c u v + E [ v t ] ) + ( 1 p u v ) ( c u v + E [ v t ] ) Z k 1 sf [ s u ] + c u v + E [ v t ] .
We now proceed to obtain a tractable lower bound on Z k 1 sf [ s u ] . The potential savings in travel time from i to j due to the two-route adjustment policy using (6) are given by
Z 1 [ i j ] Z 2 sf [ i j ] max ( u , v ) A ( Z 1 [ i j ] ( Z 1 [ i u ] + p u v ( c u v + E [ v j ] ) + ( 1 p u v ) E [ u j | d u v ] ) ) max ( u , v ) A ( E [ i u ] Z 1 [ i u ] ) max ( u , v ) A [ j ] = β .
The penultimate inequality is due to (14). Combining this result with (16) for k = 3 yields
Z 3 sf ( π ) Z 2 sf [ s u ] + c u v + E [ v t ] Z 1 [ s u ] β + c u v + E [ v t ] E [ s u ] [ u ] β + c u v + E [ v t ] .
By extending the logic to a generic k, we obtain
Z k sf ( π ) E [ s u ] [ u ] ( k 2 ) β + c u v + E [ v t ] .
 □
Lemma 6.
(Parallel model). An optimal route adjustment policy π with edge ( u , v ) as its first adjustment edge has Z k pll ( π ) L B A k pll ( u , v ) and Z k pll ( π | D ) L B A k pll ( u , v ) , where L B A k pll ( u , v ) is given by
L B A k pll ( u , v ) = E [ s u ] + c u v + E [ v t ] [ t ] k = 0 k 2 α k ( k 2 ) § [ t ] .
Proof. 
Because π is an optimal policy and edge ( u , v ) is the first adjustment edge, using (8), we have
Z k pll ( π ) = E [ s u ] + ( 1 p u v ) Z k 1 pll [ u t | { d u v } ] + p u v ( c u v + Z k 1 pll [ v t ] ) .
We show Z k 1 pll [ u t | { d u v } ] c u v + Z k 1 pll [ v t ] by contradiction. Assume Z k 1 pll [ u t | { d u v } ] < c u v + Z k 1 pll [ v t ] . Consider a policy π that uses the k 1 adjustment edges of the first adjusted route of π (in the same sequence) and does not use any other adjustment edges. In other words, route E [ s u ] is followed by Z k 1 pll [ u t | { d u v } ] . Thus, the policy π has length E [ s u ] + Z k 1 pll [ u t | { d u v } ] < E [ s u ] + ( 1 p u v ) Z k 1 pll [ u t | { d u v } ] + p u v ( c u v + Z k 1 pll [ v t ] ) , implying π is not optimal. Thus, Z k 1 pll [ u t | { d u v } ] c u v + Z k 1 pll [ v t ] .
Using this result, we have
Z k pll ( π ) = E [ s u ] + ( 1 p u v ) Z k 1 pll [ u t | { d u v } ] + p u v ( c u v + Z k 1 pll [ v t ] ) E [ s u ] + ( 1 p u v ) ( c u v + Z k 1 pll [ v t ] ) + p u v ( c u v + Z k 1 pll [ v t ] ) E [ s u ] + c u v + Z k 1 pll [ v t ] .
We follow the same procedure as in the proofs of Lemmas 4 and 5 to obtain a lower bound on Z k 1 pll [ v t ] . The potential savings in travel time from i to j due to the two-route adjustment policy using (8) are given by
Z 1 [ i j ] Z 2 pll [ i j ] max ( u , v ) A ( Z 1 [ i j ] ( E [ i u ] + p u v ( c u v + Z 1 [ v j ] ) + ( 1 p u v ) Z 1 [ u j | d u v ] ) ) max ( u , v ) A ( p u v ( E [ v j ] Z 1 [ v j ] ) + ( 1 p u v ) ( E [ u j | d u v ] Z 1 [ u j | d u v ] ) ) max ( u , v ) A p u v [ j ] + max ( u , v ) A ( 1 p u v ) E [ u j | d u v ] = α [ j ] + § [ j ] .
The penultimate inequality is due to the fact that Z 1 [ u j | d u v ] 0 and due to (14).
Similarly, the potential savings in travel time from i to j due to the three-route adjustment policy are given by
Z 2 pll [ i j ] Z 3 pll [ i j ] max ( u , v ) A ( p u v ( Z 1 [ v j ] Z 2 pll [ v j ] ) + ( 1 p u v ) ( Z 1 [ u j | d u v ] Z 2 pll [ u j | d u v ] ) ) max ( u , v ) A p u v ( α [ j ] + § [ j ] ) + ( 1 p u v ) E [ u j | d u v ] α 2 [ j ] + § [ j ] .
The penultimate inequality is due to Z 2 pll [ u j | d u v ] 0 and Z 1 [ u j | d u v ] E [ u j | d u v ] . Using the above results in (18) for k = 4 , we obtain
Z 4 pll ( π ) E [ s u ] + c u v + Z 3 pll [ v t ] E [ s u ] + c u v + Z 2 pll [ v t ] α 2 [ t ] § [ t ] E [ s u ] + c u v + Z 1 pll [ v t ] α [ t ] § [ t ] α 2 [ t ] § [ t ] E [ s u ] + c u v + E [ v t ] [ t ] ( 1 + α + α 2 ) 2 § [ t ] .
By similar logic, we derive, for any k,
Z k pll ( π ) E [ s u ] + c u v + E [ v t ] [ t ] k = 0 k 2 α k ( k 2 ) § [ t ] .
Since Z k pll ( π | D ) Z k pll ( π ) by definition, L B A k pll ( u , v ) is a valid lower bound to Z k pll ( π | D ) . □
Now, we present our theorem to obtain a set of feasible adjustment edges.
Theorem  2.
An edge ( u , v ) with L B A 1 ( u , v ) > E [ s t ] or L B A k M ( u , v ) > Z k 1 M [ s t ] cannot be the first adjustment edge (for M being series unforced or parallel models) or the last adjustment edge (for M being series forced model) in an optimal routing policy.
Proof. 
Let π be a routing policy using series unforced model and edge ( u , v ) as the first adjustment edge.
We show that π is not optimal if L B A k suf ( u , v ) > Z k 1 suf [ s t ] .
If π is optimal, we have Z k suf ( π ) L B A k suf ( u , v ) , using the result of Lemma 4. Since L B A k suf ( u , v ) > Z k 1 suf [ s t ] (by assumption), we have Z k suf ( π ) > Z k 1 suf [ s t ] , implying π is not optimal. This completes our proof. Similar logic can be used along with Lemmas 5 and 6 to prove this claim for the series forced and parallel route adjustment models. □
Algorithm 2 Critial Adjustment Edges
Require: 
The following are input parameters:
  1.  
A road network N e t w o r k with edge weights e = ( c , d , p ) , depicting free flow times c [ e ] , low traffic probability p [ e ] and travel time due to high traffic d [ e ] ;
  2.  
Source s, destination t and number of adjustment edges k;
  3.  
Routing model type M , where M { S e r i e s U n f o r c e d , S e r i e s f o r c e d , P a r a l l e l } ; and 
  4.  
Optimal expected travel time Z k 1 M [ s t ] for k 1 route adjustment policy M . Here, recursive term Z k 1 M [ s t ] = r e c u r s i v e F u n c t i o n ( N e t w o r k , s , t , k 1 , M ) , from Algorithm 3 with respect to routing model M and k 1 adjustment edges.
Ensure: 
Set c r i t i c a l E d g e s
1:
function  f e a s i b l e E d g e s ( N e t w o r k , s , t , k , M , Z k 1 M [ s t ] ) :
2:
Create an empty set c r i t i c a l E d g e s
3:
if  k = 1 (Single route adjustment policy) then
4:
    for every edge ( u , v ) N e t w o r k  do
5:
        Compute lower bound L B A 1 ( u , v ) = E [ s u ] + c u v + E [ v t ] , as in Lemma 3
6:
        if  L B A 1 ( u , v ) E [ s t ]  then
7:
           Append edge ( u , v ) to set c r i t i c a l E d g e s
8:
        end if
9:
    end for
10:
end if
11:
if  k > 1 , Multiple route adjustment policy then
12:
    for every edge ( u , v ) N e t w o r k  do
13:
        Compute lower bound L B A k M ( u , v ) :
         (a) If model M is Series Unforced Model, L B A k suf ( u , v ) = E [ s u ] + c u v + E [ v t ] [ t ] k = 0 k 2 α k , as in Lemma 4 using (11) and (12)
         (b) If model M is Series Forced Model, L B A k sf ( u , v ) = E [ s u ] [ u ] ( k 2 ) β + c u v + E [ v t ] , as in Lemma 5 using (11) and (15)
         (c) If model M is Parallel Model, L B A k pll ( u , v ) = E [ s u ] + c u v + E [ v t ] [ t ] k = 0 k 2 α k ( k 2 ) § [ t ] , as in Lemma 6 using (11) and (17)
14:
        if  L B A k M ( u , v ) Z k 1 M [ s t ]  then
15:
           Append edge ( u , v ) to set c r i t i c a l E d g e s
16:
        end if
17:
    end for
18:
end if
19:
return c r i t i c a l E d g e s
These two pre-processing algorithms for pruning the network size and eliminating the possibilities of adjustment edges reduce the computation time from several hours to seconds. Specifically, it takes about 10 s to prune the network from 108,000 edges to 17,328 edges and to find a set of 21 feasible edges for a single route adjustment policy, which is depicted in Figure 12. As a result of these pruning processes, the algorithm is able to compute an optimal single-route adjustment policy in less than 15 s. The solution pertaining to the example considered is presented in Figure 13.
For the same source–destination pair, k = 2 and ρ = 0.16 , Theorem 1 prunes the original network to 50,628 edges and Theorem 2 yields a set of 2091 feasible adjustment edges. The routing algorithm(s) is (are) summarized in Algorithm 3 and the solutions are presented in Figure 14. In the final steps of Algorithm 3, we use the popular Dijkstra’s shortest path algorithm to compute the shortest paths for original and adjusted routes.
Algorithm 3 Non-Aggressive Adaptive Routing—Recursive Algorithm
Require: 
The following are input parameters:
  1.  
A road network N e t w o r k with edge weights e = ( c , d , p ) , depicting free flow times c [ e ] , low traffic probability p [ e ] and travel time due to high traffic d [ e ] ;
  2.  
Source s, destination t, and maximum number of adjustment edges k; and 
  3.  
Routing model type M , where M { S e r i e s U n f o r c e d , S e r i e s f o r c e d , P a r a l l e l }
Ensure: 
Optimal routing policy π that minimizes expected travel time Z k M [ s t ]
1:
function  r e c u r s i v e F u n c t i o n ( N e t w o r k , s , t , k , M ) :
2:
Create an empty set o p t i m a l A d j E d g e s
3:
for every k = [ 1 , 2 , , k ]  do
4:
    Compute p r u n e d N e t w o r k = n e t w o r k P r u n i n g ( N e t w o r k , s , t , k ) ,using Algorithm 1
5:
    Compute set c r i t i c a l E d g e s = f e a s i b l e E d g e s ( p r u n e d N e t w o r k , s , t , k , M , Z k 1 M [ s t ] ) , using Algorithm 2
6:
    Find an optimal edge ( u , v ) that minimizes the expected travel time Z k M [ s t ] :
          (a) If model M is Series Unforced Model, use (4) to compute Z k suf [ s t ]
          (b) If model M is Series Forced Model, use (6) to compute Z k sf [ s t ]
          (c) If model M is Parallel Model, use (8) to compute Z k pll [ s t ]
7:
    if  Z k M [ s t ] Z k 1 M [ s t ]  then
8:
        Append the optimal adjustment edge ( u , v ) to o p t i m a l A d j E d g e s
9:
    else  Terminate
10:
    end if
11:
end for
12:
Derive O r i g i n a l R o u t e that combines the shortest paths from source s to start node of every adjustment edge ( u i , v i ) and finally to the destination t. Here, edge ( u i , v i ) = o p t i m a l A d j E d g e s [ i ] is i t h adjustment edge with weight c u i v i , i [ 1 , 2 , , | o p t i m a l A d j E d g e s | ] . Remaining edges assume expected times as their edge weights.
13:
Derive A d j u s t e d R o u t e [ i ] for every i t h adjustment edge, that combines the shortest paths from source s to destination t via the adjustment edge following the design presented in Section 3. Here, i t h adjustment edge ( u i , v i ) = o p t i m a l A d j E d g e s [ i ] with weight d u i v i , i [ 1 , 2 , , | o p t i m a l A d j E d g e s | ] . Remaining edges assume expected times as their edge weights.
14:
return Optimal policy π = O r i g i n a l R o u t e , o p t i m a l A d j E d g e s , ( A d j u s t e d R o u t e [ i ] , i [ 1 , 2 , , | o p t i m a l A d j E d g e s | ]

4.3. Performance Evaluation

We conducted several computational experiments by implementing our algorithms in Python and solving it using MacOS 2.6 GHz Intel i5 processor with 8 GB RAM. We summarize the performance of our algorithms with respect to two adjustment edges, using the same example network as in Figure 12, the parallel model performs the best in terms of reducing expected travel time. We save about 7% of travel time when compared to the single-route adjustment policy and about 13% compared to the fixed (non-adaptive) shortest path. Followed by parallel model, the series forced model performs better yielding about 3% savings compared to single-route policy and 9.5% savings compared to fixed path. Finally, the series unforced model provides the least savings, of less than 1 % and 7%, respectively.
One can achieve more savings by increasing the number of route adjustments, albeit with a large increase in the computational effort. For the above example, the pruned network size for two adjustment edges is about 50% of the original network size and that of the three edges is almost the same as the original network, increasing the computational effort drastically. Thus, a trade-off arises between the number of edges to be observed for traffic and potential savings in expected travel times. In order to understand this trade-off, we solved our dynamic programming algorithms for different route adjustment models, on a smaller network consisting of 17,328 edges (given by the pruned network of the single-route adjustment model). The graph summarizing the benefit of adaptability is presented in Figure 15.
It can be inferred from the graph that there is not much improvement in the expected travel time beyond two adjustment edges using the series unforced model. However, the series forced model yields about 2% reduction in expected travel time with three adjustment edges, after which the reduction deteriorates and tends to saturate. Similarly, the parallel model results in 3–5% reduction in the travel time up to seven adjustment edges, after which the reduction saturates. Thus, we can conclude that observing more than seven edges in this network instance, as opposed to CTP where all edges are decision points, does not contribute significantly to the reduction in travel time. We emphasize the fact that this summary is specific to the problem instance considered and the performance graph is likely to vary for different instances. Thus, choosing the right adjustment strategy and the right number of adjustments is a decision to be made by the user, based on the trade-off between the computational effort required and the anticipated reduction in expected travel times.

5. Conclusions

In this paper, we present a new way to route traffic in large networks. Our approach is called non-aggressive adaptive routing, and it allows the driver to make limited adjustments to routes while still minimizing the expected travel times. We propose three different routing strategies: series unforced, series forced, and parallel models. In every strategy, the driver observes the optimal adjustment edges for traffic and makes route adjustments in case of high traffic on the observing edge(s). However, where and how these adjustments are performed is the key differentiating factor to choose the right strategy.
We develop exact mathematical models to generate an optimal routing policy from each proposed strategy. In spite of our proposed dynamic programming algorithms being polynomially solvable, the algorithms may get intractable for medium to large sized networks. To alleviate this problem, we design some efficient bounds and present several theorems, to reduce the network size and compute a reduced feasible set of adjustment edges, leading to tractable algorithms.
Finally, we numerically assess the performance of our tractable algorithms using single- and two-route adjustment policies, and present the benefit of adaptability graph for an example source-destination pair in the Austin road network.
In terms of future extensions of this work, there is still scope to improve the tractability of our algorithms by developing even tighter lower bounds. There is also scope to studying other multiple route adjustment strategies; for example, one can consider a model where the driver is constrained to switching back and forth between two or more pre-computed routes. One can extend this model to account for correlation in traffic states between different edges. Another area of exploration will be using real-time traffic data from suitable sources, like unmanned aerial vehicles. Detecting tassels with imagery can provide instantaneous traffic information, in fact, factoring in the traffic information for different times of day might yield better results. Another possible future extension is to consider microscopic traffic factors like an individual vehicle’s position and velocity to further optimize the routing policies. We strongly believe that these extensions require significant additional research and therefore we defer their investigation to future work.

Author Contributions

Conceptualization, M.N.P., N.D. and E.N.; Methodology, M.N.P., N.D. and E.N.; Validation, M.N.P.; Formal analysis, M.N.P. and N.D.; Resources, M.N.P.; Data curation, M.N.P.; Writing—original draft, M.N.P.; Writing—review & editing, M.N.P.; Supervision, N.D. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

Data used in this paper were accessed from open data sources. Web URLs to the data sources are provided in the reference section.

Acknowledgments

The authors are thankful to the Editor and two anonymous referees for their constructive comments and suggestions that led to substantial improvements of the paper.

Conflicts of Interest

On behalf of all authors, the corresponding author states that there is no conflict of interest.

Appendix A. Integer Programming Formulations

Appendix A.1. IP Formulation–Single Route Adjustment Policy

An IP formulation for a single route adjustment policy is given by
Min ( u , v ) A ( u , v ) A ( E [ s u ] + p u v ( c u v + E [ v t ] ) + ( 1 p u v ) E [ u t | d u v ] ) Z u v s . t . ( u , v ) A Z u v = 1
where Z u v is a binary variable that is equal to 1 if edge ( u , v ) is an adjustment edge and 0 otherwise.

Appendix A.2. IP Formulation–Series Forced Adjustment Policy

An IP formulation to a series forced route adjustment policy with k-route adjustments is given by
Min ( u , v ) A ( u , v ) A E [ s u ] Z u v 1 + l = 1 k ( u , v ) A m N p u v ( c u v + E [ v m ] n N Z m n l + 1 ) Z u v l + l = 1 k ( u , v ) A m N ( 1 p u v ) E [ u m | d u v ] n N Z m n l + 1 Z u v l s . t . ( u , v ) A Z u v l = 1 l = 1 , , k
where Z u v l is a binary variable that is 1 if edge ( u , v ) is an adjustment edge at the lth route adjustment and 0 otherwise.
The objective function is quadratic and can be converted to a linear form using any standard conversion technique. IP formulations for other models can also be devised in the same manner.

References

  1. Number of Motor Vehicles Registered in the United States from 1990 to 2021. 2022. Available online: https://www.statista.com/statistics/183505/number-of-vehicles-in-the-united-states-since-1990/ (accessed on 27 February 2023).
  2. Vehicle Ownership in U.S. Cities Data and Map. 2014. Available online: https://www.governing.com/archive/car-ownership-numbers-of-vehicles-by-city-map.html (accessed on 9 December 2014).
  3. City of Austin Population History. 2016. Available online: https://www.austintexas.gov/sites/default/files/files/Planning/Demographics/population_history_pub.pdf (accessed on 29 July 2016).
  4. Anderson, W. Population Explosion: Austin Growth Passes Major Milestone. 2015. Available online: https://www.bizjournals.com/austin/news/2015/12/11/population-explosion-austin-growth-passes-major.html (accessed on 11 December 2015).
  5. Keeping Austin Weird Shouldn’t Include Sitting in Traffic for 41 Hours. 2014. Available online: http://inrix.com/blog/2014/03/keeping-austin-weird-shouldnt-include-sitting-in-traffic-for-41-hours/ (accessed on 1 August 2016).
  6. New Report Finds Austin-Area Commuters Wasted More Time in Traffic Than Other Similar Sized Cities in 2020. 2021. Available online: https://communityimpact.com/austin/central-austin/transportation/2021/06/29/new-report-finds-austin-area-commuters-wasted-more-time-in-traffic-than-other-similar-sized-cities-in-2020/ (accessed on 29 June 2021).
  7. Croucher, J.S. A note on the stochastic shortest-route problem. Nav. Res. Logist. Q. 1978, 25, 729–732. [Google Scholar] [CrossRef]
  8. Andreatta, G.; Romeo, L. Stochastic shortest paths with recourse. Networks 1988, 18, 193–204. [Google Scholar] [CrossRef]
  9. Papadimitriou, C.H.; Yannakakis, M. Shortest paths without a map. Theor. Comput. Sci. 1991, 84, 127–150. [Google Scholar] [CrossRef]
  10. Blei, D.M.; Kaelbling, L.P. Shortest paths in a dynamic uncertain domain. In Proceedings of the IJCAI Workshop on Adaptive Spatial Representations of Dynamic Environments, Stockholm, Sweden, 31 July–6 August 1999; Volume 4, p. 2. [Google Scholar]
  11. Bar-Noy, A.; Schieber, B. The Canadian Traveller Problem. In Proceedings of the SODA, San Francisco, CA, USA, 28–30 January 1991; Volume 91, pp. 261–270. [Google Scholar]
  12. Polychronopoulos, G.H.; Tsitsiklis, J.N. Stochastic shortest path problems with recourse. Networks 1996, 27, 133–143. [Google Scholar] [CrossRef]
  13. Gao, S. Optimal Adaptive Routing and Traffic Assignment in Stochastic Time-Dependent Networks. Ph.D. Thesis, Massachusetts Institute of Technology, Cambridge, MA, USA, 2005. [Google Scholar]
  14. Miller-Hooks, E. Adaptive least-expected time paths in stochastic, time-varying transportation and data networks. Netw. Int. J. 2001, 37, 35–52. [Google Scholar] [CrossRef]
  15. Provan, J.S. A polynomial-time algorithm to find shortest paths with recourse. Netw. Int. J. 2003, 41, 115–125. [Google Scholar] [CrossRef]
  16. Pretolani, D. A directed hypergraph model for random time dependent shortest paths. Eur. J. Oper. Res. 2000, 123, 315–324. [Google Scholar] [CrossRef]
  17. Nikolova, E.; Karger, D.R. Route Planning under Uncertainty: The Canadian Traveller Problem. In Proceedings of the AAAI, Chicago, IL, USA, 13–17 July 2008; pp. 969–974. [Google Scholar]
  18. Boyan, J.; Mitzenmacher, M. Improved results for route planning in stochastic transportation. In Proceedings of the Twelfth Annual ACM-SIAM Symposium on Discrete Algorithms, Washington, DC, USA, 7–9 January 2001; Society for Industrial and Applied Mathematics: Philadelphia, PA, USA, 2001; pp. 895–902. [Google Scholar]
  19. Botea, A.; Nikolova, E.; Berlingerio, M. Multi-Modal Journey Planning in the Presence of Uncertainty. In Proceedings of the ICAPS, Rome, Italy, 10–14 June 2013. [Google Scholar]
  20. Nain, P.; Towsley, D.; Bar-Noy, A.; Basu, P.; Johnson, M.P.; Yu, F. Estimating end-to-end delays under changing conditions. In Proceedings of the 8th ACM MobiCom workshop on Challenged networks, Miami, FL, USA, 30 September 2013; ACM: New York, NY, USA; pp. 1–6. [Google Scholar]
  21. Boyles, S.D.; Waller, S.T. Optimal information location for adaptive routing. Netw. Spat. Econ. 2011, 11, 233–254. [Google Scholar] [CrossRef]
  22. Boyer, S.; Blandin, S.; Wynter, L. Stability of transportation networks under adaptive routing policies. Transp. Res. Part B Methodol. 2015, 81, 886–903. [Google Scholar] [CrossRef]
  23. Gao, S.; Chabini, I. Optimal routing policy problems in stochastic time-dependent networks. Transp. Res. Part B Methodol. 2006, 40, 93–122. [Google Scholar] [CrossRef]
  24. Nie, Y.; Fan, Y. Arriving-on-time problem: Discrete algorithm that ensures convergence. Transp. Res. Rec. 2006, 1964, 193–200. [Google Scholar] [CrossRef]
  25. Kalai, A.; Vempala, S. Efficient algorithms for online decision problems. J. Comput. Syst. Sci. 2005, 71, 291–307. [Google Scholar] [CrossRef]
  26. Xu, Y.; Hu, M.; Su, B.; Zhu, B.; Zhu, Z. The Canadian traveller problem and its competitive analysis. J. Comb. Optim. 2009, 18, 195–205. [Google Scholar] [CrossRef]
  27. Liu, W.; Hua, M.; Deng, Z.; Huang, Y.; Hu, C.; Song, S.; Gao, L.; Liu, C.; Xiong, L.; Xia, X. A systematic survey of control techniques and applications: From autonomous vehicles to connected and automated vehicles. arXiv 2023, arXiv:2303.05665. [Google Scholar]
  28. Xia, X.; Meng, Z.; Han, X.; Li, H.; Tsukiji, T.; Xu, R.; Zheng, Z.; Ma, J. An automated driving systems data acquisition and analytics platform. Transp. Res. Part C Emerg. Technol. 2023, 151, 104120. [Google Scholar] [CrossRef]
  29. Gould, B.T.; Brown, P.N. Information design for Vehicle-to-Vehicle communication. Transp. Res. Part C Emerg. Technol. 2023, 150, 104084. [Google Scholar] [CrossRef]
  30. Chen, G.; Zhao, X.; Gao, Z.; Hua, M. Dynamic drifting control for general path tracking of autonomous vehicles. IEEE Trans. Intell. Veh. 2023, 8, 2527–2537. [Google Scholar] [CrossRef]
  31. Valiente, R.; Toghi, B.; Pedarsani, R.; Fallah, Y.P. Robustness and adaptability of reinforcement learning-based cooperative autonomous driving in mixed-autonomy traffic. IEEE Open J. Intell. Transp. Syst. 2022, 3, 397–410. [Google Scholar] [CrossRef]
  32. Zeng, Y.; Chen, X.; Cao, X.; Qin, S.; Cavazza, M.; Xiang, Y. Optimal route search with the coverage of users’ preferences. In Proceedings of the 24th International Joint Conference on Artificial Intelligence, Buenos Aires, Argentina, 25–31 July 2015. [Google Scholar]
Figure 1. (a) Average vehicle density per household in Austin city. (b) Population history of Austin city.
Figure 1. (a) Average vehicle density per household in Austin city. (b) Population history of Austin city.
Mathematics 11 03639 g001
Figure 2. Sample routes generated using Google Maps and Waze on the Austin road network.
Figure 2. Sample routes generated using Google Maps and Waze on the Austin road network.
Mathematics 11 03639 g002
Figure 3. Two-state traffic model. Blue nodes represent the source and destination nodes. Red solid line indicates the possibility of high traffic on an edge, for example, edge ( a , b ) with probability 1 p a b and travel time d a b . Black solid line indicates the possibility of low traffic with probability p a b and travel time c a b .
Figure 3. Two-state traffic model. Blue nodes represent the source and destination nodes. Red solid line indicates the possibility of high traffic on an edge, for example, edge ( a , b ) with probability 1 p a b and travel time d a b . Black solid line indicates the possibility of low traffic with probability p a b and travel time c a b .
Mathematics 11 03639 g003
Figure 4. An example to show that an adjustment edge need not be a part of the fixed shortest route. Edge weights represent expected travel time with probability of low traffic assumed to be 1.0 on all the edges in dotted line, except edge ( a , t ) in solid line. At edge ( a , t ) , we assume p a t as 0.2, c a t as 0, and d a t as 100, with expected travel time 80.
Figure 4. An example to show that an adjustment edge need not be a part of the fixed shortest route. Edge weights represent expected travel time with probability of low traffic assumed to be 1.0 on all the edges in dotted line, except edge ( a , t ) in solid line. At edge ( a , t ) , we assume p a t as 0.2, c a t as 0, and d a t as 100, with expected travel time 80.
Mathematics 11 03639 g004
Figure 5. Single-route adjustment policy. Solid black line represents an edge and solid red line represents an adjustment edge. Grey dotted lines represent the shortest paths between nodes, with expected travel time as edge lengths.
Figure 5. Single-route adjustment policy. Solid black line represents an edge and solid red line represents an adjustment edge. Grey dotted lines represent the shortest paths between nodes, with expected travel time as edge lengths.
Mathematics 11 03639 g005
Figure 6. Series unforced model with two adjustment edges.
Figure 6. Series unforced model with two adjustment edges.
Mathematics 11 03639 g006
Figure 7. Series forced model with two adjustment edges.
Figure 7. Series forced model with two adjustment edges.
Mathematics 11 03639 g007
Figure 8. Example 1—Expected travel time comparison to show series unforced model is better. Red solid lines represent the two best adjustment edges for the respective models. Edge weights e = ( c , d , p ) depict c [ e ] as travel time under low traffic, d [ e ] as travel time due to high traffic, and p [ e ] as the probability of low traffic on the edge e.
Figure 8. Example 1—Expected travel time comparison to show series unforced model is better. Red solid lines represent the two best adjustment edges for the respective models. Edge weights e = ( c , d , p ) depict c [ e ] as travel time under low traffic, d [ e ] as travel time due to high traffic, and p [ e ] as the probability of low traffic on the edge e.
Mathematics 11 03639 g008
Figure 9. Example 2—Expected travel time comparison to show series forced model is better. Red solid lines represent the two best adjustment edges for the respective models. Edge weights e = ( c , d , p ) depict c [ e ] as travel time under low traffic, d [ e ] as travel time due to high traffic, and p [ e ] as the probability of low traffic on the edge e.
Figure 9. Example 2—Expected travel time comparison to show series forced model is better. Red solid lines represent the two best adjustment edges for the respective models. Edge weights e = ( c , d , p ) depict c [ e ] as travel time under low traffic, d [ e ] as travel time due to high traffic, and p [ e ] as the probability of low traffic on the edge e.
Mathematics 11 03639 g009
Figure 10. Parallel model with two adjustment edges.
Figure 10. Parallel model with two adjustment edges.
Mathematics 11 03639 g010
Figure 11. Map of the Austin Road Network. Brown-colored edges assume p = 0.4 and d = 5 × c . Red-colored edges assume p = 0.5 and d = 4 × c . Remaining edges assume p = 0.6 and d = 3 × c . Solid blue dots represent an example source–destination pair.
Figure 11. Map of the Austin Road Network. Brown-colored edges assume p = 0.4 and d = 5 × c . Red-colored edges assume p = 0.5 and d = 4 × c . Remaining edges assume p = 0.6 and d = 3 × c . Solid blue dots represent an example source–destination pair.
Mathematics 11 03639 g011
Figure 12. Pruned network and the set of critical adjustment edges for the single-route adjustment policy. Shaded portion in pink represents the pruned network and red solid line represents the set of feasible adjustment edges.
Figure 12. Pruned network and the set of critical adjustment edges for the single-route adjustment policy. Shaded portion in pink represents the pruned network and red solid line represents the set of feasible adjustment edges.
Mathematics 11 03639 g012
Figure 13. Optimal single route adjustment policy. Red solid line represents the optimal adjustment edge. Blue and green lines represent the non-adjusted and adjusted shortest route, respectively.
Figure 13. Optimal single route adjustment policy. Red solid line represents the optimal adjustment edge. Blue and green lines represent the non-adjusted and adjusted shortest route, respectively.
Mathematics 11 03639 g013
Figure 14. Optimal two-route adjustment policy. Red solid line represents the optimal adjustment edges. Blue and green lines represent the non-adjusted and adjusted shortest routes, respectively.
Figure 14. Optimal two-route adjustment policy. Red solid line represents the optimal adjustment edges. Blue and green lines represent the non-adjusted and adjusted shortest routes, respectively.
Mathematics 11 03639 g014
Figure 15. Benefit of adaptability. This graph summarizes the expected travel time across varying number of adjustment edges. Brown dashed and brown solid lines represent the non-adaptive and completely adaptive expected travel times. Red, green, and blue bars represent the summaries of our proposed series unforced, series forced, and parallel models, respectively.
Figure 15. Benefit of adaptability. This graph summarizes the expected travel time across varying number of adjustment edges. Brown dashed and brown solid lines represent the non-adaptive and completely adaptive expected travel times. Red, green, and blue bars represent the summaries of our proposed series unforced, series forced, and parallel models, respectively.
Mathematics 11 03639 g015
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Prasad, M.N.; Dimitrov, N.; Nikolova, E. Non-Aggressive Adaptive Routing in Traffic. Mathematics 2023, 11, 3639. https://doi.org/10.3390/math11173639

AMA Style

Prasad MN, Dimitrov N, Nikolova E. Non-Aggressive Adaptive Routing in Traffic. Mathematics. 2023; 11(17):3639. https://doi.org/10.3390/math11173639

Chicago/Turabian Style

Prasad, Madhushini Narayana, Nedialko Dimitrov, and Evdokia Nikolova. 2023. "Non-Aggressive Adaptive Routing in Traffic" Mathematics 11, no. 17: 3639. https://doi.org/10.3390/math11173639

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop