Sei sulla pagina 1di 20

Available online at www.sciencedirect.

com

Journal of the Franklin Institute 349 (2012) 2369–2388


www.elsevier.com/locate/jfranklin

Three-stage Kalman filter for state and fault


estimation of linear stochastic systems with
unknown inputs
F. Ben Hmidaa,n, K. Khemiria, J. Ragotb, M. Gossaa,1
a
ESSTT-C3S, 5 av. Taha Hussein, BP 56, 1008 Tunis, Tunisia
b
CRAN (CNRS UMR 7039), 2, av. de la forêt de Haye, 54516 Vand?uvre-les-Nancy Cedex, France

Received 13 March 2009; received in revised form 1 February 2012; accepted 7 May 2012
Available online 22 May 2012

Abstract

The paper studies the problem of simultaneously estimating the state and the fault of linear
stochastic discrete-time varying systems with unknown inputs. The fault and the unknown inputs
affect both the state and the output. However, if the dynamical evolution models of the fault and the
unknown inputs are available the filtering problem will be solved by the Optimal three-stage Kalman
Filter (OThSKF). The OThSKF is obtained after decoupling the covariance matrices of the
Augmented state Kalman Filter (ASKF) using a three-stage U–V transformation. Nevertheless, if the
fault and the unknown inputs models are not perfectly known the Robust three-stage Kalman Filter
(RThSKF) will be applied to give an unbiased minimum-variance estimation. Finally, a numerical
example is given in order to illustrate the proposed filters.
& 2012 The Franklin Institute. Published by Elsevier Ltd. All rights reserved.

1. Introduction

The joint fault and state estimation of linear time-varying stochastic systems with
unknown disturbances is considered in this paper. This problem is solved by using an
unknown input filtering approach to produce unknown disturbance decoupled joint fault-
state estimation. The proposed filter can play a significant role in several applications, e.g.,

n
Corresponding author.
E-mail addresses: Faycal.Benhmida@esstt.rnu.tn (F. Ben Hmida), kemiri_karim@yahoo.fr (K. Khemiri),
Jose.Ragot@ensem.inpl-nancy.fr (J. Ragot).
1
Deceased.

0016-0032/$32.00 & 2012 The Franklin Institute. Published by Elsevier Ltd. All rights reserved.
http://dx.doi.org/10.1016/j.jfranklin.2012.05.004
2370 F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388

model-based fault detection and isolation (FDI) problem [8,10–12,25] and fault tolerant
control (FTC) problem [7,18].
Unknown input filtering (UIF) for linear stochastic discrete-time systems has gained the
interest of many researchers during the last decades. In this context, this problem has been
extensively studied using the Kalman filtering approach, see e.g. [1–9,13–24].
When the model of the unknown inputs is available, it is possible to obtain an optimal
estimation by using the Augmented State Kalman Filter (ASKF). To reduce computation
costs of the ASKF, [2] has introduced the Two-Stage Kalman Filter (TSKF). His approach
consists in decoupling the ASKF into the state subfilter and unknown inputs subfilter.
Friedland’s filter is only optimal for constant bias. Many authors have extended the
Friedland’s idea to treat the stochastic bias, e.g. [1,14,21,22]. In the same context, [6] have
generalized Friedland’s filter by destroying the bias noise effect to obtain the Optimal Two-
Stage Kalman Filter (OTSKF). Ref. [9] proposed a generalization of the OTSKF to get the
Optimal Multi-Stage Kalman Filter (OMSKF). Recently, [15] have developed an adaptive
version of TSKF noted ATSKF (Adaptive Two-Stage Kalman Filter) and they have
analysed the stability of this filter in [16].
On the other hand, when the unknown inputs model is not available, the unbiased
minimum variance (UMV) state estimations are insensitive with the unknown inputs.
Ref. [24] has developed a Kalman filter with unknown inputs by minimizing the trace of the
state error covariance matrix under an algebraic constraint. Ref. [20] have used a
parameterizing technique as an extension of the Kitanidis’s results to derive an UMV
estimator. Ref. [5] has developed a robust filter in two-stage noted RTSKF (Robust Two-
Stage Kalman Filter) equivalent to Kitanidis’s filter. Next, the same author [3] has proposed
an extension of the RTSKF (named ERTSKF) to solve the addressed general unknown-
input filtering problem. For obtain ERTSKF, the author has introduced a new constrained
relationship to modify the optimal unbiased minimum-variance filter (OUMVF) presented
in [4]. Recently, Ref. [8] solved the problem of unbiased fault and state estimation for linear
system with unknown disturbances in the case when we do not have a prior knowledge
about the dynamical evolution of the fault and the unknown disturbances.
The main objective of this paper is to develop two new filter structures that can solve the
problem of simultaneously estimating the state and the fault in presence of the unknown inputs.
In this case, when the dynamical evolutions of the fault and the unknown inputs are available,
the Optimal three-stage Kalman Filter (OThSKF) is used. However, when the fault and the
unknown inputs are not perfectly known, we develop the Robust three-stage Kalman Filter
(RThSKF). This latter is obtained by using a modification in measurement update equations of
the fault and the unknown inputs subfilters of the OThSKF. This idea constitutes an extension
of RTSKF in [5].
The remainder of this paper is organized as follows. Section 2 states the problem of
interest. In Section 3, the design of the ASKF, OThSKF and RThSKF are developed.
Finally, an illustrative example of the proposed approach techniques is presented.

2. Statement of the problem

The problem consists of designing a filter that gives a robust state and fault estimation
for linear time-varying stochastic systems in the presence of unknown inputs. This problem
is described by the bloc diagram of Fig. 1.
F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388 2371

Fig. 1. State and fault estimator filter.

The plant P represents the linear time-varying discrete stochastic systems with unknown
inputs and additive faults is described as the following:
(
xkþ1 ¼ Ak xk þ Bk uk þ Fkx fk þ Ekx dk þ wxk
P: ð1Þ
yk ¼ Hk xk þ Fky fk þ Eky dk þ vk

where xk 2 Rn is the state vector, uk 2 Rr is the known control input, fk 2 Rp is the additive
fault vector, dk 2 Rq is the unknown inputs and yk 2 Rm is the observation vector.
Matrices Ak, Bk, Fxk, Exk, Hk, Fyk and Eyk are known and have appropriate dimensions.
fk presents the vector of an additive fault that can occur in the system. dk, the unknown
input vector, can present an unknown perturbation: for example a parametric uncertainty.
Therefore, we will consider dk and fk as stochastic processes with given wide-sense
representation.
Thus, the dynamics of dk may be assumed as
dkþ1 ¼ dk þ wdk ð2Þ
The additive faults fk is generated by
fkþ1 ¼ fk þ wfk ð3Þ
Assumptions:

 A1 : the noises wxk and vk are zero-mean white noise sequences with the following
covariances:
Eðwxk wxT x
‘ Þ ¼ Qk dk‘

Eðvk vT‘ Þ ¼ Rk dk‘

Eðwk vT‘ Þ ¼ 0
where T denotes transpose and dk‘ denotes the Kronecker delta function.
 A2 : the noises wfk and wdk are zero-mean white noises sequence with the following
covariances:
8
>
> Eðwfk wfT f
‘ Þ ¼ Qk dk‘
>
>
>
> Eðwdk wdT d
>
< ‘ Þ ¼ Qk dk‘

Eðwxk wfT xf
‘ Þ ¼ Qk dk‘ ð4Þ
>
>
> x dT xd
> Eðwk w‘ Þ ¼ Qk dk‘
>
>
>
: Eðwf wdT Þ ¼ Qfd d
k ‘ k k‘
2372 F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388

 A3 : the initial state is a gaussian random variable and is uncorrelated with the white
noise processes wxk and vk:
Eðx0 Þ ¼ x 0 and Eððx0 x 0 Þðx0 x 0 ÞT Þ ¼ Px0 :
 A4 : the initial fault and unknown input satisfy the followings:
8
>
> Eðf0 Þ ¼ f 0
>
>
>
> Eðd0 Þ ¼ d 0
>
>
>
> T f
>
> Eððf0 f 0 Þððf0 f 0 Þ Þ ¼ P0
>
<
Eððd0 d 0 Þððd0 d 0 ÞT Þ ¼ Pd0 ð5Þ
>
>
>
>
> Eððx0 f0 Þððx0 f0 ÞT Þ ¼ Pxf
0
>
>
>
> Eððx0 d0 Þððx0 d0 ÞT Þ ¼ Pxd
>
> 0
>
>
: Eððf0 d0 Þððf0 d0 ÞT Þ ¼ Pfd
0

 A5 : the first conditions on matrices ranks:


rankðHkþ1 Þ ¼ mðZmaxðp,qÞÞ, rankðFkx Þ ¼ p, rankðHkþ1 Fkx Þ ¼ p, rankðEkx Þ ¼ q
and rankðHkþ1 Ekx Þ ¼ q
 A6 : the second conditions on matrices ranks:
y y
rankðHkþ1 Fkx þ Fkþ1 Þ¼p and rankðHkþ1 Ekx þ Ekþ1 Þ¼q

In this work, two cases will be considered:

 We assume that the noise statistical properties (A2 ) and the initial conditions of the fault
and the unknown inputs (A4 ) are already known, so we will develop the OThSKF to
obtain the state and the fault optimal estimation.
 Whereas, if the dynamical evolution models are not perfectly known, we implement the
RThSKF to determine the state and the fault robust estimation.

3. Filters design

In this section, devoted to the state filter design, we first recall the structure of the
augmented state Kalman filter, then we use the UV transformation to decouple the
augmented state Kalman filter equations into three subfilters. Finally, the three-stage Kalman
filter (ThSKF) in two versions is developed: optimal (OThSKF) and robust (RThSKF).

3.1. Augmented State Kalman filter (ASKF)

Treating xk, fk and dk as the augmented system state, the ASKF is described by
xakþ1=k ¼ Aak xak=k þ Bak uk ð6Þ

Pakþ1=k ¼ Aak Pak=k AaT


k þ Qk ð7Þ
F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388 2373

xakþ1=kþ1 ¼ xakþ1=k þ Kkþ1


a a
ðykþ1 Hkþ1 xakþ1=k Þ ð8Þ

a
Kkþ1 ¼ Pakþ1=k Hkþ1
aT a
ðHkþ1 Pakþ1=k Hkþ1
aT
þ Rkþ1 Þ1 ð9Þ

Pakþ1=kþ1 ¼ ðIKkþ1
a a
Hkþ1 ÞPakþ1=k ð10Þ
where
2 3 2 3 2 3
xð:Þ Ak Fkx Ekx Bk
6 7 6 7 6 7
xað:Þ ¼ 4 fð:Þ 5, Aak ¼ 4 0 I 0 5, Bak ¼ 4 0 5, Hka ¼ ½Hk Fky Eky 
dð:Þ 0 0 I 0
2 3 2 3
Pxð:Þ Pxf
ð:Þ Pxd
ð:Þ Qxk Qxf Qxd
6 7 k k
6 fx 7 6 fx 7
Pað:Þ ¼ 6 Pð:Þ Pfð:Þ Pfd
ð:Þ 7, Qk ¼ 6
4 Qk Qfk Qfd
k 5
7
4 5
Pdx
ð:Þ Pdf
ð:Þ Pdð:Þ Qdx
k Qdf
k Qdk

The filter model (6)–(10) may be used to produce the optimal state estimate, if the assumptions
A1 2A4 are checked. But, this filter has two main disadvantages: the computational increase
cost with the augmentation of the state dimension and the rise of numerical problems during
the implementation [5]. So, to solve these problems, we should use the three-stage Kalman
filtering technique.

3.2. U–V transformations

According to [5,6], the ThSKF is obtained by the application of a three-stage U–V


transformation in order to decouple the ASKF covariance matrices, i.e. Pakþ1=k and
Pakþ1=kþ1 . The aim is to find matrices Ukþ1 and Vkþ1 such that
a
Pakþ1=k ¼ Ukþ1 P kþ1=k Ukþ1
T
ð11aÞ
a
Pakþ1=kþ1 ¼ Vkþ1 P kþ1=kþ1 Vkþ1
T
ð11bÞ
a x f d x f d
with P ð:Þ ¼ diagfP ð:Þ ,P ð:Þ ,P ð:Þ g
where and P ð:Þ , P ð:Þ
denote the transformed covariance P ð:Þ
matrices.
We define the structures of the Ukþ1 and Vkþ1 matrices as follows:
2 12 13
3
I Ukþ1 Ukþ1
6 23 7
Ukþ1 ¼ 4 0 I Ukþ1 5 ð12aÞ
0 0 I
2 12 13
3
I Vkþ1 Vkþ1
6 23 7
Vkþ1 ¼ 4 0 I Vkþ1 5 ð12bÞ
0 0 I
ij ij
Ukþ1 and Vkþ1 for i¼ 1 or 2 and j¼ 2 or 3 are to be determined later.
Using (12), Eqs. (6), (8) and (9) are transformed into
xakþ1=k ¼ Ukþ1 x akþ1=k ð13aÞ
2374 F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388

xakþ1=kþ1 ¼ Vkþ1 x akþ1=kþ1 ð13bÞ

a a
Kkþ1 ¼ Vkþ1 K kþ1 ð13cÞ
The inverse transformations of Ukþ1 and Vkþ1 (12) will have this forms
2 12 13
3
I U~ kþ1 U~ kþ1
6 7
1
Ukþ1 ¼ U~ kþ1 ¼ 6
40 I
23 7
U~ kþ1 5 ð14aÞ
0 0 I
2 12 13
3
I V~ kþ1 V~ kþ1
6 7
1
Vkþ1 ¼ V~ kþ1 ¼ 6
40 I
23 7
V~ kþ1 5 ð14bÞ
0 0 I
By direct computation, it is straightforward to obtain
12 13 23
U~ kþ1 ¼ Ukþ1
12
, U~ kþ1 ¼ Ukþ1
12 23
Ukþ1 13
Ukþ1 and U~ kþ1 ¼ Ukþ1
23

12 13 23
V~ kþ1 ¼ Vkþ1
12
, V~ kþ1 ¼ Vkþ1
12 23
Vkþ1 13
Vkþ1 and V~ kþ1 ¼ Vkþ1
23

Using these inverse transformations (14), we have


x akþ1=k ¼ U~ kþ1 xakþ1=k ð15aÞ

a T
P kþ1=k ¼ U~ kþ1 Pakþ1=k U~ kþ1 ð15bÞ

x akþ1=kþ1 ¼ V~ kþ1 xakþ1=kþ1 ð16aÞ


a
K kþ1 ¼ V~ kþ1 Kkþ1
a
ð16bÞ

a T
P kþ1=kþ1 ¼ V~ kþ1 Pakþ1=kþ1 V~ kþ1 ð16cÞ
where
2 3 2 x 3 2 x 3
x ð:Þ P ð:Þ 0 0 K ð:Þ
6 7 6 7 6 f 7
f 7 a 6 0 f
0 7 a 6 7
x að:Þ ¼ 6
4 ð:Þ 5, P ð:Þ ¼ 6
P ð:Þ 7 and K ð:Þ ¼ 6 K ð:Þ 7
4 5 4 5
d ð:Þ d d
0 0 P ð:Þ K ð:Þ

3.3. Decoupling

Using the two-step substitution method, the filter model (6)–(10) is transformed into
x akþ1=k ¼ U~ kþ1 U kþ1 x ak=k þ U~ kþ1 Bak uk ð17Þ

a T
P kþ1=k ¼ U~ kþ1 ðU kþ1 Pak=k U kþ1 þ Qak ÞU~ kþ1 ð18Þ
F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388 2375

a
x akþ1=kþ1 ¼ V~ kþ1 U kþ1 x akþ1=k þ K kþ1 ðykþ1 Skþ1 x akþ1=k Þ ð19Þ
a a a
K kþ1 ¼ V~ kþ1 U kþ1 P kþ1=k Skþ1
T T
ðSkþ1 P kþ1=k Skþ1 þ Rkþ1 Þ1 ð20Þ
a a a
P kþ1=kþ1 ¼ ðV~ kþ1 U kþ1 K kþ1 Skþ1 ÞP kþ1=k ðV~ kþ1 U kþ1 Þ1 ð21Þ
where the matrices U kþ1 and Skþ1 are as follows:
2 12 13
3
Ak U kþ1 U kþ1
6 7
U kþ1 ¼ Aak Vk ¼ 6
4 0 I
23 7
U kþ1 5 ð22aÞ
0 0 I
1 2 3
Skþ1 ¼ ½Skþ1 Skþ1 Skþ1  ð22bÞ
ij i
with U kþ1 and Skþ1 have the following forms:
12
U kþ1 ¼ Ak Vk12 þ Fkx ð23aÞ
13
U kþ1 ¼ Ak Vk13 þ Fkx Vk23 þ Ekx ð23bÞ
23
U kþ1 ¼ Vk23 ð23cÞ
1
Skþ1 ¼ Hkþ1 ð24aÞ
2 12 y
Skþ1 ¼ Hkþ1 Ukþ1 þ Fkþ1 ð24bÞ
3 13 y 23 y
Skþ1 ¼ Hkþ1 Ukþ1 þ Fkþ1 Ukþ1 þ Ekþ1 ð24cÞ
Now, by developing Eq. (18) we obtain respectively the following relations:
x x 1
P kþ1=k ¼ Ak P k=k ATk þ Q k ð25Þ

f f 2
P kþ1=k ¼ P k=k þ Q k ð26Þ

d d
P kþ1=k ¼ P k=k þ Qdk ð27Þ

23 d
23
0 ¼ ðU kþ1 Ukþ1 ÞP k=k þ Qfd Ukþ1
23
Qdk ð28Þ

13 d
13
0 ¼ ðU kþ1 Ukþ1 ÞP k=k þ Qxd Ukþ1
13
Qdk ð29Þ

12 f 12 f 13
13 d 23T
23T d
0 ¼ U kþ1 P k=k Ukþ1 P kþ1=k þ U kþ1 P k=k U kþ1 Ukþ1 P kþ1=k Ukþ1 ð30Þ
where
1 12 f 12T f
Q k ¼ Qxk þ U kþ1 P k=k U kþ1 Ukþ1
12 12T
P kþ1=k Ukþ1
13 d 1313T 13T d
þU kþ1 P k=k U kþ1 Ukþ1 P kþ1=k Ukþ1 ð31Þ
2 23 d 23T d
Q k ¼ Qfk þ U kþ1 P k=k U kþ1 Ukþ1
23 23T
P kþ1=k Ukþ1 ð32Þ
2376 F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388

12 13 23
Referring to Eqs. (28)–(30), the matrices Ukþ1 , Ukþ1 and Ukþ1 are obtained as follows:
13 d d
13
Ukþ1 ¼ ðU kþ1 P k=k þ Qxd
k ÞðP kþ1=k Þ
1
ð33Þ

23 d d
23
Ukþ1 ¼ ðU kþ1 P k=k þ Qfd
k ÞðP kþ1=k Þ
1
ð34Þ

12 f 13 d 23T f f
12
Ukþ1 13
¼ ðU kþ1 P k=k þ U kþ1 P k=k U kþ1 Ukþ1 23T
P k=k Ukþ1 þ Qxf
k ÞðP kþ1=k Þ
1
ð35Þ

The development of Eq. (21), leads to have the following relations:


x 1 x x
P kþ1=kþ1 ¼ ðIK kþ1 Skþ1 ÞP kþ1=k ð36Þ

f 2 f f
P kþ1=kþ1 ¼ ðIK kþ1 Skþ1 ÞP kþ1=k ð37Þ
d 3 d d
P kþ1=kþ1 ¼ ðIK kþ1 Skþ1 ÞP kþ1=k ð38Þ
12 12 2 x
0 ¼ Ukþ1 Vkþ1 K kþ1 Skþ1 ð39Þ
13 13 12 23 12 23 3 x
0 ¼ Ukþ1 Vkþ1 Vkþ1 Ukþ1 þ Vkþ1 Vkþ1 K kþ1 Skþ1 ð40Þ

23 23 3 f
0 ¼ Ukþ1 Vkþ1 K kþ1 Skþ1 ð41Þ

12 13 23
Referring to Eqs. (39)–(41), we obtain the transformation matrices Vkþ1 , Vkþ1 and Vkþ1 as
follow:
12 12 2 x
Vkþ1 ¼ Ukþ1 K kþ1 Skþ1 ð42Þ

13 13 12 3 f3 x
Vkþ1 ¼ Ukþ1 Vkþ1 K kþ1 Skþ1 K kþ1 Skþ1 ð43Þ

23 23 3 f
Vkþ1 ¼ Ukþ1 K kþ1 Skþ1 ð44Þ
With reference to Eqs. (17), (19) and (20), we obtain successively
x kþ1=k ¼ Ak x k=k þ Bk uk þ u 1k ð45Þ

f kþ1=k ¼ f k=k þ u 2k ð46Þ

d kþ1=k ¼ d k=k ð47Þ


1 x
x kþ1=kþ1 ¼ x kþ1=k þ K kþ1 ðykþ1 Skþ1 x kþ1=k Þ ð48Þ

1 f 2
f kþ1=kþ1 ¼ f kþ1=k þ K kþ1 ðykþ1 Skþ1 x kþ1=k Skþ1 f kþ1=k Þ ð49Þ

1 d 2 3
d kþ1=kþ1 ¼ d kþ1=k þ K kþ1 ðykþ1 Skþ1 x kþ1=k Skþ1 f kþ1=k Skþ1 d kþ1=k Þ ð50Þ

x x 1T 1 1T x
K kþ1 ¼ P kþ1=k Skþ1 ðSkþ1 P kþ1=k Skþ1 þ Rkþ1 Þ1 ð51Þ
F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388 2377

f f 2T 2 f2T 1 x
1T
K kþ1 ¼ P kþ1=k Skþ1 ðSkþ1 P kþ1=k Skþ1 þ Skþ1 P kþ1=k Skþ1 þ Rkþ1 Þ1 ð52Þ
d d 3T 3 d3T 2 f
2T 1 1Tx
K kþ1 ¼ P kþ1=k Skþ1 ðSkþ1 P kþ1=k Skþ1 þ Skþ1 P kþ1=k Skþ1 þ Skþ1 P kþ1=k Skþ1 þ Rkþ1 Þ1
ð53Þ
where
!
12 13 23
u 1k 12
¼ ðU kþ1 Ukþ1 Þf k=k þ 13
U kþ1 Ukþ1 12
Ukþ1 23
ðU kþ1 Ukþ1 Þ d k=k ð54Þ

23
u 2k ¼ ðU kþ1 Ukþ1
23
Þd k=k ð55Þ

3.4. Optimal three-stage Kalman filters (OThSKF)

To correct the estimation of the state and the fault, we should follow these equations
12 13
x^ kþ1=kþ1 ¼ x kþ1=kþ1 þ Vkþ1 f kþ1=kþ1 þ Vkþ1 d kþ1=kþ1 ð56Þ

x x f d
P^ kþ1=kþ1 ¼ P kþ1=kþ1 þ Vkþ1
12 12T
P kþ1=kþ1 Vkþ1 13
þ Vkþ1 13T
P kþ1=kþ1 Vkþ1 ð57Þ

f^ kþ1=kþ1 ¼ f kþ1=kþ1 þ Vkþ1


23
d kþ1=kþ1 ð58Þ

f f d
P^ kþ1=kþ1 ¼ P kþ1=kþ1 þ Vkþ1
23 23T
P kþ1=kþ1 Vkþ1 ð59Þ

Now, the state and the fault estimate can be obtained by OThSKF. To implement the
OThSKF, we assume to know the following:

 Control input uk
 Matrices Ak, Bk, Hk, Fxk,Fyk, Exk and Eyk
 Covariance matrices : Qxk, Rk, Qfk, Qdk, Qxf , Qxd and Qfd
k k k
 Initial values x 0 , f 0 , d 0 , Px , Pf , Pd , Pxf , Pxd and Pfd
0 0 0 0 0 0

Table 1 gathers the different steps of the filtering design and Fig. 2 shows the
interactions between the different blocks of calculus.
We denote q1 as a delay operator such that: q1 yk ¼ yk1

3.5. Robust three-stage Kalman Filter (RThSKF)

The OThSKF is optimal in the minimum mean square error (MMSE) sense. However,
this filter loses its optimality, when the statistical properties of models (2) and (3) are
unknown or not perfectly known. So, it would be better if we use a robust three-stage
Kalman filter (RThKF) to get a good estimation of the state and the fault in the presence
of unknown inputs. This filter is obtained by modifying the measurement update equations
of the unknown inputs subfilter and the fault subfilter of the OThSKF. The measurement
update equations of the fault subfilter and the unknown inputs subfilter are rewritten as
2378 F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388

Table 1
OThSKF algorithm.

Algorithm 1: state and fault estimation by OThSKF


Step 0: initialization
k¼ 0
d 1 fd d 1
V013 ¼ Pxd 23
0 ðP0 Þ , V0 ¼ P0 ðP0 Þ
V012 ¼ ðPxf 13 d 23T f
0 V0 P0 V0 ÞðP0 V0 P0 V0 Þ
23 d 23T 1

x 0=0 ¼ x 0 V012 f 0 V013 d 0 , d 0=0 ¼ d 0 ,


f 0=0 ¼ f 0 V023 d 0
d f
P 0=0 ¼ Pd0 , P 0=0 ¼ Pf0 V023 Pd0 V023T
x
P 0=0 ¼ Px0 V012 Pf0 V012T V013 Pd0 V013T
Step 1 : preliminary
12 13 23
To calculate U kþ1 , U kþ1 , U kþ1 from (23)
d 2 f
To calculate 13
P kþ1=k ,
Ukþ1 23
, Ukþ1 12
, Q k , P kþ1=k , Ukþ1 , u 1k , u 2k respectively from (27), (33), (34), (32), (26), (35), (31),
(54) and (55).
1 2 3
To calculate Skþ1 , Skþ1 and Skþ1 from (24)
Step 2: state subfilter
x x x
To calculate x kþ1=k , P kþ1=k , K kþ1 , x kþ1=kþ1 , P kþ1=kþ1 respectively from (45), (25), (51), (48) and (36).
Step 3 : fault subfilter
f f
To calculate f kþ1=k , K kþ1 , f kþ1=kþ1 and P kþ1=kþ1 respectively from (46), (52), (49) and (37).
Step 4: unknown inputs subfilter
d d
To calculate d kþ1=k , K kþ1 , d kþ1=kþ1 and P kþ1=kþ1 respectively from (47), (53), (50) and (38).
Step 5: the correction of the state and the fault estimations
12 13 23
To update Vkþ1 , Vkþ1 , Vkþ1 respectively from (42), (43) and (44).
x f
To calculate x^ kþ1=k , P^ ^
,f and P^ respectively from (56)–(59).
kþ1=k kþ1=kþ1 kþ1=kþ1
Step 6: k ¼ k þ 1 and return to step 1

Fig. 2. Bloc diagram of the OThSKF.


F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388 2379

follows:
2f f 1
f kþ1=kþ1 ¼ ðIK kþ1 Skþ1 Þf kþ1=k þ K kþ1 ðykþ1 Skþ1 x kþ1=k Þ ð60Þ

f f 2T 1
K kþ1 ¼ P kþ1=kþ1 Skþ1 Ckþ1 ð61Þ

3d d 1 2
d kþ1=kþ1 ¼ ðIK kþ1 Skþ1 Þd k=k þ K kþ1 ðykþ1 Skþ1 x kþ1=k Skþ1 f kþ1=k Þ ð62Þ

d d 3T 2 f2T
K kþ1 ¼ P kþ1=kþ1 Skþ1 ðSkþ1 P kþ1=k Skþ1 þ Ckþ1 Þ1 ð63Þ
x T
where Ckþ1 ¼ Hkþ1 P kþ1=k Hkþ1 þ Rkþ1 .
f
First, to eliminate the two terms f kþ1=k and d k=k , we will choose the gain matrices K kþ1
d
and K kþ1 that can satisfy the followings algebraic constraints:
f2
ðIK kþ1 Skþ1 Þ¼0 ð64Þ
d3
ðIK kþ1 Skþ1 Þ¼0 ð65Þ
d 2
K kþ1 Skþ1 ¼0 ð66Þ
In this case Eqs. (60) and (62) become
f 1
f kþ1=kþ1 ¼ K kþ1 ðykþ1 Skþ1 x kþ1=k Þ ð67Þ

d 1
d kþ1=kþ1 ¼ K kþ1 ðykþ1 Skþ1 x kþ1=k Þ ð68Þ
Secondly, with substituting Eqs. (61) and (63) into Eqs. (64) and (65) and using Eqs. (66),
f d d
P kþ1=kþ1 , P kþ1=kþ1 and K kþ1 can be rewritten as
f 2T 1 2
P kþ1=kþ1 ¼ ðSkþ1 Ckþ1 Skþ1 Þ1 ð69Þ

d 3T 1 3
P kþ1=kþ1 ¼ ðSkþ1 Ckþ1 Skþ1 Þ1 ð70Þ

d d 3T 1
K kþ1 ¼ P kþ1=kþ1 Skþ1 Ckþ1 ð71Þ
Eqs. (45) and (46) are rewritten, respectively, as follows:
x kþ1=k ¼ Ak x^ k=k þ Bk uk þ u~ 1k ð72Þ

f kþ1=k ¼ f k=k þ u~ 2k ð73Þ


where
u~ 1k ¼ ðFkx Ukþ1
12
Þf k=k þ ðEkx Ukþ1
13 12
þ Ukþ1 23
Ukþ1 Þd k=k ð74Þ

23
u~ 2k ¼ ðU kþ1 Ukþ1
23
Þd k=k ð75Þ
In order to return Eqs. (72) and (73) robust against the fault and the unknown inputs we
can add the constraint u~ 1k ¼ 0 and u~ 2k ¼ 0
2380 F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388

12 13 23
In this case, the new matrices Ukþ1 , Ukþ1 and Ukþ1 are written as follow
23 23
Ukþ1 ¼ U kþ1 ¼ Vk23
12
Ukþ1 ¼ Fkx
13
Ukþ1 ¼ Ekx þ Ukþ1
12 23
Ukþ1 ¼ Ekx þ Fkx Vk23
Finally, the robust three-stage Kalman filter (RThSKF) equations is summarized in
Table 2. Fig. 3 shows the interactions between the different blocks of calculus.

Table 2
RThSKF algorithm.

Algorithm 2: state and fault estimation by RThSKF


Step 0 : initialization
k¼ 0
x
x^ 0=0 ¼ x 0 , P^ 0=0 ¼ Px0 and V023
Step 1: state subfilter
x kþ1=k ¼ Ak x^ k=k þ Bk uk
x x
P kþ1=k ¼ Ak P^ AT þ Qx
k=k k k
x x 1T 1
K kþ1 ¼ P kþ1=k Skþ1 Ckþ1
x1
x kþ1=kþ1 ¼ x kþ1=k þ K kþ1 ðykþ1 Skþ1 x kþ1=k Þ
x x 1 x
P kþ1=kþ1 ¼ ðIK kþ1 Skþ1 ÞP kþ1=k
Step 2: fault subfilter
12
Ukþ1 ¼ Fkx
2 12 y
Skþ1 ¼ Hkþ1 Ukþ1 þ Fkþ1
f 2T
P kþ1=kþ1 ¼ ðSkþ1 1 2
Ckþ1 Skþ1 Þ1
f f 2T 1
K kþ1 ¼ P kþ1=kþ1 Skþ1 Ckþ1
f 1
f kþ1=kþ1 ¼ K kþ1 ðykþ1 Skþ1 x kþ1=k Þ
Step 3: unknown input subfilter
23
Ukþ1 ¼ Vk23
Ukþ1 ¼ Ekx þ Fkx Vk23
13

3 13 y 23 y
Skþ1 ¼ Hkþ1 Ukþ1 þ Fkþ1 Ukþ1 þ Ekþ1
d 3T
P kþ1=kþ1 ¼ ðSkþ1 1 3
Ckþ1 Skþ1 Þ1
d d 3T 1
K kþ1 ¼ P kþ1=kþ1 Skþ1 Ckþ1
d 1
d kþ1=kþ1 ¼ K kþ1 ðykþ1 Skþ1 x kþ1=k Þ
Step 4: the correction of the state and the fault estimations
12 12 x 2
Vkþ1 ¼ Ukþ1 K kþ1 Skþ1
13 13 12 3 f 3 x
Vkþ1 ¼ Ukþ1 Vkþ1 K kþ1 Skþ1 K kþ1 Skþ1
23 f
Vkþ1 ¼ Vk23 K kþ1 Skþ1
3

12 13
x^ kþ1=kþ1 ¼ x kþ1=kþ1 þ Vkþ1 f kþ1=kþ1 þ Vkþ1 d kþ1=kþ1
x x f d
P^ kþ1=kþ1 ¼ P kþ1=kþ1 þ Vkþ1
12 12T
P kþ1=kþ1 Vkþ1 13
þ Vkþ1 13T
P kþ1=kþ1 Vkþ1
f^
kþ1=kþ1 ¼f þ V 23 d kþ1=kþ1
kþ1=kþ1 kþ1
f f d
P^ kþ1=kþ1 ¼ P kþ1=kþ1 þ Vkþ1
23 23T
P kþ1=kþ1 Vkþ1
Step 5: k ¼ k þ 1 and return to step 1.
F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388 2381

Fig. 3. Bloc diagram of the RThSKF.

4. Illustrative example

In this section, we will apply the proposed filters (OThSKF and RThSKF) to treat three
different cases. The parameters of the system (1) and the models (2) and (3) are given by
2 3 2 3 2 3
x1,k ak 0:1 0:2 2
6 7 6 7 6 7
xk ¼ 4 x2,k 5, Ak ¼ 4 0:1 0:6 0:3 5, ak ¼ 0:5 þ 0:35 sinðkÞ, Bk ¼ 4 1:5 5
x3,k 0:2 0:1 0:25 0:5
2 3 2 3
  1   0:1  
1 1 0 6 7 1 6 7 0:3
Hk ¼ , Fkx ¼ 4 0:8 5, Fky ¼ , Ekx ¼ 4 0:2 5, Eky ¼
0 1 2 1 0:6
0:5 1

Qxk ¼ 0:5I33 , Rk ¼ 0:2I22 , Qfk ¼ 0:5, Qdk ¼ 0:5

Qxf T
k ¼ ð0:02 0:01 0:02Þ , Qxd
k ¼ ð0:01 0:02 0:02ÞT , Qfd
k ¼ 0:01

The initial value of the state is x0 ¼ ½2 1 3T , the fault is f0 ¼ 0 and the unknown inputs is
d0 ¼ 1.
All filters are initialized by taking the following values:
2 3
0
6 7
x 0 ¼ ½0 0 0T ,f 0 ¼ 0,d 0 ¼ 0,Px0 ¼ 20I33 ,Pf0 ¼ 20,Pd0 ¼ 20,Pxf 0 ¼ 4 0 5,
0
2 3
0
6 7
Pxd
0 ¼ 4 0 5 and Pfd ¼ 0
0
Fig. 4 presents the input/output sequence of the system. The time of simulation is N ¼ 50.
2382 F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388

8
6
4
2
0
−2
−4
0 5 10 15 20 25 30 35 40 45 50

60
y1
40 y2

20
0
−20
−40
0 5 10 15 20 25 30 35 40 45 50

Fig. 4. Input/output of system.

4.1. Covariance matrices and initial conditions of fault and unknown input are known

In this case, we take the exact values of covariance matrices of all noises used in the
models of the unknown input dk (2) and the fault fk (3) to implement ASKF and OThSKF:

Qfk ¼ 0:5, Qdk ¼ 0:5, Qxf


k ¼ ð0:02 0:01 0:02ÞT , Qxd
k ¼ ð0:01 0:02 0:02ÞT

and Qfd
k ¼ 0:01:

Fig. 5 presents the actual state vector first component (x1,k ), the fault (fk) and the unknown
inputs (dk) and theirs estimated values obtained by the proposed filter OThSKF and
RThSKF.
x
Convergence of the trace of the state covariance matrix P^ kþ1=kþ1 and fault covariance
f
matrix P^ kþ1=kþ1 are shown in Figs. 6 and 7 respectively.
The simulation results in Tables 3–5 show the average root mean square errors (RMSE)
in the estimated states, fault and unknown input. For example, the RMSE of the first
component of state vector is calculated by
vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
u
u1 X N
RMSEðx1,k Þ ¼ t ðx1,k x^ 1,k=k Þ2
Nk¼1

In Table 3, it can be proved that the OThSKF and ASKF are equivalent where the
demonstration has been made in [5]. The OThSKF and ASKF give the best estimations.
However, the result obtained by RThSKF is not an optimal solution because this filter is
not equivalent to the ASKF. The computational advantage of the OThSKF over the
ASKF was demonstrated by using the floating-point operations or ‘‘flops’’ in Matlab for
one iteration as a measure of the computational complexity [6,9]. Each multiplication and
each addition contribute on flop count. According to Table 3, we note that the flops
F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388 2383

State x1,k
40
20
0
OThSKF
−20 RThSKF
True
−40
0 5 10 15 20 25 30 35 40 45 50

Fault
15
10
5
0
−5
−10
0 5 10 15 20 25 30 35 40 45 50

Unknown input
10

−5
0 5 10 15 20 25 30 35 40 45 50
Sampling time

Fig. 5. State, fault and unknown input.

35
OThSKF
RThSKF

30

25

20

15

10

0
0 5 10 15 20 25 30 35 40 45 50
Sampling time

Fig. 6. Trace of state covariance matrix.


2384 F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388

9
OThSKF
RThSKF
8

0
0 5 10 15 20 25 30 35 40 45 50
Sampling time

Fig. 7. Trace of fault covariance matrix.

Table 3
Performances of the ASKF, OThSKF and RThSKF.

RMSE ASKF OThSKF RThSKF

x1,k 1.02 1.02 1.56


x2,k 1.30 1.30 2.11
x3,k 0.97 0.97 1.50
fk 0.78 0.78 1.27
dk 0.75 0.75 0.90
flops ðone iterationÞ 1340 1244 917

Table 4
Performances of the ASKF, OThSKF and RThSKF.

RMSE ASKF OThSKF RThSKF

x1,k 1.49 1.49 1.56


x2,k 1.66 1.66 2.11
x3,k 1.21 1.21 1.50
fk 1.23 1.23 1.27
dk 0.95 0.95 0.90
F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388 2385

Table 5
Performances of the ASKF, OThSKF and RThSKF.

RMSE ASKF OThSKF RThSKF

x1,k 3.62 3.62 2.00


x2,k 6.71 6.71 2.22
x3,k 5.39 5.39 1.53
fk 4.91 4.91 1.54
dk 1.38 1.38 1.24

State x1,k
40
20
0
OThSKF
−20 RThSKF
True
−40
0 5 10 15 20 25 30 35 40 45 50

Fault
15
10
5
0
−5
−10
0 5 10 15 20 25 30 35 40 45 50

Unknown input
10

−5
0 5 10 15 20 25 30 35 40 45 50
Sampling time

Fig. 8. State, fault and unknown input.

counted for the OThSKF are fewer than that of the ASKF. On the other hand, the flops
counted for the RThSKF are fewer than that of the OThSKF.

4.2. Covariance matrices of fault and unknown input are not perfectly known

Here, we assume that the covariance matrices of the unknown input dk (2) and the fault
fk (3) are not perfectly known, so we take the following values:
Qfk ¼ 12:5, Qdk ¼ 12:5, Qxf
k ¼ ð0 0 0ÞT , Qxd
k ¼ ð0 0 0ÞT and Qfd
k ¼0

According to Table 4 and Figs. 8–10, we note that OThSKF and ASKF lose theirs
performances, but the performances of RTSKF remain unchangeable in spite of the
significant error on the covariance matrices values.
2386 F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388

40
OThSKF
RThSKF
35

30

25

20

15

10

0
0 5 10 15 20 25 30 35 40 45 50
Sampling time

Fig. 9. Trace of state covariance matrix.

10
OThSKF
9 RThSKF

0
0 5 10 15 20 25 30 35 40 45 50
Sampling time

Fig. 10. Trace of fault covariance matrix.

4.3. Models of fault and unknown input are completely unknown

In this case, the fault and the unknown input are given by

fk ¼ 10us ðk15Þ10us ðk35Þ and dk ¼ 6 sinð0:5kÞ

where us(k) is the unit-step function.


F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388 2387

State x1,k
100

50
OThSKF
0
RThSKF
True
−50
0 5 10 15 20 25 30 35 40 45 50

Fault
15
10
5
0
−5
−10
0 5 10 15 20 25 30 35 40 45 50

Unknown input
15
10
5
0
−5
−10
0 5 10 15 20 25 30 35 40 45 50
Sampling time

Fig. 11. State, fault and unknown input.

To implement OThSKF we take the following values as covariance matrices of the fault
and the unknown input
Qfk ¼ 0, Qdk ¼ 0, Qxf
k ¼ ð0 0 0ÞT , Qxd
k ¼ ð0 0 0ÞT and Qfd
k ¼0

In Fig. 11, we observe that the RThSKF gives the best state and fault estimation.
Indeed, the evaluation of the RMSE presented in Table 5 confirms this observation. But,
the OThSKF completely loses its optimality.

5. Conclusion

In this paper, the robust three-stage Kalman filter is developed to obtain an effective
state and fault estimation of linear stochastic system in the presence of unknown inputs.
To achieve this aim, we had two cases; in the first case, the OThSKF is used as the noise
statistical properties of the fault and the unknown input were perfectly known. This filter is
equivalent to ASKF and makes it possible to guarantee optimality of estimation. In the
second case, the RThSKF is applied because the knowledge of fault and unknown input
models was unknown. Indeed, the RThSKF remains powerful (Tables 4 and 5) in spite of
the errors made on the covariance matrices characterizing the noise of fault and unknown
input. Moreover, it is not necessary to know the initial values that are relatively related to
the fault and the unknown input subfilters.

References

[1] A.T. Alouani, T.R. Rice, W.D.A. Blair, Two-stage filter for state estimation in the presence of dynamical
stochastic bias, in: Proceedings of the American Control Conference, Chicago, IL, 1992, pp. 1784–1788.
2388 F. Ben Hmida et al. / Journal of the Franklin Institute 349 (2012) 2369–2388

[2] B. Friedland, Treatment of bias in recursive filtering, IEEE Transaction on Automatic Control 14 (1969)
359–367.
[3] C.S. Hsieh, Extension of the robust two-stage Kalman filtering for systems with unknown inputs, in:
Proceeding of the IEEE Tencon, 2007.
[4] C.S. Hsieh, Optimal minimum-variance filtering for systems with unknown inputs, in: Proceeding of the Sixth
World Congress on Intelligent Control and Automation, Dalian, China, 21–23 June 2006, pp. 1870–1875.
[5] C.S. Hsieh, Robust two-stage Kalman filters for system with unknown inputs, IEEE Transactions on
Automatic Control 45 (12) (2000) 2374–2378.
[6] C.S. Hsieh, F.C. Chen, Optimal solution of the two stage Kalman estimator, IEEE Transactions on
Automatic Control 44 (1999) 194–199.
[7] C.X. Yang, Z.H. Guan, J. Huang, Stochastic fault tolerant control of networked control systems, Journal of
the Franklin Institute 346 (2009) 1006–1020.
[8] F. Ben Hmida, K. Khemiri, J. Ragot, M. Gossa, Unbiased minimum-variance filter for state and fault
estimation of linear time-varying systems with unknown disturbances, in: Mathematical Problems in
Engineering, vol. 2010: Article ID 343586, 17 pages, 2010.
[9] F.C. Chen, C.S. Hsieh, Optimal multi-stage Kalman estimators, IEEE Transactions on Automatic Control
45 (2000) 2182–2188.
[10] H.R. Karimi, M. Zapateiro, N. Luo, A linear matrix inequality approach to robust fault detection filter
design of linear systems with mixed time varying delays and nonlinear perturbations, Journal of the Franklin
Institute 347 (2010) 957–973.
[11] J. Chen, R. Patton, Robust Model-Based Fault Diagnosis for Dynamic Systems, Kluwer Academic
Publishers, Norwell, MA, 1999.
[12] J. Chen, R. Patton, Optimal filtering and robust fault diagnosis of stochastic system with unknown
disturbances, IEEE Proceeding: Control Theory Application 143 (1996).
[13] J.S.-H. Tsai, M.-H. Lin, C.-H. Zheng, S.-M. Guo, L.-S. Shieh, Actuator fault detection and performance
recovery with Kalman filter-based adaptive observer, International Journal of General Systems 36 (2007)
375–398.
[14] J.Y. Keller, M. Darouach, Two-stage Kalman estimator with unknown exogenous inputs, Automatica 35
(1999) 339–342.
[15] K.H. Kim, J.G. Lee, C.G. Park, Adaptive two-stage Kalman filter in the presence of unknown random bias,
International Journal of Adaptive Control and Signal Processing 20 (2006) 305–319.
[16] K.H. Kim, J.G. Lee, C.G. Park, The stability analysis of the adaptive two-stage Kalman filter, International
Journal of Adaptive Control and Signal Processing 21 (2007) 856–870.
[17] M. Basin, D. Calderon-Alvarez, Optimal filtering over linear observations with unknown parameters,
Journal of the Franklin Institute 347 (2010) 988–1000.
[18] M. Blanke, M. Kinnaert, J. Lunze, M. Staroswiecki, Diagnosis and Fault-Tolerant Control, Springer-Verlag,
Berlin, Heldelberg, 2006.
[19] M. Chadli, A. Akhenak, J. Ragot, D. Maquin, State and unknown input estimation for discrete time
multimodel, Journal of the Franklin Institute 346 (2009) 593–610.
[20] M. Darouach, M. Zasadzinski, Unbiased minimum-variance estimation for system with unknown exogenous
inputs, Automatica 33 (2003) 717–719.
[21] M. Hou, R.J. Patton, Optimal filtering for system with unknown inputs, IEEE Transactions on Automatic
Control 43 (1998) 445–449.
[22] M. Ignagni, Optimal and suboptimal separate-bias Kalman estimators of a stochastic bias, IEEE
Transactions on Automatic Control 45 (2000) 547–551.
[23] M.S. Chen, C.C. Chen, Unknown input observer for linear non-minimum phase systems, Journal of the
Franklin Institute 347 (2010) 577–588.
[24] P. Kitanidis, Unbiased minimum-variance linear state estimation, Automatica 23 (1987) 775–778.
[25] T. Li, Y. Zhang, Fault detection and diagnosis for stochastic systems via output PDFs, Journal of the
Franklin Institute 348 (2011) 1140–1152.

Potrebbero piacerti anche