Probabilistic Robotics. FastSLAM

Similar documents
Probabilistic Robotics

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

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

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

Introduction to Mobile Robotics SLAM Landmark-based FastSLAM

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

What is the SLAM problem?

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

SLAM: Robotic Simultaneous Location and Mapping

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

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

Introduction to Mobile Robotics. SLAM: Simultaneous Localization and Mapping

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

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

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

Fast and Accurate SLAM with Rao-Blackwellized Particle Filters

Kaijen Hsiao. Part A: Topics of Fascination

PacSLAM Arunkumar Byravan, Tanner Schmidt, Erzhuo Wang

Practical Course WS12/13 Introduction to Monte Carlo Localization

Probabilistic Robotics

Simultaneous Localization and Mapping

ME 456: Probabilistic Robotics

arxiv: v1 [cs.ro] 18 Jul 2016

Mobile Robot Mapping and Localization in Non-Static Environments

Probabilistic Robotics

Implementation of Odometry with EKF for Localization of Hector SLAM Method

Robot Mapping. A Short Introduction to the Bayes Filter and Related Models. Gian Diego Tipaldi, Wolfram Burgard

EKF Localization and EKF SLAM incorporating prior information

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

Improvements for an appearance-based SLAM-Approach for large-scale environments

Simultaneous Localization and Mapping with Unknown Data Association Using FastSLAM

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

Stereo vision SLAM: Near real-time learning of 3D point-landmark and 2D occupancy-grid maps using particle filters.

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

Probabilistic Robotics

AUTONOMOUS SYSTEMS. PROBABILISTIC LOCALIZATION Monte Carlo Localization

Autonomous Mobile Robot Design

Improved Simultaneous Localization and Mapping using a Dual Representation of the Environment

COS Lecture 13 Autonomous Robot Navigation

PML-SLAM: a solution for localization in large-scale urban environments

Real Time Data Association for FastSLAM

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

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

A Genetic Algorithm for Simultaneous Localization and Mapping

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

DP-SLAM: Fast, Robust Simultaneous Localization and Mapping Without Predetermined Landmarks

Robot Mapping. TORO Gradient Descent for SLAM. Cyrill Stachniss

Simultaneous Localization and Mapping! SLAM

An Embedded Particle Filter SLAM implementation using an affordable platform

Introduction to Mobile Robotics Bayes Filter Particle Filter and Monte Carlo Localization. Wolfram Burgard

Simultaneous Learning of Motion and Sensor Model Parameters for Mobile Robots

SLAM With Sparse Sensing

This chapter explains two techniques which are frequently used throughout

AN INCREMENTAL SLAM ALGORITHM FOR INDOOR AUTONOMOUS NAVIGATION

Multi-Robot Navigation and Cooperative Mapping in a Circular Topology

Using the Topological Skeleton for Scalable Global Metrical Map-Building

Monte Carlo Localization using Dynamically Expanding Occupancy Grids. Karan M. Gupta

How to Learn Accurate Grid Maps with a Humanoid

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

Navigation methods and systems

Constant/Linear Time Simultaneous Localization and Mapping for Dense Maps

Robotics and Autonomous Systems

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

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

Fast Randomized Planner for SLAM Automation

Probabilistic Mobile Manipulation in Dynamic Environments, with Application to Opening Doors

USING 3D DATA FOR MONTE CARLO LOCALIZATION IN COMPLEX INDOOR ENVIRONMENTS. Oliver Wulf, Bernardo Wagner

model: P (o s ) 3) Weights each new state according to a Markovian observation

Research Article A Light-and-Fast SLAM Algorithm for Robots in Indoor Environments Using Line Segment Map

Segmented DP-SLAM I. INTRODUCTION

Robot Mapping. Grid Maps. Gian Diego Tipaldi, Wolfram Burgard

Tracking Multiple Moving Objects with a Mobile Robot

Localization, Mapping and Exploration with Multiple Robots. Dr. Daisy Tang

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

PROGRAMA DE CURSO. Robotics, Sensing and Autonomous Systems. SCT Auxiliar. Personal

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

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

Automatic Relocalisation for a Single-Camera Simultaneous Localisation and Mapping System

Localization and Map Building

Autonomous vision-based exploration and mapping using hybrid maps and Rao-Blackwellised particle filters

Car park mapping with simultaneous localisation and mapping (SLAM)

Kalman Filter Based. Localization

An Autonomous Robotic System for Mapping Abandoned Mines

Adapting the Sample Size in Particle Filters Through KLD-Sampling

A Unified 3D Mapping Framework using a 3D or 2D LiDAR

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

Improving Data Association in Vision-based SLAM

Gaussian Processes, SLAM, Fast SLAM and Rao-Blackwellization

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

Gaussian Multi-Robot SLAM

TORO - Efficient Constraint Network Optimization for SLAM

Robust Monte-Carlo Localization using Adaptive Likelihood Models

Algorithms for Simultaneous Localization and Mapping

A Relative Mapping Algorithm

Efficient SLAM Scheme Based ICP Matching Algorithm Using Image and Laser Scan Information

C-LOG: A Chamfer Distance Based Method for Localisation in Occupancy Grid-maps

Real-Time Radar SLAM

CSE 490R P1 - Localization using Particle Filters Due date: Sun, Jan 28-11:59 PM

L15. POSE-GRAPH SLAM. NA568 Mobile Robotics: Methods & Algorithms

Transcription:

Probabilistic Robotics FastSLAM

The SLAM Problem SLAM stands for simultaneous localization and mapping The task of building a map while estimating the pose of the robot relative to this map Why is SLAM hard? Chicken and egg problem: a map is needed to localize the robot and a pose estimate is needed to build a map 2

The SLAM Problem A robot moving though an unknown, static environment Given: The robot s controls Observations of nearby features Estimate: Map of features Path of the robot 3

Why is SLAM a hard problem? SLAM: robot path and map are both unknown! Robot path error correlates errors in the map 4

Why is SLAM a hard problem? Robot pose uncertainty 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 5

Data Association Problem A data association is an assignment of observations to landmarks In general there are more than (n observations, m landmarks) possible associations Also called assignment problem 6

Particle Filters Represent belief by random samples Sampling Importance Resampling (SIR) principle Estimation of non-gaussian, nonlinear processes Draw the new generation of particles Assign an importance weight to each particle Resampling Typical application scenarios are tracking, localization, 7

Localization vs. SLAM A particle filter can be used to solve both problems Localization: state space < x, y, θ> SLAM: state space < x, y, θ, map> for landmark maps = < l1, l2,, lm> for grid maps = < c11, c12,, c1n, c21,, cnm> Problem: The number of particles needed to represent a posterior grows exponentially with the dimension of the state space! 8

Dependencies Is there a dependency between the dimensions of the state space? If so, can we use the dependency to solve the problem more efficiently? 9

Dependencies Is there a dependency between the dimensions of the state space? If so, can we use the dependency to solve the problem more efficiently? In the SLAM context The map depends on the poses of the robot. We know how to build a map given the position of the sensor is known. 10

Factored Posterior (Landmarks) poses map observations & movements SLAM posterior Robot path posterior landmark positions Does this help to solve the problem? Factorization first introduced by Murphy in 1999 11

Factored Posterior (Landmarks) poses map observations & movements Factorization first introduced by Murphy in 1999 12

Mapping using Landmarks l1 Landmark 1 z1 observations Robot poses x x1 0 controls u0 z3 x2 x3 u u1 1 z2 Landmark 2... xt ut-1 zt l2 Knowledge of the robot s true path renders landmark positions conditionally independent 13

Factored Posterior Robot path posterior (localization problem) Conditionally independent landmark positions 14

Rao-Blackwellization This factorization is also called Rao-Blackwellization Given that the second term can be computed efficiently, particle filtering becomes possible! 15

FastSLAM Rao-Blackwellized particle filtering based on landmarks [Montemerlo et al., 2002] Each landmark is represented by a 2x2 Extended Kalman Filter (EKF) Each particle therefore has to maintain M EKFs x, y, θ Landmark 1 Landmark 2 Landmark M Particle #2 x, y, θ Landmark 1 Landmark 2 Landmark M x, y, θ Landmark 1 Landmark 2 Landmark M 16 Particle #1 Particle N

FastSLAM Action Update Landmark #1 Filter Particle #1 Landmark #2 Filter Particle #2 Particle #3 17

FastSLAM Sensor Update Landmark #1 Filter Particle #1 Landmark #2 Filter Particle #2 Particle #3 18

FastSLAM Sensor Update Particle #1 Weight = 0.8 Particle #2 Weight = 0.4 Particle #3 Weight = 0.1 19

FastSLAM - Video 20

FastSLAM Complexity Update robot particles based on control ut-1 Incorporate observation zt into Kalman filters Resample particle set N = Number of particles M = Number of map features O(N) Constant time per particle O(N log(m)) Log time per particle O(N log(m)) Log time per particle O(N log(m)) Log time per particle 21

Data Association Problem Which observation belongs to which landmark? A robust SLAM must consider possible data associations Potential data associations depend also on the pose of the robot 22

Multi-Hypothesis Data Association Data association is done on a per-particle basis Robot pose error is factored out of data association decisions 23

Per-Particle Data Association Was the observation generated by the red or the blue landmark? P(observation red) = 0.3 P(observation blue) = 0.7 Two options for per-particle data association Pick the most probable match Pick an random association weighted by the observation likelihoods If the probability is too low, generate a new landmark 24

Results Victoria Park 4 km traverse < 5 m RMS position error 100 particles Blue = GPS Yellow = FastSLAM Dataset courtesy of University of Sydney25

Results Victoria Park Dataset courtesy of University of Sydney26

Results Data Association 27

Results Accuracy 28

Grid-based SLAM Can we solve the SLAM problem if no pre-defined landmarks are available? Can we use the ideas of FastSLAM to build grid maps? As with landmarks, the map depends on the poses of the robot during data acquisition If the poses are known, grid-based mapping is easy ( mapping with known poses ) 29

Mapping using Raw Odometry 30

Mapping with Known Poses Mapping with known poses using laser range data 31

Rao-Blackwellization poses map observations & movements Factorization first introduced by Murphy in 1999 32

Rao-Blackwellization poses map observations & movements SLAM posterior Robot path posterior Mapping with known poses Factorization first introduced by Murphy in 1999 33

Rao-Blackwellization This is localization, use MCL Use the pose estimate from the MCL part and apply mapping with known poses 34

A Graphical Model of RaoBlackwellized Mapping u0 x0 u1 ut-1 x1 x2 z1 z2... xt m zt 35

Rao-Blackwellized Mapping Each particle represents a possible trajectory of the robot Each particle maintains its own map and updates it upon mapping with known poses Each particle survives with a probability proportional to the likelihood of the observations relative to its own map 36

Particle Filter Example 3 particles map of particle 1 map of particle 2 map of particle 3 37

Problem Each map is quite big in case of grid maps Since each particle maintains its own map Therefore, one needs to keep the number of particles small Solution: Compute better proposal distributions! Idea: Improve the pose estimate before applying the particle filter 38

Pose Correction Using Scan Matching Maximize the likelihood of the i-th pose and map relative to the (i-1)-th pose and map xˆt = arg max { p( zt xt, mˆ t 1 ) p( xt ut 1, xˆt 1 )} xt current measurement robot motion map constructed so far 39

Motion Model for Scan Matching Raw Odometry Scan Matching 40

Mapping using Scan Matching 41

FastSLAM with Improved Odometry Scan-matching provides a locally consistent pose correction Pre-correct short odometry sequences using scan-matching and use them as input to FastSLAM Fewer particles are needed, since the error in the input in smaller [Haehnel et al., 2003] 42

Graphical Model for Mapping with Improved Odometry u0... uk-1 z1... z k-1 x0 uk... u2k-1 zk+1...z2k-1... u n k... u(n+1) k-1 z n k+1... z(n+1) k-1 u'1 u'2... u'n xk x2k... x n k zk z2k... z n k m 43

FastSLAM with Scan-Matching 44

FastSLAM with Scan-Matching Loop Closure 45

Map: Intel Research Lab Seattle FastSLAM with Scan-Matching 46

Comparison to Standard FastSLAM Same model for observations Odometry instead of scan matching as input Number of particles varying from 500 to 2.000 Typical result: 47

Further Improvements Improved proposals will lead to more accurate maps They can be achieved by adapting the proposal distribution according to the most recent observations Flexible re-sampling steps can further improve the accuracy. 48

Improved Proposal The proposal adapts to the structure of the environment 49

Selective Re-sampling Re-sampling is dangerous, since important samples might get lost (particle depletion problem) In case of suboptimal proposal distributions re-sampling is necessary to achieve convergence. Key question: When should we resample? 50

Number of Effective Particles Empirical measure of how well the goal distribution is approximated by samples drawn from the proposal neff describes the variance of the particle weights neff is maximal for equal weights. In this case, the distribution is close to the proposal 51

Resampling with Neff Only re-sample when neff drops below a given threshold (n/2) See [Doucet, 98; Arulampalam, 01] 52

Typical Evolution of neff visiting new areas closing the first loop visiting known areas second loop closure 53

Intel Lab 15 particles four times faster than real-time P4, 2.8GHz 5cm resolution during scan matching 1cm resolution in final map 54

Intel Lab 15 particles Compared to FastSLAM with Scan-Matching, the particles are propagated closer to the true distribution 55

Outdoor Campus Map 30 particles 250x250m2 1.75 1.088km miles (odometry) 20cm resolution during scan matching 30cm resolution in final map 56

Outdoor Campus Map - Video 57

MIT Killian Court The infinite-corridor-dataset at MIT 58

MIT Killian Court 59

MIT Killian Court - Video 60

Conclusion The ideas of FastSLAM can also be applied in the context of grid maps Utilizing accurate sensor observation leads to good proposals and highly efficient filters It is similar to scan-matching on a per-particle base The number of necessary particles and re-sampling steps can seriously be reduced Improved versions of grid-based FastSLAM can handle larger environments than naïve implementations in real time since they need one order of magnitude fewer samples 61

More Details on FastSLAM M. Montemerlo, S. Thrun, D. Koller, and B. Wegbreit. FastSLAM: A factored solution to simultaneous localization and mapping, AAAI02 D. Haehnel, W. Burgard, D. Fox, and S. Thrun. An efficient FastSLAM algorithm for generating maps of large-scale cyclic environments from raw laser range measurements, IROS03 M. Montemerlo, S. Thrun, D. Koller, B. Wegbreit. FastSLAM 2.0: An Improved particle filtering algorithm for simultaneous localization and mapping that provably converges. IJCAI-2003 G. Grisetti, C. Stachniss, and W. Burgard. Improving grid-based slam with rao-blackwellized particle filters by adaptive proposals and selective resampling, ICRA05 A. Eliazar and R. Parr. DP-SLAM: Fast, robust simultanous localization and mapping without predetermined landmarks, IJCAI03 62