- •Introduction
- •Linear State Space Estimation
- •Kalman Filter
- •Kalman Smoother
- •Demonstration: 2D CWPA-model
- •Nonlinear State Space Estimation
- •Extended Kalman Filter
- •Taylor Series Based Approximations
- •Linear Approximation
- •Quadratic Approximation
- •The Limitations of EKF
- •Extended Kalman smoother
- •Demonstration: Tracking a random sine signal
- •Unscented Kalman Filter
- •Unscented Transform
- •The Matrix Form of UT
- •Unscented Kalman Filter
- •Augmented UKF
- •Unscented Kalman Smoother
- •Gauss-Hermite Cubature Transformation
- •Gauss-Hermite Kalman Filter
- •Gauss-Hermite Kalman Smoother
- •Cubature Kalman Filter
- •Spherical-Radial Cubature Transformation
- •Spherical-Radial Cubature Kalman Filter
- •Spherical-Radial Cubature Kalman Smoother
- •Demonstration: Bearings Only Tracking
- •Demonstration: Reentry Vehicle Tracking
- •Multiple Model Systems
- •Linear Systems
- •Interacting Multiple Model Filter
- •Interacting Multiple Model Smoother
- •Demonstration: Tracking a Target with Simple Manouvers
- •Nonlinear Systems
- •Demonstration: Coordinated Turn Model
- •Demonstration: Bearings Only Tracking of a Manouvering Target
- •Functions in the Toolbox
- •Linear Kalman Filter
- •Extended Kalman Filter
- •Cubature Kalman Filter
- •Multiple Model Systems
- •IMM Models
- •EIMM Models
- •UIMM Models
- •Other Functions
- •Bibliography
Chapter 3
Nonlinear State Space Estimation
In many cases interesting dynamic systems are not linear by nature, so the traditional Kalman filter cannot be applied in estimating the state of such a system. In these kind of systems, both the dynamics and the measurement processes can be nonlinear, or only one them. In this section, we describe two extensions to the traditional Kalman filter, which can be applied for estimating nonlinear dynamical systems by forming Gaussian approximations to the joint distribution of the state x and measurement y. First we present the Extended Kalman filter (EKF), which is based on Taylor series approximation of the joint distribution, and then the Unscented Kalman filter (UKF), which is respectively based on the unscented transformation of the joint distribution. After UKF we review Gauss-Hermite Kalman filter (GHKF) and third-order symmetric Cubature Kalman filter (CKF).
3.1Extended Kalman Filter
3.1.1 Taylor Series Based Approximations
Next we present linear and quadratic approximations for the distribution of variable y, which is generated with a non-linear transformation of a Gaussian random variable x as follows:
x N(m; P)
(3.1)
y = g(x);
where x 2 Rn, y 2 Rm, and g : Rn 7!Rm is a general non-linear function. Solving the distribution of y formally is in general not possible, because it is nonGaussian for all by linear g, so in practice it must be approximated somehow. The joint distribution of x and y can be formed with, for example, linear and quadratic approximations, which we present next. See, for example, Bar-Shalom et al. (2001) for the derivation of these approximations.
15
CHAPTER 3. NONLINEAR STATE SPACE ESTIMATION
3.1.2 Linear Approximation
The linear approximation based Gaussian approximation of the joint distribution of variables x and y defined by equations (3.1) is given as
y |
N |
L |
; |
CLT |
SL |
; |
x |
|
m |
|
P |
CL |
|
where
L = g(m)
SL = Gx(m) P GTx (m) CL = P GTx (m);
and Gx(m) is the Jacobian matrix of g with elements
[Gx(m)]j;j0 = |
@gj(x) |
|
: |
|
@xj0 |
||||
|
|
|
x=m |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(3.2)
(3.3)
(3.4)
3.1.3 Quadratic Approximation
The quadratic approximations retain also the second order terms of the Taylor series expansion of the non-linear function:
|
|
y |
N Q |
; |
CQT |
SQ |
; |
|
(3.5) |
|||||
|
|
x |
|
|
|
m |
|
P |
CQ |
|
|
|
||
where the parameters are |
|
tr nGxx(m) Po |
|
|
|
|
||||||||
Q = g(m) + 2 |
i |
ei |
|
|
|
|
||||||||
1 |
X |
|
|
|
|
(i) |
|
|
|
|
|
|
|
|
|
|
T |
|
1 |
i;i0 |
|
T |
|
(i) |
(i0 ) |
(m) Po |
(3.6) |
||
SQ = Gx(m) P Gx (m) + 2 |
ei ei0 |
tr nGxx(m) P Gxx |
||||||||||||
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
|
CQ = P GTx (m);
Gx(m) is the Jacobian matrix (3.4) and G(xxi) (m) is the Hessian matrix of gi( ) evaluated at m:
Gxx(m) |
j;j0 |
= @xj i@xj0 |
; |
: |
(3.7) |
(i) |
i |
@2g (x) |
x=m |
|
|
h |
|
|
|
ei = (0 0 1 0 0)T is the unit vector in direction of the coordinate axis i.
16
CHAPTER 3. NONLINEAR STATE SPACE ESTIMATION
3.1.4 Extended Kalman filter
The extended Kalman filter (see, for instance, Jazwinski, 1966; Maybeck, 1982; Bar-Shalom et al., 2001; Grewal and Andrews, 2001; Särkkä, 2006) extends the scope of Kalman filter to nonlinear optimal filtering problems by forming a Gaussian approximation to the joint distribution of state x and measurements y using a Taylor series based transformation. First and second order extended Kalman filters are presented, which are based on linear and quadratic approximations to the transformation. Higher order filters are also possible, but not presented here.
The filtering model used in the EKF is
xk = f(xk 1; k 1) + qk 1
(3.8)
yk = h(xk; k) + rk;
where xk 2 Rn is the state, yk 2 Rm is the measurement, qk 1 N(0; Qk 1) is the process noise, rk N(0; Rk) is the measurement noise, f is the (possibly nonlinear) dynamic model function and h is the (again possibly nonlinear) measurement model function. The first and second order extended Kalman filters approximate the distribution of state xk given the observations y1:k with a Gaussian:
p(xk j y1:k) N(xk j mk; Pk): |
(3.9) |
First Order Extended Kalman Filter
Like Kalman filter, also the extended Kalman filter is separated to two steps. The steps for the first order EKF are as follows:
• Prediction:
mk = f(mk 1; k 1)
Pk = Fx(mk 1; k 1) Pk 1 FTx (mk 1; k 1) + Qk 1:
• Update:
vk = yk h(mk ; k)
Sk = Hx(mk ; k) Pk HTx (mk ; k) + Rk
Kk = Pk HTx (mk ; k) Sk 1 mk = mk + Kk vk
Pk = Pk Kk Sk KTk ;
(3.10)
(3.11)
17
CHAPTER 3. NONLINEAR STATE SPACE ESTIMATION
where the matrices Fx(m; k 1) and Hx(m; k) are the Jacobians of f and h, with elements
[Fx(m; k 1)]j;j0 = |
@fj(@xj0 |
|
1) |
|
|
(3.12) |
|||||
|
|
|
x; k |
|
x=m |
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@h |
(x; k) |
|
|
|
|
||||
|
|
|
j |
|
|
|
|
|
|
|
|
[Hx(m; k)]j;j0 |
= |
|
|
|
|
|
: |
(3.13) |
|||
|
@xj0 |
|
|
||||||||
|
|
|
|
|
|
|
|
x=m |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Note that the difference between first order EKF and KF is that the matrices Ak and Hk in KF are replaced with Jacobian matrices Fx(mk 1; k 1) and Hx(mk ; k) in EKF. Predicted mean mk and residual of prediction vk are also calculated differently in the EKF. In this toolbox the prediction and update steps of the first order EKF can be computed with functions ekf_predict1 and ekf_update1, respectively.
Second Order Extended Kalman Filter
The corresponding steps for the second order EKF are as follows:
• Prediction:
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
ei |
|
(i) |
|
|
|
|
|||
mk = f(mk 1; k 1) + 2 i |
|
|
tr nFxx(mk 1; k 1) Pk 1o |
||||||||||||||||||||
P |
|
|
|
|
|
|
|
|
|
|
|
|
X |
|
|
|
|
|
|
|
|
||
= F |
(m |
k 1 |
; k |
|
1) P |
k 1 |
FT |
(m |
k 1 |
; k |
|
1) |
|
|
|||||||||
k |
1 |
x |
|
|
|
|
|
|
|
x |
|
|
(i0 ) |
|
; k 1)Pk 1o |
||||||||
|
|
|
|
T |
|
|
(i) |
|
|
|
|
|
|
|
|
|
(mk 1 |
||||||
|
+ 2 i;i0 |
ei ei0 |
tr nFxx(mk 1; k 1)Pk 1Fxx |
||||||||||||||||||||
|
|
|
X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ Qk 1: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(3.14) |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
• Update: |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ei tr nHxx(mk ; k) Pk o |
||||||||
vk = yk |
h(mk ; k) 2 |
|
|
i |
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
X |
|
|
(i) |
|
|
|
Sk = Hx(mk ; k) Pk HTx (mk ; k)
+ 12 Xei eTi0 tr nH(xxi) (mk ; k) Pk
i;i0
Kk = Pk HTx (mk ; k) Sk 1 mk = mk + Kk vk
Pk = Pk Kk Sk KTk ;
(i0 ) o
Hxx (mk ; k) Pk + Rk
(3.15)
18