• Non ci sono risultati.

KALMAN FILTER

N/A
N/A
Protected

Academic year: 2021

Condividi "KALMAN FILTER"

Copied!
91
0
0

Testo completo

(1)

KALMAN FILTER

Giulia Giordano

Teoria dei Sistemi e del Controllo Prof. Franco Blanchini Università degli Studi di Udine

January 18, 2016

(2)

DISCRETE-TIME KALMAN FILTER

Rudolf Emil Kalman

“A New Approach to Linear Filtering and Prediction Problems”

Transactions of the ASME, Journal of Basic Engineering, pp. 35–45,

March 1960

(3)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Problem formulation

Discrete-time linear system:

x (k + 1) = A(k)x (k) + B v (k)v (k) y (k) = C (k)x (k) + w (k)

x ∈ R n system state y ∈ R q measured output v ∈ R p process disturbance w ∈ R q measurement disturbance

Looking for a recursive algorithm that yields an estimate ˆ x of the system state

Giulia Giordano KALMAN FILTER 3 / 51

(4)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Problem formulation

Discrete-time linear system:

x (k + 1) = A(k)x (k) + B v (k)v (k) y (k) = C (k)x (k) + w (k)

x ∈ R n system state y ∈ R q measured output v ∈ R p process disturbance w ∈ R q measurement disturbance

Looking for a recursive algorithm that yields an estimate ˆ x of the

system state

(5)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 1

w and v are stochastic processes

w , v white noises: zero mean, independent components E [v (k)] = 0;

E [v (k)v (h) > ] = Q(k)δ (k − h), Q(k) > 0 E [w (k)] = 0;

E [w (k)w (h) > ] = R(k)δ (k − h), R(k) > 0 The statistics of x(k 0 ) is known

E [x (k 0 )] = x 0 ;

E [(x (k 0 ) − x 0 )(x (k 0 ) − x 0 ) > ] = Var [x (k 0 )] = P 0

v , w and x are uncorrelated

E [w (k)v (h) > ] = 0, E [w (k)x (h) > ] = 0, E [v (k)x (h) > ] = 0

Giulia Giordano KALMAN FILTER 4 / 51

(6)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 1

w and v are stochastic processes w , v white noises: zero mean, independent components

E [v (k)] = 0;

E [v (k)v (h) > ] = Q(k)δ (k − h), Q(k) > 0 E [w (k)] = 0;

E [w (k)w (h) > ] = R(k)δ (k − h), R(k) > 0

The statistics of x(k 0 ) is known E [x (k 0 )] = x 0 ;

E [(x (k 0 ) − x 0 )(x (k 0 ) − x 0 ) > ] = Var [x (k 0 )] = P 0

v , w and x are uncorrelated

E [w (k)v (h) > ] = 0, E [w (k)x (h) > ] = 0, E [v (k)x (h) > ] = 0

(7)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 1

w and v are stochastic processes w , v white noises: zero mean, independent components

E [v (k)] = 0;

E [v (k)v (h) > ] = Q(k)δ (k − h), Q(k) > 0 E [w (k)] = 0;

E [w (k)w (h) > ] = R(k)δ (k − h), R(k) > 0 The statistics of x(k 0 ) is known

E [x (k 0 )] = x 0 ;

E [(x (k 0 ) − x 0 )(x (k 0 ) − x 0 ) > ] = Var [x (k 0 )] = P 0

v , w and x are uncorrelated

E [w (k)v (h) > ] = 0, E [w (k)x (h) > ] = 0, E [v (k)x (h) > ] = 0

Giulia Giordano KALMAN FILTER 4 / 51

(8)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 1

w and v are stochastic processes w , v white noises: zero mean, independent components

E [v (k)] = 0;

E [v (k)v (h) > ] = Q(k)δ (k − h), Q(k) > 0 E [w (k)] = 0;

E [w (k)w (h) > ] = R(k)δ (k − h), R(k) > 0 The statistics of x(k 0 ) is known

E [x (k 0 )] = x 0 ;

E [(x (k 0 ) − x 0 )(x (k 0 ) − x 0 ) > ] = Var [x (k 0 )] = P 0

v , w and x are uncorrelated

E [w (k)v (h) > ] = 0, E [w (k)x (h) > ] = 0, E [v (k)x (h) > ] = 0

(9)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 2

The filter belongs to the class of Luenberger observers:

ˆ

x (k + 1) = [A(k) − L(k)C (k)]ˆ x (k) + L(k)y (k)

L(k) ∈ R n×q is the matrix we want to determine

Giulia Giordano KALMAN FILTER 5 / 51

(10)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 2

The filter belongs to the class of Luenberger observers:

ˆ

x (k + 1) = [A(k) − L(k)C (k)]ˆ x (k) + L(k)y (k)

L(k) ∈ R n×q is the matrix we want to determine

(11)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Our goal

Estimation error e(k) = x(k) − ˆ x (k)

e(k + 1) = [A(k) − L(k)C (k)]e(k) + B v (k)v (k) − L(k)w (k)

We look for the sequence of matrices L(k) that minimizes E [kx (k) − ˆ x (k)k 2 ] = trE [(x (k) − ˆ x (k))(x (k) − ˆ x (k)) > ]

trM = ∑

i

M

ii

, tr [SS

>

] = tr [S

>

S ] = ∑

ij

S

ij2

!

Giulia Giordano KALMAN FILTER 6 / 51

(12)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Our goal

Estimation error e(k) = x(k) − ˆ x (k)

e(k + 1) = [A(k) − L(k)C (k)]e(k) + B v (k)v (k) − L(k)w (k)

We look for the sequence of matrices L(k) that minimizes E [kx (k) − ˆ x (k)k 2 ] = trE [(x (k) − ˆ x (k))(x (k) − ˆ x (k)) > ]

trM = ∑

i

M

ii

, tr [SS

>

] = tr [S

>

S ] = ∑

ij

S

ij2

!

(13)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Let us consider. . .

. . . P(k) = E [(x(k) − ˆ x (k))(x (k) − ˆ x (k)) > ]

Hence, P(k 0 ) = P 0 and, at first, the best estimate is ˆ x (k 0 ) = x 0

Given P(k),

P(k + 1) = [A(k) − L(k)C (k)]P(k)[A(k) − L(k)C (k)] > + B v (k)Q(k)B v > (k) + L(k)R(k)L > (k)

Giulia Giordano KALMAN FILTER 7 / 51

(14)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Let us consider. . .

. . . P(k) = E [(x(k) − ˆ x (k))(x (k) − ˆ x (k)) > ]

Hence, P(k 0 ) = P 0 and, at first, the best estimate is ˆ x (k 0 ) = x 0

Given P(k),

P(k + 1) = [A(k) − L(k)C (k)]P(k)[A(k) − L(k)C (k)] > +

B v (k)Q(k)B v > (k) + L(k)R(k)L > (k)

(15)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Minimization

We choose L so as to minimize tr [P(k + 1)]:

min L {tr [(A − LC )P(A − LC ) > + B v QB v > + LRL > )]} =

min L {tr [APA > ] − 2tr [APC > L > ] + tr [LCPC > L > ] + tr [B v QB v > ] + tr [LRL > ]}

Differentiate with respect to L and equate to zero:

2L(CPC > + R) − 2APC > = 0 =⇒ L = APC > (CPC > + R) −1

Plug into the expression of P(k + 1),

(A − LC )P(A − LC ) > + B v QB v > + LRL >

= APA > − APC > (CPC > + R) −1 CPA > + B v QB v >

Giulia Giordano KALMAN FILTER 8 / 51

(16)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Minimization

We choose L so as to minimize tr [P(k + 1)]:

min L {tr [(A − LC )P(A − LC ) > + B v QB v > + LRL > )]} =

min L {tr [APA > ] − 2tr [APC > L > ] + tr [LCPC > L > ] + tr [B v QB v > ] + tr [LRL > ]}

Differentiate with respect to L and equate to zero:

2L(CPC > + R) − 2APC > = 0 =⇒ L = APC > (CPC > + R) −1

Plug into the expression of P(k + 1),

(A − LC )P(A − LC ) > + B v QB v > + LRL >

= APA > − APC > (CPC > + R) −1 CPA > + B v QB v >

(17)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Minimization

We choose L so as to minimize tr [P(k + 1)]:

min L {tr [(A − LC )P(A − LC ) > + B v QB v > + LRL > )]} =

min L {tr [APA > ] − 2tr [APC > L > ] + tr [LCPC > L > ] + tr [B v QB v > ] + tr [LRL > ]}

Differentiate with respect to L and equate to zero:

2L(CPC > + R) − 2APC > = 0 =⇒ L = APC > (CPC > + R) −1

Plug into the expression of P(k + 1),

(A − LC )P(A − LC ) > + B v QB v > + LRL >

= APA > − APC > (CPC > + R) −1 CPA > + B v QB v >

Giulia Giordano KALMAN FILTER 8 / 51

(18)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Result

Optimal filter ˆ

x (k + 1) = [A(k) − L(k)C (k)]ˆ x (k) + L(k)y (k)

L(k) = A(k)P(k)C > (k)[C (k)P(k)C > (k) + R(k)] −1

P(k) is recursively given by P(k + 1) = A(k)P(k)A > (k)

− A(k)P(k)C > (k)[C (k)P(k)C > (k) + R(k)] −1 C (k)P(k)A > (k) + B v (k)Q(k)B v > (k),

with initial conditions P(k 0 ) = P 0 and ˆ x (k 0 ) = x 0

(19)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

We achieve similar results even if...

...v (k) and w (k) have a known nonzero mean: v (k), w (k)

Optimal filter ˆ

x (k + 1) =

[A(k) − L(k)C (k)]ˆ x (k) + L(k)y (k) − L(k)w (k) + B v (k)v (k)

Estimation error x(k + 1) − ˆ x (k + 1) = e(k + 1) =

[A(k) − L(k)C (k)]e(k) + B v (k)[v (k) − v (k)] − L(k)[w (k) − w (k)]

Giulia Giordano KALMAN FILTER 10 / 51

(20)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

We achieve similar results even if...

...v (k) and w (k) have a known nonzero mean: v (k), w (k)

Optimal filter ˆ

x (k + 1) =

[A(k) − L(k)C (k)]ˆ x (k) + L(k)y (k) − L(k)w (k) + B v (k)v (k)

Estimation error x(k + 1) − ˆ x (k + 1) = e(k + 1) =

[A(k) − L(k)C (k)]e(k) + B v (k)[v (k) − v (k)] − L(k)[w (k) − w (k)]

(21)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

We achieve similar results even if...

...v (k) and w (k) have a known nonzero mean: v (k), w (k)

Optimal filter ˆ

x (k + 1) =

[A(k) − L(k)C (k)]ˆ x (k) + L(k)y (k) − L(k)w (k) + B v (k)v (k)

Estimation error x(k + 1) − ˆ x (k + 1) = e(k + 1) =

[A(k) − L(k)C (k)]e(k) + B v (k)[v (k) − v (k)] − L(k)[w (k) − w (k)]

Giulia Giordano KALMAN FILTER 10 / 51

(22)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

In the presence of a known signal u ∈ R m . . .

. . . for instance a control signal, the system becomes x (k + 1) = A(k)x (k) + B v (k)v (k)+ B(k)u(k)

y (k) = C (k)x (k) + w (k)

Optimal filter ˆ

x (k + 1) = [A(k) − L(k)C (k)]ˆ x (k) + L(k)y (k) + B(k)u(k)

Estimation error x(k + 1) − ˆ x (k + 1) =

[A(k) − L(k)C (k)][x (k) − ˆ x (k)] + B v (k)v (k) − L(k)w (k)

exactly as in the absence of u !

(23)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

In the presence of a known signal u ∈ R m . . .

. . . for instance a control signal, the system becomes x (k + 1) = A(k)x (k) + B v (k)v (k)+ B(k)u(k)

y (k) = C (k)x (k) + w (k) Optimal filter

ˆ

x (k + 1) = [A(k) − L(k)C (k)]ˆ x (k) + L(k)y (k) + B(k)u(k)

Estimation error x(k + 1) − ˆ x (k + 1) =

[A(k) − L(k)C (k)][x (k) − ˆ x (k)] + B v (k)v (k) − L(k)w (k) exactly as in the absence of u !

Giulia Giordano KALMAN FILTER 11 / 51

(24)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

In the presence of a known signal u ∈ R m . . .

. . . for instance a control signal, the system becomes x (k + 1) = A(k)x (k) + B v (k)v (k)+ B(k)u(k)

y (k) = C (k)x (k) + w (k) Optimal filter

ˆ

x (k + 1) = [A(k) − L(k)C (k)]ˆ x (k) + L(k)y (k) + B(k)u(k)

Estimation error x(k + 1) − ˆ x (k + 1) =

[A(k) − L(k)C (k)][x (k) − ˆ x (k)] + B v (k)v (k) − L(k)w (k)

exactly as in the absence of u !

(25)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Steady-state (asymptotic) filtering algorithm

When all of the system matrices are constant, under suitable assumptions, P(k + 1) tends to the symmetric, positive definite solution P of the discrete-time algebraic Riccati equation

P = APA > − APC > (CPC > + R) −1 CPA > + B v QB v >

ASYMPTOTIC Kalman filter ˆ

x (k + 1) = (A − LC )ˆ x (k) + Ly (k) where

L = APC > (CPC > + R) −1

P = APA > − APC > (CPC > + R) −1 CPA > + B v QB v >

Giulia Giordano KALMAN FILTER 12 / 51

(26)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Steady-state (asymptotic) filtering algorithm

When all of the system matrices are constant, under suitable assumptions, P(k + 1) tends to the symmetric, positive definite solution P of the discrete-time algebraic Riccati equation

P = APA > − APC > (CPC > + R) −1 CPA > + B v QB v >

ASYMPTOTIC Kalman filter ˆ

x (k + 1) = (A − LC )ˆ x (k) + Ly (k) where

L = APC > (CPC > + R) −1

P = APA > − APC > (CPC > + R) −1 CPA > + B v QB v >

(27)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Duality

optimal LQ control, Q = H > H optimal observer, Q = I K feedback matrix: u(k) = Kx (k) L observer gain

are DUAL problems

A dual ↔ A > B dual ↔ C > H > dual ↔ B v

P = A > PA − A > PB(B > PB + R) −1 B > PA + H > H (LQ)

dual ↔

P = APA > − APC > (CPC > + R) −1 CPA > + B v B v > (KF) K = −(B > PB + R) −1 B > PA L = APC > (CPC > + R) −1

K = −L >

Giulia Giordano KALMAN FILTER 13 / 51

(28)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Duality

optimal LQ control, Q = H > H optimal observer, Q = I K feedback matrix: u(k) = Kx (k) L observer gain

are DUAL problems

A dual ↔ A > B dual ↔ C > H > dual ↔ B v

P = A > PA − A > PB(B > PB + R) −1 B > PA + H > H (LQ)

dual ↔

P = APA > − APC > (CPC > + R) −1 CPA > + B v B v > (KF) K = −(B > PB + R) −1 B > PA L = APC > (CPC > + R) −1

K = −L >

(29)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Duality

optimal LQ control, Q = H > H optimal observer, Q = I K feedback matrix: u(k) = Kx (k) L observer gain

are DUAL problems

A dual ↔ A > B dual ↔ C > H > dual ↔ B v

P = A > PA − A > PB(B > PB + R) −1 B > PA + H > H (LQ)

dual ↔

P = APA > − APC > (CPC > + R) −1 CPA > + B v B v > (KF)

K = −(B > PB + R) −1 B > PA L = APC > (CPC > + R) −1 K = −L >

Giulia Giordano KALMAN FILTER 13 / 51

(30)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Duality

optimal LQ control, Q = H > H optimal observer, Q = I K feedback matrix: u(k) = Kx (k) L observer gain

are DUAL problems

A dual ↔ A > B dual ↔ C > H > dual ↔ B v

P = A > PA − A > PB(B > PB + R) −1 B > PA + H > H (LQ)

dual ↔

P = APA > − APC > (CPC > + R) −1 CPA > + B v B v > (KF) K = −(B > PB + R) −1 B > PA L = APC > (CPC > + R) −1

K = −L >

(31)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Kalman filter: asymptotic stability

e(k + 1) = (A − LC )e(k) + B v v (k) − Lw (k) stable?

P is the symmetric positive definite solution of

P = A[P − PC > (CPC > + R) −1 CP]A > + B v QB v > which is the

discrete-time Lyapunov equation

(A − LC )P(A − LC ) > − P = −B v QB v > − LRL > with B v QB v > + LRL > symmetric positive definite matrix

A − LC is asymptotically stable and the sequence {e k } goes to zero when v (k), w (k) ≡ 0 ∀k

Giulia Giordano KALMAN FILTER 14 / 51

(32)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Kalman filter: asymptotic stability

e(k + 1) = (A − LC )e(k) + B v v (k) − Lw (k) stable?

P is the symmetric positive definite solution of

P = A[P − PC > (CPC > + R) −1 CP]A > + B v QB v >

which is the

discrete-time Lyapunov equation

(A − LC )P(A − LC ) > − P = −B v QB v > − LRL >

with B v QB v > + LRL > symmetric positive definite matrix

A − LC is asymptotically stable and the sequence {e k } goes to zero

when v (k), w (k) ≡ 0 ∀k

(33)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Kalman filter: asymptotic stability

e(k + 1) = (A − LC )e(k) + B v v (k) − Lw (k) stable?

P is the symmetric positive definite solution of

P = A[P − PC > (CPC > + R) −1 CP]A > + B v QB v >

which is the

discrete-time Lyapunov equation

(A − LC )P(A − LC ) > − P = −B v QB v > − LRL >

with B v QB v > + LRL > symmetric positive definite matrix

A − LC is asymptotically stable and the sequence {e k } goes to zero when v (k), w (k) ≡ 0 ∀k

Giulia Giordano KALMAN FILTER 14 / 51

(34)

CONTINUOUS-TIME KALMAN-BUCY FILTER

Rudolf Emil Kalman and Richard Snowden Bucy

“New Results in Linear Filtering and Prediction Theory”

Transactions of the ASME, Journal of Basic Engineering, pp. 95-108,

March 1961

(35)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Problem formulation

Continuous-time linear system:

˙

x (t) = A(t)x (t) + B(t)u(t) + B v (t)v (t) y (t) = C (t)x (t) + w (t)

x ∈ R n system state y ∈ R q measured output u ∈ R m known input v ∈ R p process disturbance w ∈ R q measurement disturbance

Looking for a recursive algorithm that yields an estimate ˆ x of the system state

Giulia Giordano KALMAN FILTER 16 / 51

(36)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Problem formulation

Continuous-time linear system:

˙

x (t) = A(t)x (t) + B(t)u(t) + B v (t)v (t) y (t) = C (t)x (t) + w (t)

x ∈ R n system state y ∈ R q measured output u ∈ R m known input v ∈ R p process disturbance w ∈ R q measurement disturbance

Looking for a recursive algorithm that yields an estimate ˆ x of the

system state

(37)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 1

w and v are stochastic processes

w , v white noises: zero mean, independent components E [v (t)] = 0;

E [v (t)v (τ) > ] = Q(t)δ (t − τ), Q(t) > 0 E [w (t)] = 0;

E [w (t)w (τ) > ] = R(t)δ (t − τ), R(t) > 0 The statistics of x(t 0 ) is known

E [x (t 0 )] = x 0 ;

E [(x (t 0 ) − x 0 )(x (t 0 ) − x 0 ) > ] = Var [x (t 0 )] = P 0

v , w and x are uncorrelated

E [w (t)v (τ) > ] = 0, E [w (t)x (τ) > ] = 0, E [v (t)x (τ) > ] = 0

Giulia Giordano KALMAN FILTER 17 / 51

(38)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 1

w and v are stochastic processes w , v white noises: zero mean, independent components

E [v (t)] = 0;

E [v (t)v (τ) > ] = Q(t)δ (t − τ), Q(t) > 0 E [w (t)] = 0;

E [w (t)w (τ) > ] = R(t)δ (t − τ), R(t) > 0

The statistics of x(t 0 ) is known E [x (t 0 )] = x 0 ;

E [(x (t 0 ) − x 0 )(x (t 0 ) − x 0 ) > ] = Var [x (t 0 )] = P 0

v , w and x are uncorrelated

E [w (t)v (τ) > ] = 0, E [w (t)x (τ) > ] = 0, E [v (t)x (τ) > ] = 0

(39)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 1

w and v are stochastic processes w , v white noises: zero mean, independent components

E [v (t)] = 0;

E [v (t)v (τ) > ] = Q(t)δ (t − τ), Q(t) > 0 E [w (t)] = 0;

E [w (t)w (τ) > ] = R(t)δ (t − τ), R(t) > 0 The statistics of x(t 0 ) is known

E [x (t 0 )] = x 0 ;

E [(x (t 0 ) − x 0 )(x (t 0 ) − x 0 ) > ] = Var [x (t 0 )] = P 0

v , w and x are uncorrelated

E [w (t)v (τ) > ] = 0, E [w (t)x (τ) > ] = 0, E [v (t)x (τ) > ] = 0

Giulia Giordano KALMAN FILTER 17 / 51

(40)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 1

w and v are stochastic processes w , v white noises: zero mean, independent components

E [v (t)] = 0;

E [v (t)v (τ) > ] = Q(t)δ (t − τ), Q(t) > 0 E [w (t)] = 0;

E [w (t)w (τ) > ] = R(t)δ (t − τ), R(t) > 0 The statistics of x(t 0 ) is known

E [x (t 0 )] = x 0 ;

E [(x (t 0 ) − x 0 )(x (t 0 ) − x 0 ) > ] = Var [x (t 0 )] = P 0

v , w and x are uncorrelated

E [w (t)v (τ) > ] = 0, E [w (t)x (τ) > ] = 0, E [v (t)x (τ) > ] = 0

(41)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 2

The filter belongs to the class of Luenberger observers:

˙ˆx(t) = [A(t) − L(t)C (t)]ˆx(t) + L(t)y(t) + B(t)u(t)

L(t) ∈ R n×q is the matrix we want to determine

Giulia Giordano KALMAN FILTER 18 / 51

(42)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Assumption 2

The filter belongs to the class of Luenberger observers:

˙ˆx(t) = [A(t) − L(t)C (t)]ˆx(t) + L(t)y(t) + B(t)u(t)

L(t) ∈ R n×q is the matrix we want to determine

(43)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Our goal

Estimation error e(t) = x(t) − ˆ x (t)

˙

e(t) = [A(t) − L(t)C (t)]e(t) + B v (t)v (t) − L(t)w (t)

We look for the matrix L(t) that minimizes

E [kx (t) − ˆ x (t)k 2 ] = E [e > (t)e(t)] = trE [(x (t) − ˆ x (t))(x (t) − ˆ x (t)) > ]

choosing P(t) = E [(x(t) − ˆ x (t))(x (t) − ˆ x (t)) > ]

Giulia Giordano KALMAN FILTER 19 / 51

(44)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Our goal

Estimation error e(t) = x(t) − ˆ x (t)

˙

e(t) = [A(t) − L(t)C (t)]e(t) + B v (t)v (t) − L(t)w (t)

We look for the matrix L(t) that minimizes

E [kx (t) − ˆ x (t)k 2 ] = E [e > (t)e(t)] = trE [(x (t) − ˆ x (t))(x (t) − ˆ x (t)) > ]

choosing P(t) = E [(x(t) − ˆ x (t))(x (t) − ˆ x (t)) > ]

(45)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Our goal

Estimation error e(t) = x(t) − ˆ x (t)

˙

e(t) = [A(t) − L(t)C (t)]e(t) + B v (t)v (t) − L(t)w (t)

We look for the matrix L(t) that minimizes

E [kx (t) − ˆ x (t)k 2 ] = E [e > (t)e(t)] = trE [(x (t) − ˆ x (t))(x (t) − ˆ x (t)) > ]

choosing P(t) = E [(x(t) − ˆ x (t))(x (t) − ˆ x (t)) > ]

Giulia Giordano KALMAN FILTER 19 / 51

(46)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Sampled system, ∆t small enough

e(t + ∆t) = [I + A ∆t − LC ∆t]e(t) + B v ∆t v (t) − L ∆t w (t)



e

M∆t

= ∑

+∞k=0Mk(∆t)k! k

= I + M∆t +

2!1

M

2

(∆t)

2

+

3!1

M

3

(∆t)

3

+ . . .

 cf. Euler

Hence, given P(t),

P(t + ∆t) = [I + A ∆t − LC ∆t]P(t)[I + A ∆t − LC ∆t] > + B v QB v > ∆t + LRL > ∆t

lim ∆t→0 P(t+∆t)−P(t)

∆t = ˙ P(t) = [A(t) − L(t)C (t)]P(t) +

P(t)[A(t) − L(t)C (t)] > + B v (t)Q(t)B v > (t) + L(t)R(t)L > (t)

(47)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Sampled system, ∆t small enough

e(t + ∆t) = [I + A ∆t − LC ∆t]e(t) + B v ∆t v (t) − L ∆t w (t)



e

M∆t

= ∑

+∞k=0Mk(∆t)k! k

= I + M∆t +

2!1

M

2

(∆t)

2

+

3!1

M

3

(∆t)

3

+ . . .

 cf. Euler

Hence, given P(t),

P(t + ∆t) = [I + A ∆t − LC ∆t]P(t)[I + A ∆t − LC ∆t] > + B v QB v > ∆t + LRL > ∆t

lim ∆t→0 P(t+∆t)−P(t)

∆t = ˙ P(t) = [A(t) − L(t)C (t)]P(t) + P(t)[A(t) − L(t)C (t)] > + B v (t)Q(t)B v > (t) + L(t)R(t)L > (t)

Giulia Giordano KALMAN FILTER 20 / 51

(48)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Sampled system, ∆t small enough

e(t + ∆t) = [I + A ∆t − LC ∆t]e(t) + B v ∆t v (t) − L ∆t w (t)



e

M∆t

= ∑

+∞k=0Mk(∆t)k! k

= I + M∆t +

2!1

M

2

(∆t)

2

+

3!1

M

3

(∆t)

3

+ . . .

 cf. Euler

Hence, given P(t),

P(t + ∆t) = [I + A ∆t − LC ∆t]P(t)[I + A ∆t − LC ∆t] > + B v QB v > ∆t + LRL > ∆t

lim ∆t→0 P(t+∆t)−P(t)

∆t = ˙ P(t) = [A(t) − L(t)C (t)]P(t) +

P(t)[A(t) − L(t)C (t)] > + B v (t)Q(t)B v > (t) + L(t)R(t)L > (t)

(49)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Minimization

We choose L so as to minimize tr [ ˙ P(t)]:

min L {tr [AP − LCP + PA > − PC > L > + B v QB v > + LRL > ]}

Differentiate with respect to L and equate to zero:

−2PC > + 2LR = 0 =⇒ L = PC > R −1

Plug into the expression of ˙ P(t),

AP + PA > − PC > R −1 CP + B v QB v >

Giulia Giordano KALMAN FILTER 21 / 51

(50)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Minimization

We choose L so as to minimize tr [ ˙ P(t)]:

min L {tr [AP − LCP + PA > − PC > L > + B v QB v > + LRL > ]}

Differentiate with respect to L and equate to zero:

−2PC > + 2LR = 0 =⇒ L = PC > R −1

Plug into the expression of ˙ P(t),

AP + PA > − PC > R −1 CP + B v QB v >

(51)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Minimization

We choose L so as to minimize tr [ ˙ P(t)]:

min L {tr [AP − LCP + PA > − PC > L > + B v QB v > + LRL > ]}

Differentiate with respect to L and equate to zero:

−2PC > + 2LR = 0 =⇒ L = PC > R −1

Plug into the expression of ˙ P(t),

AP + PA > − PC > R −1 CP + B v QB v >

Giulia Giordano KALMAN FILTER 21 / 51

(52)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Result

Optimal filter

˙ˆx(t) = [A(t) − L(t)C (t)]ˆx(t) + L(t)y(t) + B(t)u(t)

L(t) = P(t)C > (t)R −1 (t)

where

P(t) = A(t)P(t) + P(t)A ˙ > (t) − P(t)C > (t)R −1 C (t)P(t) + B v (t)Q(t)B v > (t)

with initial conditions P(t 0 ) = P 0 and ˆ x (t 0 ) = x 0

(53)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Steady-state (asymptotic) filtering algorithm

When all of the system matrices are constant, under suitable assumptions, ˙ P(t) tends to zero and P is the symmetric, positive definite solution P of the continuous-time algebraic Riccati equation

AP + PA > − PC > R −1 CP + B v QB v > = 0

ASYMPTOTIC Kalman filter

˙ˆx(t) = (A − LC )ˆx(t) + Ly(t) + Bu(t) dove

L = PC > R −1

AP + PA > − PC > R −1 CP + B v QB v > = 0

Giulia Giordano KALMAN FILTER 23 / 51

(54)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Steady-state (asymptotic) filtering algorithm

When all of the system matrices are constant, under suitable assumptions, ˙ P(t) tends to zero and P is the symmetric, positive definite solution P of the continuous-time algebraic Riccati equation

AP + PA > − PC > R −1 CP + B v QB v > = 0

ASYMPTOTIC Kalman filter

˙ˆx(t) = (A − LC )ˆx(t) + Ly(t) + Bu(t) dove

L = PC > R −1

AP + PA > − PC > R −1 CP + B v QB v > = 0

(55)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Duality

optimal LQ control, Q = H > H optimal observer, Q = I K feedback matrix: u(k) = Kx (k) L observer gain

are DUAL problems

A dual ↔ A > B dual ↔ C > H > dual ↔ B v

A > P + PA − PBR −1 B > P + H > H = 0 (LQ)

dual ↔

AP + PA > − PC > R −1 CP + B v B v > = 0 (KF)

K = −R −1 B > P L = PC > R −1 K = −L >

Giulia Giordano KALMAN FILTER 24 / 51

(56)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Duality

optimal LQ control, Q = H > H optimal observer, Q = I K feedback matrix: u(k) = Kx (k) L observer gain

are DUAL problems

A dual ↔ A > B dual ↔ C > H > dual ↔ B v

A > P + PA − PBR −1 B > P + H > H = 0 (LQ)

dual ↔

AP + PA > − PC > R −1 CP + B v B v > = 0 (KF)

K = −R −1 B > P L = PC > R −1

K = −L >

(57)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Duality

optimal LQ control, Q = H > H optimal observer, Q = I K feedback matrix: u(k) = Kx (k) L observer gain

are DUAL problems

A dual ↔ A > B dual ↔ C > H > dual ↔ B v

A > P + PA − PBR −1 B > P + H > H = 0 (LQ)

dual ↔

AP + PA > − PC > R −1 CP + B v B v > = 0 (KF)

K = −R −1 B > P L = PC > R −1 K = −L >

Giulia Giordano KALMAN FILTER 24 / 51

(58)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Duality

optimal LQ control, Q = H > H optimal observer, Q = I K feedback matrix: u(k) = Kx (k) L observer gain

are DUAL problems

A dual ↔ A > B dual ↔ C > H > dual ↔ B v

A > P + PA − PBR −1 B > P + H > H = 0 (LQ)

dual ↔

AP + PA > − PC > R −1 CP + B v B v > = 0 (KF)

K = −R −1 B > P L = PC > R −1

K = −L >

(59)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Kalman filter: asymptotic stability

˙

e(t) = (A − LC )e(t) + B v v (t) − Lw (t) stable?

P is the symmetric positive definite solution of AP + PA > − PC > R −1 CP + B v QB v > = 0 which is the

continuous-time Lyapunov equation

[A − LC ]P + P[A − LC ] > = −B v QB v > − LRL > with B v QB v > + LRL > symmetric positive definite matrix

A − LC is asymptotically stable and e(t) tends to zero when v (t), w (t) ≡ 0 ∀t

Giulia Giordano KALMAN FILTER 25 / 51

(60)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Kalman filter: asymptotic stability

˙

e(t) = (A − LC )e(t) + B v v (t) − Lw (t) stable?

P is the symmetric positive definite solution of AP + PA > − PC > R −1 CP + B v QB v > = 0 which is the

continuous-time Lyapunov equation

[A − LC ]P + P[A − LC ] > = −B v QB v > − LRL >

with B v QB v > + LRL > symmetric positive definite matrix

A − LC is asymptotically stable and e(t) tends to zero when

v (t), w (t) ≡ 0 ∀t

(61)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Kalman filter: asymptotic stability

˙

e(t) = (A − LC )e(t) + B v v (t) − Lw (t) stable?

P is the symmetric positive definite solution of AP + PA > − PC > R −1 CP + B v QB v > = 0 which is the

continuous-time Lyapunov equation

[A − LC ]P + P[A − LC ] > = −B v QB v > − LRL >

with B v QB v > + LRL > symmetric positive definite matrix

A − LC is asymptotically stable and e(t) tends to zero when v (t), w (t) ≡ 0 ∀t

Giulia Giordano KALMAN FILTER 25 / 51

(62)

EXAMPLES AND APPLICATIONS

(63)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Model

˙

x (t) = Ax (t) + B[u(t) + v (t)]

y (t) = Cx (t) + w (t) with

A =

 0 1 0 0



, B =

 0 1

 C = 

1 0 

mechanical system m ¨ q = F , con x 1 = q, x 2 = ˙ q, u = F /m, with disturbances v and w .

Sampled system −→ discrete-time system matrices −→

discrete-time Kalman filter ˆ

x (k + 1) = (A − LC )ˆ x (k) + Ly (k) + Bu(k).

Giulia Giordano KALMAN FILTER 27 / 51

(64)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Simulation

State space trajectory: x blue, ˆ x red

u = 1, T s = 1, Q = 1, R = 2

(65)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Simulation

u = 1, T s = 1, Q = 1, R = 2

Error x − ˆ x for the two components Comparison: x(1) blue, ˆ x (1) red;

x (2) green, ˆ x (2) black

Giulia Giordano KALMAN FILTER 29 / 51

(66)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Model

˙

x (t) = Ax (t) + B[u(t) + v (t)]

y (t) = Cx (t) + w (t) with

A =

 0 1 0 0



, B =

 0 1

 C = 

1 0 

Now rewrite the system approximating the derivative with Euler’s method: x(t + τ) = [I + τA]x(t) + Bτ[u(t) + v (t)] and compute the continuous-time Kalman filter

ˆ

x (t + τ) = (I + Aτ − LC τ)ˆ x (t) + Lτy (t) + Bτu(t).

(67)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Simulation

State space trajectory: x blue, ˆ x red

u = 1, τ = 0.01, Q = 1, R = 2

Giulia Giordano KALMAN FILTER 31 / 51

(68)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Simulation

u = 1, τ = 0.01, Q = 1, R = 2

Error x − ˆ x for the two components Comparison: x(1) blue, ˆ x (1) red;

x (2) green, ˆ x (2) black

(69)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Marginally stable system with disturbances: the model

Transfer function s

2

1

2

, with ω = 2.

Discrete-time system version, discrete-time Kalman filter.

Giulia Giordano KALMAN FILTER 33 / 51

(70)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Marginally stable system with disturbances: simulation

State space trajectory: x blue, ˆ x red

(71)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Marginally stable system with disturbances: simulation

T s = 0.2, Q = 1, R = 1

Error x − ˆ x Comparison: x(1) blue, ˆ x (1) red;

x (2) green, ˆ x (2) black

Giulia Giordano KALMAN FILTER 35 / 51

(72)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Stable system with disturbances: model

Transfer function s

2

+300s+20000 1 .

Discrete-time version of the system, discrete-time Kalman filter.

(73)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Stable system with disturbances: simulation

State space trajectory: x blue, ˆ x red

Giulia Giordano KALMAN FILTER 37 / 51

(74)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Stable system with disturbances: simulation

T s = 0.2, Q = 1, R = 1

Error x − ˆ x Comparison: x(1) blue, ˆ x (1) red;

x (2) green, ˆ x (2) black

(75)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Output estimate

For a system with disturbances

. . . and a known input

x (k + 1) = Ax (k) + Bv (k)

+ Eu(k)

z(k) = Hx (k)

y (k) = Cx (k) + Dw (k)

we want to estimate output z based on measured output y : Kalman filter:

ˆ

x (k + 1) = (A − LC )ˆ x (k) + Ly (k)

+ Eu(k)

ˆ

z(k) = H ˆ x (k) where: L = APC > (CPC > + R) −1

P = APA > + APC > (CPC > + R) −1 CPA > + BQB > .

Giulia Giordano KALMAN FILTER 39 / 51

(76)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Output estimate

For a system with disturbances

. . . and a known input

x (k + 1) = Ax (k) + Bv (k)

+ Eu(k)

z(k) = Hx (k)

y (k) = Cx (k) + Dw (k)

we want to estimate output z based on measured output y :

Kalman filter: ˆ

x (k + 1) = (A − LC )ˆ x (k) + Ly (k)

+ Eu(k)

ˆ

z(k) = H ˆ x (k) where: L = APC > (CPC > + R) −1

P = APA > + APC > (CPC > + R) −1 CPA > + BQB > .

(77)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Output estimate

For a system with disturbances

. . . and a known input

x (k + 1) = Ax (k) + Bv (k)

+ Eu(k)

z(k) = Hx (k)

y (k) = Cx (k) + Dw (k)

we want to estimate output z based on measured output y : Kalman filter:

ˆ

x (k + 1) = (A − LC )ˆ x (k) + Ly (k)

+ Eu(k)

ˆ

z(k) = H ˆ x (k) where: L = APC > (CPC > + R) −1

P = APA > + APC > (CPC > + R) −1 CPA > + BQB > .

Giulia Giordano KALMAN FILTER 39 / 51

(78)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Output estimate

For a system with disturbances . . . and a known input

x (k + 1) = Ax (k) + Bv (k)+ Eu(k) z(k) = Hx (k)

y (k) = Cx (k) + Dw (k)

we want to estimate output z based on measured output y : Kalman filter:

ˆ

x (k + 1) = (A − LC )ˆ x (k) + Ly (k)

+ Eu(k)

ˆ

z(k) = H ˆ x (k) where: L = APC > (CPC > + R) −1

P = APA > + APC > (CPC > + R) −1 CPA > + BQB > .

(79)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

Output estimate

For a system with disturbances . . . and a known input

x (k + 1) = Ax (k) + Bv (k)+ Eu(k) z(k) = Hx (k)

y (k) = Cx (k) + Dw (k)

we want to estimate output z based on measured output y : Kalman filter:

ˆ

x (k + 1) = (A − LC )ˆ x (k) + Ly (k) + Eu(k) ˆ

z(k) = H ˆ x (k) where: L = APC > (CPC > + R) −1

P = APA > + APC > (CPC > + R) −1 CPA > + BQB > .

Giulia Giordano KALMAN FILTER 39 / 51

(80)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With disturbances only

Masses and springs system: model

˙

x = Ax + Bv z = C z x y = C y x + w

k

1

= k

2

= 1, m

1

= m

2

= m

3

= 1

A =

0 0 0 1 0 0

0 0 0 0 1 0

0 0 0 0 0 1

−1 1 0 0 0 0

1 −2 1 0 0 0

0 1 −1 0 0 0

 , B =

 0 0 0 1 0 0

 ,

C

z

= 

1 0 0 0 0 0  , C

y

= 

0 0 1 0 0 0  .

(81)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With disturbances only

Masses and springs system: simulation

T s = 1, Q = 1, R = 1

Giulia Giordano KALMAN FILTER 41 / 51

(82)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With disturbances only

Three-floor building: model

k

1

= 2, k

12

= 1, k

23

= 1, ϕ = 0.01

A =

0 0 0 1 0 0

0 0 0 0 1 0

0 0 0 0 0 1

−(k

1

+ k

12

) k

12

0 −ϕ 0 0

k

12

−(k

12

+ k

23

) k

23

0 −ϕ 0

0 k

23

−k

23

0 0 −ϕ

 , B =

 0 0 0

−1

−1

−1

 ,

C

z

= 

1 0 0 0 0 0  , C

y

= 

0 1 0 0 0 0 

(83)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With disturbances only

Three-floor building: simulation

T s = 1, Q = 1, R = 1

Giulia Giordano KALMAN FILTER 43 / 51

(84)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With disturbances only

Car damper: model

k

1

= 2, k

2

= 3, h = 0.1

A =

0 0 1 0

0 0 0 1

−(k

1

+ k

2

) k

2

−h h

k

2

−k

2

h −h

 , B =

 0 0 k

1

0

 ,

C

z

= 

1 0 0 0  , C

y

= 

1 −1 0 0  .

(85)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With disturbances only

Car damper: simulation

T s = 1, Q = 1, R = 1

Giulia Giordano KALMAN FILTER 45 / 51

(86)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Second-order system: model

(87)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Second-order system: simulation

ω = 2, T s = 0.2, Q = 1, R = 1

Giulia Giordano KALMAN FILTER 47 / 51

(88)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Fourth-order system: model

(89)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

Fourth-order system: simulation

ω 1 = 4, ω 2 = 4, T s = 0.2, Q = 1, R = 1

Giulia Giordano KALMAN FILTER 49 / 51

(90)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

System with selective prefilters: model

(91)

DISCRETE-TIME KALMAN FILTER CONTINUOUS-TIME KALMAN-BUCY FILTER APPLICATIONS

With a known input

System with selective prefilters: simulation

ω = 4, ω v = 4, ω w = 2, T s = 0.2, β = 1, γ = 1, Q = 1, R = 1

Giulia Giordano KALMAN FILTER 51 / 51

Riferimenti

Documenti correlati

j Also at Key Laboratory of Nuclear Physics and Ion-beam Application (MOE) and Institute of Modern Physics, Fudan University, Shanghai 200443, People ’s Republic of China.. k

Nel corso del XIX secolo prendono la forma attuale le due principali concentrazioni culturali del Polesine: a Rovigo, grazie ad un legato, l’antica Accademia dei Concordi

If the noise variance is estimated incorrectly, and the estimation output is then used for signal filtering, real time measurement results might be distorted.. To estimate the

Napoleone era rimasto vittima della propria ambizione politica. Aggirato da Ferdinand du Tillet – il suo ex garzone, divenuto nel frattempo spregiudicato

 Versus computed order tracking, Vold-Kalman offers finer resolution, complex envelope, as well as wave- form and no slew rate limitation..  Versus digital tracking filters,

The Vold-Kalman filter enables high performance simultaneous tracking of orders in systems with multiple independent shafts. With this new filter and using multiple tacho

First 10 harmonics and the total level (in the span of 20 or- ders), from real-time order tracking spectra, as functions of RPM (shown as a waterfall plot).

In fact, this procedure applied to the modified SEIK takes advantage of the higher order of convergence of the assimilation scheme and, by fully taking into account the model error,