m onte c arlo l ocalization for mobile robots

65
Monte Carlo Localization 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

Upload: thane-sykes

Post on 31-Dec-2015

22 views

Category:

Documents


0 download

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 Presentation

TRANSCRIPT

Page 1: M onte  C arlo  L ocalization for Mobile Robots

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

Take Home Message

Representing uncertainty using samples is powerful, fast, and simple !

Page 3: M onte  C arlo  L ocalization for Mobile Robots

Outline

Robot Localization

Sensor ?

Density Representation ?

Monte Carlo Localization

Results

Page 4: M onte  C arlo  L ocalization for Mobile Robots

Outline

Robot Localization

Sensor ?

Density Representation ?

Monte Carlo Localization

Results

Page 5: M onte  C arlo  L ocalization for Mobile Robots

Minerva

Page 6: M onte  C arlo  L ocalization for Mobile Robots

Motivation

• Crowded public spaces

• Unmodified environments

Page 7: M onte  C arlo  L ocalization for Mobile Robots

Museum Application

Exhibit

Desired Location

Page 8: M onte  C arlo  L ocalization for Mobile Robots

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

Local Tracking

• Sharp initial estimate

• Noisy and ambiguous sensors

Page 10: M onte  C arlo  L ocalization for Mobile Robots

The Bayesian Paradigm

• Knowledge as a probability distribution

60% Rain

40% dry

Page 11: M onte  C arlo  L ocalization for Mobile Robots

Probability of Robot LocationP(Robot Location)

X

Y

State space = 2D, infinite #states

Page 12: M onte  C arlo  L ocalization for Mobile Robots

Bayesian Filtering

• Two phases: 1. Prediction Phase2. Measurement Phase

Page 13: M onte  C arlo  L ocalization for Mobile Robots

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

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

Outline

Robot Localization

Sensor ?

Density Representation ?

Monte Carlo Localization

Results

Page 16: M onte  C arlo  L ocalization for Mobile Robots

What sensor ?

• Sonar ?

• Laser ?

• Vision ?

Page 17: M onte  C arlo  L ocalization for Mobile Robots

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

Problem: Large Crowds

• Horizontally mounted sensors have problems

• One solution: Robust filtering

Page 19: M onte  C arlo  L ocalization for Mobile Robots

Solution: Ceiling Camera

• Upward looking camera

• Model of the world = Ceiling Mosaic

Page 20: M onte  C arlo  L ocalization for Mobile Robots

Global Alignment (other talk)

Page 21: M onte  C arlo  L ocalization for Mobile Robots

Ceiling Mosaic

Page 22: M onte  C arlo  L ocalization for Mobile Robots

Large FOV Problems

• 3D ceiling -> 3D Model ?

• Matching whole images slow

Page 23: M onte  C arlo  L ocalization for Mobile Robots

Small FOV Solution

• Model = orthographic mosaic

• No 3D Effects

• Very fast

Page 24: M onte  C arlo  L ocalization for Mobile Robots

Vision based Sensor

P(z|x)

h(x)z

Page 25: M onte  C arlo  L ocalization for Mobile Robots

Outline

Robot Localization

Sensor ?

Density Representation ?

Monte Carlo Localization

Results

Page 26: M onte  C arlo  L ocalization for Mobile Robots

Hidden Markov Models

A B C D

E

A B C D E

Page 27: M onte  C arlo  L ocalization for Mobile Robots

Kalman Filter

motionmotion

• Very powerful

• Gaussian, unimodal

sensor

Page 28: M onte  C arlo  L ocalization for Mobile Robots

Under Light

Page 29: M onte  C arlo  L ocalization for Mobile Robots

Next to Light

Page 30: M onte  C arlo  L ocalization for Mobile Robots

Elsewhere

Page 31: M onte  C arlo  L ocalization for Mobile Robots

Markov Localization• Fine discretization over {x,y,theta}

• Very successful: Rhino, Minerva, Xavier…

Page 32: M onte  C arlo  L ocalization for Mobile Robots

Dynamic Markov Localization

• Burgard et al., IROS 98

• Idea: use Oct-trees

Page 33: M onte  C arlo  L ocalization for Mobile Robots

Sampling as RepresentationP(Robot Location)

X

Y

Page 34: M onte  C arlo  L ocalization for Mobile Robots

Samples <=> Densities

• Density => samplesObvious

• Samples => densityHistogram, Kernel Density Estimation

Page 35: M onte  C arlo  L ocalization for Mobile Robots

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

Outline

Robot Localization

Sensor ?

Density Representation ?

Monte Carlo Localization

Results

Page 37: M onte  C arlo  L ocalization for Mobile Robots

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

Added Twists

• Camera moves, not object

• Global localization

Page 39: M onte  C arlo  L ocalization for Mobile Robots

Monte Carlo Localization

weighted S’k SkS’

kSk-1

Predict Weight Resample

Page 40: M onte  C arlo  L ocalization for Mobile Robots

1. Prediction Phase

u

Motion Model

P(xt| ,u)

Page 41: M onte  C arlo  L ocalization for Mobile Robots

2. Measurement Phase

Sensor Model

P(z|xt)

Page 42: M onte  C arlo  L ocalization for Mobile Robots

3. Resampling Step

O(N)

Page 43: M onte  C arlo  L ocalization for Mobile Robots

A more in depth look

Page 44: M onte  C arlo  L ocalization for Mobile Robots

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

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

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

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

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

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

Monte Carlo Localization

weighted S’k SkS’

kSk-1

Predict Weight Resample

Page 51: M onte  C arlo  L ocalization for Mobile Robots

Outline

Robot Localization

Sensor ?

Density Representation ?

Monte Carlo Localization

Results

Page 52: M onte  C arlo  L ocalization for Mobile Robots

Video A

• Office Environment

• Sonar Sensors

• Global Localization

• Symmetry confusion

Page 53: M onte  C arlo  L ocalization for Mobile Robots

Global Localization

Page 54: M onte  C arlo  L ocalization for Mobile Robots

Global Localization (2)

Page 55: M onte  C arlo  L ocalization for Mobile Robots

Global Localization (3)

Page 56: M onte  C arlo  L ocalization for Mobile Robots

Reference Path

Page 57: M onte  C arlo  L ocalization for Mobile Robots

Accuracy

Page 58: M onte  C arlo  L ocalization for Mobile Robots

• Smithsonian Museum of American History

• Ceiling Camera, Global Localization Video B

Page 59: M onte  C arlo  L ocalization for Mobile Robots

Odometry Only

Page 60: M onte  C arlo  L ocalization for Mobile Robots

Using Vision

Page 61: M onte  C arlo  L ocalization for Mobile Robots

Fast Internet Morning

Page 62: M onte  C arlo  L ocalization for Mobile Robots

Fast Internet Morning

Odometry only

Vision Laser

Page 63: M onte  C arlo  L ocalization for Mobile Robots

Video C• Univ. Washington Sieg Hall

• Laser

Page 64: M onte  C arlo  L ocalization for Mobile Robots

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

Take Home Message

Representing uncertainty using samples is powerful, fast, and simple !