Introduction to Mobile Robotics SLAM: Simultaneous Localization - - PowerPoint PPT Presentation

introduction to
SMART_READER_LITE
LIVE PREVIEW

Introduction to Mobile Robotics SLAM: Simultaneous Localization - - PowerPoint PPT Presentation

Introduction to Mobile Robotics SLAM: Simultaneous Localization and Mapping Wolfram Burgard, Michael Ruhnke, Bastian Steder What is SLAM? Estimate the pose of a robot and the map of the environment at the same time SLAM is hard,


slide-1
SLIDE 1

SLAM: Simultaneous Localization and Mapping Introduction to Mobile Robotics

Wolfram Burgard, Michael Ruhnke, Bastian Steder

slide-2
SLIDE 2

What is SLAM?

  • Estimate the pose of a robot and the map of

the environment at the same time

  • SLAM is hard, because
  • a map is needed for localization and
  • a good pose estimate is needed for mapping
  • Localization: inferring location given a

map

  • Mapping: inferring a map given locations
  • SLAM: learning a map and locating the

robot simultaneously

slide-3
SLIDE 3

The SLAM Problem

  • SLAM has long been regarded as a

chicken-or-egg problem:

→ a map is needed for localization and → a pose estimate is needed for mapping

3

slide-4
SLIDE 4

SLAM Applications

  • SLAM is central to a range of indoor,
  • utdoor, in-air and underwater applications

for both manned and autonomous vehicles. Examples:

  • At home: vacuum cleaner, lawn mower
  • Air: surveillance with unmanned air vehicles
  • Underwater: reef monitoring
  • Underground: exploration of mines
  • Space: terrain mapping for localization

4

slide-5
SLIDE 5

SLAM Applications

5

Indoors Space Undersea Underground

slide-6
SLIDE 6

Map Representations

Examples: Subway map, city map, landmark-based map

6

Maps are topological and/or metric models of the environment

slide-7
SLIDE 7

Map Representations in Robotics

  • Grid maps or scans, 2d, 3d

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

  • Landmark-based

7

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

slide-8
SLIDE 8

The SLAM Problem

  • SLAM is considered a fundamental

problems for robots to become truly autonomous

  • Large variety of different SLAM

approaches have been developed

  • The majority uses probabilistic

concepts

  • History of SLAM dates back to the

mid-eighties

8

slide-9
SLIDE 9

Feature-Based SLAM

Given:

  • The robot’s controls
  • Relative observations

Wanted:

  • Map of features
  • Path of the robot

9

slide-10
SLIDE 10

Feature-Based SLAM

  • Absolute

robot poses

  • Absolute

landmark positions

  • But only

relative measurements

  • f landmarks

10

slide-11
SLIDE 11

Why is SLAM a Hard Problem?

11

  • 1. Robot path and map are both unknown
  • 2. Errors in map and pose estimates correlated
slide-12
SLIDE 12

Why is SLAM a Hard Problem?

  • The mapping between observations and

landmarks is unknown

  • Picking wrong data associations can have

catastrophic consequences (divergence)

12

Robot pose uncertainty

slide-13
SLIDE 13

SLAM: Simultaneous Localization And Mapping

  • Full SLAM:
  • Online SLAM:
  • Integrations (marginalization) typically

done recursively, one at a time

13

) , | , (

: 1 : 1 : t t t

u z m x p

1 2 1 : 1 : 1 : 1 : 1 : 1

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

  

t t t t t t t

dx dx dx u z m x p u z m x p 

Estimates most recent pose and map! Estimates entire path and map!

slide-14
SLIDE 14

Graphical Model of Full SLAM

14

) , | , (

1 : 1 1 : 1 1 : 1    t t t

u z m x p

slide-15
SLIDE 15

Graphical Model of Online SLAM

15

t t t t t t t

dx dx dx u z m x p u z m x p  

2 1 1 : 1 1 : 1 1 : 1 1 : 1 1 : 1 1

) , | , ( ) , | , (

  

     

slide-16
SLIDE 16

Motion and Observation Model

16

"Motion model" "Observation model"

slide-17
SLIDE 17

Remember the KF Algorithm

1. Algorithm Kalman_filter(mt-1, St-1, ut, zt): 2. Prediction: 3. 4. 5. Correction: 6. 7. 8. 9. Return mt, St

17

t t t t t

u B A  

1

m m

t T t t t t

R A A  S  S

1 1

) (

 S S 

t T t t t T t t t

Q C C C K ) (

t t t t t t

C z K m m m   

t t t t

C K I S   S ) (

slide-18
SLIDE 18

EKF SLAM: State representation

  • Localization

3x1 pose vector 3x3 cov. matrix

  • SLAM

Landmarks simply extend the state. Growing state vector and covariance matrix!

18

slide-19
SLIDE 19
  • Map with n landmarks: (3+2n)-dimensional

Gaussian

  • Can handle hundreds of dimensions

EKF SLAM: State representation

19

slide-20
SLIDE 20

EKF SLAM: Filter Cycle

  • 1. State prediction (odometry)
  • 2. Measurement prediction
  • 3. Measurement
  • 4. Data association
  • 5. Update
  • 6. Integration of new landmarks
slide-21
SLIDE 21

EKF SLAM: Filter Cycle

  • 1. State prediction (odometry)
  • 2. Measurement prediction
  • 3. Measurement
  • 4. Data association
  • 5. Update
  • 6. Integration of new landmarks
slide-22
SLIDE 22

EKF SLAM: State Prediction

Odometry: Robot-landmark cross- covariance prediction:

slide-23
SLIDE 23

EKF SLAM: Measurement Prediction

Global-to-local frame transform h

slide-24
SLIDE 24

EKF SLAM: Obtained Measurement

(x,y)-point landmarks

slide-25
SLIDE 25

EKF SLAM: Data Association

Associates predicted measurements with observation

?

slide-26
SLIDE 26

EKF SLAM: Update Step

The usual Kalman filter expressions

slide-27
SLIDE 27

EKF SLAM: New Landmarks

State augmented by Cross-covariances:

slide-28
SLIDE 28

EKF SLAM

28

Map Correlation matrix

slide-29
SLIDE 29

EKF SLAM

29

Map Correlation matrix

slide-30
SLIDE 30

EKF SLAM

30

Map Correlation matrix

slide-31
SLIDE 31
  • What if we neglected cross-correlations?

EKF SLAM: Correlations Matter

31

slide-32
SLIDE 32

EKF SLAM: Correlations Matter

  • What if we neglected cross-correlations?
  • Landmark and robot uncertainties would

become overly optimistic

  • Data association would fail
  • Multiple map entries of the same landmark
  • Inconsistent map

32

slide-33
SLIDE 33

SLAM: Loop Closure

  • Recognizing an already mapped area,

typically after a long exploration path (the robot “closes a loop”)

  • Structurally identical to data association,

but

  • high levels of ambiguity
  • possibly useless validation gates
  • environment symmetries
  • Uncertainties collapse after a loop closure

(whether the closure was correct or not)

37

slide-34
SLIDE 34

SLAM: Loop Closure

  • Before loop closure

38

slide-35
SLIDE 35

SLAM: Loop Closure

  • After loop closure

39

slide-36
SLIDE 36

SLAM: Loop Closure

  • By revisiting already mapped areas,

uncertainties in robot and landmark estimates can be reduced

  • This can be exploited when exploring an

environment for the sake of better (e.g. more accurate) maps

  • Exploration: the problem of where to

acquire new information → See separate chapter on exploration

40

slide-37
SLIDE 37

KF-SLAM Properties (Linear Case)

  • The determinant of any sub-matrix of the map

covariance matrix decreases monotonically as successive observations are made

41

[Dissanayake et al., 2001]

  • When a new land-

mark is initialized, its uncertainty is maximal

  • Landmark

uncertainty decreases monotonically with each new

  • bservation
slide-38
SLIDE 38

KF-SLAM Properties (Linear Case)

  • In the limit, the landmark estimates

become fully correlated

42

[Dissanayake et al., 2001]

slide-39
SLIDE 39

KF-SLAM Properties (Linear Case)

  • In the limit, the covariance associated with

any single landmark location estimate is determined only by the initial covariance in the vehicle location estimate.

43

[Dissanayake et al., 2001]

slide-40
SLIDE 40

EKF SLAM Example: Victoria Park Dataset

44

slide-41
SLIDE 41

Victoria Park: Data Acquisition

45

[courtesy by E. Nebot]

slide-42
SLIDE 42

Victoria Park: Estimated Trajectory

46

[courtesy by E. Nebot]

slide-43
SLIDE 43

Victoria Park: Landmarks

47

[courtesy by E. Nebot]

slide-44
SLIDE 44

EKF SLAM Example: Tennis Court

48

[courtesy by J. Leonard]

slide-45
SLIDE 45

EKF SLAM Example: Tennis Court

49

  • dometry

estimated trajectory

[courtesy by John Leonard]

slide-46
SLIDE 46

EKF SLAM Example: Line Features

  • KTH Bakery Data Set

50

[Wulf et al., ICRA 04]

slide-47
SLIDE 47

EKF-SLAM: Complexity

  • Cost per step: quadratic in n, the

number of landmarks: O(n2)

  • Total cost to build a map with n

landmarks: O(n3)

  • Memory consumption: O(n2)
  • Problem: becomes computationally

intractable for large maps!

  • There exists variants to circumvent

these problems

51

slide-48
SLIDE 48

SLAM Techniques

  • EKF SLAM
  • FastSLAM
  • Graph-based SLAM
  • Topological SLAM

(mainly place recognition)

  • Scan Matching / Visual Odometry

(only locally consistent maps)

  • Approximations for SLAM: Local submaps,

Sparse extended information filters, Sparse links, Thin junction tree filters, etc.

52

slide-49
SLIDE 49

EKF-SLAM: Summary

  • The first SLAM solution
  • Convergence proof for linear Gaussian

case

  • Can diverge if nonlinearities are large

(and the real world is nonlinear ...)

  • Can deal only with a single mode
  • Successful in medium-scale scenes
  • Approximations exists to reduce the

computational complexity

53