Abstract

Drivers’ route choice behavior is usually personalized and multicriteria in practice. Therefore, the urban shortest path problem is the personalized urban multicriteria shortest path (PUMSP) problem. However, the solutions of the PUMSP problem are difficult to meet the drivers’ travel habits in the state of the art. To solve this problem, first, a new stochastic optimization algorithm based on the iterative calculation of a valid route set is proposed in this paper. The effective and reasonable path searching mechanism is designed based on drivers’ route choice habits. Then, the evaluation method of calculation results is given. The comparative experimental results with the genetic algorithm show that the proposed algorithm has reached better results in the evaluation parameters and computing time. The experimental results also demonstrate that it is meaningful to consider drivers’ travel law in the personalized urban multicriteria shortest path algorithm design for avoiding obtaining impractical routes solutions.

1. Introduction

The personalized urban multicriteria shortest path (PUMSP) problem is classified as a NP-hard problem and a significant branch of the urban multicriteria shortest path (UMSP) problem, in which two or more criteria and other constraints are considered, and finding the optimum path based on the importance-value of each criterion from the driver’s opinion in the route choice is the main goal. For example, given an origin-destination, help a driver to find the optimum path with the minimum weighted sum of travel time, travel length, and road grade whose weights separately are 0.4, 0.3, and 0.3. Because of the wide application prospect of the PUMSP, it has generated great interest among researches and lots of solution algorithms exist in the literatures [1, 2].

The personalized urban multicriteria shortest path optimization is a complex problem. The multicriteria shortest path optimization is the core. The existing algorithms are mainly deterministic and stochastic. Early on, some classic deterministic algorithms of the single-criterion shortest path (SSP) problem are used to solve the multicriteria shortest path (MSP) problem. One representative idea is presented by Sadeghi, Kim, and Nadi. In their research, the MSP problem is transformed into the SSP problem by constructing an integrated impedance function regarding the multicriteria for each arc in the network [3, 4]. And based on this processing, all the deterministic algorithms for the SSP problem can be used to solve the MSP problem. However, it is unreasonable as pointed by Mooney and Liu [5, 6]. In the MSP problem, the statistical unit of all the criteria should be the route, and not the arc.

Martins and Guerriero analyzed the distinction and relation between the SSP problem and the MSP problem in detail [7, 8]. And the MSP problem is regarded as an extension of the SSP problem in their research. And the traditional label algorithm is improved. In the improved label algorithm, the label and its update mechanism had been redesigned. For example, instead of one state label, a vector is used to label the states of all the criteria. But the time complexity of the improved label algorithm is rather high. Set to be the number of all the nodes in the network; the label’s setting number of one node is up to [9, 10]. And in recent years, these algorithms are usually used to compare with other algorithms in experiments. Caramia and Kang proposed some approximation approaches to find the optimum solutions by cyclically constructing the set of k shortest paths based on each criterion and Dijkstra algorithm. The approximate optimum solutions are obtained by intersecting the sets. And the experiment showed that it is efficient for less criteria and small networks.

Recently, with the rapid development of intelligent optimization algorithms, lots of stochastic optimization algorithms for solving the MSP problem have emerged. Especially for the flexible form of the optimization function, lots of the intelligent optimization algorithms are improved to solve the MSP problem. Keivan and Fang improved the ant colony algorithm to solve the MSP problem and compared with the label algorithm by simulation tests [11, 12]. Bezerra et al. compared the properties of the single-ant-colony algorithm and multi-ant-colony algorithm in different networks through a series of experiment tests [13]. Chiang and Siddiqi improved the evolutionary algorithm to solve the MSP problem with time window and random demand [14, 15]. Osman and Ji improved the genetic algorithm to solve the MSP problem in the general network and the stochastic network [16, 17].

The strong robustness, flexibility, and adaptation of stochastic optimization algorithms attract an extensive attention from researchers. However, existing algorithms still have a number of limitations, such as the lack of effective strategies for generating all the valid routes, determining the best compromising solution from the driver’s point of view when more than one possible solution simultaneously exists, which seriously affect their performance. The newer and better algorithms are required in reality.

The main aim of this paper is to report a new stochastic optimization algorithm for solving the PUMSP problem and to assess its performance. Unlike most of existing algorithms for the PUMSP problem, the proposed algorithm uses drivers’ daily travel routes as the initial routes instead of the random routes used in most of the stochastic optimization algorithms. In addition, the proposed algorithm iteratively updates the initial routes with the consideration of the common law of drivers’ route adjusting in travel which is little considered in existing algorithms.

The rest of the paper is arranged as follows. In Section 2, some notations and definitions about an urban road network, the driver’s travel preferences, and the valid route are defined, based on which the personalized urban multicriteria shortest path is determined, and the personalized urban multicriteria shortest path optimization model is provided. In Section 3, a new stochastic optimization algorithm for the PUMSP problem and its evaluation parameter is proposed, in which the effective and reasonable operators on the initialization and iterative update of the valid route set are designed combining with three criteria chosen by a driver. In Section 4, the comparative experiment between the proposed algorithm and the genetic algorithm for solving the PUMSP problem is carried out, and the experimental results are analyzed and discussed. In Section 5, conclusion is considered.

2. Personalized Urban Multicriteria Shortest Path Optimization Model

According to the graph theory, if the intersection is abstracted as a node and one driving direction of the road between the adjacent intersections is abstracted as a directed arc, then an urban road network can be abstracted as a directed graph , in which is the set of nodes with and is the set of arcs with . Each is corresponding with an ordered pair of nodes, in the form from the node to the node . And the arc simultaneously has an associated set of its criteria-costs with , in which is the total number of the criteria chosen by the driver. And each route in has an associated set of the criteria values with . Set is the importance-value of the th criterion, and . Obviously, there is , in which is the value of the th criterion of the route and is the th criterion-cost of the .

Definition 1. In , a connection route between a given origin-destination without any loops or repeated arcs and conforming to the urban traffic regulations is a valid route.

Definition 2. The route which has the minimum linear-weighted sum of all the criteria chosen by the driver among all the valid routes between and in is the personalized urban multicriteria shortest path between and .

Based on Definitions 1 and 2, the personalized urban multicriteria shortest path optimization model can be described as the following. In (1), is the set of all the valid routes between and in :

3. The Stochastic Optimization Algorithm for Solving the PUMSP Problem

The survey and analysis about vehicles’ trajectories in urban road networks done by the authors’ team showed that some common laws exist in drivers’ daily travel. For each pair of nodes in urban road network, there are one or more fixed routes which are chosen by experienced drivers. When poor travel condition emerges in parts of the preselected routes in travel which may be caused by many factors like congestion caused by traffic accident or water gathered on the road after raining, drivers will replace the parts using other routes within certain distance range once found by them before arriving there. And the ultimately chosen routes are nearly all around the preselected routes within certain distant range. Based on these laws, a stochastic optimization algorithm is designed and proposed to solve the PUMSP problem, in which the optimum path is obtained by iteratively updating a valid route set including certain number of valid routes between and . The calculating process is as shown in Figure 1.

3.1. Urban Road Network Data Preparation

Urban road network data including criteria-costs data of each arc in the road network and the road network topology data are required in the calculation process. The method of [18] is applied to organize and store the road network data. The statistic section of the arc criteria-costs is between the center points of the adjacent intersections in the traditional methods. The differences of different turning directions in the intersection are usually neglected and errors are easily produced. In this paper, the sections between the exits of adjacent intersections are determined as the statistic sections of the arc criteria-costs, just as showed in Figure 2, the arc criteria-costs of the arcs AB, AD, and AC between the exits of intersection , and the intersection should be separately counted.

In order to describe the algorithm, three criteria chosen by a driver are considered including “travel length,” “travel time,” and “effect from other travel factors.” The “travel length” value () of the route is the sum of the arc-distance values of the route . The “travel time” value () of the route is the sum of the arc passing-time of the route . The “effect from other travel factors” value () of the route is the sum of the arc-effect values of the route . According to the driver’s opinion, the “effect from other travel factors” value of an arc is the sum of the effect values of four travel factors including waiting time before red light, road grade, road around marketplaces, and vehicles parking in the roadside (4), in which is the effect value of the travel factor . The effect values of the four travel factors are given in Table 1, which are obtained from travel survey done by the authors.

The corresponding criteria-costs , , and for each arc in are normalized using (5)~(6). In (5), is the average value of the th criterion-cost of all arcs in and is the maximum of   (); is the transition value. In (6), and separately are the minimum and maximum of of all the arcs, and is the normalization value of . The values of the three criteria can be calculated using (7), in which is the value of the cth criterion of the route ; is the normalization value of the th criterion-cost of the arc :

3.2. Route Encoding

An unfixed-length decimal encoding method is applied for encoding the routes, by which a route is encoded using a positive integer sequence consisting of the IDs of nodes from to in the route. For example, in a route as showed in Figure 3, the route encoding is .

3.3. Comprehensive Evaluation Function Value Calculation

According to (2), a comprehensive evaluation function is defined using (8), in which is the normalization value of the th criterion-cost of the arc in the route :

3.4. The Valid Route Set Initialization Operator

In the proposed algorithm, the optimum path is obtained by iteratively updating a valid route set consisting of certain number of valid routes. The initialization of the valid route set directly affects the performance of the proposed algorithm. Unlike the existing stochastic optimization algorithms, the proposed algorithm does not use a stochastic method to generate the initial routes. Instead, with the consideration of the law of drivers’ initial route choice in daily travel, all the daily travel routes are encoded and used to initialize , which can be obtained from the taxi monitoring system or the survey about the vehicle trajectories between and .

3.5. The Valid Route Set Update Operator

In reality, the preselected routes are often adjusted based on drivers’ experiences, and the replaced routes are not always the best. And sometimes, the preselected routes have not been adjusted when travel condition goes bad in parts of the routes because of the lack of information. A personalized travel often has not been satisfied. So, in the updating of , the parts with poor travel conditions in each route in should be timely identified and adjusted. And as the increase of iteration times, the routes in should converge to the optimum path gradually and the adjusted nodes in each route in are fewer and fewer.

With the consideration of the above, for each iteration, some new routes will be generated by adjusting parts of each route in . In order to increase the search for the routes around the routes with the smaller comprehensive evaluation function value, for each iteration, the number of routes generated by each route () is calculated using (9), in which and separately are the maximum and minimum of routes generated by a route in in each iteration; and separately are the maximum and minimum of the comprehensive evaluation function values of all the routes in in the th iteration. and separately are the comprehensive evaluation function value and the number of new routes generated by the route in the th iteration. As shown in Figure 4, there is a linear relation between and . From (9) and Figure 4, it can be seen that the larger the comprehensive evaluation function value, the fewer the number of the generated new routes:

Assume that the number of the replaced nodes in the route is the same for generating each new route and is a function of (10), in which is the number of nodes in the route , and is a real number, , and is the total number of iterations:

Based on all the above, a new route can be generated by replacing nodes in the route . Set and separately to be the start node and the end node of the replaced part in the route ,   to be a real number, and . Then, the places of and can be determined according to the following method.

In order to make the replaced part incline to the part with poor travel condition, a cost is calculated for each arc in the route using (11) firstly, in which is the normalization value of the vertical distance from the end node of an arc to the straight connecting line between and just as shown in Figure 5, is the normalization value of the expected travel time of the arc, and   () is the random item which is different for each arc in the route :

Subsequently, find out the node from all the nodes excepting in the route which is the end node of the arc with the maximum value of the arc cost . Set to be the number of nodes between and and to be the number of nodes between and . Set to be position of the node in the route ; then the node is the th node in the route . And is determined based on the following rules:(1)If and are true, then . And should be, respectively, selected from the range for generating each new route. As shown in Figure 6(a), when node 2 is the node and , then the node can be any node from node 1 to node 4 in the route, and the node is a node from node 8 to node 9 in the route.(2)If and are true, then . As shown in Figure 6(b), when node 2 is the node and , then the node can be any node from node 1 to node 5 in the route, and the node is a node from node 6 to node 9 in the route.(3)If and are true, then . As shown in Figure 6(c), when node 2 is the node and , then the node can be any node from node 5 to node 4 in the route, and the node is a node from node 3 to node 8 in the route.(4)If and are true, then . As shown in Figure 6(d), when node 8 is the node and , then the node can be any node from node 5 to node 4 in the route, and the node is a node from node 6 to node 9 in the route.

In reality, drivers prefer to select the replacing routes around the preselected routes within certain distant range. The replacing route between the nodes ,   is generated based on Dijkstra algorithm and the arc cost as shown in (12), in which is the random item which is different for each arc in and in generating each new route:

All the new routes can be generated based on the above method. When all the new routes have been generated, delete the new routes which are repeated with routes in . In addition, count the total number of routes in and the remaining new routes, from which the routes with the largest comprehensive evaluation function value are deleted until the number of the remaining routes equals the maximum number of routes allowed in . And then, update using all the remaining routes.

3.6. The Optimum Path Determination and Evaluation

The route with the minimum comprehensive evaluation function value in is the optimum path obtained by times iteration. In this paper, we also measure another parameter to evaluate the calculation results (equation (13)), in which is the optimum path by times iteration and is the single-criterion shortest path based on the th arc criterion-cost. represents the average of the relative differences of the three criteria of the route and their respective minimum values:

4. Experiments and Discussion

An urban road network including 2000 nodes and 7014 arcs is used to evaluate the performance of the proposed algorithm. The referred data in the algorithm are obtained by simulation. The performance of the proposed algorithm is compared with those of the genetic algorithm proposed in [19] by calculating the optimum paths between two nodes (IDs: 1 and 1259) in the road network under five groups of in Table 2. The minimum of the three criteria separately are 7847.60 meters, 811.71 seconds, and 31.67. And in order to keep the comparability, the genetic algorithm in [19] is improved in four aspects: (1) the comprehensive evaluation function defined in Section 3.3 is defined as the fitness of the generic algorithm, (2) all the daily travel routes between the origin node and the destination node are used to initialize the population, (3) the node defined in Section 3.5 is defined as the gene variation node in each route, and (4) the replacing routes are generated based on Dijkstra algorithm and the arc cost defined in (12). Table 3 gives the basic parameters’ values of the two algorithms.

Each algorithm is tested for 50 times under each group of . The iterative calculation results of the two algorithms are given in Figure 7, in which is the average of the minimum comprehensive evaluation function values (or the minimum fitness function values) achieved by each algorithm for times iteration during 50 times’ test. Table 4 gives the average of the minimum comprehensive evaluation function values (or the minimum fitness function values) achieved by each algorithm by times’ iteration during 50 times’ test. As shown in Figure 7 and Table 4, the proposed algorithm has achieved smaller values of . The average computing time of the proposed algorithm during 50 times’ test is 31.33 seconds, and that of the genetic algorithm is 43.65 seconds. Table 5 gives the values of the three criteria and the evaluation parameter of the optimum paths achieved during 50 times’ test under each group of . It can be seen that the proposed algorithm has reached a smaller value of than the genetic algorithm under each group of . It is obvious that the performance of the proposed algorithm is better than the genetic algorithm in solving the PUMSP problem. Figure 8 shows the daily travel routes and the optimum paths obtained by the two algorithms under each group of . The optimum paths obtained by the two algorithms are all around the daily travel routes, which matches the reality. All of these calculation results indicate that the proposed algorithm can be used to solve the PUMSP problem.

5. Conclusions

The personalized urban multicriteria shortest path optimization is a complex problem. The stochastic algorithms are proved to be superior to the deterministic algorithms. But existing stochastic algorithms still have some limitations like the lack of the strategies about avoiding the impractical routes and the long computing time which largely affect the performance in practice application. In this paper, a new stochastic optimization algorithm is proposed to solve the PUMSP problem. Unlike most of the existing stochastic optimization algorithms based on the random strategies in the initial routes generation and update, the key operators of the proposed algorithm are designed based on drivers’ travel route choice law on the initial routes choice and adjustment in daily travel. The experiment results showed that the proposed algorithm reached better results in the evaluation parameters and computing time in comparison with those of the genetic algorithm. And the experiment results also indicated that the proposed algorithm has the ability of avoiding the impractical solutions.

It should be noted that the proposed algorithm is universal for more criteria. But (11) should be adjusted when more criteria are considered. In addition, the computing time can be further reduced by using a better shortest path algorithm to generate the replacing routes.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgments

This work was partially supported by the National Science Foundation of China (Grant nos. 51308248 and 51408257), the Specialized Research Fund for the Doctoral Program of Higher Education of China (Grant nos. 20110061120043 and 20120061120046), the National Science Foundation for Postdoctoral Scientists of China (Grant nos. 2012T50300 and 2013T60331), and the Youth Scientific Research Fund of Jilin (Grant no. 20140520134JH).