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

introduction to mobile robotics slam simultaneous
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, Cyrill Stachniss, Kai Arras, Maren Bennewitz What is SLAM? Estimate the pose of a robot and the map of the environment at the same time


slide-1
SLIDE 1

Wolfram Burgard, Cyrill Stachniss, Kai Arras, Maren Bennewitz

SLAM: Simultaneous Localization and Mapping Introduction to Mobile Robotics

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 is 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

p(x0:t,m | z1:t,u1:t) p(xt,m | z1:t,u1:t) = … p(x1:t,m | z1:t,u1:t) dx1

∫ ∫ ∫

dx2...dxt−1

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

slide-14
SLIDE 14

Graphical Model of Full SLAM

14

) , | , (

: 1 : 1 : 1 t t t

u z m x p

slide-15
SLIDE 15

Graphical Model of Online SLAM

15

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 …

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(µt-1, Σt-1, ut, zt): 2. Prediction: 3. 4. 5. Correction: 6. 7. 8. 9. Return µt, Σt

17

t t t t t

u B A + =

−1

µ µ

t T t t t t

R A A + Σ = Σ

−1 1

) (

+ Σ Σ =

t T t t t T t t t

Q C C C K ) (

t t t t t t

C z K µ µ µ − + =

t t t t

C K I Σ − = Σ ) (

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

Bel(xt,mt) = x y θ l1 l2  lN # $ % % % % % % % % % & ' ( ( ( ( ( ( ( ( ( , σ x

2

σ xy σ xθ σ xl1 σ xl2  σ xlN σ xy σ y

2

σ yθ σ yl1 σ yl2  σ ylN σ xθ σ yθ σθ

2

σθl1 σθl2  σθlN σ xl1 σ yl1 σθl1 σ l1

2

σ l1l2  σ l1lN σ xl2 σ yl2 σθl2 σ l1l2 σ l2

2

 σ l2lN        σ xlN σ ylN σθlN σ l1lN σ l2lN  σ lN

2

# $ % % % % % % % % % & ' ( ( ( ( ( ( ( ( (

EKF SLAM: State representation

§ Map with n landmarks: (3+2n)-dimensional Gaussian § Can handle hundreds of dimensions

19

slide-20
SLIDE 20

EKF SLAM: Building the Map

Filter Cycle, Overview:

  • 1. State prediction (odometry)
  • 2. Measurement prediction
  • 3. Observation
  • 4. Data Association
  • 5. Update
  • 6. Integration of new landmarks

20

slide-21
SLIDE 21

EKF SLAM: Building the Map

§ State Prediction

21

Odometry: (skipping time index k) Robot-landmark cross- covariance prediction:

slide-22
SLIDE 22

EKF SLAM: Building the Map

§ Measurement Prediction

22

Global-to-local frame transform h

slide-23
SLIDE 23

EKF SLAM: Building the Map

§ Observation

23

(x,y)-point landmarks

slide-24
SLIDE 24

Associates predicted measurements with observation

EKF SLAM: Building the Map

§ Data Association

24

?

slide-25
SLIDE 25

EKF SLAM: Building the Map

§ Filter Update

25

The usual Kalman filter expressions

slide-26
SLIDE 26

EKF SLAM: Building the Map

§ Integrating New Landmarks

26

State augmented by Cross-covariances:

slide-27
SLIDE 27

EKF SLAM

27

Map Correlation matrix

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: Correlations Matter

§ What if we neglected cross-correlations?

30

slide-31
SLIDE 31

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

31

slide-32
SLIDE 32

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)

36

slide-33
SLIDE 33

SLAM: Loop Closure

§ Before loop closure

37

slide-34
SLIDE 34

SLAM: Loop Closure

§ After loop closure

38

slide-35
SLIDE 35

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

39

slide-36
SLIDE 36

KF-SLAM Properties (Linear Case)

§ The determinant of any sub-matrix of the map covariance matrix decreases monotonically as successive observations are made

40

[Dissanayake et al., 2001]

§ When a new land-

mark is initialized, its uncertainty is maximal

§ Landmark uncer-

tainty decreases monotonically with each new

  • bservation
slide-37
SLIDE 37

KF-SLAM Properties (Linear Case)

§ In the limit, the landmark estimates become fully correlated

41

[Dissanayake et al., 2001]

slide-38
SLIDE 38

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.

42

[Dissanayake et al., 2001]

slide-39
SLIDE 39

EKF SLAM Example: Victoria Park Dataset

43

slide-40
SLIDE 40

Victoria Park: Data Acquisition

44

[courtesy by E. Nebot]

slide-41
SLIDE 41

Victoria Park: Estimated Trajectory

45

[courtesy by E. Nebot]

slide-42
SLIDE 42

Victoria Park: Landmarks

46

[courtesy by E. Nebot]

slide-43
SLIDE 43

EKF SLAM Example: Tennis Court

47

[courtesy by J. Leonard]

slide-44
SLIDE 44

EKF SLAM Example: Tennis Court

48

  • dometry

estimated trajectory

[courtesy by John Leonard]

slide-45
SLIDE 45

EKF SLAM Example: Line Features

§ KTH Bakery Data Set

49

[Wulf et al., ICRA 04]

slide-46
SLIDE 46

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

50

slide-47
SLIDE 47

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. § …

51

slide-48
SLIDE 48

EKF-SLAM: Summary

§ The first SLAM solution § Convergence proof for linear Gaussian case § Can diverge if nonlinearities are large (and the reality is nonlinear...) § Can deal only with a single mode § Successful in medium-scale scenes § Approximations exists to reduce the computational complexity

52