Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Manual for the Matlab toolbox EKFUKF.pdf
Скачиваний:
85
Добавлен:
10.02.2015
Размер:
1.54 Mб
Скачать

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]