Top Banner
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, …
128

Wolfram Burgard University of Freiburg Department of Computer Science Autonomous Intelligent Systems burgard/ Probabilistic.

Mar 28, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
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