Sachin Kumar
Sachin Kumar Making Robots Smarter

Monte Carlo Localization

Monte Carlo Localization

Overview

The Monte Carlo Localization (MCL) algorithm is popular algorithm used to estimation the position and orientation of a robot. The algorithm works with the known map of the envrionment and uses the LiDAR sensor data to estimate the position of it.

Algorithm

The MCL algorithm uses particle filter to estimate the location of the robot.

The particles are updated in this process:

  1. Particles are propagated based on the change in the pose and the specified motion model.
  2. The particles are assigned weights based on the likelihood of receiving the range sensor reading for each particle. This reading is based on the Sensor model.
  3. Based on these weights, a robot state estimate is extracted based on the particle weights. The group of particles with the highest weight is used to estimate the position of the robot.
  4. Finally, the particles are resampled based on the specified interval. Resampling adjusts particle positions and improves performance by adjusting the number of particles used. It is a key feature for adjusting to changes and keeping particles relevant for estimating the robot state.

The algorithm outputs the stimated pose and covariance.

comments powered by Disqus