introduction to mobile robotics ekf...
TRANSCRIPT
Wolfram Burgard, Cyrill Stachniss,
Maren Bennewitz, Kai Arras
EKF Localization
Introduction to Mobile Robotics
Slides by Kai Arras and Wolfram Burgard Last update: June 2010
Localization
• Given • Map of the environment. • Sequence of sensor measurements.
• Wanted • Estimate of the robot’s position.
• Problem classes • Position tracking • Global localization • Kidnapped robot problem (recovery)
“Using sensory information to locate the robot in its environment is the most fundamental problem to providing a mobile robot with autonomous capabilities.” [Cox ’91]
Landmark-based Localization
EKF Localization: Basic Cycle
3
Landmark-based Localization
EKF Localization: Basic Cycle
4
Landmark-based Localization
EKF Localization: Basic Cycle
5
raw sensory data
landmarks
innovation from matched landmarks
predicted measurements in
sensor coordinates
landmarks in global coordinates
encoder measurements
predicted state
posterior state
State Prediction (Odometry)
Landmark-based Localization
6
Control uk: wheel displacements sl , sr
Error model: linear growth
Nonlinear process model f :
State Prediction (Odometry)
Landmark-based Localization
7
Control uk: wheel displacements sl , sr
Error model: linear growth
Nonlinear process model f :
Landmark-based Localization
Landmark Extraction (Observation)
8
Extracted lines
Hessian line model
Extracted lines in model space
Raw laser range data
Landmark-based Localization
Measurement Prediction
• ...is a coordinate frame transform world-to-sensor
• Given the predicted state (robot pose), predicts the location and location uncertainty of expected observations in sensor coordinates
9
model space
Data Association (Matching)
• Associates predicted measurements with observations
• Innovation and innovation covariance
• Matching on significance level alpha
Landmark-based Localization
10
model space
Green: observation Magenta: measurement prediction
Landmark-based Localization
Update
• Kalman gain
• State update (robot pose)
• State covariance update
11
Red: posterior estimate
• EKF Localization with Point Features
Landmark-based Localization
1. EKF_localization ( µt-1, Σt-1, ut, zt, m):
Prediction:
2.
3.
4.
5.
6.
€
Σt =GtΣt−1GtT + BtQtBt
T
€
Bt =∂g(ut ,µt−1)
∂ut=
∂x'∂vt
∂x'∂ω t
∂y'∂vt
∂y'∂ω t
∂θ'∂vt
∂θ '∂ω t
€
Qt =α1 | vt |+α2 |ω t |( )2 0
0 α3 | vt |+α4 |ω t |( )2
Motion noise
Jacobian of g w.r.t location
Predicted mean
Predicted covariance
Jacobian of g w.r.t control
1. EKF_localization ( µt-1, Σt-1, ut, zt, m):
Correction:
2.
3.
4.
5.
6.
7.
8. €
St = HtΣ tHtT + Rt
€
Rt =σ r2 00 σ r
2
Predicted measurement mean
Innovation covariance
Kalman gain
Updated mean
Updated covariance
Jacobian of h w.r.t location
EKF Prediction Step
EKF Observation Prediction Step
EKF Correction Step
Estimation Sequence (1)
Estimation Sequence (2)
Comparison to GroundTruth
• [Arras et al. 98]:
• Laser range-finder and vision
• High precision (<1cm accuracy)
Courtesy of K. Arras
EKF Localization Example
EKF Localization Example
• Line and point landmarks
EKF Localization Example
• Line and point landmarks
EKF Localization Example • Expo.02: Swiss National Exhibition 2002 • Pavilion "Robotics" • 11 fully autonomous robots • tour guides, entertainer, photographer • 12 hours per day • 7 days per week • 5 months
• 3,316 km travel distance • almost 700,000 visitors • 400 visitors per hour
• Localization method: Line-Based EKF
EKF Localization Example
26
Global EKF Localization
Interpretation tree
27
Global EKF Localization
Env. Dynamics
28
Global EKF Localization Geometric constraints we can exploit
Location independent constraints
Unary constraint: intrinsic property of feature e.g. type, color, size
Binary constraint: relative measure between features e.g. relative position, angle
All decisions on a significance level α
29
Global EKF Localization
Interpretation Tree [Grimson 1987], [Drumheller 1987], [Castellanos 1996], [Lim 2000]
Algorithm
• backtracking • depth-first • recursive • uses geometric constraints • worst-case exponential
complexity
30
Global EKF Localization
Pygmalion
α = 0.95 , p = 2
31
Global EKF Localization
α = 0.95 , p = 3
Pygmalion
32
Global EKF Localization
α = 0.95 , p = 4 texe: 633 ms PowerPC at 300
MHz
Pygmalion
33
Global EKF Localization
α = 0.95 , p = 5
texe: 633 ms (PowerPC at 300 MHz)
Pygmalion
05.07.02, 17.23 h
Global EKF Localization
α = 0.999
At Expo.02
[Arras et al. 03]
texe = 105 ms
05.07.02, 17.23 h
Global EKF Localization
α = 0.999
At Expo.02
[Arras et al. 03]
05.07.02, 17.32 h
Global EKF Localization
α = 0.999
At Expo.02
[Arras et al. 03]
05.07.02, 17.32 h
Global EKF Localization
α = 0.999 texe = 446 ms
At Expo.02
[Arras et al. 03]
EKF Localization Summary
• EKF localization implements pose tracking
• Very efficient and accurate (positioning error down to subcentimeter)
• Filter divergence can cause lost situations from which the EKF cannot recover
• Industrial applications
• Global EKF localization can be achieved using interpretation tree-based data association
• Worst-case complexity is exponential
• Fast in practice for small maps