+
= (1)
( )
( )
o
u
2
2 2
2
cos , =
=
r c
r c
r c
v v
v v
p v V
& &
& &
& &
(2)
In the formula, denotes GPS point,
denotes GPS projection position on the backup link,
denotes car speed that GPS receiver calculated it,
denotes car speed radial component along the link,
c
p
r
p
c
v
r
v
o
u denotes angle between car running direction and the
link direction, o denotes average variance. Because
of formula (1) and (2), andV s value is between 0
and 1. If it finds a correctly road, then andV s value
is 1 approximately. If there has not a correctly road,
then and s value is less. Determinate
characteristic ( ) denotes the continuity when the
car running on the road, it has been presented as
follows.
D
D
D V
( ) k Q
( ) ( ) ( ) (k Q v v V p p D k Q
r c r c
+ )
& & & &
+ = o +| , , 1 (3)
We can use this formula to calculate the ( ) k Q s
value, if the maximum is more than threshold value ,
then we can make sure that the car running on the link
which
T
Q
( ) k Q is the maximum. When the backup link
has changed, the new links pointer replaces the older
backup link pointer.
3 Assistant algorithm
It uses assistant map matching algorithm to ensure
the map matching algorithms reliability.
Basic theory:
It uses the projection method to calculate the
backup link and small angle and parking lots, and then
finds the more suited link around the car and calculates
the cars position and angles modified value. The
modified data has been provided for the map matching
algorithm
[9, 10]
.
3.1 backup road selection algorithm
It matches electronic map that based GPSs
information, which include position information,
direction information, car speed, car angle speed, etc.
In matching calculation process, it gets the all link to
search the backup road within the rectangle that cars
position is the center of it. Through the rectangle, it can
control the amount of the backup link to reduce the
algorithm calculation times.
After calculated the backup link, it calculates the
link weight value. The weight value formula is as
follows.
weightvalue = angle weight value + distance weight
value + continuity weight value
Explain:
1. angle weight value = the angle difference of car
direction and link direction [0.1deg]* coefficient
of angle weight value (approximate 2)
2. distance weight value = vertical projection
distance[m] * coefficient of distance weight value
(approximate 20)
3. continuity weight value = 0: On the matching last
time, there is small angle status
and the small angle joint the link.
100: joint with the matching link
last two times.
200: the projection point on the
roads prolongation line. (Within
11M).
500: the link joint with the most
suited road.
1000: there are not any continuity
between the road and history road,
the road direction and history
direction is reverse. (In fact, they
are the same road, but roads
direction is reverse.)
3.2 Small angle module
Small angle module is working normally under
the circumstances that there has backup road. In other
words, if there has not the backup road, the small angle
module can not work. When the small angle difference
is happened, it recognise the status if car left small
angle.
1. Enter small angle status condition: the first backup
road weight value is less than 100 and the weight
value difference of the first backup road and the
second backup road is within 150 (tentative value:
100, 150).
2. Small angle process method: when navigation
system enters the small angle difference status, it
does not map matching because error matching
probability is increasing.
3. Left small angle status condition: (according with
one of the follow condition)
1) The coefficients difference of the first
backup road and the second backup road is
more than 200 (approximate 200).
2) Processing step: if cars direction change is
less than threshold value above two times
one after another (tentative threshold value
approximate 1 degree), it calculates backup
road weight value that only based angle
(angle weight value = the angle difference of
car running direction and the link direction
[0.1deg]), then it sorts order by angle weight
value.
Left condition:
z The first backup road weight value that
has been sorted order by angle weight
value is in the range of the threshold
value. (the angle difference of the car
running direction and link direction is
less than 5 degrees, tentative value: 5
degrees)
z The weight values difference of the
first backup road and the second
backup road is above 5 degrees that has
been sorted order by angle weight value.
(tentative value: 5 degrees)
The algorithms merit:
The reason to recognise the added value that it
bases position information is as follows. The difference
of small angle and the difference of weight value are
not too large, then its weight value of continuity and
distance are not reliable, and it derives some reverse
influence and error matching.
In figure 2(a), it uses small angle module in
assistant algorithm, so it avoid the small angles error
matching, the car running track is normally in
electronic map. In figure 2(b), it only uses map
matching, there is small angles error matching.
(a)
(b)
Fig. 2 map matching algorithm actual run contrast
3.3 Parking recognition algorithm
When angular velocity is less than 20[deg/sec],
navigation system recognise if car is in the parking lots.
When car is in parking lots, car must accord with three
conditions as follow. Then navigation system starts
parking recognise algorithm and does not to map
matching.
z In rectangle area (approximate 350[m]),
there are not road around it.
z Detect car reverse signal.
z Car speed is less than 50[km/h], there has
not backup road as map matching calculation
object.
4 Conclusion
Through the track and contrast about actual field
data about the algorithm, we must pay attention to
some problem in detail about the city road complexity
in map matching algorithm, like the small angle,
parking lots, and so on. We test the algorithm
repeatedly. It has good angle control and third
dimension control. There has not any angle problem
and error matching problem in the whole running
process, and there has not any error matching problem
about third dimension parking lots and highway. Even
if there happened some error matching about three
dimension parking lots and highway, the algorithm can
find and adjust error immediately. When the car left the
highway, the algorithm has not any error matching. The
threshold value in the algorithm has been gotten
through the actual running. So it indicate that the map
matching algorithm in the navigation system is a more
complexity system, it need a lot of the work for it.
References:
1. Greenfeld J S. Matching GPS observations to
locations on a digital map[A]. In: Proceedings of
the 81th Annual Meeting of the Transportation
Research Board, Washington D.C. 2002
2. Jo T, Haseyamai M, Kitajima H. A map
matching method with the innovation of the
Kalman filtering[J]. IEICE Trans. Fundamentals,
1996, 11(1):1853-1855
3. Zhong H L, Tong R H, Li J, Chen H S. Research
on GPS Positioning Matching with Road[J],
Mini-Microsystems, 2003, 24(1): 109-113
4. Fang J C, Shen G X, Wan D J. An Adaptive
Federated Kalman Filter Model for GPS/DR/Map
Matching Integrated Navigation System and
Vehicle[J]. Control And Decision, 1999, 14(5):
448-452
5. White C E, Bernstein D, Kornhauser A L. Some
map matching algorithms for personal navigation
assistants[J]. Transportation Research C, 2000, 8:
91-108
6. French R L. Land Vehicle Navigation and
tracking[M]. Global Positioning System: Theory
and Applications, 1997, Volume II: 275-301
7. Bernstein D, Kornhauser A. Map matching for
personal navigation assistants[M]. In: 77
th
Annual
meeting, The Transport Research Board, 1998,
Washington, D.C.
8. Blewitt G. Basics of the GPS Technique:
Observation Equations[M], chapter in book
Geodetic Applications of GPS, The Swedish Land
Survey, 1997
9. Carstensen L W. GPS and GIS: Enhanced
Accuracy in Map Matching through Effective
Filtering of Autonomous GPS Points[J].
Cartography and Geographical Information
Systems, 1998, 25(1): 51-62
10. Taylor G, Blewitt G, Steup D, Corbett S, Car A.
Road Reduction Filtering for GPS-GIS
Navigation[J]. Transactions in GIS, 2001, 5(3):
193-20