Probabilistic Fundamentals in Robotics. DAUIN Politecnico di Torino July 2010

Similar documents
ROBOTICS 01PEEQW. Basilio Bona DAUIN Politecnico di Torino

Simultaneous Localization and Mapping

Probabilistic Fundamentals in Robotics. DAUIN Politecnico di Torino July 2010

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

Probabilistic Fundamentals in Robotics

Probabilistic Fundamentals in Robotics. DAUIN Politecnico di Torino July 2010

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

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

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

Introduction to Mobile Robotics SLAM: Simultaneous Localization and Mapping

Mobile Robot Localization

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

Robotics. Mobile Robotics. Marc Toussaint U Stuttgart

Mobile Robot Localization

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

Probabilistic Fundamentals in Robotics

CS491/691: Introduction to Aerial Robotics

Introduction to Mobile Robotics Probabilistic Robotics

Motion Models (cont) 1 2/15/2012

From Bayes to Extended Kalman Filter

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

Introduction to Mobile Robotics Probabilistic Motion Models

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

CSE 473: Artificial Intelligence

Lecture 22: Graph-SLAM (2)

Introduction to Mobile Robotics Probabilistic Sensor Models

the robot in its current estimated position and orientation (also include a point at the reference point of the robot)

Sensor Tasking and Control

Linear Models for Regression CS534

E190Q Lecture 11 Autonomous Robot Navigation

SLAM for Ship Hull Inspection using Exactly Sparse Extended Information Filters

Lecture 2: From Linear Regression to Kalman Filter and Beyond

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

TSRT14: Sensor Fusion Lecture 9

Linear Models for Regression CS534

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

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

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

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

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

AUTOMOTIVE ENVIRONMENT SENSORS

Linear Models for Regression CS534

Using the Kalman Filter for SLAM AIMS 2015

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

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

Cooperative relative robot localization with audible acoustic sensing

2D Image Processing (Extended) Kalman and particle filter

Robot Localization and Kalman Filters

Gradient Sampling for Improved Action Selection and Path Synthesis

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

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

CSEP 573: Artificial Intelligence

2D Image Processing. Bayes filter implementation: Kalman filter

Robot Mapping. Least Squares. Cyrill Stachniss

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

Recursive Bayes Filtering

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

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

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

A Study of Covariances within Basic and Extended Kalman Filters

Partially Observable Markov Decision Processes (POMDPs)

Lecture 2: From Linear Regression to Kalman Filter and Beyond

Machine Learning for Signal Processing Bayes Classification and Regression

Square Root Unscented Particle Filtering for Grid Mapping

Simultaneous Localization and Map Building Using Natural features in Outdoor Environments

Introduction to centralized control

System identification and sensor fusion in dynamical systems. Thomas Schön Division of Systems and Control, Uppsala University, Sweden.

An example of Bayesian reasoning Consider the one-dimensional deconvolution problem with various degrees of prior information.

2D Image Processing. Bayes filter implementation: Kalman filter

Fast Incremental Square Root Information Smoothing

Mobile Robots Localization

Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen. Bayesian Learning. Tobias Scheffer, Niels Landwehr

1 Introduction. Systems 2: Simulating Errors. Mobile Robot Systems. System Under. Environment

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

PROBABILISTIC REASONING OVER TIME

1 Kalman Filter Introduction

Exact State and Covariance Sub-matrix Recovery for Submap Based Sparse EIF SLAM Algorithm

The Particle Filter. PD Dr. Rudolph Triebel Computer Vision Group. Machine Learning for Computer Vision

Autonomous Mobile Robot Design

The Belief Roadmap: Efficient Planning in Belief Space by Factoring the Covariance. Samuel Prentice and Nicholas Roy Presentation by Elaine Short

Localization. Howie Choset Adapted from slides by Humphrey Hu, Trevor Decker, and Brad Neuman

Distributed Intelligent Systems W4 An Introduction to Localization Methods for Mobile Robots

Introduction to Probabilistic Graphical Models: Exercises

CS 188: Artificial Intelligence Spring Announcements

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

Simultaneous Localization and Mapping Techniques

Covariance Matrix Simplification For Efficient Uncertainty Management

Hidden Markov Models. Hal Daumé III. Computer Science University of Maryland CS 421: Introduction to Artificial Intelligence 19 Apr 2012

Hidden Markov Models. Vibhav Gogate The University of Texas at Dallas

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

Artificial Intelligence

Mathematical Formulation of Our Example

Lecture 6: Bayesian Inference in SDE Models

Gaussian with mean ( µ ) and standard deviation ( σ)

Information Gain-based Exploration Using Rao-Blackwellized Particle Filters

Outline. Supervised Learning. Hong Chang. Institute of Computing Technology, Chinese Academy of Sciences. Machine Learning Methods (Fall 2012)

Dynamic System Identification using HDMR-Bayesian Technique

10 Robotic Exploration and Information Gathering

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

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

Transcription:

Probabilistic Fundamentals in Robotics Probabilistic Models of Mobile Robots Robotic mapping Basilio Bona DAUIN Politecnico di Torino July 2010

Course Outline Basic mathematical framework Probabilistic models of mobile robots Mobile robot localization problem Robotic mapping Probabilistic planning and control Reference textbook Thrun, Burgard, Fox, Probabilistic Robotics, MIT Press, 2006 http://www.probabilistic robotics.org/ Basilio Bona July 2010 2

Robotic mapping Occupacy grid mapping SLAM GraphSLAM Sparse extended information filter FastSLAM Basilio Bona July 2010 3

Mapping In many cases maps are already available and are used to perform robot localization: we have already discussed the localization problem with known maps However in many cases maps are unknown and must be built by the robot itself as it moves in the environment Since odometry is inexact, the true pose of the robot is not known with precision, therefore mapping is and localization must be performed at the same time, post processing p the robot measurements Theconcurrent process of localization and mapping is called SLAM (simultaneous localization and mapping) Basilio Bona July 2010 4

Example The robot has to acquire the map of the environment while localizing itself relative to this map What happens if we simply perform localization using the filters learned so far and we do the mapping with the (uncertain) pose estimate? post process Occupancy grid map Raw range data, position indexed by odometry Basilio Bona July 2010 5

Map types landmarks Digital elevation map Landmark based representation (stochastic map) Occupancy grid map Point cloud representation Basilio Bona July 2010 6

Mapping and world representations Two particular representations are common in the applications of mobile robotics in indoor scenarios Landmark based maps: stochastic maps that contain a probabilistic description (usually mean+covariance) of the position of salient features of the scenario Occupancy grid maps: high resolution models ofthe environment; it is a grid in which each cell contains the probability of the cell being occupied Landmarks (doors, corners, objects) Free cell Unknow cell Occupied cell 21/6/2010 7

3D mapping Other types of maps, as 3D mapping are possible, but computationally much more complex Basilio Bona July 2010 8

Mapping Assuming that we know the robot poses, mapping is the task of building a consistent representation of the environment Depending on the scenario it is convenient to use different world representations Occupancy grid maps are the best choice for maps, and the related dfamily of algorithms is called occupancy grid mapping Basilio Bona July 2010 9

The mapping process The simplest case is introduced first: the robot pose is know but the measurements are noisy known pose MAPPING noisy measurements 2D maps are the most common; they can be used when robot motion takes place on a flat surface and sensors capture essentially a slice of the surrounding environment Occupancy grid maps Basilio Bona July 2010 10

Occupacy grid map algorithm In principle, the algorithm shall compute the posterior probability of the map pm ( z, x ) 1: t 1: t The (occupancy grid) map is described by a set of N cells m = { m m m },,, N 1 2 At each cell a probability of occupancy (0 = free white, 1 = occupied black) is attached p( m i ) The mapping problem is decomposed into N simpler problems pm ( z, x ) = p( m z, x ) 1: t 1: t i 1: t 1: t i This decompositiondoes does not allow to represent dependencies among neighboring cells, and we throw away much information Basilio Bona July 2010 11

Binary Bayes filter The previous factorization transforms the problem into a binary estimation problem with static state; a binary Bayes filter is adopted The log odds representation of occupancy is used; the advantage is that numerical instabilities near 0 or 1 are avoided l ti, = p( m z, x ) i 1: t 1: t log 1 p ( m z 1:, x 1: ) i t t 1 p( m z, x ) = 1 i 1: t 1: t 1 + exp( l ) ti, Basilio Bona July 2010 12

Occupancy grid mapping Occupancy_grid_mapping( ( { l }, x, z ) t 1, i t t 1: forall cells mi 2 : if m in sensor field of z then i t p( m z, x ) i t t 3: l = l + log l ti t i 1 p ( m z i t, xt ) 4: else 5: l = l ti, t 1, i 6: endif 7: endfor, 1, 0 { } return, l ti This is the inverse sensor model in log form Basilio Bona July 2010 13

Inverse sensor model Inverse_sensor_model( ( m, x, z ) i t t 1: Let x, y be the c.o.m. of m x = (,, x y θ) 2: i i i 2 2 ( ) ( ) r = x x + y y i ( y y x x ) 3: φ = atan2, θ 4: k = argmin φ θ j i ( k ) max i i j,sens, sens t robot pose 5: if r > min z, z or 2 then t + α φ θ j > β 6: return l 0 outside range 7: if z k k < z and r z < α 2 t max 8: occ 9: if r z 10 : 11 : endif return l occupied cells k t return l free free cells Basilio Bona July 2010 14 t

Parameters of the inverse sensor model range closed to the measured range k th beam xy, r φ β α xy, θ sensor cone Basilio Bona July 2010 15

Example using ultra sound sensors Initial map Final map Basilio Bona July 2010 16

Another example unknown occupied free Basilio Bona July 2010 17

Multi sensor fusion When robots have different types of onboard sensors, it is natural to try to integrate their measurements Sensors may have different characteristics, i.e., different models of the perceived world; sometimes an obstacle detected by one sensor is not detected by a different sensor To avoid theoccurrenceofconflicting of conflicting information, a popular solution builds separate maps for each sensor type and then integrates them using a suitable combination function Basilio Bona July 2010 18

Multi sensor fusion Let the map built by the k th sensor type be { m, m,, m } { m } m = = k k k k k 1 2 N i If the sensors measurements are independent, we can combine them using the De Morgan s Law NOT (P OR Q) = (NOT P) AND (NOT Q) NOT (P AND Q) = (NOT P) OR (NOT Q) ( ) 1 (1 ( k p m p m )) i = Alternatively one can compute the most pessimistic estimate coming from the sensors k k p( m ) = max p( m ) i Basilio Bona July 2010 19 k i i

Simultaneous localization and mapping (SLAM) SLAM is also known as Concurrent Mapping and Localization or CML The problem arises when the robot does not have access to the environment map and does not know its pose So, boththethe map and the pose must be estimated concurrentlyfrom measurements z 1:t and controls u 1:t SLAMis a very complex problem, significantly harder thatsimple localization or simple mapping with known pose Many types pesand algorithmsha have been studied; some are incremental, some are complete Basilio Bona July 2010 20

SLAM We need to estimate the joint distribution of both robot pose and map representation of the environment bel = p( x, m z, u ) t t 1: t 1, t Present state only This is called online SLAM problem since it discards past measurements The fullslam problem considers the entire path bel p ( x, m z, u ) = p t 1: t 1: t 1, t Entire past state history Basilio Bona July 2010 21

Online SLAM ut 1 u u t t+ 1 xt 1 x x t t+ 1 zt 1 z zt t+ 1 Estimated variables m Basilio Bona July 2010 22

Full SLAM ut 1 u u t t+ 1 xt 1 x x t t+ 1 zt 1 z zt t+ 1 Estimated variables m Basilio Bona July 2010 23

SLAM The relation between the two approaches is simple to state px (, m z, u ) px (, m z, u )d x d x d x t t t t t t t = 1: 1, 1: 1: 1, 1 2 1 Moreover, itsnatureis is bothcontinuousanddiscrete discrete The objects on the map and the robot pose are continuous The correspondence between a measurement and a feature in the map or between a feature and a previously detected one is discrete If the correspondence must be made explicit, we write px (, mc, z, u ) t t 1: t 1, t or px (, mc, z, u ) 1: t t 1: t 1, t Basilio Bona July 2010 24

Problems arise from SLAM High dimensionality of the continuous parameter space Large number of discrete correspondence variables The algorithmsemployed depend mainly on whichtype of map needs to be estimated Landmark based maps EKF SLAM Sparse Extended Information Filters GraphSLAM Rao Blackwellized Particle Filters (FastSLAM) Occupancygrid maps Rao Blackwellized Particle Filters GraphSLAM Basilio Bona July 2010 25

Assumptions: EKF SLAM with landmark based maps Feature (i.e., landmark) based maps; the number of landmarks must be relatively small (< 1,000) Works well if landmarks are unambiguous; feature detectors must be optimized It is based on Gaussian noise assumption for robot motion and perception Makes linearization, ation so the amount of uncertainty of the posterior shall be limited Can only process positive sightings ihti of landmarks (no information from absence of landmarks) Landmark correspondences are exactly known Basilio Bona July 2010 26

EKF SLAM with landmark based maps EKF SLAM includes the position of the landmarks in the state vector and performs estimation over the augmented state: y x = = m ( xyθ ) t t 1, x 1, y 2, x 2, y N, x N, y Localization Mapping/landmarks Observing a particular landmark improves the position estimate of all landmarks, not only this one This improvement is mediated by the robot pose: landmark observation improves the robot pose, that in turn improves the localization of previous observed landmarks Basilio Bona July 2010 27

Covariance matrix Mathematically, this dependence is captured by the off diagonal elements of the covariance matrix x t μ x σ σ σ σ σ σ σ xx xy xθ xl xl xl xl r r r r r r r 1x r 1y r Nx r Ny r μ y σ σ σ σ σ σ σ xy yy yθ yl yl yl yl r r r r r r r r 1x r 1y r Nx r Ny μ σ σ σ σ σ σ σ θ x θ y θ θ θ θ l θ l r θ l θ l r r r r r r r 1x r 1y r Nx r Ny μ l 1x ~ N σ σ σ σ σ σ σ xl yl θ l l l l l l l l l r 1x r 1x r 1x 1x 1x 1x 1y 1x Nx 1x Ny, l μ l1y σ σ σ σ σ σ σ x r l 1y y r l θ 1y r 1y 1x 1y 1y 1y 1y Nx 1y Ny l l l l l l l l l μ l Nx σ σ σ σ σ σ σ x l y l θ l l l l l l l l l rnx rnx rnx 1xNx 1yNx NxNx NxNy μ l Ny σ σ σ σ σ σ σ xl yl θ l l l l l l l rny rny rny 1xNy 1yNy NxNy l Ny l Ny Basilio Bona July 2010 28

EKF SLAM We can simply extend the expression of the dynamic system used for EKF Localization p = f p, u, 1 ( ω ) t t t t z = h ( p, map, υ ) t t t PROCESS MODEL r ( r p f p, u, ω ) t 1: t t t 1 1 =...... N N MEASUREMENT MODEL ( r 1 N,,...,, ) z = h p υ t t t t t So the estimation procedure can proceed according to EKF, iterating prediction and update phase Basilio Bona July 2010 29

EKF SLAM: a typical situation (1) Robot starts; first measurement of feature A (2) Robot drives forward (uncertainty grows) (3) Robot makes first measurements of B and C State vector x t can grow as new landmarks are discovered (4) Robot drives back towards the start (uncertainty grows) (5) Robot re observes A (loop closure); uncertainty shrinks (6) Robot re observes B; also the uncertainty of C shrinks Basilio Bona July 2010 30

Another example: EKF applied to the online SLAM problem The robot s path is a dotted line, and its estimates of its own position are shaded ellipses. Eight distinguishable landmarks of unknown location are shown as small dots, and their location estimates are shown as white ellipses. In (a) (c) the robot s positional uncertainty is increasing, as is its uncertainty about the landmarks it encounters. In (d) the robot senses the first landmark again, and the uncertainty of all landmarks decreases, as does the uncertainty of its current pose Basilio Bona July 2010 31

SLAM with unknown landmark correspondence When landmark correspondence is unknown, the EKF SLAM algorithm is extended using an incremental maximum likelihood estimator to determine landmark correspondence A new landmark is created if the Mahalanobis distance to all existing landmarks in the map exceeds a value α Outliers detection: how to detect spurious landmarks that are outside the uncertainty range of landmarks already present EKF is fragile with respect to landmark confusion, so one of the following methods is used to avoid it Spatial arrangement: choose landmarks that are far apart so that it is unlikely l to confuse them > optimal tradeoff ffbetween to few and too many landmarks Signatures: chose landmarks withdistinguishable signatures (colors, dimensions, etc.) Basilio Bona July 2010 32

EKF: summary EKF landmark based SLAM is an effective and easy to implement solution to many problems It has been successfully applied also in large scale environments Online version ties to determine the momentary robot pose Global problem ties to determine all poses With known correspondence the algorithm is incremental Maps management wrt outliers Include a provisional of landmarks that are not observed sufficiently often Include a landmark evidence counter that computes the psoterior evidence of the existence of a landmark Basilio Bona July 2010 33

Critical Issues EKF: summary Complexity is quadratic in the number of landmarks: O(n 2 ) Can diverge if nonlinearities are large Data association: how do we decide if we are observing an already seen landmark? Basilio Bona July 2010 34

Rao Blackwellized Particle Filters (RBPF SLAM) Rao Blackwellized lli Particle Filters (RBPF), also known as FastSLAM, are a sample based techniques for solving SLAM They are particularly suitable for estimating occupancy grid maps of an indoor environment Rao Blackwellized ParticleFilters are based on the following factorization of the SLAM belief: Robot trajectory Map of the environment Measurements bel = prob ( x, m z, u ) = t 1: t 1: t 1, t Commands prob ( m x, z ) prob ( x z, u ) 1: t 1: t 1: t 1: t 1, t SLAM mapping belief localization Basilio Bona July 2010 35

Rao Blackwellized Particle Filters (RBPF SLAM) The previous formula is known as Rao Blackwell factorization, which gives the name to the corresponding solution to SLAM The underlying math translates in the following simple concept: RBPF estimates potential trajectories of the robot and for each hypothesis the SLAM reduces to mapping with known poses The filter estimatespotential trajectories and a map is associated to each trajectory hypothesis Basilio Bona July 2010 36

Summary RBPF SLAM Rao Blackwellized Particle Filters (RBPF) have been demonstrated to be an effective solution for the estimation of occupancy grid maps No data association (grid maps doesnot distinguish elements in the environment) Issues Each particle carries on a complete map hypothesis: a normal computer is not able to manage more than few hundred particles But to cope with large uncertainty you need a large number of particles Basilio Bona July 2010 37

Thank you. Any question? Basilio Bona July 2010 38