RESEARCH ON THE LAYERING A* ALGORITHM FOR REAL-TIME NAVIGATION

According to the existing problems in the applications of embedded navigation, this paper designs the hierarchical search A*algorithm, based on the transferring road network, to meet the need of real-time navigation. In the algorithm, a hierarchical search strategy is applied to route programming of large area, yet the duplicate searching A* algorithm, based on the transferring road network, is applied to the path computation, which is able to handle intersection turn restrictions and node weight, with little storage space but fast searching speed. Practically, the algorithm is proved to meet the technological need of real-time navigation both in computing speed and route rationality.


I. INTRODUCTION
Along with the current development of the embedded GIS and its related technologies to navigation, many embedded GIS products with navigation application function have appeared; these products can provide real-time path planning, voice guidance, and other functions, which can meet the basic demand of the user's navigation [1] .But in practical application, it also revealed some shortcomings, such as slow speed of data calls; low efficiency of path planning in large area; unadvisable path planning, and without considering traffic restriction factors, etc. [2] .Therefore, it is needed to study how to achieve the algorithm which can meet the application requirements of real-time navigation path planning in the limited resources embedded environment.

II. IMPLEMENTATION STRATEGY OF PATH PLANNING
In the actual driving process, in the case of easily finding the close distance, the drivers will generally choose to drive in the good high-grade road, rather than to go on the poor low-grade road which can cause traffic jam and with poor traffic capacity, unless the starting point or end point is in poor low-grade road.So in the process of path calculation, the hierarchical search strategy can be adopted, that is, search the low-grade road in the vicinity of the starting point and end point, and search the high-grade road in the midway.In addition, as for the path planning of a city or a small local area, due to the small amount of data, it is usually only needed to load the road network data once into memory, and then use the conventional path planning algorithm to calculate the optimal path.However, in most cases, the path planning calculation is used for vehicle navigation in nationwide large area and a huge amount of road network, so we must develop the reasonable path calculation strategy according to the regional scope of navigation application.
Based on the above considerations, in the path calculation, the study determines whether it is a path calculation of local small range or a large range first according to the starting point and end point, and then adopts the corresponding calculation strategies: (1)the path calculation of local small range The path calculation of local small range is to select all grades roads near the starting point and end point, and select the higher-grade road in the midway to constitute the network for the optimal path calculation.
(2)the path calculation of large range The path calculation of large range mainly used the hierarchical search strategy [3][4] ; first, search the path in the high-grade road network; then, conduct the local refining optimal path search near the starting point and end point by calculation method of local small range.
At present, 20 kinds of path planning algorithms can be used for optimal path analysis according to the classification statistics, of which, more classical algorithms are Dijkstra Algorithm [5] , Bellman-Ford-Moore Algorithm, A* Algorithm [6] and others.
The A * algorithm makes an estimate on the distance of the node from the end point when selecting the next node, and to evaluate the possible measures of the optimal path of the road, in this way, it can optimally search the node with the optimal large possibility.So it can be seen from the search process, when it is near to the end point, the number of the searched nodes is fewer with small storage space and quick search speed.
Therefore, the study in this paper chose the A * algorithm which needs a small storage space and have quick search speed for the path planning calculation.

A. Analysis of conventional network representation
Under normal circumstances, road network is abstracted by using a weighted directed graph, road intersection is represented as a node, a section between two intersections is expressed as arc, and some quantitative attributes of a section serve as a weight of segmental arc.As shown in Fig. 1  In the process of driving, inevitable intersection delay directly results in weighted nodes.In addition, influenced by steering restriction on the intersection, one-way traffic, vehicle forbidding and other traffic control information, vehicles cannot reach roads originally connected each other in the actual driving process.Among the above factors affecting vehicle driving, one-way traffic, vehicle prohibiting, etc., can be solved through setting arc weights corresponding to road as ∞(or a sufficiently large positive number), but weighted nodes and steering restriction cannot be solved through the conventional road network representation and the shortest path algorithm.As shown in Fig. 1

B. Transformation of road network construction based on segmental arc
In order to deal with the influence of intersection steering restriction and node weights on path planning, the traditional road network representation must be transformed.In the paper, the ideas related to the method of dual graph [7] [8] are introduced herein, and the method to transform road network construction is used to handle intersection steering restriction and node weights.The basic idea is as below: nodes-based weighted directed graph is transformed into arc (section)-based weighted directed graph, and then the optimal path is calculated on the transformed road network.
As shown in Fig. 2, segmental arcs (Sections A, B, C, D) in the original network are transformed into new nodes in the network.At this point, if the starting point and the end point are considered as a segmental arc with a length of 0, it is only required to define the weight from one segmental arc to the other segmental arc, then any shortest path algorithm is used to solve the optimal path from the starting point to the end point.
Based on the transformed road network, intersection steering restriction and node weights are handled through defining the weight from one segmental arc to the other segmental arc.Assume that the serial number of the i th segmental arc in the original network is L i , if L i exists in the subsequent arc L j and associated node is P, the weight from L i to L j can be defined as below: W(L i , L j )=W(L i )+W p (L i , L j ) (1) Where: W(L i ) represents as the weight of arc L i in the original network, W p (L i , L j ) represents the additional weight of node P, which is used to represent intersection delay.If it is prohibited to turn from L i to L j , however, W p (L i , L j ) represents ∞ (or a sufficiently large positive number).based on segmental arc.Data of navigable electronic map produced by many manufacturers of navigable electronic map, however, do not describe a complex intersection as a node.Fig. 3 (a) shows an intersection, and Fig. 3 (b) shows collected navigable data.There is a median in front of intersection where four roads connected to the intersection pass, so every road is digitalized as two sections in the opposite direction when data are produced, in a total of eight sections, respectively marked as L 1 , L 2 ,...L 8 ;These eight sections constitute four nodes in an intersection, respectively marked as P 1 , P 2 , P 3 , P 4 .Internal sections connected to four nodes are respectively marked as L 9 , L 10 , L 11 and L 12 .It can be seen Fig. 3 (b) that L 2 must pass through L 9 , L 10 before reaching L 7 , so the method to transform road network cannot be directly used to describe the fact that L 2 cannot reach L 7 .
Internal sections have no practical significance for path planning calculation, but after the completion of path planning, it is required to organize internal sections into a complete optimal path.Therefore, the paper designs the binary search A* algorithm based on the transformation of road network.The algorithm design idea is as below: When the first path calculation, internal sections are removed, an intersection is considered as the transformed road network of a node structure based on segmental arc, and the A* algorithm is used to search the optimal path.When secondary path calculation, the optimal path first calculated and all internal sections where the path goes constitute the transformed road network based on segmental arc.Regardless of steering relationship, the A* algorithm is used to search the secondary optimal path.Thus, when the first path calculation, the method to transform road network is used to handle intersection steering restriction and node weights, to get the optimal path exclusive of internal sections; when second path calculation, the optimal path, in order to connect to the optimal path, road network used for path calculation only includes the optimal path first calculated and internal sections of the intersection where the path goes, so the calculating speed is fast.
The binary search A* algorithm based on the transformation of road network is implemented according to the following steps: 3) When organizing road network, internal sections are deleted, the method to the transformation of road network is used to transform road network data into an arc (section)-based weighted directed graph, intersection steering restriction and node weights are handled according to the segmental arc and its weight defined in Formula (5-1); 4) The A* algorithm is used to solve the optimal path from Arc ( s P , ' 6) The method to transform road network is used to transform the above road network data into an arc (section)-based weighted directed graph; 7) The A* algorithm is used to solve the optimal path from Arc ( s P , ' s P ) to Arc ( ' e P , e P ), namely, the optimal path from the starting point s P to the end point e P .

IV. IMPLEMENTATION OF THE HIERARCHICAL SEARCH A* ALGORITHM BASED ON THE TRANSFORMATION OF ROAD NETWORK
Based on the above analyses, the paper designs the hierarchical search A* algorithm based on the transformation of road network to meet the demand for real-time navigation application.The basic idea of the algorithm is as below: The hierarchical search strategy is used for path planning of a large area.The binary search A * algorithm based on the transformation of road network, which has the characteristics of able to handle intersection steering restriction and node weights, small storage space and fast search, is used as the path planning algorithm.
The hierarchical search A* algorithm based on the transformation of road network is implemented according to the following steps: 1) Judgment whether to be the path planning for a large area according to the distance from the starting point L are connected, to get the optimal path L , and the path calculation is completed.

V. EXPERIMENT AND CONCLUSIONS
The hierarchical search A* algorithm based on the transformation of road network designed in the paper has been applied in the embedded navigation application system developed by the author, which supports national road network data.The operating environment of the system is the operating system Windows CE 5.0, 500 MHZ, memory of 256 MB, 800×480 screen resolutions.The running interface is shown in Fig. 4.There are massive data on the national road network, when path planning of a large area, so it is impossible to completely load road network data in a computational domain into memory.In the paper, therefore, when verifying the algorithm's validity, the Dijkstra algorithm based on hierarchical search and the hierarchical search A* algorithm based the transformation of road network are respectively used to compare the efficiencies of path planning.Fig. 5 shows the chart for time comparison of path planning among different cities of China after using two algorithms are used respectively.
It can be seen from Fig. 5 that two algorithms use the hierarchical search strategy when path planning in China, so both of them have higher computational efficiency.In search of the next section, the hierarchical search A* algorithm based on the transformation of road network uses the distance away from the end point as the measurement to evaluate the possibility of this section locating in the optimal path, and can first search the section with a great probability, so, its search efficiency is superior to that of the Dijkstra algorithm based on hierarchical search.In addition, when path calculation, the hierarchical search A* algorithm based on the transformation of road network uses the method of transformation of road network to transform node weights into an arc (section)-based weighted directed graph, and then the optimal path is calculated in the transformation of road network, therefore, the algorithm can identify and deal with all kinds of traffic control information and the influence of intersection delay.
The practical navigation application shows that the hierarchical search A* algorithm based on the transformation of road network has many advantages in calculating speed, path rationality, etc., and is able to satisfy the technical requirements of real-time navigation application under the embedded environment. VI.
, Fig. 1 (b) is a road network schematic diagram of Fig. 1 (a) by using a conventional weighted directed graph to represent road intersections.

Figure 1 .
Figure 1.Schematic diagram for road intersection representation by using a conventional weighted directed graph (a), vehicles driving on Section A is prohibited to turn left into Section D, but Fig. 1 (b) is unable to express the fact that arc (v 1 ,v 2 ) from Node #1 cannot reach arc (v 2 , v 5 ) via Node# 2. Furthermore, different steering behaviors (such as going straight, turning left, turning right, etc.) generally produce different intersection delay time.Fig. 1 (b) is unable to respectively express node weights caused by different steering behaviors after vehicles enter Intersection # 2.

Figure 2 .Figure 3 .
Figure 2. Schematic diagram for road intersection representation by using the method to transform road network

P
) on the transformation of road network (excluding internal sections); 5) Internal sections of the intersection where 1 L pass are extracted, and constitute road network data together with 1L ;

Figure 4 .Figure 5 .
Figure 4. Interface diagram for the embedded navigation application system