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

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

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

EE565:Mobile Robotics Lecture 3

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

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

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

Probabilistic Robotics

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

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

Probabilistic Robotics

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

3D Convolutional Neural Networks for Landing Zone Detection from LiDAR

Obstacle Avoidance (Local Path Planning)

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

Obstacle Avoidance (Local Path Planning)

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

Monte Carlo Localization

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

Practical Course WS12/13 Introduction to Monte Carlo Localization

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

Navigation methods and systems

Probabilistic Robotics

Localization and Map Building

Mobile Robot Mapping and Localization in Non-Static Environments

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

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

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

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

Grid-Based Models for Dynamic Environments

Adapting the Sample Size in Particle Filters Through KLD-Sampling

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

Adapting the Sample Size in Particle Filters Through KLD-Sampling

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

Introduction to Machine Learning

Probabilistic Graphical Models

Final Exam Practice Fall Semester, 2012

EECS 487: Interactive Computer Graphics

SLAM: Robotic Simultaneous Location and Mapping

Gaussian Processes, SLAM, Fast SLAM and Rao-Blackwellization

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

Robust Monte-Carlo Localization using Adaptive Likelihood Models

Day 3 Lecture 1. Unsupervised Learning

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

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

Probabilistic Robotics

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

Introduction to Graphical Models

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

COS Lecture 13 Autonomous Robot Navigation

Probabilistic Graphical Models

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

Computer Vision Group Prof. Daniel Cremers. 4a. Inference in Graphical Models

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

AUTONOMOUS SYSTEMS. PROBABILISTIC LOCALIZATION Monte Carlo Localization

ME 456: Probabilistic Robotics

Multiple Constraint Satisfaction by Belief Propagation: An Example Using Sudoku

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

Lesson 3: Particle Filters

Fundamentals of Stereo Vision Michael Bleyer LVA Stereo Vision

Sampling-based Planning 2

Artificial Intelligence for Robotics: A Brief Summary

Robotics. Chapter 25. Chapter 25 1

Generative and discriminative classification techniques

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

Mobile Robot Map Learning from Range Data in Dynamic Environments

Introduction to robot algorithms CSE 410/510

Markov Localization for Mobile Robots in Dynaic Environments

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

FLOATING AND POSITIONING

IMPROVED LASER-BASED NAVIGATION FOR MOBILE ROBOTS

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

Machine Learning / Jan 27, 2010

Mixture Models and the EM Algorithm

W4. Perception & Situation Awareness & Decision making

CS4495 Fall 2014 Computer Vision Problem Set 6: Particle Tracking

CS242: Probabilistic Graphical Models Lecture 3: Factor Graphs & Variable Elimination

08 An Introduction to Dense Continuous Robotic Mapping

Scene Grammars, Factor Graphs, and Belief Propagation

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

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

Cache Coherence Tutorial

Lecture Notes on Binary Decision Diagrams

Scene Grammars, Factor Graphs, and Belief Propagation

MTRX4700: Experimental Robotics

arxiv: v1 [cs.ro] 26 Nov 2018

7630 Autonomous Robotics Probabilities for Robotics

Tracking Multiple Moving Objects with a Mobile Robot

Online Simultaneous Localization and Mapping in Dynamic Environments

Algorithms for Sensor-Based Robotics: Sampling-Based Motion Planning

Lecture 11: Ray tracing (cont.)

Kaijen Hsiao. Part A: Topics of Fascination

What is machine learning?

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

1 Dynamic Memory continued: Memory Leaks

Transcription:

Statistical Techniques in Robotics (16-831, F12) Lecture#05 (Wednesday, September 12) Mapping Lecturer: Alex Styler (in for Drew Bagnell) Scribe: Victor Hwang 1 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 the map of the world which we are trying to find. For example, it could be a pixelized grid of cells 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 need to concern ourselves with the robot s controls since we have the position of the robot. As such, there is no motion model explicitly defined. 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. Our goal is to calculate the posterior p(m z 1:t, x 1:t ) 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 by reconstructing the map from products of the map s marginal probability: p(m z 1:t, x 1:t ) = i p(m i z 1:t, x 1:t ) where m i is each individual grid cell. In truth, this is a very bad assumption to make since obstacles usually span multiple cells. However, this makes the problem tractable. 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. 1 Content adapted from previous scribes: Nathan Brooks, Brian Coltin and Mehmet R. Dogar 1

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 is detailed in Section 1.2. We expand the equation once again using Bayes 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 : Next, we divide the two update rules. = 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 ) = p(x z t) p( x) p(x z 1:t 1 ) p(x) p( x z t ) 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) = 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) 2

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. 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. In that case, the odds of the conflicting cell would increase, then decrease later. Without the Markov assumption, we could explain away this inconsistency by taking into account the entire map. Given this natural error, narrow beam sensors (such as LIDAR) are very popular. 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 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 occupancy grid map 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. 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. 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