Particle Filters; Simultaneous Localization and Mapping (Intelligent Autonomous Robotics) Subramanian Ramamoorthy School of Informatics

Similar documents
L11. EKF SLAM: PART I. NA568 Mobile Robotics: Methods & Algorithms

Mobile Robot Localization

Robotics. Mobile Robotics. Marc Toussaint U Stuttgart

Mobile Robot Localization

Simultaneous Localization and Mapping (SLAM) Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo

2D Image Processing (Extended) Kalman and particle filter

Introduction to Mobile Robotics SLAM: Simultaneous Localization and Mapping

CIS 390 Fall 2016 Robotics: Planning and Perception Final Review Questions

Introduction to Mobile Robotics Information Gain-Based Exploration. Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Giorgio Grisetti, Kai Arras

Simultaneous Localization and Mapping

Modeling and state estimation Examples State estimation Probabilities Bayes filter Particle filter. Modeling. CSC752 Autonomous Robotic Systems

L06. LINEAR KALMAN FILTERS. NA568 Mobile Robotics: Methods & Algorithms

EKF and SLAM. McGill COMP 765 Sept 18 th, 2017

Markov localization uses an explicit, discrete representation for the probability of all position in the state space.

Probabilistic Fundamentals in Robotics. DAUIN Politecnico di Torino July 2010

ROBOTICS 01PEEQW. Basilio Bona DAUIN Politecnico di Torino

Bayes Filter Reminder. Kalman Filter Localization. Properties of Gaussians. Gaussians. Prediction. Correction. σ 2. Univariate. 1 2πσ e.

AUTOMOTIVE ENVIRONMENT SENSORS

Introduction to Mobile Robotics Bayes Filter Particle Filter and Monte Carlo Localization

2D Image Processing. Bayes filter implementation: Kalman filter

Robotics 2 Target Tracking. Giorgio Grisetti, Cyrill Stachniss, Kai Arras, Wolfram Burgard

SLAM for Ship Hull Inspection using Exactly Sparse Extended Information Filters

2D Image Processing. Bayes filter implementation: Kalman filter

CSE 473: Artificial Intelligence

CS491/691: Introduction to Aerial Robotics

Robotics 2 Data Association. Giorgio Grisetti, Cyrill Stachniss, Kai Arras, Wolfram Burgard

Particle Filters. Pieter Abbeel UC Berkeley EECS. Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics

Kalman filtering and friends: Inference in time series models. Herke van Hoof slides mostly by Michael Rubinstein

Probabilistic Fundamentals in Robotics. DAUIN Politecnico di Torino July 2010

Probability Map Building of Uncertain Dynamic Environments with Indistinguishable Obstacles

PATTERN RECOGNITION AND MACHINE LEARNING CHAPTER 13: SEQUENTIAL DATA

Probabilistic Fundamentals in Robotics

L09. PARTICLE FILTERING. NA568 Mobile Robotics: Methods & Algorithms

Probabilistic Fundamentals in Robotics. DAUIN Politecnico di Torino July 2010

Bayesian Methods / G.D. Hager S. Leonard

Robotics 2 Target Tracking. Kai Arras, Cyrill Stachniss, Maren Bennewitz, Wolfram Burgard

Chapter 9: Bayesian Methods. CS 336/436 Gregory D. Hager

Sensor Fusion: Particle Filter

TSRT14: Sensor Fusion Lecture 9

Vlad Estivill-Castro. Robots for People --- A project for intelligent integrated systems

SLAM Techniques and Algorithms. Jack Collier. Canada. Recherche et développement pour la défense Canada. Defence Research and Development Canada

Bayesian Methods in Positioning Applications

Probabilistic Graphical Models for Image Analysis - Lecture 1

Robot Localisation. Henrik I. Christensen. January 12, 2007

Sensor Tasking and Control

Vlad Estivill-Castro (2016) Robots for People --- A project for intelligent integrated systems

Rao-Blackwellized Particle Filtering for 6-DOF Estimation of Attitude and Position via GPS and Inertial Sensors

COS Lecture 16 Autonomous Robot Navigation

CS 188: Artificial Intelligence

Cooperative relative robot localization with audible acoustic sensing

CS 343: Artificial Intelligence

Square Root Unscented Particle Filtering for Grid Mapping

CS 343: Artificial Intelligence

Hidden Markov Models (recap BNs)

Autonomous Mobile Robot Design

Robotics. Lecture 4: Probabilistic Robotics. See course website for up to date information.

Introduction to Mobile Robotics Probabilistic Robotics

From Bayes to Extended Kalman Filter

Lecture: Gaussian Process Regression. STAT 6474 Instructor: Hongxiao Zhu

Dynamic models 1 Kalman filters, linearization,

Robot Localization and Kalman Filters

Using the Kalman Filter for SLAM AIMS 2015

Recursive Bayes Filtering

Simultaneous Localization and Mapping Techniques

Linear Dynamical Systems

E190Q Lecture 10 Autonomous Robot Navigation

in Robotics Sebastian Thrun Carnegie Mellon University, Pittsburgh, USA Dieter Fox Wolfram Burgard Institut fur Informatik

CS 5522: Artificial Intelligence II

Manipulators. Robotics. Outline. Non-holonomic robots. Sensors. Mobile Robots

CS 5522: Artificial Intelligence II

Robotics 2 Least Squares Estimation. Giorgio Grisetti, Cyrill Stachniss, Kai Arras, Maren Bennewitz, Wolfram Burgard

Announcements. CS 188: Artificial Intelligence Fall VPI Example. VPI Properties. Reasoning over Time. Markov Models. Lecture 19: HMMs 11/4/2008

L03. PROBABILITY REVIEW II COVARIANCE PROJECTION. NA568 Mobile Robotics: Methods & Algorithms

Bayesian Interaction Primitives: A SLAM Approach to Human-Robot Interaction

Introduction to Artificial Intelligence (AI)

Markov Models. CS 188: Artificial Intelligence Fall Example. Mini-Forward Algorithm. Stationary Distributions.

Robot Mapping. Least Squares. Cyrill Stachniss

Why do we care? Examples. Bayes Rule. What room am I in? Handling uncertainty over time: predicting, estimating, recognizing, learning

Why do we care? Measurements. Handling uncertainty over time: predicting, estimating, recognizing, learning. Dealing with time

Autonomous Mobile Robot Design

ECE295, Data Assimila0on and Inverse Problems, Spring 2015

Particle Filters for Real-Time Fault Detection in Planetary Rovers

Content.

Probabilistic Graphical Models

Expectation Propagation in Dynamical Systems

Robots Autónomos. Depto. CCIA. 2. Bayesian Estimation and sensor models. Domingo Gallardo

Markov chain Monte Carlo methods for visual tracking

Information Gain-based Exploration Using Rao-Blackwellized Particle Filters

Variable Resolution Particle Filter

Introduction to Mobile Robotics Probabilistic Motion Models

Autonomous Navigation for Flying Robots

Introduction to Artificial Intelligence (AI)

Probabilistic Graphical Models

CS 532: 3D Computer Vision 6 th Set of Notes

PROBABILISTIC REASONING OVER TIME

Computer Vision Group Prof. Daniel Cremers. 14. Sampling Methods

Vision for Mobile Robot Navigation: A Survey

Efficient Monitoring for Planetary Rovers

Lecture 22: Graph-SLAM (2)

EVALUATING SYMMETRIC INFORMATION GAP BETWEEN DYNAMICAL SYSTEMS USING PARTICLE FILTER

Transcription:

Particle Filters; Simultaneous Localization and Mapping (Intelligent Autonomous Robotics) Subramanian Ramamoorthy School of Informatics

Recap: State Estimation using Kalman Filter Project state and error covariance forward in time: e.g., during a time interval, you expect the ball to go from 1m to 1.5 m, with some uncertainty increase Update estimate after measurement: In fact, vision sees ball going to 1.7 m so you update your estimates to Conclude ball must be at 1.6 m with some new level of uncertainty 20 November 2008 PF & SLAM 2

Recap: State Estimation using Kalman Filter Project state and error covariance forward in time: Update estimate after measurement: 20 November 2008 PF & SLAM 3

Limitations of the Kalman Filter Optimal state estimator for linear systems & Gaussian noise Most robots involve nonlinear dynamics (simple example: stickslip friction and slippage of the tires) Many commonly used sensors, e.g., sonar, involve more complex types of noise In complex scenarios (e.g., estimating positions of obstacles in a room), one is dealing with multi-modal distributions Standard extensions for nonlinearity work poorly: If the initial state estimate is wrong, or if process is incorrectly modeled, the filter may quickly diverge Covariance is underestimated 20 November 2008 PF & SLAM 4

Particle Filter Represent probability distribution as a set of discrete particles which occupy the state space efficient for non- Gaussian distributions Particle = state hypothesis Distribution = set of state hypotheses 20 November 2008 PF & SLAM 5

Sample Based Posterior Probabilities e.g., distance could be 4, 5 or 6 m each value is a hypothesis. But, it is much more likely that the true value is 6 m, and not 4 m. True measurement is estimated as weighted average of all hypotheses. 20 November 2008 PF & SLAM 6

Approximating the Posterior 20 November 2008 PF & SLAM 7

Drawing Samples from a Distribution: Rejection Sampling 20 November 2008 PF & SLAM 8

Better Idea: Importance Sampling 20 November 2008 PF & SLAM 9

From Sampling to the Particle Filter Posterior distribution set of sample hypotheses Filter update (i.e., state estimate) based on actual actions and observations by the robot The particle filter algorithms involves three steps: 1. Sampling particles from a proposal distribution (This is like the prediction step in KF) 2. Computing the particle weight (importance sampling) (This is like the correction step in KF) 3. Resampling an additional correction step 20 November 2008 PF & SLAM 10

Particle Filter Update Cycle What are possible values for estimated state (given past state/control)? Which states are more likely given sensor observation? Distribution needs to be adjusted for consistency 20 November 2008 PF & SLAM 11

Particle Filter Advantages/Disadvantages Nonparametric, Handles multi-modal distributions Number of particles grows exponentially with the dimensionality of the state space Probability 1-dim n particles 2-dim n 2 particles m-dim n m particles Position 20 November 2008 PF & SLAM 12

What is SLAM? Consider the following scenario: Your robot is called upon to exploring below the ice sheet in a lake in Antarctica You do not have a map of the terrain You may sense your current position using a combination of vision and sonar both are very noisy in such conditions Your robot needs to do two things at once: Explore the terrain and draw a map Use its measurements to locate itself within this map chicken and egg problem! 20 November 2008 PF & SLAM 13

The SLAM Problem Let s first think about one piece 20 November 2008 PF & SLAM 14

Problem: Location Estimation, given a map Simple question: Where are you (within the given map)? Instead of a single hypothesis about location, maintain probability distribution over hypotheses Use estimation algorithm to improve knowledge given sequence of measurements Density function can have arbitrary form (e.g., multiple modes) so, use algorithms like particle filters But first, a naïve question: if you have a map and a stream of measurements, couldn t you just trace your path? 20 November 2008 PF & SLAM 15

View through the robot s eyes Source: http://www.cs.washington.edu/ai/mobile_robotics/ 20 November 2008 PF & SLAM 16

Problem with Dead Reackoning Simply integrating robot velocity commands from a known starting point gets the robot hopelessly lost Same thing if you integrate on-board odometry (position) 20 November 2008 PF & SLAM 17

Probabilistic Localization: Basic Idea Robot in 1-dim world Initially, it is lost: uniform distribution Queries sensor to find it is near a door: increase probability near doors Multimodal distribution, need more information Robot moves, to door #2 Move increases uncertainty, squashes state distribution Robot queries sensor again and localizes itself! 20 November 2008 PF & SLAM 18

Some Remarks on Localization If the doors were uniquely identifiable then the problem is merely that of sensor noise use a Kalman filter In fact, robot can not be sure which door it has sensed this is the data association problem Beliefs are inherently multimodal due to ambiguities The benefit of the probabilistic approach lies in the ability to explicitly represent and reason about this ambiguity Localization involves two major issues: 1. Representing the belief P(x) (where could I possibly be?) 2. Computing conditional probabilities (where could I be, given what I see?) 20 November 2008 PF & SLAM 19

How to represent map (configuration space)? There are a number of choices and they determine how we deal with the computation. Two examples: Simple use a grid Landmark based methods: e.g., landmark derived from structures like Voronoi graphs 20 November 2008 PF & SLAM 20

Probabilistic Localization (Recursive Filtering) Sensor Model: Probability of current Observation given current state Motion model: Probability of current state, given previous state and action Probability of state, given past history 20 November 2008 PF & SLAM 21

Localization procedurally When you get odometry reading u(k-1), prediction step: Then, when you get a measurement y(k), update step: Note: All discrete sums may be replaced by integrals. 20 November 2008 PF & SLAM 22

The Mapping Problem (structure of the environment) Based on a trace of observations, can we build a map? Robot must cope with two forms of uncertainty: noise in perception (y) and noise in odometry (u). Assume localization is solved robot knows where it is A simple way to build a map: Occupancy grid - Each cell in a 2-dim grid m stores the probability that it is occupied 20 November 2008 PF & SLAM 23

Occupancy Grids Impose grid on space to be mapped Identify an inverse sensor model p(m x y t ) Update odds that grid cells are occupied 20 November 2008 PF & SLAM 24

Simultaneous Localization and Mapping Major approaches: Historical: Given a set of landmarks (e.g., I know goal posts in a stadium), use Kalman Filter type algorithms to estimate joint posterior probability over maps and robot locations Global optimization: Consider locations as random variables and derive constraints between locations using overlapping measurements (parameter optimization to minimize error) Neither one good for truly on-line applications, so many variations based on Bayesian statistics have been developed. 20 November 2008 PF & SLAM 25

Bayesian SLAM: Posterior Probability of Map and Location Motion model: Given what I just did and where I have just been, where am I? Sensor model: Given where I am in a map, what could I expect to see? Map Refinement: Given everything I ve done and seen so far, what is my best guess of the map and my place in it? 20 November 2008 PF & SLAM 26

Graphical Model for Probabilistic SLAM Each node represents variable to be estimated and each arrow represents conditional dependence. (Note: observations are denoted z instead of y) 20 November 2008 PF & SLAM 27

Demo (using FastSLAM Algorithm) Source: http://www.cs.washington.edu/ai/mobile_robotics/ 20 November 2008 PF & SLAM 28

References: H. Durrant-Whyte and T. Bailey, Simultaneous localization and mapping, IEEE Robotics and Automation Magazine, pp. 99 108, June 2006. S. Thrun et al., Probabilistic Robotics, MIT Press, 2005. Acknowledgement: Many pictures and equations in this presentation are taken from Giorgio Grisetti and Cyrill Stachniss, ECMR 2007 Tutorial 20 November 2008 PF & SLAM 29