Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
OPTIMAL FILTERING: RELEVANCE OF THE
INTERACTIVE MULTIPLE MODEL Eric Grivel
[email protected], [email protected]
SIGNAL & IMAGE Group
SIGNAL & IMAGE Group
SIGNAL & IMAGE Group
About the ENSEIRB-MATMECA
founded in 1920
ranked in the top 20 of
the "Grandes Ecoles" French national educative system
1200 students
4 departments:
Electronics
Computer sciences
Telecommunications
Mechanics
Admission through the selective national exams for the French
“Grandes Ecoles”, after 2 years of preparation in higher education.
For foreign students: please visit http://www.enseirb-matmeca.fr/
Signal and image processing is everywhere
in our everyday life
SIGNAL & IMAGE Group
ENHANCED SPEECH SIGNAL :
FIRST MICROPHONE :
SECOND MICROPHONE :
For speech processing
Processing
Additive noise
Noisy signals
Speech signal
Enhanced speech
When using a mobile phone -after recording the speech signal, sampling the signal and coding it -when transmitting and receiving the speech signal and other data (digital communication issues)
When using a music player -by using various kinds of coding for music, etc.
When using a GPS -for localization and navigation Determining the positions by measuring the propagation delays of signals broadcast by GPS satellite-in-view
-for integrity monitoring 1T
2T
3T 111 ,, zyx
222 ,, zyx
333 ,, zyx
zyx ,,
When watching TV -Digital Video Broadcasting-T (DVB-T)
.
With toys, computers or other electronic devices -Text-to-speech applications -Speech recognition -Texture synthesis for video games, films, etc. -etc.
In other applications -EEG-ECG processing, -image processing to detect defaults (material, etc.), -seismic data processing, -mechanical structures -video processing for traffic surveillance, etc.
In industrial applications -in radar processing -in sonar processing
Radar
Sea clutter
Ground
clutter
jamming
Target Other
target
In financial mathematics -to study, analyse and predict.
Among the issues : • estimation and detection, • extracting information from the observations.
Various ways to address these problems
• In the frequency domain • In the time domain
In each case, selecting a criterion (LS, MV, etc.)
In the frequency domain :spectrum analysis
Off-line estimation:
Subspace methods: ESPRIT, MUSIC, etc.
8
In the frequency domain: time-frequency-analysis
Off-line estimation:
Wigner Ville estimation, Wavelet based estimation, Chirplet based estimation,
EMD, etc.
Recursive method:
For instance, by using a bank of selective filters (Capon,
Borgiotti-Lagunas, etc.)
Recursive method:
For instance, by using a TVAR model
In the time domain, based on a system representation:
Recursive estimation :
Adaptive filter (LMS, RLS), Kalman, H, particule filter
Off-line estimation:
Subspace methods (« playing » with correlation).
Iterative estimation:
Multigrid search, evolutionnary algorithms
Recursive
algorithm
Recursive
algorithm
observation
at time k
Off-line
algorithm
bloc
of observations
Recursive
algorithm
observation
at time k+1
observation
at time k-1 observation
at time k
8
Contents Part 1: about system modeling Part 2: state space representation of the system
• from the continuous to the discrete-time domain: application to motion target
• AR modeling for various applications Part 3: estimating the state vector by Kalman filtering
• in the linear case • In the non Linear case: EKF, SO-EKF, CDKF, QKF
Part 4: relaxing the assumptions on the model by using Interactive Multiple Model
Part 5: applications
Contents Part 1: about system modeling Part 2: state space representation of the system
• from the continuous to the discrete-time domain: application to motion target
• AR modeling for various applications Part 3: estimating the state vector by Kalman filtering
• in the linear case • In the non Linear case: EKF, SO-EKF, CDKF, QKF
Part 4: relaxing the assumption on the model by using Interactive Multiple Model
Part 5: application
System modeling State space rep.. Kalman filter IMM Application
Example 1: modeling a signal by an autoregressive process
with the AR parameter vector,
a white Gaussian zero-mean driving process with variance .
Very popular model used :
• in speech enhancement and coding (IUT norms G.728, G.729), • for Rayleigh fading channel modeling, • in sea clutter rejection in radar processing, • etc.
nuinsansp
ii
1
Tpaa 1
)(nu2u
System modeling State space rep.. Kalman filter IMM Application
Example 1: modeling a speech signal by an autoregressive process Analysing the signal properties Selecting a model that matches the spectral and correlation properties of the signal
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
x 104
0.005 0.01 0.015 0.02 0.025-2.5
-2
-1.5
-1
-0.5
0
0.5
1
x 104
0.28 0.29 0.3 0.31 0.32 0.33 0.34 0.35-2.5
-2
-1.5
-1
-0.5
0
0.5
1
x 104
0.005 0.01 0.015 0.02 0.025
-3000
-2500
-2000
-1500
-1000
-500
0
System modeling State space rep.. Kalman filter IMM Application
0 0.01 0.02 0.03 0.04 0.05
-4000
-3000
-2000
-1000
0
1000
2000
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.510
20
30
40
50
60
70
80
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.510
20
30
40
50
60
70
80
freq
am
plit
ude
spectre du signal, lpc correspondante
corresponding AR PSD PSD of the
unvoiced
speech frame
0 0.005 0.01 0.015 0.02 0.025 0.03
-150
-100
-50
0
50
100
150
temps
am
plit
ude
representation temporelle du signalTemporal representation of the speech signal
time
Example 1: modeling a signal by an autoregressive process
System modeling State space rep.. Kalman filter IMM Application
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.530
40
50
60
70
80
90
100
110
0 0.005 0.01 0.015 0.02 0.025 0.03
-6000
-5000
-4000
-3000
-2000
-1000
0
1000
2000
3000
temps
am
plit
ude
representation temporelle du signal
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.530
40
50
60
70
80
90
100
110
freq
am
plit
ude
spectre du signal, lpc correspondante
corresponding AR
PSD
PSD of the
voiced
speech
frame
pitch period of the
voiced frame
fundamental frequency Temporal representation of the speech signal
time
Example 1: modeling a signal by an autoregressive process
System modeling State space rep.. Kalman filter IMM Application
Example 2: sum of sinusoids Example 3: modeling the motion of an aircraft.
2.6 2.605 2.61 2.615 2.62 2.625 2.63 2.635 2.64 2.645
x 104
2.56
2.57
2.58
2.59
2.6
2.61
2.62x 10
4
x
y
position recherchée
2.605 2.61 2.615 2.62 2.625 2.63 2.635 2.64 2.645
x 104
2.57
2.575
2.58
2.585
2.59
2.595
2.6
2.605
2.61
2.615
2.62x 10
4
X
Y
dans le repère aéroporté cartésien Cartesian coordinate system Cartesian coordinate system
position
velocity
System modeling State space rep.. Kalman filter IMM Application
Contents Part 1: about system modeling Part 2: state space representation of the system
• from the continuous to the discrete-time domain: application to motion target
• AR modeling for various applications Part 3: estimating the state vector by Kalman filtering
• in the linear case • In the non Linear case: EKF, SO-EKF, CDKF, QKF
Part 4: relaxing the assumptions on the model by using Interactive Multiple Model
Part 5: applications
Contents Part 1: about system modeling Part 2: state space representation of the system
• from the continuous to the discrete-time domain: application to motion target
• AR modeling for various applications Part 3: estimating the state vector by Kalman filtering
• in the linear case • In the non Linear case: EKF, SO-EKF, CDKF, QKF
Part 4: relaxing the assumption on the model by using Interactive Multiple Model
Part 5: applications
Definition
Let the state space representation of the system be defined as follows (continuous-time domain):
where
In addition, the observation satisfies:
The observations are often disturbed by an additive measurement noise. Therefore :
)()()()()( twtBtxtAtx
dt
txdtx
)()(
)()( txHty
Tn txtxtx )(,),()( 1
)()()( tbtxHty
System modeling State space rep.. Kalman filter IMM Application
Stationary system A, B and H do not vary in time. Hence, one has
If there is no driving process
Searching a solution to this differential equation
)()()( twBtxAtx
)()( txHty
)()( txAtx
)0()( 0 xtx
)0()(exp)( 0 xttAtx
Searching the solution
System modeling State space rep.. Kalman filter IMM Application
Searching the general solution
The quantity is often called the transition matrix and is denoted as
)(exp 0ttA
)( 0tt Φ
dwBtAxttAtxt
t
)()(exp)0()(exp)(
0
0
Searching the solution
System modeling State space rep.. Kalman filter IMM Application
)()()( twBtxAtx
)()( txHty
)0()( 0 xtx
Example : motion for radar, GPS, traffic control, etc.
Purpose : relating position, velocity and acceleration. Being able to know where a “target” is
Focus on a constant velocity motion
Various examples
System modeling State space rep.. Kalman filter IMM Application
Let us assume that the acceleration is a zero-mean white Gaussian sequence with variance q.
Let the state vector be defined as follows:
with
)()()( twtxta
)(.1
0
)(
)(
00
10
)(
)(tw
tx
tx
tx
tx
00
10A
1
0B
Ttxtxtx )(),()(
)()()( tBwtxAtx
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Let us now derive the discrete-time state space representation of the system. Given
one has for two successive times, namely
and
or equivalently
dBwtAtxttAtxt
t
)()(exp)()(exp)(
0
00
Tkt )1(
kTt 0
dBwTkAkTxATTkxTk
kT
)())1((exp)(exp))1(()1(
dkTBwTAkTxATTkxT
)()(exp)(exp))1((
0
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Given the following Mc Laurin expansion:
One obtains:
or equivalently
or
10
1exp
TATIAT
dkTwT
kTxT
TkxT
)(1
0
10
1)(
10
1))1((
0
dkTwT
kTxT
TkxT
)(1
)(10
1))1((
0
)()()()1( kukxkkx
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Then, let us look at the covariance matrix of the driving process (or model noise). 2 cases can be considered depending on the sampling period
1/ is constant during the sampling period
Therefore
T
T
TkTwd
TkTwku
0
2
2).(.1
).()(
)(tw
2
3
34
22
2
24.2
.2.])().([
TT
TT
qTT
T
TqkukuEQ T
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Then, let us look at the covariance matrix of the driving process (or model noise). 2 cases can be considered depending on the sampling period
2/ varies during the sampling period
)(tw
TT
TT
qdT
TTq
dTT
qkukuEQ
T
TT
2
23..1
)(.
.1.1
.])()([
2
23
0
2
0
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Example 2: A constant acceleration (CA) motion*
In that case, the acceleration derivative (or jerk) satisfies:
-Which state vector ?
-Which continuous–time state space representation?
-Which discrete-time state space representation?
)()()( twtxta
* Or « nearly-constant-acceleration model »
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
-Which state vector ?
-Which continuous–time state space representation?
-Which discrete-time state space representation?
)()()( twtxta
* Or « nearly-constant-acceleration model »
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
)()()( twBtxAtx
dBwtAtxttAtxt
t
)()(exp)()(exp)(
0
00
100
102
1
2exp
2
22 T
TT
TAATIAT
Example 2: A constant acceleration (CA) motion*
In that case, the acceleration derivative (or jerk) satisfies:
Therefore, one can consider the following state vector:
It satisfies:
)()()( twtxta
Txxxx ,,
)(.
1
0
0
.
000
100
010
tw
x
x
x
x
x
x
BA
* Or « nearly-constant-acceleration model »
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Given the following Mc Laurin expansion:
Thus, one has
100
102
1
2exp
2
22 T
TT
TAATIAT
dkTwT
TT
kTxT
TT
TkxT
)(
1
0
0
100
102
)(1
)(
100
102
1
))1((
0
22
dkTBwTAkTxATTkxT
)()(exp)(exp))1((
0
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
This leads to:
By defining , one has:
dkTwT
T
kxT
TT
kxT
)(
1
2
)(
)(
100
102
1
)1(
0
22
dkTwT
T
kuT
)(
1
2
)(
)(
0
2
)()()()1( kukxkkx
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
The covariance matrix of the model noise can be:
when it does not change during the sampling period
TTT
TTT
TTT
26
238
6820
.
23
234
345
234
345
456
26
2412
61236
.
TTT
TTT
TTT
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Remark: There is an alternative to the white-noise jerk model:
The Wiener-sequence acceleration model assumes that the acceleration increment is an independent (white noise) process
)(
1
2/²
)()()1( kwT
T
kxkkx
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Remark 2: There are many other motion models such as the so-called Singer acceleration model.
In that case, the autocorrelation of the acceleration satisfies:
This means that the acceleration results from the filtering of a white noise:
mer mxx
.)( 2
)(*)()()( twthtxta
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Remark 2: There are many other motion models such as the so-called Singer acceleration model.
One can show that:
Therefore:
)()(
)()(
)(1
twdt
txdtx
dt
txdtx
m
)(.
1
0
0
.
00
100
010
tw
x
x
x
x
x
x
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Remark 2: There are many other motion models such as the so-called Singer model.
Taking advantage of the Mc Laurin expansion of the « exp » function:
...2
100
...2
10
201
...
00
00
00
2
1
00
00
00
exp
22
2
2
22
2
2
TT
TT
T
T
T
T
T
T
T
IAT
T
T
T
e
e
eTT
00
)1(1
10
)1(1
12
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Remark 2: There are many other motion models such as the so-called Singer acceleration model.
332313
232212
13121122)(
qqq
qqq
qqq
kQ m
)1.(2
1
)1.(2
1
)432.(2
1
)21.(2
1
)2)22(1.(2
1
)143
222.(2
1
233
2
223
2
322
2
313
222
412
23
322
511
T
T
TT
TT
TT
TT
eq
eq
eeTq
eTeq
TTeeTq
eTeT
TTq
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Remark 3: MRU, MUA and Singer models
Singer model
Constant velocity motion Constant acceleration
motion
1
2
2 mq
T
T
T
e
e
eTT
00
)1(1
10
)1(1
12
100
102
12
T
TT
22 mq
10
1 T
0
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Remark 4: other alternatives concerning the model motion
The Singer model is not very suitable for practical maneuvers in which target acceleration is oscillatory
• Markov Acceleration Model for Coordinated Turns
• Asymmetrically Distributed Normal Acceleration Model
• Coordinated Turn Model
System modeling State space rep.. Kalman filter IMM Application
Examples in the continuous time domain
Example 3: AR model identification.
If the purpose is to estimate the parameters from the noise-free observations, the state vector can be defined as follows:
)()(1
kuikyakyp
ii
Tpaakx =)( 1
)()(1)( kxkxΦkx
)()()(
)( )()1()( 1
kukxkH
kuaapkykykyT
p
linear function to update the state vector and linear observation equation
System modeling State space rep.. Kalman filter IMM Application
Examples in the discrete-time domain
Example 4: AR process enhancement when AR parametes are known.
If the purpose is the estimation of the process, the state vector can be defined as follows:
with and
)()(1
kuikyakyp
ii
Tpkykykx 1)+-()(=)(
)()(1)( kuGkxΦkx
0100
00
00
0001
11
pp aaa
Φ
T
p
G
1
001
System modeling State space rep.. Kalman filter IMM Application
Examples in the discrete-time domain
Example 5: AR model with noisy observations: identification and enhancement
If the purpose is to estimate both the parameters and the process from the noise-free observation, the state vector must store the AR parameters and the noise-free process samples
)()(=)z( kbkyk
)()(1
kuikyakyp
ii
System modeling State space rep.. Kalman filter IMM Application
Examples in the discrete-time domain
Example 5: AR model with noisy observations: identification and enhancement
Tp pkykyaakx 1)+-()(=)( 1
)(
O)1(
0100
00
00
0001=)(
11
kuGkx
aaa
O
OI
kx
pp
System modeling State space rep.. Kalman filter IMM Application
Examples in the discrete-time domain
Example 5: AR model with noisy observations.
)(
O)1()1(
0
0
1
)1(
0100
00
00
0001
000
)(
O)1(
0100
00
00
0001=)(
T
11
kuGkx
OO
IOkx
O
kxO
OI
kuGkx
aaa
O
OI
kx
pp
Non-linear function updating the state vector
System modeling State space rep.. Kalman filter IMM Application
Examples in the discrete-time domain
Example 5: AR model with noisy observations.
)(
O)1()1(
0
0
1
)1(
0100
00
00
0001
000
)(
O)1(
0100
00
00
0001=)(
T
11
kuGkx
OO
IOkx
O
kxO
OI
kuGkx
aaa
O
OI
kx
pp
Non-linear function updating the state vector
System modeling State space rep.. Kalman filter IMM Application
Examples in the discrete-time domain
Example 6: GPS measurements.
Non-linear observation equation
1T
2T
3T 111 ,, zyx
222 ,, zyx
333 ,, zyx
222iiii zzyyxxTc
System modeling State space rep.. Kalman filter IMM Application
Examples in the discrete-time domain
Some disturbances: -always: the GPS receiver clock bias with
respect to the GPS reference time
-no multipath: just an additive white Gaussian
(with standard deviation = 8m)
-if mutltipath: mean and variance jump to be estimated.
-satellite anomalies which result in biases or drifts corrupting the
GPS measurements
=>integrity monitoring
Conclusions:
linear or non-linear state space representations
Pb: Knowing well the covariance matrices of the model noise and the additive measurement noise in the state space representation of the system.
System modeling State space rep.. Kalman filter IMM Application
Examples in the discrete-time domain
Contents Part 1: about system modeling Part 2: state space representation of the system
• from the continuous to the discrete-time domain: application to motion target
• AR modeling for various applications Part 3: estimating the state vector by Kalman filtering
• in the linear case • In the non Linear case: EKF, SO-EKF, CDKF, QKF
Part 4: relaxing the assumptions on the model by using Interactive Multiple Model
Part 5: applications
Contents Part 1: about system modeling Part 2: state space representation of the system
• from the continuous to the discrete-time domain: application to motion target
• AR modeling for various applications Part 3: estimating the state vector by Kalman filtering
• in the linear case • In the non Linear case: EKF, SO-EKF, CDKF, QKF
Part 4: relaxing the assumptions on the model by using Interactive Multiple Model
Part 5: applications
Kalman
Kalman filter, a recursive alternative to the Wiener filter
System modeling State space rep.. Kalman filter IMM Application
)()()()()1( kukGkxkΦkx
)()()()( kvkxkHky
Kalman filtering (linear case)
0)()( lvkuET
0)( kuE
)()()()( lkkQlukuET
0)( kvE
)()()()( lkkRlvkvET
Updating equation
Observation equation
0)()0( kuxET
0)()0( kvxET
0k
0k
System modeling State space rep.. Kalman filter IMM Application
Our task: estimating the state vector
By taking into account the information available at time n, which can be before, after or at the instant k.
In so doing, we will consider three different cases:
• k = n: filtering
• k < n: smoothing;
• k > n: prediction.
)(kx
Kalman filtering (linear case)
System modeling State space rep.. Kalman filter IMM Application
Irrespective of which of the above cases is being treated,
Our aim is to obtain a recursive estimation of the state vector by taking advantage of:
-the state space representation of the system
-the definition of the estimate
We will look closely at the ‘propagation’ and ‘update’ steps
)(,),1()()/(ˆ nyykxEnkx
Kalman filtering (linear case)
System modeling State space rep.. Kalman filter IMM Application
Propagation step (1/2):
As one has:
One obtains:
Kalman filtering (linear case)
)(,),1()()()(,),1()(),1(
)(,),1()1()/1(ˆ
kyykuEkGkyykxEkkΦ
kyykxEkkx
0)(,),1()( kyykuE
)/(ˆ),1()/1(ˆ kkxkkΦkkx
System modeling State space rep.. Kalman filter IMM Application
Propagation step (2/2):
Let us look at the relation between a priori error at time k+1 and the a posteriori at time k
The corresponding error covariance matrices hence satisfies:
Kalman filtering (linear case)
)()()/(~),1(
)/(ˆ),1()()()(),1(
)/1(ˆ)1()/1(~
kukGkkxkkΦ
kkxkkΦkukGkxkkΦ
kkxkxkkx
)()()(),1()/(),1()/1( kGkQkGkkΦkkPkkΦkkP TT
System modeling State space rep.. Kalman filter IMM Application
Update step (1/3):
In that case, the a posteriori error at time k satisfies:
Kalman filtering (linear case)
)1/(ˆ)()()()1/(ˆ)/(ˆ kkxkHkykKkkxkkx
)()()1/(~)()(
)()()1/(ˆ)()()(
)1/(ˆ)()()()()()1/(ˆ)(
)1/(ˆ)()()()1/(ˆ)(
)/(ˆ)()/(~
kvkKkkxkHkKI
kvkKkkxkxkHkKI
kkxkHkvkxkHkKkkxkx
kkxkHkykKkkxkx
kkxkxkkx
innovation
System modeling State space rep.. Kalman filter IMM Application
Update step (2/3):
The Kalman gain aims at minimizing the following criterion:
where:
Kalman filtering (linear case)
)1/(ˆ)()()()1/(ˆ)/(ˆ kkxkHkykKkkxkkx
)()()()()1/()()()/( kRKkKkHkKIkkPkHkKIkkP TT
)/(trace)/(~)/(~trace)( kkPkkxkkxkJT
System modeling State space rep.. Kalman filter IMM Application
Kalman filtering (linear case)
0)(
)(
kK
kJ
Update step (3/3):
0
)(
)()()()()()1/()()()()()1/(2trace
kK
kKkRkKkKkHkkPkHkKkKkHkkP TTTTT
)()()()1/()()()()1/( kRkKkHkkPkHkKkHkkP TT
1)()()1/()()()1/()(
kRkHkkPkHkHkkPkK TT
System modeling State space rep.. Kalman filter IMM Application
Kalman filtering (linear case)
Some comments about the Kalman gain:
1
)()()1/()()()1/()(
kRkHkkPkHkHkkPkK TT
Inverse of the covariance matrix
of the innovation
Cross-covariance matrix
between the innovation and
the a priori state prediction
System modeling State space rep.. Kalman filter IMM Application
Spectrogramm of the smoothed
signal
Temps (s)
Fré
qu
ence
Noisy and enhanced signals Spectrogram of the noisy signal
Temps (s)
Fré
qu
ence
Spectrogram of the noise-free
signal
Temps (s)
Fré
qu
ence
Kalman filtering (linear case)
System modeling State space rep.. Kalman filter IMM Application
In the non linear case
))(),(()1( kukxfkx
))(),(()( kvkxgky
Updating equation
Observation equation
Non linear function
Non linear function
System modeling State space rep.. Kalman filter IMM Application
How to address the non-linear case?
Various approaches:
Based on Taylor expansion
-first order expansion => Extended Kalman filter (EKF)
-2nd order expansion => Second-Order Extended Kalman filter (SO-EKF)
Based on Sigma Points
-Unscented transform (UKF)
-Central difference Kalman filter (CDKF)
-Quadrature Kalman filter (QKF)
System modeling State space rep.. Kalman filter IMM Application
Kalman filtering (non linear case)
Various approaches:
Based on Taylor expansion
-first order expansion => Extended Kalman filter (EKF)
-2nd order expansion => Second-Order Extended Kalman filter (SO-EKF)
Based on Sigma Points
-Unscented transform (UKF)
-Central difference Kalman filter (CDKF)
-Quadrature Kalman filter (QKF)
System modeling State space rep.. Kalman filter IMM Application
Using a first order expansion of the non-linear function around the a posteriori estimate at time k-1, one has:
Extended Kalman filter
)())1(()( kukxfkx Updating equation
))1/1(ˆ)1(())1/1(ˆ())1(()1/1(ˆ
kkxkxkkxfkxfkkxf
)())1/1(ˆ)1(())1/1(ˆ(
)())1(()(
)1/1(ˆkuGkkxkxkkxf
kuGkxfkx
kkxf
System modeling State space rep.. Kalman filter IMM Application
A first relation can be hence obtained as follows:
The corresponding error satisfies:
)())1(()( kukxfkx Updating equation
))1/1(ˆ(
)1()...1(/)(
))1/1(ˆ)1/(ˆ())1/1(ˆ()1/(ˆ)1/1(ˆ
kkxf
kyykuGE
kkxkkxkkxfkkxkkxf
)()1/1(~
))1/1(ˆ(
)())1/1(ˆ)1(())1/1(ˆ(
)1/(ˆ)()1/(~
)1/1(ˆ
)1/1(ˆ
kuGkkx
kkxf
kuGkkxkxkkxf
kkxkxkkx
kkxf
kkxf
System modeling State space rep.. Kalman filter IMM Application
Extended Kalman filter
The a priori error satisfies
The a priori error satisfies
The jacobian plays the same role as the updating matrix.
)())1(()( kuGkxfkx Non-Linear case
)()1/1(~)1/(~)1/1(ˆ
kuGkkxkkxkkxf
Linear case )1()1()1()( kuGkxkΦkx
)()()1/1(~)1,()1/(~ kukGkkxkkΦkkx
System modeling State space rep.. Kalman filter IMM Application
Extended Kalman filter
Let us focus our attention on the a posteriori estimation of the state vector.
A first relation can be hence obtained as follows:
The innovation can hence be expressed by:
)())(()( kvkxgky Observation equation
)())1/(ˆ)(())1/(ˆ(
)())(()(
)1/(ˆkvkkxkxkkxg
kvkxgky
kkxg
)())1/(ˆ)(())1/(ˆ()()1/(ˆ
kvkkxkxkkxgkykkxg
System modeling State space rep.. Kalman filter IMM Application
Extended Kalman filter
The innovation is defined by:
The innovation is defined by:
The jacobian plays the same role as the observation matrix.
)())1(()( kuGkxfkx Non-Linear case
Linear case )1()1()1()( kuGkxkΦkx
)())1/(ˆ)(()1/(ˆ
kvkkxkxkkxg
)()1/(ˆ)()()1/(ˆ)()()()( kvkkxkxkHkkxkHkvkxkH
System modeling State space rep.. Kalman filter IMM Application
Extended Kalman filter
Contents Part 1: about system modeling Part 2: state space representation of the system
• from the continuous to the discrete-time domain: application to motion target
• AR modeling for various applications Part 3: estimating the state vector by Kalman filtering
• in the linear case • In the non Linear case: EKF, SO-EKF, CDKF, QKF
Part 4: relaxing the assumptions on the model by using Interactive Multiple Model
Part 5: applications
Relaxing the assumptions: multiple models (MM)
In the MM estimation, the possible system behavior can be represented by a set of models. A bank of filters runs in parallel at every time, each based on a particular model, to obtain the model-conditional estimates. Overall state estimate is a certain combination of these model-conditional estimates.
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM)
Cooperation strategy
)1/1( kkPn
… Filter 2
)/(ˆ2 kkxm
)/(2 kkPm
)1/1(ˆ2 kkx
)1/1(2 kkP
Filter 1
)/(ˆ1 kkxm
)/(1 kkPm
)1/1(ˆ1 kkx
)1/1(1 kkP
Filter n
)/(ˆ kkxmn
)/( kkPmn
)1/1(ˆ kkxn
Output strategy
)1/1(ˆ kkx f
)1/1( kkPf
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM)
Cooperation strategy
)1/1( kkPn
… Filter 2
)/(ˆ2 kkxm
)/(2 kkPm
)1/1(ˆ2 kkx
)1/1(2 kkP
Filter 1
)/(ˆ1 kkxm
)/(1 kkPm
)1/1(ˆ1 kkx
)1/1(1 kkP
Filter n
)/(ˆ kkxmn
)/( kkPmn
)1/1(ˆ kkxn
Output strategy
)1/1(ˆ kkx f
)1/1( kkPf
Three main generations
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): cooperation strategy
… Filter 2
)/(ˆ2 kkx
)/(2 kkP
)1/1(ˆ2 kkx
)1/1(2 kkP
Filter 1
)/(ˆ1 kkx
)/(1 kkP
)1/1(ˆ1 kkx
)1/1(1 kkP
Filter n
)/(ˆ kkxn
)/( kkPn
)1/1(ˆ kkxn
)1/1( kkPn
Output Strategy
)1/1(ˆ kkx f
)1/1( kkPf
Delay Delay Delay
1st generation: Independant filters
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): cooperation strategy
2nd generation: dependant filters
… Filter 2
)/(ˆ2 kkx
)/(2 kkP
)1/1(ˆ2 kkx
)1/1(2 kkP
Filter 1
)/(ˆ1 kkx
)/(1 kkP
)1/1(ˆ1 kkx
)1/1(1 kkP
Filter n
)/(ˆ kkxn
)/( kkPn
)1/1(ˆ kkxn
)1/1( kkPn
Output Strategy
)1/1(ˆ kkx f
)1/1( kkPf
Interactive multiple models (IMM)
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): cooperation strategy
3rd generation: The number of filters
may vary in time
)1/1( kkPf
…
Cooperation strategy
Filter 2
)/(ˆ2 kkxm
)/(2 kkPm
)1/1(ˆ2 kkx
)1/1(2 kkP
Filter 1
)/(ˆ1 kkxm
)/(1 kkPm
)1/1(ˆ1 kkx
)1/1(1 kkP
)/(ˆ kkxmn
)/( kkPmn
)1/1(ˆ kkxn
)1/1( kkPn
Output strategy
)1/1(ˆ kkx f
Filter n
)/(ˆ kkx imn
)/( kkP imn
)1/1(ˆ kkx in
)1/1( kkP in
Filter n+i …
« Recursive Adaptive Model Set » (RAMS)
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): cooperation strategy
3rd generation: The number of filters
may vary in time
)1/1( kkPf
« Recursive Adaptive Model Set » (RAMS)
Model-Group Switching: Using IMM with
an active set of models.
There is a priori the definition of the subsets
M M4
M1
M3
M2
:a model
M M4
M1
M3
M2
Instant k Instant k+1
M2 is active M3 is active
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): cooperation strategy
3rd generation: The number of filters
may vary in time
)1/1( kkPf
« Recursive Adaptive Model Set » (RAMS)
Likely Model Set: Using IMM with
an active set of models
The subsets change in time
M
:a model
M
Instant k Instant k+1
Mi
Mi
Mimp
Mimp
:Mimp: subset of non-probable models
:Mi :subset of models used for the estimation
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): cooperation strategy
3rd generation: The number of filters
may vary in time
)1/1( kkPf
« Recursive Adaptive Model Set » (RAMS)
This requires hypothesis test to select which models are active
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
Cooperation strategy
)1/1( kkPn
… Filter 2
)/(ˆ2 kkxm
)/(2 kkPm
)1/1(ˆ2 kkx
)1/1(2 kkP
Filter 1
)/(ˆ1 kkxm
)/(1 kkPm
)1/1(ˆ1 kkx
)1/1(1 kkP
Filter n
)/(ˆ kkxmn
)/( kkPmn
)1/1(ˆ kkxn
Output strategy
)1/1(ˆ kkx f
)1/1( kkPf
Two main strategies
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
Two main strategies -Hard decision
… )1/1(ˆ
2 kkx
)1/1(2 kkP
)1/1(ˆ1 kkx
)1/1(1 kkP
)1/1(ˆ kkxn
)1/1( kkPn
)1/1(ˆ2 kkx
)1/1(2 kkP
… … …
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
Two main strategies -Soft decision
… )1/1(ˆ
2 kkx
)1/1(2 kkP
)1/1(ˆ1 kkx
)1/1(1 kkP
)1/1(ˆ kkxn
)1/1( kkPn
)1/1(ˆ kkx f
)1/1( kkPf
… … …
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
Two main strategies -Soft decision -Hard decision
How to choose the best filter or how to combine all the filters? Defining weights by taking advantage of the likelihood of each model
that can be defined from the state vector estimate and the error covariance matrix
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
How to choose the best filter or how to combine all the filters?
Two steps to define the weights
1. a priori step: using a Markov Chain where a state corresponds to a model assumption 2. a posteriori step: updating the weights by using a new observation and more particularly the likelihood corresponding to each estimator
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
1. a priori step: using a Markov Chain where a state corresponds to a model assumption. Example with 3 models
3/32/31/3
3/22/21/2
3/12/11/1
1
2 3
2112
322331
13
3322
11
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
1. a priori step: using a Markov Chain where a state corresponds to a model assumption. Example with 3 models
8.01.01.0
2.06.02.0
1.005.085.0
1
8.02.01.0
1.06.005.0
1.02.085.0
321
3213
3212
3211
ppp
pppp
pppp
pppp
39.0
15.0
46.0
3
2
1
p
p
p
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
1. a priori step: given the Markov Chain with a priori transition probabilities, defining the probability that the ith assumption corresponding to the ith estimator corresponds to the true model at time k: Value of the weight at time k+1 using the Markov Chain:
)(ki 1)(1
n
ii k
If n models
n
iiijj kkk
1
)()/1( 1)/1(1
n
jj kk
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
1. a priori step: . Remark:
)/1()1/(
)(1
kkkk
kjththeiskatandiththeisktimeatstateP
jji
iij
)/1(
)()1/(
kk
kkk
j
iij
ji
1)/1(
)/1(
)/1(
)()1/(
11
kk
kk
kk
kkk
j
jn
i j
iijn
iji
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
2. a posteriori step: updating the weights by using a new observation and more particularly the likelihood corresponding to each estimator For a specific filter, let us recall the way the state vector estimation is updated when a new observation is available:
The corresponding likelihood is defined as follows:
)(~)()(~2
1
2/1
1
.)()2(
1)(
kykSky
iNi
iiT
ie
kSk
)(~)()1/(ˆ)(ˆ)()()1/(ˆ
)1/(ˆ)()()()1/(ˆ)/(ˆ
kykKkkxkykykKkkx
kkxkHkykKkkxkkx
Innovation
covariance
matrix
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
2. a posteriori step: updating the weights If mi(k+1) means that the ith model is the true one at time k+1, one can express the likelihood and the weight as follows
))(),...,3(),2(),1(),1(/)1(~()1( kyyyykmkypk iii
))(),...,3(),2(),1(/)1(()/1( kyyyykmPkk ii
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
2. a posteriori step: updating the weights Let us recall the Bayes rule in a general case and apply it in a specific case:
n
iii
iiiii
ApAxp
ApAxp
xp
ApAxpxAp
1
)()./(
)()./(
)(
)()./()/(
n
iiii
iii
ii
kyykmPkyykmkyp
kyykmPkyykmkyp
kykyykmP
1
)(),...,1(),1()(),...,1(),1(/)1(~
)(),...,1(/)1()(),...,1(),1(/)1(~
)1(~),(),...,1(/)1(
)1(~ kyxi
)(),...,1(/)1( kyykmA ii
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
2. a posteriori step: updating the weights
n
iiii
iiiii
kyykmPkyykmkyp
kyykmPkyykmkypkykyykmP
1
)(),...,1(),1()(),...,1(),1(/)1(~
)(),...,1(/)1()(),...,1(),1(/)1(~)1(~),(),...,1(/)1(
)1( ki )/1( kki
)1( kj )/1( kkj
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
Weight prediction Weight filtering
)1( kj
)(,...,1 kN )1(,...,1 kN
)1/(/ kkji
n
jjj
iii
kkk
kkkk
1
)/1()1(
)/1()1()1(
2. a posteriori step: updating the weights
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
Cooperation strategy
)1/1( kkPn
… Filter 2
)/(ˆ2 kkxm
)/(2 kkPm
)1/1(ˆ2 kkx
)1/1(2 kkP
Filter 1
)/(ˆ1 kkxm
)/(1 kkPm
)1/1(ˆ1 kkx
)1/1(1 kkP
Filter n
)/(ˆ kkxmn
)/( kkPmn
)1/1(ˆ kkxn
Output strategy
)1/1(ˆ kkx f
)1/1( kkPf
n
iiji
mj
kkxkk
kkx
1
)/(ˆ)1/(
)/(ˆ
n
imjiiji
mj
kPkkPkk
kkP
1
)]()/()[1/(
)1/(
)/(ˆ)/(ˆ)(ˆ
)(ˆ).(ˆ)(
kkxkkxkx
kxkxkP
jmimij
Tmijmijmij
System modeling State space rep.. Kalman filter IMM Application
Relaxing the assumptions: multiple models (MM): output strategy
Cooperation strategy
)1/1( kkPn
… Filter 2
)/(ˆ2 kkxm
)/(2 kkPm
)1/1(ˆ2 kkx
)1/1(2 kkP
Filter 1
)/(ˆ1 kkxm
)/(1 kkPm
)1/1(ˆ1 kkx
)1/1(1 kkP
Filter n
)/(ˆ kkxmn
)/( kkPmn
)1/1(ˆ kkxn
Output strategy
)1/1(ˆ kkx f
)1/1( kkPf
n
iii
f
kkxk
kkx
1
)1/1(ˆ)1(
)1/1(ˆ
n
ifiii
f
kPkkPk
kkP
1
)]1()1/1()[1(
)1/1(
)1/1(ˆ)1/1(ˆ)1(~
)1(~).1(~)1(
kkxkkxkx
kxkxkP
iffi
Tfififi
System modeling State space rep.. Kalman filter IMM Application
Contents Part 1: about system modeling Part 2: state space representation of the system
• from the continuous to the discrete-time domain: application to motion target
• AR modeling for various applications Part 3: estimating the state vector by Kalman filtering
• in the linear case • In the non Linear case: EKF, SO-EKF, CDKF, QKF
Part 4: relaxing the assumptions on the model by using Interactive Multiple Model
Part 5: applications
Contents Part 1: about system modeling Part 2: state space representation of the system
• from the continuous to the discrete-time domain: application to motion target
• AR modeling for various applications Part 3: estimating the state vector by Kalman filtering
• in the linear case • In the non Linear case: EKF, SO-EKF, CDKF, QKF
Part 4: relaxing the assumptions on the model by using Interactive Multiple Model
Part 5: applications
Target tracking
System modeling State space rep.. Kalman filter IMM Application
Various models can be considered, but the state vector can change. Some authors suggest using some relations between the state vectors.
2.56 2.58 2.6 2.62 2.64 2.66 2.68
x 104
2.53
2.54
2.55
2.56
2.57
2.58
2.59
2.6
2.61
2.62x 10
4
x
y
position recherchée
2.54 2.56 2.58 2.6 2.62 2.64 2.66
x 104
2.52
2.54
2.56
2.58
2.6
2.62
2.64x 10
4
X
Y
Scénario dans le repère cartésien fixe
valeur réelle
valeur mesurée
valeur estimée
True motion
Observations
Estimated motion
Constant velocity model
2.54 2.56 2.58 2.6 2.62 2.64 2.66
x 104
2.52
2.54
2.56
2.58
2.6
2.62
2.64x 10
4
X
Y
Scénario dans le repère cartésien fixe
valeur réelle
valeur mesurée
valeur estimée
Target tracking
System modeling State space rep.. Kalman filter IMM Application
Various models can be considered, but the state vector can change. Some authors suggest using some relations between the state vectors.
2.56 2.58 2.6 2.62 2.64 2.66 2.68
x 104
2.53
2.54
2.55
2.56
2.57
2.58
2.59
2.6
2.61
2.62x 10
4
x
y
position recherchée True motion
Observations
Estimated motion
Rotational model assumption
2.54 2.56 2.58 2.6 2.62 2.64 2.66
x 104
2.52
2.54
2.56
2.58
2.6
2.62
2.64x 10
4
X
Y
Scénario dans le repère cartésien fixe
valeur réelle
valeur mesurée
valeur estimée
2.54 2.56 2.58 2.6 2.62 2.64 2.66
x 104
2.52
2.54
2.56
2.58
2.6
2.62
2.64x 10
4
X
Y
Scénario dans le repère cartésien fixe
valeur réelle
valeur mesurée
valeur estimée
Target tracking
System modeling State space rep.. Kalman filter IMM Application
Various models can be considered, but the state vector can change. Some authors suggest using some relations between the state vectors.
2.56 2.58 2.6 2.62 2.64 2.66 2.68
x 104
2.53
2.54
2.55
2.56
2.57
2.58
2.59
2.6
2.61
2.62x 10
4
x
y
position recherchée True motion
Observations
Estimated motion
IMM combining Singer and constant velocity models
7.03.0
1.09.0
Questions ?
System modeling State space rep.. Kalman filter IMM Application