Uploaded by Hemachandran S

kalman filter v02

advertisement
Kalman Filters
Process Noise,
v1(n)
Observation
y(n)
x(n)

z-1I
C(n)
s(n)

Measurement noise
v2(n)
F(n+1,n)
Process Equation
Measurement Equation
•Models the state x(n) as the output of •Relates the observable output of the
a linear system excited by white noise system y(n) to the state x(n)
v1(n)
x (n  1)  F (n  1, n) x (n)  v1(n)
Signal Model: x (n  1)  F (n  1, n) x(n)  v1(n)
s(n)  Hx (n / yn )
y ( n )  H ( n ) x ( n )  v 2 ( n)
Observation Model: y(n)  s(n)  v 2(n)
The filtering problem is posed as follows – Using the set of observed data y n ,
to find for each n  1the MMSE of the state vector x̂ , and then to estimate the
clean signal ŝ from the signal model.
Kalman filters, the unscented transform and particle filters
Unscented Kalman Filters (motivation… where Extended Kalman filters fail)
•Nonlinear State Estimation
xk 1  F ( xk ,vk )
yk  H ( xk ,nk )
a Posteriori estimate
F, H are (nonlinear) vector functions
xˆ k  xˆ k   K k ( yk  yˆ k  )]
Prediction of xˆ k
Innovation
•Predicting state vector, xˆ k   E[ F ( xˆ k 1 ,vk 1 )]
1
•Kalman gain, K k  Pxk y k P y k y k
•Predicting observation yˆ k   E[ H ( xˆ k - ,nk )]
•When propagating a GRV through a linear model (Kalman filtering), it is easy
to compute the expectation E[ ]
•However, if the same GRV passes through a nonlinear model, the resultant
estimate may no longer be Gaussian – calculation of E[ ] is no longer easy!
•It is in the calculation of E[ ] in the recursive filtering process that we
now need to estimate the pdf of the propagating random vector
Kalman filters, the unscented transform and particle filters
Unscented Kalman Filters (motivation… where Extended Kalman filters fail)
•Extended Kalman Filters (EKF) avoid this by linearizing the state-space
equations and reducing the estimate equations to point estimates instead of
expectations

xˆ k  F ( xˆ k 1 ,v )
1
ˆ
ˆ
K k  Pxk yk P y k y k
yˆ k   H ( xˆ k - ,nk )
•The covariance matrices (P) are computed by linearizing the dynamic
equations xk 1  Axk  Bvk , yk  Cxk  Dnk
•In EKF, the state distributions are approximated by a GRV and propagated
analytically through a ‘first-order linearization’ of the nonlinear system
- If the assumption of local linearity is violated, the resulting filter will be
unstable
- The linearization process itself involves computations of Jacobians and
Hessians (which is nontrivial for most systems)
Kalman filters, the unscented transform and particle filters
The Unscented Transform
•Problem statement: developing a method for calculating the statistics of a
random variable which has undergone a nonlinear transformation
•The intuition: It is easier to approximate a distribution than it is to
approximate an arbitrary nonlinear transformation
•Consider a nonlinearity y  g ( x)
•The Unscented transform chooses (deterministically) a set of ‘sigma’ points
in the original (x) space which when mapped to the transformed (y) space will
be capable of generating accurate sample means and covariance matrices in
the transformed space
•An accurate estimation of these allows us to use the Kalman filter in the
usual setup, with the expectation values being replaced by sample means and
covariance matrices as appropriate
Kalman filters, the unscented transform and particle filters
The Unscented Transform (illustration)
Px
Py
0.2812
0.0046
0.0046
0.2014
1.2692
0.0060
0.0060
0.8818
Kalman filters, the unscented transform and particle filters
Py_ut
0.2709
0.0510
0.0510
0.1607
Unscented Kalman Filters (UKFs)
•Instead of propagating a GRV through the “linearized” system, the UKF
technique focuses on an efficient estimation of the statistics of the random
vector being propagated through a nonlinear function
•To compute the statistics of y  g ( x) , we ‘cleverly’ sample this function using
‘deterministically’ chosen 2L+1 points about the mean of x
0  x
Sigma Points
i  x  ( ( L   ) Px )i , i  1, 2,....L
i  x  ( ( L   ) Px )i  L , i  L, L  1,....2 L
•It can be proved that with these as sample points, the following ‘weighted’
sample means
and covariance matrices will be equal to the true values
2L
y   Wi m yi
i 0
2L
Wo ( m ) 

L

Py   Wi c { yi  y}{ yi  y}T
Wo ( c ) 
where, yi  g (  i ), i  0,1, 2....2 L
Wi ( c )  Wi ( m ) 
i 0
L
1 2  
1
, i  1, 2,...., 2 L
2( L   )
•We use this set of equations to predict the states and observations in the
nonlinear state-estimation model. The expected values E[ ] and the
covariance matrices are replaced with these sample ‘weighted’ versions.
Kalman filters, the unscented transform and particle filters
Unscented Kalman Filters (UKFs)… Algorithm development
Augment the state vector to include the process and measurement noise and
initialize the mean and covariance matrix of the augmented vector.
Compute the sigma points about the previously estimated mean vector
Compute the predicted value of the state vector and cov. matrix at time k
Predict the current observation given previous observed samples (mapped
from the sigma points)
Compute the innovations covariance matrix, cross correlation matrix and
hence the Kalman gain and update the current estimate of the state at time k
Eric A. Wan and Rudolph van der Merwe, “The
Unscented Kalman Filter for Nonlinear Estimation”
Kalman filters, the unscented transform and particle filters
Unscented Kalman Filters (UKFs) vs. Particle Filters (PFs)
•The unscented transformation in UKFs allows the calculation of accurate
sample means and covariance matrices using a few ‘cleverly’ chosen samples
•Particle filtering employs Monte-Carlo techniques to obtain an estimate of the
statistics of the propagated random vector
•The two techniques are very close conceptually
•There is a subtle difference : in UKF based implementations, the sigma
points for sampling are deterministically chosen whereas in PF based
techniques, the sampling itself is done randomly
•Particle Filtering is more accurate but this comes at the cost of complexity
(introduced due to the need for Monte-Carlo simulations)
•The complexity of UKF based implementations is about the same as that of
regular Kalman filters
Kalman filters, the unscented transform and particle filters
Download