m onte c arlo l ocalization for mobile robots
DESCRIPTION
M onte C arlo L ocalization for Mobile Robots. Frank Dellaert 1 , Dieter Fox 2 , Wolfram Burgard 3 , Sebastian Thrun 4 1 Georgia Institute of Technology 2 University of Washington 3 University of Bonn 4 Carnegie Mellon University. Take Home Message. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/1.jpg)
Monte Carlo Localizationfor Mobile RobotsFrank Dellaert1, Dieter Fox2,
Wolfram Burgard3, Sebastian Thrun4
1Georgia Institute of Technology2University of Washington
3University of Bonn4Carnegie Mellon University
![Page 2: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/2.jpg)
Take Home Message
Representing uncertainty using samples is powerful, fast, and simple !
![Page 3: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/3.jpg)
Outline
Robot Localization
Sensor ?
Density Representation ?
Monte Carlo Localization
Results
![Page 4: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/4.jpg)
Outline
Robot Localization
Sensor ?
Density Representation ?
Monte Carlo Localization
Results
![Page 5: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/5.jpg)
Minerva
![Page 6: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/6.jpg)
Motivation
• Crowded public spaces
• Unmodified environments
![Page 7: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/7.jpg)
Museum Application
Exhibit
Desired Location
![Page 8: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/8.jpg)
Global Localization
• Where in the world is Minerva the Robot ?
• Vague initial estimate
• Noisy and ambiguous sensors
![Page 9: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/9.jpg)
Local Tracking
• Sharp initial estimate
• Noisy and ambiguous sensors
![Page 10: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/10.jpg)
The Bayesian Paradigm
• Knowledge as a probability distribution
60% Rain
40% dry
![Page 11: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/11.jpg)
Probability of Robot LocationP(Robot Location)
X
Y
State space = 2D, infinite #states
![Page 12: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/12.jpg)
Bayesian Filtering
• Two phases: 1. Prediction Phase2. Measurement Phase
![Page 13: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/13.jpg)
1. Prediction Phase
P(xt) = P(xt|xt-1,u) P(xt-1)
u
xt-1 xt
Motion Model
![Page 14: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/14.jpg)
2. Measurement Phase
P(xt|z) = k P(z|xt) P(xt)
z
xt
Sensor Model
![Page 15: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/15.jpg)
Outline
Robot Localization
Sensor ?
Density Representation ?
Monte Carlo Localization
Results
![Page 16: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/16.jpg)
What sensor ?
• Sonar ?
• Laser ?
• Vision ?
![Page 17: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/17.jpg)
Problem: Large Open Spaces
• Walls and obstacles out of range
• Sonar and laser have problems
• One solution: Coastal Navigation
![Page 18: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/18.jpg)
Problem: Large Crowds
• Horizontally mounted sensors have problems
• One solution: Robust filtering
![Page 19: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/19.jpg)
Solution: Ceiling Camera
• Upward looking camera
• Model of the world = Ceiling Mosaic
![Page 20: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/20.jpg)
Global Alignment (other talk)
![Page 21: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/21.jpg)
Ceiling Mosaic
![Page 22: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/22.jpg)
Large FOV Problems
• 3D ceiling -> 3D Model ?
• Matching whole images slow
![Page 23: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/23.jpg)
Small FOV Solution
• Model = orthographic mosaic
• No 3D Effects
• Very fast
![Page 24: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/24.jpg)
Vision based Sensor
P(z|x)
h(x)z
![Page 25: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/25.jpg)
Outline
Robot Localization
Sensor ?
Density Representation ?
Monte Carlo Localization
Results
![Page 26: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/26.jpg)
Hidden Markov Models
A B C D
E
A B C D E
![Page 27: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/27.jpg)
Kalman Filter
motionmotion
• Very powerful
• Gaussian, unimodal
sensor
![Page 28: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/28.jpg)
Under Light
![Page 29: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/29.jpg)
Next to Light
![Page 30: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/30.jpg)
Elsewhere
![Page 31: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/31.jpg)
Markov Localization• Fine discretization over {x,y,theta}
• Very successful: Rhino, Minerva, Xavier…
![Page 32: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/32.jpg)
Dynamic Markov Localization
• Burgard et al., IROS 98
• Idea: use Oct-trees
![Page 33: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/33.jpg)
Sampling as RepresentationP(Robot Location)
X
Y
![Page 34: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/34.jpg)
Samples <=> Densities
• Density => samplesObvious
• Samples => densityHistogram, Kernel Density Estimation
![Page 35: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/35.jpg)
Sampling Advantages
• Arbitrary densities• Memory = O(#samples)• Only in “Typical Set”• Great visualization tool !
• minus: Approximate
![Page 36: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/36.jpg)
Outline
Robot Localization
Sensor ?
Density Representation ?
Monte Carlo Localization
Results
![Page 37: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/37.jpg)
Disclaimer
• Handschin 1970 (!)lacked computing power
• Bootstrap filter 1993 Gordon et al.
• Monte Carlo filter 1996 Kitagawa
• Condensation 1996 Isard & Blake
![Page 38: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/38.jpg)
Added Twists
• Camera moves, not object
• Global localization
![Page 39: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/39.jpg)
Monte Carlo Localization
weighted S’k SkS’
kSk-1
Predict Weight Resample
![Page 40: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/40.jpg)
1. Prediction Phase
u
Motion Model
P(xt| ,u)
![Page 41: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/41.jpg)
2. Measurement Phase
Sensor Model
P(z|xt)
![Page 42: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/42.jpg)
3. Resampling Step
O(N)
![Page 43: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/43.jpg)
A more in depth look
![Page 44: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/44.jpg)
Bayes Law, new look
• Densities:update prior p(x) to p(x|z) via l(x;z)
• Samplesupdate a sample from p(x) to a sample from the posterior p(x|z) through l(x;z)
![Page 45: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/45.jpg)
Bayes Law Problem
• We really want p(x|z) samples
• But we only have p(x) samples !
• How can we upgrade p(x) to p(x|z) ?
![Page 46: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/46.jpg)
More General Problem
• We really want h(x) samples
• But we only have g(x) samples !
• How can we upgrade g(x) to h(x) ?
![Page 47: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/47.jpg)
Solution = Importance Sampling
• 1. generate xi from g(x)
• 2. calculate wi = h(xi)/g(xi)
• 3. assign weight qi = wi/ wi
• Still works if h(x) only known up to normalization factor
![Page 48: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/48.jpg)
Mean and Weighted Mean
• Fair sample:obtain samples xi from p(x|z)E[m(x)|z] ~ m(xi)/N
• Weighted sample: obtain weighted samples (xi,qi) from p(x|z) E[m(x)|z] ~ qi m(xi)
![Page 49: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/49.jpg)
Bayes Law using Samples
• 1. generate xi from p(x)
• 2. calculate wi = l(xi;z)
• 3. assign weight qi = wi/ wi
• Indeed: wi=p(x|z)/p(x) = l(x;z) p(x) /p(x) = l(x;z)
• 4. if you want, resample from (xi,qi)
![Page 50: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/50.jpg)
Monte Carlo Localization
weighted S’k SkS’
kSk-1
Predict Weight Resample
![Page 51: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/51.jpg)
Outline
Robot Localization
Sensor ?
Density Representation ?
Monte Carlo Localization
Results
![Page 52: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/52.jpg)
Video A
• Office Environment
• Sonar Sensors
• Global Localization
• Symmetry confusion
![Page 53: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/53.jpg)
Global Localization
![Page 54: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/54.jpg)
Global Localization (2)
![Page 55: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/55.jpg)
Global Localization (3)
![Page 56: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/56.jpg)
Reference Path
![Page 57: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/57.jpg)
Accuracy
![Page 58: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/58.jpg)
• Smithsonian Museum of American History
• Ceiling Camera, Global Localization Video B
![Page 59: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/59.jpg)
Odometry Only
![Page 60: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/60.jpg)
Using Vision
![Page 61: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/61.jpg)
Fast Internet Morning
![Page 62: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/62.jpg)
Fast Internet Morning
Odometry only
Vision Laser
![Page 63: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/63.jpg)
Video C• Univ. Washington Sieg Hall
• Laser
![Page 64: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/64.jpg)
Conclusions
• Monte Carlo Localization:Powerful yet efficientSignificantly less memory and CPUVery simple to implement
• Future:discrete states, rate information, distributed
![Page 65: M onte C arlo L ocalization for Mobile Robots](https://reader036.vdocuments.mx/reader036/viewer/2022062516/56812c68550346895d90fed8/html5/thumbnails/65.jpg)
Take Home Message
Representing uncertainty using samples is powerful, fast, and simple !