SLAM Tutorial (Part I) Marios Xanthidis.

Slides:



Advertisements
Similar presentations
Mobile Robot Localization and Mapping using the Kalman Filter
Advertisements

Probabilistic Robotics
Probabilistic Robotics
Probabilistic Robotics
Probabilistic Robotics SLAM. 2 Given: The robot’s controls Observations of nearby features Estimate: Map of features Path of the robot The SLAM Problem.
Advanced Mobile Robotics
(Includes references to Brian Clipp
Monte Carlo Localization for Mobile Robots Karan M. Gupta 03/10/2004
Robot Localization Using Bayesian Methods
IR Lab, 16th Oct 2007 Zeyn Saigol
Lab 2 Lab 3 Homework Labs 4-6 Final Project Late No Videos Write up
Probabilistic Robotics
Simultaneous Localization and Mapping
Observers and Kalman Filters
An Introduction to the Kalman Filter
Reliable Range based Localization and SLAM Joseph Djugash Masters Student Presenting work done by: Sanjiv Singh, George Kantor, Peter Corke and Derek Kurth.
gMapping TexPoint fonts used in EMF.
Introduction to Kalman Filter and SLAM Ting-Wei Hsu 08/10/30.
Probabilistic Robotics
SLAM: Simultaneous Localization and Mapping: Part I Chang Young Kim These slides are based on: Probabilistic Robotics, S. Thrun, W. Burgard, D. Fox, MIT.
Probabilistic Robotics
Nonlinear and Non-Gaussian Estimation with A Focus on Particle Filters Prasanth Jeevan Mary Knox May 12, 2006.
Particle Filters for Mobile Robot Localization 11/24/2006 Aliakbar Gorji Roborics Instructor: Dr. Shiri Amirkabir University of Technology.
Single Point of Contact Manipulation of Unknown Objects Stuart Anderson Advisor: Reid Simmons School of Computer Science Carnegie Mellon University.
Particle Filtering for Non- Linear/Non-Gaussian System Bohyung Han
Bayesian Filtering for Location Estimation D. Fox, J. Hightower, L. Liao, D. Schulz, and G. Borriello Presented by: Honggang Zhang.
SLAM: Simultaneous Localization and Mapping: Part II BY TIM BAILEY AND HUGH DURRANT-WHYTE Presented by Chang Young Kim These slides are based on: Probabilistic.
Overview and Mathematics Bjoern Griesbach
Particle Filtering. Sensors and Uncertainty Real world sensors are noisy and suffer from missing data (e.g., occlusions, GPS blackouts) Use sensor models.
HCI / CprE / ComS 575: Computational Perception
ROBOT MAPPING AND EKF SLAM
Introduction to Monte Carlo Methods D.J.C. Mackay.
1 Bayesian methods for parameter estimation and data assimilation with crop models Part 2: Likelihood function and prior distribution David Makowski and.
Particle Filtering in Network Tomography
Markov Localization & Bayes Filtering
/09/dji-phantom-crashes-into- canadian-lake/
Computer vision: models, learning and inference Chapter 19 Temporal models.
9-1 SA-1 Probabilistic Robotics: SLAM = Simultaneous Localization and Mapping Slide credits: Wolfram Burgard, Dieter Fox, Cyrill Stachniss, Giorgio Grisetti,
3D SLAM for Omni-directional Camera
Computer vision: models, learning and inference Chapter 19 Temporal models.
Simultaneous Localization and Mapping Presented by Lihan He Apr. 21, 2006.
Mapping and Localization with RFID Technology Matthai Philipose, Kenneth P Fishkin, Dieter Fox, Dirk Hahnel, Wolfram Burgard Presenter: Aniket Shah.
Probabilistic Robotics Bayes Filter Implementations Gaussian filters.
1 Robot Environment Interaction Environment perception provides information about the environment’s state, and it tends to increase the robot’s knowledge.
Probabilistic Robotics Bayes Filter Implementations.
Young Ki Baik, Computer Vision Lab.
Overview Particle filtering is a sequential Monte Carlo methodology in which the relevant probability distributions are iteratively estimated using the.
Mobile Robot Localization (ch. 7)
Maximum a posteriori sequence estimation using Monte Carlo particle filters S. J. Godsill, A. Doucet, and M. West Annals of the Institute of Statistical.
Real-Time Simultaneous Localization and Mapping with a Single Camera (Mono SLAM) Young Ki Baik Computer Vision Lab. Seoul National University.
CSE-473 Mobile Robot Mapping. Mapping with Raw Odometry.
Sequential Monte-Carlo Method -Introduction, implementation and application Fan, Xin
OBJECT TRACKING USING PARTICLE FILTERS. Table of Contents Tracking Tracking Tracking as a probabilistic inference problem Tracking as a probabilistic.
State Estimation and Kalman Filtering Zeeshan Ali Sayyed.
Nonlinear State Estimation
Particle Filtering. Sensors and Uncertainty Real world sensors are noisy and suffer from missing data (e.g., occlusions, GPS blackouts) Use sensor models.
The Unscented Particle Filter 2000/09/29 이 시은. Introduction Filtering –estimate the states(parameters or hidden variable) as a set of observations becomes.
10-1 Probabilistic Robotics: FastSLAM Slide credits: Wolfram Burgard, Dieter Fox, Cyrill Stachniss, Giorgio Grisetti, Maren Bennewitz, Christian Plagemann,
Particle filters for Robot Localization An implementation of Bayes Filtering Markov Localization.
SLAM Techniques -Venkata satya jayanth Vuddagiri 1.
Probabilistic Robotics Bayes Filter Implementations Gaussian filters.
SLAM : Simultaneous Localization and Mapping
Mobile Robotics. Fundamental Idea: Robot Pose 2D world (floor plan) 3 DOF Very simple model—the difficulty is in autonomy.
Robótica Móvil CC5316 Clase 16: SLAM
Simultaneous Localization and Mapping
CARNEGIE MELLON UNIVERSITY
Introduction to Robot Mapping
Probabilistic Robotics
Simultaneous Localization and Mapping
Probabilistic Robotics Bayes Filter Implementations FastSLAM
Presentation transcript:

SLAM Tutorial (Part I) Marios Xanthidis

What is the SLAM problem? The problem could described in the following question: “If we leave a robot in an unknown location in an unknown environment can the robot make a satisfactory map while simultaneously being able to find its pose in that map?” The solution to this problem was the “Holy Grail” of the field of mobile robotics. Why?

The SLAM Problem (Difficulties) The bad news: Pretty difficult problem because it combines the difficulties of both the localization and mapping problem without the essential assumptions of the known map or the known pose. The good news: The problem is considered solved but there are still some issues on having more general SLAM solutions and creating better maps.

Historical overview of the SLAM Problem (1) It all started in the initial steps of probabilistic methods for localization and mapping (IEEE RAC 1986) Smith , Cheesman and Durrant-Whyte by establing a statistical basis for describing uncertainty for manipulators and landmarks showed that there must be a strong relation between the successive observations and the estimations of the location of the landmarks. Crowley, Chatila and Laumond showed that a SLAM solution required a joint state of the robot’s pose and every landmark’s position by proving that the estimates of the landmarks are strongly correlated, because they had the same estimation error which was related to the localization error of the robot’s pose.

Historical overview of the SLAM Problem (2) Durrant-Whyte, Rye and Nebot (ISRR 1995) made the conceptual breakthrough that the combined localization and mapping problem, formulated in a single estimation problem was convergent. The critical point of the problem was the correlation between the landmarks (stronger correlations → better solutions) ISRR 1999: The first SLAM session was held where Thurn introduced a convergent between Kalman-filter-based SLAM and probabilistic methods for localization and mapping. By 2000 many researchers around the world worked on SLAM problem, also called Concurrent Mapping and Localization (CML).

Historical overview of the SLAM Problem (3) The ICRA Workshop 2000 on SLAM was held with the participation of 15 researchers. In the ICRA Workshop 2002 on SLAM 150 researchers participated. Many interesting SLAM summer schools, that organized after 2002, helped a lot on discovering more about the field.

The SLAM Problem- Preliminaries(1) Xk : the state vector describing the location and orientation of the vehicle at time k. uk : the control vector applied the time k-1. mi: a vector describing the location of the ith landmark. The landmarks are motionless. zik : an observation taken from the vehicle of the location of the ith landmark at time k. Do you find anything strange in this figure?

The SLAM Problem- Preliminaries(2) Also the following sets are defined: X0:k = {x0, x1,··· , xk} U0:k = {u1, u2,··· , uk} Z0:k = {z1, z2,··· , zk} m = {m1, m2,··· , mn} What are those sets?

Probabilistic SLAM We need to compute for all times k the probabilistic distribution of the joint posterior density of the landmarks and the state: P(xk, m|Z0:k, U0:k, x0) Why do we need the x0 element? In order to compute that probability we need to compute previously: P(zk|xk, m) (observation model) P(xk|xk−1, uk) (marcovian motion model)

Probabilistic SLAM - Updates Time update (prediction): Measurement update (correction): We can solve the localization problem with the assumption that we know the map: And the mapping problem with the assumption we know the location:

Structure of Probabilistic SLAM(1) The landmark locations estimates are highly correlated. We may know with high accuracy the relation between the landmarks even if the absolute location is uncertain! The correlations are increased for every observations. Also the estimates for the relative location for every landmark are improved monotonically as more observations are made! Huh!? But why?

Structure of Probabilistic SLAM(2) -Any idea why the relative location of the landmarks is more accurate than the absolute location? -Any other comment?

Structure of Probabilistic SLAM(3) The observation made by the robot regarding the relative location of the landmarks can be considered nearly independent, because the relative location of the landmarks is independent from the robot’s coordinate frame. The observation made by the robot regarding the absolute location of the landmarks is more uncertain because the absolute location of each landmark is strongly related to the robots coordinate frame. Because of the correlations of the landmarks we can update the location of landmarks even we cannot observe. So the correlations are increased for every observation we make. Thus, the robot ‘s accuracy on building the relative map of the environment increased for more observations.

Solutions to SLAM Problem The goal is to find an appropriate representation for the observation and motion problem. Two different methods: EKF-SLAM: Using the Extended Kalman Filter. Using particle filters : Rao-Blackwellized particle filter (FastSLAM) More methods at SLAM Tutorial (Part II)

EKF-SLAM (1) We have to describe the robot’s motion: Also the observation model: What is wk and vk? Finding the mean: Finding the covariance: …of the joint posterior distribution:

EKF-SLAM (2) Time update: Observation update: Where: Do you remember the Q, W, R, S ?

EKF-SLAM (3) The individual landmark variances converge toward a lower bound determined by initial uncertainties in robot position and observations. The observation update step requires that all landmarks and the joint covariance matrix be updated every time an observation is made. Computation grows quadratically with the number of landmarks! Although, some techniques have been developed for real time implementation even with many thousands of landmarks. Any comments on this plot?

EKF-SLAM (4) Some disadvantages of the method: The standard formulation of the EKF-SLAM solution is especially fragile to incorrect association of observations to landmarks. The loop-closure problem. The association problem. EKF-SLAM employs linearized models of nonlinear motion and observation models. Nonlinearity can be a significant problem!

FastSLAM (1) FastSLAM breaks the assumptions of the nonlinear process model and non-Gaussian pose distribution that are used in EKF-SLAM. FastSLAM is based on: Monte Carlo Sampling, or Particle Filtering Still linearizes but in an more reasonable approximation.

FastSLAM (2) SLAM is a problem with high dimensionality, so it is computationally hard to make a direct application to every particle. We can reduce the sample-space by applying Rao-Blackwellization (R-B): P(x1,x2)=P(x2|x1)P(x1). If we are able to present analytically the P(x2|x1) we only need to sample P(x1). So the joint distribution is presented by the set {x1(i) , P(x2|x1(i) }iN and the marginal: can be obtained with a greater accuracy than by sampling over the joint space.

FastSLAM (3) The joint SLAM state may be factored into a vehicle component and a conditional map component: The probability distribution depends on the entire trajectory X0:k and not the xk, because conditioned on the trajectory the map landmarks become independed and that is the reason for its speed. The map is represented with linear complexity rather than quadratic complexity.

FastSLAM (4) The joint distribution is represented by the set: And each particle is composed of independed normal distributions: Then we just process each particle as an EKF measurement update from a known pose.

FastSLAM (5) We sample the particles by using the sequential important sampling (SIS) via the product rule: And at each time step k we draw the particles by the proposal distribution: Which approximates the true distribution: The approximation error grows with time but we can also add a resampling step. SIS with resampling can produce good results only for systems that exponentially forget their past

FastSLAM (6) – The Algorithm For each particle, compute a proposal distribution, conditioned on the specific particle history, and draw a sample from it: Weight samples according to the importance function: Where: Perform resambling if needed. Selected particles are given w(i)k=1/N. Perform EKF for every particle.

FastSLAM (7) FastSLAM 1.0: FastSLAM 2.0: Where: Where C is a normalizing constant

FastSLAM(8) FastSLAM 2.0 has the advantage that the proposal distribution is locally optimal because it gives the smallest possible variance in importance weight. Both FastSLAM 1.0 and FastSLAM 2.0 suffer from degeneration because of their inability to forget the past. In practise FastSLAM generates some pretty accurate maps.

FastSLAM (9) Any comments on this realization of robot trajectory in the FastSLAM algorithm?

Impementation of SLAM “Explore and return’’ experiment by Newman (EKF-SLAM) Guivant and Nebot pioneered the application of SLAM in very large outdoor environments with some interesting results. Consistent Pose Estimation (CPE) with really good results in large indoor environments.

Thank you for you time.