Introduction to Mobile Robotics. SLAM: Simultaneous Localization and Mapping

Similar documents
What is the SLAM problem?

Probabilistic Robotics

Probabilistic Robotics. FastSLAM

Introduction to Mobile Robotics SLAM Landmark-based FastSLAM

Particle Filters. CSE-571 Probabilistic Robotics. Dependencies. Particle Filter Algorithm. Fast-SLAM Mapping

Announcements. Recap Landmark based SLAM. Types of SLAM-Problems. Occupancy Grid Maps. Grid-based SLAM. Page 1. CS 287: Advanced Robotics Fall 2009

Simultaneous Localization and Mapping! SLAM

Final project: 45% of the grade, 10% presentation, 35% write-up. Presentations: in lecture Dec 1 and schedule:

Particle Filter in Brief. Robot Mapping. FastSLAM Feature-based SLAM with Particle Filters. Particle Representation. Particle Filter Algorithm

SLAM: Robotic Simultaneous Location and Mapping

ME 456: Probabilistic Robotics

Autonomous Mobile Robot Design

(W: 12:05-1:50, 50-N202)

IROS 05 Tutorial. MCL: Global Localization (Sonar) Monte-Carlo Localization. Particle Filters. Rao-Blackwellized Particle Filters and Loop Closing

Introduction to Mobile Robotics SLAM Grid-based FastSLAM. Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello

L12. EKF-SLAM: PART II. NA568 Mobile Robotics: Methods & Algorithms

Robotics. Lecture 7: Simultaneous Localisation and Mapping (SLAM)

L17. OCCUPANCY MAPS. NA568 Mobile Robotics: Methods & Algorithms

A Genetic Algorithm for Simultaneous Localization and Mapping

Jurnal Teknologi PARTICLE FILTER IN SIMULTANEOUS LOCALIZATION AND MAPPING (SLAM) USING DIFFERENTIAL DRIVE MOBILE ROBOT. Full Paper

Robotics. Lecture 8: Simultaneous Localisation and Mapping (SLAM)

Improving Simultaneous Mapping and Localization in 3D Using Global Constraints

Gaussian Multi-Robot SLAM

D-SLAM: Decoupled Localization and Mapping for Autonomous Robots

Probabilistic Robotics

Kaijen Hsiao. Part A: Topics of Fascination

L10. PARTICLE FILTERING CONTINUED. NA568 Mobile Robotics: Methods & Algorithms

Fast and Accurate SLAM with Rao-Blackwellized Particle Filters

HybridSLAM: Combining FastSLAM and EKF-SLAM for reliable mapping

Mobile Robotics. Mathematics, Models, and Methods. HI Cambridge. Alonzo Kelly. Carnegie Mellon University UNIVERSITY PRESS

TORO - Efficient Constraint Network Optimization for SLAM

ECE276A: Sensing & Estimation in Robotics Lecture 11: Simultaneous Localization and Mapping using a Particle Filter

D-SLAM: Decoupled Localization and Mapping for Autonomous Robots

Robotic Mapping. Outline. Introduction (Tom)

Real Time Data Association for FastSLAM

EKF Localization and EKF SLAM incorporating prior information

Gaussian Processes, SLAM, Fast SLAM and Rao-Blackwellization

Simultaneous Localization and Mapping

2005 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media,

Simultaneous Localization and Mapping (SLAM)

37. Simultaneous Localization and Mapping

COS Lecture 13 Autonomous Robot Navigation

Implementation of Odometry with EKF for Localization of Hector SLAM Method

Survey: Simultaneous Localisation and Mapping (SLAM) Ronja Güldenring Master Informatics Project Intellgient Robotics University of Hamburg

Optimization of the Simultaneous Localization and Map-Building Algorithm for Real-Time Implementation

arxiv: v1 [cs.ro] 18 Jul 2016

Simultaneous Localization

AUTONOMOUS SYSTEMS. LOCALIZATION, MAPPING & SIMULTANEOUS LOCALIZATION AND MAPPING Part V Mapping & Occupancy Grid Mapping

Maritime UAVs Swarm Intelligent Robot Modelling and Simulation using Accurate SLAM method and Rao Blackwellized Particle Filters

Using the Extended Information Filter for Localization of Humanoid Robots on a Soccer Field

Simultaneous Localization and Mapping with Unknown Data Association Using FastSLAM

IN recent years, NASA s Mars Exploration Rovers (MERs)

Localization and Map Building

Probabilistic Robotics

08 An Introduction to Dense Continuous Robotic Mapping

Results for Outdoor-SLAM Using Sparse Extended Information Filters

Implementation of SLAM algorithms in a small-scale vehicle using model-based development

Algorithms for Simultaneous Localization and Mapping

SLAM using Visual Scan-Matching with Distinguishable 3D Points

A Relative Mapping Algorithm

Overview. EECS 124, UC Berkeley, Spring 2008 Lecture 23: Localization and Mapping. Statistical Models

Results for Outdoor-SLAM Using Sparse Extended Information Filters

Visual Bearing-Only Simultaneous Localization and Mapping with Improved Feature Matching

Scalable Monocular SLAM

7630 Autonomous Robotics Probabilities for Robotics

An Embedded Particle Filter SLAM implementation using an affordable platform

Robot Mapping. Least Squares Approach to SLAM. Cyrill Stachniss

Graphbased. Kalman filter. Particle filter. Three Main SLAM Paradigms. Robot Mapping. Least Squares Approach to SLAM. Least Squares in General

Integrated systems for Mapping and Localization

Spring Localization II. Roland Siegwart, Margarita Chli, Martin Rufli. ASL Autonomous Systems Lab. Autonomous Mobile Robots

Integrated Sensing Framework for 3D Mapping in Outdoor Navigation

CI-Graph: An efficient approach for Large Scale SLAM

Evaluation of Pose Only SLAM

Kalman Filter Based. Localization

Recovering Particle Diversity in a Rao-Blackwellized Particle Filter for SLAM After Actively Closing Loops

SLAM in O(log n) with the Combined Kalman -Information Filter

A Lightweight SLAM Algorithm for Indoor Autonomous Navigation

Multi-Robot SLAM with Topological/Metric Maps

Car park mapping with simultaneous localisation and mapping (SLAM)

Fast Randomized Planner for SLAM Automation

Introduction to SLAM Part II. Paul Robertson

Robot Localization based on Geo-referenced Images and G raphic Methods

Stereo Vision as a Sensor for EKF SLAM

Combined Trajectory Planning and Gaze Direction Control for Robotic Exploration

Data Association for SLAM

SLAM Part 2 and Intro to Kernel Machines

Simultaneous localization and mapping (SLAM) is the

An Autonomous Robotic System for Mapping Abandoned Mines

SLAM in Large-scale Cyclic Environments using the Atlas Framework

Graphical SLAM using Vision and the Measurement Subspace

Nonlinear State Estimation for Robotics and Computer Vision Applications: An Overview

MSc. Thesis dissertation: 3D Visual SLAM applied to large-scale underwater scenarios

IPJC: The Incremental Posterior Joint Compatibility Test for Fast Feature Cloud Matching

Computer Science and Artificial Intelligence Laboratory Technical Report. MIT-CSAIL-TR January 29, 2010

A FastSLAM Algorithm for Omnivision

Using the Topological Skeleton for Scalable Global Metrical Map-Building

Spring Localization II. Roland Siegwart, Margarita Chli, Juan Nieto, Nick Lawrance. ASL Autonomous Systems Lab. Autonomous Mobile Robots

Monocular SLAM as a Graph of Coalesced Observations

High Accuracy Navigation Using Laser Range Sensors in Outdoor Applications

An Atlas Framework for Scalable Mapping

Transcription:

Introduction to Mobile Robotics SLAM: Simultaneous Localization and Mapping

The SLAM Problem SLAM is the process by which a robot builds a map of the environment and, at the same time, uses this map to compute its location Localization: inferring location given a map Mapping: inferring a map given a location SLAM: learning a map and locating the robot simultaneously 2

The SLAM Problem SLAM is a chicken-or-egg problem: A map is needed for localizing a robot A good pose estimate is needed to build a map hus, SLAM is regarded as a hard problem in robotics 3

The SLAM Problem SLAM is considered one of the most fundamental problems for robots to become truly autonomous. A variety of different approaches to address the SLAM problem have been presented Probabilistic methods rule! History of SLAM dates back to the mid-eighties (the stone-age of robotics) 4

The SLAM Problem Given: The robot s controls Relative observations Wanted: Map of features Path of the robot 5

The SLAM Problem Absolute robot pose Absolute landmark positions But only relative measurements of landmarks 6

Mapping with Raw Odometry Video.. 7

SLAM Applications SLAM is central to a range of indoor, outdoor, 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 abandoned mines Space: terrain mapping for localization 8

SLAM Applications Indoors Undersea Space Underground 9

Map Representations Examples: Subway map, city map, landmark-based map Maps are topological and/or metric models of the environment 10

Map Representations Grid maps or scans, 2d, 3d [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; 11

Why is SLAM a hard problem? 1. Robot path and map are both unknown 2. Errors in map and pose estimates correlated 12

Why is SLAM a hard problem? Robot pose uncertainty In the real world, the mapping between observations and landmarks is unknown (origin uncertainty of measurements) Data Association: picking wrong data associations can have catastrophic consequences (divergence) 13

SLAM: Simultaneous Localization And Mapping Full SLAM: p(x 0:t,m z 1:t,u 1:t ) Estimates entire path and map! Online SLAM: p(x t,m z 1:t,u 1:t ) = K p(x 1:t,m z 1:t,u 1:t ) dx 1 dx 2...dx t 1 Integrations (marginalization) typically done recursively, one at a time Estimates most recent pose and map! 14

Graphical Model of Full SLAM p( x : t, m z1: t, u1 : 1 t ) 15

Graphical Model of Online SLAM p ( xt, m z1 : t, u1: t ) = Κ p( x1: t, m z1: t, u1: t ) dx1 dx2... dxt 1 16

Graphical Model: Models Motion model Observation model 17

Remember? KF Algorithm 1. Algorithm Kalman_filter(µ t-1, Σ t-1, u t, z t ): 2. Prediction: 3. µ t = A tµ t 1 + Btut T 4. Σt = A Σ A + R t 1 5. Correction: T T 6. Kt = ΣtCt ( Ct ΣtCt + Qt ) 7. µ t = µ t + K t ( zt Ct µ t ) 8. Σ = ( I K C ) Σt t 9. Return µ t, Σ t t t t t t 1 18

EKF SLAM: State representation Localization 3x1 pose vector 3x3 cov. matrix SLAM Landmarks are simply added to the state. Growing state vector and covariance matrix! 19

EKF SLAM: State representation Map with n landmarks: (3+2n)-dimensional Gaussian Bel(x t,m t ) = x y θ l 1 l 2 M l N, 2 σ x σ xy σ xθ σ xl1 σ xl2 L σ xln 2 σ xy σ y σ yθ σ yl1 σ yl2 L σ yln 2 σ xθ σ yθ σ θ σ θl1 σ θl2 L σ θln 2 σ xl1 σ yl1 σ θl1 σ l1 σ l1 l 2 L σ l1 l N 2 σ xl2 σ yl2 σ θl2 σ l1 l 2 σ l2 L σ l2 l N M M M M M O M 2 σ xln σ yln σ θln σ l1 l N σ l2 l N L σ ln Can handle hundreds of dimensions 20

EKF SLAM: Building The Map State Prediction Odometry: Robot-landmark crosscovariance prediction: (skipping time index k) 21

EKF SLAM: Building The Map Measurement Prediction Global-to-local frame transform h 22

EKF SLAM: Building The Map Observation (x,y)-point landmarks 23

EKF SLAM: Building The Map Data Association Associates predicted measurements with observation? (Gating) 24

EKF SLAM: Building The Map Filter Update The usual Kalman filter expressions 25

EKF SLAM: Building The Map Integrating New Landmarks State augmented by landmark-to-landmark cross-covariance: 26

EKF SLAM Map Correlation matrix 27

EKF SLAM Map Correlation matrix 28

EKF SLAM Map Correlation matrix 29

KF-SLAM Properties (Linear Case) The determinant of any sub-matrix of the map covariance matrix decreases monotonically as successive observations are made When a new landmark is initialized, its uncertainty is maximal Landmark uncertainty decreases monotonically with each new observation [Dissanayake et al., 2001] 30

KF-SLAM Properties (Linear Case) In the limit, the landmark estimates become fully correlated [Dissanayake et al., 2001] 31

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. [Dissanayake et al., 2001] 32

Victoria Park Data Set [courtesy by E. Nebot] 33

Victoria Park Data Set Vehicle [courtesy by E. Nebot] 34

Data Acquisition [courtesy by E. Nebot] 35

Estimated Trajectory [courtesy by E. Nebot] 36

EKF SLAM Application [courtesy by J. Leonard] 37

EKF SLAM Application odometry estimated trajectory [courtesy by John Leonard] 38

SLAM Techniques for Generating Consistent Maps EKF SLAM FastSLAM (PF) Network-Based SLAM Hybrid Approaches (combination of NW+PF, NW+EKF) Topological SLAM (mainly place recognition) Scan Matching / Visual Odometry (only locally consistent maps) 39

EKF-SLAM: Complexity Cost per step: quadratic in n, the number of landmarks: O(n 2 ) Total cost to build a map with n landmarks: O(n 3 ) Memory: O(n 2 ) Approaches exist that make EKF-SLAM amortized O(n) / O(n 2 ) / O(n 2 ) D&C SLAM [Paz et al., 2006] 40

EKF-SLAM: Summary Convergence for linear case! Can diverge if nonlinearities are large. And reality is nonlinear... Has been applied successfully in largescale environments Approximations reduce the computational complexity 41

Data Association for SLAM Interpretation tree 42

Data Association for SLAM Env. Dyn. 43

Data Association for SLAM Geometric Constraints Location independent constraints Unary constraint: intrinsic property of feature e.g. type, color, size Binary constraint: relative measure between features e.g. relative position, angle Location dependent constraints Rigidity constraint: "is the feature where I expect it given my position?" Visibility constraint: "is the feature visible from my position?" Extension constraint: "do the features overlap at my position?" All decisions on a significance level α 44

Data Association for SLAM Interpretation Tree [Grimson 1987], [Drumheller 1987], [Castellanos 1996], [Lim 2000] Algorithm backtracking depth-first recursive uses geometric constraints exponential complexity absence of feature: no info. presence of feature: info. perhaps 45

Data Association for SLAM Pygmalion a = 0.95, p = 2 46

Data Association for SLAM Pygmalion a = 0.95, p = 3 47

Data Association for SLAM Pygmalion t exe : 633 ms PowerPC at 300 MHz a = 0.95, p = 4 a = 0.95, p = 5 48

Approximations for SLAM Local submaps [Leonard et al.99, Bosse et al. 02, Newman et al. 03] Sparse links (correlations) [Lu & Milios 97, Guivant & Nebot 01] Sparse extended information filters [Frese et al. 01, Thrun et al. 02] Thin junction tree filters [Paskin 03] Rao-Blackwellisation (FastSLAM) [Murphy 99, Montemerlo et al. 02, Eliazar et al. 03, Haehnel et al. 03] 49