Professional Documents
Culture Documents
ESCPI- CNAM
EI 4
Fvrier 2006
M. Terr, terrre@cnam.fr
L. Fty, fety@cnam.fr
ESCPI EI4
ANALYSE SPECTRALE.................................................................................................................................. 6
2.1
2.2
2.2.1
2.2.2
2.3
2.3.1
2.3.2
Mthode de Prony:............................................................................................................................. 14
2.4
2.4.1
Modlisation AR................................................................................................................................. 18
2.4.2
Modlisation MA................................................................................................................................ 25
2.4.3
2.5
3
CONCLUSION............................................................................................................................................... 27
3.2
3.3
3.4
3.4.1
3.5
3.5.1
Principe.............................................................................................................................................. 43
3.5.2
3.5.3
3.5.4
3.5.5
Algorithme.......................................................................................................................................... 51
3.6
4
CONCLUSION............................................................................................................................................... 52
BIBLIOGRAPHIE........................................................................................................................................... 53
ESCPI EI4
La dmarche la plus intuitive et naturelle pour reprsenter un signal consiste exprimer la valeur de ce dernier au
cours du temps. La variable choisie est alors le temps t et le signal s'exprime sous la forme d'une fonction x(t).
Lorsque la fonction x(t ) est parfaitement dtermine, on parle de signal dterministe. De tels signaux ont t
rencontrs de nombreuses occasions lors des cours prcdents.
On s'est ainsi intress aux signaux sinusodaux : x(t ) = sin (t ) ou des signaux chelons : x(t ) = U (t ) ou encore
d'autre types de signaux.
Cependant, lorsque l'on s'intresse des signaux rels, comme la valeur d'une tension aux bornes d'une rsistance ou
la valeur du courant parcourant une antenne ou d'autres exemples; on conoit bien que les valeurs du signal
observ vont tre fonction d'une multitude de phnomnes. Si l'on reprend l'exemple de la rsistance, la valeur de la
tension va varier continuellement autour d'une valeur moyenne en fonction de l'agitation des lectrons, pour une
antenne l'environnement lectromagntique va tre responsable de nombreuses variations et l'on conoit
intuitivement qu'il est impossible de dterminer de manire tout fait exacte la valeur du signal x(t ) .
On formalise alors le signal comme tant une variable alatoire qui volue dans le temps et l'on parle de processus
alatoire. En formalisant on pourrait introduire la variable alatoire X (t ) et la distinguer de x(t ) qui reprsente la
valeur prise par cette variable alatoire l'instant t. Ds lors l'ensemble des valeurs du signal x(t ) est considr
comme tant une ralisation particulire d'un processus alatoire.
Ds que l'on introduit cette notion de variable alatoire on conoit que l'on va s'intresser trs rapidement aux
probabilits lies cette variable alatoire, sa densit de probabilit si la variable est continue et enfin ses
moments statistiques (moyenne, covariance, et ventuellement des moments d'ordres plus levs).
Un exemple typique, qui sera repris plus en dtail dans la suite du cours, est le cas du bruit blanc gaussien que l'on
rencontre trs souvent dans les problmes de traitement du signal et de communications numriques. Or ce signal
particulier est justement dfini par les adjectifs blanc et gaussien qui caractrisent parfaitement sa densit de
probabilit (gaussien) et ses moments d'ordre deux (blanc).
Partant dornavant de signaux alatoires, ce qui est le cas le plus gnral que l'on puisse envisager, nous allons ds
maintenant considrer un sous ensemble de ces signaux qui seront les signaux stationnaires.
Dfinition de la stationnarit :
Un signal alatoire est dfini chaque instant t par la loi de probabilit de son amplitude X (t ) . Cette loi de
probabilit peut s'exprimer par une densit de probabilit p X ( x, t ) dfinie de la manire suivante :
p X (x, t ) = lim
x 0
Prob[x X (t ) x + x ]
x
(1.)
Le signal est stationnaire si ses proprits statistiques sont indpendantes du temps, c'est dire, si sa densit de
probabilit est indpendante du temps :
ESCPI EI4
p X ( x, t ) = p X ( x )
(2.)
x. p X (x, t )dx
(3.)
m 2 (t 1 , t 2 ) = E [ X (t 1 ), X (t 2 )] =
x1 .x 2 p X (x1 , x 2 ; t 1 , t 2 )dx1 dx 2
(4.)
Le caractre de stationnarit peut tre limit aux moments du premier et du second ordre, on dit alors que le signal
est stationnaire l'ordre 2. On a alors :
m1 = E [X (t )] =
x. p X (x )dx ,
(5.)
Seul intervient l'cart entre les deux instants d'observation. On introduit alors la fonction d'autocorrlation r XX ( )
du signal alatoire :
r XX ( ) = E [ X (t )X (t )]
(6.)
La ralisation x(t ) du signal alatoire X (t ) possde aussi une moyenne temporelle mT dfinie par :
+T
1
x(t )dt
T 2T
T
mT = lim
(7.)
On dira que le signal est ergodique lorsque que l'on peut confondre la moyenne temporelle mT avec la moyenne
m1 :
+T
1
x(t )dt
T 2T
T
m1 = lim
(8.)
et lorsque que l'on peut calculer la fonction d'autocorrlation de la mme manire, c'est dire :
ESCPI EI4
+T
1
x(t ) x(t )dt
T 2T
T
rxx ( ) = lim
(9.)
Ce rsultat a des consquences pratiques trs importantes car il va permettre d'accder aux proprits statistiques du
signal un instant donn partir de l'observation de ce signal au cours du temps.
Les dveloppements prcdents ont essentiellement concern des signaux valeurs relles. Ces signaux
correspondent intuitivement et physiquement la plupart des signaux rencontrs. Lorsque l'on considre une valeur
de tension ou de courant et que l'on se place derrire un convertisseur analogique numrique, les signaux sont bien
entendu rels. Cependant, dans bien des cas, en particulier en communications numriques, on sera amen traiter
des enveloppes complexes de signaux moduls (voir aussi la dfinition du signal analytique). Il est donc ncessaire,
afin de ne pas restreindre la gnralit de la suite des algorithmes et mthodes prsentes dans ce cours, de
considrer dornavant des signaux valeurs complexes.
De plus on a jusqu'alors bien spar le processus X (t ) et sa ralisation x(t ) . Cependant afin d'viter de confondre
le processus et la Transforme de Fourier X ( f ) de sa ralisation, on abandonnera partir de maintenant la notation
X (t ) . Le lecteur avis sera mme de comprendre les critures du type E [x(t )] comme l'esprance de la variable
alatoire.
Rsum :
+T
1
x(t )dt = m
T 2T
T
E [x(t )] = lim
+T
1
*
x(t ) x (t )dt = rxx ( )
T 2T
T
E x(t ) x * (t ) = lim
ESCPI EI4
Analyse Spectrale
Il existe deux grandes classes de mthodes pour estimer la densit spectrale de puissance d'un signal x(t). La
premire, l'estimation spectrale non paramtrique, n'utilise aucune connaissance a priori sur le signal et part
uniquement de l'observation de ce dernier. La deuxime, l'estimation spectrale paramtrique, utilise un modle
paramtrique dcrivant le signal, modle partir duquel il est ais d'obtenir la densit spectrale de puissance. Les
paramtres du modle sont adapts en fonction du signal observ. Entre ces deux mthodes il existe une troisime
classe d'approches qui suppose que le signal est compos d'un certain nombre de raies spectrales dont il convient de
trouver les frquences et les puissances. Ce type de mthodes sera class dans ce cours sous l'appellation
d'estimation spectrale par dcomposition harmonique.
Priodogramme, Corrlogramme
La Transforme de Fourier de la fonction d'autocorrlation rxx () du processus alatoire x(t ) stationnaire l'ordre
2 s'crit:
P( f ) =
rxx ( )e
j 2 f
(10.)
r ( 0 ) = E x (t ) 2 =
P( f )e
j 2 0
P( f )df
df =
(11.)
+T
1
2
x (t ) dt = P( f )df
t 2T
T
E x (t ) 2 = lim
(12.)
P(f) reprsente donc bien le densit spectrale de puissance du processus x(t ) . Il s'agit l du thorme de Wiener
Kintchine.
ESCPI EI4
L'hypothse ergodique permettant de confondre l'esprance mathmatique avec une moyenne temporelle, le
dveloppement de r() donne :
P( f ) =
1
Tlim
2T
+T
*
j 2 f
d
x(t )x (t )e
(13.)
x(t )e
X 2T ( f ) =
j 2 ft
dt
(14.)
1
1
2
X 2T ( f ) =
x(u )x * (v)e j 2 fu e + j 2 fv dudv
2T
2T T T
(15.)
1
1
2
j 2 f (u v )
E
X 2T ( f ) =
dudv
rxx (u v)e
2T
2T T T
(16.)
= u v
v' = v
+2T
+T
+T
-T
+T
-T
v'
v
-T
-2T
2T T
2T T
1
1
2
j 2 f
E
X 2T ( f ) =
ddv' + rxx ( )e j 2 f ddv'
rxx ()e
2T
2T =0 v '= T
=0 v '=T
2T
2T
1
1
2
j 2 f
E
X 2T ( f ) =
d + rxx ( )( 2T + )e j 2 f d
rxx ( )(2T )e
2T
2T =0
=0
(17.)
(18.)
ESCPI EI4
d'o finalement :
2T
1
2
E
X 2T ( f ) = rxx ( ) 1
2T
2T
= 2T
j 2 f
e
d
(19.)
1
2
E
X 2T ( f ) = TF rxx ( ) 1
2T
2T
I 4T
(20.)
1
2
E
X 2T ( f ) = P ( f ) * TF 1
2T
2T
I 4T
(21.)
On obtient donc :
Lorsque T tend vers l'infini, le deuxime terme du produit de convolution tend vers ( f ) , d'o :
1
2
lim E
X 2T ( f ) = P( f )
2
T
(22.)
En considrant alors un cas numrique, o l'observation du signal x(t ) se rsume N valeurs chantillonnes la
priode Te , la densit spectrale peut tre estime en limitant l'intgrale prcdente et en oubliant l'esprance
mathmatique.
d'o :
Pper ( f ) =
2
1 N 1
j 2 nTe f
x
(
nT
)
e
e
NTe n =0
(23.)
Cet estimateur de la densit spectrale de la densit spectrale de puissance du signal x( nTe ) est appel
priodogramme.
Il demande, pour tre calcul, la mise au carr de la Transforme de Fourier du signal numrique x( nTe ) sur N
points. Il est, depuis la mise au point de l'algorithme de Transformation de Fourier Rapide (TFR ou FFT en anglais)
par J. Cooley et J. Tuckey en 1965, l'estimateur le plus employ.
Jusqu' la mise au point de l'algorithme de la FFT, la mthode la plus utilise consistait estimer N ' valeurs de la
fonction d'autocorrlation r ( p ) avec N ' < N et calculer la Transforme de Fourier Discrte (TFD ou DFT en
anglais) sur les N ' points obtenus. Cet estimateur de la densit spectrale de puissance, du aux travaux de Blackman
et Tuckey, porte le nom de corrlogramme.
Pcor ( f ) =
N '1
rxx ( p)e j 2 pf
(24.)
p = ( N '1)
avec :
ESCPI EI4
r( p) =
1 N 1
x ( n) x ( n p ) *
N n= p
(25.)
pour p = 0 N '1
Pour N ' = N les estimateurs du priodogramme et du corrlogramme sont identiques.
En effet,
N 1
N 1
1
x(n )x(n p) * e j 2 pf
N p = ( N 1) n = p
(26.)
N 1
N 1
1
x(n)e j 2 nf x(n p) * e j 2 (n p ) f
N p = ( N 1) n = p
(27.)
Pcor ( f ) =
d'o:
Pcor ( f ) =
(28.)
Proprits du priodogramme:
Le priodogramme constituant un estimateur de la densit spectrale de puissance du processus x( nTe ) , il est
ncessaire d'tudier son biais et sa variance.
avec : r( p ) =
(29.)
1 N 1
x( n ) x( n p )*
N n= p
d'o:
N 1
E Pper ( f ) =
rxx ( p )
p = ( N 1)
N p j 2 pf
e
N
(30.)
N sin f
(31.)
ESCPI EI4
L'estimateur du priodogramme est donc une estimation biais de la densit spectrale de puissance P ( f ) du
processus x( nTe ) . L'estimateur est en fait le rsultat du filtrage, dans le domaine frquentiel de P( f ) par le filtre
sin fN
N
N sin f
. Lorsque N tend vers l'infini ce filtre tend vers ( f ) , le priodogramme est donc asymptotiquement
sans biais.
sin (2 fN )
Var Pper ( f ) = P( f )1 + N
2 fN
Cette variance peut tre diminue en sparant l'ensemble des N valeurs de x( nTe ) en
(32.)
N
sous ensembles de K < N
K
valeurs. Il est alors possible de calculer K estimateurs et de faire la moyenne des K estimateurs obtenus. La variance
est alors divise par K 2 . Cette amlioration de la variance de l'estimateur se paye par une diminution de rsolution
de ce dernier. En effet la rsolution spectrale est en
1
1
dans le cas de N chantillons et en
dans le cas de K
NTe
KTe
chantillons.
sin fn
En conclusion, le priodogramme est un estimateur de la densit spectrale de puissance qui est d'autant meilleur que
le signal est observ sur une longue plage de stationnarit. L'algorithme de la Transforme de Fourier Rapide est
bien connu et la plupart des processeurs de signaux sont vendus avec des routines de TFR optimises. Cet estimateur
est donc ais utiliser et c'est la raison pour laquelle c'est l'estimateur le plus employ aujourd'hui.
10
ESCPI EI4
2.2.2
Pour chaque frquence f, cette mthode cherche un filtre adapt dont la rponse vaut 1 pour cette frquence f et 0
partout ailleurs. Une fois ce filtre obtenu l'estimateur PCap ( f ) n'est autre que la puissance de sortie du filtre obtenu
pour la frquence f.
y( n ) =
hi* x ( n i )
(33.)
i =0
y( n ) = H X ( n )
(34.)
x ( n)
h1
h
x(n 1)
avec H = 2 et X (n) =
M
x(n N + 1)
h N
F = e j 4 f
M
e j 2 Nf
(35.)
+ 1 H T F est minimal
1
RN F
2
(36.)
2
F R N1 F
T
(37.)
d'o finalement :
H=
R N1 F
F T R N1 F
(38.)
11
ESCPI EI4
] [
PCap ( f ) =
(39.)
F T R N1 R N R N1+1 F
(40.)
F T R N1 FF T R N1 F
PCap ( f ) =
(41.)
F R N1 F
T
or :
F T R N1 F = [1, e j 2 f , e j 4 f ,..., e j 2 Nf ]
kl
1
e j 2 f
e j 2 Nf
(42.)
d'o:
PCap ( f ) =
1
N N
kl e
(43.)
j 2 ( k l ) f
k =0l =0
Cette mthode souffre donc d'un cot de calcul suprieur aux estimateurs prcdents. Il est possible de dmontrer
que cet estimateur une variance minimale et c'est la raison pour laquelle il est souvent appel estimateur du
minimum de variance.
Mthode de Pisarenko:
Dans cette mthode, le signal x(n) est suppos tre constitu d'une somme de N sinusodes s (n) et d'un bruit blanc
additif b(n) .
x( n ) = s( n ) + b( n )
(44.)
12
ESCPI EI4
2N
s ( n ) = a m s ( n m)
m =1
d'o:
2N
x(n) = a m s (n m ) + b(n)
m =1
2N
m =0
m =0
a m x ( n m) = a m b ( n m)
a 2 N
d'o:
R 2 N +1 A = E (S (n) + B ( n) )B (n) T A
Or, le bruit est suppos blanc, de variance 2 et dcorrl du mlange de sinusodes, cette quation devient donc:
R 2 N +1 A = 2 IA = 2 A
Le vecteur A est donc le vecteur propre associ la valeur propre 2 avec la contrainte a0 = 1 .
Ayant le vecteur A, on peut crire la transforme en Z de l'quation:
2N
s ( n ) = a m s ( n m)
m =1
2N
S (Z ) 1 a m Z m = 0
m =1
les valeurs de Z pour lesquelles cette quation est vrifie donnent les valeurs des frquences prsentes dans le
2N
a m Z m
m =1
13
ESCPI EI4
Si N et 2 ne sont pas connus a priori, il suffit de surdimensionner la matrice R et d'analyser ses valeurs propres.
Thoriquement celles ci doivent, au bout de N ordres, atteindre une valeur constante gale
2 . Il existe de
Enfin, il est possible d'obtenir les puissances des sinusodes dtectes. En effet, il est facile de vrifier que, dans le
cas d'un mlange de N sinusodes de pulsation i et de puissance Pi , on a :
r (1) = P1 cos 1 + P2 cos 2 + ... + PN cos N
r ( 2) = P1 cos 21 + P2 cos 2 2 + ... + PN cos 2 N
...
disposant des pulsations i et des coefficients d'autocorrlation r (i ) , il "suffit" de rsoudre ce systme pour trouver
les puissances respectives Pi des raies spectrales identifies.
enfin si l'on veut les puissances, rsoudre un systme rel de N quations N inconnues.
La dcomposition en lments propres reste pour l'instant l'tape la plus dlicate raliser de manire rapide et c'est
le frein principal l'emploi de cette mthode.
2.3.2
Mthode de Prony:
Dans cette mthode le signal est, comme dans la mthode de Pisarenko, suppos tre constitu d'une somme de N
sinusodes mais le bruit est remplac par un amortissement sur ces dernires. L'hypothse de dpart s'crit donc :
N
x ( n) =
bm Z mn
m =1
avec :
Z m = e m e j 2 f m
( Z ) = (Z Z k ) =
k =1
a i Z N i
avec a0 = 1
i =0
14
ESCPI EI4
x( n m) = bl Z ln m
l =1
m =0
m =0
l =1
a m x(n m) = a m bl Z lnm
ou encore :
N
m =0
l =1
m =0
a m x(n m) = bl Z ln N a m Z lN m
or
a m Z lN m = 0
par dfinition des coefficients a m du polynme ( Z ) dont les racines sont les Z l , d'o :
m =0
a m x ( n m) = 0
m =0
et donc :
N
x ( n) = a m x ( n m)
m =1
Les coefficients a m peuvent donc tre obtenus par la rsolution du systme linaire de dimension N suivant :
x( N + 1) x( N )
.
x( N + 1)
=
.
.
x(2 N ) x(2 N )
.
.
.
.
. x(1) a1
. x(2) .
.
. .
. x( N ) a N
a m Z mi avec a0 = 1
( Z ) =
m =0
et d'en extraire les N racines complexes. Les modules de ces racines donnent alors les affaiblissements m tandis
que les phases donnent les frquences f m .
Les amplitudes respectives bm des diffrentes sinusodes peuvent enfin tre obtenues en rsolvant le systme
linaire suivant :
1
Z
1
.
N 1
Z 1
1
Z2
.
.
.
1 b1 x0
. Z N . .
.
. . .
. Z NN 1 b N x N 1
15
ESCPI EI4
suit un modle donn. Ce modle comporte un certain nombre de paramtres qui sont adaptables en fonction du
signal observ. Il existe principalement trois grandes classes de modles:
Le modle auto rgressif - modle AR Le signal x( n) est suppos tre prdictible en fonction d'un certain nombre de ses valeurs antrieures.
x(n)
x(n-1)
x(n-2)
x(n-N)
x( n) = a i x(n i ) + e(n)
i =1
quation o les coefficients ( ai )i =1, N constituent les paramtres du modle et o e(n) est un bruit blanc dcorrl de
x(n) de variance 2 et qui reprsente l'erreur de prdiction.
X (Z ) 1 a i Z i = E (Z )
i =1
Le signal x( n) peut donc tre vu comme le rsultat du passage d'un bruit blanc e( n) de variance 2 travers un
filtre de fonction de transfert H ( Z ) .
e( n )
x( n )
H( Z )
16
ESCPI EI4
avec : H (Z ) =
1 a i Z i
i =1
La connaissance des paramtres ai permet donc de calculer la densit spectrale de puissance P(f):
2
Par ( f ) =
1 a i e j 2 fi
i =1
Le modle moyenne ajuste - modle MA Le signal x(n) est suppos pouvoir s'crire comme une combinaison linaire d'chantillons dcorrls entre eux, ce
qui peut se formaliser comme une combinaison linaire d'chantillons d'un bruit blanc e(n) :
M
x(n ) = bi e(n i )
i =0
Le signal x( n) peut donc tre vu comme le rsultat du passage d'un bruit blanc e(n) travers un filtre de fonction
de transfert H ( Z ) .
e( n )
x( n )
H( Z )
avec : H (Z ) =
bi Z i
i =0
Pma ( f ) =
bi e j 2fi 2
i =0
Le modle auto rgressif moyenne ajuste - modle ARMACombinaison des modles AR et MA o le signal x(n) o le signal x( n) est suppos pouvoir s'crire en fonction de
x ( n) = a i x ( n i ) +
i =1
bi e(n i )
i =0
d'o:
17
ESCPI EI4
bi e j 2 fi
Parma ( f ) =
i =0
N
1 a i e j 2 fi
i =1
2.4.1
Modlisation AR
Pour effectuer cette modlisation il faut donc trouver les paramtres a i du modle:
N
x ( n) = a i x ( n i ) + ea ( n)
i =1
x(n-1)
x(n)
x(n-N)
Z -1
Z -1
Z -1
a1
e a (n)
a2
aN
(l'erreur e(n) est ici note e a ( n) pour traduire qu'il s'agit d'une erreur avant correspondant une prdiction de x( n)
partir de {x(n 1) x(n 2) K x(n N )}
Il est alors possible d'optimiser un critre de minimisation d'erreur quadratique, c'est dire, de chercher le jeu de
] (
avec :
X N ( n 1) = [x(n 1), x(n 2),..., x(n N )]T
et :
AN = [a1 , a 2 ,..., a N ]T
En dveloppant E e a ( n) 2 il vient:
] (
E e a ( n) 2 = E x(n) X TN (n 1) AN
] [
) (x(n) X
T
T
N
(n 1) AN
]
18
ESCPI EI4
AN = E X N (n 1) X TN (n 1)
] E[X
1
(n 1) x * (n)
ou encore:
AN = R N1 rNa (1)
avec:
r (1)
.
r ( N 1)
r (0 )
r (1)
r * (1)
r (0 )
.
.
matrice d'autocorrlation du signal et r a = r (2)
RN =
N
.
.
.
r (1)
*
*
.
r (1)
r (0 )
r ( N 1)
r ( N )
[(
)]
T
T
T
E aN = E x ( n) 2 2 E X N
(n 1) x ( n) A N + A N
E X N (n 1) X N
(n 1) A N
T
E aN = E ea ( n) 2 = E x (n) X N
(n 1) A N
E aN = r (0 ) 2r Na A N + r Na A N
E aN = r (0 ) rNa A N
(2)
a T 1
E aN
r (0 ) r N
=
A
r N
N 0
R N
(3)
quation de Yule Walker avant (ou directe ou forward) dans le cas stationnaire
Il est donc possible de trouver le vecteur AN en inversant la matrice R N puis de calculer l'nergie d'erreur de
prdiction avant. Cependant, le cot de calcul d'une telle approche est alors en o N 3
19
ESCPI EI4
( ) en
lorsque N est important. Il est possible de rsoudre cette quation avec un cot de calcul proportionnel o N 2
utilisant l'algorithme de Levinson.
Algorithme de Levinson :
( ) ( )
Pour faire passer le cot de calcul de la rsolution de l'quation de Yule Walker de o N 2 o N 3 , cet algorithme
va utiliser une rcurrence sur l'ordre N du modle prdicteur AR. Pour cela, il est ncessaire d'introduire l'erreur de
prdiction arrire.
Le modle de prdiction avant consistait estimer x(n) partir de {x(n 1) x( n 2) K x(n N )} , en inversant
l'axe des temps, on peut construire un modle de prdiction arrire qui va estimer x(n N ) partir de
{x(n N + 1)
+
bN
x(n)
b
Z -1
+
b
e (n)
b
N-1
x(n-1)
Z -1
Z -1
x(n-N)
x(n)
x(n-1)
x(n-2)
x(n-N)
20
ESCPI EI4
ce qui conduit : B N = E X N ( n) X TN ( n)
E [ X N ( n) x ( n N ) ]
d'o:
B N = R N1 rNb
(4)
] [
] il vient:
T
T
E eb (n) 2 = E x (n N ) 2 2 E [ x (n N ) X N (n)] B N + B N
E X N ( n) X N
( n) B N
d'o:
T
E bN = r (0 ) r Nb B N
(5)
RN
T
rNb
rNb B N 0
= E
bN
r (0 ) 1
(6)
Equation de Yule Walker arrire (ou rtrograde ou backward) dans le cas stationnaire
21
ESCPI EI4
J N RN = RN J N
il vient:
1
E bN
R N +1
=
JB N 0
1
E aN
R N +1
=
A
N 0
Ce qui revient dire que prdire x(n-N) partir de x(n-N+1),...,x(n) est identique prdire x(n) partir de x(n1),...,x(n-N). La seule diffrence entre les deux prdictions est le sens de parcours sur la trajectoire de x(n).
L'algorithme se base sur une rcursion sur l'ordre N. Si on connat AN-1 et BN-1 l'ordre N-1, il vient pour la
prdiction avant l'ordre N:
RN
T
r Nb
1
E N 1
r Nb
A N 1 = 0
r (0 ) 0
K N
N 1
avec K N = r ( N )
a i , N 1 r ( N i )
i =1
aT
r
(
0
)
r
N
B N 1 = 0
r Na
R N 1
E N 1
d'o:
1
E N 1
0
K N
R N +1 A N 1 = 0
et R N +1 B N 1 = 0
0
K N
1
E N 1
KN
d'o: R N +1 A N 1
E N 1
0
0
KN 2
B
= E N 1
E N 1
N 1
1
0
d'o:
22
ESCPI EI4
[AN ] =
AN 1
B N 1
kN
et E N = E N 1 1 k N 2 avec k N =
KN
E N 1
E (0 ) = r (0 )
j 1
1
k j =
r ( j ) a i , j 1 r ( j i )
E j 1
i =1
j : 1 N a j , j = k j
i : 1 j 1 a = a
i, j
i , j 1 k j a j i , j 1
2
E j = E j 1 1 k j
Remarque:
1
B
N 1
N
N 1
AN
BN
et :
= B N 1 k N A N 1
1
1
0
d'o:
A N 1
B N 1
AN =
kN
et:
0
1
BN =
kN
B N 1
A N 1
A N 1
B N 1
T
eaN ( n) = x (n) X N
( n 1)
kN
1
0
23
ESCPI EI4
Bn 1
T
eaN ( n) = eaN 1 (n) k N X N
(n 1)
T
or: ebN ( n) = x (n N ) X N
( n) B N
T
ebN 1 (n) = x ( n N + 1) X N
1 ( n) B N 1
T
ebN 1 (n 1) = x (n N ) X N
1 ( n 1) B N 1
de la mme manire :
T
ebN ( n) = x (n N ) X N
( n) B N
conduit :
(n)
a,N-1
a,N
(n)
+
-
kN
kN
(n)
Z-1
b,N-1
b,N
(n)
E e a , N 1 ( n ) eb , N 1
E N 1
d'o le nom de coefficients de corrlation partielle (PARCOR) donn souvent aux coefficients ki.
24
ESCPI EI4
2.4.2
Modlisation MA
Dans le cas du modle AR, le vecteur AN s'obtient en optimisant un critre d'erreur quadratique. Cette optimisation
conduit de manire explicite la rsolution d'un systme linaire:
A N = R N1 rNa
Par contre, pour un modle MA:
M
x ( n) =
bi e(n i )
i =0
Le vecteur EN dpend de BN et le systme rsoudre devient non linaire. L'optimisation exacte du critre est alors
trs dlicate. Cependant, l'algorithme de Durbin permet d'approcher la solution optimale avec de bons rsultats.
Algorithme de Durbin:
Le principe de cet algorithme consiste identifier le modle MA d'ordre M avec un modle AR d'ordre N>>M.
En effet, tout modle MA peut tre identifi un modle AR d'ordre infini:
bi Z i
a i Z i
i =0
i =0
en remplaant la borne infinie par une valeur N>>M, il est possible de faire l'approximation suivante:
H (Z ) =
bi Z i
i =0
1
N
a i Z i
i =0
d'o :
X (Z )
E (Z )
H (Z )
1
H (Z )
E (Z )
25
ESCPI EI4
1
1
bi Z i
i =0
=1
a i Z i
i =1
ce qui donne j =
bi a j i
, en posant b0 = 1 il vient:
i =0
M
j = a j + bi a j i
i =1
et donc:
M
pour j = 1 N :
a j + bi a j i = 0
i =1
Les coefficients bi du modle MA d'ordre M du signal x(n) sont donc aussi les coefficients du modle AR d'ordre
M du signal an.
Conclusion, l'obtention des M valeurs bi se fait en rsolvant deux systmes AR, il faut:
modliser le signal x(n) sous la forme d'un processus AR d'ordre N>>M et trouver le vecteur des paramtres,
grce l'algorithme de Levinson par exemple,
modliser le signal constitu par les paramtres prcdents sous une forme AR d'ordre M et trouver le
nouveau vecteur des paramtres.
2.4.3
Modlisation ARMA
La modlisation ARMA peut se dcomposer en une modlisation AR suivie d'une modlisation MA.
En effet, il faut identifier le filtre:
M
bi Z i
H (Z ) =
i =0
N
1 a i Z i
i =1
M
1
i
=
bi Z = H 1 ( Z ) H 2 ( Z )
N
1 a Z i i =0
i
i =1
H1(Z) est identifiable de manire exacte au moyen de l'algorithme de Levinson tandis que H2(Z) est identifiable de
manire approche au moyen de l'algorithme de Durbin.
26
ESCPI EI4
Les modlisations AR,MA et ARMA permettent finalement d'obtenir la densit spectrale de puissance du signal x(n)
grce l'identification des paramtres du modle considr.
Le modle AR ne comporte que des ples (filtre tout ples) et ne passe jamais par zro:
2
Par ( f ) =
1 ai e j 2 fi
i =1
Ce modle est bien adapt aux signaux composs de raies pures dans du bruit blanc.
Pma ( f ) =
bi e
j 2 fi
i =0
Ce modle est bien adapt aux signaux dont la puissance est nulle dans certaines bandes de frquences.
bi e j 2 fi
Parma ( f ) =
i =0
N
1 a i e j 2 fi
i =1
2.5 Conclusion
Il existe un grand nombre de mthodes d'analyse spectrale et le choix est souvent dict par l'application considre.
En gnral, les mthodes non paramtriques trouvent leur intrt en prsence de signaux longs et stationnaires tandis
que les mthodes paramtriques sont plutt utilises pour les signaux brefs et non stationnaires.
Enfin, les mthodes de modlisation AR peuvent tre rendues adaptatives, ce qui permet une analyse temps rel de la
densit spectrale de puissance du signal observ.
27
ESCPI EI4
Filtrage Adaptatif
X p1 (t )
x p (t )
A p1 (t )
1p p 1 (t )
x 2 (t )
X p 1 ( t ) =
x p 1 ( t )
(45.)
Le filtre de p 1 coefficients :
28
ESCPI EI4
a1 (t )
a 2 (t )
A p 1 ( t ) =
a p 1 ( t )
(46.)
{ x1 (t )
x p (t )
et
x$ p (t )
x 2 ( t ) K x p 1 ( t ) .
x p (t )
partir de
L'indice p indique qu'il s'agit de l'erreur de prdiction de x p (t ) , l'exposant 1 p 1 indique que la base de
prdiction est compose des valeurs x1 ( t ) jusqu' x p1 (t ) . Cette notation peut paratre un peu surcharge mais elle
va permettre de dvelopper de manire unifie des algorithmes issus d'approches trs diffrentes. L'erreur de
prdiction s'crit finalement :
1p p 1 (t ) = x p (t ) A Tp 1 (t ) X p 1 (t )
(47.)
Dans cette expression l'exposant T indique que le vecteur A p 1 (t ) est transpos et conjugu.
Le critre des moindres carrs consiste minimiser la fonction de cot J p (t ) suivante :
t
J p (t ) =
t i 1p p 1 (i ) 1p p 1
(i )
(48.)
i =0
(49.)
R p 1 ( t ) =
t i X p 1 (i ) X Tp 1 (i )
(50.)
i =0
r p1 p 1 (t ) =
t i X p 1 (i ) x Tp (i )
(51.)
i =0
x$ (t ) = r p1 p 1 (t ) R p1 1 ( t ) X p 1 (t )
(52.)
29
ESCPI EI4
Remarque :
On peut choisir de dfinir l'erreur de prdiction de manire inverse, c'est dire par :
1p p 1 (t ) = ATp 1 (t ) X p 1 (t ) x p (t )
(53.)
La solution optimale ne change pas, seule l'quation de l'erreur de prdiction est inverse. Les quations
d'algorithmes d'adaptation des coefficients pourront aussi tre inverses.
X p 1 ( t )
x p (t )
A p 1 ( t )
1p p 1 (t )
avec :
x1 (t )
a 1 ( t )
x (t )
2
et A ( t ) = a 2 (t )
X p 1 ( t ) =
p
1
M
x p 1 (t )
a p 1 ( t )
E 1p p 1 ( t ) 1p p 1 (t ) = E x p (t ) A Tp 1 (t ) X p 1 ( t ) x p (t ) A Tp 1 (t ) X p 1 ( t )
)(
[(
E 1p p 1 (t ) 1p p 1 (t ) = E x p ( t ) x Tp ( t ) A Tp 1 (t ) X p 1 (t ) x Tp (t ) x p (t ) X Tp 1 (t ) A p 1 (t ) + A Tp 1 (t ) X p 1 (t ) X Tp 1 ( t ) A p 1 ( t )
] [
T
E 1p p 1 (t ) 1p p 1 (t ) = E x p (t ) x Tp (t ) 2 Re A Tp 1 ( t ) E X p 1 (t ) x Tp (t ) + A Tp 1 (t ) E X p 1 ( t ) X Tp 1 ( t ) A p 1 ( t )
30
)]
ESCPI EI4
] [
E 1p p 1 (t ) 1p p 1 (t ) = E x p (t ) x *p ( t ) 2 Re A pT1 (t ) S p 1 (t ) + A pT1 (t ) R p 1 (t ) A p 1 (t )
On cherche le vecteur A p1 (t ) des coefficients du filtre qui minimise l'esprance carre de l'erreur. En considrant
que la matrice R p1 (t ) est de rang plein, il existe une solution unique qui s'obtient en annulant les drives de la
T
D'o :
] [
Remarque :
Si x est une variable complexe x = a + jb avec a et b rels. On dfinit alors la drive par rapport x par :
1
= j
x 2 a
b
On a alors
x
x *
= 1 et
=0
x
x
A Tp 1 (t ) R p 1 ( t ) A p 1 ( t )
a kr (t )
= 2 Re R p 1 (t ) A p 1 ( t )
du vecteur R p 1 (t ) A p 1 (t ) .
et :
31
ESCPI EI4
A Tp 1 ( t ) R p 1 (t ) A p 1 (t )
a ki ( t )
= 2 Im R p 1 ( t ) A p 1 (t )
D'o finalement :
E p 1 (t ) *p 1 (t )
a kr ( t )
] = 2(Sr )
] = 2(Si )
p 1
+ 2 Re R p 1 (t ) A p 1 (t )
et
E p 1 (t ) *p 1 (t )
a ki (t )
p 1
+ 2 Im R p 1 (t ) A p 1 (t )
( )
2( Si
)
2 Sr p 1
p 1
(
+ 2 Im( R
)
(t ))
+ 2 Re R p 1 (t ) A p 1 (t )
p 1 ( t ) A p 1
=0
=0
(
+ 2 Im( R
)
(t )) = 0
2 Sr p 1 + 2 Re R p 1 (t ) A p 1 (t ) = 0
2 Si p 1
p 1 ( t ) A p 1
D'o :
R p 1 ( t ) A p 1 ( t ) = S p 1 ( t )
et :
A p 1 ( t ) = R p1 1 (t ) S p 1 ( t )
E [ x (t )] =
i x(t i )
i =0
32
ESCPI EI4
Ainsi, chaque instant t + 1 , il est possible, partir du nouveau vecteur X p1 (t + 1) et du nouveau scalaire
x p ( t + 1) , de calculer la matrice R p1 (t + 1) , de l'inverser et de l'appliquer au vecteur S p1 (t + 1) . Le vecteur
A p1 ( t + 1) optimal au sens du minimum de l'erreur quadratique pondre par un facteur d'oubli est alors mis
jour.
Le principal inconvnient de cette mthode rside dans l'inversion en temps rel de la matrice R p1 (t + 1) . Cette
inversion demande un cot de calcul proportionnel p 3 qui peut rapidement s'avrer prohibitif lorsque la
dimension p devient importante. Le but des algorithmes des moindres carrs qui vont suivre va tre de faire diminuer
ce cot de calcul. Pour cela, ils vont utiliser des proprits rcursives de la matrice R p1 (t ) et du vecteur S p1 (t ) .
Ces rcursions agiront, soit en fonction du temps n, soit en fonction de l'ordre p. Elles vont conduire aux algorithmes
des moindres carrs rcursifs (MCR) dont le cot de calcul est proportionnel p. Enfin, dans les cas o les
composantes x i (t ) du vecteur X p1 (t ) sont en fait les valeurs dcales dans le temps d'un mme processus
monodimensionel x (t ) l'utilisation de ces proprits de dcalage conduira aux algorithmes rapides dont le cot de
calcul est proportionnel p.
n'utilise pas la rsolution effectue l'instant prcdent qui a permis de mettre jour le vecteur A p1 (t ) .
Or la matrice R p1 (t + 1) a t modifie, entre l'instant t et l'instant t + 1 , travers l'quation :
R p 1 ( t + 1) = R p 1 (t ) + X p 1 (t + 1) X Tp 1 (t + 1)
A p 1 (t + 1) = R p1 1 (t + 1) S p 1 (t ) + X p 1 ( t + 1) x Tp (t + 1)
or S p 1 (t ) = R p 1 (t ) A p 1 ( t ) d'o:
A p 1 (t + 1) = R p1 1 ( t + 1) R p 1 (t ) A p 1 (t ) + X p 1 (t + 1) x Tp (t + 1)
[(
A p 1 ( t + 1) = R p1 1 (t + 1) R p 1 ( t + 1) X p 1 (t + 1) X Tp 1 (t + 1) A p 1 ( t ) + X p 1 ( t + 1) x Tp (t + 1)
d'o finalement:
33
ESCPI EI4
A p 1 ( t + 1) = A p 1 (t ) + R p1 1 (t + 1) X p 1 (t + 1) x Tp (t + 1) X Tp 1 (t + 1) A p 1 (t )
A p 1 (t + 1) = A p 1 ( t ) + R p11 (t + 1) X p 1 (t + 1) e 1p p 1 (t + 1)
Cette expression, qui porte le nom d'quation normale, permet de mettre jour le vecteur A p 1 ( t + 1) partir du
vecteur A p 1 (t ) .
Il s'agit l d'une approximation importante et le critre ne va pas tre rigoureusement optimis. Cependant
l'algorithme qui va en dcouler est sans doute l'algorithme le plus simple mettre en uvre et celui dont le cot de
calcul est le plus faible. C'est de loin l'algorithme qui a t jusqu' aujourd'hui le plus utilis dans les quipements
industriels.
A p 1 (t + 1) = A p 1 ( t ) + X p 1 (t + 1) e 1p p 1 (t + 1)
Cette mise jour demande finalement un cot de calcul proportionnel O( p 1) . Cet algorithme est appel
algorithme du gradient stochastique (LMS).
34
ESCPI EI4
X p 1 ( t + 1)
signal de rfrence :
x p ( t + 1)
e 1p p 1 (t + 1) = x p (t + 1) A Tp 1 ( t ) X p 1 (t + 1)
A p 1 ( t + 1) = A p 1 (t ) + e 1p p 1 (t + 1) X p 1 (t + 1)
- Algorithme LMS -
(critre)
2
en considrant comme critre la minimisation de l'erreur quadratique a priori, cette quation devient :
A p 1 (t + 1) = A p 1 ( t )
E x p (t + 1) A Tp 1 (t ) X p 1 (t + 1) x p (t + 1) A Tp 1 ( t ) X p 1 (t + 1)
2
)(
2 E X p 1 ( t + 1) x Tp (t + 1) E X p 1 ( t + 1) X Tp 1 (t + 1) A p 1 (t )
2
] [
A p 1 (t + 1) = A p 1 ( t ) + X p 1 (t + 1) e 1p p 1 (t + 1)
l'algorithme est alors appel algorithme du gradient stochastique et le scalaire reprsente le pas de descente de
l'algorithme.
35
ESCPI EI4
Or sachant que :
1p p 1 (t + 1) = x p (t + 1) X Tp 1 (t + 1) A p 1 (t ) + X p 1 ( t + 1)e 1p p 1 (t + 1)
il vient :
1p p 1 (t + 1) = e 1p p 1 (t + 1) X Tp 1 (t + 1) X p 1 (t + 1)e 1p p 1 (t + 1)
ou encore :
1p p 1 (t + 1) = e 1p p 1 (t + 1) 1 X Tp 1 ( t + 1) X p 1 (t + 1)
] [
E 1p p 1 (t + 1) < E e 1p p 1 ( t + 1)
1 E X pT1 ( t + 1) X p1 ( t + 1) < 1
d'o:
0<<
2
NPx
Une autre approche pour dmontrer la convergence de l'algorithme consiste introduire le filtre optimal
A0 = R p1 1 (t + 1) S p 1 (t + 1) , et la variable ( t + 1) = A p 1 ( t + 1) A0
On a alors :
T
( t + 1) = A p 1 ( t ) A0 + X p 1 (t + 1)e 1p p 1 (t + 1)
D'o :
36
ESCPI EI4
( t + 1) = A p 1 (t ) A0 + X p 1 (t + 1) x p ( t + 1) A Tp 1 (t ) X p 1 (t + 1)
( t + 1) = (t ) + X p 1 ( t + 1) e0 (t + 1) + A0T X p 1 ( t + 1) A Tp 1 (t ) X p 1 (t + 1)
( t + 1) = (t ) + X p 1 ( t + 1) e0 (t + 1) ( t ) T X p 1 (t + 1)
( t + 1) = I p 1 X p 1 (t + 1) X Tp 1 ( t + 1) (t ) + X p 1 (t + 1)e0T (t + 1)
E [ (t + 1) ] = I p 1 R p 1 ( t + 1) E [ ( t )]
donc si E [ ( t )] 0
t
2
max
Critre optimis:
Le fait d'avoir approch R p1 (t ) par I p1 a conduit optimiser un critre diffrent de celui de l'erreur quadratique
moyenne pondre.
A p 1 (t + 1) = A p 1 ( t ) + X p 1 (t + 1) x p (t + 1) X Tp 1 (t + 1) A p 1 (t )
il vient:
A p 1 (t + 1) = I p 1 X p 1 ( t + 1) X Tp 1 (t + 1) A p 1 (t ) + X p 1 (t + 1) x p (t + 1)
] [
E A p 1 (t + 1) = E A p 1 (t )
37
ESCPI EI4
or : E X p 1 (t + 1) X pT1 ( t + 1) = R p 1 (t + 1) et E X p 1 (t + 1) x p ( t + 1) = S p 1 (t + 1)
] [
] [
E A p 1 (t + 1) = E A p 1 (t ) = E A p 1 (t ) R p 1 (t + 1) E A p 1 (t ) S p 1 (t + 1)
d'o:
pour t E A p 1 ( t ) = R p1 1 (t + 1) S p 1 (t + 1)
La solution obtenue grce l'algorithme du gradient stochastique converge donc en moyenne vers la solution
optimale. L'algorithme n'optimise donc pas un critre des moindres carrs exacts mais un critre des moindres carrs
moyens.
Variantes de l'algorithme
L'algorithme du gradient stochastique possde un grand nombre de variantes dont l'emploi dpend essentiellement
de l'application envisage. On peut citer par exemple:
A p 1 (t + 1) = A p 1 ( t ) +
X p 1 (t + 1)e 1p p 1 ( t + 1)
X Tp 1 ( t + 1) X p 1 (t + 1)
A p 1 (t + 1) = A p 1 (t ) + X p 1 (t + 1) sgn(e 1p p 1 (t + 1))
A p 1 (t + 1) = A p 1 ( t ) + sgn( X p 1 ( t + 1)) e 1p p 1 (t + 1)
38
ESCPI EI4
Conclusion
L'algorithme du gradient stochastique est un algorithme simple dont le cot de calcul est proportionnel l'ordre N du
filtre identifier. A condition de respecter un pas d'adaptation suffisamment faible, cet algorithme est stable et
optimise un critre des moindres carrs moyens. C'est encore aujourd'hui l'algorithme de filtrage adaptatif le plus
employ dans les applications temps rel.
Le problme principal dans son emploi rside dans le choix du pas d'adaptation . Un pas faible entrane une
convergence lente souvent incompatible des applications envisages (galisation en vasion de frquence par
exemple). Un pas trop fort va conduire, quant lui, des rsultats imprcis. Il existe un grand nombre de mthodes
qui tendent faire varier ce pas au cours de la phase de convergence. Cela peut avoir pour effet d'acclrer la
convergence mais il faut rester circonspect vis vis de ces mthodes car la convergence de l'algorithme n'est assure
que dans le cas du pas fixe.
( )
En effet: R p 1 (t + 1) = R p 1 (t ) + X p 1 (t + 1) X Tp 1 (t + 1)
si: A = B + CDC T
alors: A1 = B 1 B 1C D + C T B 1C
1 T
C B 1
il vient :
R p1 1 ( t
R p1 1 (t )
1 1
1 1
T
+ 1) = R p 1 (t ) R p 1 ( t ) X p 1 (t + 1) 1 + X p 1 (t + 1)
X p 1 ( t + 1)
X Tp 1 (t
+ 1)
R p11 (t )
d'o:
39
ESCPI EI4
R p11 ( t + 1) =
R p1 1 (t ) X p 1 (t + 1) X Tp 1 (t + 1) R p1 1 (t )
1 1
R
(
t
)
p 1
+ X Tp 1 (t + 1) R p11 (t ) X p 1 (t + 1)
X Tp 1 (t + 1) R p1 1 (t ) X p 1 ( t + 1)
1 1
R p 1 ( t ) X p 1 (t + 1) 1
+ X Tp 1 (t + 1) R p11 (t ) X p 1 (t + 1)
d'o:
G p 1 (t + 1) =
R p1 1 (t ) X p 1 ( t + 1)
+ X Tp 1 (t + 1) R p11 (t ) X p 1 (t + 1)
R p1 1 (t )
A p 1 ( t )
X p 1 (t + 1)
signal de rfrence :
x p ( t + 1)
e 1p p 1 (t + 1) = x p (t + 1) A Tp 1 ( t ) X p 1 (t + 1)
R p1 1 (t ) X p 1 (t + 1)
G p 1 ( t + 1) =
A p 1 ( t + 1) = A p 1 (t ) + G p 1 (t + 1) e 1p p 1 (t + 1)
+ X Tp 1 (t + 1) R p11 (t ) X p 1 (t + 1)
1 1
R p 1 (t ) G p 1 (t + 1) X Tp 1 (t + 1) R p11 (n)
- Algorithme RLS -
Cet algorithme conduit la mise jour du vecteur A p 1 ( t + 1) avec un cot de calcul proportionnel O( p ) .
L'inversion de matrice a t vite en propageant le gain de Kalman G p 1 ( t + 1) rcursivement au cours du temps.
40
ESCPI EI4
1
2
Cet algorithme, la diffrence de l'algorithme du gradient stochastique, optimise rigoureusement le critre des
moindres carrs.
X p 1 (t ) = x 1 (t ), x 2 (t ), ... , x p 1 (t )
qu'au cas d'un signal monodimensionnel dont les valeurs sont conservs avec un dcalage temporel :
X p 1 (t ) = x ( t ), x (t 1), ... , x ( t N + 1)
Cependant dans ce dernier cas, l'algorithme n'utilise pas cette proprit de dcalage des variables. En utilisant cette
proprit, il est possible d'optimiser l'algorithme et d'obtenir une version rapide (cot de calcul proportionnel N).
3.4.1
La dmonstration des algorithmes rapides: Fast Kalman, Faest et drivs demandant un dveloppement consquent,
ce paragraphe prsente juste l'algorithme dont on trouvera la dmonstration complte dans la rfrence [1].
( Attention au changement de variable par rapport aux paragraphes prcdents, ici le filtre recherch est not
H p 1 ( t ) )
41
ESCPI EI4
H p 1 ( t )
A p 1 ( t )
B p 1 ( t )
X p 1 ( t )
G p 1 ( t )
x (t + 1)
x p ( t + 1)
A p 1 (t + 1) = A p 1 (t ) + G p 1 (n)ea (t + 1)
erreur de prdiction avant a posteriori :
a (t + 1) = x (t + 1) A Tp 1 (t + 1) X p 1 (t )
nergie de prdiction avant :
E a (t + 1) = E a (t ) + ea (t + 1) a (t + 1)
gain d'adaptation intermdiaire :
0
a (t + 1) 1
M p 1 (t + 1)
G1 ( t + 1) =
+
G p 1 (t ) E a (t + 1) A p 1 (t + 1) m( t + 1)
1
M p 1 (t + 1) + m(t + 1) B p 1 (t )
1 m( t + 1)eb (t + 1)
mise jour des coefficients de prdiction arrire :
B p 1 ( t + 1) = B p 1 (t ) + G p 1 ( t + 1)eb (t + 1)
G p 1 (t + 1) =
Opration de filtrage:
calcul de l'erreur de sortie :
e(t + 1) = x p ( t + 1) H Tp 1 (t ) X (t + 1)
42
ESCPI EI4
Principe
Le principe de l'algorithme du treillis spatial consiste orthogonaliser la base de prdiction constitue par les
signaux capteurs
p (t ) = L1p (t ). X p (t )
expression dans laquelle
(54.)
3.5.2
(55.)
Dcomposition LDU
On note :
x1 (t )
x 2 (t )
Le vecteur dentre : X p ( t ) =
.
x p ( t )
t
t i . X p (i ). X Tp (i )
i =1
t i x p +1 (i ). x Tp +1 (i )
i =1
r p +1 (t ) = t i X p (i ). x Tp +1 (i )
i =1
Rcursion en ordre
Ecrivons maintenant la dcomposition LDU de la matrice R p+1 (t ) en fonction de R p (t ) , afin de trouver L p+1 ( t )
et D p+1 ( t ) en fonction de L p ( t ) et D p (t )
43
ESCPI EI4
R p +1 (t ) = L p +1 (t ). D p +1 (t ). LTp +1 ( t )
,L
1 p
(
)
t
=
R p +1 ( t ) =
p
+
1
T
1 p
0
c p + 1 ( t )
r p +1 (t ) r p +1 ( t )
0
D p (t )
, D p +1 ( t ) =
p +1 ( t )
1
0
En identifiant, on obtient :
1 p
1 p
c p +1 (t ) = D p1 (t ). Lp1 (t ). r p +1 ( t )
(56.)
et :
1 p T
p +1 (t ) = r p0+1 c p +1
3.5.3
1 p
(t ). D p (t ). c p +1 ( t )
(57.)
Erreur a priori
On dfinit lerreur a priori par :
E p +1 (t ) = Lp1+1 (t 1). X p +1 (t )
(58.)
Lp1 (t 1)
0
1) =
1 pT
1
c p +1 ( t 1). L p (t 1)
E p (t )
X p (t )
,E
1 p , X p +1 (t ) =
(
t
)
=
p
+
1
x p +1 (t )
e p + 1 ( t )
1 p
e p +1 ( t ) = x p +1 ( t ) c p +1
1 p
(t 1). E p (t )
(59.)
1 p
1 p
e p + 1 ( t ) = x p +1 ( t ) r p +1
( t 1) LpT (t 1) D p1 (t 1). E p ( t )
(60.)
1 p
e p + 1 ( t ) = x p +1 ( t ) r p + 1
(61.)
Ou encore :
1 p T
1 p
e p + 1 ( t ) = x p +1 ( t ) r p +1
( t 1) R p1 (t 1) X p ( t )
(62.)
e p +1 ( t ) = x p +1 (t ) A Tp (t 1) X p ( t )
(63.)
44
ESCPI EI4
1 p
avec : A p (t ) = R p1 (t 1) r p +1 (t 1)
Il sagit bien dune erreur a priori car lorthogonalisation des signaux capteurs est effectue avant la remise jour du
filtre.
Erreur a posteriori
On dfinit lerreur a posteriori par :
(64.)
Lp1 (t )
0
,
=
1 pT
1
1
c p +1 (t ). L p (t )
( t )
p+1 (t ) = 1p p
X (t )
, X p +1 ( t ) = p
(t )
x p +1 (t )
p +1
1 p
p + 1 ( t ) = x p +1 ( t ) c p +1
(t ).
p (t )
(65.)
Il sagit bien dune erreur posteriori car lorthogonalisation des signaux capteurs est effectue aprs la remise
jour du filtre.
3.5.4
(66.)
Comme les matrices Lp1 (t 1) et L p (t ) sont triangulaires infrieures, avec des 1 sur la diagonale principale,
L p (t ) lest aussi.
On peut remarquer que L p (t ) est aussi la matrice de passage de lerreur posteriori vers lerreur priori. En effet,
on a :
L p (t ).
(67.)
Calcul de Lp(t)
On part de lquation de remise jour de la matrice dautocorrlation du signal dordre p.
R p (t ) = . R p (t 1) + X p ( t ). X Tp (t )
(68.)
(69.)
45
ESCPI EI4
L p (t ). D p (t ). LTp (t ) = . D p (t 1) + E p (t ). E Tp (t )
(70.)
Comme L p ( t ) est triangulaire infrieure avec des 1 sur sa diagonale principale, cette dernire quation montre,
par unicit de la dcomposition LDU, que L p ( t ) sobtient par la dcomposition LDU de la matrice
p (t ) = . D p (t 1) + E p (t ). E Tp ( t )
(71.)
(72.)
0
L p (t )
L p +1 (t ) =
T
c 1 p (t ) 1
p +1
(73.)
On note :
p ( t )
p +1 ( t ) =
p
e 1p
(t ). E Tp (t )
+1
1 p T
1 p
c p +1 (t ). D p (t ). c p +1 (t ) + p +1 (t )
1 p
L p (t ). D p (t ). c p +1 (t )
1 pT
E p (t ). e p +1
. p +1 ( t
(t )
1 p
1 p T
1) + e p +1 (t ). e p +1
(t )
(74.)
(75.)
c p +1 (t ) = D p1 (t ).
p (t ). e 1p+1pT (t )
(76.)
et
1 p
p +1 (t ) = . p +1 (t 1) + e p +1 (t ). 1
T
1
p ( t ). D p ( t ).
p (t )). e 1p+1p
(t )
(77.)
Tp (t ). D p1 (t ). p (t ).
(78.)
p +1 (t ) = . p +1 (t 1) + p ( t ). e p +1
1 p
(t ). e p +1 (t )
(79.)
46
ESCPI EI4
Reprenons lquation
L p +1 (t ).
p + 1 ( t ) = E p +1 ( t )
(80.)
1 p
e p +1 ( t ) = c p +1
1 p
1 p
e p +1 (t ) = e p +1 ( t ). (
1 p
( t ).
p (t ) + 1p+1p (t )
(81.)
Tp (t ). D p1 (t ). p (t )) + 1p+1p (t )
1 p
1 p
e p +1 ( t ) = e p +1 (t ).(1 p ( t )) + p +1 (t )
(82.)
(83.)
1 p
p +1 (t ) = e p +1 (t ). p (t )
(84.)
p +1 ( t ) = 1
T
1
p ( t ). D p ( t ).
p (t )
1 p T
p +1
(85.)
1 p
(t ). p +1 (t )
p +1 ( t )
(86.)
p +1 ( t ) = p ( t )
2p (t )
e p +1
1 p
( t ). e p +1 (t )
p +1 ( t )
(87.)
Calcul de Lp-1(t)
De mme que pour le calcul de L p (t ) , on part de lquation de remise jour de la matrice dautocorrlation du
signal dordre p, i.e. :
L p (t ). D p ( t ). LTp (t ) = . L p (t 1). D p (t 1). LTp (t 1) + X p (t ). X Tp (t )
(88.)
T
On fait apparatre la matrice Lp1 (t ) en multipliant gauche et droite par respectivement L1
p ( t ) et L p ( t ) , on
obtient :
D p (t ) = . Lp1 (t ) D p (t 1). LpT (t ) +
p (t ). Tp (t )
(89.)
De la mme faon que prcdemment, cette quation montre que Lp1 (t ) sobtient par la dcomposition LDU de la
matrice
p (t ) = D p (t )
p (t ). Tp (t )
(90.)
Pour ce faire, nous allons utiliser une rcursion en ordre sur p (t ) en utilisant lgalit :
47
ESCPI EI4
p+1 (t ). Tp+1 (t )
(91.)
Lp1 (t )
1 pT
1
c p +1 . L p (t ) 1
. L1 (t ). D (t 1). L T (t )
p
p
p
1 p
1
T
. c p +1 (t ) . L p ( t ). D p (t 1). L p (t )
(92.)
1 p
1 p T
1
T
. p +1 ( t 1) + . c p +1 (t ). L p ( t ). D p (t 1). L p (t ). c p +1 (t )
1 p
(93.)
p (t )
p
T
1p
+1 ( t ). p ( t )
= p +1 ( t )
1 p
1 p T
p +1 (t 1) p +1 ( t ). p +1 (t )
p (t ). 1p+1pT (t )
(94.)
(95.)
1 p T
p +1 (t ) = . p +1 (t 1) + p +1 ( t ). 1 + 1 . E Tp (t ). D p1 (t 1). E p (t ) . p +1
(t )
(96.)
Cette dernire quation pourrait tre utilise pour dvelopper un algorithme bas sur lerreur a priori. Nous ne
dvelopperons pas ces calculs, car ils conduisent un algorithme dont le cot de calcul est plus important.
Expression de Lp+1-1(t)
Lp1 (t )
0
Lp1+1 (t ) =
1 . 1 p . E T ( t ). D 1 (t 1)
p
p
p +1
(97.)
On part de lquation :
1 p
1 p
1
c p +1 ( t ) = D -1
p ( t ). L p ( t ). r p +1 ( t )
p
Lquation de mise jour de rp1
+1 ( t ) scrit :
48
ESCPI EI4
1 p
1 p
r p +1 ( t ) = . r p +1 ( t 1) + X p (t ). x Tp +1 ( t )
(98.)
do
1 p
1 p
1
T
c p +1 ( t ) = D -1
p ( t ). L p ( t ). ( . r p +1 ( t 1) + X p ( t ). x p +1 ( t ))
1 p
1 p
1
1
1
-1
c p +1 ( t ) = D -1
p ( t ). L p ( t ). D p ( t 1).( . D p ( t 1). L p ( t 1). r p +1 ( t 1)) + D p ( t ).
1 p
1 p
1
c p +1 ( t ) = D -1
p ( t ). ( . L p ( t ). D p ( t 1). c p +1 ( t 1 )+
(99.)
p (t ). x Tp+1 (t )
p (t ). x Tp+1 (t ))
(100.)
(101.)
T
D-1 (t ). . L1 (t ). D (t 1). c1 p 1( t 1 )+
p 1
p 1
p ( t ). x p + 1 ( t )
p +1
c1 p 1( t ) p-1
p
+
1
1 p-1
p
(t ) T
c p ( t ) p (t 1) p
1 p 1
T
p +1
. (t ) . c p +1( t 1 )+ ( t ) ( x p +1 (t ) E p 1 ( t ). c p +1 ( t 1))
p
p
(102.)
A ce stade, on a donc trouv une quation de mise jour pour le coefficient c p +1 ( t ) de prdiction sur la pime
composante du vecteur de sortie du signal dentre dindice p+1. On peut en fait montrer que cette quation est
valable quelque soit le signal dentre dindice i, avec i p+1.
On note ci (t ) le coefficient de prdiction sur la pime composante du signal de sortie (i.e. lerreur a priori E(t)) du
signal dentre dindice i, avec i>p. Ce coefficient reprsente galement la pime composante de ci1i 1 ( t ) .
L p (t )
T
c 1 p (t )
p
+
1
L p +i (t ) = ...
c 1 pT (t )
i
0
0
1
1
p +1
ci
( t ) ... cii 1 ( t )
p
R (t )
rp1
...
ri1 p (t )
+1 (t )
p
T
1 p T
p +1
...
ri p +1 (t )
rp +1 (t ) r0 (t )
Ri (t ) =
...
T
T
1 p T
p +1
(t ) ...
ri p +i 1 (t ) r0i (t )
rp +i (t ) ri
49
ESCPI EI4
...
R p +i ( t ) =
T
ci1 p (t ). D p (t ). LTp (t )
L p (t ). D p (t ). ci1 p (t )
(103.)
(104.)
ri
1 p
(t ) = . ri
( t 1) + X p (t ). xiT (t )
(105.)
1 p
Ces deux dernires quations montrent que lon peut refaire exactement le mme calcul en remplaant c p +1 (t ) par
1 p
ci
(t ) . On aboutit ainsi aux quations de mise jours des c p +i ( t ) 1 i N-p, o N est le nombre de signaux
capteurs x i (t ) .
p
ci ( t ) = .
p (t 1)
p (t )
. ci ( t 1 ) +
1
1 p 1
( xiT (t ) E Tp 1 (t ). ci
(t 1)). 1p p-1 ( t )
p (t )
(106.)
On pose :
1 p 1
ei
1 p 1 T
( t ) = x i ( t ) ci
(t 1). E p 1 (t ).
(107.)
Cette dernire quation est galement vraie pour i = p . Elle nest alors rien dautre que lexpression de lerreur a
priori
1 p
1 p
ei
(t )
1 p 1T
(t ) = xi (t ) ci
(t 1)
pT
ci
E
(t )
p 1
( t 1) . 1 p 1
(t )
e p
1 p
ei
1 p 1
(t ) = ei
pT
(t ) ci
(t 1). e 1p p 1 ( t )
(108.)
( t ) , i.e.
(109.)
pour 1 p N et p+1 i N
50
ESCPI EI4
ci ( t ) = .
p ( t 1)
p (t )
. ci ( t 1 ) +
1
1 p-1 T
ei
(t ). 1p p-1 (t )
p (t )
(110.)
1 p
( t ) , on
aboutit
p
ci ( t ) = ci ( t 1 )+
3.5.5
p 1 (t ) 1 p T
e
(t ). e 1p p-1 (t )
p (t ) i
(111.)
Algorithme
Dans le cas dun treillis servant la prdiction dune rfrence, si N est le nombre de capteurs, on note pour
1 p N , x p (t ) le signal sur le pime capteur et x N +1 ( t ) le signal de rfrence
Initialisation t=0
1 p N + 1 p (t ) = 0
1 p N + 1 et 1 i N + 1 c ip (t ) = 0
Initialisation t
0 (t ) = 1
1 p N + 1 e 1p0 (t ) = x p ( t )
1 p 1
(t ). e 1p p 1 (t )
p (t ) = . p (t 1) + p 1 (t ). e p
e 1p p 1 (t ). e 1p p 1 (t )
2
1 p N + 1 p ( t ) = p 1 ( t ) p 1 ( t )
p (t )
1 p
1 p 1
pT
ei
(t ) = ei
(t ) ci (t ). e 1p p 1
p 1 (t ) 1 p-1 T
p + 1 i N + 1 p
p
e
(t ). e 1p p-1 (t )
ci ( t ) = ci ( t 1 ) +
p (t ) i
51
ESCPI EI4
3.6 Conclusion
L'optimisation en temps rel d'un filtre adaptatif se heurte principalement des problmes de cot de calcul.
Plusieurs cas sont envisager:
Si la puissance de calcul est importante et le dbit des signaux n'est pas trop rapide, il est possible
d'envisager une inversion directe de la matrice d'autocorrlation. Le cot de calcul est alors proportionnel
N3.
Si la puissance de calcul est plus limite ou/et si le dbit des signaux s'acclre, il est ncessaire de s'orienter
vers des algorithmes dits lents dont le cot de calcul est proportionnel N.
Enfin dans le cas o la puissance est encore rduite et/ou le dlai des signaux traiter s'acclre encore, il
faut s'orienter vers des algorithmes rapides dont le cot de calcul est proportionnel N.
Il a t observ que les problmes d'instabilit taient trs courants dans la famille des algorithmes directs alors qu'ils
taient quasi inexistants dans la famille des algorithmes en racine carre.
Enfin, il faut rappeler l'importance de l'algorithme du gradient stochastique qui, n'optimisant pas tout fait le mme
critre que les algorithmes prcdents, ne peut tre rattach une famille particulire mais dont la simplicit, le
faible cot de calcul et la robustesse ont fait pendant longtemps l'algorithme de filtrage adaptatif de rfrence.
52
ESCPI EI4
Bibliographie
LIVRES GENERAUX
M. Bellanger, Traitement numrique du signal, Collection CNET ENST, Masson 1990.
Boite et H. Leich, Les filtres numriques, Collection CNET ENST, Masson 1990.
M. Stein, Les modems pour les Transmissions de Donnes, Collection CNET ENST, Masson 1987
M. Bellanger, Analyse des signaux et filtrage numrique adaptatif, Collection CNET ENST, Masson 1989.
M. Kunt, Techniques modernes de traitement numrique des signaux, Collection CNET ENST, Presses
Polytechniques de Lausanne.
S. Haykin, Adaptive Filter Theory, 2nd Ed., Prentice Hall 1991
1981.
ARTICLES SUR LE LEMME D'INVERSION MATRICIEL
M. Woodbury, "Inverting Modified Matrices," Mem. Rep. 42, Statistical Research Group, Princeton University,
Princeton, NJ, 1950.
Caused by Round-off Error," in Proc ICASSP 84, paper 30.3.1, San Diego, 1984.
[4] P. Fabre and C. Guegen, "Fast recursive least-squares algorithms: preventing divergence," In Proc. ICASSP 85,
September 1989.
[6] D. Slock and T. Kailath, "Numerically Stable Fast Transversal Filters for Recursive Least Squares Adaptive
estimation and adaptive filtering," IEEE trans on ASSP, vol 34, pp 829-836, 1986.
[9] M. Morf, A. Vieira, and D.T. Lee, "Ladder forms for identification and speech processing," in Proc IEEE Conf.
Decision Contr., pp. 1074-1078, Dec 1977.
53
ESCPI EI4
Drivation de AT RA en rel
u = (a 0
K a N 1 )
u = (a 0
a 0
M
a
N 1
ri , j
K a N 1 ) rk , j a j
j
u = a k rk , j a j
k
j
u = a k a j rk , j
k
u=
a k a j rk , j + a p a j r p, j
k p j
u=
a k a p rk , p + a k a j rk , j + a p a j r p, j + a 2p r p, p
k p
k p j p
j p
u
= a k rk , p + a j r p, j + 2 a p r p , p
p k p
j p
R = R T donc rk , p = r p,k do :
u
= 2a p r p, p + 2 a j r p, j
a p
j p
54
ESCPI EI4
u = 2K r p, j
p
M
K a j
M
Donc :
T
A RA = 2 RA
A
55