An Algorithm for Map Matching For Car Navigation System Sara taghipour
Mohammad Reza Meybodi
Ali Taghipour
Membership of computer society of Azad University of Arak Arak, Iran
[email protected]
Amirkabir University of Technology Tehran, Iran
[email protected]
Markazi province electrical distribution company Arak, Iran
Abstract—The Global Positioning System is the most popular choice for positioning in car navigation systems. But in real life, the various noise sources affecting the signals and the instrumentation used by the positioning system, along with the map inaccuracies, result in the estimated position not necessarily being overlaid onto the road network. The process of mapping the output from the positioning system on to the road network is called map matching. In a recent study, a map matching algorithms that work based on weight factor has been verified then a new map matching algorithm based on is proposed. The proposed algorithm is a modified version of one of the topological map matching algorithms called Quddus's algorithm In order to show the effectiveness of the proposed algorithm, it is tested on the city map Arak and then the result is compared with the result obtained for Quddus's algorithm. In this paper, Correct mapping the output from GPS on the road network parameters is our purpose. The input to the system comes from Gps receiver (Gpsmap 76CS) and Arak map database. In this paper, the results show that the proposed algorithms can be effectively used to map matching
matched to the available road network. This is done by computing the likelihood that the car is currently at a particular position on a certain road segment. The route presented to the driver is also used in this map matching process.
Keywords-component; GP, Map Matchin, Car Navigation System
White describes several algorithms (or parts of algorithms) for matching an estimated position to a network representation of the street system and attempt to evaluate four of them [2]. Because most route changes occur at intersections, their study suggests that particular attention needs to be paid to the problems that arise at intersections. The discussion focuses on urban routes because most algorithms appear to work well on highways. However, they recommend that the algorithms need to be evaluated on a wider array of routes, especially in urban areas. The limited number and variety of routes considered in their study preclude general conclusions from being made. The simple procedure used allows identification of all possible candidates for the correct road while systematically removing the wrong ones. The method was developed to deal with errors introduced by GPS selective availability (S/A), which was subsequently turned off in May 2000 (Ochieng and Sauer 2001). Its benefits are still to be assessed in the S/A-free environment. Greenfeld reviews several approaches for solving the map matching problem and proposes a weighted topological algorithm [3]. The algorithm is based on assessing the similarity between the characteristics of the street network and the positioning pattern of the user. The algorithm seems to work well. Tests show that the procedure computes correct matches virtually everywhere. However, their study suggests
I. INTRODUCTION Car navigation systems are being offered as a special feature of new cars of an increasing number of car-brands. These car navigation systems are capable of taking over some of the tasks that are performed by the driver such as reading the map and determining the best route to the destination. GPS and digital road maps can be used for land vehicle navigation systems. The important problem arising in positioning is that GPS receivers are imprecise. If both digital maps and vehicle location are perfectly accurate, the algorithm is simple and straightforward based on simply snapping the lavational data to the nearest node or link in the network. However, in most cases it is not possible to use such simple algorithms. Therefore, more complex map matching algorithms are a required component for vehicle location and navigation systems [6]. In order to determine the current location of the car on the road network, a car navigation system tries to determine the geographical position of the car. The geographical position is
Bernstein and Kornhauser describe several algorithms (or parts of algorithms) for matching an estimated position to a network representation of the street system [1]. Two things are apparent from this study. First, it is clear that this is a complex and fairly difficult task. Point-to point and curve-to-point matching are unlikely to work very well, especially when there are errors in the position and/or errors in the network representation. Hence, other, more complicated algorithms must often be used. Second, though a number of different algorithms can be used, it seems clear that it is both important to perform some kind of curve-to-curve matching and to incorporate topological information in the algorithm. Bernstein and Kornhauser conclude that the more attention that is given to the topological information, the better the algorithm performs.
that additional research is required to verify the accurate performance of the algorithm and to make an accurate position determination on a given road segment. Aspects of the road network, matching processes at intersections and algorithm validation in complex route structure environments, such as in built-up urban areas. Most of the limitations of the existing algorithms have been explained in White and Greenfeld [2] [3]. Quddus explained other additional limitations that can be easily identified [7]. Examples of these limitations are illustrated in Figs. 1. In Fig. 1, the points P1 to P20 represent the GPS positions of a vehicle traveling on a sample network. It is relatively easy in this case to determine that the vehicle path is represented by the links 1– 2–3–4. Applying the Greenfeld(2003) algorithm or any other algorithm explained in the above section, it is found that these points correctly match on the link until P10. However, at point P11, it selects link-5 as a correct link because the orientation of the GPS line between P11 and P12 is similar to link- 5. The reason why the algorithm assigns an incorrect link is that it has not taken into account any heading information of the vehicle at P11. There are many cases similar to this example. GPS headings are fairly accurate and could be used to provide additional information in facilitating a correct identification of the link.
Weighting for vehicle heading and bearing of the link : This information provides a good indicator of the probable direction of the vehicle at this point. The heading of the link β ' is then determined from the spatial map data. The difference between the GPS derived heading β and the spatially derived heading β ' is ∆β and is used to formulate the weighting scheme as given below.
Figure 2.
Similarity in vehicle heading and bearing of the link
WS H = AH cos(∆β ' )
(1)
Weighting for proximity of a point to a link: Two types of weighting scores are used for the proximity test. WS PD = AP / D
(2)
Proximity can also be determined by whether the line between two consecutive GPS points and link i physically intersect. The proximity between these two lines is measured by their intersecting angle,θ (acute angle). WS PI = AP cos(θ )
Figure 1. Incorrect match without the vehicle heading information at junction
Quddus’s algorithm (2003) seeks to correct for some of the deficiencies of other methods as previously described. Information on the vehicle trajectory is used to avoid sudden switching of mapped locations between unconnected road links. The topological aspects of the road network and GPS heading and speed information allow improvements in performance of the algorithm. Quddus Algorithm was implemented but it doesn’t work well in all positions. In this paper, an algorithm proposed that based on Quddus Algorithm. To test the performance of the algorithm, it is implemented on Real Data from Arak City. The result shows the performance of the new algorithm. In next section, we explain Quddus Algorithm because our algorithm based on it. II.
QUDDUS ALGORITHM
In this section, Quddus algorithm is explained. As we know its algorithm focuses on the topological aspects of the road network and GPS heading and speed. The weighting factors are determined empirically, as described further below [7].
(3)
Weighting score for the position of the point relative to the link: The position of Gps relative to candidate link is important. The algorithm also uses weights for the vehicle-heading information, which would provide the information to deal with these cases. Angle between the candidate link and the line through the nearest node and point.
Figure 3. Location of the point relative to the link
WS R P = ARP cos(α )
(4)
Total weighting scores (TWS): The total weighting score can then be obtained by summing up the individual scores. Therefore, the total weighting score (TWS) is defined as follows:
TWS = WS H + (WS PD + WS PI ) + WS RP
(5)
AH = aAP ARP = bAP
matching algorithm selects street 3, but it’s not true. The problem has been derived from the car movement in every location of street’s width.
(6)
Using the new parameter has improved the algorithm’s results as shown in the following Figs.
Determinating Physical position After finding True Link, physical position of the vehicle on the selected link should be Determinate. The bearing of the link and the vehicle speed (v) from the GPS unit can be used to calculate the vehicle position on a link. Suppose Pt and Pt+1 represent the vehicle position on a link at time t and t+1, respectively (Fig. 8). The initial easting and northing of the vehicle at point Pt is known. From the bearing of the link (i.e. h) and speed of the vehicle at Pt+1, the increment in easting and northing can be obtained as follows:
Figure 5. A problem with map matcing Figure 4. Determination of vehicle position
The new algorithm uses the following Steps to assign the vehicle on the correct link.
E i +1 = E i + (ν *1) * sin θ ) N i +1 = N i + (ν *1) * cos θ
(7)
III. PROPOSED ALGORITHM In general, a digital map is represented as a graph constructed by nodes and links that, indicates crossroads and roads. In map vectorizing process, a link is a section of street between junctions. In other hand a few link together represent a street. A graph is constructed by central line of street. Length of the link assigned to a piece of the street is equivalent the length of the same piece of the street. Length of the link represented by LR . In this algorithm; maximum length of a link has been defined as a new parameter and represented by Lmax. Lmax is length of link plus half of width of the previous street traveled by the car (WP) (6). LR is fixed for each street. But Lmax depends on the route traveled by the car, because WP is half of width of the previous street traveled by the car. For example in Fig .5, L2max is equal to L2R plus to width of the street 1and L1max is equal to L1R plus to width of the street 5. Lmax= LR + WP/2
(6)
The limitation that most map matching algorithm does not work well in the situation Illustrated in Fig.5. In Fig.5, the car moves on the street 1 and Red points are received by Gps. the real distance traveled by the car is more than L1R obviously. For example P20 is the position of the car received by Gps. as we know the traveled route by the car is more than L1R , it is impossible for the car to move on street 1,it should move on the street 3 or street 2. Since the car hasn’t turned, every map
1. Receive the GPS point. 2. Find the closest node from the first GPS point. Select all the road segments that pass through the closest node, otherwise take this point as the initial point and go to step 1 3. Using the Quddus weighting formula to choose the correct link.(5) These two points (i.e. initial point and its next point) should be matched to this link. 4. Determine the vehicle position on the correct link for each of the two points using Quddus formula. 5. Receive next GPS point. If ∆β 45° (∆β is the difference between the new GPS point and previous GPS point heading) then go to step1 else if ∆β ≺ 45° , then It means the car is still moving in previous route and hasn’t changed the direction. Now you should determine whether the car has passed the junction in the same direction or not? To find the answer follow the following level.
5-1) calculates the traveled distance by the car from the previous junctions to the current junction. If this distance is more than Lmax same link(6), surly the car has passed the current junction without changing the direction. We select a new edge connected to the previous edge and in the same direction; otherwise we select an edge connected to the junction different from the previous direction. Go to step 5 IV.
TESTING ALGORITHM
To test the performance of the MM algorithm, a filed test was carried out in Arak. A test vehicle was equipped with a Gps receiver (Gps 76CS).
The positioning results from the output of the GPS based on proposed algorithm are shown in follow Figs. 5 to 8. The output of the Gps implemented on the Quddus Algorithm too and result show that proposed algorithm does well. Each of the dark arrow symbols represents the vehicle position after map matching. The dots in the figures show the paths followed by the vehicle before map matching.
Fig.6 Quddus map matching
Fig.7 proposed map matching
V. CONCLUSION In this paper, Correct mapping the output from GPS on the road network parameters has been our purpose and the results show that the proposed algorithms can be effectively used to map matching. The algorithm use only heading of vehicle and vehicle speed information and data base of road network.
[4]
[5]
[6]
[7] Fig.8 Quddus map matching
[8]
Fig.9 proposed map matching
REFERENCES [1] Bernstein, D. and A. Kornhauser, "An Introduction to Map Matching for Personal Navigation Assistants", Technical Report, New Jersey TIDECenter, New Jersey Institute of Technology, New Jersey, NY, USA, 1996.http://www.njtide.org/reports/mapmatchintro.pdf [2] Christopher E. White, David Bernstein, Alain L. Kornhauser (2000),"Some map matching algorithms for personal navigation assistants", a Department of Operations Research and Financial Engineering, Princeton University [3] Greenfeld, J. S., "Matching GPS Observations to Locations on a Digital Map", Proceedings of the 81st
Annual Meeting of the Transportation Research Board, 22-27 May, Washington, DC, USA, pp. 376-384, 2002. Kim, J. S., Lee, J. H., Kang, T.H., Lee, W. Y. and Kim, Y. G., "Node Based Map Matching Algorithm for Car Navigation System", Proceedings of the 29th ISATA Symposium, Florence, Italy, Volume 10, pp. 121-126, 1996. Krakiwsky E. J., Harris C.B. and Wong, R. V. C., "A Kalman filter for Integrating Dead Reckoning, Map Matching and GPS Positioning". Proceedings of IEEE Position Location and Navigation Symposium, pp 3946, 1988. Ochieng. W. Y., Quddus, M.and Noland, R. B., " Map Matching in Complex Urban Road Networks", Centre for Transport Studies Department of Civil and Environmental Engineering, Imperial College London, London SW7 2AZ,UK, Revista Brasileira de Cartografia Nº 55/02 ,2004. Quddus, M.A., W. Y. Ochieng, Z. Lin and R.B. Noland,"A General Map- Matching Algorithm for Transport Telematics Applications", GPS solutions, Volume 7, No. 3, pp. 157-167, 2003. Zhou, J., A Three-step General Map Matching Method in the GIS Environment Travel/Transportation Study Perspective, Department of Geography, University of California Santa Barbar, 2004.