MCL -> SLAM. x: pose m: map u: robot motions z: observations

Preview:

Citation preview

MCL -> SLAM

x: posem: mapu: robot motionsz: observations

The SLAM Problem

Given:-Robot’s controls (u)-Observations of features (z)

Produce:-Map of features (m)-Path of the robot (x)

Indoors

Space

Undersea

Underground

Can’t map without a pose!Can’t localize without a map!

Given:-Robot’s controls (u)-Observations of features (z)

Produce:-Map of features (m)-Path of the robot (x)

Given:-Robot’s controls (u)-Observations of features (z)-Map of features (m)

Produce:-Path of the robot (x)

8Landmark 1 Landmark 2 Landmark M…x, y,

Landmark 1 Landmark 2 Landmark M…x, y, Particle#1

Landmark 1 Landmark 2 Landmark M…x, y, Particle#2

ParticleN

So, what’s a particle?

So how do we represent a landmark?

MCL

Landmark’s location: knownLandmark:

SLAM

Landmark’s location: estimatedLandmark:

covariance matrix

So how do we represent a landmark?

MCL

Landmark’s location: knownLandmark:

SLAM

Landmark’s location: estimatedLandmark:

covariance matrix

How do we run this particle filter? =robot_motionobs=robot_observationsforeach p in Particles

p.weight=1p.move( ) // Motion Model!foreach in obs

if never seen beforep.map.add_landmark( ) // Sensor Model!

elsep.map.update_landmark( ) // Sensor Model!

p.weight=p.weight * p.update_weight( ) // Independence!resample()

13

FastSLAM – Action Update

Particle #1

Particle #2

Particle #3

Landmark #1Filter

Landmark #2Filter

14

FastSLAM – Sensor Update

Particle #1

Particle #2

Particle #3

Landmark #1Filter

Landmark #2Filter

15

FastSLAM – Sensor Update

Particle #1

Particle #2

Particle #3

Weight = 0.8

Weight = 0.4

Weight = 0.1

Discussion Questions

• What happens to one landmark’s estimated location if another landmark is observed wrongly?

• What will happen if each landmark is seen exactly once in a trajectory?

• What happens if the robot should see a landmark, and doesn’t? (negative information)

• What happens if the robot misidentifies a landmark?

Discussion Questions

• What if your robot gets re-kidnapped?• What will happen if your robot never moves?• What happens if the robot should see a

landmark, and doesn’t? (negative information)• What happens if the robot misidentifies a

landmark?

Recommended