Introduction to Mobile Robotics SLAM Landmark-based FastSLAM

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

Probabilistic Robotics

Probabilistic Robotics. FastSLAM

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

What is the SLAM problem?

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

Simultaneous Localization and Mapping

Autonomous Mobile Robot Design

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

SLAM: Robotic Simultaneous Location and Mapping

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

Practical Course WS12/13 Introduction to Monte Carlo Localization

ME 456: Probabilistic Robotics

Introduction to Mobile Robotics. SLAM: Simultaneous Localization and Mapping

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

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

Probabilistic Robotics

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

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

COS Lecture 13 Autonomous Robot Navigation

Probabilistic Robotics

Advanced Techniques for Mobile Robotics Graph-based SLAM using Least Squares. Wolfram Burgard, Cyrill Stachniss, Kai Arras, Maren Bennewitz

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

Simultaneous Localization and Mapping with Unknown Data Association Using FastSLAM

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

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

Mobile Robot Mapping and Localization in Non-Static Environments

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

Gaussian Processes, SLAM, Fast SLAM and Rao-Blackwellization

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

Probabilistic Robotics

Kaijen Hsiao. Part A: Topics of Fascination

arxiv: v1 [cs.ro] 18 Jul 2016

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

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

Introduction to Mobile Robotics Multi-Robot Exploration

AN INCREMENTAL SLAM ALGORITHM FOR INDOOR AUTONOMOUS NAVIGATION

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

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

Probabilistic Robotics

Robot Mapping. Hierarchical Pose-Graphs for Online Mapping. Gian Diego Tipaldi, Wolfram Burgard

PacSLAM Arunkumar Byravan, Tanner Schmidt, Erzhuo Wang

ICRA 2016 Tutorial on SLAM. Graph-Based SLAM and Sparsity. Cyrill Stachniss

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

Fast and Accurate SLAM with Rao-Blackwellized Particle Filters

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

08 An Introduction to Dense Continuous Robotic Mapping

Real Time Data Association for FastSLAM

Implementation of Odometry with EKF for Localization of Hector SLAM Method

Car park mapping with simultaneous localisation and mapping (SLAM)

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

EKF Localization and EKF SLAM incorporating prior information

Introduction to Mobile Robotics

Introduction to Mobile Robotics Techniques for 3D Mapping

TORO - Efficient Constraint Network Optimization for SLAM

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

Simultaneous Localization and Mapping! SLAM

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

Navigation methods and systems

Artificial Intelligence for Robotics: A Brief Summary

Robot Mapping. Graph-Based SLAM with Landmarks. Cyrill Stachniss

Adapting the Sample Size in Particle Filters Through KLD-Sampling

Introduction to Mobile Robotics Path Planning and Collision Avoidance. Wolfram Burgard, Maren Bennewitz, Diego Tipaldi, Luciano Spinello

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

37. Simultaneous Localization and Mapping

Multi-Robot Navigation and Cooperative Mapping in a Circular Topology

Robot Mapping. TORO Gradient Descent for SLAM. Cyrill Stachniss

Adapting the Sample Size in Particle Filters Through KLD-Sampling

An Embedded Particle Filter SLAM implementation using an affordable platform

How to Learn Accurate Grid Maps with a Humanoid

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

Localization and Map Building

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

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

This chapter explains two techniques which are frequently used throughout

HybridSLAM: Combining FastSLAM and EKF-SLAM for reliable mapping

Fast Randomized Planner for SLAM Automation

AUTONOMOUS SYSTEMS. PROBABILISTIC LOCALIZATION Monte Carlo Localization

Analysis, optimization, and design of a SLAM solution for an implementation on reconfigurable hardware (FPGA) using CńaSH

Advanced Techniques for Mobile Robotics Bag-of-Words Models & Appearance-Based Mapping

Kalman Filter Based. Localization

Where s the Boss? : Monte Carlo Localization for an Autonomous Ground Vehicle using an Aerial Lidar Map

UNIVERSITÀ DEGLI STUDI DI GENOVA MASTER S THESIS

Constant/Linear Time Simultaneous Localization and Mapping for Dense Maps

Grid-Based Models for Dynamic Environments

SLAM With Sparse Sensing

Robotics. Chapter 25-b. Chapter 25-b 1

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

Robot Mapping. Graph-Based SLAM with Landmarks. Cyrill Stachniss

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

A Relative Mapping Algorithm

Zürich. Roland Siegwart Margarita Chli Martin Rufli Davide Scaramuzza. ETH Master Course: L Autonomous Mobile Robots Summary

Monte Carlo Methods for SLAM with Data Association Uncertainty

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

Robot Mapping. SLAM Front-Ends. Cyrill Stachniss. Partial image courtesy: Edwin Olson 1

SLAM Part 2 and Intro to Kernel Machines

Introduction to Mobile Robotics Path Planning and Collision Avoidance

Gaussian Multi-Robot SLAM

Transcription:

Introduction to Mobile Robotics SLAM Landmark-based FastSLAM Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello Partial slide courtesy of Mike Montemerlo 1

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-or-egg problem: A map is needed to localize the robot 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

Map Representations Typical models are: Feature maps today Grid maps (occupancy or reflection probability maps) 4

Why is SLAM a Hard Problem? SLAM: robot path and map are both unknown! Robot path error correlates errors in the map 5

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 6

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 7

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

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 = < l 1, l 2,, l m > for grid maps = < c 11, c 12,, c 1n, c 21,, c nm > Problem: The number of particles needed to represent a posterior grows exponentially with the dimension of the state space! 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? 10

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. 11

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

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 13

Mapping using Landmarks Landmark 1 l 1 observations z 1 z 3 Robot poses x 0 x 1 x 2 x 3... x t controls u 0 u 2 u 1 u t-1 z 2 z t Landmark 2 l 2 14

Bayes Network and D-Separation (See AI or PGM course) and are independent if d-separated by d-separates from if every undirected path between and is blocked by A path is blocked by if there is a node W on the graph such that either: W has converging arrows along the path ( W ) and neither W nor its descendants are observed (in V), or W does not have converging arrows along the path ( W or W ) and W is observed (W ). 15

Mapping using Landmarks Landmark 1 l 1 observations z 1 z 3 Robot poses x 0 x 1 x 2 x 3... x t controls u 0 u 2 u 1 u t-1 z 2 z t Landmark 2 l 2 Knowledge of the robot s true path renders landmark positions conditionally independent 16

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

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

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 Particle #1 x, y, θ Landmark 1 Landmark 2 Landmark M Particle #2 x, y, θ Landmark 1 Landmark 2 Landmark M Particle N x, y, θ Landmark 1 Landmark 2 Landmark M 19

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

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

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

FastSLAM Sensor Update Particle #1 Update map of particle #1 Particle #2 Update map of particle #2 Particle #3 Update map of particle #3 23

FastSLAM - Video 24

FastSLAM Complexity Update robot particles based on control u t-1 Incorporate observation z t 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 in the number of landmarks, linear in the number of particles 25

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

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

Per-Particle Data Association Was the observation generated by the red or the brown landmark? P(observation red) = 0.3 P(observation brown) = 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 28

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

Results Victoria Park (Video) Dataset courtesy of University of Sydney 30

Results Data Association 31

FastSLAM Summary FastSLAM factors the SLAM posterior into low-dimensional estimation problems Scales to problems with over 1 million features FastSLAM factors robot pose uncertainty out of the data association problem Robust to significant ambiguity in data association Allows data association decisions to be delayed until unambiguous evidence is collected Advantages compared to the classical EKF approach (especially with non-linearities) Complexity of O(N log M) 32