how to do slamtaylorm/16_483f/16.483_17.pdf · 15 given: –the robot’s controls –observations...

52

Upload: others

Post on 28-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem
Page 2: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

How to do SLAM

Page 3: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

How to do SLAM

Page 4: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

How to do SLAM

Page 5: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

How to do SLAM

Page 6: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

How to do SLAM

Page 7: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

How to do SLAM

Page 8: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

How to do SLAM

Page 9: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

How to do SLAM

Page 10: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

How to do SLAM

Page 11: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

Slides based on:Probabilistic Robotics

http://www.probabilistic‐robotics.org/

&

Cyrill Stachniss http://ais.informatik.uni‐freiburg.de/teaching/ws13/mapping/index_en.php

(Sensors on wheels)

Page 12: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

12

Page 13: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

13

Page 14: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

14

Page 15: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

15

Given:– The robot’s controls

– Observations of nearby features

Estimate:– Map of features

– Path of the robot

The SLAM ProblemA robot is exploring an unknown, static environment.

Page 16: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

16

Structure of the Landmark‐based SLAM‐Problem 

Page 17: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

17

SLAM Applications

Page 18: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

18

Representations

• Grid maps or scans

[Lu & Milios, 97; Gutmann, 98: Thrun 98; Burgard, 99; Konolige & Gutmann, 00; Thrun, 00; Arras, 99; Haehnel, 01;…]

• Landmark‐based

[Leonard et al., 98; Castelanos et al., 99: Dissanayake et al., 2001; Montemerlo et al., 2002;…

Page 19: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

iRobot Roomba 980Visual SLAM• http://spectrum.ieee.org/automaton/robotics/home‐robots/irobot‐brings‐visual‐

mapping‐and‐navigation‐to‐the‐roomba‐980• https://www.youtube.com/watch?v=oj3Vawn‐kRE

19

Page 20: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

20

Why is SLAM a hard problem?SLAM: robot path and map are both unknown

Robot path error correlates errors in the map

Page 21: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

21

Why is SLAM a hard problem?

• In the real world, the mapping between observations and landmarks is unknown

• Picking wrong data associations can have catastrophic consequences

• Pose error correlates data associations

Robot poseuncertainty

Page 22: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

22

Page 23: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

23

Page 24: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

24

Graphical Model of Full SLAM: 

),|,( :1:1:1 ttt uzmxp Arrows = influences

Page 25: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

25

Graphical Model of Online SLAM: 

121:1:1:1:1:1 ...),|,(),|,( ttttttt dxdxdxuzmxpuzmxp

Page 26: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

26

SLAM: Simultaneous Localization and Mapping

• Full SLAM:

• Online SLAM:

Integrations typically done one at a time 

),|,( :1:1:1 ttt uzmxp

121:1:1:1:1:1 ...),|,(),|,( ttttttt dxdxdxuzmxpuzmxp

Estimates most recent pose and map!

Estimates entire path and map!

Page 27: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

27

Page 28: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

28

Page 29: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

29

Page 30: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

30

Page 31: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

31

Page 32: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

32

Page 33: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

33

Page 34: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

34

Page 35: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

• Kalman filter• Graph‐based• Particle‐based

35

Page 36: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

36

Page 37: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

P(xt | xt‐1, ut)  

37

Page 38: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

P(zt | xt)38

Page 39: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

http://ais.informatik.uni‐freiburg.de/teaching/ws13/mapping/

index_en.php

For Thursday:

Watch (Extended) Kalman Filter (~45 min) and EKF SLAM (~80 min)on Piazza write 1) A paragraph on each describing what the lectures are about and 2) Questions you had during the lecture. Please this info by 11:59pm, Tuesday the 15th.

Page 40: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

Kalman Filter

Sense Move

Initial Belief

Gaussian:μ, σ2

μ’=μ+uσ2’=σ2+r2

Page 41: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

• Goal: Estimate state x of a system given observations z and controls u

• P(x | z,u)

Page 42: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem
Page 43: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem
Page 44: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

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

11

11111

nn

nnnn

zzzPzzxPzzxzPzzxP

evidenceprior likelihood

)()()|()(

yPxPxyPyxPBayes’ Rule

… with Background Knowledge

Recursive Bayesian Updating

Page 45: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

Recursive Bayesian Updating

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

11

11111

nn

nnnn

zzzPzzxPzzxzPzzxP

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

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

11

111

nn

nnn

zzzPzzopenPopenzPzzopenP

)()()|()|( zP

openPopenzPzopenP

Page 46: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem
Page 47: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem
Page 48: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem
Page 49: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem
Page 50: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem
Page 51: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem

Sense Move

Initial Belief

Page 52: How to do SLAMtaylorm/16_483F/16.483_17.pdf · 15 Given: –The robot’s controls –Observations of nearby features Estimate: –Map of features –Path of the robot The SLAM Problem