Particle Filters
Markov localisation is very computationally and memory intensive as all the bins have to be updated.
- Particle filters use sampling techniques to reduce the number of possible positions, and number of calculations.
We can describe the method like so:
-
Given a space, generate randomly, a set of particles that generate a hypothesis for where the robot.
Particles have a location and rotation (pose).
- Cull particles who’s observations don’t correlate with the current robot’s observations. These particles have low weight.
- For each particles that is culled, resample the space to find a location with greater likelihood.
A pseudo-code implementation of this is available at slide 33.
Using Ceiling Maps for Localisation
We can use ceiling lights to localise a robot by:
-
Generating a map of the ceiling lights (as and image).
-
Sensor Model:
- Use an upward facing camera.
- Take a small segment of the image.
- Find the average brightness.
- Compare with the intensity of the map:
- Add a Gaussian to account for noise.
Kidnapping Problem
With our current approach for particles filters, we won’t be able to localise if there is an error, or the robot is manually moved. We can account for this by:
-
Randomly inserting a fixed number of samples with randomly chosen poses.
This corresponds to the assumption that the robot can be teleported at any point in time, to an arbitrary location.