wolfram burgard university of freiburg department of computer science autonomous intelligent systems...

128
Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems http://www.informatik.uni-freiburg.de/~burgard/ Probabilistic Techniques for Mobile Robot Navigation anks to Frank Dellaert, Dieter Fox, Giorgio Grisetti, Dirk Haehnel, Cyrill Stachniss, Sebastian Thrun, …

Upload: aaliyah-mitchell

Post on 28-Mar-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Wolfram Burgard

University of Freiburg

Department of Computer Science

Autonomous Intelligent Systems

http://www.informatik.uni-freiburg.de/~burgard/

Probabilistic Techniquesfor

Mobile Robot Navigation

Special Thanks to Frank Dellaert, Dieter Fox, Giorgio Grisetti, Dirk Haehnel, Cyrill Stachniss, Sebastian Thrun, …

Page 3: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Robotics Today

Page 4: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

“Humanoids”

Overcoming the uncanny valley

[Courtesy by Hiroshi Ishiguro]

Page 5: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Humanoid Robots

[Courtesy by Sven Behnke]

Page 6: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

DARPA Grand Challenge

[Courtesy by Sebastian Thrun]

Page 7: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

DCG 2007

Page 8: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Robot Projects: Interactive Tour-guides

Rhino: Albert:

Minerva:

Page 9: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Minerva

Page 10: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Robot Projects: Acting in the Three-dimensional World

Herbert:

Zora: Groundhog:

Page 11: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Nature of Data

Odometry Data Range Data

Page 12: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Probabilistic Techniques in Robotics

Perception = state estimation Action = utility maximization

Key Question How to scale to higher-dimensional

spaces

Page 13: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Pr(A) denotes probability that proposition A is true.

Axioms of Probability Theory

1)Pr(0 A

1)Pr( True

)Pr()Pr()Pr()Pr( BABABA

0)Pr( False

Page 14: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Bayes Formula

evidence

prior likelihood

)(

)()|()(

)()|()()|(),(

yP

xPxyPyxP

xPxyPyPyxPyxP

Page 15: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Normalization

)()|(

1)(

)()|()(

)()|()(

1

xPxyPyP

xPxyPyP

xPxyPyxP

x

yx

xyx

yx

yxPx

xPxyPx

|

|

|

aux)|(:

aux

1

)()|(aux:

Algorithm:

Page 16: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Simple Example of State Estimation

Suppose a robot obtains measurement z What is P(open|z)?

Page 17: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Causal vs. Diagnostic Reasoning

P(open|z) is diagnostic. P(z|open) is causal. Often causal knowledge is easier to

obtain. Bayes rule allows us to use causal

knowledge:

)()()|(

)|(zP

openPopenzPzopenP

count frequencies!

Page 18: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Example

P(z|open) = 0.6 P(z|open) = 0.3 P(open) = P(open) = 0.5

67.03

2

5.03.05.06.0

5.06.0)|(

)()|()()|(

)()|()|(

zopenP

openpopenzPopenpopenzP

openPopenzPzopenP

• z raises the probability that the door is open.

Page 19: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

29

Combining Evidence

Suppose our robot obtains another observation z2.

How can we integrate this new information?

More generally, how can we estimateP(x| z1...zn )?

Page 20: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Recursive Bayesian Updating

),,|(

),,|(),,,|(),,|(

11

11111

nn

nnnn

zzzP

zzxPzzxzPzzxP

Markov assumption: zn is independent of z1,...,zn-1 if we know x.

)()|(

),,|()|(

),,|(

),,|()|(),,|(

...1...1

11

11

111

xPxzP

zzxPxzP

zzzP

zzxPxzPzzxP

ni

in

nn

nn

nnn

Page 21: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Example: Second Measurement

P(z2|open) = 0.5 P(z2|open) = 0.6

P(open|z1)=2/3

625.08

5

31

53

32

21

32

21

)|()|()|()|(

)|()|(),|(

1212

1212

zopenPopenzPzopenPopenzP

zopenPopenzPzzopenP

• z2 lowers the probability that the door is open.

Page 22: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Actions

Often the world is dynamic since actions carried out by the robot, actions carried out by other agents, or just the time passing by

change the world.

How can we incorporate such actions?

Page 23: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Typical Actions

The robot turns its wheels to move The robot uses its manipulator to grasp

an object Plants grow over time…

Actions are never carried out with absolute certainty.

In contrast to measurements, actions generally increase the uncertainty.

Page 24: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Modeling Actions

To incorporate the outcome of an action u into the current “belief”, we use the conditional pdf

P(x|u,x’)

This term specifies the pdf that executing u changes the state from x’ to x.

Page 25: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Example: Closing the door

Page 26: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

State Transitions

P(x|u,x’) for u = “close door”:

If the door is open, the action “close door” succeeds in 90% of all cases.

open closed0.1 1

0.9

0

Page 27: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Integrating the Outcome of Actions

')'()',|()|( dxxPxuxPuxP

)'()',|()|( xPxuxPuxP

Continuous case:

Discrete case:

Page 28: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Example: The Resulting Belief

)|(1161

83

10

85

101

)(),|(

)(),|(

)'()',|()|(

1615

83

11

85

109

)(),|(

)(),|(

)'()',|()|(

uclosedP

closedPcloseduopenP

openPopenuopenP

xPxuopenPuopenP

closedPcloseduclosedP

openPopenuclosedP

xPxuclosedPuclosedP

Page 29: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Bayes Filters: Framework

Given: Stream of observations z and action data u:

Sensor model P(z|x). Action model P(x|u,x’). Prior probability of the system state P(x).

Wanted: Estimate of the state X of a dynamical system. The posterior of the state is also called Belief:

),,,|()( 11 tttt zuzuxPxBel

},,,{ 11 ttt zuzud

Page 30: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Markov Assumption

Underlying Assumptions Static world Independent noise Perfect model, no approximation errors

),|(),,|( 1:11:11:1 ttttttt uxxpuzxxp )|(),,|( :11:1:0 tttttt xzpuzxzp

Page 31: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

111 )(),|()|( ttttttt dxxBelxuxPxzP

Bayes Filters

),,,,|(),,,,,|( 111111 ttttttt uzzuxPuzzuxzP Bayes

z = observationu = actionx = state

),,,|()( 11 tttt zuzuxPxBel

Markov ),,,,|()|( 111 ttttt uzzuxPxzP

Markov11111 ),,,|(),|()|( ttttttttt dxuzuxPxuxPxzP

11111

1111

),,,,|(

),,,,,|()|(

tttt

tttttt

dxuzzuxP

xuzzuxPxzP

Total prob.

Markov111111 ),,,|(),|()|( tttttttt dxzzuxPxuxPxzP

Page 32: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Bayes Filter Algorithm

1. Algorithm Bayes_filter( Bel(x),d ):2. 0

3. If d is a perceptual data item z then4. For all x do5. 6. 7. For all x do8.

9. Else if d is an action data item u then10. For all x do11.

12. Return Bel’(x)

)()|()(' xBelxzPxBel )(' xBel

)(')(' 1 xBelxBel

')'()',|()(' dxxBelxuxPxBel

111 )(),|()|()( tttttttt dxxBelxuxPxzPxBel

Page 33: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Bayes Filters are Familiar!

Kalman filters Discrete filters Particle filters Hidden Markov models Dynamic Bayesian networks Partially Observable Markov Decision Processes

(POMDPs)

111 )(),|()|()( tttttttt dxxBelxuxPxzPxBel

Page 34: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Summary

Bayes rule allows us to compute probabilities that are hard to assess otherwise.

Under the Markov assumption, recursive Bayesian updating can be used to efficiently combine evidence.

Bayes filters are a probabilistic tool for estimating the state of dynamic systems.

Page 35: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Dimensions of Mobile Robot Navigation

mapping

motion control

localizationSLAM

active localization

exploration

integrated approaches

Page 36: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Probabilistic Localization

Page 37: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

s’a

p(x|u,x’)

a

s’

laser data p(o|s,m)p(z|x)observation x

Localization with Bayes Filters

Page 38: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Localization with Sonars in an Occupancy Grid Map

Page 39: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Resulting Beliefs

Page 40: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

What is the Right Representation?

Kalman filters

Multi-hypothesis tracking

Grid-based representations

Topological approaches

Particle filters

Page 41: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Set of N samples {<x1,w1>, … <xN,wN>} containing a state x and an importance weight w

Initialize sample set according to prior knowledge

For each motion u do: Sampling: Generate from each sample a new pose

according to the motion model

For each observation z do: Importance sampling: weigh each sample with the

likelihood

Re-sampling: Draw N new samples from the sample set according to the importance weights

Monte-Carlo Localization

Page 42: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Represent density by random samples

Estimation of non-Gaussian, nonlinear processes

Monte Carlo filter, Survival of the fittest, Condensation, Bootstrap filter, Particle filter

Filtering: [Rubin, 88], [Gordon et al., 93], [Kitagawa 96]

Computer vision: [Isard and Blake 96, 98] Dynamic Bayesian Networks: [Kanazawa et al., 95]

Particle Filters

Page 43: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Mobile Robot Localization with Particle Filters

Page 44: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

MCL: Sensor Update

Page 45: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

PF: Robot Motion

Page 46: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Particle Filter Algorithm

1. Draw from

2. Draw from

3. Importance factor for

4. Re-sample

Page 47: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Beam-based Sensor Model

K

kk mxzPmxzP

1

),|(),|(

Page 48: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Typical Measurement Errors of an Range Measurements

1. Beams reflected by obstacles

2. Beams reflected by persons / caused by crosstalk

3. Random measurements

4. Maximum range measurements

Page 49: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Proximity Measurement

Measurement can be caused by … a known obstacle. cross-talk. an unexpected obstacle (people, furniture, …). missing all obstacles (total reflection, glass, …).

Noise is due to uncertainty … in measuring distance to known obstacle. in position of known obstacles. in position of additional obstacles. whether obstacle is missed.

Page 50: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Beam-based Proximity Model

Measurement noise

zexp zmax0

b

zz

hit eb

mxzP

2exp )(

2

1

2

1),|(

otherwise

zzmxzP

z

0

e),|( exp

unexp

Unexpected obstacles

zexp zmax0

Page 51: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Beam-based Proximity Model

Random measurement Max range

max

1),|(

zmxzPrand

smallzmxzP

1),|(max

zexp zmax0zexp zmax

0

Page 52: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Resulting Mixture Density

),|(

),|(

),|(

),|(

),|(

rand

max

unexp

hit

rand

max

unexp

hit

mxzP

mxzP

mxzP

mxzP

mxzP

T

How can we determine the model parameters?

Page 53: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Raw Sensor DataMeasured distances for expected distance of 300 cm.

Sonar Laser

Page 54: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Approximation Maximize log likelihood of the data

Search space of n-1 parameters. Hill climbing Gradient descent Genetic algorithms …

Deterministically compute the n-th parameter to satisfy normalization constraint.

)|( expzzP

Page 55: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Approximation Results

Sonar

Laser

300cm 400cm

Page 56: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Example

z P(z|x,m)

Page 57: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Odometry Model

22 )'()'( yyxxtrans

)','(atan21 xxyyrot

12 ' rotrot

• Robot moves from to .

• Odometry information .

,, yx ',',' yx

transrotrotu ,, 21

trans1rot

2rot

,, yx

',',' yx

Page 58: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Sampling from a Motion Model

Start

Page 59: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

MCL: Global Localization (Sonar)

Page 60: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Using Ceiling Maps for Localization

[Dellaert et al. 99]

Page 61: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Vision-based Localization

P(s|x)

h(x)s

Page 62: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

MCL: Global Localization Using Vision

Page 63: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Vision-based Localization

Page 64: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Adaptive Sampling

Page 65: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

• Idea: • Assume we know the true belief.

• Represent this belief as a multinomial distribution.

• Determine number of samples such that we can guarantee that, with probability (1- ), the KL-distance between the true posterior and the sample-based approximation is less than .

• Observation: • For fixed and , number of samples only depends on

number k of bins with support:

KLD-sampling

3

12

)1(9

2

)1(9

21

2

1)1,1(

2

1

zkk

kkn

Page 66: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

MCL: Adaptive Sampling (Sonar)

Page 67: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Dimensions of Mobile Robot Navigation

mapping

motion control

localizationSLAM

active localization

exploration

integrated approaches

Page 68: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Occupancy Grid Maps

Store in each cell of a discrete grid the probability that the corresponding area is occupied.

Approximative

Do not require features

All cells are considered independent

Their probabilities are updated using the binary Bayes filter

Page 69: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Updating Occupancy Grid Maps

Update the map cells using the inverse sensor model

Or use the log-odds representation

1

][1

][1

][

][

1][

1][

][

1

1

,|1

,|11

xy

t

xyt

xyt

xyt

ttxy

t

ttxy

txyt mBel

mBel

mP

mP

uzmP

uzmPmBel

1][][ ,|log tt

xyt

xyt uzmoddsmB )(log: ][][ xy

txy

t moddsmB

xP

xPxodds

1:)(

][log xytmodds

][1

xytmB

Page 70: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Typical Sensor Model for Occupancy Grid Maps

Combination of a linear function and a Gaussian:

Page 71: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Incremental Updating of Occupancy Grids (Example)

Page 72: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Resulting Map Obtained with Ultrasound Sensors

Page 73: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Resulting Occupancy and Maximum Likelihood Map

The maximum likelihood map is obtained by clipping the occupancy grid map at a threshold of 0.5

Page 74: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Occupancy Grids: From scans to maps

Page 75: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Tech Museum, San Jose

CAD map occupancy grid map

Page 76: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Dimensions of Mobile Robot Navigation

mapping

motion control

localizationSLAM

active localization

exploration

integrated approaches

Page 77: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Simultaneous Localization and Mapping (SLAM)

To determine its position, the robot needs a map.

During mapping, the robot needs to know its position to learn a consistent model

Simultaneous localization and mapping (SLAM) is a “chicken and egg problem”

Page 78: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Why SLAM is Hard: Raw Odometry

Page 79: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Why SLAM is Hard: Ambiguity

Start

End

Same position

[Courtesy of Eliazar & Parr]

Page 80: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Probabilistic Formulation of SLAM

n=a£b dimensions

map m

three dimensions

Page 81: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Key Question/Problem

How to maintain multiple map and pose hypotheses during mapping?

Ambiguity caused by the data association problem.

Page 82: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

A Graphical Model for SLAM

m

x

z

u

x

z

u

2

2

x

z

u

... t

t

x 1

1

0

10 t-1

Page 83: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Techniques for Generating Consistent Maps

Scan matching (online)

Probabilistic mapping with a single map and a posterior about poses Mapping + Localization (online)

EKF SLAM (online, mostly landmarks or features only)

EM techniques (offline)

Lu and Milios (offline)

Page 84: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Scan Matching

Maximize the likelihood of the i-th pose and map relative to the (i-1)-th pose and map.

)ˆ,|( )ˆ ,|( maxargˆ 11]1[

ttt

ttt

xt xuxpmxzpx

t

robot motioncurrent measurement

map constructed so far

Page 85: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Scan Matching Example

Page 86: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Rao-Blackwellized Particle Filters for SLAMObservation:

Given the true trajectory of the robot, we can efficiently compute the map (mapping with known poses).

Idea: Use a particle filter to represent potential

trajectories of the robot.

Each particle carries its own map.

Each particle survives with a probability that is proportional to the likelihood of the observation given that particle and its map.

[Murphy et al., 99]

Page 87: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Factorization Underlying Rao-Blackwellization

Particle filter representing trajectory hypotheses

Mapping with known poses

Page 88: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Example

map of particle 1 map of particle 3

map of particle 2

3 particles

Page 89: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Limitations

A huge number of particles is required.

This introduces enormous memory and computational requirements.

It prevents the application of the approach in realistic scenarios.

Page 90: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Challenge

Reduction of the number of particles.

Approaches:

Focused proposal distributions (keep the samples in the right place)

Adaptive re-sampling (avoid depletion of relevant particles)

Page 91: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Motion Model for Scan Matching

'

'

d'

final pose

d

measured pose

initial pose

path

Raw OdometryScan Matching

Page 92: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Graphical Model for Mapping with Improved Odometry

m

z

kx

1u'

0uzk-1

...1z ...

uk-1 ...k+1z

ukzu2k-1

2k-1...

x0

k

x2k

z2k

...

u'2u' n

...

xn·k

zu u(n+1)·k-1n·k

n·k+1

...(n+1)·k-1z...

n·kz

...

...

Page 93: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Application Example

Page 94: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

The Optimal Proposal Distribution

For lasers is extremely peaked and dominates the product.

[Doucet, 98]

We can safely approximate by a constant:

Page 95: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Resulting Proposal Distribution

Gaussian approximation:

Page 96: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Resulting Proposal Distribution

Approximate this equation by a Gaussian:

Sampled points around the maximum

maximum reported by a scan matcher

Gaussian approximation

Draw next generation of samples

Page 97: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Estimating the Parameters of the Gaussian for each Particle

xj are a set of sample points around the point x* the scan matching has converged to.

is a normalizing constant

Page 98: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Computing the Importance Weight

Sampled points around the maximum of the observation likelihood

Page 99: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Improved Proposal

The proposal adapts to the structure of the environment

Page 100: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Selective Resampling

Resampling is dangerous, since important samples might get lost(particle depletion problem)

In case of suboptimal proposal distributions resampling is necessary to achieve convergence.

Key question: When should we resample?

Page 101: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Effective Number of Particles

Empirical measure of how well the goal distribution is approximated by samples drawn from the proposal

Neff describes “the variance of the particle weights”

Neff is maximal for equal weights. In this case, the

distribution is close to the proposal

Page 102: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Resampling with Neff

If our approximation is close to the proposal, no resampling is needed

We only resample when Neff drops below a given threshold (N/2)

See [Doucet, ’98; Arulampalam, ’01]

Page 103: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Typical Evolution of Neff

visiting new areas closing the

first loop

second loop closure

visiting known areas

Page 104: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Map of the Intel Lab

15 particles

four times faster than real-time(P4, 2.8GHz)

5cm resolution during scan matching

1cm resolution in final map

Page 105: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Outdoor Campus Map

30 particles

250x250m2

1.75 km (odometry)

20cm resolution during scan matching

30cm resolution in final map

Page 106: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

128

MIT Kilian Court

Page 107: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

129

MIT Kilian Court

Page 108: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Dimensions of Mobile Robot Navigation

mapping

motion control

localizationSLAM

active localization

exploration

integrated approaches

Page 109: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

The approaches seen so far are purely passive.

By reasoning about control, the mapping process can be made much more effective.

Exploration

Page 110: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Decision-Theoretic Formulation of Exploration

reward (expected information gain)

cost (path length)

Page 111: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Exploration with Known Poses

Move to the place that provides you with the best tradeoff between information gathered and cost of reaching that point.

Page 112: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Exploration With Known Poses

Real robot, ultrasounds only:

Page 113: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Dimensions of Mobile Robot Navigation

mapping

motion control

localizationSLAM

active localization

exploration

integrated approaches

Page 114: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Where to Move Next?

Page 115: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Naïve Approach to Combine Exploration and Mapping

Learn the map using a Rao-Blackwellized particle filter.

Apply an exploration approach that minimizes the map uncertainty.

Page 116: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Disadvantage of the Naïve Approach

Exploration techniques only consider the map uncertainty for generating controls.

They avoid re-visiting known areas.

Data association becomes harder.

More particles are needed to learn a correct map.

Page 117: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Application Example

Path estimated by the particle filter

True map and trajectory

Page 118: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Map and Pose Uncertainty

pose uncertainty map uncertainty

Page 119: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Goal

Integrated approach that considers

exploratory actions, place revisiting actions, and loop closing actions

to control the robot.

Page 120: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Dual Representation for Loop Detection

Page 121: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Application Example

Page 122: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Real Exploration Example

Page 123: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Comparison

Map and pose uncertainty:

Map uncertainty only:

Page 124: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Example: Entropy Evolution

Page 125: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Quantitative Results

Localization error:

map and pose uncertainty

avg.

loca

lizati

on e

rror

[m]

map uncertainty

Page 126: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Corridor Exploration

Page 127: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Summary

Probabilistic techniques are a powerful tool to deal with a variety of problems in mobile robot navigation.

By actively controlling mobile robots one can more effectively solve high-dimensional state estimation problems.

Page 128: Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic

Questions?No Arrows Left …

mapping

motion control

localizationSLAM

active localization

exploration

integrated approaches