Fast Iterative Alignment of Pose Graphs with Poor Initial Estimates Edwin Olson John Leonard, Seth Teller

Slides:



Advertisements
Similar presentations
Bayesian Belief Propagation
Advertisements

Mobile Robot Localization and Mapping using the Kalman Filter
Brian Peasley and Stan Birchfield
Factorial Mixture of Gaussians and the Marginal Independence Model Ricardo Silva Joint work-in-progress with Zoubin Ghahramani.
CSCE643: Computer Vision Bayesian Tracking & Particle Filtering Jinxiang Chai Some slides from Stephen Roth.
Least squares CS1114
CSCI 347 / CS 4206: Data Mining Module 07: Implementations Topic 03: Linear Models.
ICCV 2007 tutorial Part III Message-passing algorithms for energy minimization Vladimir Kolmogorov University College London.
Low Complexity Keypoint Recognition and Pose Estimation Vincent Lepetit.
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.
The GraphSLAM Algorithm Daniel Holman CS 5391: AI Robotics March 12, 2014.
Lab 2 Lab 3 Homework Labs 4-6 Final Project Late No Videos Write up
Simultaneous Localization and Mapping
2008 SIAM Conference on Imaging Science July 7, 2008 Jason A. Palmer
CSC321: Neural Networks Lecture 3: Perceptrons
The loss function, the normal equation,
Kuang-Hao Liu et al Presented by Xin Che 11/18/09.
Active SLAM in Structured Environments Cindy Leung, Shoudong Huang and Gamini Dissanayake Presented by: Arvind Pereira for the CS-599 – Sequential Decision.
Support Vector Machines (SVMs) Chapter 5 (Duda et al.)
Accurate Non-Iterative O( n ) Solution to the P n P Problem CVLab - Ecole Polytechnique Fédérale de Lausanne Francesc Moreno-Noguer Vincent Lepetit Pascal.
Topological Mapping using Visual Landmarks ● The work is based on the "Team Localization: A Maximum Likelihood Approach" paper. ● To simplify the problem,
Announcements  Homework 4 is due on this Thursday (02/27/2004)  Project proposal is due on 03/02.
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
1 Spring 2007 Research Log Joseph Djugash. 2 The Problem Localize a large network of nodes with the following constraints: Resource Limitation power,
Presented by Ozgur D. Sahin. Outline Introduction Neighborhood Functions ANF Algorithm Modifications Experimental Results Data Mining using ANF Conclusions.
Recovering Articulated Object Models from 3D Range Data Dragomir Anguelov Daphne Koller Hoi-Cheung Pang Praveen Srinivasan Sebastian Thrun Computer Science.
Research at Intel Distributed Localization of Modular Robot Ensembles Robotics: Science and Systems 25 June 2008 Stanislav Funiak, Michael Ashley-Rollman.
Artificial Neural Networks
Review Rong Jin. Comparison of Different Classification Models  The goal of all classifiers Predicating class label y for an input x Estimate p(y|x)
Online Learning Algorithms
Computer Vision - Fitting and Alignment
Cao et al. ICML 2010 Presented by Danushka Bollegala.
Kalman filtering techniques for parameter estimation Jared Barber Department of Mathematics, University of Pittsburgh Work with Ivan Yotov and Mark Tronzo.
/09/dji-phantom-crashes-into- canadian-lake/
9-1 SA-1 Probabilistic Robotics: SLAM = Simultaneous Localization and Mapping Slide credits: Wolfram Burgard, Dieter Fox, Cyrill Stachniss, Giorgio Grisetti,
Adaptive CSMA under the SINR Model: Fast convergence using the Bethe Approximation Krishna Jagannathan IIT Madras (Joint work with) Peruru Subrahmanya.
Machine Learning Chapter 4. Artificial Neural Networks
Simultaneous Localization and Mapping Presented by Lihan He Apr. 21, 2006.
Neural Networks - Berrin Yanıkoğlu1 Applications and Examples From Mitchell Chp. 4.
Probabilistic Robotics Bayes Filter Implementations Gaussian filters.
Learning Lateral Connections between Hidden Units Geoffrey Hinton University of Toronto in collaboration with Kejie Bao University of Toronto.
Stochastic Gradient Descent and Tree Parameterizations in SLAM
Young Ki Baik, Computer Vision Lab.
CS 782 – Machine Learning Lecture 4 Linear Models for Classification  Probabilistic generative models  Probabilistic discriminative models.
An Introduction to Support Vector Machines (M. Law)
Elliptic PDEs and the Finite Difference Method
Raquel A. Romano 1 Scientific Computing Seminar May 12, 2004 Projective Geometry for Computer Vision Projective Geometry for Computer Vision Raquel A.
Lecture 2: Statistical learning primer for biologists
Neural Networks - Berrin Yanıkoğlu1 Applications and Examples From Mitchell Chp. 4.
Bundle Adjustment A Modern Synthesis Bill Triggs, Philip McLauchlan, Richard Hartley and Andrew Fitzgibbon Presentation by Marios Xanthidis 5 th of No.
SLAM Tutorial (Part I) Marios Xanthidis.
Status of Reference Network Simulations John Dale ILC-CLIC LET Beam Dynamics Workshop 23 June 2009.
Probabilistic Robotics Bayes Filter Implementations Gaussian filters.
Support Vector Machines (SVMs) Chapter 5 (Duda et al.) CS479/679 Pattern Recognition Dr. George Bebis.
CSE-473 Mobile Robot Mapping.
Using Sensor Data Effectively
Robótica Móvil CC5316 Clase 16: SLAM
Paper – Stephen Se, David Lowe, Jim Little
Robust Range Only Beacon Localization
Simultaneous Localization and Mapping
Latent Space Model for Road Networks to Predict Time-Varying Traffic
Jose-Luis Blanco, Javier González, Juan-Antonio Fernández-Madrigal
Boltzmann Machine (BM) (§6.4)
Probabilistic Robotics
Probabilistic Robotics Bayes Filter Implementations FastSLAM
Presentation transcript:

Fast Iterative Alignment of Pose Graphs with Poor Initial Estimates Edwin Olson John Leonard, Seth Teller

Where are we going?

Problem summary ► Robot moves around environment. Poses are connected by constraints (odometry). Feature Pose Constraint ► Constraint = rigid body transformation + covariance matrix

Problem summary ► Re-observing features allows constraints between non-successive poses Feature Pose Constraint

Problem summary ► Goal: find the arrangement of poses and features that best satisfies the constraints.  (e.g., maximizes the probability) An improbable initial configurationMaximum likelihood configuration Poorly satisfied constraints SLAM

Why is this hard? ► Huge number of unknowns  |x| = 10 3 is a small problem ► Non-linear constraints  Function of robot orientation ► Lousy initial estimates  Odometry! ► (Today, we’ll ignore SLAM’s other difficult sub-problems: data association, exploration) Cost surface from a laser-scan matching problem. Many local maxima/minima

Our Work ► We present an algorithm for optimizing pose graphs  Very fast  Estimates non-linear maximum likelihood ► Unlike EKF, EIF and friends  Works well even with poor initial estimates  Under 100 lines of code

A peek at results Gauss-Seidel, 60 sec. Multi-Level Relaxation, 8.6 sec. Our method, 2.8 sec. Noisy (simulated) input: 3500 poses 3499 temporal constraints 2100 spatial constraints Ground Truth

Our Method: Overview ► Marginalize out features ► Use “incremental” state space ► Enforce constraints serially  Linearize constraint to global incremental constraint  Taking smaller steps as t → ∞

Marginalizing Features  Marginalize features, leaving only trajectory  Problem now involves only inter-pose constraints  Then compute features (trivial, as in FastSLAM) Marginalize

Marginalization: Cons ► Con: More edges in graph  Feature with N observations leads to O(N 2 ) edges  Slower/harder to solve ► (Information Matrix less sparse) Marginalize

Marginalization: Not so bad? ► Pro: Pose-pose edges better model data inter-dependence  “This cloud of points matches this cloud of points” ► Individual point associations are not independent.  More correct to use a single “lumped” constraint ► Bonus: Makes it easier to undo bad data associations later Observations at t=5Observations at t=500 Data association Lumped Constraint

Iterative Optimization ► Do forever:  Pick a constraint  Descend in direction of constraint’s gradient ► Scale gradient magnitude by alpha/iteration ► Clamp step size  iteration++ ► alpha/iteration → 0 as t → ∞ ► Robustness to local concavities  Hop around the state space, “stick” in the best one ► Good solution very fast, “perfect” solution only as t → ∞

Importance of state space ► Choice of state representation affects gradient ► Pick a state space that:  Is computationally efficient  Interacts well with optimization algorithm constraint error

Previous work: global state space ► Global state: x = [ x 0 y 0 θ 0 x 1 y 1 θ 1 x 2 y 2 θ 2 … ] T ► Constraint between pose a and b = f ( x a,y a,θ a,x b,y b,θ b )  Gradient = 0 for all but poses a and b 6 ► Slow convergence ► Error for some links can go up dramatically constraint error 6 Step direction

State Space: Relative/Incremental ► Robot motion is cumulative  Adjustment of one pose affects neighbors ► Each constraint affects multiple nodes ► Faster convergence ► Error decreases more predictably Step direction

Relative versus Incremental ► Relative (prior work):  State vector: rigid-body transformations P 3 = P 0 T 1 T 2 T 3  More realistic  Projective ► Small adjustments can have large effects ► Instability  O(N) time to compute update ► Incremental (contribution):  State vector: global-relative motions P 3 = P 0 + D 1 + D 2 + D 3  Less realistic (inexact)  Behaves linearly ► Small adjustments have small effects ► Good convergence properties  O(log N) to compute update

Algorithm Complexity ► For N poses, M constraints: ► Memory: O(N+M)  1M poses, 2M constraints → 176MB  EKF/EIF: O(N 2 ) ► Time:  Impose constraint: O(log N) ► (using incremental state space and tree-based data structure)  One full iteration: O(M log N)  Convergence: hard to make guarantees (nonlinear problem) ► Δx bounded at each time step, but ∫ Δx dt might not be ► In practice, SLAM problems fairly well behaved after a few iterations

Gauss Seidel Relaxation (exponential time scale)

Our algorithm (slowed down by ~4x)

Multi-Level Relaxation ► Optimization result after 8.6 seconds ► Converges to (very) good result in 30 minutes ► Thanks to Udo Frese for running this data set

Killian Court (Real Data) Laser-scan derived open-loop estimate

Continuing work… ► Several 3D implementations under way  Both with and without full-rank constraints ► Incremental (not batch) version ► Adaptive learning rate ► Reports of success with our algorithm from other universities…

Questions? ► Updated paper, movies, source code: 