Probabilistic Robotics

Similar documents
Probabilistic Robotics

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

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

Practical Course WS12/13 Introduction to Monte Carlo Localization

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

AUTONOMOUS SYSTEMS. PROBABILISTIC LOCALIZATION Monte Carlo Localization

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

Monte Carlo Localization for Mobile Robots

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

This chapter explains two techniques which are frequently used throughout

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

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

COS Lecture 13 Autonomous Robot Navigation

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

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

Localization and Map Building

Tracking Multiple Moving Objects with a Mobile Robot

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

Adapting the Sample Size in Particle Filters Through KLD-Sampling

Adapting the Sample Size in Particle Filters Through KLD-Sampling

Probabilistic Robotics

Probabilistic Robotics

Probabilistic Robotics. FastSLAM

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

Monte Carlo Localization

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

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

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

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

Localization and Map Building

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

Monte Carlo Localization for Mobile Robots

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

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

Markov Localization for Mobile Robots in Dynaic Environments

EE565:Mobile Robotics Lecture 3

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

7630 Autonomous Robotics Probabilities for Robotics

Probabilistic Robotics

Autonomous Mobile Robot Design

SLAM: Robotic Simultaneous Location and Mapping

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

Particle Attraction Localisation

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

Robust Monte Carlo Localization for Mobile Robots

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

Introduction to Mobile Robotics SLAM Landmark-based FastSLAM

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

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

Mini-Project II. Monte Carlo Localisation for mobile robots

Integrating Global Position Estimation and Position Tracking for Mobile Robots: The Dynamic Markov Localization Approach

Introduction to robot algorithms CSE 410/510

Mobile Robot Mapping and Localization in Non-Static Environments

Motion Models (cont) 1 3/15/2018

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

CSE-571 Robotics. Sensors for Mobile Robots. Beam-based Sensor Model. Proximity Sensors. Probabilistic Sensor Models. Beam-based Scan-based Landmarks

Final Exam Practice Fall Semester, 2012

Statistical Techniques in Robotics (STR, S15) Lecture#05 (Monday, January 26) Lecturer: Byron Boots

F1/10 th Autonomous Racing. Localization. Nischal K N

Object Tracking with an Adaptive Color-Based Particle Filter

Passive Differential Matched-field Depth Estimation of Moving Acoustic Sources

Artificial Intelligence for Robotics: A Brief Summary

Statistical Techniques in Robotics (16-831, F12) Lecture#05 (Wednesday, September 12) Mapping

Particle Filtering. CS6240 Multimedia Analysis. Leow Wee Kheng. Department of Computer Science School of Computing National University of Singapore

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

Robotics. Chapter 25. Chapter 25 1

Computer Vision 2 Lecture 8

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

Evaluation of Moving Object Tracking Techniques for Video Surveillance Applications

Sensor Modalities. Sensor modality: Different modalities:

Scene Grammars, Factor Graphs, and Belief Propagation

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

What is the SLAM problem?

Robust Monte-Carlo Localization using Adaptive Likelihood Models

Navigation methods and systems

Robotic exploration for mapping and change detection

Robotics. Haslum COMP3620/6320

Statistical Techniques in Robotics (16-831, F10) Lecture#06(Thursday September 11) Occupancy Maps

ME 597/747 Autonomous Mobile Robots. Mid Term Exam. Duration: 2 hour Total Marks: 100

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

Localization of Multiple Robots with Simple Sensors

A Sample of Monte Carlo Methods in Robotics and Vision. Credits. Outline. Structure from Motion. without Correspondences

Modeling and Reasoning with Bayesian Networks. Adnan Darwiche University of California Los Angeles, CA

An Experimental Comparison of Localization Methods Continued

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

Sensor Models / Occupancy Mapping / Density Mapping

Scene Grammars, Factor Graphs, and Belief Propagation

Particle Filters for Visual Tracking

Visually Augmented POMDP for Indoor Robot Navigation

Visual Motion Analysis and Tracking Part II

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

Introduction to Multi-Agent Programming

Simultaneous Localization and Mapping (SLAM)

Reducing Particle Filtering Complexity for 3D Motion Capture using Dynamic Bayesian Networks

UNIVERSITÀ DEGLI STUDI DI GENOVA MASTER S THESIS

Robotic Mapping. Outline. Introduction (Tom)

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

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

Gaussian Processes, SLAM, Fast SLAM and Rao-Blackwellization

Active Monte Carlo Recognition

Transcription:

Probabilistic Robotics Bayes Filter Implementations Discrete filters, Particle filters

Piecewise Constant Representation of belief 2

Discrete Bayes Filter Algorithm 1. Algorithm Discrete_Bayes_filter( Bel(x),d ): 2. η=0 3. If d is a perceptual data item z then 4. For all x do 5. 6. 7. For all x do 8. 9. Else if d is an action data item u then 10. For all x do 11. 12. Return Bel (x) 3

Piecewise Constant Representation 4

Implementation (1) To update the belief upon sensory input and to carry out the normalization one has to iterate over all cells of the grid. Especially when the belief is peaked (which is generally the case during position tracking), one wants to avoid updating irrelevant aspects of the state space. One approach is not to update entire sub-spaces of the state space. This, however, requires to monitor whether the robot is de-localized or not. To achieve this, one can consider the likelihood of the observations given the active components of the state space. 5

Implementation (2) To efficiently update the belief upon robot motions, one typically assumes a bounded Gaussian model for the motion uncertainty. This reduces the update cost from O(n 2 ) to O(n), where n is the number of states. The update can also be realized by shifting the data in the grid according to the measured motion. In a second step, the grid is then convolved using a separable Gaussian Kernel. Two-dimensional example: 1/16 1/8 1/16 1/4 1/8 1/4 1/8 1/2 + 1/4 1/2 1/4 1/16 1/8 1/16 1/4 Fewer arithmetic operations Easier to implement 6

Grid-based Localization 7

Sonars and Occupancy Grid Map 8

Tree-based Representation Idea: Represent density using a variant of octrees 9

Tree-based Representations Efficient in space and time Multi-resolution 10

Xavier: Localization in a Topological Map [Courtesy of Reid Simmons] 11

Sample-based Localization (sonar)

Markov Kalman Filter Localization Markov localization localization starting from any unknown position recovers from ambiguous situation. However, to update the probability of all positions within the whole state space at any time requires a discrete representation of the space (grid). The required memory and calculation power can thus become very important if a fine grid is used. Kalman filter localization tracks the robot and is inherently very precise and efficient. However, if the uncertainty of the robot becomes to large (e.g. collision with an object) the Kalman filter will fail and the position is definitively lost.

Monte Carlo Localization

Particle Filters Represent belief by random samples Estimation of non-gaussian, nonlinear processes Monte Carlo filter, Survival of the fittest, Condensation, Bootstrap filter, Particle filter Filtering: [Rubin, 88], [Gordon et al., 93], [Kitagawa 96] Computer vision: [Isard and Blake 96, 98] Dynamic Bayesian Networks: [Kanazawa et al., 95]d

Markov Localization: Case Study 2 Grid Map (3) The 1D case 1. Start No knowledge at start, thus we have an uniform probability distribution. 2. Robot perceives first pillar Seeing only one pillar, the probability being at pillar 1, 2 or 3 is equal. 3. Robot moves Action model enables to estimate the new probability distribution based on the previous one and the motion. 4. Robot perceives second pillar Base on all prior knowledge the probability being at pillar 2 becomes dominant

MCL: Importance Sampling

MCL: Robot Motion motion

MCL: Importance Sampling

Importance Sampling Weight samples: w = f / g In particle filters f corresponds to Bel(x(t)) and g to predicted belief x(t)

Importance Sampling with Resampling: Landmark Detection Example

Probabilistic Model 1. Algorithm landmark_detection_model(z,x,m): 2. 3. 4. 5. Return Computing likelihood of landmark measurement Landmark distance, bearing and signature 22

Landmark model How to sample likely poses, given the landmark measurement? Given a landmark measurement, robot can lie on a circle. Generate samples along the circle. Idea: use the inverse sensor model. Given distance and bearing (possibly noisy), generate samples along circle. Do it for every landmark 23

Distributions

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

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

Importance Sampling with Resampling

Importance Sampling with Resampling Weighted samples After resampling

Particle Filters

Sensor Information: Importance Sampling

Robot Motion

Sensor Information: Importance Sampling

Robot Motion

Particle Filter Algorithm 1. Algorithm particle_filter( S t-1, u t-1 z t ): 2. 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. Insert 9. For 10. Normalize weights

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 xi t 1,u t 1 )

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): 2. 3. For Generate cdf 4. 5. Initialize threshold 6. For Draw samples 7. While ( ) Skip until next threshold reached 8. 9. Insert 10. Increment threshold 11. Return S Also called stochastic universal sampling

Motion Model Reminder Start

Proximity Sensor Model Reminder Laser sensor Sonar sensor

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

Sample-based Localization (sonar) 59

Initial Distribution 60

After Incorporating Ten Ultrasound Scans 61

After Incorporating 65 Ultrasound Scans 62

Estimated Path http://www.youtube.com/watch? v=melyz5r5v1c 63

Summary Particle filters are an implementation of recursive Bayesian filtering They represent the posterior by a set of weighted samples. 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. 64

Using Ceiling Maps for Localization

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

Robots in Action: Albert 71

Application: Rhino and Albert Synchronized in Munich and Bonn 72 [Robotics And Automation Magazine, to appear]

Localization for AIBO robots

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)? 74

Approaches Randomly insert samples (the robot can be teleported at any point in time). Insert random samples proportional to the average likelihood of the particles (the robot has been teleported with higher probability when the likelihood of its observations drops). 75

Random Samples Vision-Based Localization 936 Images, 4MB,.6secs/image Trajectory of the robot: 76

Odometry Information 77

Image Sequence 78

Resulting Trajectories Position tracking: 79

Resulting Trajectories Global localization: 80

Global Localization 81

Kidnapping the Robot 82

Recovery from Failure

Importance Sampling with Resampling: Landmark Detection Example

Probabilistic Model 1. Algorithm landmark_detection_model(z,x,m): 2. 3. ˆ α = atan2(m y (i) y,m x (i) x) θ 4. 5. Return Computing likelihood of landmark measurement Landmark distance, bearing and signature 85

Landmark model How to sample likely poses, given the landmark measurement? Given a landmark measurement, robot can lie on a circle. Generate samples along the circle. Idea: use the inverse sensor model. Given distance and bearing (possibly noisy), generate samples along circle. Do it for every landmark 86

Distributions

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

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

Importance Sampling with Resampling

Importance Sampling with Resampling Weighted samples After resampling http://www.youtube.com/watch?v=abzzfmzfe3y