0% found this document useful (0 votes)
4 views12 pages

Sonar Navigation System

This paper presents a technique for the online extraction of natural point landmarks from sonar data for mobile robot localization and navigation in indoor environments. By matching these landmarks with a reference map and utilizing compass readings, the method enhances the robot's localization accuracy and computational efficiency. The effectiveness of the approach is demonstrated through real-world experiments, showcasing the robot's ability to autonomously navigate using the extracted landmarks.

Uploaded by

Saad Rehman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views12 pages

Sonar Navigation System

This paper presents a technique for the online extraction of natural point landmarks from sonar data for mobile robot localization and navigation in indoor environments. By matching these landmarks with a reference map and utilizing compass readings, the method enhances the robot's localization accuracy and computational efficiency. The effectiveness of the approach is demonstrated through real-world experiments, showcasing the robot's ability to autonomously navigate using the extracted landmarks.

Uploaded by

Saad Rehman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

Robotics and Autonomous Systems 31 (2000) 31–42

Localization and navigation of a mobile robot


using natural point landmarks extracted from sonar data
O. Wijk a,∗ , H.I. Christensen b
a S3 Automatic Control, Royal Institute of Technology, Stockholm, Sweden
b Autonomous Systems, Royal Institute of Technology, S-100 44 Stockholm, Sweden

Abstract
In this paper we present a new technique for on-line extraction of natural point landmarks in an indoor environment. The
landmarks are filtered out from sonar data taken from a mobile platform. By storing point landmark positions in a reference
map, we can achieve absolute robot localization by doing matching between recently collected landmarks and the reference
map. The matching procedure also takes advantage of compass readings to increase computational speed and make the
performance more robust. The technique is easily extended to also encompass local robot localization, which is used when the
robot navigates autonomously. The position accuracy of the robot as well as its capability to navigate using natural landmarks
is illustrated in a number of real world experiments. © 2000 Elsevier Science B.V. All rights reserved.
Keywords: Mobile robot; Autonomous navigation; Localization; Natural landmarks; Sonars

1. Introduction algorithm called Triangulation Based Fusion (TBF)


of sonar data [8].
There has been an abundance of research and de- The paper is outlined as follows. In Section 2, the
velopment related to the use of sonars for robot nav- basic algorithm for natural point landmark extraction
igation in an indoor setting. A good overview can be is described, whereupon Section 3 explains how inde-
found in [1]. Often occupancy grid maps [2] are used pendently collected landmarks can be matched against
for navigating the robot, either by direct matching be- each other in order to localize a mobile robot. In Sec-
tween a local grid map and a global reference grid tion 4, the localization ability is tested in a number
map [3], or by correlation based matching of extracted of real world experiments. Finally, Section 5 presents
grid map features, such as lines [4]. Concerning land- some simple navigation experiments where our No-
mark features extracted from sonar data, it is com- mad 200 robot autonomously navigates from one room
mon to try to classify them into different categories, to another in a building.
like planes, edges or corners [5–7]. In our approach
we only consider one type of landmark features, i.e.
two-dimensional points which are extracted with an 2. Natural point landmark extraction

∗ Corresponding author. Fax: +468-7907329. Our method to obtain natural point landmark posi-
E-mail addresses: [email protected] (O. Wijk), [email protected] tions in an indoor environment is a two layered filter-
(H.I. Christensen) ing process of raw sonar data. The filtering process is

0921-8890/00/$ – see front matter © 2000 Elsevier Science B.V. All rights reserved.
PII: S 0 9 2 1 - 8 8 9 0 ( 9 9 ) 0 0 0 8 5 - 8
32 O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42

Fig. 1. The filtering process for extracting natural landmarks. Raw sonar data is first filtered with the TBF algorithm to give triangulation
points (nt , T̂ ). The best triangulation points, with respect to the triangulation number nt , are then used to form competing landmark
hypotheses of which we extract the k best ones.

displayed in block form in Fig. 1 and is described in same object in the environment. The TBF algorithm
more detail in the following two subsections. is a simple voting scheme that solves this problem
and performs the correct triangulations (Fig. 3) to
2.1. Triangulation Based Fusion form so-called triangulation points (nt , T̂ ). Here nt
is the number of triangulations that have contributed
The first filter, TBF of raw sonar data, filters out to form the position estimate T̂ = (x̂T , ŷT ). The TBF
stable two-dimensional points in the world. To explain algorithm is computationally cheap and can easily be
briefly how the TBF algorithm works we consider two run in real time on a pentium 133 MHz PC. A com-
sonar readings that are known to originate from the plete description of the TBF algorithm can be found
same object in the environment. By taking the inter- in [8].
section point between the beam arcs of the sonar read-
ings, a position estimate T̂ of the object is obtained 2.2. Formation of competing landmark hypotheses
(Fig. 2). This operation is denoted triangulation in the
sequel. If several sonar readings are available from The second filter layer only considers the “best”
the object, combinations of triangulations could be triangulation points from the first filtering stage, i.e.
formed to improve the position estimate T̂ . However,
before triangulations can be done, one has to deter-
mine, which sonar readings that originate from the

Fig. 3. The TBF algorithm is just a simple voting scheme that


Fig. 2. Basic triangulation principle. Given two sonar readings manages to find sonar measurements that originate from the same
from the same object, a position estimate T̂ can be obtained by “point object” in the environment. These measurements are trian-
taking the intersection between the beam arcs. In practice T̂ will gulated against each other to give a triangulation point (nt , T̂ ).
not be equal to the true position T because of measurement noise Here nt denote the number of triangulations done to obtain the
in the range readings r1 and r2 . object position estimate T̂ .
O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42 33

those points that belong to the following set:


n o
D = (nt , T̂ ) | nt > nth
t . (1)

By discarding target points with a small hit-count nt ,


a significant number of “outliers” from the raw sonar
data are removed. This is because it is unlikely that
an accidental reflector will create a high triangulation
number nt . Also, with a high triangulation number nt ,
the associated target position estimate T̂ will be more
accurate. Experiments have indicated that when the
TBF algorithm works with a memory size of seven
sonar scans [8], then an appropriate thresholding value
t = 4.
is nth
Let us now consider the second layer of filtering in
more detail. The first triangulation point (nt1 , T̂1 ) ∈ D Fig. 4. Extraction of natural landmarks from the environment. The
generates a landmark hypothesis L1 = (sh1 , T̂1 ). Here best triangulation points (small circles) from the TBF algorithm
sh1 is a support number for the landmark hypothesis, form competing landmark hypotheses (big circles). The hypotheses
which initially is set equal to unity. The second trian- supported by the most triangulation points are chosen as natural
landmarks in the environment.
gulation point (nt2 , T̂2 ) ∈ D will result in one of the
following two actions:
1. If |T̂1 − T̂2 | 6  then the L1 hypothesis is updated 3. Localization using natural point landmarks
as L1 = (sh1 , T̂1 ), where
1 Consider a mobile platform, equipped with sonars
T̂1 := (sh T̂1 + T̂2 ), sh1 := sh1 + 1. and a compass, which has collected two independent
sh1 + 1 1
(ref) (ref) (ref)
landmark sets Lref = {L1 , L2 , . . . , Lk1 } and
Here  reflects the belief of position accuracy of the (curr) (curr) (curr)
extracted landmarks. Experiments have indicated Lcurr = {L1 , L2 , . . . , Lk2 } from the same
that an appropriate value of  is  = 10 cm. room, though represented in different robot coordinate
2. If |T̂1 − T̂2 | >  then (nt2 , T̂2 ) will trigger a com- systems (x (ref) , y (ref) ) and (x (curr) , y (curr) ). We could
peting landmark hypothesis L2 = (sh2 , T̂2 ) with imagine Lref being our reference map of landmarks,
support number sh2 = 1. which is going to be matched against a recently col-
More generally, if we have p landmark hypothe- lected set of landmarks Lcurr . Fig. 5 illustrates a sim-
ses L1 , L2 , . . . , Lp , then the next triangulation point ple example. The relation between the coordinate sys-
tems (x (ref) , y (ref) ) and (x (curr) , y (curr) ) will be a linear
(ntl , T̂l ) ∈ D (l > p) will either update one of these
transformation T involving a rotation and a transla-
hypotheses according to item 1 above, or generate a
tion. In this section we will show how Lref and Lcurr
new hypothesis Lp+1 according to item 2. In item 1
can be used to estimate T , and hence obtain absolute
we note that the landmark position is allowed to drift
localization for the mobile platform. Given Lref and
by taking recursive mean. We reason this may be of
Lcurr , T is obtained by solving a simple graph match-
help for getting a more precise position of the land-
ing problem as illustrated in the pseudo code in Fig. 6.
mark as well as taking odometry errors into account.
In words the pseudo code can be explained as fol-
As the on-line updating of competing landmark hy-
lows:
potheses evolves we keep track of the k best hypothe-
1. Form landmark pair sets Pref and Pcurr from land-
ses with respect to their associated support number
mark sets Lref and Lcurr , respectively, i.e.
sh . These k landmarks are the output of the natural
landmark extraction algorithm (Fig. 4). For localiza-
Pref = {(L1 , L2 )|L1 , L2 ∈ Lref },
tion purposes, 20 landmarks (k = 20) has turned out
to be appropriate. Pcurr = {(L01 , L02 )|L01 , L02 ∈ Lcurr }.
34 O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42

not be greater than 2, where  is the uncertainty


radius of a landmark (10 cm in our experiments).
• The sampled compass readings taken during the
collection of the reference map and the current
set of landmarks hints how much the landmark
sets Lref and Lcurr differ in rotation. Another
indication of this rotation can be calculated based
on the assumption that pref = pcurr . If these two
rotation proposals differ with less than 45◦ (this
is how much we trust compass readings!), we
accept that pref might be equal to pcurr .
4. Given the granted assumption that pref might be
equal to pcurr , it is possible to calculate a linear
transformation T relating Lref and Lcurr .
5. By applying T to each landmark in the reference
map Lref we can calculate the number of over-
lapped landmarks (landmarks closer than 2) in the
sets T (Lref ) and Lcurr .
6. The linear transformation T giving rise to the max-
imum number of overlapped landmarks is the one
chosen to relate the landmark sets Lref and Lcurr .
The algorithm’s computational complexity is
O(k12 k22 ) if the line marked with a (3) in Fig. 6 is disre-
garded. This line however effectively sorts away a sig-
Fig. 5. Two landmark sets from the same room have been collected nificant number of false matches (typically 98–99%)
in different robot coordinate systems. One of the sets is our
reference map of landmarks Lref while the other set Lcurr has
and reduces the complexity substantially. We experi-
recently been collected with a mobile platform. How do we match ence a computation time of about 1 s when using a
these sets against each other and hence obtain absolute localization Ultra Sparc 1 with k1 = k2 = 20. Furthermore, the
for the mobile platform? matching algorithm presented in Fig. 6 is intended
for absolute localization, but can easily be extended
2. Loop over Pref and Pcurr . also for local localization of the robot. Indeed, if the
3. For each landmark pairs pref = (L1 , L2 ) and robot knows approximately where it is located in an
pcurr = (L01 , L02 ) the assumption is made that indoor setting, most transformation candidates T in
L1 ↔ L01 and L2 ↔ L02 . This assumption is said the matching algorithm can be disregarded because
to be valid only if the two following conditions they correspond to a robot position inconsistent with
are fulfilled: the a priori knowledge before matching. Hence, the
• The distance difference |L1 − L2 | − |L01 − L02 | complexity of the algorithm reduces even more in this
should not be too large. More precisely it should case. In Section 5 we will see some experiments where

Fig. 6. Landmark matching algorithm for obtaining absolute localization of a mobile platform. A more detailed version of the matching
algorithm can be found in [9].
O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42 35

Fig. 7. View 1 of the living room.

the robot uses both the absolute and local localization equipped with 16 sonars to cover the living room in
technique to autonomously navigate in a building. 11 different runs. The 20 best landmark positions col-
lected from the “zero run” were stored in a landmark
4. Localization experiments reference map Lref together with the mean value of
the sampled compass readings. In addition, a goal
The objective of this section is to evaluate the point position was stored in the reference map. This
matching algorithm presented in Fig. 6 in the previ- position was also marked out on the floor with tape
ous section. The evaluation is in terms of finding the and could later be used for checking position errors
absolute localization accuracy as well as investigating in the matching.
under what circumstances the algorithm might fail Between the runs 1–10 the robot was translated, ro-
(robustness aspect). The experiments presented were tated and reset in order to change the current robot
carried out in a living room shown in Figs. 7 and 8. coordinate system. The robot was driven around in the
The living room contains a number of objects and room, and when it had collected some landmarks the
hence there should be plenty of natural point land- technique described in Section 2 was used to match
marks in this setting. We used a Nomad 200 platform these landmarks (Lcurr ) with the reference map Lref .

Fig. 8. View 2 of the living room.


36 O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42

tion can be spotted in the sense of how well dark dots


are placed over bright stars. The circles in the plots
are matched landmarks. Looking more in detail at the
second run (Fig. 10), it is seen from the robot trajec-
tory that the robot has not traveled a far distance to
collect enough landmarks for a successful matching.
Comparing with Figs. 7 and 8 it is seen that out of the
6 matched landmark positions, 5 correspond to shelf
corners and 1 corresponds to a door post (the bottom
circle in Fig. 10). The good thing with these positions
is that they are static in the environment and hence
are not changed so often. Hence, it is not necessary to
create a new reference map although some parts of the
room may vary in position over time like for instance
Fig. 9. Statistics from the living room runs. Here k1 is the number
table and chair positions. The third run in the living
of landmarks stored in the reference map from the “zero run” and room, graphically presented in Fig. 11, shows a situa-
k2 the number of landmarks from one of the runs 1–10. tion where the robot has been allowed to collect more
landmarks before the matching. Hence, more matched
In most runs only parts of the room area were cov- landmarks are obtained in this case. Comparing with
ered. In some of the runs people were present in the Figs. 7 and 8 we see that for instance the corners of
room or walking by. All this was done in order to test the dinner table as well as the poles of the empty wood
the robustness of the technique. After a matching had shelf corresponds to matched landmarks.
been performed we used the proposed transformation At this stage it is important to point out that the more
T relating the reference map Lref and the current set landmarks we allow the robot to collect, the higher risk
of landmarks Lcurr , to calculate the goal point position we stand of getting some “ghost landmarks” which do
in current robot coordinates. The robot was then or- not show consistency between the runs. If the number
dered to go to the goal point position. When the robot of “ghost landmarks” becomes large compared with
stopped, the distance between the robot and the true the natural landmarks in the environment then the risk
position marked on the floor was measured. In this of an incorrect mapping T increases. In the living
way a position error could be established (this error room there are plenty of natural landmarks, meaning
of course include some odometry errors as well). that this risk is small (as indicated by the experiments),
Statistics from each of the runs 1–10 are provided but in more smooth and symmetric environments
in Fig. 9. The average matching percent of landmarks “ghost landmarks” can cause problems. An example
in the runs was 68%. 1 The mean value of the po- of such environments are corridors. In Figs. 12 and 13
sition error was 8.7 cm with a standard deviation of we illustrate a failed absolute localization experiment
6 cm. All runs gave a correct matching, i.e. the cho- in a corridor. The matched landmarks in Fig. 13 at a
sen transformation T was the correct one. In Figs. first glance seem to be well matched along the corri-
10 and 11, graphical illustrations of runs 2 and 3 are dor walls, but when looking a bit closer it is seen that
shown. In these figures, the dark dots (·) are triangu- there is a position error in the direction of the corridor,
lation points which were produced when filtering out due to matched ghost landmarks along the walls. It
the landmarks in the reference map. The bright stars should, however, be noted that this failed experiment
(∗) are triangulation points produced in the respective was preceded by nine successful localizations [9].
run. All triangulation points have been plotted in the
same coordinate system with the help of the linear 5. Autonomous navigation using natural point
transformation T proposed by the matching algorithm. landmarks
Hence, the quality of the obtained absolute localiza-
In this section we present some simple navigation
1 Mean value of 100 · number of symbol matches/k2 . experiments carried out on our Nomad 200 robot,
O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42 37

Fig. 10. The second run in the living room. Note that the robot has only traveled a short distance before landmark matching. Among the
10 collected landmarks, 6 were successfully matched against the reference maps’ 20 landmarks. The scale on the axes is in millimeters.

Fig. 11. The third run in the living room. The robot trajectory is here longer than in the second run, since we have allowed the robot to
collect more landmarks. Among the 20 collected landmarks, 14 were successfully matched against the reference maps’ 20 landmarks.
38 O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42

Fig. 12. In this corridor the same experiments were done as in the living room. The reference map covered the area between the black
stripes in the picture and was collected with the doors in wide open position.

Fig. 13. A failed absolute localization attempt in the corridor. The doors were closed during this run. The mismatch of landmarks is caused
by ghost landmarks along the walls. The scale on the axes is in millimeters.
O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42 39

Fig. 14. Map over the building where the navigation experiments took place. In the first navigation task, the robot was supposed to go
from the living room out into the big corridor, visit the mail box at the end of the corridor and then go through the corridor entering an
office. In the second run the robot was supposed to go from the living room to the manipulator lab via the big corridor.

based on the ideas presented in the earlier sections. path of goal points leading to the room it was supposed
A map of the building where the experiments took to go to. To ensure that the robot did not bump into
place is shown in Fig. 14. The first experiment con- things when driving toward a goal point position, a
siders the robot going from the living room to a sonar based avoidance behavior was active. The land-
nearby office. On its way to the office, it visits a mark extraction algorithm was running all the time
mail box. In the second experiment, the robot goes during the navigation experiments and hence provided
from the living room to a lab at the other end of the robot with fresh landmark information. Once in a
the corridor. To be able to navigate, the robot used while, local localization was done (Section 3) in order
reference maps of the building. For each room there to correct the robot position from odometry errors.
is a reference map, while the big corridor is split Data produced during the two navigation experiments
up into several adjacent reference maps. Each ref- are presented in Figs. 15 and 16. Before the reader
erence map contained a number of landmark and studies these figures in detail it can be worthwhile to
goal point positions. The relation between the dif- know about the notation used these figures: The trian-
ferent coordinate systems in adjacent room reference gulation points which were produced when filtering
maps was known, since a mutual goal point position out the natural landmarks in the different reference
had been stored (for instance the connecting door maps are plotted with dark dots (·). The bright stars (∗)
position). are triangulation points filtered out from the robot as it
At the beginning of the navigation experiments, the is navigating through the environment. All plotted data
robot only had information of what room it was in, are in the current robot coordinate system. This means
i.e. the living room. To get more accurate position in- that we can actually see the odometry drift as the
formation, the robot explored the room using a sonar robot moves through the world. For instance straight
based explore behavior. At the same time, the natural lines in the corridor become curved and walls from
landmark extraction algorithm (Section 2) was run to separate rooms are not exactly parallel/perpendicular
collect a landmark set Lcurr to be matched against the to each other. The circles in the plots are matched
room reference map landmarks Lref . When absolute natural landmarks, helping the robot to keep itself
localization had been obtained, the robot followed a localized.
40 O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42
O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42 41
42 O. Wijk, H.I. Christensen / Robotics and Autonomous Systems 31 (2000) 31–42

Viewing Figs. 15 and 16 it is seen that the only [2] A. Elfes, Sonar-based real-world mapping and navigation,
useful landmarks in the corridor correspond to door IEEE Journal of Robotics and Automation RA 3 (3) (1987)
posts and window corners. This is because the corri- 249–265.
[3] A. Schultz, W. Adams, Continuous localization using
dor is quite empty of natural landmarks compared to evidence grids, in: Proceedings of the IEEE Conference on
other rooms like the living room, the office and the Robotics and Automation, Leuven, Belgium, May 1998, pp.
manipulator lab. As a result of this, we get quite many 2833–2839.
ghost landmark matches in the corridor. Occasionally, [4] B. Schiele, J. Crowley, A comparison of position estimation
techniques using occupancy grids, in: Proceedings of the
we experience the robot getting lost in the corridor be- IEEE International Conference on Robotics and Automation,
cause of mismatched (ghost) landmarks. Most of the San Diego, CA, 1994, pp. 1628–1634.
times this happens when the robot moves between ad- [5] W. Rencken, Concurrent localization and map building for
jacent reference maps in the corridor, because then it mobile robots using ultra-sonic sonars, in: Proceedings of the
IEEE 1993 International Conference on Intelligent Robotics
survives from localization information from the old
and Systems (IROS’93), Yokohama, Japan, July 1993, pp.
reference map until it has collected enough landmarks 2192–2197.
to match against the new reference map. A better ap- [6] W. Rencken, Autonomous sonar navigation in indoor,
proach would of course be to simultaneously mon- unknown and unstructured environments, in: Proceedings
itor the two nearest adjacent reference maps of the of the International Conference of Intelligent Robots and
Systems (IROS’94), Munich, Germany, September 1994, pp.
robot and keep track of the nearest located landmarks
127–134.
in these maps. In this way the robot could be more [7] J. Leonard, H. Durrant-Whyte, Directed Sonar Sensing for
continuously updated when moving between different Mobile Robot Navigation, Kluwer Academic Publishers,
reference maps. We will most certainly evaluate such Boston, MA, 1992.
[8] O. Wijk, P. Jensfelt, H. Christensen, Triangulation based
kind of methods in the future.
function of ultrasonic sensor data, in: Proceedings of the IEEE
Conference of Robotics and Automation, Leuven, Belgium,
May 1998, pp. 3419–3424.
6. Conclusions and future research [9] O. Wijk, H.I. Christensen, Extraction of natural landmarks
and localization using sonars, in: Proceedings of the
Sixth Symposium on Intelligent Robotic Systems (SIRS-98),
In this paper we presented a new algorithm for ex- Edinburgh, July 1998, pp. 231–240.
traction and matching of natural point landmarks fil-
tered out from raw sonar data. The technique can be
Olle Wijk received his M.Sc. degree in
used for absolute as well as local localization of a mo-
1996 from the Royal Institute of Technol-
bile robot. Concerning local localization which is im- ogy, Stockholm, Sweden. He is currently
portant when navigating the robot, it is our belief that a Ph.D. student within the Centre for Au-
better results can be obtained (especially in corridors) tonomous Systems. His research interests
by implementing Kalman filters with validation gates are primarily sensor fusion, mobile robot
localization and navigation.
that track the natural point landmarks.

Acknowledgements
Henrik I. Christensen is a Chaired
Professor of Computer Science at the
The research has been carried out at the Centre for
Royal Institute of Technology, Stock-
Autonomous Systems at the Royal Institute of Tech- holm, Sweden. He is also the Director
nology, and sponsored by the Swedish Foundation for of the Centre for Autonomous Systems
Strategic Research. that does research on mobile robotics for
domestic and outdoor applications. He
received M.Sc. and Ph.D. degrees from
Aalborg University in 1987 and 1989,
References respectively. He has held appointments at
Aalborg University, University of Pennsylvania, and Oak Ridge
[1] J. Borenstein, H. Everett, L. Feng, Navigating Mobile Robots. National Laboratory. His primary research interest is now in
A.K. Peters, Wellesley, MA, 1996. system integration for vision and mobile robotics.

You might also like