Next Article in Journal
Ultra-Widefield Fluorescein Angiography Image Brightness Compensation Based on Geometrical Features
Previous Article in Journal
The Dependence of Flue Pipe Airflow Parameters on the Proximity of an Obstacle to the Pipe’s Mouth
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Personalized Route Planning System Based on Driver Preference

1
Institute of Systems Engineering, Macau University of Science and Technology, Macau 999078, China
2
Center of Research Excellence in Renewable Energy and Power Systems, Department of Electrical and Computer Engineering, Faculty of Engineering, King Abdulaziz University, Jeddah 21481, Saudi Arabia
*
Author to whom correspondence should be addressed.
Sensors 2022, 22(1), 11; https://doi.org/10.3390/s22010011
Submission received: 24 October 2021 / Revised: 7 December 2021 / Accepted: 13 December 2021 / Published: 21 December 2021
(This article belongs to the Section Vehicular Sensing)

Abstract

:
At present, most popular route navigation systems only use a few sensed or measured attributes to recommend a route. Yet the optimal route considered by drivers needs be based on multiple objectives and multiple attributes. As a result, these existing systems based on a single or few attributes may fail to meet such drivers’ needs. This work proposes a driver preference-based route planning (DPRP) model. It can recommend an optimal route by considering driver preference. We collect drivers’ preferences, and then provide a set of routes for their choice when they need. Next, we present an integrated algorithm to solve DPRP, which speeds up the search process for recommending the best routes. Its computation cost can be reduced by simplifying a road network and removing invalid sub-routes. Experimental results demonstrate its effectiveness.

1. Introduction

Navigation systems have become increasingly popular, especially the navigation software in mobile phones, from which we can obtain navigation services at no or low cost. People have various requirements for services, and may be unsatisfied with the shortest or fastest route as offered by most of today’s navigation systems in use. Mainstream navigation systems usually focus on distance, driving time, the number of traffic lights, and tolls. However, in reality there are several other attributes that affect driver choice and experience, such as driving safety, difficulty and scenery. A navigation system receives a higher satisfaction score from drivers when the attributes affecting driver choices are considered more comprehensively. Doing so requires us to consider more attributes and driver preferences in the process of route planning [1]. On the other hand, due to individual differences, each driver’s preferences are different, and the recommended routes from a navigation system are expected to be different, which is beneficial in reducing the congestion often seen in today’s transportation networks.
With the development of relevant technologies such as Internet of Things [2,3], road information can be sensed and obtained more quickly and accurately, and the real-time road condition can thus be provided to drivers [4,5]. For example, through a Global Positioning System (GPS) and Geographic Information System (GIS), a user’s location, the length and width of a road and the other basic attributes can be quickly acquired. Real-time traffic flow and congestion can be obtained through a surveillance and control system and crowd sensing [6,7,8,9,10,11]. Some models are getting better, such as a travel time prediction model and congestion estimation model given historical and real-time sensed data [12,13,14,15]. Therefore, it is technically possible to consider more attributes and driver preferences in a next-generation navigation system.
Pang, et al. [6] establish a framework of route planning based on driver preference. They use fuzzy-neural methods to represent the correlation between route attributes and driver route selection, and optimize the recommended route by training a fuzzy-neural network. Park, et al. [1] suggest a decision tree learning algorithm and a model to represent driver choice behavior with respect to driver preferences. The selection rules are adaptively updated when the proposed model finds a difference between the predicted selection and the actual selection made by a driver. Nadi and Delavar [16] present a generic model that combines a pairwise comparison method and quantifier-guided ordered weighted average (OWA) aggregation operators to form a personalized route planning model. The model calculates the impedance of each link based on routing attributes, attributes importance, and selected decision strategies, and considers driver preferences. Pahlavani and Delavar [17] design a neuro-fuzzy toolbox to learn driver preferences in multi-standard path selection. The local linear neuro-fuzzy models (LLNFM) and adaptive neuro-fuzzy inference systems (ANFIS) are proposed and compared. Abdelhamid, et al. [12] propose a dynamic route guidance system that focuses on a driver’s satisfaction and considers driver behavior in a route guidance process to boost the safety levels on roads. Teng, et al. [18] propose a dynamic route search method considering individual driver preferences. The fuzzy-analytic hierarchy process (AHP) and D-star are used to integrate multiple preferences and realize route searches. Zheng, et al. [14] present a multi-objective path planning model and use the analytic hierarchy process (AHP) and gray relational analysis to obtain the relative properties of each sub- objective according to driver preference. Ntakolia and Iakovidis [19] propose a swarm intelligence graph-based pathfinding algorithm (SIGPA) to solve the multi-objective path model of electric vehicles.
There are other related studies on personalized route planning [20,21,22,23]. Papinski, et al. [24] use the interview and questionnaire methods to obtain the sort of attributes that drivers care about. Fujii, et al. [25] study the readability of a user interface. Kashevnik, et al. [26] propose an approach to a driver decision support system that is based on an Internet-of-Transportation-Things concept. This approach collects and processes information through smart-phones mounted in vehicle windshield, and uses the information to provide personalized recommendations for a driver.
The core function of the proposed driver preference-based route planning (DPRP) is the planning of a route. Its main difference from traditional navigation systems is that drivers’ personal preference is more comprehensively considered, and their selection of recommended routes is collected. Here, we use a road network (nodes and edges) to represent a map, the junctions are represented by nodes, and the segments are represented by edges. We use a weight to measure the importance of attributes such that important attributes are given high weight values. We use the attribute values of a road to calculate the “road resistance” in order to accurately reflect its characteristics. Here “road resistance” is like “route score”. However, a smaller value of road resistance indicates that a route is easier to pass. Road resistance is used to rank alternate routes and DPRP recommends a route to drivers with the lowest value of road resistance. The basic attribute values are collected and normalized. For a given origin–destination (O-D) pair, there may be too many routes to use. Nonetheless, routes that are too long are meaningless to a driver in general. It is thus necessary to use distance control to restrict the number of routes to be considered.
The performance of DPRP can be evaluated in terms of the degree to which the model’s recommended route fits a driver’s idea. Therefore, it is very important whether the weight is appropriate or not. We can directly ask drivers to input their preference, which is the most effective method to obtain weight [27]. However, drivers may not accurately express what they want when setting their preference. In order to reduce this error and increase the speed of calculation, we use big data and a questionnaire method to obtain a driver’s preference when they get confused about the importance of attributes.
Drivers’ requirements for recommended routes are increasing. They are no longer satisfied with just the shortest or fastest route. Different drivers have different requirements to meet their different purposes. For example, some female or elderly drivers may prefer fewer cars and wider roads; while travelers want to drive on a more scenic route. When recommending a route, it is important to consider drivers’ preference, which can increase the utilization rate of the road network and alleviate congestion to a certain extent. Although there have been some studies on driver preferences, the impact attributes considered by most existing studies are not comprehensive enough, and these models have few experiments based on actual road networks. This is the motivation of our study.
The main contributions of this paper can be summarized as follows:
(1)
We propose a new route recommendation model that comprehensively considers the attributes that affect a driver’s choice for a route; and
(2)
We propose an approach to reduce a solution set in which a DPRP model is solvable within an acceptable time range. An algorithm to solve a DPRP model is proposed. Four experiments are performed to verify its performance.
The remainder of this paper is organized as follows. The mathematical model of road resistance for alternative routes is formulated in Section 2. Section 3 proposes three algorithms to solve the model. Section 4 presents the experimental results. Finally, Section 5 concludes this paper.

2. Problem Description and Formulation

In this section, we first elaborate on the DPRP problem we care about and define the parameters. Finally, we describe its solution.

2.1. Problem Description

Drivers may choose a route based on a number of attributes, and it is not always satisfactory to recommend a route according to only one or two attributes, e.g., minimum travel time. Compared with traditional navigation systems and related research, we consider more attributes affecting a driver’s choice, and make a recommended route more in line with the true requirements of a driver.
In order to truly reflect the road conditions in a calculation process, the processed physical quantity is directly used as road resistance, and calculate the route with the lowest value of road resistance and recommend it to a driver. Here, we need to define “segment” and “route”. A segment represents a road between two adjacent intersections and a route means a sequence of segments between an origin and destination.
The main notations in this paper are summarized in Table 1.

2.2. Attributes of Segments and Routes

(1)
Definitions of attributes
Drivers’ choices may be influenced by many attributes, including scenery, radius of curvature, the number of lanes, lane width, distance, congestion, traffic flow, the number of pedestrians and bicycles, congestion rate, cost of time, fuel consumption, toll-fee, traffic lights, intersections, the number of turns and the separation of motor vehicles, and non-motor vehicles. They are defined and explained to facilitate understanding as follows:
  • Scenery (pi,1): its value ranges from zero to ten where 10 denotes the best scenery. The higher, the better.
  • Radius of curvature (pi,2): It indicates the degree of road curvature. The larger, the better.
  • Congestion (pi,6): characterized by traffic queue length that indicates the degree of congestion.
  • Traffic flow (pi,7): the number of vehicles in a segment over its length.
  • The number of pedestrians and bicycles (pi,8): the number of pedestrians and bicycles in a segment over its length.
  • Congestion rate (pi,9): the historical situation of the traffic jam at a fixed time is recorded, and the probability of congestion is computed during that period.
  • The separation of motor vehicles and non-motor vehicles (pi,10): represented by a binary variable. When a segment does not separate motor vehicles and non-motor vehicles, pi,10 = 1; otherwise, pi,10 = 0.
The attributes considered are summarized in Table 2. Some of them need to be computed based on historical data.
(2)
Types of attributes
Those attributes that drivers would like to be as large as possible in an ideal route are called positive ones. Those they prefer to be as small as possible are called negative ones. We have the following classified attributes:
  • Positive ones: scenery (pi,1), radius of curvature (pi,2), the number of lanes (pi,3) and lane width (pi,4).
  • Negative ones: distance (pi,5), congestion (pi,6), traffic flow (pi,7), the number of pedestrians and bicycles (pi,8), congestion rate (pi,9), the separation of motor vehicles and non-motor vehicles (pi,10), cost of time (rm,1), fuel consumption (rm,2), toll fee (rm,3), the number of traffic lights (rm,4), the number of intersections (rm,5) and the number of turns (rm,6).
In this paper, a segment is taken as a basic entity, and the values of each attribute are calculated. But some attributes (such as the number of traffic lights) must be based on a route. Therefore, they are considered under O-D, which are called route attributes. They are: cost of time (rm,1), fuel consumption (rm,2), toll fee (rm,3), the number of traffic lights (rm,4), the number of intersections (rm,5) and the number of turns (rm,6). Other attributes are called segment attributes.
(3)
Processing of attributes
Since route attributes need to be considered based on O-D, we have to discuss them separately. Two attributes sets are represented as two matrices, i.e., P for segment attributes and R for route attributes. P is an I × J matrix, where there are I segments that have J attributes; R is an M × N matrix, where there are M routes each of which has N attributes, i.e.,
P = [pi,j] I×J
R = [rm,n] M×N
Note that in order to reduce the ambiguity of the attributes and avoid subjective influences, only the scores of the scenery are given by experts and user review scores, and the rest of the attributes are all derived from the objective values based on physics, historical data and/or mathematical models.
In the second step, the matrices are normalized such that all involved elements are treated as being unit-free, which allows for easier comparisons across attributes.
q i , j = { p ˇ j   p i , j j ,   p j   is   a   positive   attribute p i , j p ^ j j ,   p j   is   a   negative   attribute
λ m , n = { r ˇ n   r m , n n ,   r n   is   a   positive   attribute r m , n r ^ n n ,   r n   is   a   negative   attribute
p ~ i , j = q i , j   -   q ˇ j q ^ j   -   q ˇ j
r ~ m , n = λ m , n - λ ˇ n λ ^ n - λ ˇ n
After applying (3)–(6) to the matrices P and D, two normalized matrices P ~ and R ~ are obtained where p ~ i , j contain the normalized attribute value for segment i and attribute j; r ~ m , n contain the normalized attribute value for route m and attribute n.
P ~ = p ~ i , j I × J
R ~ = r ~ m , n M × N

2.3. Weight

In some situations, drivers may have specific preferences. This can happen with any trip planning. Drivers need to consider the importance of the attributes that influence their choice in different situations. Among many attributes, we need to determine which are more important to recommend a reasonable route for drivers. For example, if a driver is very concerned with congestion, and is not concerned about the scenery, then the weight of the congestion can be increased and the scenery’s weight can be reduced. The recommended routes should give more weight to “congestion” and less or zero weights to “scenery”.
(1)
Big data-based setting
With the widespread use of the Internet and the popularity of mobile devices equipped with GPS (such as vehicles GPS, cellphones and wearable devices), every time a user using a computer or mobile device leaves the arrays of footprints, which accumulate a huge collection of user data, including social media data, search records and driving trajectories. The technology of the recommendation system based on big data considering preferences has been effectively used in the area of shopping, medical treatment, tourism and other fields. There are also some studies about route planning. A series of data such as the information released by users on social media, shopping search records and historical travel trajectories can be analyzed to give a weight in line with driver’s preference [28,29,30,31,32,33].
DPRP records weight generated by each use and collects evaluation reports of drivers after use. Such data can be used to adjust weight accordingly.
(2)
Driver setting
There is a subset of drivers who are willing to take additional time to provide their preferences. In this case, we require drivers to select the importance of attributes when using a DPRP model to obtain driver preferences directly. Options are shown in Table 3. Here, we take scenery as an example, and other attributes are the same as it. According to the purpose of a trip and personal preference, a driver chooses a corresponding option. If drivers are uncertain about setting certain attributes, they can choose “Default” by which our model automatically sets those attributes, e.g., to allow the users to have partial setting to start their trip. Note that in some cases, different preferences lead to the same route. Each option represents a weight value that indicates the importance of the attribute. The values of each option are as follows:
“Most important”1.0
“Very important”0.8
“Important”0.6
“Slightly important”0.4
“Least important”0.2
“No importance at all”0.0
A driver can directly choose the importance of the attributes, but sometimes people cannot fully express what they want. In this case, DPRP helps drivers make choices when they are unsure. If there is no option that can express drivers’ expectations, they can ask DPRP for help, which is expected to give them an option that matches their preferences. Each time a driver completes a preference setting, a questionnaire is completed. DPRP collects and groups them. The database is continuously expanded as the number of users increases, and then more suitable routes can be provided.

2.4. Driver Preference-Based Route Planning (DPRP) Model

DPRP takes a segment as a basic entity, which can be used to characterize road conditions fundamentally and conform to the actual road condition as much as possible. Calculated values mainly come from the processed attribute values. Only the scenery cannot be objectively evaluated, and as experts and user review scores increase, the impact of subjective evaluations decreases. In order to accurately recommend a preferred route for a driver, it is necessary to classify the attributes that we consider.
(1)
Segment resistance
The segment attributes include scenery (pi,1), radius of curvature (pi,2), the number of lanes (pi,3), lane width (pi,4), distance (pi,5), congestion (pi,6), traffic flow (pi,7), the number of pedestrians and bicycles (pi,8), and rate of congestion (pi,9) and the separation of motor vehicles and non-motor vehicles (pi,10). They are the basic physical properties of a segment and do not change with a route. The segment resistance is calculated as:
U i = j p ~ i , j w j
where i means the i-th segment and j means the j-th segment attribute.
(2)
Route resistance
The route attributes include cost of time (rm,1), fuel consumption (rm,2), toll fee (rm,3), the number of traffic lights (rm,4), the number of intersections (rm,5) and the number of turns (rm,6). These attributes cannot be simply calculated from their segments. They are affected by intersections as well. The model of DPRP is as follows:
Min   V m = i R m U i + R m · n r ~ m , n w n
where m means the m-th route and n means the n-th route attribute. The first item on the left side of (10) represents the sum of the road resistance of all segments belong to m. Rm is the set of all segments belonging to m. We use |Rm|, i.e., the number of segments in route m, to keep the value of segment and route resistance at the same level.

3. Proposed Solution Approach

According to DPRP proposed in Section 2, we can recommend a route that satisfies a driver’s preference. However, the attributes are classified, and the value of the route attribute part cannot be calculated when routes are not determined. In a general road network, there are countless routes from origin to destination. If they are all listed, computing their Vm may take too much time and memory, which is unrealistic and unnecessary.
In order to make a DPRP model solvable, we choose routes that meet some most important conditions to reduce unnecessary work. Distance is one of the most important attributes that affect a driver’s choice. In most cases, a route loses its meaning when the distance is too much beyond the shortest route, even if the other attributes of this route are excellent. Moreover, distance is easy to obtain and compare. Therefore, it is used as a condition for initial screening, i.e., the route exceeding a specified distance value is discarded. Here, we use threshold distance (α) to control the length of a route. We define the coefficient of the threshold distance, denoted as αc, as threshold distance (i.e., the longest acceptable distance) divided by the shortest distance. For example, given the shortest distance = 10 km and αc = 1.3, an acceptable route length is 13 km; i.e., α = 13 km.
Next, we focus on the algorithms to find routes that meet the requirements and give the corresponding time complexity. We propose an integrated algorithm to solve the DPRP model by combining advantages of Algorithms 1 and 2.
Algorithm 1 Removing points and edges that fail the distance requirement
  Input: Origin O, Destination D, Road network G, Threshold distance α
  Output: Set of routes that meet the distance requirement
  • set A ← Dijkstra (G, O, all points out of O)
  • set B ← Dijkstra (G, D, all points out of D)
  • //sets A and B just store the distance value
  • for all points
  •             if Ai + Bi > α
  •                                     delete point i in G//i is not connected to other point
  •             end if
  • end for
  • for all the segment
  •                     if Aj + L_segment(j, k) + Bk > α
  •                                     G(j, k) ← inf
  •                     end if
  •                     if Bj + L_segment(j, k) + Ak > α
  •                                     G(j, k) ← inf
  •                      end if
  • end for
  • find all the routes form O to D in new road network
  • output routes less than α

3.1. Road Network Simplification Strategy

The idea of our first algorithm aims to reduce the size of the road network and delete unnecessary points and edges. Once the route passes these points and edges, the distance of the route over α, which means that these points and edges should not appear in the alternative routes. By deleting these parts, we can avoid accessing routes that exceed α. Its complete procedure is described in Algorithm 1. First, verify points: The shortest distances from each point vi to origin (O) and destination (D) are calculated by using the Dijkstra algorithm, and are stored in data sets A and B. Each point in A and B is correspondingly added, and the results are compared with α. If the result is over α, the point is deleted in the road network. Second, verify edges: the length of an edge is added to the distance between the two points on this edge and compared with α. If the result is over α, the edge is deleted in the road network. Finally, all routes between O and D are found in the processed road network, and the routes are deleted if their total distance exceeds α.
Theorem 3.1.
The asymptotic computational complexity of Algorithm 1 is O(cI-x + 1).
Proof. 
First of all, we summarize the asymptotic complexity of each step in Algorithm 1 in Table 4.
Based on Table 4, we formulate the computational complexity of Algorithm 1 as:
T1 = 2O(I + |ν|log|ν|) + O(|ν| + 2I) + O(cI-x + 1) + O(1)
≈O(cI-x + 1)
where c is the number of connections from an intersection to other intersections that is the maximum in a road network, and x is the number of deleted edges. Algorithm 1 reduces the computational burden by reducing the size of a road network, but deleting these points and edges cannot completely avoid routes whose distance exceeds α. In Step 17, time is wasted on not meeting the distance requirements for a route. □

3.2. Pruning Algorithm

Our pruning algorithm is based on the depth-first search traversal concept. It monitors the distance when accessing a route. Once it finds that the distance exceeds the threshold, it stops visiting the next point and cuts off the routes to be generated. Realized as Algorithm 2, it has the following steps: (1) visit the origin and mark it as being visited; (2) randomly visit the unvisited points connected to the origin and mark as being visited; (3) record the route distance. If the distance is over α, go back to the previous point, otherwise visit the next point randomly that links to the current point; (4) update the distance of this route and compare it with the threshold. This process is repeated until the destination is reached. Output this segment, set the destination as being unvisited, and go back to the previous point. Repeat the above process until all routes are found.
Algorithm 2 Pruning algorithm based on depth-first search for traversal segment of two points
Input: Origin O, Destination D, Road network G, Threshold distance αOutput: Set of routes that meet the distance requirement
  • access origin O, mark O as accessed
  • random access to the point that is connected to O and it is not accessed
  • calculate route distance D
  • if D > α, go back to last point
  • random access to the point that is connected to last point and it is not accessed
  • if D < α and this point is not destination, random access to point
  • repeat step 3–6
  • until access destination D
  • output this route, set D to not accessed, go back to last point
  • random access to the point that is connected to last point and it is not accessed
  • repeat step 3–6
  • until access destination D and It doesn’t repeat the previous routes
  • output this route
  • repeat step 3–13, until find all routes
Theorem 3.2.
In the worst-case, the asymptotic computational complexity of Algorithm 2 is O(cI + 1). In the best-case, its complexity is linear with the number of segments.
Proof. 
The computational complexity of Algorithm 2 needs to be discussed in different cases. (1) In the worst-case, all routes do not exceed the threshold, i.e., no segment is cut out. Algorithm 2 is the same to the traversal algorithm with its complexity equal to the traversal algorithm, O(cI + 1). (2) In the best-case, Algorithm 2 can cut out most of the routes. Hence, we can quickly find the desired routes. Consequently, its complexity is linear with the number of segments. (3) On average, its performance is better than the traversal algorithm but worse than a linear one. □

3.3. Integrated Algorithm

Algorithms 1 and 2 speed up the search for required routes from different aspects. Algorithm 1 reduces the calculation by simplifying the road network and Algorithm 2 removes the invalid sub-routes in a search process. We propose Algorithm 3 that integrates them to improve the performance.
Algorithm 3 Combination of Algorithms 1 and 2
Input: Origin O, Destination D, Road network G, Threshold distance α
Output: Set of routes that meet the distance requirement
  • G ~ ← Algorithm 1 (G, O, D, α)
  • A← Algorithm 2 ( G ~ , O, D, α)
  • output A
Theorem 3.3.
In the worst-case, the asymptotic computational complexity of Algorithm 3 is O(cI-x + 1). In the best-case, its complexity is linear with the number of segments.
Proof. 
The time complexity of Algorithm 3 is similar to that of Algorithm 2 by noting that Algorithm 2 takes algorithm 1’s output network in Algorithm 3. The difference is that in the worst-case, Algorithm 3’s complexity drops to O(cI-x + 1) from Algorithm 2’s.
Algorithm 2 beat Algorithm 1 in most cases to be tested. Algorithm 3’s performance is in general better than Algorithms 1 and 2. Table 5 shows three algorithms’ pros and cons and their time complexity.
Since we use an algorithm to find the shortest and fastest route when we are looking for a route that we want, DPRP can give three results that drivers are interested in after running once, namely, the shortest, fastest and recommended ones considering driver’s preference. □

3.4. Large Road Network Resolution Strategy

When DPRP has to deal with route planning with a large road network, it may take much time. DPRP adopts the strategy of zoning in order to solve it. First, when an O–D pair are very far away, it will divide origin and destination into different areas. Then, it determines a route that connects two areas (usually a freeway or expressway) and this route’s origin and destination are O ‘and D’. DPRP recommends routes between O–O ‘and D–D’. Eventually it will give a driver a route that satisfies requirements. For example, from Guangzhou to Shanghai the expressway between two cities will be invoked as a route connecting the two areas.

4. Experimental Results and Discussions

In this section, we illustrate DPRP via a simple example and then perform four kinds of experiment to evaluate the proposed methods.

4.1. A Simple Example

A simple example is given to introduce how DPRP works. We need to make some assumptions as follows:
(1)
Points and edges to describe a road network are used to represent all intersection’s types and road line patterns, respectively.
(2)
All alleys, aerodrome roads and port roads are ignored.
(3)
Vehicles in a road network are all compact car, occupying a length of 5 m when parked.
(4)
On roads where motor vehicles and non-motor vehicles are separated, the number of non-motor vehicles is considered to be zero.
Figure 1 shows a road network example. The network is an undirected graph consisting of 11 points and 16 edges.
p 1 p 2 p 3 p 4 p 5 p 6 p 7 p 8 p 9 p 10 P = ( 3 2 3 3 5 2 5 2 3 4 1 4 1 3 5 2 300 500 900 1000 2000 1500 1 2 2 4 3 2 3 2 4 3 3 3 2 4 3 2 3.5 4.0 4.0 4.5 4.0 4.0 4.0 3.5 4.5 4.0 4.0 4.0 4.0 4.5 4.0 4.0 300 400 300 400 400 300 400 300 400 400 300 500 300 400 400 500 5 0 5 10 5 10 0 0 15 0 5 0 0 20 5 0 4 / 3 6 / 4 6 / 3 19 / 4 12 / 4 14 / 3 15 / 4 9 / 3 24 / 4 10 / 4 7 / 3 8 / 5 11 / 3 36 / 4 9 / 4 12 / 5 15 / 3 0 8 / 3 0 0 4 / 3 0 0 0 0 0 0 0 0 13 / 4 17 / 5 6 5 8 1 3 4 3 2 3 1 3 1 5 2 5 6 1 0 1 0 0 1 0 0 0 0 0 0 0 0 1 1 ) X 1 - 2 X 1 - 6 X 2 - 3 X 2 - 5 X 3 - 4 X 4 - 5 X 4 - 9 X 5 - 6 X 5 - 8 X 6 - 7 X 7 - 8 X 7 - 11 X 8 - 9 X 8 - 11 X 9 - 10 X 10 - 11
where pa (a = 1, 2, …, 10) is a segment attribute. (b = 1, 2, …, 10; c = 2, 3, …, 11) is the segment number, i.e., a segment from point “b” to point “c”. ∞ is infinity, meaning that the segment is a straight line segment. We assume that the traffic volume in both directions of a segment is equal in order to simplify our illustration.
In this example, origin is point 1 and destination is point 11 and (10) illustrates the attributes of segments. The shortest route from point 1 to point 11 is “1-6-7-11”, the distance is 1300 m. Setting αc = 1.2 (i.e., a route exceeding 1.2 times the shortest route is not considered), and using the method in Section 3 to obtain a set of alternative routes. First, according to Algorithm 1, points “3”, “4”, “9”, “10” and edges “2-3”, “3-4”, “4-5”, “4-9”, “8-9”, “9-10” are unavailable. The road network can be simplified as shown in Figure 2. According to Algorithm 2, the routes meeting the constraints can be found. There are four alternative routes, namely, “1-2-5-8-11”, “1-6-5-8-11”, “1-6-7-11”, and “1-6-7-8-11”. Their route attributes are as follows:
r 1 r 2 r 3 r 4 r 5 r 6 R = ( 3.45 3.75 2.65 3.45 1.11 1.18 0.74 1.11 0 0 15 5 2 3 1 2 3 3 2 3 1 2 1 2 )
where ra (a = 1, 2, …, 6) is the route attributes (corresponding to Table 2).
P ~ and R ~ are calculated according to (3)–(6). Table 6 presents a group of weights that are the average values of preferences from 10 men who are 20–30 years old. We use a questionnaire survey to obtain their preference data, i.e.,
P ~ = 0.17 0.00 1.00 1.00 0.00 0.25 0.00 0.95 0.71 1 0.38 0.00 0.33 0.44 0.50 0.00 0.02 0.00 0.57 0 0.17 1.00 0.33 0.44 0.00 0.25 0.09 0.51 1.00 1 0.17 0.00 0.00 0.00 0.50 0.50 0.45 0.00 0.00 0 0.00 0.00 0.11 0.44 0.50 0.25 0.22 0.00 0.29 0 0.38 0.60 0.33 0.44 0.00 0.50 0.43 0.25 0.43 1 0.00 0.00 0.11 0.44 0.50 0.00 0.32 0.00 0.29 0 0.38 0.00 0.33 1.00 0.00 0.00 0.22 0.00 0.14 0 0.17 0.33 0.00 0.00 0.50 0.75 0.61 0.00 0.29 0 0.06 0.00 0.11 0.44 0.50 0.00 0.15 0.00 0.00 0 1.00 0.30 0.11 0.44 0.00 0.25 0.13 0.00 0.29 0 0.06 0.15 0.11 0.44 1.00 0.00 0.03 0.00 0.00 0 1.00 0.00 0.33 0.44 0.00 0.00 0.30 0.00 0.57 0 0.17 0.00 0.00 0.00 0.50 1.00 1.00 0.00 0.14 0 0.00 0.00 0.11 0.44 0.50 0.25 0.12 0.54 0.57 1 0.38 0.20 0.33 0.44 1.00 0.00 0.14 0.57 0.71 1
R ~ = 0 . 73 0 . 85 0 . 00 0 . 50 1 . 00 0 . 00 1 . 00 1 . 00 0 . 00 1 . 00 1 . 00 1 . 00 0 . 00 0 . 00 1 . 00 0 . 00 0 . 00 0 . 00 0 . 73 0 . 85 0 . 33 0 . 50 1 . 00 1 . 00
Take one of the routes, i.e., 1-6-7-11, as an example to calculate its road resistance. The calculation process is as follows:
V1-6-7-11 =
(0.38 × 0.36 + 0 × 0.28 + 0.33 × 0.56 + 0.44 × 0.8 + 0.5 × 0.4 + 0 × 0.96 + 0.02 × 0.8 + 0 × 0.68 + 0.57 × 0.82
+ 0 × 0.8) +
(0.06 × 0. 36 + 0 × 0.28 + 0.11 × 0.56 + 0.44 × 0.8 + 0.5 × 0.4 + 0 × 0.96 + 0.15 × 0.8 + 0 × 0.68 + 0 × 0.82 +
0 × 0.8) + (0.06 × 0.36 + 0.15 × 0.28 + 0.11 × 0.56 + 0.44 × 0.8 + 1 × 0.4 + 0 × 0.96 + 0.03 × 0.8 + 0 × 0.68 +
0 × 0.82 + 0 × 0.8) +
(0 × 1 + 0 × 0.68 + 1 × 0.2 + 0 × 0.6 + 0 × 0.6 + 0 × 0.74) × 3 = 3.6134
We can use the same method to get other routes’ road resistance (placed in Appendix A). The one with the smallest value is recommended to the driver.

4.2. Case Study

In this section, an instance is used to verify the performance of the model in actual situations: route planning in the Coloane-Taipa, Macau. The map of that area can be viewed in Figure 2. The area comprises three bridges connecting the Peninsula of Macao, some parts with dense and regular street patterns, and some sparsely populated area.
The algorithms devised in this paper are implemented in MATLAB R2015b. We conduct the experiments on a laptop running Microsoft Windows 10 with an Intel/2.5 GHz Core (TM) i5-7300HQ CPU, 8 GB of RAM, and 1 TB of hard disk.
In order to facilitate the description, the road network is simplified to a point-and-line diagram according to our assumptions, consisting of 82 points and 135 edges (as shown in Figure 3. In order to evaluate our algorithms well, four pairs of O–D are selected for the experiment, which are 1→75, 4→74, 7→82 and 48→61, respectively. They represent routes from northwest to southeast, north to south, northeast to southwest and west to east. Five different αc are used (αc = 1.10, 1.15, 1.20, 1.25 and 1.3). The weights are the same as those in Section 4.1. Four different experiments are performed to evaluate the performance of DPRP, as given below.
  • Experiment 1: The first experiment is about the comparison of the performance of the three algorithms. Since the main time cost of DPRP is to find the set of alternative routes and the subsequent work is the same, only the time cost of each algorithm is compared.
  • Experiment 2: When different thresholds are set, the segment set changes, and the influence of different thresholds on the recommended route is compared.
  • Experiment 3: It is about comparing the recommended routes in different traffic situations.
  • Experiment 4: The model’s response when an accident occurs.
(1)
Algorithm performance
To evaluate the performance of algorithms in term of the computational efficiency, we compare the K-shortest algorithm and integrated algorithm under four pairs of O–D and different αc [34,35,36]. The K-shortest algorithm also meets the requirements of DPRP. It can give routes that meet the requirements and calculate the values of route attributes. Since the integrated algorithm combines advantages of Algorithms 1 and 2, we just compare it with the K-shortest algorithm. The results are reported in Figure 4. Here, we can see that as the threshold increases, the time required to find routes that meet the requirements also increases. Because a larger threshold distance means more acceptable routes in a given O–D pair of a road network, more computation is required. Considering the four O–D pairs, the performance of integrated algorithm is better. The number of alternative routes that meet the requirements is shown in Table 7. From it, we can find that when there are many alternative routes, the integrated algorithm spends less time than the K-shortest algorithm.
In Figure 5a, the time cost of K-shortest algorithm is significantly less than the integrated algorithm when αc = 1.3. In order to verify our conclusion, an additional experiment when αc = 1.4 is added. The results show that the K-shortest algorithm tales 14,714 s and the integrated algorithm takes 2656 s. The performance of the integrated algorithm is better than the K-shortest algorithm when there are many alternative routes. The K-shortest algorithm needs some time to sort routes, while it is not required for DPRP. In some special cases, the performance of the K-shortest algorithm is better than the integrated algorithm, e.g., when there are only a few points and paths that can be ignored in a road network. However, as the number of routes increases, the performance of the K-shortest algorithm becomes worse.
The performance of the K-shortest algorithm is the worst in Figure 5b, because in 4→74 when αc = 1.3 there are the most alternative routes in all cases we consider. In Figure 5d, due to the small number of routes, the difference in time is not obvious.
(2)
Impact of distance threshold on the recommended route
This sub-section presents the influence of different αc on planning a route. It is determined from the result in Table 8 that a planned route may change with αc, but the influence is not significant. The main reason is that distance is the limiting condition; while it is also considered as an important attribute by most people. It also affects other attributes such as time and the number of intersections. The results of 1→75 and 4→74 do not change, 7→82 and 48→61 are stable when αc = 1.25. Due to the importance of the distance attribute, it is very unlikely to obtain a new result even if αc continues to increase. Moreover, if αc is too large, the result may not be accepted, which means that a driver needs to travel too much extra distance.
As α increases, we obtain more alternative routes to find a recommended route. However, we have to spend more time finding them and the cost usually grows exponentially which can be a challenging issue for a large network. Considering the accuracy of the recommendation and the computational cost, αc is set to 1.3 in the subsequent experiments.
(1)
Impact of different traffic volume on the recommended route
In Table 9, we test DPRP under two traffic volumes. The data used in time bucket 1 is the same as before. Road sections “37-46-49-48”, “50-58-59” and “70-72-73” have greater traffic volume in time bucket 2. We see that DPRP gives different routes due to increased traffic volume on these road sections. Some new routes avoid the segment “70-72-73” in 1→75 and 4→74. In 7→82, the road section is changed from “31-37-46-49-48-55-62-70” to “31-36-79-45-50-58-57-56-63-70”.
(2)
Impact of close segments on the recommended route
In urban roads, sometimes a certain segment may be closed or seriously congested due to construction or an accident. It costs extra time to pass through these road sections. After obtaining relevant information, the recommended route should be updated immediately to give feedback to a driver. For the case that there are closed roads in a road network, we calculate a new route by our model and compare it with the previous route, which is provided in Table 10 We assume that the closed segments are 47-48 and 50-58. It is clear that DPRP can provide another optimal route for a driver to avoid the closed segment when it receives the information of the closed segment.

4.3. Comparing Existing Approaches

Since the results of route planning based on driver preference are subjective to a certain extent, it is difficult to answer which approach offers the best route in practice. At the same time, the attributes considered in different approaches are different. These approaches cannot be compared directly, but we can compare them in other ways. In this study, we compare the proposed DPRP to a driver-centric route guidance system (DCRGS) [12] and dynamic route search method (DRSM) [19]. The comparison results are shown in Table 11.
It can be observed from Table 11 that the proposed DPRP considers 16 attributes which affect drivers’ choices, while the compared approaches just consider 6-7 attributes. In our opinion, attributes should be considered as comprehensively as possible in a model. If drivers are not interested in some attributes, they can ignore these attributes by setting the weight to “No importance at all” when using the proposed navigation systems. However, if we do not consider comprehensively, a model may not be able to meet the demands of some drivers.
Comparing to the existing approaches, the proposed DPRP is more friendly to drivers. It gives drivers more choices. With the help of big data, drivers can start to use it directly or after setting their preferences. DCRGS uses the way in which drivers set preferences. However, it needs drivers to set up completely on their own, which is inconvenient to drivers. DRSM does not require drivers to set any preference because it does not consider the impact of weights on its routing results.
The proposed DPRP is experimented with a real road network. The size of the road network is 82 points and 135 edges. DCRGS is tested on a small and simulated road network, so we cannot evaluate their performance in the actual large road network. DRSM is experimented on in a real road network with 7186 points and 22,813 edges. Because it uses a heuristic algorithm to solve the model, its computation time can be accepted in a large road network. However, it does not consider the weight of attributes; it uses the fuzzy-AHP (analytic hierarchy process) method to obtain relevant parameters, which may deliver the results cannot be accepted by drivers.

5. Conclusions

In this paper, a new route navigation model based on driver preference is proposed. Unlike most commercially deployed navigation systems, DPRP considers more attributes that affect a driver’s choice, and combines them to recommend the most suitable routes for a driver. An algorithm is developed to solve DPRP, and four experiments are conducted. Their time cost, the influence of threshold distance, traffic volume, and closed segments on route planning, are adopted to test DPRP performance. Experimental results verify its feasibility and suitability.
This work has some limitations. The quality of results may be different for different drivers and it is difficult to express this quantitatively. The method of reducing the set of solutions is not suitable for very large road networks. As future work, we plan to find a method for evaluating a DPRP model and other models based on driver preferences for such networks. Heuristic algorithms to handle them hierarchically should be developed [37,38,39,40,41,42,43,44,45,46,47].

Author Contributions

Conceptualization, R.W. and M.Z.; methodology, R.W. and K.G.; software, R.W. and A.A.; validation, R.W., M.Z. and K.G.; formal analysis, R.W. and M.J.R.; investigation, A.A.; resources, M.J.R.; data curation, R.W.; writing—original draft preparation, R.W., M.Z. and K.G.; writing—review and editing, R.W., M.Z. and K.G.; supervision, M.Z.; project administration, M.Z. All authors have read and agreed to the published version of the manuscript.

Funding

This research was in part supported by FDCT (Fundo para o Desenvolvimento das Ciencias e da Tecnologia) under Grant No. 0047/2021/A1 and by Institutional Fund Projects under grant no (IFPNC-001-135-2020). Therefore, authors gratefully acknowledge technical and financial support from the Ministry of Education and King Abdulaziz University, Jeddah, Saudi Arabia.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data available in a publicly accessible repository.

Conflicts of Interest

No conflict of interest.

Appendix A

V1-2-5-8-11 =
(0.17 × 0.36 + 0 × 0.28 + 1 × 0.56 + 1 × 0.8 + 0 × 0.4 + 0.25 × 0.96 + 0 × 0.8 + 0.95 × 0.68 + 0.71
× 0.82 + 1 × 0.8) +
(0.17 × 0. 36 + 0 × 0.28 + 0 × 0.56 + 0 × 0.8 + 0.5 × 0.4 + 0.5 × 0.96 + 0.45 × 0.8 + 0 × 0.68 + 0 ×
0.82 + 0 × 0.8) +
(0.17 × 0.36 + 0.33 × 0.28 + 0 × 0.56 + 0×0.8 + 0.5×0.4 + 0.75 × 0.96 + 0.61 × 0.8 + 0 × 0.68 + 0.29
× 0.82 + 0 × 0.8) +
(0.17 × 0.36 + 00 × 0.28 + 0 × 0.56 + 0 × 0.8 + 0.5 × 0.4 + 1 × 0.96 + 1 × 0.8 + 0 × 0.68 + 0.14 × 0.82
+ 0 × 0.8) +
(0.73 × 1 + 0.85 × 0.68 + 0 × 0.2 + 0.5 × 0.6 + 1 × 0.6 + 0 × 0.74) × 4 = 17.558
V1-6-5-8-11 =
(0.38 × 0.36 + 0 × 0.28 + 0.33 × 0.56 + 0.44 × 0.8 + 0.5 × 0.4 + 0 × 0.96 + 0.02 × 0.8 + 0 × 0.68 +
0.57 × 0.82 + 0 × 0.8) +
(0.38 × 0. 36 + 0 × 0.28 + 0.33 × 0.56 + 1 × 0.8 + 0 × 0.4 + 0 × 0.96 + 0.22 × 0.8 + 0 × 0.68 + 0.14 ×
0.82 + 0 × 0.8) +
(0.17 × 0.36 + 0.33 × 0.28 + 0 × 0.56 + 0 × 0.8 + 0.5 × 0.4 + 0.75 × 0.96 + 0.61 × 0.8 + 0 × 0.68 + 0
× 0.29 + 0 × 0.8) +
(0.17 × 0.36 + 00 × 0.28 + 0 × 0.56 + 0 × 0.8 + 0.5 × 0.4 + 1 × 0.96 + 1 × 0.8 + 0 × 0.68 + 0.14 × 0.
+ 0 × 0.8) +
(1 × 1 + 1 × 0.68 + 0 × 0.2 + 1 × 0.6 + 1 × 0.6 + 1 × 0.74) × 3 = 20.947
V1-6-7-8-11 =
(0.38 × 0.36 + 0 × 0.28 + 0.33 × 0.56 + 0.44 × 0.8 + 0.5 × 0.4 + 0 × 0.96 + 0.02 × 0.8 + 0 × 0.68 +
0.57 × 0.82 + 0 × 0.8) +
(0.06 × 0. 36 + 0 × 0.28 + 0.11 × 0.56 + 0.44 × 0.8 + 0.5 × 0.4 + 0 × 0.96 + 0.15 × 0.8 + 0 × 0.68 + 0
× 0.82 + 0 × 0.8) +
(1 × 0.36 + 0.3 × 0.28 + 0.11 × 0.56 + 0.44 × 0.8 + 0 × 0.4 + 0.25 × 0.96 + 0.13 × 0.8 + 0 × 0.68 + 0
× 0.29 + 0 × 0.8) +
(0.17 × 0.36 + 00 × 0.28 + 0 × 0.56 + 0 × 0.8 + 0.5 × 0.4 + 1 × 0.96 + 1 × 0.8 + 0 × 0.68+0.14 ×
0.82 + 0 × 0.8) +
(0.73 × 1 + 0.85 × 0.68 + 0.33 × 0.2 + 0.5 × 0.6 + 1 × 0.6 + 1 × 0.74) × 3 = 17.5058
2.
The road-maps corresponding to the data in Table 8, Table 9 and Table 10.
Figure A1. (a) The route from points 1 to 75. (b) The route from points 4 to 74. (c) The route from points 7 to 82. (d) The route from points 48 to 61.
Figure A1. (a) The route from points 1 to 75. (b) The route from points 4 to 74. (c) The route from points 7 to 82. (d) The route from points 48 to 61.
Sensors 22 00011 g0a1
Figure A2. Under different traffic volume, (a) The route from points 1 to 75. (b) The route from points 4 to 74. (c) The route from points 7 to 82. (d) The route from points 48 to 61.
Figure A2. Under different traffic volume, (a) The route from points 1 to 75. (b) The route from points 4 to 74. (c) The route from points 7 to 82. (d) The route from points 48 to 61.
Sensors 22 00011 g0a2
Figure A3. Given some close segments, (a) The route from points 1 to 75. (b) The route from points 4 to 74. (c) The route from points 7 to 82. (d) The route from points 48 to 61.
Figure A3. Given some close segments, (a) The route from points 1 to 75. (b) The route from points 4 to 74. (c) The route from points 7 to 82. (d) The route from points 48 to 61.
Sensors 22 00011 g0a3

References

  1. Park, K.; Bell, M.; Kaparias, I.; Bogenberger, K. Learning user preferences of route choice behaviour for adaptive route guidance. IET Intell. Transp. Syst. 2007, 1, 159–166. [Google Scholar] [CrossRef]
  2. Ning, Z.; Hu, X.; Chen, Z.; Zhou, M.; Hu, B.; Cheng, J.; Obaidat, M.S. A Cooperative Quality-Aware Service Access System for Social Internet of Vehicles. IEEE Internet Things J. 2018, 5, 2506–2517. [Google Scholar] [CrossRef]
  3. Ghahramani, M.; Zhou, M.; Hon, C.T. Extracting Significant Mobile Phone Interaction Patterns Based on Community Structures. IEEE Trans. Intell. Transp. Syst. 2018, 20, 1031–1041. [Google Scholar] [CrossRef]
  4. Qi, L.; Zhou, M.; Luan, W. A dynamic road incident information delivery strategy to reduce urban traffic congestion. IEEE/CAA J. Autom. Sin. 2018, 5, 934–945. [Google Scholar] [CrossRef]
  5. Wang, C.; Xie, Z.; Shao, L.; Zhang, Z.; Zhou, M. Estimating Travel Speed of a Road Section Through Sparse Crowdsensing Data. IEEE Trans. Intell. Transp. Syst. 2018, 20, 3486–3495. [Google Scholar] [CrossRef]
  6. Pang, G.; Takabashi, K.; Yokota, T.; Takenaga, H. Adaptive route selection for dynamic route guidance system based on fuzzy-neural approaches. IEEE Trans. Veh. Technol. 1999, 48, 2028–2041. [Google Scholar] [CrossRef]
  7. Yang, Z.-X.; Zhu, M.-H. A Dynamic Prediction Model of Real-Time Link Travel Time Based on Traffic Big Data. In Proceedings of the 2019 International Conference on Intelligent Transportation, Big Data & Smart City (ICITBS), Changsha, China, 12–13 January 2019; pp. 330–333. [Google Scholar]
  8. Yang, Q.; Liu, J.; Guo, H.; Zeng, X.; Hu, W. A Novel Design of Information Collection System for Vehicles for Real-time Monitoring. In Proceedings of the 2019 14th IEEE Conference on Industrial Electronics and Applications (ICIEA), Xi’an, China, 19–21 June 2019; pp. 246–249. [Google Scholar]
  9. Lin, S.-F.; Hsieh, N.-T.; Jiang, Y.-L.F.; Hsieh, Y.-C. The studies on Automated Road Safety Monitoring System and Real-Time Traffic Reporting System of an Automatic Vehicle. In Proceedings of the 2019 International Automatic Control Conference (CACS), Keelung, Taiwan, 13–16 November 2019; pp. 1–6. [Google Scholar]
  10. Hao, Z.; Jiming, Y.; Hongzhen, Y.; Chen, H. Transmission Tower Monitoring System Based on Beidou RTK Precise Locating. In Proceedings of the 2019 IEEE 3rd Information Technology, Networking, Electronic and Automation Control Conference (ITNEC), Chengdu, China, 15–17 March 2019; pp. 2298–2302. [Google Scholar]
  11. Ameddah, M.A.; Das, B.; Almhana, J. Cloud-Assisted Real-Time Road Condition Monitoring System for Vehicles. In Proceedings of the 2018 IEEE Global Communications Conference (GLOBECOM), Abu Dhabi, United Arab Emirates, 9–13 December 2018; pp. 1–6. [Google Scholar]
  12. Abdelhamid, S.; Elsayed, S.A.; AbuAli, N.; Hassanein, H.S. Driver-Centric Route Guidance. In Proceedings of the 2016 IEEE Global Communications Conference (GLOBECOM), Washington, DC, USA, 4–8 December 2016; pp. 1–6. [Google Scholar]
  13. Maher, M. A comparison of the use of the cell transmission and platoon dispersion models in TRANSYT 13. Transp. Plan. Technol. 2011, 34, 71–85. [Google Scholar] [CrossRef]
  14. He, Z.; Zheng, L.; Guan, W. A simple nonparametric car-following model driven by field data. Transp. Res. Part B Methodol. 2015, 80, 185–201. [Google Scholar] [CrossRef]
  15. El-Sayed, H.; Thandavarayan, G. Congestion Detection and Propagation in Urban Areas Using Histogram Models. IEEE Internet Things J. 2018, 5, 3672–3682. [Google Scholar] [CrossRef]
  16. Nadi, S.; Delavar, M. Multi-criteria, personalized route planning using quantifier-guided ordered weighted averaging operators. Int. J. Appl. Earth Obs. Geoinf. 2011, 13, 322–335. [Google Scholar] [CrossRef]
  17. Pahlavani, P.; Delavar, M.R. Multi-criteria route planning based on a driver’s preferences in multi-criteria route selection. Transp. Res. Part C Emerg. Technol. 2014, 40, 14–35. [Google Scholar] [CrossRef]
  18. Teng, L.; Tian, J.; Izumi, T. A Proposal of Dynamic Route Search Method to Consider the Individual Driver Preferences. In Proceedings of the 2019 IEEE Symposium Series on Computational Intelligence (SSCI), Xiamen, China, 6–9 December 2019; pp. 1226–1232. [Google Scholar]
  19. Ntakolia, C.; Iakovidis, D.K. A swarm intelligence graph-based pathfinding algorithm (SIGPA) for multi-objective route planning. Comput. Oper. Res. 2021, 133, 105358. [Google Scholar] [CrossRef]
  20. Dugani, S.V.; Dixit, S.; Belur, M. Automated Adaptive and SequentialRecommendation of Travel Route. In Proceedings of the 2017 International Conference on Computing Methodologies and Communication (ICCMC), Erode, India, 18–19 July 2017; pp. 285–288. [Google Scholar]
  21. Liu, X.; Ma, Y.; Feng, Y.; Tang, H.; Dai, Z. CGSPA: Comprehensive Group Similarity Preference Aggregation Algorithm for Group Itinerary Recommendation System. In Proceedings of the 2019 IEEE 10th Annual Information Technology, Electronics and Mobile Communication Conference (IEMCON), Vancouver, BC, Canada, 17–19 October 2019; pp. 750–756. [Google Scholar]
  22. Dong, W.; Yi, C.; Kai, Y. Hybrid recommendation algorithm based on trust relationship and user preference. In Proceedings of the 2017 7th IEEE International Conference on Electronics Information and Emergency Communication (ICEIEC), Macau, China, 21–23 July 2017; pp. 429–433. [Google Scholar] [CrossRef]
  23. Jung, J.; Park, S. Route Recommendation based on Dynamic User Preference on Road Networks. J. KIISE 2019, 46, 77–85. [Google Scholar] [CrossRef]
  24. Papinski, D.; Scott, D.; Doherty, S.T. Exploring the route choice decision-making process: A comparison of planned and observed routes obtained using person-based GPS. Transp. Res. Part F Traffic Psychol. Behav. 2009, 12, 347–358. [Google Scholar] [CrossRef]
  25. Fujii, S.; Kitamura, R.; Nagao, M.; Doi, Y. An experimental analysis of intelligibility and efficiency of in-vehicle route guidance system displays. Transportation 2009, 36, 779–786. [Google Scholar] [CrossRef]
  26. Kashevnik, A.; Lashkov, I.; Teslya, N. Driver Intelligent Support System in Internet of Transportation Things: Smartphone-Based Approach. In Proceedings of the 2019 14th Annual Conference System of Systems Engineering (SoSE), Anchorage, AK, USA, 19–22 May 2019; pp. 170–175. [Google Scholar]
  27. Sadeghi-Niaraki, A.; Kim, K. Corrigendum “Ontology based personalized route planning system using a multi-criteria decision making approach”. Experts Systems with Applications 36 (2P1) (2009) (1695–1705). Expert Syst. Appl. 2009, 36, 9604. [Google Scholar] [CrossRef]
  28. Raj, S.D. Automated service recommendation with preference awareness: An application of colaborative filtering approach in big data analytics. In Proceedings of the 2017 2nd International Conference on Communication and Electronics Systems (ICCES), Coimbatore, India, 19–20 October 2017; pp. 766–769. [Google Scholar]
  29. Li, M.; Li, X.; Yin, J. TORD Problem and Its Solution Based on Big Trajectories Data. IEEE Trans. Intell. Transp. Syst. 2016, 17, 1666–1677. [Google Scholar] [CrossRef]
  30. Jiang, S.; Qian, X.; Mei, T.; Fu, Y. Personalized Travel Sequence Recommendation on Multi-Source Big Social Media. IEEE Trans. Big Data 2016, 2, 43–56. [Google Scholar] [CrossRef]
  31. Li, C.; He, M.; Qaosar, M.; Ahmed, S.; Morimoto, Y. Capturing Temporal Dynamics of Users’ Preferences from Purchase History Big Data for Recommendation System. In Proceedings of the 2018 IEEE International Conference on Big Data (Big Data), Seattle, WA, USA, 10–13 December 2018; pp. 5372–5374. [Google Scholar] [CrossRef]
  32. Lv, Y.; Chen, Y.; Zhang, X.; Duan, Y.; Li, N.L. Social media based transportation research: The state of the work and the networking. IEEE/CAA J. Autom. Sin. 2017, 4, 19–26. [Google Scholar] [CrossRef]
  33. Torre-Bastida, A.I.; Del Ser, J.; Laña, I.; Ilardia, M.; Bilbao, M.N.; Campos-Cordobés, S. Big Data for transportation and mobility: Recent advances, trends and challenges. IET Intell. Transp. Syst. 2018, 12, 742–755. [Google Scholar] [CrossRef]
  34. Yen, J.Y. Finding the KShortest Loopless Paths in a Network. Manag. Sci. 1971, 17, 712–716. [Google Scholar] [CrossRef]
  35. Scano, G.; Huguet, M.-J.; Ngueveu, S.U. Adaptations of k-shortest path algorithms for transportation networks. In Proceedings of the 2015 International Conference on Industrial Engineering and Systems Management (IESM), Seville, Spain, 21–23 October 2015; pp. 663–669. [Google Scholar]
  36. Liu, H.; Jin, C.; Yang, B.; Zhou, A. Finding Top-k Shortest Paths with Diversity. IEEE Trans. Knowl. Data Eng. 2017, 30, 488–502. [Google Scholar] [CrossRef]
  37. Qingtian, H.; Wenjing, C.; Jia, C. Research of Route Planning Based on Genetic Algorithm. In Proceedings of the 2012 International Conference on Computer Science and Electronics Engineering, Hangzhou, China, 23–25 March 2012; Volume 2, pp. 199–202. [Google Scholar]
  38. Zhai, S.; Bi, Y.; Xu, J.; Shao, J. Research on multi-objective intelligent planning algorithm. In Proceedings of the 2016 First IEEE International Conference on Computer Communication and the Internet (ICCCI), Wuhan, China, 13–15 October 2016; pp. 444–448. [Google Scholar]
  39. Yao, Y.; Peng, Z.; Xiao, B. Parallel Hyper-Heuristic Algorithm for Multi-Objective Route Planning in a Smart City. IEEE Trans. Veh. Technol. 2018, 67, 10307–10318. [Google Scholar] [CrossRef]
  40. Lee, M.-G.; Yu, K.-M. Dynamic Path Planning Based on an Improved Ant Colony Optimization with Genetic Algorithm. In Proceedings of the 2018 IEEE Asia-Pacific Conference on Antennas and Propagation (APCAP), Auckland, New Zealand, 5–8 August 2018; pp. 1–2. [Google Scholar]
  41. Jin, X.; Qin, H.; Zhang, Z.; Zhou, M.; Wang, J. Planning of Garbage Collection Service: An Arc-Routing Problem with Time-Dependent Penalty Cost. IEEE Trans. Intell. Transp. Syst. 2021, 22, 2692–2705. [Google Scholar] [CrossRef]
  42. Wang, J.; Sun, Y.; Zhang, Z.; Gao, S. Solving multitrip pickup and delivery problem with time windows and manpower planning using multiobjective algorithms. IEEE/CAA J. Autom. Sin. 2020, 7, 1134–1153. [Google Scholar] [CrossRef]
  43. Wang, L.; Lu, J. A memetic algorithm with competition for the capacitated green vehicle routing problem. IEEE/CAA J. Autom. Sin. 2019, 6, 516–526. [Google Scholar] [CrossRef]
  44. Wei, G.; Wu, Q.; Zhou, M. A Hybrid Probabilistic Multiobjective Evolutionary Algorithm for Commercial Recommendation Systems. IEEE Trans. Comput. Soc. Syst. 2021, 8, 589–598. [Google Scholar] [CrossRef]
  45. Yuan, H.; Zhou, M.; Liu, Q.; Abusorrah, A. Fine-grained and arbitrary task scheduling for heterogeneous applications in distributed green clouds. IEEE/CAA J. Autom. Sin. 2020, 7, 1–13. [Google Scholar] [CrossRef]
  46. Yuan, H.; Zhou, M. Profit-Maximized Collaborative Computation Offloading and Resource Allocation in Distributed Cloud and Edge Computing Systems. IEEE Trans. Autom. Sci. Eng. 2021, 18, 1277–1287. [Google Scholar] [CrossRef]
  47. Zhang, Z.; Zhou, M.; Wang, J. Construction-Based Optimization Approaches to Airline Crew Rostering Problem. IEEE Trans. Autom. Sci. Eng. 2019, 17, 1–11. [Google Scholar] [CrossRef]
Figure 1. Simple example of a road network.
Figure 1. Simple example of a road network.
Sensors 22 00011 g001
Figure 2. A simplified road network.
Figure 2. A simplified road network.
Sensors 22 00011 g002
Figure 3. The Coloane-Taipa map.
Figure 3. The Coloane-Taipa map.
Sensors 22 00011 g003
Figure 4. Test network of Coloane-Taipa area.
Figure 4. Test network of Coloane-Taipa area.
Sensors 22 00011 g004
Figure 5. Computational time for the route from (a) points 1 to 75. (b) points 4 to 74. (c) points 7 to 82. (d) points 48 to 61.
Figure 5. Computational time for the route from (a) points 1 to 75. (b) points 4 to 74. (c) points 7 to 82. (d) points 48 to 61.
Sensors 22 00011 g005aSensors 22 00011 g005b
Table 1. Definition of relative parameters.
Table 1. Definition of relative parameters.
SymbolDescription
VmThe value of road resistance of the m-th route
UiThe value of road resistance of the i-th segment
wj and wnWeight of the j-th and n-th attributes, respectively
pi,jThe value of the i-th segment’s j-th attribute
PAttribute matrix = [pi,j]I × J
p ˇ j The minimum of the j-th attribute
p ^ j The maximum of the j-th attribute
qi,jRatio value of the i-th segment’s j-th attribute
q ˇ j The minimum ratio value of the j-th attribute
q ^ j The maximum ratio value of the j-th attribute
p ~ i j Value normalized to [0, 1] of the i-th segment’s j-th attribute
P ~ Attribute matrix = [ p ~ i j ] I × J
Rm,nThe value of the m-th route’s n-th attribute
RAttribute matrix = [rm,n] M × N
r ˇ n The minimum ratio value of the n-th attribute
r ^ n The maximum ratio value of the n-th attribute
λ m,nRatio value of the m-th route’s n-th attribute
λ ˇ n The minimum ratio value of the n-th attribute
λ ^ n The maximum ratio value of the n-th attribute
r ~ m , n Value normalized to [0, 1] of the m-th route’s n-th attribute
R ~ Attribute matrix = [ r ~ i j ] M × N
RmThe set of segments of the m-th route
| R m | The number of segments of the m-th route
IThe number of segments
JThe number of segment attributes
MThe number of routes
NThe number of route attributes
αThreshold distance
αcThe coefficient of the threshold distance
LiThe length of segment i
Table 2. Definitions of attributes.
Table 2. Definitions of attributes.
SymbolDescriptionType
pi,1Scenery+
pi,2Radius of curvature+
pi,3The number of lanes+
pi,4Lane width+
pi,5Distance-
pi,6Congestion-
pi,7Traffic flow-
pi,8The number of pedestrians and bicycles-
pi,9Congestion rate-
pi,10The separation of motor vehicles and non-motor vehicles-
rm,1Cost of time-
rm,2Fuel consumption-
rm,3Toll fee-
rm,4The number of traffic lights-
rm,5The number of intersections-
rm,6The number of turns-
+: Positive ones, -: Negative ones. i means the i-th segment, m means the m-th route.
Table 3. Selection interface allowing drivers to select their preferences.
Table 3. Selection interface allowing drivers to select their preferences.
Most ImportantVery ImportantImportantSlightly ImportantLeast ImportantNo Importance at AllDefault
Scenery
Table 4. Complexity Analysis of Algorithm 1.
Table 4. Complexity Analysis of Algorithm 1.
OperationComplexity
set A ← Dijkstra (G, O, all points out of O)O(I + |v|log|v|)
set B ← Dijkstra (G, D, all points out of D)O(I + |v|log|v|)
//sets A and B just store the distance-
for all pointsO(ν)
if Ai + Bi > α-
delete point i in GO(1)
end if-
end for-
for all the segmentO(I)
if Aj + L_segment(j, k) + Bk > α-
G(j, k) ← infO(1)
end if-
if Bj + L_segment(j, k) + Ak > α-
G(j, k) ← infO(1)
end if-
end for-
find all the routes form O to DO(cI-x + 1)
output routes less than αO(1)
Table 5. Pros and Cons of Three Algorithms.
Table 5. Pros and Cons of Three Algorithms.
AlgorithmsPros and ConsTime Complexity
Algorithm 1It can effectively simplify a road network and make easier to find routes, but it wastes time on invalid routes.O(cI-x + 1)
Algorithm 2It can prevent the production of non-conforming route in time, but its performance is affected by a road network.Worst-case, O(cI + 1);
Best-case, O(I)
Algorithm 3It integrates the advantages of algorithm 1 and 2 in different aspects. It has better performance.Worst-case, O(cI-x + 1);
Best-case, O(I)
Table 6. The weights of attributes.
Table 6. The weights of attributes.
AttributeWeight
SceneryNot important (0.36)
Radius of curvatureDo not consider it (0.28)
The number of lanesImportant (0.56)
Lane widthImportant (0.8)
DistanceNot important (0.4)
CongestionMost important (0.96)
Traffic flowMost important (0.8)
The number of pedestrians and bicyclesVery Important (0.68)
Rate of congestionVery Important (0.82)
Separating motor vehicles and non-motor vehiclesMost important (0.8)
Cost of timeMost important (1.00)
Fuel consumptionImportant (0.68)
Toll feeDo not consider it (0.2)
The number of traffic lightsImportant (0.6)
The number of intersectionsImportant (0.8)
The number of turnsVery Important (0.74)
Table 7. The number of alternative routes.
Table 7. The number of alternative routes.
O-D\αc1.101.151.201.251.30
1→75165023311324613
4→741326522437776021,313
7→827831189321014636
48→61124914
Table 8. Planned routes in different situations.
Table 8. Planned routes in different situations.
O-DαcPlanned Route
1→751.101→11→27→38→47→48→55→62→70→72→73→74→75
1.151→11→27→38→47→48→55→62→70→72→73→74→75
1.201→11→27→38→47→48→55→62→70→72→73→74→75
1.251→11→27→38→47→48→55→62→70→72→73→74→75
1.301→11→27→38→47→48→55→62→70→72→73→74→75
4→741.104→3→14→13→21→27→38→47→48→55→62→70→72→73→74
1.154→3→14→13→21→27→38→47→48→55→62→70→72→73→74
1.204→3→14→13→21→27→38→47→48→55→62→70→72→73→74
1.254→3→14→13→21→27→38→47→48→55→62→70→72→73→74
1.304→3→14→13→21→27→38→47→48→55→62→70→72→73→74
7→821.107→8→20→31→36→79→45→50→58→57→56→63→70→71→82
1.157→8→20→31→36→79→45→50→58→57→56→63→70→71→82
1.207→8→20→31→37→46→49→48→55→62→70→71→82
1.257→8→20→31→37→46→49→48→55→62→70→71→82
1.307→8→20→31→37→46→49→48→55→62→70→71→82
48→611.1048→49→50→51→52→53→54→60→61
1.1548→55→56→57→58→59→61
1.2048→49→50→58→59→61
1.2548→49→50→58→59→61
1.3048→49→50→58→59→61
Table 9. Planned routes according to different traffic volumes.
Table 9. Planned routes according to different traffic volumes.
O-DPlanned Route
Time Bucket 1Time Bucket 2
1→751→11→27→38→47→48→55→62→70→72→73→74→751→11→27→38→47→48→55→62→70→71→73→74→75
4→744→3→14→13→21→27→38→47→48→55→62→70→72→73→744→3→14→13→21→27→38→47→48→55→62→70→71→73→74
7→827→8→20→31→37→46→49→48→55→ 62→70→71→827→8→20→31→36→79→45→50→58→57→56→63→70→71→82
48→6148→49→50→58→59→6148→49→50→58→59→61
Table 10. Planned Routes Given Some Close Segments.
Table 10. Planned Routes Given Some Close Segments.
O-DPlanned Routes
Time Bucket 1Time Bucket 2 (Close Segments)
1→751→11→27→38→47→48→55→62→70→72→73→74→751→11→27→38→47→46→49→48→55→62→73→74→75
4→744→3→14→13→21→27→38→47→48→55→62→70→72→73→744→3→14→19→24→37→46→49→48→55→62→70→72→73→74
7→827→8→20→31→37→46→49→48→55→62→70→71→827→8→20→31→37→46→49→48→55→62→70→71→82
48→6148→49→50→58→59→6148→55→56→57→58→59→61
Table 11. Comparison of different approaches.
Table 11. Comparison of different approaches.
MethodNumber of AttributesNetwork SizeActual NetworkComputing WeightEliminating Errors Ease for Drivers
DPRP1682 Nodes and 135 LinksYesAuto-acquisition and driver settingBig dataHigh
DCRGS74 × 4 grid in NS-3NoDriver setting-Low
DRSM67186 Nodes and 22,813 Links YesNot neededFuzzy-AHPHigh
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Wang, R.; Zhou, M.; Gao, K.; Alabdulwahab, A.; Rawa, M.J. Personalized Route Planning System Based on Driver Preference. Sensors 2022, 22, 11. https://doi.org/10.3390/s22010011

AMA Style

Wang R, Zhou M, Gao K, Alabdulwahab A, Rawa MJ. Personalized Route Planning System Based on Driver Preference. Sensors. 2022; 22(1):11. https://doi.org/10.3390/s22010011

Chicago/Turabian Style

Wang, Ren, Mengchu Zhou, Kaizhou Gao, Ahmed Alabdulwahab, and Muhyaddin J. Rawa. 2022. "Personalized Route Planning System Based on Driver Preference" Sensors 22, no. 1: 11. https://doi.org/10.3390/s22010011

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