You are here

Paper:RO-SLAM with SOG

Tags: 

"Efficient Probabilistic Range-Only SLAM", IROS 2008 - PDF - Slides PPT
Abstract: This work addresses Range-Only SLAM (RO-SLAM) as the Bayesian inference problem of sequentially tracking a vehicle while estimating the location of a set of beacons without any prior information. The only assumptions are the availability of odometry and a range sensor able of identifying the different beacons. We propose exploiting the conditional independence between each beacon distribution within a Rao-Blackwellized Particle Filter (RBPF) for maintaining independent Sum of Gaussians (SOGs) for each map element. It is shown then that a proper probabilistic observation model can be derived for online operation with no need for delayed initializations. We provide a rigorous statistical comparison of this proposal with previous work of the authors where a Monte-Carlo approximation was employed instead for the conditional densities. As verified experimentally, this new proposal represents a significant improvement in accuracy, computation time, and robustness against outliers.

Bibtex:

@conference{blanco2008epr,
  title={{Efficient Probabilistic Range-Only SLAM}},
  author={Blanco, J.L. and Fernandez-Madrigal, J.A. and Gonzalez, J.},
  booktitle={IEEE/RSJ International Conference on Intelligent Robots and Systems},
  pages={1017--1022},
  year={2008}
}


2. Source code


The programs employed in the experimental results of this paper are:

  • simul-beacons: This program generates a random 2D or 3D map of beacons and produces the simulated observations of a robot according to some predefined path.
  • rbpf-slam: This application is actually a front-end to the class mrpt::slam::CMetricMapBuilderRBPF. All the parameters to the algorithm are passed through a configuration file in the command line. The filter processes actions and observations from a rawlog file and optionally generates a number of files describing the evolution of the filter and the maps.

More concretely, the SOG approach described in this paper is implemented in the classes: mrpt::slam::CBeacon, and mrpt::slam::CBeaconMap.

 

3. Reproduce an example run of RO RBPF-based SLAM


Open up a terminal and execute:

 $ cd MRPT/share/mrpt/config_files/rbpf-slam/
 $ rbpf-slam RO-SLAM_simulatedData_SOG.ini

You can open this .ini file and tune some parameters to see their effects.

4. Experiments


The next video shows: (i) results for 2D RO-SLAM with a simulated sensor, and (ii) results from real UWB radio data in 3D. Refer to the paper for more details on these results.

Results for RO-SLAM with SOG.
[jwplayer |file=/videos/RESULTS_ROSLAM_SOG.flv |image=/videos/RESULTS_ROSLAM_SOG.jpg |width=800 |height=470]

The full quality video is also available for download: RESULTS_ROSLAM_SOG.avi (50.6Mb).

This animation illustrates the symmetries found in RO-SLAM for a robot moving in a straight line. When the robot turns a corner, the symmetry is broken, but it still remains with respect to the plane the robot is moving (above and below the movement plane).
 

Symmetries in RO-SLAM
[jwplayer |file=/videos/demo_ROSLAM_symmetry1.flv |image=/videos/demo_ROSLAM_symmetry1.jpg |width=675 |height=547]