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

Similar documents
Probabilistic Robotics

Probabilistic Robotics

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

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

Practical Course WS12/13 Introduction to Monte Carlo Localization

AUTONOMOUS SYSTEMS. PROBABILISTIC LOCALIZATION Monte Carlo Localization

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

This chapter explains two techniques which are frequently used throughout

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

Monte Carlo Localization for Mobile Robots

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

Adapting the Sample Size in Particle Filters Through KLD-Sampling

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

Adapting the Sample Size in Particle Filters Through KLD-Sampling

Probabilistic Robotics

Robotics. Lecture 5: Monte Carlo Localisation. See course website for up to date information.

Revising Stereo Vision Maps in Particle Filter Based SLAM using Localisation Confidence and Sample History

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

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

Tracking Multiple Moving Objects with a Mobile Robot

Artificial Intelligence for Robotics: A Brief Summary

Monte Carlo Localization

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

Computer Vision 2 Lecture 8

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

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

Probabilistic Robotics

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

Robust Monte Carlo Localization for Mobile Robots

Probabilistic Robotics

Introduction to Mobile Robotics Probabilistic Motion Models

Localization and Map Building

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

Probabilistic Robotics. FastSLAM

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

COS Lecture 13 Autonomous Robot Navigation

Tracking Algorithms. Lecture16: Visual Tracking I. Probabilistic Tracking. Joint Probability and Graphical Model. Deterministic methods

SLAM: Robotic Simultaneous Location and Mapping

Practical Extensions to Vision-Based Monte Carlo Localization Methods for Robot Soccer Domain

Mobile Robot Mapping and Localization in Non-Static Environments

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

Statistical Techniques in Robotics (16-831, F10) Lecture #02 (Thursday, August 28) Bayes Filtering

Introduction to Mobile Robotics SLAM Landmark-based FastSLAM

EE565:Mobile Robotics Lecture 3

Robust Monte-Carlo Localization using Adaptive Likelihood Models

Particle Attraction Localisation

Particle Filters for Visual Tracking

Introduction to Mobile Robotics

Monte Carlo Localization for Mobile Robots

Robotics. Chapter 25. Chapter 25 1

7630 Autonomous Robotics Probabilities for Robotics

Active Monte Carlo Recognition

Object Tracking with an Adaptive Color-Based Particle Filter

Markov Localization for Mobile Robots in Dynaic Environments

From Par(cle Filters to Malliavin Filtering with Applica(on to Target Tracking Sérgio Pequito Phd Student

A New Omnidirectional Vision Sensor for Monte-Carlo Localization

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

Micha l Lisowski. Differential Evolution approach to the Localization Problem for Mobile Robots

Mini-Project II. Monte Carlo Localisation for mobile robots

Fox, Burgard & Thrun problem they attack. Tracking or local techniques aim at compensating odometric errors occurring during robot navigation. They re

Uncertainties: Representation and Propagation & Line Extraction from Range data

Lesson 3: Particle Filters

Active Monte Carlo Localization in Outdoor Terrains using Multi-Level Surface Maps

DD2426 Robotics and Autonomous Systems Lecture 6-7: Localization and Mapping

Using Artificial Landmarks to Reduce the Ambiguity in the Environment of a Mobile Robot

Robotic Mapping. Outline. Introduction (Tom)

Autonomous Mobile Robot Design

GT "Calcul Ensembliste"

Obstacle Avoidance (Local Path Planning)

Overview. Monte Carlo Methods. Statistics & Bayesian Inference Lecture 3. Situation At End Of Last Week

Particle Filter for Robot Localization ECE 478 Homework #1

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

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

Sensor Modalities. Sensor modality: Different modalities:

Challenges motivating deep learning. Sargur N. Srihari

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

Motion Models (cont) 1 3/15/2018

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

Particle Filter Tutorial. Carlos Esteves and Daphne Ippolito. Introduction. Prediction. Update. Resample. November 3, 2016

CS4495 Fall 2014 Computer Vision Problem Set 6: Particle Tracking

Introduction to SLAM Part II. Paul Robertson

Robust Monte Carlo Localization for Mobile Robots

Passive Differential Matched-field Depth Estimation of Moving Acoustic Sources

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

Basics of treatment planning II

Obstacle Avoidance (Local Path Planning)

An Adaptive Fusion Architecture for Target Tracking

Voronoi Tracking: Location Estimation Using Sparse and Noisy Sensor Data

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

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

Laboratorio di Problemi Inversi Esercitazione 4: metodi Bayesiani e importance sampling

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

HUMAN COMPUTER INTERFACE BASED ON HAND TRACKING

Use of Extreme Value Statistics in Modeling Biometric Systems

The Plan: Basic statistics: Random and pseudorandom numbers and their generation: Chapter 16.

Probability Models.S4 Simulating Random Variables

ECSE-626 Project: An Adaptive Color-Based Particle Filter

An Experimental Comparison of Localization Methods Continued

LAIR. UNDERWATER ROBOTICS Field Explorations in Marine Biology, Oceanography, and Archeology

Transcription:

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

Motivation Recall: Discrete filter Discretize the continuous state space High memory complexity Fixed resolution (does not adapt to the belief) Particle filters are a way to efficiently represent non-gaussian distribution Basic principle Set of state hypotheses ( particles ) Survival-of-the-fittest 2

Sample-based Localization (sonar)

Mathematical Description Set of weighted samples State hypothesis Importance weight The samples represent the posterior 4

Function Approximation Particle sets can be used to approximate functions The more particles fall into an interval, the higher the probability of that interval How to draw samples from a function/distribution? 5

Rejection Sampling Let us assume that f(x)<1 for all x Sample x from a uniform distribution Sample c from [0,1] if f(x) > c keep the sample otherwise reject the sample c x f(x) x f(x ) c OK 6

Importance Sampling Principle We can even use a different distribution g to generate samples from f By introducing an importance weight w, we can account for the differences between g and f w = f / g f is called target g is called proposal Pre-condition: f(x)>0 g(x)>0 Derivation: See webpage 7

Importance Sampling with Resampling: Landmark Detection Example

Distributions

Distributions Wanted: samples distributed according to p(x z 1, z 2, z 3 ) 10

This is Easy! We can draw samples from p(x z l ) by adding noise to the detection parameters.

Importance Sampling

Importance Sampling with Resampling Weighted samples After resampling

Particle Filters

Sensor Information: Importance Sampling Bel( x) w α p( z x) Bel α p( z x) Bel Bel ( x) ( x) ( x) = α p( z x)

Robot Motion

Sensor Information: Importance Sampling

Robot Motion

Particle Filter Algorithm Sample the next generation for particles using the proposal distribution Compute the importance weights : weight = target distribution / proposal distribution Resampling: Replace unlikely samples by more likely ones 19

Particle Filter Algorithm 1. Algorithm particle_filter( S t-1, u t, z t ): 2. S t =, η = 0 3. For Generate new samples 4. Sample index j(i) from the discrete distribution given by w t-1 5. Sample from using and 6. Compute importance weight 7. Update normalization factor 8. Add to new particle set 9. For 10. Normalize weights 11. return 20

Particle Filter Algorithm Importance factor for x i t: draw x i t 1 from Bel(x t 1 ) draw x i t from p(x t x i t 1,u t )

Resampling Given: Set S of weighted samples. Wanted : Random sample, where the probability of drawing x i is given by w i. Typically done n times with replacement to generate new sample set S.

Resampling W n-1 w n w 1 w 2 W n-1 w n w 1 w 2 w 3 w 3 Roulette wheel Binary search, n log n Stochastic universal sampling Systematic resampling Linear time complexity Easy to implement, low variance

Resampling Algorithm 1. Algorithm systematic_resampling(s,n): 1 2. S ' =, c1 = w 3. For i = 2 n Generate cdf i 4. c i = ci 1 + w 1 5. u ~ U ]0, n ], i 1 Initialize threshold 1 = 6. For j =1 n Draw samples 7. While ( u j > c i ) Skip until next threshold reached 8. i = i +1 9. { i 1 S' = S' < x, n > } Insert 10. u = u 1 n Increment threshold j+ 1 j + 11. Return S Also called stochastic universal sampling

Mobile Robot Localization Each particle is a potential pose of the robot Proposal distribution is the motion model of the robot (prediction step) The observation model is used to compute the importance weight (correction step) [For details, see PDF file on the lecture web page] 25

Motion Model Reminder end pose start pose According to the estimated motion

Motion Model Reminder rotation translation rotation Decompose the motion into Traveled distance Start rotation End rotation

Motion Model Reminder Uncertainty in the translation of the robot: Gaussian over the traveled distance Uncertainty in the rotation of the robot: Gaussians over start and end rotation For each particle, draw a new pose by sampling from these three individual normal distributions

Motion Model Reminder Start

Proximity Sensor Model Reminder Laser sensor Sonar sensor

Mobile Robot Localization Using Particle Filters (1) Each particle is a potential pose of the robot The set of weighted particles approximates the posterior belief about the robot s pose (target distribution) 31

Mobile Robot Localization Using Particle Filters (2) Particles are drawn from the motion model (proposal distribution) Particles are weighted according to the observation model (sensor model) Particles are resampled according to the particle weights 32

Mobile Robot Localization Using Particle Filters (3) Why is resampling needed? We only have a finite number of particles Without resampling: The filter is likely to loose track of the good hypotheses Resampling ensures that particles stay in the meaningful area of the state space 33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

Sample-based Localization (sonar) 51

Initial Distribution 52

After Incorporating Ten Ultrasound Scans 53

After Incorporating 65 Ultrasound Scans 54

Estimated Path 55

Localization for AIBO robots 56

Using Ceiling Maps for Localization [Dellaert et al. 99]

Vision-based Localization z P(z x) h(x)

Under a Light Measurement z: P(z x):

Next to a Light Measurement z: P(z x):

Elsewhere Measurement z: P(z x):

Global Localization Using Vision

Limitations The approach described so far is able to track the pose of a mobile robot and to globally localize the robot How can we deal with localization errors (i.e., the kidnapped robot problem)? 63

Approaches Randomly insert a fixed number of samples This assumes that the robot can be teleported at any point in time Alternatively, insert random samples proportional to the average likelihood of the particles 64

Summary Particle Filters Particle filters are an implementation of recursive Bayesian filtering They represent the posterior by a set of weighted samples They can model non-gaussian distributions Proposal to draw new samples Weight to account for the differences between the proposal and the target Monte Carlo filter, Survival of the fittest, Condensation, Bootstrap filter 65

Summary PF Localization In the context of localization, the particles are propagated according to the motion model. They are then weighted according to the likelihood of the observations. In a re-sampling step, new particles are drawn with a probability proportional to the likelihood of the observation. 66