Upload
robert-pickett
View
30
Download
0
Embed Size (px)
DESCRIPTION
Particle Filter for Robot Localization. Vuk Malbasa. Problem. Map is given as bitmap It is possible to measure distance to dark like from any position Robot needs to find out where on the map it is located Only available data is: Odometry (noisy) Range finding (noisy) - PowerPoint PPT Presentation
Citation preview
Particle Filter for Robot Localization
Vuk Malbasa
Problem
• Map is given as bitmap
• It is possible to measure distance to dark like from any position
• Robot needs to find out where on the map it is located
• Only available data is:
• Odometry (noisy)
• Range finding (noisy)
• Robot is programmed to follow a particular route around the map and is allowed to measure at each time step
Robot sensors• The robot measures distance to wall from
several directions– I assumed that a gyroscope would always let
the robot take measurements from the same angle
• Additive noise is simulated in the measurements as
ε ~ N(0,1)
• The robot sees a vector of distances
• To localize the robot needs to find a spot on the map which has similar distances to what it sees
• The measure of similarity– Given the current robot measurements as the
mean of a normal distribution with a large standard deviation how likely are the measurements taken from different locations across the map?
R
Measurements• Sometimes the measurements can be
ambiguous• When there the robot is in a repetitive
position on the map the distance function can be deceiving– This is where odometry helps
• When in the features that the robot sees are unique to that position on the map then the distance function has one optimum
Measurements• When the map is complex and the
measurements are noisy then the distance function shows multiple optima
• This leads to the importance of keeping track of previous positions of particles
– While a positions measurements may not be unique to a particular place on the map, the sequence of measurements is unique
Algorithm
initialize particles
for i = 1:length(movement)
take measurements from current position
simulate measurements for particles
calculate distance function
assign weights
resample
move robot
move particles
end
PracticeAt the beginning of the movement there are many possible positions because of noisy measurements and the wide Gaussian distance function
After a few iterations there are only two major positions left and the biggest one is wrong
However once the robot moves into a place on the map with unique measurements there is only one position
Parallel to evolutionary computation
loop
predict
evaluate
resample
end
loop
simulate
evaluate
reproduce
end
Particle filters Evolutionary Computation
Uncanny similarity