Sei sulla pagina 1di 6

Proceedings ojCCIS2014

MAP NAVIGATION SYSTEM BASED ON OPTIMAL


DIJKSTRA ALGORITHM

Chuang Ruan, Jianping Luo, Yu Wu


Guangdong Televehicle Information Technology Service Co., ltd, Guandong, China

Abstract: In the intelligent transportation system, the There are also inevitable problems in the existing
calculation of the shortest path and the best path is an algorithm in the study. If the algorithm is directly
important link of the vehicle navigation function. Due to applied to calculating the optimal path of urban road
more and more real-time information to participate in network, it requires a large amount of calculation, and
the calculation, the calculation requires high efficiency cannot meet the requirements of dynamic searching.
for the algorithm. This paper studied navigation system Therefore, this paper solved the Dijkstra algorithm
based on vehicle terminal, designed the overall optimization problem, and gave obvious performance
framework of the system and gave the function of each improvement in dealing with complex dynamic changes
module. The system can provide optimal service path for of road network. In addition, this paper studied and
the user's choice and needs. The optimization of the designed the intelligent vehicle navigation system based
design and application of Dijkstra algorithm saved the on improved Dijkstra algorithm, met the needs of the
intermediate result storage space in the process of user travel map management and updating,
system operation, improved the accuracy of the supplemented the current traffic information query,
navigation path, reduced the complexity of the Dijkstra query destination, the shortest path planning and
algorithm and greatly improved the efficiency of the multimedia playback, and gave travelers real
system. convemence.
Keywords: Optimal path; Dijkstra Alogorithm; Map
navigation; Vehicle navigation 2 Design and implementation of vehicle
navigation system
1 Introduction
At present, the problem of heavy traffic is the most
Intelligent transportation system is a kind of effective pressing issue of the world's major cities. In order to
way to solve the traffic supply and demand contradiction solve the problem of heavy traffic, improve the
in modem society. V ehicle navigation system as an efficiency of transportation and reduce transportation
important part of intelligent transportation system, has a costs, intelligent transportation system arises at the
broad application prospect. The backward technology historic moment. Intelligent traffic system has been
and the ability of independent research and development widely applied, and vehicle navigation system is the
of china lead to vehicle navigation products "good" but current urgent demand.
not "cheap". 2.1 Overall design of the vehicle navigation
The vehicle navigation system on the market at present system
use face information transmission, low level of
Vehicle navigation system is a computer system based
information sharing, which can't satisfy the user's
on geographic network in digital map, uses prediction
personalized, comprehensive requirements. By using
positioning, global positioning system (GPS) technology
intelligent vehicle navigation, users can get itinerary and
to figure out the best route, provides traveler real-time or
the surrounding information more convenient, enjoy the
dynamic navigation information, and makes timely
convenient and efficient travel service. The vehicle
guide in the process of travelers' driving.
navigation system applies the technology of automatic
positioning, computer technology and wireless Travel intelligent vehicle navigation system proposed in
communication technique, effectively solves the traffic this paper is according to user's personalized choices,
problems by using all kinds of high and new technology provides an optimal, practical road planning through
The mainstream vehicle navigation usually uses the improved Dijkstra algorithm and at the same time
Dijkstra algorithm for point path planning. friendly gives feedback to the user through the system.
Scholars have also carried out the thorough study of the According to the functional requirement of the vehicle
optimization of Dijkstra algorithm, such as zhang Yan navigation system, the system is divided into the
from Wuhan University studied the characteristics of following hierarchical structure, as is shown in Figure 1.
road network based on GIS technology, put forward his Intelligent vehicle navigation system is divided into two
own optimal path search algorithm, significantly modules: man-machine interface module and core
increased in the process of the optimal path search. application module.
Zhang Fuhao of The China Academy of Surveying and
Mapping Science proposed adjacent point optimization 2.2 Human-computer interface module
algorithm. In this module, the system provides the function of the
978-1-4799-4719-5114/$31.00 2014 IEEE

559
Proceedings ojCCIS2014

application software to interact with users, such as


destination search, multimedia playback, the shortest
path computation, traffic information query, path
planning, etc., and carries on the system integration of
all application software, and is convenient for the use of
the user. Travelers can use the destination search to Choose starting
search interested place and the system will use the point and
shortest path computation and path planning to get the d estin ation

user' optimal route according to the traffic levels.


Shortest Path
,--- Computation

r- Destination Search

r- Route Planning

-1 r-
HUman computer
Information Query
interface module
Multimedia Play

f--
I
Intelligent vehicle
navigation system
Find the beginning
and end of the
corresponding
,--- Map Matching
picture ement

core appllcation
module
f- Map Upgrade

f- Map Download
Figure 2 Flow chart of the car navigation
f- Map Display


Map Manage
the best route from starting point to that point in the
node, the rest of the nodes is T. the core process of the
Figure 1 Overall architecture of vehicle navigation system
algorithm is to transform the qualifying node T to node p.
2.3 Vehicle navigation system module In the figure of N nodes, a two-dimensional array W [N]
[N] is used to describe the best path of node I to node j.
The system is based on Eclipse development tools and If there is an edge between node I to node j, then Wei, j)
electronic maps API. The following details introduce the is the weight of the edge, otherwise, the value of W(i,j)
realization of the function of path planning process. is infinity. Specific processes are as shown below.
Vehicle path planning needs to load electronic map,
Set all K no des to T nodes; set
provides the basis for the topology relationship AL. The WiKl iKl as i ni 1. i al value'
system will automatically join electronic map of each
layer in data sets, to look up these abrupt objects through Set P node as st ar t ing no de ; r eset
weight of" P node t o 0
the finding and searching method of data sets. Based on
topological relation, the distance of primitive objects to For each node

other nodes will be initialized. The route can only be


charted after getting the information of the starting point
and terminal point. Vehicle navigation system needs to
be able to have some optimization operation, such as to
determine whether the path has been planned before. If
the path has been planned before, the system need not
recalculate it.
'rVeight of j node = weight of current
If it is a new path, the requirement of computing for this node a d ds di stance wrrent node
1.0 j no de
new route will be submitted to the system. The system
will compute the shortest route from starting point to
terminal point by using the navigation algorithm. The L---nd
---<::::gE of" eye 1e
KO
YES
navigation algorithm used in this system is improved
Fin d T no de of- min we igh t, set it as
algorithm based on the Dijstra algorithm, which can c urr ent node P

meet user's needs. According to the shortest path of KO

node order, the traffic path is displayed on the electronic can hecome P no de =::>-----'

map corresponding with the shortest path. The flow


chart of the car navigation is shown as below.
Figure 3 Flow chart of traditional Dijkstra algorithm
3 Dijkstra improved algorithm 3.2 Disadvantages of the traditional Dijkstra
algorithm
3.1 Traditional Dijkstra algorithm
Traditional Dijkstra algorithm is simple, easy to
Traditional Dijkstra algorithm divides the nodes in the implement. Using this algorithm to solve the shortest
graph into two categories, permanent node(P) and path problem is mature, but there are the following
temporary node (T). P nodes are those who have found deficiencies in practice:

560
Proceedings ojCCIS2014

(1) The traditional algorithm uses adjacency matrix to heap, each time adds node with the minimum cost. The
describe the network nodes and the characteristics of the complexity of operation deletemin is O(logn). Then
arc, leading to data redundancy and waste of time. adjust the distances of other vertex to the tree based on
(2) The algorithm complexity is too high, it is not the added node, mainly use operation decresekey(log n).
suitable for large-scale network shortest path search. Operation decrease costs O(mlogn), because operation
(3) In the real-time way, the traffic impedance needs to decrese is up to m times. Operation deletemin executes n
be considered, in order to improve the accuracy of times, it takes O(nlogn) time. They take a total of
calculation. O((m+n)logn) time. The complexity of its initial part
(4) The traditional algorithm uses greedy strategy to will not be more than it, so the complexity of algorithm
keep local optimum at each stage, and from the global is O((m+n)logn).
perspective, the overall result may not be optimal.
(3) The traffic impedance analysis
3.3 Improved algorithm
Traffic impedance is the resistance value of the
(1) Use adjacency table to store road network topology transportation. Time and distance are proportional to the
relationship while vehicles are driven without traffic
Because in the Dijkstra algorithm, the node topology block, but in the actual traffic roads, vehicles can not be
operation is to search adjacent nodes according to the unimpeded. So time and distance can not simply use
topology structure of road network, using adjacency proportional function, the relationship among its running
table can reduce the number of the loop. Compared with time and distance and flow is a kind of load function.
the traditional adjacency matrix, the efficiency is raised. The relationship function among unit length, time and
In this structure, each node directly records its neighbor traffic flow are as follows:
nodes and the weight of the neighboring nodes, therefore,
I
when doing this cycle, the cycle number equals to the t =-
f(q) (1)
v
number of its neighboring nodes (as the out degree d).
For the entire algorithm, the average cycle time (as d) of t: The time required to for the unit road.
this cycle equals to the out degrees of map. To do so, we
can reduce the times of inner loop 1 from N to d. As for v: The speed of vehicles on the road accessibility.
system GIS, N is far greater than d, therefore, the cycle q: The traffic on the unit road.
time will be efficiently shortened and the adjacency list
reduces much redundant space. 1: Length of the road.

(2) Use binary heap as a priority queue For the expression of road traffic impedance function,
BPR function is the most widely used function, the
The key in algorithm Dijkstra is to find minimum cost function expressions are known as:
code in each loop. Traditional method uses traverse. But
f3
it will be inefficient when encountering a large amount
of data. The most effective way isto arrange nodes T=t[l+a(q) 1 (2)

according to cost from low to high. We will find an e


optimal node in each loop. Use binary heap to store the T: The average time of driving barrier-free vehicles on
priority queue. road.
Binary heap can be seen as a kind of complete binary, e: Road traffic capacity.
non-leaf node value is not greater than the value of the
left and right child nodes, so the minimum in this pile is a, p: Parameters to be calibrated.
the element at the top of pile, the binary heap here as a
The traffic impedance of intersection roads: BPR
priority queue and efficient data structure, it includes
function is defined in the observation data of road traffic,
three main steps:
it is suitable for road traffic impedance. But in big cities
Filter h: Adjust chaotic sequence h for binary heap, intersection roads are dense, vehicles in there take a long
compare each node with its around, put it in the right time, it obviously cannot be ignored. Many scholars do
place. much research about this, the traffic impedance
positioning of intersection roads is as follows:
Insert element x into h: insert element x into pile h, call
step 1, adjust h for binary heap. First put x in the bottom Time= T+y .. lj
(3)
of the heap, then traverse whole binary number, put new
elements in proper place. T represents road impedance values, Y represents time
impedance values at the intersection. The definition and
Adjust h: Find the smallest element in h and delete it,
expression of Y, ccording to the different types of
then call step 1, adjust h for binary heap. The main intersection which has a wide range of application, is
operating time spends in the adjustment of binary heap. Webster formula:
As we all know, the complexity of algorithm Dijkstra
T (I-A)2 X2 T I
( ) (4)
without optimization is O(VA2). This algorithm uses Y 'i =
'
+ ___ O.65(-f)3
" X 2+"
2(1- AX) q -x 2 ( ) q

561
Proceedings ojCCIS2014

(4) The traffic impedance analysis


The shortest path algorithm is derived in computer
science, it only takes into account the network
topological structure characteristics, ignoring the actual
spatial distribution characteristics of road network,
resulting in no specific direction of research. Initial node
is in the most low-end while target node is at the top of
the tree for the obtained shortest path tree. In the process
of creating a path tree, there are a lot of redundant hcthcr
Opcnlistis
computations, this is mainly due to the algorithm of the empty?
restricted search scope. Road network node coordinates
are important, which refer to the actual location of space
node in the map. N

In the process of path search, if the starting node and


destination node are known, the spatial distribution of
the shortest path can be measured. Whether a node is in
the search path or not needs to consider the relationship
of starting node and destination node in space. From the
viewpoint of probability, the shortest path is most likely
the line consisting of nodes from starting node to
destination node. Therefore, it is necessary to limit
search area.
Here we put forward a shortest path algorithm with
dynamic restricted searching area in order to improve
the performance of the algorithm. The principle of this
algorithm is: each stage analyzes the distribution of node
space relationship. Nodes are divided into several stages
based on the actual spatial distribution of the search
process, these nodes have been generated but not
expanded. In the process of path search, nodes decide
whether to join the area and screen the impossible nodes
of shortest path, delete them. Limit the search area can Figure 4 Improved Dijkstra algorithm
reduce the search space and improve the efficiency of
the algorithm. Because this method is not complete, we Structure matrix is to conclude the shortest path distance
need to further adapt the use of all the nodes in the from starting point to destination node. The main
search area. If the optimal path is not found, search program of optimal algorithm written by Matlab is
scope should be expanded appropriately. shown as following.
It can be seen that the algorithm does circle only once,
3.4 Realization of the improved Dijkstra and if destination node is not the last labeled node,
algorithm algorithm will do cycle less than n times with reducing
the time complexity and improving the operation
In the improved algorithm, we use adjacency table to
efficiency greatly. The destination node is set as the end,
store road network topology of network data, use binary
so accuracy of the algorithm is guaranteed.
heap to store the generated node, use binary chain table
to store the generation and development of node. 3.5 Experimental results
Assume that s is starting node, g is target node, A is the
limit search area. Set node counters C1, C2 and C3 (I)We use GoogleMap offline maps to validate the
representing the number of nodes within regional PI, P2 experiment result. By using the minimum cost search
and P3. Regional PI, P2 and P3 are three path model, Mobile MapWidget performs well and
non-overlapping limit search areas. Add data field in the considers the impact factor in the optimal path
node list to show the node area and pointer protection generating process successfully testing in Eclipse
solution. emulator, the average response time is 0.56 seconds
while traditional algorithm takes 1.36 seconds. Time
In addition, add a new operation in the screening complexity of this algorithm is better than that of
procedure of binary heap, find the area which X belongs Dijkstra. Using adjacency list and binary heap, improved
to, the corresponding area of the node counter plus 1. Its Dijkstra algorithm can find adjacent nodes quickly and
implementation flow chart is as follows. limit the search area dynamically, improve the efficiency
The call of improved Dijkstra algorithm is same as call of operation of priority queue and shorten the operation
of tradition Dijkstra algorithm. It only needs to input the time. If the starting node and destination node are in the
starting node and destination, and network topology. border of map area, search area cannot completely

562
Proceedings ojCCIS2014

include all the nodes solving path, it needs to increase


the number of nodes. In most cases, the performance of
improved algorithm is better than the performance of the
traditional algorithm.

(2)We will use the example of transportation network to


illustrate the improved algorithm is better than
traditional Dijkstra algorithm, figure 6 is a simplified
schematic diagram for an urban traffic network of local
map.

Assume that the source node is nl, destination is nlO, if Figure 7 Network child diagram
uses the Dijkstra algorithm directly can obtain the
shortest path of n1-n2-n4-n6-n10, it shows the (3)The performance test
traditional Dijkstra algorithm is feasible, but the path
searching process needs to search for 108 times. With Table I shows the experimental results in different actual
the improved Dijkstra algorithm, according to the row load and in different time.
molecular graph method, we connect the straight line
between nl and nlO, put n4 and n5 as breakpoints. So Table I Test of system load stress
the network diagram is divided into two child figure, as
shown in figure 6 and 7. Then calculate on two child Training sample Peak request Success rate of
figure respectively with the algorithm of Dijstra, finally number rate(%) peak operation(%)
get the shortest path for n1-n2-n4-n6-n10, but the whole of each type
process are only 40 times. Experimental analysis show 15 100 100
that the path search number of improved Dijkstra 60 98 98
decreased significantly, thus the improved algorithm of 150 95 94
Dijkstra improved the efficiency of processing and speed 500 85 82
of system operation.
Table 2 shows the test results of GIS intelligent
navigation system.

Table II Test results

User number Response Success rate(%)


time(ms)
Avg 7 100
Max 58 98
Min 3 100

Test results show that various performance indicators


Figure 5 Simplified traffic network diagram fully meet the design expectations, meet the requirement
of system performance, and get the ideal results.

(4)Do the simulation experiment of improved Dijkstra


algorithm in Matlab simulation platform. The improved
Dijkstra algorithm can reach the destination node
through fewer nodes in the search path. Test results
summarized as follows:

The search time of optimal path using improved Dijkstra


algorithm is 0.5s, while using traditional Dijkstra
algorithm is 2s. It proves the superiority of the improved
Dijkstra algorithm through the simulation experiment.
The improved Dijkstra algorithm uses adjacency list and
Figure 6 Network child diagram (a) binary heap, so it can quickly find adjacent nodes and
dynamically limit the search area, improve the efficiency
of the operation of priority queue and shorten the
operation time of the algorithm. If the starting node and
destination node are in the border area of maps, search
area can't completely solve all the nodes in the path, so

563
Proceedings ojCCIS2014

we need to increase the number of nodes. In most cases, 20II VOL.38( l 1 ) 35-37
the performance of the improved algorithm is better than [2] JIANG Fenghui, LI Shujun, JIANG Fengjiao, GAO

traditional algorithm performance. Shiliang, ZHANG Zhiwei. The Dijkstra algorithm


improved and its application in the traffic navigation
system based on GIS[J]. Geomatics & Spatial
4 Conclusions Information Technology. 20II VOL.34(4) 130-131
[3] Guan Qian. The study of smart tourism improvement
Firstly, this paper analyzes the research status and approach on tourism experience[D]. Beijing Forestry
market demand of map navigation system, then University. 2013.6
completes the car map navigation system overall design [4] YANG Hai, WANG Hongguo, HOU Lunan, SUN
and detailed design of each module based on the existing Xiangqun. Application of chaos ant colony optimization
deficiency in the current map navigation system on the in the intelligent transportation system and its

market, and has various optimization and improvement algorithm[J]. Joumal of Chengdu University(Natural
Science Edition). 201O.VOL.26(4) 311-313
to the traditional shortest path algorithm Dijkstra, greatly
[5] Xu Wei. The research and application on the key
improving the real-time and accuracy of the navigation
technologies of energy-saving system and intelligent
map. We will do further refinement on the basis of this traffic system based on internet of things[D]. Nanjing
paper, increase user habits personalized map navigation, University of Posts and Telecommunications. 2013.4
receive information based on user feedback, and [6] Wu Ping. Intelligent public transport scheduling research
Improve navigation map information distribution based on genetic algorithm[D]. Xi'an University of
system. Electronic Science and Technology. 2012.3
[7] Gao Ruijie. Design and implementation of intelligent
Acknowledgements navigation system based on GIS[D]. University of
electronic science and technology ofChina. 2013.5
This work is supported by the National Key Technology
[8] Cui Yuyong. Research on moving object detection and
Research and Development Program of the Ministry of Science
tracking for intelligent traffic monitoring[D]. Huazhong
and Technology ofChina(2013BAHI3FOO,2013BAHI3F03).
university of science and technology. 2012.5
[9] Lu Dandan. Research and implementation on data
References
mining technology of community smart service
[I] YAN Baozhong , LIU Jun, ZHANG Bo. Application and oriented[D]. Xi'an University of Electronic Science and
simulation of improved Dijkstra algorithm in a vehicle Technology. 2013.1
navigation system[J]. Applied Science and Technology.

564

Potrebbero piacerti anche