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

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

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

Sensor Models / Occupancy Mapping / Density Mapping

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

This chapter explains two techniques which are frequently used throughout

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

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

EE565:Mobile Robotics Lecture 3

Probabilistic Robotics

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

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

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

Learning Occupancy Grids With Forward Sensor Models

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

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

Probabilistic Robotics

Monte Carlo Localization

Localization and Map Building

Statistical Techniques in Robotics (STR, S15) Lecture#06 (Wednesday, January 28)

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

Navigation methods and systems

Obstacle Avoidance (Local Path Planning)

Probabilistic Graphical Models

3D Normal Distributions Transform Occupancy Maps: An Efficient Representation for Mapping in Dynamic Environments

Obstacle Avoidance (Local Path Planning)

Probabilistic Robotics

Practical Course WS12/13 Introduction to Monte Carlo Localization

Graphical models are a lot like a circuit diagram they are written down to visualize and better understand a problem.

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

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

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

COS Lecture 13 Autonomous Robot Navigation

Adapting the Sample Size in Particle Filters Through KLD-Sampling

Introduction to Machine Learning

3D Convolutional Neural Networks for Landing Zone Detection from LiDAR

Final Exam Practice Fall Semester, 2012

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

Adapting the Sample Size in Particle Filters Through KLD-Sampling

Agent Design Example Problems State Spaces. Searching: Intro. CPSC 322 Search 1. Textbook Searching: Intro CPSC 322 Search 1, Slide 1

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

Grid-Based Models for Dynamic Environments

Probabilistic Robotics

Homework. Gaussian, Bishop 2.3 Non-parametric, Bishop 2.5 Linear regression Pod-cast lecture on-line. Next lectures:

Lecture Notes on Binary Decision Diagrams

MTRX4700: Experimental Robotics

Mobile Robot Mapping and Localization in Non-Static Environments

What is machine learning?

Non-context-Free Languages. CS215, Lecture 5 c

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

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

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

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

CSE 20 DISCRETE MATH WINTER

Introduction to Graphical Models

Gaussian Processes, SLAM, Fast SLAM and Rao-Blackwellization

Introduction to robot algorithms CSE 410/510

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

Robust Monte-Carlo Localization using Adaptive Likelihood Models

Mixture Models and the EM Algorithm

10-701/15-781, Fall 2006, Final

Lesson 3: Particle Filters

ME 456: Probabilistic Robotics

Markov Localization for Mobile Robots in Dynaic Environments

IMPROVED LASER-BASED NAVIGATION FOR MOBILE ROBOTS

Probabilistic Graphical Models

Fundamentals of Stereo Vision Michael Bleyer LVA Stereo Vision

Cache Coherence Tutorial

Lecture 9: Support Vector Machines

Day 3 Lecture 1. Unsupervised Learning

SLAM: Robotic Simultaneous Location and Mapping

CSE 573: Artificial Intelligence Autumn 2010

Matching Evaluation of 2D Laser Scan Points using Observed Probability in Unstable Measurement Environment

Computer Vision Group Prof. Daniel Cremers. 4. Probabilistic Graphical Models Directed Models

Lecture 11: Ray tracing (cont.)

Scene Grammars, Factor Graphs, and Belief Propagation

Artificial Intelligence for Robotics: A Brief Summary

CSEP 573: Artificial Intelligence

Note Set 4: Finite Mixture Models and the EM Algorithm

Machine Learning / Jan 27, 2010

Today MAPS AND MAPPING. Features. process of creating maps. More likely features are things that can be extracted from images:

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

Scene Grammars, Factor Graphs, and Belief Propagation

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

AUTONOMOUS SYSTEMS. PROBABILISTIC LOCALIZATION Monte Carlo Localization

CS 1567 Intermediate Programming and System Design Using a Mobile Robot Aibo Lab3 Localization and Path Planning

Lecture 13: Learning from Demonstration

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

REPRESENTATION REQUIREMENTS OF AS-IS BUILDING INFORMATION MODELS GENERATED FROM LASER SCANNED POINT CLOUD DATA

EECS 487: Interactive Computer Graphics

Generative and discriminative classification techniques

Geometric Algorithms. Geometric search: overview. 1D Range Search. 1D Range Search Implementations

Mapping and Exploration with Mobile Robots using Coverage Maps

Tracking Multiple Moving Objects with a Mobile Robot

DEALING WITH SENSOR ERRORS IN SCAN MATCHING FOR SIMULTANEOUS LOCALIZATION AND MAPPING

Machine Learning A W 1sst KU. b) [1 P] Give an example for a probability distributions P (A, B, C) that disproves

Math 205B - Topology. Dr. Baez. January 19, Christopher Walker. p(x) = (cos(2πx), sin(2πx))

CS281 Section 9: Graph Models and Practical MCMC

Spatial Data Structures

SLAM Part 2 and Intro to Kernel Machines

Sampling-based Planning 2

Transcription:

Statistical Techniques in Robotics (STR, S15) Lecture#05 (Monday, January 26) Lecturer: Byron Boots Mapping 1 Occupancy Mapping When solving the localization problem, we had a map of the world and tried to find the position of the robot in it. Now we will solve the opposite problem: given the position of the robot (perhaps through some sensor such as GPS), find the map of the world. Similar to localization, we will solve the mapping problem as a filtering problem. We need two components to solve this filtering problem: a state and a measurement model. The state is now the map of the world which we are trying to find (not the state of the robot). Examples include a grid of pixels/voxels or a map of landmarks. The measurement model is p(z t m, l t ), or the probability of making an observation z t given a map m and a location on the map l t. We do not concern ourselves with the robot s controls since we have the position of the robot. For our first solution to the mapping problem, we will partition the world into cells, with each being one of two states: filled or empty. The individual grid cells are labeled m i, and m is the vector of all grid cells. Unfortunately, the curse of dimensionality prevents us from filtering m, since there are 2 m possible states. If we filter each cell independently, assuming that they are in fact independent, we can reduce the complexity to 2 m. In truth, this is a very bad assumption to make, but it is practical. We then reconstruct the entire map from the marginal probability of each cell. This is called occupancy mapping. 1.1 Derivation Let X i represent the state of a grid cell m i. The state is either x, meaning filled, or x, meaning empty. We look at the probability that a cell is filled given the measurements, starting with a Bayesian filter. p(x z 1:t ) = p(z t x, z 1:t 1 )p(x z 1:t 1 ) Now we will make the Markov assumption that p(z t x, z 1:t 1 ) = p(z t x). p(x z 1:t ) = p(z t x)p(x z 1:t 1 ) However, this is totally bogus! This is a statement about a single cell, but the observation does not depend on just a single cell. This discrepancy is detailed in Section 1.2. 0 Some content adapted from previous scribes: Brian Coltin and Mehmet R. Dogar 1

We expand the equation once again using Baye s rule to get p(x z 1:t ) = p(x z t)p(z t ) p(x) p(x z 1:t 1 ) Now p(x z 1:t ) is based on the inverse sensor model, p(x z t ), instead of the familiar forward model p(z t x). The inverse sensor model specifies a distribution over the (binary) state variable as a function of the measurement z t. A sensor model for a laser scanner device might look like Figure 1, where z t is pass-through / hit information. Using the same proof, we can derive a matching update rule for p( x z 1:t ): Next, we divide the two update rules. p( x z 1:t ) = p( x z t)p(z t ) p( x) p( x z 1:t 1 ). p(x z 1:t ) p( x z 1:t ) = p(x z t) p( x) p(x z 1:t 1 ) p( x z t ) p(x) p( x z 1:t 1 ) = p(x z t) p( x) p(x z 1:t 1 ) p( x z t ) p(x) p( x z 1:t 1 ) Now we have a recursive update rule. If the probability of x decreases with the observation z t, then p( x) > p( x z t ), which causes the belief on x to increase relative to x. Next, we take the log of this update rule to find the log odds of the belief the square is filled over the belief it isn t filled, which we label l t (x). Using the log odds reduces numerical errors from multiplying minuscule floating point numbers. log p(x z 1:t) p( x z 1:t ) = log p(x z t) p( x) p(x z 1:t 1 ) p( x z t ) p(x) p( x z 1:t 1 ) l t (x) = log p(x z t) p( x) + log p( x z t ) p(x) + l t 1(x) For this update rule, we need only to specify p(x z t ), the inverse sensor model, and p(x), the prior. p( x z t ) and p( x) are the complements of these two terms. Note that the inverse sensor model must respond to updates to the prior: consider section (1) in Figure 1. Finally, we can recover the probability from the log odds l t as p(x z 1:t ) = 1 1 1 + e lt (1) 2

Figure 1: A sample sensor model for a laser scanner device which provides the probability a grid cell is occupied given a sensor reading. Grid cells in (1) would have probability equal to the prior, grid cells in (2) would have a low probability and grid cells in (3) would have a high probability. 1.2 Problems with the Markov Assumption At the beginning of this derivation we used the Markov assumption to claim that p(z t x, z 1:t 1 ) = p(z t x). This would have been reasonable had x represented the state of the complete map. However, x represents the state of a single grid cell. The Markov assumption in this context doesn t make much sense: we can t say that an observation z t is independent of all prior observations given only the state of a single cell. Figure 2 shows an example using a wide laser beam where this Markov assumption fails. 1.3 Limitations of Occupancy Mapping In occupancy grid mapping every grid cell is one of two states: filled or empty. But in some situations it makes sense for a cell to be partially filled. This may occur when only part of the grid cell is filled and the rest is empty, or when the objects that fill the grid cell have special characteristics: we may want a grid filled with vegetation to be less filled than a grid filled with a solid rock. Furthermore, occupancy grids have trouble dealing with semi-transparent obstacles such as glass and vegetation. These obstacles may return hits to the laser rangefinder about half of the time, but eventually the occupancy grid will converge to either filled or not filled, both of which are incorrect. 2 Density Mapping To address the above problems, we use a density filter where the state x [0, 1] is the probability a beam passes through rather than a binary filled / empty state. Assuming that a beam returns with a probability x according to a Bernoulli distribution, we model this probability using a Beta distribution (the conjugate prior of the Bernoulli distribution). If α is the number of beams that pass through and β is the number of beams that hit, the most probable value of a cell s density is α α + β and we use this as the value in the density grid. A comparison between occupancy mapping and density mapping highlighting this difference can be seen in Figures 3 and 4. 3

Figure 2: The problem with the standard occupancy grid mapping algorithm in Chapter 9.2: For the environment shown in Figure (a), a passing robot might receive the (noise-free) measurement shown in (b). The factorial approach maps these beams into probabilistic maps separately for each grid cell and each beam, as shown in (c) and (d). Combining both interpretations yields the map shown in (e). Obviously, there is a conflict in the overlap region, indicated by the circles in (e). The interesting insight is: There exist maps, such as the one in diagram (f), that perfectly explain the sensor measurement without any such conflict. For a sensor reading to be explained, it suffices to assume an obstacle somewhere in the cone of a measurement, and not everywhere. Note that density grids make the same flawed Markov assumption as occupancy grids, but do not assume the cells can only be completely full or completely empty. To further take advantage this partial occupancy model, the sensor model seen in Figure 1 could be modified so that sensor model returns for areas near borders in the model are blurred. 4

Figure 3: A map produced using an occupancy mapping technique. Regions in red indicate glass walls which are indicated as being either fully occupied or non-occupied. Figure 4: A map produced using a density mapping technique. Regions in red indicate glass walls which are indicated as having partial returns. 5