Nonlinear Model-Based Estimation Algorithms
Download
Report
Transcript Nonlinear Model-Based Estimation Algorithms
Nonlinear Model-Based Estimation
Algorithms: Tutorial and Recent
Developments
Mark L. Psiaki
Sibley School of Mechanical & Aerospace Engr.,
Cornell University
Aero. Engr. & Engr. Mech., UT Austin
31 March 2011
Acknowledgements
Collaborators
Paul Kintner, former Cornell ECE faculty member
Steve Powell, Cornell ECE research engineer
Hee Jung, Eric Klatt, Todd Humphreys, & Shan Mohiuddin,
Cornell GPS group Ph.D. alumni
Joanna Hinks, Ryan Dougherty, Ryan Mitch, & Karen Chiang,
Cornell GPS group Ph.D. candidates
Jon Schoenberg & Isaac Miller, Cornell Ph.D. candidate/alumnus
of Prof. M. Campbell’s autonomous systems group
Prof. Yaakov Oshman, The Technion, Haifa, Israel, faculty of
Aerospace Engineering
Massaki Wada, Saila System Inc. of Tokyo, Japan
Sponsors
Boeing Integrated Defense Systems
NASA Goddard
NASA OSS
NSF
UT Austin March ‘11
2 of 35
Goals:
Use sensor data from nonlinear systems to infer internal
states or hidden parameters
Enable navigation, autonomous control, etc. in
challenging environments (e.g., heavy GPS jamming) or
with limited/simplified sensor suites
Strategies:
Develop models of system dynamics & sensors that relate
internal states or hidden parameters to sensor outputs
Use nonlinear estimation to “invert” models & determine
states or parameters that are not directly measured
Nonlinear least-squares
Kalman filtering
Bayesian probability analysis
UT Austin March ‘11
3 of 35
Outline
I.
II.
III.
IV.
V.
VI.
VII.
VIII.
Related research
Example problem: Blind tricyclist w/bearings-only
measurements to uncertain target locations
Observability/minimum sensor suite
Batch filter estimation
Math model of tricyclist problem
Linearized observability analysis
Nonlinear least-squares solution
Models w/process noise, batch filter limitations
Nonlinear dynamic estimators: mechanizations & performance
Extended Kalman Filter (EKF)
Sigma-points filter/Unscented Kalman Filter (UKF)
Particle filter (PF)
Backwards-smoothing EKF (BSEKF)
Introduction of Gaussian sum techniques
Summary & conclusions
UT Austin March ‘11
4 of 35
Related Research
Nonlinear least squares batch estimation: Extensive
literature & textbooks, – e.g., Gill, Murray, & Wright (1981)
Kalman filter & EKF: Extensive literature & textbooks, e.g.,
Brown & Hwang 1997 or Bar-Shalom, Li & Kirubarajan
(2001)
Sigma-points filter/UKF: Julier, Uhlmann, & Durrant-Whyte
(2000), Wan & van der Merwe (2001), … etc.
Particle filter: Gordon, Salmond, & Smith (1993),
Arulampalam et al. tutorial (2002), … etc.
Backwards-smoothing EKF: Psiaki (2005)
Gaussian mixture filter: Sorenson & Alspach (1971), van
der Merwe & Wan (2003), Psiaki, Schoenberg, & Miller
(2010), … etc.
UT Austin March ‘11
5 of 35
A Blind Tricyclist Measuring Relative
Bearing to a Friend on a Merry-Go-Round
Assumptions/constraints:
Tricyclist doesn’t know initial x-y position or heading, but
can accurately accumulate changes in location & heading
via dead-reckoning
Friend of tricyclist rides a merry-go-round & periodically
calls to him giving him a relative bearing measurement
Tricyclist knows merry-go-round location & diameter, but
not its initial orientation or its constant rotation rate
Estimation problem: determine initial location &
heading plus merry-go-round initial orientation &
rotation rate
UT Austin March ‘11
6 of 35
Example Tricycle Trajectory &
Relative Bearing Measurements
See 1st Matlab movie
UT Austin March ‘11
7 of 35
Is the System Observable?
Observability is condition of having unique internal
states/parameters that produce a given measurement
time history
Verify observability before designing an estimator
because estimation algorithms do not work for
unobservable systems
Linear system observability tested via matrix rank calculations
Nonlinear system observability tested via local linearization rank
calculations & global minimum considerations of associated leastsquares problem
Failed observability test implies need for additional
sensing
UT Austin March ‘11
8 of 35
Observability Failure of Tricycle
Problem & a Fix
See 2nd Matlab movie for failure/nonuniqueness
See 3rd Matlab movie for fix via additional
sensing
UT Austin March ‘11
9 of 35
Geometry of Tricycle Dynamics &
Measurement Models
North, Y
V
X
m
m
Xm
Ym
T ricycle
m
Y
East, X
mth Merry- Go - Round
UT Austin March ‘11
10 of 35
Tricycle Dynamics Model from Kinematics
Constant-turn-radius transition from tk to tk+1 = tk +Dt:
V Δt tan k
X k 1 X k Vk Δt[sin k cinc{ k
} cosk sinc{Vk Δt tan k }]
bw
bw
V Δt tan k
Yk 1 Yk Vk Δt[ cos k cinc{ k
} sink sinc{Vk Δt tan k }]
bw
bw
k 1 k
Vk Δt tan k
bw
mk1 mk mk Δt
mk 1
for m 1,2
mk
State & control vector definitions
xk [ X k , Yk , k , 1k , 2k , 1k , 2k ]T
uk [Vk , k ]T
Consistent with standard discrete-time state-vector
dynamic model form: xk 1 f k ( xk , uk )
UT Austin March ‘11
11 of 35
Bearing Measurement Model
Trigonometry of bearing measurement to mth merrygo-round rider
mk atan2{( X m m cosmk X k br cosk ),...
(Y m m sin mk Yk br sink )}
Sample-dependent measurement vector definition:
if only rider 1 shouts
1k
if only rider 2 shouts
2k
zk 1k
2k if both riders shout
[]
if neitherrider shouts
Consistent with standard discrete-time state-vector
measurement model form: zk hk (xk ) k
UT Austin March ‘11
12 of 35
Nonlinear Batch Filter Model
Over-determined system of equations:
zbig hbig( x0 ) big
Definitions of vectors & model function:
z1
z
zbig 2
z N
1
big 2
N
h1{ f 0 [ x0 , u0 ]}
h2{ f1[ f 0 ( x0 , u0 ), u1 ]}
hbig ( x0 )
hN { f N 1[ f N 2 ( f N 3{, uN 3}, uN 2 ), uN 1 ]}
UT Austin March ‘11
13 of 35
Batch Filter Observability & Estimation
Linearized local observability analysis:
H big
hbig
rank(Hbig) dim(x0 ) ?
x0
Batch filter nonlinear least-squares estimation problem
find: x0
to minimize:
1
J ( x0 ) 1 [ zbig hbig ( x0 )]T R
big[ zbig hbig ( x0 )]
2
Approximate estimation error covariance
Pxx0 E{( x0optx0)( x0optx0)T }
[
2J
2
x0 x
0opt
T
1
1
]1 [ H big
R
H
]
big big
UT Austin March ‘11
14 of 35
Example Batch Filter Results
Truth
Batch Estimate
30
North Position (m)
20
10
0
-10
-20
-30
-20
-10
0
10
20
30
East Position (m)
UT Austin March ‘11
40
50
60
15 of 35
Dynamic Models with Process Noise
Typical form driven by Gaussian white random
process noise vk:
xk 1 f k ( xk , uk , vk )
E{vk } 0, E{vk v Tj } Qk jk
Tricycle problem dead-reckoning errors naturally
modeled as process noise
Specific process noise terms
Random errors between true speed V & true steer angle
and the measured values used for dead-reckoning
Wheel slip that causes odometry errors or that occurs in the
side-slip direction.
UT Austin March ‘11
16 of 35
Effect of Process Noise on Truth Trajectory
No Process Noise
Process Noise Present
30
North Position (m)
20
10
0
-10
-20
-30
-20
-10
0
10
20
30
East Position (m)
UT Austin March ‘11
40
50
60
17 of 35
Effect of Process Noise on Batch Filter
40
Truth
Batch Estimate
30
North Position (m)
20
10
0
-10
-20
-30
-20
-10
0
10
20
30
East Position (m)
UT Austin March ‘11
40
50
60
18 of 35
Dynamic Filtering based on Bayesian
Conditional Probability Density
p ( xk , v0 ,, vk 1 | z1,, zk ) C exp{ J }
J
1
2
T 1
vi Qi vi
i 0
k 1
1
[ zi1 - hi1( xi1)]T R
i 1[ zi1 - hi1( xi1)]
1
1 ( x0 - xˆ 0 )T Pxx
0 ( x0 - xˆ 0 )
2
subject to xi for i = 0, …, k-1 determined as
functions of xk & v0, …, vk-1 via inversion of the
equations:
xi 1 fi ( xi , ui , vi ) for i 0,..,k1
UT Austin March ‘11
19 of 35
EKF Approximation
Uses Taylor series approximations of fk(xk,uk,vk) & hk(xk)
Gaussian statistics assumed
Taylor expansions about approximate xk expectation values &
about vk = 0
Normally only first-order, i.e., linear, expansions used, but
sometimes quadratic terms are used
Allows complete probability density characterization in terms of
means & covariances
Allows closed-form mean & covariance propagations
Optimal for truly linear, truly Gaussian systems
Drawbacks
Requires encoding of analytic derivatives
Loses accuracy or even stability in the presence of severe
nonlinearities
UT Austin March ‘11
20 of 35
EKF Performance, Moderate Initial Uncertainty
Truth
EKF Estimate
30
North Position (m)
20
10
0
-10
-20
-30
-30
-20
-10
0
10
20
30
East Position (m)
UT Austin March ‘11
40
50
60
70
21 of 35
EKF Performance, Large Initial Uncertainty
Truth
EKF Estimate
30
20
North Position (m)
10
0
-10
-20
-30
-40
-50
-60
-40
-20
0
20
East Position (m)
UT Austin March ‘11
40
60
80
22 of 35
Sigma-Points UKF Approximation
Evaluate fk(xk,uk,vk) & hk(xk) at specially chosen “sigma” points &
compute statistics of results
Gaussian statistics assumed, as in EKF
“Sigma” points & weights yield pseudo-random approximate Monte-Carlo
calculations
Can be tuned to match statistical effects of more Taylor series terms than
EKF approximation
Mean & covariance assumed to fully characterize distribution
Sigma points provide a describing-function-type method for improving mean
& covariance propagations, which are performed via weighted averaging
over sigma points
No need for analytic derivatives of functions
Also optimal for truly linear, truly Gaussian systems
Drawback
Additional Taylor series approximation accuracy may not be sufficient for
severe nonlinearities
Extra parameters to tune
Singularities & discontinuities may hurt UKF more than other filters
UT Austin March ‘11
23 of 35
UKF Performance, Moderate Initial Uncertainty
Truth
UKF A Estimate
UKF B Estimate
30
North Position (m)
20
10
0
-10
-20
-30
-20
-10
0
10
20
30
East Position (m)
UT Austin March ‘11
40
50
60
70
24 of 35
UKF Performance, Large Initial Uncertainty
40
Truth
UKF A Estimate
UKF B Estimate
20
North Position (m)
0
-20
-40
-60
-20
0
20
40
East Position (m)
UT Austin March ‘11
60
80
100
25 of 35
Particle Filter Approximation
Approximate the conditional probability distribution using Monte-Carlo
techniques
Advantages
Keep track of a large number of state samples & corresponding weights
Update weights based on relative goodness of their fits to measured data
Re-sample distribution if weights become overly skewed to a few points,
using regularization to avoid point degeneracy
No need for Gaussian assumption
Evaluates fk(xk,uk,vk) & hk(xk) at many points, does not need analytic
derivatives
Theoretically exact in the limit of large numbers of points
Drawbacks
Point degeneracy due to skewed weights not fully compensated by
regularization
Too many points required for accuracy/convergence robustness for highdimensional problems
UT Austin March ‘11
26 of 35
PF Performance, Moderate Initial Uncertainty
Truth
Particle Filter Estimate
30
North Position (m)
20
10
0
-10
-20
-30
-30
-20
-10
0
10
20
30
East Position (m)
UT Austin March ‘11
40
50
60
70
27 of 35
PF Performance, Large Initial Uncertainty
Truth
Particle Filter Estimate
30
20
North Position (m)
10
0
-10
-20
-30
-40
-50
-20
0
20
40
East Position (m)
UT Austin March ‘11
60
80
28 of 35
Backwards-Smoothing EKF Approximation
Maximizes probability density instead of trying to
approximate intractable integrals
Maximum a posteriori (MAP) estimation can be biased, but also can
be very near optimal
Standard numerical trajectory optimization-type techniques can be
used to form estimates
Performs explicit re-estimation of a number of past process noise
vectors & explicitly considers a number of past measurements in
addition to the current one, re-linearizing many fi(xi,ui,vi) & hi(xi) for
values of i <= k as part of a non-linear smoothing calculation
Drawbacks
Computationally intensive, though highly parallelizable
MAP not good for multi-modal distributions
Tuning parameters adjust span & solution accuracy of re-smoothing
problems
UT Austin March ‘11
29 of 35
Implicit Smoothing in a Kalman Filter
3.5
Filter Output
1-Point Smoother
2-Point Smoother
3-Point Smoother
4-Point Smoother
5-Point Smoother
Truth
3
2.5
2
x1
1.5
1
0.5
0
-0.5
-1
-1.5
0
1
2
3
Sample Count, k
UT Austin March ‘11
4
5
30 of 35
BSEKF Performance, Moderate Initial Uncertainty
30
Truth
BSEKF A Estimate
BSEKF B Estimate
North Position (m)
20
10
0
-10
-20
-30
-20
-10
0
10
20
30
East Position (m)
UT Austin March ‘11
40
50
60
31 of 35
BSEKF Performance, Large Initial Uncertainty
Truth
BSEKF A Estimate
BSEKF B Estimate
30
20
North Position (m)
10
0
-10
-20
-30
-40
-50
-40
-20
0
20
East Position (m)
UT Austin March ‘11
40
60
32 of 35
A PF Approximates the Probability Density
Function as a Sum of Dirac Delta Functions
px(x), f(x)
0.6
0.4
Particle filter approximation
of original px(x) using
50 Dirac delta functions
0.2
0
-8
-6
-4
-2
0
x
2
4
6
8
30
using 50 Dirac delta functions
pf(f)
20
Particle filter approximation of
nonlinearly propagated pf(f)
10
0
0.1
0.15
0.2
0.25
0.3
0.35
f
GNC/Aug. ‘10
0.4
0.45
0.5
0.55
0.6
33 of 24
A Gaussian Sum Spreads the Component
Functions & Can Achieve Better Accuracy
100-element re-sampled Gaussian
approximation of original px(x)
probability density function
px(x), f(x)
0.6
100 Narrow weighted Gaussian
components of re-sampled mixture
0.4
0.2
0
-8
-6
-4
-2
0
x
2
4
6
8
30
EKF/100-narrow-element Gaussian
mixture approximation of
propagated pf(f) probability
density function
pf(f)
20
10
0
0.1
0.15
0.2
0.25
0.3
0.35
f
GNC/Aug. ‘10
0.4
0.45
0.5
0.55
0.6
34 of 24
Summary & Conclusions
Developed novel navigation problem to illustrate
challenges & opportunities of nonlinear estimation
Reviewed estimation methods that extract/estimate
internal states from sensor data
Presented & evaluated 5 nonlinear estimation
algorithms
Examined Batch filter, EKF, UKF, PF, & BSEKF
EKF, PF, & BSEKF have good performance for moderate initial errors
Only BSEKF has good performance for large initial errors
BSEKF has batch-like properties of insensitivity to initial
estimates/guesses due to nonlinear least-squares optimization with
algorithmic convergence guarantees
UT Austin March ‘11
35 of 35