Abstract
Intelligent Transportation Systems (ITS) are defined as those systems utilizing synergistic technologies and systems engineering concepts to develop and improve transportation systems. In this paper, a novel route selection problem based on the envisaged driving mode with dynamic signals in ITS is proposed. It belongs to a kind of the shortest path problem of dynamic weight-varying networks, and the arc-weights of the network vary with the arc-chosen, so it cannot be solved by the existing greedy algorithms. According to the characteristics of the proposed problem, firstly, a dynamic programming model for the driving mode on a single path is established. Secondly, two algorithms for solving the route selection problem based on the former mode are developed. One is a brute-force algorithm based on matrix expansion with the computational complexity of O (Nt × n2). The other is an improved adaptive ant colony algorithm with the complexity of O (Nc × m × n2). Finally, the computational experiments show the advantages and disadvantages of the two effective algorithms with numerical examples.
Keywords
Introduction
Traffic lights, also known as traffic control signals, are signaling devices positioned at road intersections to control flows of traffic [1]. It is designed to balance growth of vehicles and road capacity [2]. However, frequent stop and waiting not only intensifies the consumption of vehicles, but also weakens the mobility of traffic flows. Mobility is vital in modern societies. One of the ways to alleviate congestion and to utilize the existing infrastructure more efficiently is the route guidance system [3], which is the core of Intelligent Transportation Systems (ITS) and can influence travelers’ behaviors, reduce travelers’ anxiety to unknown traffic conditions, and reasonably distribute flows on the whole traffic network [4].
In recent years, Big Data has drawn huge attention in numerous fields [5–7]. In transportation, proper locations of sensors on a traffic network and data fusion techniques are collecting more useful data for controlling [8, 9]. A variety of inventions emerge one after another, such as novel localization algorithms [10], Smart-Eye for ITS [11], new cloud-based service framework [12], multilayered vehicular data cloud platform [13]. The reform of traffic data collection and processing methods is leading a deep change of ITS, for example, dynamic signals are more conveniently obtained in ITS.
Based on the above mentioned development, this paper is motivated by a driving mode with dynamic signals. In this driving mode, navigation devices obtain positions and speeds of vehicles, locations and states of the traffic lights, whereas the route guidance system guides drivers to select specific driving choices, in order to avoid waiting at red lights and run without any break. In this paper, we mainly focus on how to select an optimal route in the dynamic networks. A novel problem is proposed, which aims to find the shortest path in a digraph whose arc weights change with segments-chosen.
The remainder of this paper is organized as follows. Section 2 reviews different shortest path problems in ITS. Section 3 presents a dynamic programming model for the driving mode applied on a single path. In Section 4, two algorithms to solve route selection problem are developed. Then Section 5 conducts computational experiments to test the two algorithms. Finally, the conclusion is given in Section 6.
Route selection problems in ITS
In graph theory, there existing many algorithms for the general shortest path problem. While in ITS, changeful networks and real-time solution make the problem much more difficult [14]. In order to study more clearly, Pillic et al. classified vehicle routing problems by information evolution and quality as Table 1 [15]. It can be also applied to the shortest path problem.
Problem classification
Problem classification
Static and deterministic shortest path problem belongs to the kind of classical problems. Zhan et al. ever studied different shortest path algorithms in real traffic network in 1998 [16, 17]. Their research shows that though Dijkstra algorithm had been proposed for 39 years, it remained one of the fastest algorithms on one-to-all and one-to-one shortest path problem. However, Dijkstra cannot meet the real-time demand when the number of vertices is relatively large. Many later algorithms, no matter for the shortest path or for the k shortest paths, cannot break the real-time barrier. Afterwards, soft computing methods such as genetic algorithm and neural network came up [18–22], whose computation time are not sensitive to the size of networks, and can improve the computing efficiency [23].
Static and stochastic problems are characterized by arc weights partially known as random variables with definite distribution. This problem can be determined by setting each random arc weight to its expected value and solving an equivalent deterministic problem, and thereby be solved by generalized algorithms [24].
In dynamic problems, part or all of the arc weights change dynamically during the execution of the routes. For problems whose weights vary with external variables (usually with time), a generally accepted algorithm is to find the priori least expected time routes from all origins to a single destination for each departure time and define lower bounds on the expected times of these routes, then determine an exact solution [25]. While for the problem whose weights vary with the segments-chosen, the existing greedy algorithms are no longer applicable because it is not Markovian.
Thus, our work differs from these contributions in that we propose a novel route selection problem, which is a kind of the shortest path problem of dynamic weight-varying networks, and its arc-weights vary with the execution itself. Furthermore, two new algorithms are developed in order to solve it.
Problem description
In the instant of setting out, the navigation device acquires initial states of traffic lights. Later throughout the trip, it is not necessary to get real-time states because of the periodicity of traffic lights. In this model, without considering yellow lights, we define the lights cycle with the instant green-to-red as the starting point.
If the traffic light is green when the vehicle reaching the maximum limited speed, the time-consumed in this travel is the actual time, which can be roughly described by the ratio of distance to speed when assuming driving uniformly. If it is red, when the vehicle drives as usual, taking the ‘stop-wait-restart-accelerate’ mode, the time-consumed in this travel must be longer than the sum of the running time and the waiting time because of the recovery (delay time). While when the vehicle drives based on dynamic signals without standstill and waiting, ideally, no excrescent time would cost, and the vehicle would end the travel at the instant the light changes to green.
Dynamic programming model
Divide the travel from the start to the end into n stages according to the traffic lights. The end of stage k is light k. Define l k as the distance of stage k, v k as the maximum limited speed (The lower between road speed limit and limited speed caused by congestion), C k as the cycle of light k (such as C1, C2, C3 in Fig. 1). These data can be held in the navigation device. Δtk0 is defined as the state of light k in the instant of setting out, 0 ≤ Δtk0 < C k (such as Δt10, Δt20, Δt30 in Fig. 1). It needs to be acquired in real time. If 0 ≤ Δtk0 < C k /2, the light has changed to be red for Δtk0; if C k /2 ≤ Δtk0 < C k , the light has changed to be green for Δtk0 - C k /2.

Time consumed in different driving modes.
Firstly, let Δt
k
be the state variable, indicating the state of light k when the vehicle starts in stage k (such as Δt2, Δt3 in Fig. 1).
(∖: to get the remainder, the same below)
Secondly, let u
k
be the decision variable, indicating the driving mode in stage k. It decides the time consumed in the stage, t
k
. Figure 1 shows these different situations. When C
k
/2 ≤ (l
k
/v
k
+ Δt
k
) ∖ C
k
< C
k
, that is, the light is green when the vehicle reaches at the maximum limited speed.
When 0 ≤ (l
k
/v
k
+ Δt
k
) ∖ C
k
< C
k
/2, that is, the light is red when the vehicle reaches at the maximum limited speed. u
k
= u2, t
k
= l
k
/v
k
+ [C
k
/2 - (l
k
/v
k
+ Δt
k
) \ C
k
] + t
D
, t
D
is the delay time for speed recovery. Usually t
D
≠ 0. u
k
= u3, t
k
= l
k
/v
k
+ [C
k
/2 - (l
k
/v
k
+ Δt
k
) \ C
k
] + t
E
, t
E
is the time exceeding the green light time point when taking the dynamic driving mode. Ideally, t
E
= 0.
Afterwards, let the time cost in the total travel be the optimal value function:
Finally, the recursive equation can beobtained:
A brute-force algorithm based on matrix expansion
Usually, an exact route selection problem is solved by labeling. Since the problem discussed in this article does not satisfy the optimal principle, so we try to develop a brute-force algorithm (BFA). Firstly, BFA is to find all routes from the origin node to the destination node. Then it calculates the time consumed throughout different routes and selects the least travel time path.
Here, a method based on matrix expansion is used to find all routes between two nodes. In Fig. 2 (a), a digraph with 6 nodes is shown. Figure 2 (b) lists the simple expanding of route matrix from node 1 to node 6.

The digraph and its route matrix expending.
In fact, the rout matrix expending includes replicating and piecing. In this matrix, if the last node in a raw is not the destination and has m connected nodes, replicate the row for m times and piece the connected matrix next to these rows. If the last node in a row is the destination, the connected matrix would be 0 or Inf. So that we can obtain all routes until the connected matrix only contains 0 or Inf elements.
The steps of BFA are as follows:
To simulate complex traffic and transportation processes, the swarm intelligence algorithm is well used [25]. Various changes in the route selection can be imitated by swarm’s behaviors. Ant colony algorithm is an evolutionary computation proposed by Italian researchers Dorigo [26]. Generally, the ant system of the original ant colony algorithm is static. However, many real problems are dynamic, and more and more ant systems have been improved with different strategies and successfully applied to the dynamic optimization problems [27].
Ant system is originally designed for Traveling Salesman Problem (TSP). According to the characteristics of the problem, we redesign the ant system differing from two aspects. One is to replace randomly placing ants in different cities with placing ants in the same starting city. The other is to add a step to adjust arc weights in the searching loop. Based on these enhancements, we develop an improved adaptive ant colony algorithm (IAACA) to solve the shortest path problem in a digraph whose arc weights dynamically change with segments-chosen.
Algorithm symbols
Without loss of generality, the road network can be described as {V, E, W k |k = 1, 2, …, m}. Here, V = {v0, v1, …, v n } is a finite point set, v0 and v n are the origin and destination points, respectively. E = V × V is the corresponding edge set. W k = {w ij | (v i , v j ) ∈ E} is the weight matrix when ant k is searching, it represents the least time cost by ant k during (v i , v j ). Initially, w ij = M, and M is an arbitrarily large positive number. With edges being selected by the ant, the weights are modified continuously when the ant is at intersectioni: w ij = t ij (Δt j ), v j ∈ allowed i . allowed i = {intersections connected with v i } - {intersectionsthe ant k has gone}.
Assuming there is a path P = {(v0, vi1) , (vi1, vi2) , …, (v in , vi(n+1))}, the time consumed during the total travel is T (P) = w0i1 + wi1i2 + … + wini(n+1). So, IAACA is to find the path P, T (P) of which is the least of all paths from the start to theend.
Weight-varying ant system
All m ants concentrate on the origin at first. Before ant i sets out, the weights of edges connected to v0 should be adjusted. After that, ant i randomly selects an edge according to the selection strategy. Then ant i moves to the other node of this edge, weights of the edges allowed are modified, ant i selects one from them, and so on. The process would stop when searching to the destination. So that ant i obtains a solution. This time we should update the pheromone amount of edges in this path. After ant i finished the search, ant j sets out and finds a solution through the same process as ant i. Until all m ants completed the search, we can obtain m solutions, including some repetition. Then we can search the m solutions for a local optimum and update global pheromone amount based on the local optimum. Continually iterate as above until the maximum number of iteration is reached. The global optimum is the path with the minimum T (P) of all local optima.
The steps of IAACA are as follow:
If w
ij
= t
ij
(Δt
j
), v
j
∈ allowed
i
.
Here, τ (i, j) indicates the pheromone amount left by ants passing through the road; η (i, j) indicates the local heuristic information, define η (i, j) =1/w
ij
(u
ij
, Δt
i
), that is, if the time cost in (v
i
, v
j
) is shorter, then η (i, j) is larger,
Here, ρ indicates the residual degree of pheromone after volatilization. If ant k has passed through (v i , v j ), then Δτ (i, j) k = Q/T k . If not, Δτ (i, j) k = 0. Q is a constant. It means the pheromone amount left on the path that an ant searches for at a time.
Computational experiments
Computational complexity
The two algorithms in Section 4 are both consisted of several parts. Tables 2 and 3 describe the complexity of different parts. Where n is the number of nodes; Nt is traversal times of BFA. If node i connects nt
i
nodes,
Computational complexity of BFA
Computational complexity of BFA
Computational complexity of IAACA
The two tables show that the computation complexity of BFA is O (n × Nt × n), while that of IAACA is O (Nc × m × n2). We can deduce that when the problem scale is small, the n and Nt is small, BFA not only can ensure the precise result, but also has a lower complexity. However, when the scale is larger, the Nt increases rapidly, IAACA shows its superiority in efficiency.
Since there is no benchmark for the problem in this paper, we use the instance Oliver30 in TSPLIB, sort and label vertices by the distance from the origin, then randomly generate the directed graph as shown in Fig. 3. In this digraph, the direction of the arcs is always from the smaller labeled nodes to the larger, so that in the following computation the destination can represent the network’s size.

The directed graph generated from the Oliver 30.
We randomly assign 90 s, 100 s and 120 s the three sizes of cycle to each traffic lights in the intersection, and set the initial state for each traffic lights. For the sake of convenience, we set speed limits of the route segments as v ij = 20 m/s.
The parameters of IAACA are set as: the number of ants follows the label of destination, which represents the network size, the iterations are 40 times, the pheromone updating coefficient α= 0.5, the heuristic information influence coefficient β= 0.5, and the pheromone evaporation ρ= 0.8.
Let node 1 as the origin point. After running in the environment with MATLAB R2014a, Intel i5-4210u CPU 1.70 Hz 2.40 Hz, the average of 10 times computation in the Table 4 are obtained. For a more intuitive observation, we also illustrate the results in the Fig. 4.
Computational results of the two algorithms

Computation time of the two algorithms varying with the size of network.
It can be seen from Fig. 4 that when the size of network size increases, the problem scale Nt also increases, especially it shows an exponential growth trend when the size gets to about 25. In Table 4, though the IAACA cannot find the optimal solution each time, the overall optimal rates are still satisfactory because there are only four suboptimal solutions in 300 experiments. As for computation time of the two algorithms, the experiment results are consistent with the complexity analysis. When the size of network is larger than 24, Nt grows to about 3.06E+9, and the computation time of BFA is greater than that of IAACA; when it reaches 28, Nt grows to about 7.34E+10, and the computation time of the BFA suddenly increases. Therefore, compared with IAACA, BFA will fail to solve the larger scale problem due to data overflown.
In this paper, we discuss a novel dynamic shortest path problem for ITS that is not Markovian, in which networks’ arc-weights vary with the execution itself. So the existing greedy algorithms are not applicable. The problem is derived by an envisaged driving mode with dynamic signals: drivers select specific driving choice guided by devices to run without any break. We first establish the dynamic programming model for this driving mode on a single path, and then develop two new algorithms to solve it. One is a brute-force algorithm (BFA) with the computational complexity of O (n × Nt × n). The other is an improved adaptive ant colony algorithm (IAACA) with the complexity of O (Nc × m × n2). The computational experiments show that the two algorithms can both solve the problem effectively. When the scale of problem is small, the BFA can obtain the optimal solution, as well as has a less computing time compared with the IAACA. When the scale of problem is large, the computation time of BFA increases sharply due to the rapid growth of the amount of all paths, while the IAACA shows a superior performance. The proposed model and developed algorithms in this paper will provide the theoretical guideline and decision support for ITS.
Footnotes
Acknowledgments
This work was partly supported by the Funds for the National Natural Science Foundation of China (Nos. 71671033, 71371190, 71210003, 71431006), and the Fundamental Research Funds for the Central Universities (Nos. N160601001, N150605001).
