Robust Localization

Here, we discuss how we have improved the robot's ability to "localize", or determine its position and orientation in a global frame of reference. A common approach to this problem is Monte Carlo Localization, which is an application of particle filtering. We began with a baseline implementation adapted from the literature that provides a reasonable level of competence, but that exhibits some weaknesses in real-world tests.

We then added the following series of practical enhancements designed to improve the robot's localization accuracy, stability, and recovery from large unexpected movements:

  1. Maintaining a history of landmark sightings to produce more triangulation estimates.
  2. Using an empirically-computed unbiased landmark distance model in addition to heading for particle probability updates.
  3. Tuning and extending the robot behavior and extended motion model for improved odometry calculation in a way that is particularly suited to improving localization.
  4. Updating particles with negative information when an expected observation is not seen.
  5. Updating particles using line observations.

These enhancements are each individually straightforward, and they do not change the basic particle filtering approach. But together they provide a practical guide for avoiding potential pitfalls when implementing it on vision-based and/or legged robots.

We performed experiments both in simulation and on the physical robots to isolate the impacts of our contributions. We found that our enhancements improved the robustness and accuracy of localization significantly.

Full details of our approach are available in the following papers:

Valid CSS!
Valid XHTML 1.0!