Lecture 8 Map Building 2
Lecture 8 Map Building 2
• Weighted least-square
1
• After some calculation and rearrangements if we take wi =
σ i2
Introduction to Kalman Filter (2)
• In Kalman Filter notation
Introduction to Kalman Filter (3)
• Dynamic Prediction (robot moving)
u = velocity
w = noise
• Motion
pˆ ( k + 1 k ) = f ( pˆ ( k k ), u ( k )) f: Odometry function
Σ p ( k + 1 k ) = ∇ p f ⋅ Σ p ( k k ) ⋅ ∇ p f T + ∇u f ⋅ Σu ( k ) ⋅ ∇u f T
Robot Position Prediction: Example
⎡ ∆sr + ∆sl ∆sr − ∆sl ⎤
⎢ cos( θ + )⎥
⎡ x(k ) ⎤ ⎢
ˆ 2 2 b
⎢ ⎥ ∆sr + ∆sl ∆sr − ∆sl ⎥ Odometry
pˆ ( k + 1 k ) = pˆ ( k k ) + u( k ) = yˆ ( k ) + ⎢ sin(θ + )⎥
⎢ ⎥ ⎢ 2 2 b ⎥
⎢⎣ θˆ ( k ) ⎥⎦ ⎢ ∆sr − ∆sl ⎥
⎢⎣ b ⎥⎦
Σ p ( k + 1 k ) = ∇ p f ⋅ Σ p ( k k ) ⋅ ∇ p f T + ∇u f ⋅ Σu ( k ) ⋅ ∇u f T
⎡ k r ∆s r 0 ⎤
Σu (k ) = ⎢ ⎥
⎣ 0 kl ∆sl ⎦
Kalman filter localization: Observation
• The second step it to obtain the observation Z(k+1) (measurements) from
the robot’s sensors at the new location at time k+1
• The observation usually consists of a set n0 of single observations zj(k+1)
extracted from the different sensors signals. It can represent raw data
scans as well as features like lines, doors or any kind of landmarks.
• The parameters of the targets are usually observed in the sensor frame
{S}.
¾ Therefore the observations have to be transformed to the world frame {W}
or
¾ the measurement prediction have to be transformed to the sensor frame {S}.
¾ This transformation is specified in the function hi (seen later).
Kalman filter localization: Observation: Example
Raw Date of Extracted Lines Extracted Lines
Laser Scanner in Model Space
line j
αj
rj
⎡α j ⎤
R Sensor
z j ( k + 1) = ⎢ ⎥ (robot)
⎣ rj ⎦ frame
⎡σ σαr ⎤
Σ R , j ( k + 1) = ⎢ αα
⎣ σ rα σ rr ⎥⎦ j
Kalman filter localization: Measurement Prediction
(
• In the next step we use the predicted robot position p̂ = k + 1 k )
and the map M(k) to generate multiple predicted observations zt.
• They have to be transformed into the sensor frame
ẑi (k + 1) = hi (zt , p̂ (k + 1 k ))
and its innovation covariance found by applying the error propagation law:
• The validity of the correspondence between measurement and prediction can e.g. be
evaluated through the Mahalanobis distance:
Kalman Filter for Mobile Robot Localization
Matching: Example
Kalman Filter for Mobile Robot Localization
Estimation: Applying the Kalman Filter
• Kalman filter gain:
SLAM
The Simultaneous Localization and Mapping Problem
Map Building:
How to Establish a Map
1. By Hand 3. Basic Requirements of a Map:
¾ a way to incorporate newly sensed
information into the existing world model
12 3.5 ¾ information and procedures for estimating
the robot’s position
¾ information to do path planning and other
navigation task (e.g. obstacle avoidance)
2. Automatically: Map Building
• Measure of Quality of a map
The robot learns its environment ¾ topological correctness
predictability
¾ metrical correctness
Motivation:
- by hand: hard and costly • But: Most environments are a mixture of
- dynamically changing environment predictable and unpredictable features
- different look due to different perception → hybrid approach
model-based vs. behaviour-based
Map Building:
The Problems
1. Map Maintaining: Keeping track of 2. Representation and
changes in the environment Reduction of Uncertainty
• a and b define the learning and forgetting rate and ns and nu are the
number of matched and unobserved predictions up to time k,
respectively.
Autonomous Map Building
Stochastic Map Technique
• Stacked system state vector:
explore
on stack
already
examined