4 Building blocks of navigation
4 Building blocks of navigation
Perception
The robot must interpret its sensors to extract meaningful data.
4 Building blocks of navigation
Localization
The robot must determine its position in the environment.
4 Building blocks of navigation
Cognition
The robot must decide how to act to achieve its goals.
4 Building blocks of navigation
Motion control
The robot must modulate its motor outputs to achieve the desired trajectory.
5 Sources of odometric error
Key advantage of the multiple-hypothesis representation regarding position
The robot can explicitly maintain uncertainty regarding its position.
If the robot only acquires partial information regarding position from its sensors and effectors, that information can be conceptually incorporated in an updated belief.
Robot Localization
2 Update steps
Prediction update
The robot uses its prioprioceptive sensorts to estimate its configuration.
E.g. the robot estimates its motion using the encoders.
Perception update
The robot uses information from its exteroceptive sensors to correct the position estimated during the prediction phase.
E.g. the robot uses a rangefinder to measure its current distance from a wall and corrects accordingly the position estimated during the prediction phase.
Robot localization
Belief
A robot cannot measure its true pose. It can only know the best estimate of its pose.
The best guess about the robot state (pose) is called belief.
Denote the belief over a state variable xₜ by bel(xₜ):
bel(xₜ) = p(xₜ | z₁→ₜ , u₁→ₜ)
represents the probability of the robot being at xₜ given all its past observations z₁→ₜ and all its past control inputs u₁→ₜ.
5 Ingredients of probabilistic map-based localization
5 Ingredients of probabilistic map-based localization
Initial probability distribution
bel(x₀)
In the case where the initial robot location is unknown, the initial belief bel(x₀) is a uniform distribution over all poses.
Conversely, if the location is perfectly known, the initial belief is a Dirac delta function.
5 Ingredients of probabilistic map-based localization
Map of the environment
The environment map M = {m₀, m₁, ..., mₘ} must be known.
If the map is not known a priori, then the robot needs to build a map of the environment.
5 Ingredients of probabilistic map-based localization
Data
For localizing, the robot needs to use data from its prioprioceptive and exteroceptive sensors.
Denote with zₜ the current reading from the exteroceptive sensor.
Denote with uₜ the reading from the prioprioceptive sensor or the control input.
5 Ingredients of probabilistic map-based localization
Probabilistic motion model
The probabilistic motion model is derived from the kinematics of the robot.
In the noise-free case, the robot current location xₜ can be conputed as a function f of the previous location xₜ₋₁ and the encoder readings uₜ.
xₜ = f( xₜ₋₁, uₜ)
5 Ingredients of probabilistic map-based localization
Probabilistic measurement model
This is derived directly from the exteroceptive sensor model. E.g. the error model of the laser, the sonar, or the camera.
The measurement function depends on the map M and the robot location xₜ.
zₜ = h(xₜ , M)
The measurement function h is typically a change of coordinates from the world frame to the sensor reference frame attached to the robot.
3 types of localization problems
3 types of localization problems
Position tracking
The robot current location is updated based on the knowledge of its previous position (tracking).
This implies that the robot initial location is supposed to be known.
Additionally, the uncertainty on the robot pose has to be small. If the uncertainty is too large, position tracking might fail to localize the robot.
3 types of localization problems
Global localization
Global localization assumes that the robot initial location is unknown.
This means that the robot can be placed anywhere in the environment - without knowledge about it - and is able to localize globally within it.
In global localization, the robot belief is usually a uniform distribution.
3 types of localization problems
Kidnapped robot problem
The case where the robot gets kidnapped and moved to another location.
The kidnapped robot problem is similar to the global localization problem only if the robot realizes having been kidnapped.
The difficulty arises when the robot does not know it has been moved to another location and it believes it knows where it is but in fact does not.
The ability to recover from kidnapping is a necessary condition for the operation of any autonomous robouts and even more for commercial robots.
Markov localization
Markov localization tracks the robot’s belief state using an arbitrary probability density function to represent the robot’s position.
In practice, all known Markov localization systems implement this generic belief representation by first tessellating the robot configuration space (x, y, θ) into a finite, discrete number of possible robot poses in the map.
3 Key Assumptions of Markov localization
Markov assumption
The output xₜ is a function only of the previous state xₜ₋₁ and its most recent actions (odometry) uₜ and perception zₜ.