Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 75

Université de Rennes 1

Master Recherche STI

Introduction
au Filtrage en Temps Discret

Filtre de Kalman
Filtrage Particulaire
Modèles de Markov Cachés

François LeGland
IRISA / INRIA

2005–06
Table des matières

1 Introduction 1
1.1 Importance de l’information a priori . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Prise en compte de l’information a priori . . . . . . . . . . . . . . . . . . . 8

2 Systèmes linéaires gaussiens 13


2.1 Équations d’état . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Équations d’état et d’observation . . . . . . . . . . . . . . . . . . . . . . . 14

3 Filtre de Kalman, et extensions 17


3.1 Filtre de Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.2 Extensions au cas non–linéaire . . . . . . . . . . . . . . . . . . . . . . . . . 22

4 Systèmes non–linéaires non–gaussiens, et extensions 25


4.1 Équations d’état . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.2 Équations d’état et d’observation . . . . . . . . . . . . . . . . . . . . . . . 26

5 Filtre bayésien optimal 29


5.1 Flots de Feynman–Kac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.2 Équation du filtre bayésien optimal . . . . . . . . . . . . . . . . . . . . . . 31
5.3 Approximation particulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

6 Modèles de Markov cachés 37


6.1 Chaı̂nes de Markov à état fini . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.2 Modèles de Markov cachés . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

i
7 Equations forward / backward de Baum 43
7.1 Equation forward . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7.2 Equation backward . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

8 Algorithme de Viterbi 53

A Rappels de probabilités 59
Chapitre 1

Introduction

Le filtrage consiste à estimer l’état d’un système dynamique, c’est–à–dire évoluant au


cours du temps, à partir d’observations partielles, généralement bruitées.
Typiquement, on dispose d’une suite Y1 , Y2 , · · · , Yn d’observations, obtenues après trai-
tement préalable du signal brut recueilli au niveau des capteurs. Chaque observation Y n
est reliée à l’état inconnu Xn par une relation du type

Yn = h(Xn ) + Vn ,

où Vn est un bruit, qui modélise l’erreur d’observation. Pour aller plus loin, il est nécessaire
de définir plus précisément la notion de bruit. On trouvera à l’Annexe A les rappels de
probabilités dont on aura besoin dans ce cours.

Exemple : Navigation d’un véhicule sous–marin autonome On considère le pro-


blème de la navigation (c’est–à–dire de la détermination de la position et si possible de
la vitesse à chaque instant) d’un véhicule d’exploration sous–marin autonome.
Dans un environnement structuré, on peut utiliser la reconnaissance en temps réel de
points caractéristiques dont la position est disponible dans une base de données, sur une
carte, etc. On considère ici le cas où l’environnement n’est pas structuré, et où le système
de navigation utilise un réseau d’antennes à base longue, et éventuellement un capteur
d’immersion. La configuration du réseau consiste en une unité hydrophone / projecteur à
bord du véhicule, et un ensemble de quatre transpondeurs sous–marins déposés au fond
avant le début de la mission, et dont les positions sont supposées connues. Le projec-
teur du véhicule interroge les quatre transpondeurs, chacun desquels émet une impulsion
acoustique dès qu’il reçoit l’impulsion d’interrogation du véhicule. La durée de la trans-
mission aller–retour entre le véhicule et un transpondeur donné fournit une mesure de la
distance entre le véhicule et ce transpondeur. Le capteur d’immersion mesure la hauteur
de la colonne d’eau au dessus du véhicule.

1
2 Master Recherche STI 05/06

Fig. 1.1 – Navigation d’un véhicule sous–marin autonome

À partir des quatre mesures de distance, la position du véhicule est déterminé de façon
unique (pourvu que les quatre transpondeurs ne soient pas situés dans un même plan)
par l’intersection de quatre sphères, centrées chacune à la position d’un transpondeur
différent, et de rayon égal à la distance entre le véhicule et ce transpondeur.
Dans la pratique, ces mesures de distance sont entachées d’erreur, et il peut se produire
que le problème d’intersection n’ait pas de solution. Il peut aussi arriver qu’un ou plusieurs
des transpondeurs soit défaillant, c’est–à–dire ne fournisse pas de mesure pendant quelque
temps, voire de façon définitive, ce qui rend la triangulation impossible. Enfin il peut
arriver que les mesures de distance fournies par les transpondeurs ne puissent pas être
considérées comme synchrones, c’est–à–dire que les distances mesurées entre le véhicule et
une paire de transpondeurs correspondent à deux dates légèrement différentes : le véhicule
s’étant déplacé entre ces deux dates, la procédure de triangulation elle–même est entachée
d’erreur.
Ces différents problèmes (erreurs de mesure, défaillance des capteurs, asynchronisme,
etc.) sont résolus en introduisant un modèle a priori pour l’évolution du véhicule.
Filtre de Kalman et Modèles de Markov Cachés 3

1.1 Importance de l’information a priori

Tel qu’il est formulé, le problème de l’estimation de l’état inconnu Xn à partir des
observations Y1 , Y2 , · · · , Yn est en général mal–posé. Pour s’en convaincre, considérons le
cas très simple où il n’y a pas de dynamique dans l’évolution de l’état du système, c’est–à–
dire que Xn ≡ x, pour tout n = 1, 2, · · · , et x ∈ Rm est un paramètre inconnu. On désigne
par x0 la vraie valeur du paramètre. Pour simplifier encore la discussion, on suppose que
les observations d–dimensionnelles Y1 , Y2 , · · · , Yn dépendent linéairement du paramètre.
On a donc

Yn = H x + V n ,

où H est une matrice d × m.

• Si m = d, et si la matrice carrée H est inversible, alors on peut considérer l’estima-


teur suivant

n n n
−1 1 X −1 0 1 X 0 −1 1
X
x
bn = H ( Yk ) = H (H x + Vk ) = x + H ( Vk ) .
n k=1 n k=1 n k=1

Sous l’hypothèse
n
1 X
Vk −→ 0 , (1.1)
n k=1

quand le nombre n d’observations tend vers l’infini, on obtient la convergence de


l’estimateur xbn vers la vraie valeur du paramètre.
• Si m > d, alors le problème est en général mal–posé, même dans le cas favorable où
la matrice H est de rang maximal égal à d, c’est–à–dire où la matrice carrée H H ∗
est inversible. Considérons en effet le problème d’optimisation suivant

n
X
© ª
minm 1
2
|Yk − H x|2 .
x∈R
k=1

Les conditions d’optimalité du premier ordre pour la minimisation par rapport à


x ∈ Rm du critère

n
X n
X n
X
1
2
|Yk − H x|2 = 1
2
|Yk |2 − x∗ H ∗ ( Yk ) + n 12 x∗ H ∗ H x ,
k=1 k=1 k=1
4 Master Recherche STI 05/06

s’écrivent
n
X
H∗ Yk = n H ∗ H x
k=1
n
∗ 1 X
=⇒ H ( Yk − H x) = 0
n k=1
n
1 X

=⇒ HH ( Yk − H x) = 0
n k=1
n
1 X
=⇒ Hx= Yk .
n k=1
Dans le cas précédent, où m = d et la matrice H est inversible, on obtient la solution
unique
Xn
−1 1
x
bn = H ( Yk ) .
n k=1
Dans le cas considéré ici, il y a un nombre infini de solutions, et on peut seulement
affirmer que
n
© m 1 X ª
bn ∈ x ∈ R : H x =
x Yk .
n k=1
On vérifie que
n n
1 X 0 1 X
Hx
bn = Yk = H x + Vk ,
n k=1 n k=1
et à la limite quand le nombre n d’observations tend vers l’infini, on obtient sous
l’hypothèse (1.1)
Hx bn −→ H x0 ,
c’est–à–dire qu’asymptotiquement, lorsque le bruit d’observation a été éliminé par
moyennisation, on sait seulement que le paramètre inconnu x appartient au sous–
espace affine I(x0 ) de dimension (m − d) défini par
© ª
I(x0 ) = x ∈ Rm : H x = H x0 .
L’existence d’un nombre infini de solutions possibles n’est donc pas liée à la présence
du bruit d’observation. Elle existe même en absence de bruit d’observation, c’est–
à–dire même si Vn ≡ 0, pour tout n = 1, 2, · · · .
• Pour lever l’indétermination x ∈ I(x0 ), on essaye d’utiliser des informations supplé-
mentaires sur le paramètre inconnu x, par exemple : x est proche de µ, c’est–à–dire
qu’on introduit une information a priori. On peut formaliser la prise en compte de
cette information supplémentaire en considérant le problème d’optimisation suivant
n
© X ª
minm 21 |Yk − H x|2 + 12 (x − µ)∗ Σ−1 (x − µ) ,
x∈R
k=1
Filtre de Kalman et Modèles de Markov Cachés 5

où Σ est une matrice symétrique définie positive, de dimension m. Les conditions
d’optimalité du premier ordre pour la minimisation par rapport à x ∈ Rm du critère
n
X
1
2
|Yk − H x|2 + 21 (x − µ)∗ Σ−1 (x − µ)
k=1
n
X n
X
2 ∗ ∗
= 1
2
|Yk | − x H ( Yk ) + n 12 x∗ H ∗ H x
k=1 k=1

+ 12 µ∗ Σ−1 µ − x∗ Σ−1 µ + 12 x∗ Σ−1 x ,

s’écrivent
n
X

H ( Yk ) + Σ−1 µ = (n H ∗ H + Σ−1 ) x
k=1

Xn
1 −1
∗ ∗ 1 1
=⇒ (H H + Σ ) x = H ( Yk ) + Σ−1 µ .
n n k=1 n

En utilisant le résultat du Lemme 1.1 ci–dessous, avec le choix R = I et Q = n Σ,


on obtient
1 −1 −1 1
(H ∗ H + Σ ) = n Σ − n Σ H ∗ (H Σ H ∗ + I)−1 H Σ .
n n
On en déduit
1 −1 −1 ∗ 1
(H ∗ H + Σ ) H = Σ H ∗ (H Σ H ∗ + I)−1 ,
n n
et
1 −1 −1 1 −1 1
(H ∗ H + Σ ) Σ = I − Σ H ∗ (H Σ H ∗ + I)−1 H ,
n n n
ce qui donne la solution unique suivante
n
∗ 1 −1 1 X
∗ 1
x
bn = Σ H (H Σ H + I) ( Yk ) + [ I − Σ H ∗ (H Σ H ∗ + I)−1 H ] µ .
n n k=1 n

On vérifie que
1 −1 1
bn = Σ H ∗ (H Σ H ∗ +
x I) H x0 + [ I − Σ H ∗ (H Σ H ∗ + I)−1 H ] µ
n n
n
∗ 1 −1 1 X ∗
+ Σ H (H Σ H + I) ( Vk ) ,
n n k=1

d’où on déduit la limite suivante

bn −→ x⊥ = Σ H ∗ (H Σ H ∗ )−1 H x0 + [ I − Σ H ∗ (H Σ H ∗ )−1 H ] µ ,
x
6 Master Recherche STI 05/06

quand le nombre n d’observations tend vers l’infini. L’inversibilité de la matrice


H Σ H ∗ est démontrée dans le Lemme 1.3 ci–dessous. On vérifie que

H x⊥ = H x 0 ,

c’est–à–dire que x⊥ appartient au sous–espace affine I(x0 ). On définit l’opérateur


linéaire (matrice m × m)

PH = Σ H ∗ (H Σ H ∗ )−1 H .

On remarque d’abord que H PH = H, c’est–à–dire que pour tout x ∈ Rm , les points


x et PH x appartiennent au même espace affine de dimension (m − d) de Rm . On en
déduit également que PH est un projecteur : en effet

PH2 = Σ H ∗ (H Σ H ∗ )−1 H PH = Σ H ∗ (H Σ H ∗ )−1 H = PH .

On remarque aussi que


PH∗ Σ−1 = Σ−1 PH .
Au sous–espace affine I(x0 ) est associé le sous–espace linéaire ker H : en effet, deux
points x0 et x00 dans I(x0 ) définissent un vecteur u = x00 − x0 qui appartient au
noyau de H, puisque H u = H x00 − H x0 = 0. Soit v un vecteur de l’image R(Σ H ∗ ),
c’est–à–dire un vecteur de la forme v = Σ H ∗ λ, pour un certain λ ∈ Rd : ce vecteur
est orthogonal (pour le produit scalaire associé à la matrice Σ−1 ) à ker H. En effet,
pour tout u ∈ ker H
v ∗ Σ−1 u = λ∗ H u = 0 .
On a donc ker H ⊕ R(Σ H ∗ ) = Rm . On remarque que pour tout v ∈ R(Σ H ∗ )

PH v = Σ H ∗ (H Σ H ∗ )−1 H Σ H ∗ λ = Σ H ∗ λ = v ,

c’est–à–dire que PH laisse chaque vecteur du sous–espace linéaire R(Σ H ∗ ) inchangé.


D’autre part, pour tout u ∈ ker H

PH u = Σ H ∗ (H Σ H ∗ )−1 H u = 0 .

Il en résulte que PH est le projecteur orthogonal (pour le produit scalaire associé à


la matrice Σ−1 ) sur le sous–espace linéaire R(Σ H ∗ ) = (ker H)⊥ , et (I − PH ) est le
projecteur orthogonal sur le sous–espace linéaire ker H. Finalement

x⊥ − x0 = (I − PH ) (µ − x0 ) ,

c’est–à–dire que le vecteur (x⊥ − x0 ) est la projection orthogonale (pour le produit


scalaire associé à la matrice Σ−1 ) du vecteur (µ−x0 ) sur le sous–espace linéaire ker H.
La valeur limite x⊥ de l’estimateur, est donc le point de l’espace affine I(x0 ) qui est
le plus proche (pour le produit scalaire associé à la matrice Σ−1 ) de l’estimateur a
priori µ.
Filtre de Kalman et Modèles de Markov Cachés 7

x⊥

x0

I(x0 )

Fig. 1.2 – Prise en compte de l’information a priori

Lemme 1.1 Soit Q et R deux matrices symétriques définies positives, de dimension m


et d respectivement. Alors
(H ∗ R−1 H + Q−1 )−1 = Q − Q H ∗ (H Q H ∗ + R)−1 H Q ,
et de plus
(H ∗ R−1 H + Q−1 )−1 H ∗ = Q H ∗ (H Q H ∗ + R)−1 R .

Preuve. On remarque d’abord que


H Q H∗ + R ≥ R et H ∗ R−1 H + Q−1 ≥ Q−1
au sens des matrices symétriques, ce qui prouve que les matrices
(H Q H ∗ + R) et (H ∗ R−1 H + Q−1 )
sont inversibles. On vérifie alors que
[ Q − Q H ∗ (H Q H ∗ + R)−1 H Q ] [H ∗ R−1 H + Q−1 ] = Q H ∗ R−1 H + I
− Q H ∗ (H Q H ∗ + R)−1 (H Q H ∗ + R − R) R−1 H
− Q H ∗ (H Q H ∗ + R)−1 H = I ,
et d’autre part, en multipliant à droite par H ∗ , on obtient
(H ∗ R−1 H + Q−1 )−1 H ∗ = Q H ∗ − Q H ∗ (H Q H ∗ + R)−1 H Q H ∗
= Q H ∗ − Q H ∗ (H Q H ∗ + R)−1 (H Q H ∗ + R − R)
= Q H ∗ (H Q H ∗ + R)−1 R . 2
8 Master Recherche STI 05/06

Remarque 1.2 Cette formule d’inversion permet de remplacer l’inversion de la matrice


(H ∗ R−1 H + Q−1 ) de dimension m, par l’inversion de la matrice (H Q H ∗ + R) de dimen-
sion d, avec en général d ≤ m. En particulier, dans le cas où d = 1, la matrice H est un
vecteur ligne H = h∗ , la matrice R est un scalaire R = r, et la formule devient

h h∗ Q h h∗ Q
( + Q−1 )−1 = Q − .
r r + h∗ Q h

Lemme 1.3 Soit Σ une matrice symétrique définie positive, de dimension m, et soit H
une matrice d × m, avec d ≤ m, de rang plein égal à d. Alors la matrice H Σ H ∗ est
inversible.

Preuve. Soit u ∈ Rd tel que

u∗ (H Σ H ∗ ) u = (H ∗ u)∗ Σ (H ∗ u) = 0 .

Comme Σ est inversible, alors nécessairement H ∗ u = 0, et comme H est de rang plein,


on en déduit que u = 0. 2

1.2 Prise en compte de l’information a priori


Dans de nombreux cas, la prise en compte de l’information a priori peut se ramener
au problème statique suivant : étant donnés deux vecteurs aléatoires X et Y , qu’apporte
le fait d’observer la réalisation Y = y sur la connaissance que l’on a de X ?

Cas général

Soit X et Y deux vecteurs aléatoires de dimension m et d respectivement. Par définition,


un estimateur de X à partir de l’observation de Y est une application mesurable

y ∈ Rd 7−→ ψ(y) ∈ Rm .

Par abus de langage, la variable aléatoire ψ(Y ) sera également notée ψ. Pour une réalisation
particulière Y = y de l’observation (y fixé), x
b = ψ(y) est appelée une estimation de X.

Estimateur du minimum de variance Soit ψ(·) un estimateur de X sachant Y .


Naturellement ψ = ψ(Y ) n’est pas égal à X : une mesure de l’écart entre l’estimateur et
la vraie valeur est fournie par la variance de l’erreur d’estimation (ou erreur quadratique
moyenne)
E[ |X − ψ(Y )|2 ] . (1.2)
Filtre de Kalman et Modèles de Markov Cachés 9

b tel que
L’estimateur du minimum de variance de X sachant Y est un estimateur X(·)

b )|2 ] ≤ E[ |X − ψ(Y )|2 ]


E[ |X − X(Y

pour tout autre estimateur ψ(·).


La Proposition 1.4 ci–dessous montre que cet estimateur est obtenu à l’aide de la
densité conditionnelle pX|Y =y (x) de X sachant Y = y, définie par

pX,Y (x, y) pX,Y (x, y)


pX|Y =y (x) = Z = , (1.3)
pY (y)
pX,Y (x, y) dx
Rm

où pX,Y désigne la densité conjointe des variables aléatoires X et Y .

Proposition 1.4 Soit X et Y des vecteurs aléatoires de dimension m et d respectivement.


L’estimateur du minimum de variance de X sachant Y est la moyenne conditionnelle, i.e.
Z
b
X(y) = E[X | Y = y] = x pX|Y =y (x) dx .
Rm

Preuve. Soit ψ(·) un estimateur quelconque.

b )|2 ] + 2 E[ (X(Y
E[ |X − ψ(Y )|2 ] = E[ |X − X(Y b ) − ψ(Y ))∗ (X − X(Y
b )) ]
b ) − ψ(Y )|2 ] ,
+ E[ |X(Y

et on remarque que

b ) − ψ(Y ))∗ (X − X(Y


E[ (X(Y b )) ] =

Z Z
= b
(X(y) b
− ψ(y))∗ (x − X(y)) pX,Y (x, y) dx dy
Rm Rd
Z Z
© ª
= b
(X(y) − ψ(y)) ∗ b
(x − X(y)) pX|Y =y (x) dx pY (y) dy = 0 ,
Rd Rm

b
par définition de X(y) (on peut aussi utiliser directement le résultat de la Proposition A.4).
On a donc
Z
2 b )| ] +
E[ |X − ψ(Y )| ] = E[ |X − X(Y 2 b
|X(y) − ψ(y)|2 pY (y) dy ,
Rd

b
et le vecteur ψ(y) qui minimise cette expression est ψ(y) = X(y) 2
10 Master Recherche STI 05/06

Biais d’un estimateur Soit X et Y des vecteurs aléatoires et ψ(·) un estimateur de


X sachant Y . Le biais de ψ est défini par
4
b(y) = E[X − ψ(y) | Y = y] .
On dit que ψ(·) est un estimateur sans biais si b(y) = 0 pour tout y. D’après la définition
de la moyenne conditionnelle Xb de X sachant Y , le résultat suivant est immédiat

b de X sachant Y est un estimateur sans


Proposition 1.5 La moyenne conditionnelle X
biais.

Cas gaussien
Dans le cas particulier des vecteurs aléatoires gaussiens, le résultat général obtenu
ci–dessus peut être précisé de la façon suivante.

Proposition 1.6 Soit Z = (X, Y ) un vecteur aléatoire gaussien de dimension m + d, de


moyenne et de matrice de covariance
µ ¶ µ ¶
X̄ QX QXY
Z̄ = , QZ = ,
Ȳ QY X QY
respectivement. Si la matrice QY est inversible, alors la densité conditionnelle pX|Y =y (x)
du vecteur aléatoire X sachant Y = y, est une densité gaussienne de moyenne
b = X̄ + QXY Q−1
X(y) Y (y − Ȳ ) ,

et de matrice de covariance
R = QX − QXY Q−1
Y QY X .

Remarque 1.7 On vérifie aisément que


0 ≤ R ≤ QX
au sens des matrices symétriques, c’est–à–dire que l’utilisation de l’information supplé-
mentaire (Y = y), ne peut que réduire l’incertitude que l’on a sur le vecteur aléatoire X.
En outre, la matrice R ne dépend pas de y, et peut donc être calculée avant même de
disposer de la valeur prise par l’observation Y .

Remarque 1.8 Soit X b = X(Y


b ) l’estimateur du minimum de variance de X sachant Y .
Compte tenu que
Xb = X̄ + QXY Q−1 (Y − Ȳ ) ,
Y
b Y ) est un vecteur
dépend de façon affine du vecteur aléatoire Y , on en déduit que (X, X,
aléatoire gaussien, comme transformation affine du vecteur aléatoire gaussien Z = (X, Y ).
Filtre de Kalman et Modèles de Markov Cachés 11

Preuve. On donne une première démonstration, dans le cas où la matrice QZ est in-
versible. Dans ce cas, les lois des vecteurs aléatoires gaussiens Y et Z ont chacune une
densité, et par définition
1 © ª
√ √ exp − 21 (z − Z̄)∗ Q−1
Z (z − Z̄)
pX,Y (x, y) ( 2π) m+d
det QZ
pX|Y =y (x) = = © 1 ª .
pY (y) 1 ∗ −1
√ √ exp − 2 (y − Ȳ ) QY (y − Ȳ )
( 2π)d det QY

On utilise la formule suivante (simple à vérifier)


µ ¶ µ ¶ µ ¶
I −QXY Q−1 Y I 0 QX − QXY Q−1
Y QY X 0
QZ = . (1.4)
0 I −Q−1 ∗
Y QXY I 0 QY

En prenant le déterminant dans (1.4), on obtient

det QZ = det R det QY .

L’identité (1.4) implique aussi que


µ ¶−1 µ ¶−1 µ ¶
I 0 I −QXY Q−1 R−1 0
Q−1 Y
= ,
−Q−1 ∗
Y QXY I Z 0 I 0 Q−1
Y

c’est–à–dire
µ ¶µ ¶µ ¶
I 0 R−1 0 I −QXY Q−1
Q−1 = Y
.
Z −Q−1 ∗
Y QXY I 0 Q−1
Y 0 I

Compte tenu que


µ ¶ µ ¶ µ ¶ µ ¶
I −QXY Q−1Y x − X̄ (x − X̄) − QXY Q−1Y (y − Ȳ )
b
x − X(y)
= = ,
0 I y − Ȳ y − Ȳ y − Ȳ

on obtient

(z − Z̄)∗ Q−1 b ∗ −1 b + (y − Ȳ )∗ Q−1


Z (z − Z̄) = (x − X(y)) R (x − X(y)) Y (y − Ȳ ) ,

et
1 © ª
pX|Y =y (x) = √ √ b
exp − 21 (x − X(y)) ∗ −1 b
R (x − X(y)) ,
( 2π)m det R
ce qui montre le résultat. 2
Preuve (cas général). Dans le cas où la matrice QZ n’est pas nécessairement inver-
sible, on montre que la fonction caractéristique de la loi conditionnelle du vecteur aléatoire
X sachant Y = y est égale à
© ª
b
exp i u∗ X(y) − 21 u∗ Ru ,
12 Master Recherche STI 05/06

c’est–à–dire que la loi conditionnelle du vecteur aléatoire X sachant Y = y est une loi
gaussienne de moyenne X(y)b et de matrice de covariance R. Par définition

ΦX,Y (u, v) = E[ e i u
∗ X+i v ∗ Y
] = E[ e i v
∗Y
E[ e i u
∗X
| Y ]]
Z
= E[ e i v
∗Y
e i v y ΦX|Y =y (u) pY (y) dy ,

ΦX|Y (u) ] =
Rd

et on vérifie d’autre part que


Z
© ª

b
e i v y exp i u∗ X(y) − 21 u∗ Ru pY (y) dy =
Rd
Z
© ∗ ∗ −1 1 ∗
ª © ª
e i v y exp i u∗ QXY Q−1

= exp i u X̄ − i u QXY QY Ȳ − 2 u Ru Y y pY (y) dy
Rd
© ª
= exp i u∗ X̄ − i u∗ QXY Q−1 1 ∗
Y Ȳ − 2 u Ru ΦY (v + Q−1 Y QY X u)
© ∗
= exp i u X̄ − i u∗ QXY Q−1 1 ∗ 1 ∗
Y Ȳ − 2 u QX u + 2 u QXY QY QY X u
−1
ª
+ i (v ∗ + u∗ QXY Q−1 1 ∗ ∗ −1 −1
Y ) Ȳ − 2 (v + u QXY QY ) QY (v + QY QY X u)
© ª
= exp i u∗ X̄ + i v ∗ Ȳ − 12 u∗ QX u − u∗ QXY v − 12 v ∗ QY v = ΦX,Y (u, v) .

Par injectivité de la transformé de Fourier, on obtient


© ª
b
ΦX|Y =y (u) = exp i u∗ X(y) − 21 u∗ Ru . 2

Conclusion
Il est donc important de disposer d’une information a priori sur l’état inconnu X n ,
par exemple de disposer d’une équation d’état décrivant l’évolution de Xn quand n varie.
On considérera deux types de modèles :
• les systèmes linéaires gaussiens,
• les chaı̂nes de Markov à espace d’état fini,
et dans chacun de ces deux cas, il sera possible de résoudre exactement le problème de
filtrage de façon optimale, par la mise en œuvre :
• du filtre de Kalman, dans le cas des systèmes linéaires gaussiens,
• des équations forward–backward de Baum, ou de l’algorithme de Viterbi, dans le
cas des chaı̂nes de Markov à état fini.
Ces deux cas peuvent être vus comme des cas particuliers de modèles beaucoup plus
généraux :
• les chaı̂nes de Markov à espace d’état quelconque (fini, dénombrable, continu, hy-
bride, etc.),
et dans ce cas il ne sera pas possible de résoudre exactement le problème de filtrage de
façon optimale, qui s’exprime pourtant très simplement en termes de flots de Feynman–
Kac, et il faudra avoir recours à la mise en œuvre de méthodes de résolution approchées,
en l’occurrence :
• de filtres particulaires, c’est–à–dire de méthodes de Monte Carlo avec interaction.
Chapitre 2

Systèmes linéaires gaussiens

On appelle processus aléatoire en temps discret une famille {Xk , k ∈ N} de vecteurs


aléatoires (notée {Xk }) définis sur un espace probabilisé (Ω, F, P) à valeurs dans Rm . Un
processus aléatoire gaussien est un processus aléatoire {Xk } tel que pour tout n ∈ N
le vecteur (X0 , · · · , Xn ) est un vecteur aléatoire gaussien (de dimension (n + 1) × m).
Deux processus aléatoires {Xk } et {Xk0 } sont indépendants si pour tout n, n0 ∈ N, les
vecteurs aléatoires (X0 , · · · , Xn ) et (X00 , · · · , Xn0 ) sont indépendants. Un bruit blanc est
un processus aléatoire {Xk } tel que

E[Xk ] = 0 , E[Xk Xl∗ ] = 0 , si k 6= l .

2.1 Équations d’état


On considère le système dynamique suivant

Xk = Fk Xk−1 + fk + Gk Wk (2.1)

où {Xk } et {Wk } prennent respectivement leurs valeurs dans Rm et Rp . On fait les hy-
pothèses suivantes sur les coefficients : Fk ∈ Rm×m , fk ∈ Rm , Gk ∈ Rm×p , pour tout
k ∈ N. On suppose que
• le bruit {Wk } est un bruit blanc gaussien de covariance QWk ,
• la condition initiale X0 est gaussienne, de moyenne X̄0 et de covariance QX 0 ,
• le bruit {Wk } et la condition initiale X0 sont mutuellement indépendants.

Proposition 2.1 La sortie {Xk } du système (2.1) est un processus gaussien à valeurs
dans Rm . En particulier, Xk est gaussien, de moyenne X̄k et de matrice de covariance
QXk , avec

X̄k = Fk X̄k−1 + fk ,
∗ ∗
QX X W
k = Fk Qk−1 Fk + Gk Qk Gk .

13
14 Master Recherche STI 05/06

Preuve. Comme sortie d’un système linéaire à entrées gaussiennes, {Xk } est un proces-
sus gaussien. En effet, pour tout n ∈ N, il existe une matrice A ∈ R((n+1) m)×(m+(n+1) p) et
un vecteur b ∈ R(n+1) m tels que
   
X0 X0
 X1   W1 
   
 ..  = A  ..  + b .
 .   . 
Xn Wn

D’après les hypothèses (X0 , W1 , · · · , Wn ) est un vecteur gaussien, donc (X0 , X1 , · · · , Xn )


est un vecteur aléatoire gaussien (comme transformation affine d’un vecteur aléatoire
gaussien).
Par ailleurs, d’après (2.1)

X̄k = E[Xk ]
= E[Fk Xk−1 + fk + Gk Wk ]
= Fk E[Xk−1 ] + fk + Gk E[Wk ]
= Fk X̄k−1 + fk ,


QX
k = E[(Xk − X̄k ) (Xk − X̄k ) ]
= E[(Fk (Xk−1 − X̄k−1 ) + Gk Wk ) (Fk (Xk−1 − X̄k−1 ) + Gk Wk )∗ ]
= Fk E[(Xk−1 − X̄k−1 ) (Xk−1 − X̄k−1 )∗ ] Fk∗ + Gk E[Wk (Xk−1 − X̄k−1 )∗ ] Fk∗
+Fk E[(Xk−1 − X̄k−1 ) Wk∗ ] G∗k + Gk E[Wk Wk∗ ] G∗k
∗ ∗
= F k QX W
k−1 Fk + Gk Qk Gk .

Dans cette dernière égalité, on a utilisé le fait que (Xk−1 − X̄k−1 ) est indépendant de Wk ,
donc E[(Xk−1 − X̄k−1 ) Wk∗ ] = 0. 2

2.2 Équations d’état et d’observation


On considère le système dynamique suivant

Xk = Fk Xk−1 + fk + Gk Wk , (2.2)
Y k = H k Xk + h k + V k , (2.3)

où {Xk }, {Yk }, {Wk } et {Vk } prennent respectivement leurs valeurs dans Rm , Rd , Rp et
Rd . On fait les hypothèses du paragraphe 2.1 sur les coefficients Fk , fk , Gk , et de plus
Hk ∈ Rd×m , hk ∈ Rd , pour tout k ∈ N. On suppose que
• le bruit {Wk } est un bruit blanc gaussien de covariance QWk ,
• la condition initiale X0 est gaussienne, de moyenne X̄0 et de covariance QX 0 ,
Filtre de Kalman et Modèles de Markov Cachés 15

• le bruit d’observation {Vk } est un bruit blanc gaussien de covariance QVk ,


• les bruits {Wk } et {Vk }, et la condition initiale X0 sont mutuellement indépendants.
Dans (2.2), (2.3), Xk représente l’état d’un système à l’instant k. On suppose que l’on
ne peut pas observer directement ce système, mais que l’on dispose d’une observation Yk
qui est la somme d’un signal Hk Xk + hk , et d’un bruit d’observation Vk .
D’après la Proposition 2.1, le processus {(Xk , Yk )} est un processus gaussien. En par-
ticulier, (Xk , Yk ) est un vecteur gaussien de moyenne et de matrice de covariance
µ ¶ µ X ¶
X̄k Qk QXY k
, ,
Ȳk QYk X QYk

respectivement, avec

X̄k = Fk X̄k−1 + fk ,
∗ ∗
QXk = F k QX W
k−1 Fk + Gk Qk Gk ,
Ȳk = Hk X̄k + hk ,

QYk = H k QX V
k Hk + Q k ,

QXY
k = QXk Hk .

Remarque 2.2 Dans le système (2.2), (2.3), les coefficients Fk , fk , Gk , Hk et hk , et les


matrices de covariance QW V
k , Qk des bruits {Wk }, {Vk } peuvent dépendre de l’observation
{Yk } de la manière suivante :
• Fk , fk , Gk et QWk peuvent dépendre de (Y0 , Y1 , · · · , Yk ),
• Hk , hk , et QVk peuvent dépendre de (Y0 , Y1 , · · · , Yk−1 ).
Dans ce cas le processus {(Xk , Yk )} (et a fortiori le processus {Xk }) n’est plus gaus-
sien, mais le processus {Xk } est conditionnellement gaussien par rapport au processus
{Yk } (i.e. pour des valeurs de l’observation Y0:k−1 = (Y0 , . . . , Yk−1 ) données, l’état Xk du
système (2.2) est gaussien).
16 Master Recherche STI 05/06
Chapitre 3

Filtre de Kalman, et extensions

Le problème de filtrage (en temps discret) se présente en général de la manière sui-


vante : on considère {Xk }, un processus (dont les caractéristiques statistiques sont connues)
représentant l’état d’un système non observé. A l’instant k, on recueille une observation
Yk qui est formée d’un signal (i.e. une fonction h(Xk ) de l’état Xk ) et d’un bruit additif
Vk :
Yk = h(Xk ) + Vk .
Les caractéristiques statistiques du bruit de mesure {Vk } sont également supposées connues.
A l’instant k, on dispose de l’information Y0:k = (Y0 , · · · , Yk ) et le but est d’obtenir le plus
d’information possible sur l’état du système Xk (on veut, par exemple, pouvoir calculer un
estimateur X bk de Xk ). Comme on le verra au paragraphe 1.2, la solution est de calculer
la loi conditionnelle de Xk sachant Y0:k .
Dans le cas des systèmes décrits dans le chapitre 2, on est dans un cadre gaussien
et l’évolution de cette loi conditionnelle (déterminée par sa moyenne et sa matrice de
covariance) est régie par un système dynamique (le filtre de Kalman–Bucy) simple à
mettre en œuvre (cf. paragraphe 3.1). Dans tous les autres cas (non linéaires), l’évolution
de cette loi conditionnelle est determinée par un tout autre type de systèmes souvent
impossibles à utiliser en pratique. Mais les techniques développées dans le cas linéaire
peuvent s’étendre au cas non linéaire par des méthodes de linéarisation (cf. paragraphe
3.2). Les filtres ainsi obtenus sont souvent utilisables en pratique mais conduisent parfois
à de mauvais résultats.

3.1 Filtre de Kalman


On considère un système linéaire du type (2.2), c’est–à–dire

Xk = Fk Xk−1 + fk + Gk Wk , (3.1)
Y k = H k Xk + h k + V k , (3.2)

17
18 Master Recherche STI 05/06

avec les hypothèses du paragraphe 2.2. A l’instant k on dispose de l’information


4
Y0:k = (Y0 , Y1 , · · · , Yk ) .

L’objectif est d’estimer le vecteur aléatoire Xk à partir de Y0:k , de façon optimale et


récursive. Si on adopte le critère du minimum de variance, il s’agit d’après le para-
graphe 1.2 de calculer la loi conditionnelle du vecteur aléatoire Xk sachant Y0:k . Comme
le cadre est gaussien, il suffit de calculer la moyenne et la matrice de covariance
4 4
bk =
X E[Xk | Y0:k ] et bk ) (Xk − X
Pk = E[(Xk − X bk )∗ | Y0:k ] .

On définit également les quantités suivantes


4 4
b− =
X E[Xk | Y0:k−1 ] et b − ) (Xk − X
Pk− = E[(Xk − X b − )∗ | Y0:k−1 ] .
k k k

D’après la remarque 1.7, les matrices de covariances conditionnelles Pk et Pk− ne dépendent


pas des observations, c’est–à–dire que
4 4
bk ) (Xk − X
Pk = E[(Xk − X b k )∗ ] et b − ) (Xk − X
Pk− = E[(Xk − X b − )∗ ] .
k k

Supposons connue la loi conditionnelle du vecteur aléatoire Xk−1 sachant Y0:k−1 . Pour
calculer la loi conditionnelle du vecteur aléatoire Xk sachant Y0:k , on procède en deux
étapes.
• Dans l’étape de prédiction, on calcule la loi conditionnelle du vecteur aléatoire X k
sachant les observations passées Y0:k−1 , ce qui est facile à partir de l’équation (3.1).
• Dans l’étape de correction, on utilise la nouvelle observation Yk . En particulier, on
considère la composante de l’observation Yk qui apporte une information nouvelle
par rapport aux observations passées Y0:k−1 , c’est–à–dire

Ik = Yk − E[Yk | Y0:k−1 ] .

D’après l’équation (3.2)

b − + hk ) ,
Ik = Yk − (Hk E[Xk | Y0:k−1 ] + hk + E[Vk | Y0:k−1 ]) = Yk − (Hk X k

compte tenu que Vk et Y0:k−1 sont indépendants.

Lemme 3.1 Le processus {Ik } est un processus gaussien à valeurs dans Rd , appelé pro-
cessus d’innovation. En particulier, Ik est un vecteur aléatoire gaussien de dimension d,
de moyenne nulle et de matrice de covariance

QIk = Hk Pk− Hk∗ + QVk ,

indépendant de Y0:k−1 .
Filtre de Kalman et Modèles de Markov Cachés 19

Preuve. D’après la Remarque 1.8, l’observation prédite E[Yk | Y0:k−1 ] dépend de façon
affine des observations passées (Y0 , Y1 , · · · , Yk−1 ), et donc l’innovation Ik dépend de façon
affine des observations (Y0 , Y1 , · · · , Yk ). On en déduit que (I0 , I1 , · · · , In ) est un vecteur
aléatoire gaussien (comme transformation affine d’un vecteur aléatoire gaussien).
D’après l’équation (3.2)
b − + hk ) = Hk (Xk − X
Ik = Yk − (Hk X b − ) + Vk .
k k

On en déduit que

QIk = E[Ik Ik∗ ]


b − ) + Vk ) (Hk (Xk − X
= E[(Hk (Xk − X b − ) + V k )∗ ]
k k
b − b − ∗ ∗
= Hk E[(Xk − X ) (Xk − X ) ] Hk + E[Vk (Xk − X b − )∗ ] Hk∗
k k k
+Hk E[(Xk − X b − ) V ∗ ] + E[Vk V ∗ ]
k k k
= Hk Pk− Hk∗ + QVk .
b − ) est indépendant de Vk , donc
Dans cette dernière égalité, on a utilisé le fait que (Xk − X k
E[(Xk − Xb − ) V ∗ ] = 0. 2
k k

Remarque 3.2 On en déduit également que


b − ) Ik∗ ] = E[(Xk − X
E[(Xk − X b − ) (Hk (Xk − Xb − ) + V k )∗ ]
k k k
b − b − ∗
= E[(Xk − X ) (Xk − X ) ] Hk∗ + E[(Xk − X b − ) Vk∗ ]
k k k
= Pk− Hk∗ .

Théorème 3.3 (Filtre de Kalman–Bucy) On suppose que la matrice de covariance


bk } et {Pk } sont définis par les équations
QVk est inversible, pour tout k ∈ N. Alors {X
suivantes
b − = Fk X
X bk−1 + fk , (3.3)
k
Pk− = Fk Pk−1 Fk∗ + Gk QW ∗
k Gk , (3.4)

et
bk = X
X b − + hk )] ,
b − + Kk [Yk − (Hk X (3.5)
k k

Pk = [I − Kk Hk ] Pk , (3.6)

où la matrice
Kk = Pk− Hk∗ [Hk Pk− Hk∗ + QVk ]−1 ,
est appelée gain de Kalman, et avec les initialisations
b0− = X̄0 = E[X0 ] ,
X P0− = QX
0 = cov(X0 ) .
20 Master Recherche STI 05/06

Remarque 3.4 La suite {Pk } ne dépend pas des observations {Yk }, ni des coefficients
{fk } et {hk }. Elle peut donc être pré–calculée, en particulier dans le cas simple où les
coefficients {Fk }, {Gk }, {Hk }, {QW V
k } et {Qk } sont constants, c’est–à–dire où

Fk = F , Gk = G , Hk = H , QW
k = Q
W
, QVk = QV ,

pour tout k ≥ 0.

Construction du filtre de Kalman–Bucy On procède en plusieurs étapes. Le point


central est la Proposition 1.6 qui sera constamment utilisée.

b0 et P0 en fonction de X
X b0− et P0−

Le vecteur aléatoire (X0 , Y0 ) est gaussien, de moyenne et de matrice de covariance


données par µ ¶ µ ¶

X̄0 QX0 QX0 H0
, ∗ ,
H0 X̄0 + h0 H 0 QX0 H 0 QX V
0 H0 + Q 0

respectivement. D’après la Proposition 1.6, la loi de X0 sachant Y0 est gaussienne, de


moyenne
Xb0 = X̄0 + QX ∗ X ∗
0 H0 [H0 Q0 H0 + Q0 ]
V −1
[Y0 − (H0 X̄0 + h0 )] ,
et de matrice de covariance
∗ ∗ V −1
P0 = Q X X X
0 − Q0 H0 [H0 Q0 H0 + Q0 ] H 0 QX
0 .

b − et P − en fonction de X
X bk−1 et Pk−1
k k

Le vecteur aléatoire (Xk , Y0 , · · · , Yk−1 ) est gaussien, et d’après la Proposition 1.6, la


loi de Xk sachant Y0:k−1 est gaussienne, de moyenne X b − et de matrice de covariance P − .
k k
D’après l’équation
Xk = Fk Xk−1 + fk + Gk Wk , (3.7)
on a

b − = E[Xk | Y0:k−1 ]
X k
= Fk E[Xk−1 | Y0:k−1 ] + fk + Gk E[Wk | Y0:k−1 ]
bk−1 + fk ,
= Fk X

compte tenu que Wk et Yk−1 sont indépendants. Par différence

b − = Fk (Xk−1 − X
Xk − X bk−1 ) + Gk Wk ,
k
Filtre de Kalman et Modèles de Markov Cachés 21

de sorte que
Pk− = E[(Xk − Xb − ) (Xk − X
b − )∗ ]
k k
b bk−1 ) + Gk Wk )∗ ]
= E[(Fk (Xk−1 − Xk−1 ) + Gk Wk ) (Fk (Xk−1 − X
bk−1 ) (Xk−1 − X
= Fk E[(Xk−1 − X bk−1 )∗ ] Fk∗ + Gk E[Wk (Xk−1 − X
bk−1 )∗ ] Fk∗
+Fk E[(Xk−1 − Xbk−1 ) Wk∗ ] G∗k + Gk E[Wk Wk∗ ] G∗k
= Fk Pk−1 Fk∗ + Gk QW ∗
k Gk .
bk−1 ) est indépendant de Wk ,
Dans cette dernière égalité, on a utilisé le fait que (Xk−1 − X
donc E[(Xk−1 − X bk−1 ) W ] = 0.

2
k

bk et Pk en fonction de X
X b − et P −
k k

Le vecteur aléatoire (Xk , Y0 , · · · , Yk ) est gaussien, et d’après la Proposition 1.6, la loi


de Xk sachant Y0:k est gaussienne, de moyenne X bk et de matrice de covariance déterministe
Pk . D’après le Lemme 3.1
bk = E[Xk | Y0:k ]
X
b − + E[Xk − X
= X b − | Y0:k ]
k k
b − + E[Xk − X
= X b − | Y0:k−1 , Ik ]
k k
b b
= X + E[Xk − X − | Ik ] .

k k

Par différence
bk = (Xk − X
Xk − X b − ) − (X
bk − X
b −)
k k
b b
= (Xk − Xk ) − E[Xk − Xk− | Ik ] ,

de sorte que
bk ) (Xk − X
Pk = E[ (Xk − X b k )∗ ]
b − ) − E[Xk − X
= E[ ((Xk − X b − | Ik ]) ((Xk − X
b − ) − E[Xk − X
b − | Ik ])∗ ] .
k k k k

Il suffit donc de calculer la moyenne conditionnelle et la matrice de covariance condition-


nelle du vecteur aléatoire (Xk − Xb − ) sachant Ik . Le vecteur aléatoire (Xk − X
b − , Ik ) est
k k
un vecteur aléatoire gaussien, de moyenne nulle et de matrice de covariance
µ ¶
Pk− Pk− Hk∗
.
Hk Pk− Hk Pk− Hk∗ + QVk

L’hypothèse que QVk est inversible entraı̂ne que Hk Pk− Hk∗ + QVk est inversible. D’après
la Proposition 1.6, on a immédiatement
bk = X
X b − + P − Hk∗ [Hk P − Hk∗ + QVk ]−1 Ik ,
k k k

et
Pk = Pk− − Pk− Hk∗ [Hk Pk− Hk∗ + QVk ]−1 Hk Pk− ,
ce qui termine la démonstration. 2
22 Master Recherche STI 05/06

3.2 Extensions au cas non–linéaire


On considère un système non linéaire

Xk = fk (Xk−1 ) + gk (Xk−1 ) Wk , (3.8)


Yk = hk (Xk ) + Vk , (3.9)

où {Xk }, {Yk }, {Wk }, {Vk } prennent respectivement leurs valeurs dans Rm , Rd , Rp et
Rd , et où les fonctions fk , gk et hk sont définies sur Rm , à valeurs dans Rm , Rm×p et Rd
respectivement. On suppose que les fonctions fk et hk sont dérivables. {Wk } et {Vk } sont
des bruits blancs gaussiens (de covariances respectives QW V
k et Qk ) indépendants entre eux
et indépendants de la condition initiale X0 de (3.8).
Pour le système (3.8), (3.9), la plupart des propriétés obtenues au chapitre 2 ne sont
plus vraies. En particulier le processus solution de (3.8), (3.9) n’est pas gaussien (ni même
conditionnellement gaussien), ses moments ne peuvent pas être calculés de manière simple.

Filtre de Kalman linéarisé


On se donne {x̄k } une suite (déterministe) dans Rm , appelée trajectoire nominale
(on peut prendre par exemple x̄k comme une approximation de la moyenne de Xk ). La
méthode consiste à linéariser les fonctions fk et gk autour de x̄k−1 , c’est–à–dire

fk (x) ' fk (x̄k−1 ) + fk0 (x̄k−1 ) (x − x̄k−1 ) et gk (x) ' gk (x̄k−1 ) ,

et la fonction hk autour de x̄k , c’est–à–dire

hk (x) ' hk (x̄k ) + h0k (x̄k ) (x − x̄k ) .

Le système (3.8) (3.9) est alors remplacé par

Xk = Fk (Xk−1 − x̄k−1 ) + fk + Gk Wk , (3.10)


Yk = Hk (Xk − x̄k ) + hk + Vk , (3.11)
4 4 4 4 4
avec Fk = fk0 (x̄k−1 ), fk = fk (x̄k−1 ), Gk = gk (x̄k−1 ), Hk = h0k (x̄k ) et hk = hk (x̄k ). On
applique alors le filtre de Kalman–Bucy à ce nouveau système, et on obtient exactement
b − = fk (x̄k−1 ) + f 0 (x̄k−1 ) (X
X bk−1 − x̄k−1 ) ,
k k
Pk− = fk0 (x̄k−1 ) Pk−1 [fk0 (x̄k−1 )]∗ + gk (x̄k−1 ) QW ∗
k [gk (x̄k−1 )] ,

bk = X
X b − + Kk [ Yk − [h0k (x̄k ) (X b − − x̄k ) + hk (x̄k )] ] ,
k k
Pk = [I − Kk h0k (x̄k )] Pk− ,
Kk = Pk− h0k (x̄k )∗ [ h0k (x̄k ) Pk− [h0k (x̄k )]∗ + QVk ]−1 .
Filtre de Kalman et Modèles de Markov Cachés 23

A la place de la première et la troisième de ces équations, on peut utiliser


b − = f k (X
X bk−1 ) ,
k
Xbk = Xb − + Kk [Yk − hk (X
b − )] .
k k

b0− et R0− de telle sorte que N(X


On choisit enfin l’initialisation X b0− , R0− ) soit une bonne
approximation de la loi de X0 .

Résultat 3.5 (filtre de Kalman linéarisé)

b − = f k (X
X bk−1 ) ,
k

Pk = Fk Pk−1 Fk∗ + Gk QW ∗
k Gk ,

bk = X
X b − + Kk [Yk − hk (Xb − )] ,
k k

Pk = [I − Kk Hk ] Pk ,
Kk = Pk− Hk∗ [Hk Pk− Hk∗ + QVk ]−1 ,
4 4 4
avec Fk = fk0 (x̄k−1 ), Gk = gk (x̄k−1 ), et Hk = h0k (x̄k ), où {x̄k } est une trajectoire nominale
donnée (une suite dans Rm ).

Filtre de Kalman étendu


On a vu (cf. paragraphe 3.1) que les coefficients du système linéaire peuvent dépendre
des observations (jusqu’à l’instant k − 1). Donc, au lieu d’utiliser une trajectoire nominale
déterministe {x̄k }, on peut utiliser l’estimateur courant. La méthode consiste à linéariser
les fonctions fk et gk autour de X bk−1 , c’est–à–dire

bk−1 ) + fk0 (X
fk (x) ' fk (X bk−1 ) (x − X
bk−1 ) et bk−1 ) ,
gk (x) ' gk (X

b − , c’est–à–dire
et à linéariser la fonction hk autour de X k

b − ) + h 0 (X
hk (x) ' hk (X b − ) (x − X
b −) .
k k k k

Le système (3.8) (3.9) est alors remplacé par

Xk = Fk (Xk−1 − Xbk−1 ) + fk + Gk Wk , (3.12)


Yk = Hk (Xk − Xb − ) + h k + Vk , (3.13)
k

4 4 4 4 0 4
avec Fk = fk0 (X bk−1 ), fk = bk−1 ), Gk =
f k (X bk−1 ), Hk =
gk (X b − ) et hk =
h k (X b − ). On
h k (X
k k
applique alors le filtre de Kalman–Bucy à ce nouveau système, et on obtient exactement
le résultat suivant.
24 Master Recherche STI 05/06

Résultat 3.6 (filtre de Kalman étendu)

b − = f k (X
X bk−1 ) ,
k
Pk− = Fk Pk−1 Fk∗ + Gk QW ∗
k Gk ,

bk = X
X b − + Kk [Yk − hk (Xb − )] ,
k k
Pk = [I − Kk Hk ] Pk− ,
Kk = Pk− Hk∗ [Hk Pk− Hk∗ + QVk ]−1 ,
4 4 4 0
bk−1 ), Gk =
avec Fk = fk0 (X bk−1 ), et Hk =
gk (X b − ).
h k (X k

Remarque 3.7
• On peut s’attendre à de bons résultats avec cette technique de filtrage lorsque l’on
est proche d’une situation “linéaire” ou lorsque le rapport signal/bruit est grand.
• Pour vérifier si le filtre de Kalman étendu se comporte bien, on peut, en sortie,
tester le processus de “pseudo–innovation”
4
b −)
Ik = Y k − h k ( X k

et vérifier s’il est “proche” d’un bruit blanc.


• Le choix du système de coordonnées dans lequel on exprime le problème influence
beaucoup le comportement du filtre de Kalman étendu.
Chapitre 4

Systèmes non–linéaires
non–gaussiens, et extensions

On considère un système non–linéaire


Xk = fk (Xk−1 , Wk ) , (4.1)
Yk = hk (Xk ) + Vk , (4.2)
plus général que le système (3.8), (3.9), et où {Xk }, {Yk }, {Wk }, {Vk } prennent respec-
tivement leurs valeurs dans Rm , Rd , Rp et Rd , et où les fonctions fk et hk sont définies
sur Rm × Rp et Rm , à valeurs dans Rm et Rd respectivement. On ne suppose pas que les
fonctions fk et hk sont dérivables. {Wk } et {Vk } sont des bruits blancs, pas nécessairement
gaussiens, indépendants entre eux et indépendants de la condition initiale X0 de (4.1).
On suppose que pour tout instant k
• il est facile de simuler un vecteur aléatoire selon la loi pWk (dw) de Wk ,
V
• la loi du vecteur aléatoire Vk admet une densité qk (v) qu’il est facile d’évaluer pour
tout v ∈ Rd .

4.1 Équations d’état


Proposition 4.1 La suite {Xk } est une chaı̂ne de Markov à valeurs dans Rm , c’est–à–
dire que la loi conditionnelle par rapport au passé
P[Xk ∈ dx0 | X0 , · · · , Xk−1 ] = P[Xk ∈ dx0 | Xk−1 ] ,
ne dépend que du passé immédiat, avec le noyau de probabilités de transition
P[Xk ∈ dx0 | Xk−1 = x] = Qk (x, dx0 ) ,
défini par Z
Qk φ(x) = E[ φ(Xk ) | Xk−1 = x] = φ(fk (x, w)) pW
k (dw) ,
Rp
pour toute fonction test φ mesurable bornée, définie sur Rm .

25
26 Master Recherche STI 05/06

Preuve. Compte tenu que Wk est indépendant de (X0 , · · · , Xk−1 ), on a

E[ φ(Xk ) | X0 , · · · , Xk−1 ] = E[ φ(fk (Xk−1 , Wk )) | X0 , · · · , Xk−1 ]


Z
= φ(fk (Xk−1 , w)) pW
k (dw) ,
Rp

pour toute fonction φ mesurable bornée définie sur Rm . Clairement, le résultat ne dépend
que de Xk−1 , c’est–à–dire que

E[ φ(Xk ) | X0 , · · · , Xk−1 ] = E[ φ(Xk ) | Xk−1 ] ,

et Z
E[ φ(Xk ) | Xk−1 = x] = φ(fk (x, w)) pW
k (dw) . 2
Rp

Remarque 4.2 Si fk (x, w) = bk (x) + w, et si la loi pW k (dw) de Wk admet une densité


encore notée pW
k (w), c’est–à–dire si p W
k (dw) = p W
k (w) dw, alors

Qk (x, dx0 ) = pW 0
k (x − bk (x)) dx
0

c’est–à–dire que le noyau Qk (x, dx0 ) admet une densité. En effet, le changement de variable
x0 = bk (x) + w donne immédiatement
Z Z
Qk φ(x) = W
φ(bk (x) + w) pk (w) dw = φ(x0 ) pW 0 0
k (x − bk (x)) dx ,
Rm Rm

pour toute fonction test φ mesurable bornée, définie sur Rm .

Remarque 4.3 En général, le noyau Qk (x, dx0 ) n’admet pas de densité. En effet, condi-
tionnellement à Xk−1 = x, le vecteur aléatoire Xk appartient nécessairement au sous–
ensemble
M(x) = {x0 ∈ Rm : il existe w ∈ Rp tel que x0 = fk (x, w)} ,
et dans le cas où p < m ce sous ensemble M(x) est généralement, sous certaines hypothèses
de régularité, une sous–variété différentielle de dimension p dans l’espace Rm . Il ne peut
donc pas y avoir de densité pour la loi Qk (x, dx0 ) du vecteur aléatoire Xk .

4.2 Équations d’état et d’observation


Proposition 4.4 La suite {Yk } vérifie l’hypothèse de canal sans mémoire, c’est–à–dire
que
• conditionnellement aux états cachés X0 , · · · , Xn les observations Y0 , · · · , Yn sont
mutuellement indépendantes,
Filtre de Kalman et Modèles de Markov Cachés 27

• pour tout k = 0, · · · , n, la loi conditionnelle de Yk sachant X0 , · · · , Xn ne dépend


que de Xk , avec les probabilités d’émission

P[Yk ∈ dy | Xk = x] = qkV (y − hk (x)) dy ,

et on définit la fonction de vraisemblance

Ψk (x) = qkV (Yk − hk (x)) ,

qui mesure l’adéquation d’un état quelconque x ∈ Rm avec l’observation Yk .


En d’autres termes
n
Y
P[Y0 ∈ dy0 , · · · , Yn ∈ dyn | X0 , · · · , Xn ] = P[Yk ∈ dyk | Xk ] .
k=0

Preuve. Pour toute famille g0 , · · · , gn de fonctions mesurables bornées définies sur Rd ,


et compte tenu que les vecteurs aléatoires V0 , · · · , Vn sont mutuellement indépendants et
indépendants des vecteurs aléatoires X0 , · · · , Xn , on a

E[g0 (Y0 ) · · · gn (Yn ) | X0 , · · · , Xn ]

= E[g0 (h0 (X0 ) + V0 ) · · · gn (hn (Xn ) + Vn ) | X0 , · · · , Xn ]


Z Z
= ··· g0 (h0 (X0 ) + v0 ) · · · gn (hn (Xn ) + vn ) P[V0 ∈ dv0 , · · · , Vn ∈ dvn ]
Rd Rd
n Z
Y
= gk (hk (Xk ) + v) P[Vk ∈ dv]
k=0 Rd

n Z
Y
= gk (hk (Xk ) + v) qkV (v) dv
k=0 Rd

n Z
Y n
Y
= gk (y) qkV (y − hk (Xk )) dy = E[gk (Yk ) | Xk ] . 2
k=0 Rd | {z } k=0
P[Yk ∈ dy | Xk ]

Extension : Modèles de Markov cachés


Plus généralement, on peut aussi considérer un modèle de Markov caché où les états
cachés {Xk } forment une chaı̂ne de Markov à valeurs dans un espace E, de noyaux de
transition
P[Xk ∈ dx0 | Xk−1 = x] = Qk (x, dx0 ) ,
28 Master Recherche STI 05/06

et de loi initiale
P[X0 ∈ dx] = η0 (dx) ,
et où les observations {Yk } vérifient l’hypothèse de canal sans mémoire, c’est–à–dire que
• conditionnellement aux états cachés X0 , · · · , Xn les observations Y0 , · · · , Yn sont
mutuellement indépendantes,
• pour tout k = 0, · · · , n, la loi conditionnelle de Yk sachant X0 , · · · , Xn ne dépend
que de Xk , avec la probabilité d’émission

P[Yk ∈ dy | Xk = x] = gk (x, y) dy ,

et on définit la fonction de vraisemblance

Ψk (x) = gk (x, Yk ) ,

qui mesure l’adéquation d’un état quelconque x ∈ Rm avec l’observation Yk .


On suppose en outre que pour tout instant k
• il est facile de simuler pour tout x ∈ E, un vecteur aléatoire selon la loi Q k (x, dx0 ),
• il est facile d’évaluer pour tout x ∈ E, la fonction de vraisemblance Ψ k (x).
Chapitre 5

Filtre bayésien optimal


L’objectif de ce chapı̂tre est d’établir les équations du filtre non–linéaire optimal, pour
les systèmes non–linéaires et non–gaussiens, ou plus généralement les équations du filtre
bayésien optimal, pour les modèles de Markov cachés. Il s’agit donc de calculer la loi
conditionnelle de la variable aléatoire Xk sachant Y0:k , et la loi conditionnelle de la variable
aléatoire Xk sachant Y0:k−1 , définies par
µk (dx) = P[Xk ∈ dx | Y0:k ] et µ−
k (dx) = P[Xk ∈ dx | Y0:k−1 ] ,

respectivement.

5.1 Flots de Feynman–Kac


D’après la formule de Bayes, et d’après la propriété de canal sans mémoire
P[X0 ∈ dx0 , · · · , Xn ∈ dxn , Y0 ∈ dy0 , · · · , Yn ∈ dyn ]

= P[Y0 ∈ dy0 , · · · , Yn ∈ dyn | X0 = x0 , · · · , Xn = xn ] P[X0 ∈ dx0 , · · · , Xn ∈ dxn ]

n
Y
= P[X0 ∈ dx0 , · · · , Xn ∈ dxn ] gk (xk , yk ) dy0 · · · dyn .
k=0

En intégrant par rapport aux variables x0 , · · · , xn , on obtient la loi jointe des observations
(Y0 , · · · , Yn ), c’est–à–dire
P[Y0 ∈ dy0 , · · · , Yn ∈ dyn ]

Z Z Y
n
= ··· gk (xk , yk ) P[X0 ∈ dx0 , · · · , Xn ∈ dxn ] dy0 · · · dyn
E E k=0

n
Y
= E[ gk (Xk , yk ) ] dy0 · · · dyn .
k=0

29
30 Master Recherche STI 05/06

D’après la formule de Bayes, il vient

P[X0 ∈ dx0 , · · · , Xn ∈ dxn , Y0 ∈ dy0 , · · · , Yn ∈ dyn ]

n
Y
= P[X0 ∈ dx0 , · · · , Xn ∈ dxn ] gk (xk , yk ) dy0 · · · dyn
k=0

= P[X0 ∈ dx0 , · · · , Xn ∈ dxn | Y0 = y0 , · · · , Yn = yn ] P[Y0 ∈ dy0 , · · · , Yn ∈ dyn ]

n
Y
= P[X0 ∈ dx0 , · · · , Xn ∈ dxn | Y0 = y0 , · · · , Yn = yn ] E[ gk (Xk , yk ) ] dy0 · · · dyn ,
k=0

et on obtient
n
Y
gk (xk , yk ) P[X0 ∈ dx0 , · · · , Xn ∈ dxn ]
k=0
n
Y
= P[X0 ∈ dx0 , · · · , Xn ∈ dxn | Y0 = y0 , · · · , Yn = yn ] E[ gk (Xk , yk ) ] ,
k=0

pour toute suite (y0 , · · · , yn ) d’observations. Pour toute fonction test fn définie sur l’espace
produit E n+1
n
Y
E[ fn (X0 , · · · , Xn ) gk (Xk , yk ) ]
k=0
Z Z n
Y
= ··· fn (x0 , · · · , xn ) gk (xk , yk ) P[X0 ∈ dx0 , · · · , Xn ∈ dxn ]
E E k=0
Z Z
= ··· fn (x0 , · · · , xn )
E E
n
Y
P[X0 ∈ dx0 , · · · , Xn ∈ dxn | Y0 = y0 , · · · , Yn = yn ] E[ gk (Xk , yk ) ]
k=0
n
Y
= E[ fn (X0 , · · · , Xn ) | Y0 = y0 , · · · , Yn = yn ] E[ gk (Xk , yk ) ] ,
k=0

et on en déduit que
n
Y
E[fn (X0 , · · · , Xn ) gk (Xk , yk ) ]
k=0
E[fn (X0 , · · · , Xn ) | Y0 = y0 , · · · , Yn = yn ] = n .
Y
E[ gk (Xk , yk ) ]
k=0
Filtre de Kalman et Modèles de Markov Cachés 31

Comme cette identité est vérifié pour toute suite (y0 , · · · , yn ) d’observations, on a finale-
ment
Yn
E[fn (X0 , · · · , Xn ) Ψk (Xk ) ]
k=0
E[fn (X0 , · · · , Xn ) | Y0 , · · · , Yn ] = n ,
Y
E[ Ψk (Xk ) ]
k=0

où l’espérance porte seulement sur les états cachés successifs (X0 , · · · , Xn ) : les fonctions de
vraisemblance Ψ0 (x), · · · , Ψn (x) dépendent implicitement des observations (Y0 , · · · , Yn ),
mais celles–ci sont considérées comme fixées dans l’expression ci–dessus. Si la fonction
test fn (x0 , · · · , xn ) ne dépend que de xn , c’est–à–dire si fn (x0 , · · · , xn ) = φ(xn ), alors
n
Y
E[φ(Xn ) Ψk (Xk ) ]
k=0 hγn , φi
hµn , φi = E[φ(Xn ) | Y0 , · · · , Yn ] = n = ,
Y hγn , 1i
E[ Ψk (Xk ) ]
k=0

où la mesure positive (non–normalisée) γn (dx) est définie par


n
Y
hγn , φi = E[φ(Xn ) Ψk (Xk ) ] .
k=0

De la même manière
n−1
Y
E[φ(Xn ) Ψk (Xk ) ]
k=0 hγn− , φi
hµ−
n , φi = E[φ(Xn ) | Y0 , · · · , Yn−1 ] = = ,
n−1
Y hγn− , 1i
E[ Ψk (Xk ) ]
k=0

où la mesure positive (non–normalisée) γn− (dx) est définie par


n−1
Y
hγn− , φi = E[φ(Xn ) Ψk (Xk ) ] .
k=0

5.2 Équation du filtre bayésien optimal


Pour obtenir une équation récurrente permettant d’esprimer µk en fonction de µk−1 , il
suffit donc d’une équation récurrente permettant d’esprimer γk en fonction de γk−1 , puis
de normaliser.
32 Master Recherche STI 05/06

Théorème 5.1 (Filtre bayésien optimal) La suite {µk } vérifie l’équation récurrente
suivante

prédiction correction
µk−1 −−−−−−−−−−−→ µ−
k = µk−1 Qk −−−−−−−−−−−→ µk = Ψk · µ−
k ,

où par définition


Z
0
(µk−1 Qk )(dx ) = µk−1 (dx) Qk (x, dx0 )
E

désigne l’action du noyau markovien Qk (x, dx0 ) sur la distribution de probabilité µk−1 (dx),
et où
Ψk (x0 ) µ− 0
k (dx )
(Ψk · µ− )(dx 0
) = ,
k
hµ−k , Ψk i

désigne le produit projectif de la distribution de probabilité a priori µ − 0


k (dx ) et de la fonc-
tion de vraisemblance Ψk (x0 ).

µn en fonction de µ−
n

On a
n
Y
hγn , φi = E[φ(Xn ) Ψk (Xk ) ]
k=0
n−1
Y
= E[φ(Xn ) Ψn (Xn ) Ψk (Xk ) ] = hγn− , Ψn φi = hΨn γn− , φi ,
k=0

pour toute fonction test φ définie sur E, où la dernière égalité exprime simplement que
Z Z
hγn− , Ψn φi = [Ψn (x) φ(x)] γn− (dx) = φ(x) [Ψn (x) γn− (dx)] = hΨn γn− , φi .
E E

Comme la fonction test φ est quelconque, on en déduit que

γn (dx) = Ψn (x) γn− (dx) ,

et en normalisant, on obtient

γn (dx) Ψn (x) γn− (dx) Ψn (x) µ−


n (dx)
µn (dx) = = −
= −
,
hγn , 1i hγn , Ψn i hµn , Ψn i

où la dernière égalité est obtenue en divisant numérateur et dénominateur par la constante
de normalisation hγn− , 1i.
Filtre de Kalman et Modèles de Markov Cachés 33

µ−
n en fonction de µn−1

On remarque immédiatement que


n−1
Y
hγn− , 1i = E[ Ψk (Xk ) ] = hγn−1 , 1i ,
k=0

c’est–à–dire que la constante de normalisation est conservée. En utilisant la propriété de


Markov, on a
n−1
Y
hγn− , φi = E[φ(Xn ) Ψk (Xk ) ]
k=0
n−1
Y
= E[ E[φ(Xn ) Ψk (Xk ) | X0:n−1 ] ]
k=0
n−1
Y
= E[ E[φ(Xn ) | X0:n−1 ] Ψk (Xk ) ]
k=0
n−1
Y
= E[ E[φ(Xn ) | Xn−1 ] Ψk (Xk ) ]
k=0
n−1
Y
= E[Qn φ(Xn−1 ) Ψk (Xk )] = hγn−1 , Qn φi = hγn−1 Qn , φi ,
k=0

pour toute fonction test φ définie sur E, où la dernière égalité exprime simplement que
Z
hγn−1 , Qn φi = (Qn φ)(x) γn−1 (dx)
E
Z Z Z Z
0 0
= [ Qn (x, dx ) φ(x ) ] γn−1 (dx) = [ γn−1 (dx) Qn (x, dx0 ) ] φ(x0 )
E E E E
Z
= (γn−1 Qn )(dx0 ) φ(x0 ) = hγn−1 Qn , φi .
E

Comme la fonction test φ est quelconque, on en déduit que

γn− (dx0 ) = (γn−1 Qn )(dx0 ) ,

et en normalisant, on obtient

γn− (dx0 ) (γn−1 Qn )(dx0 )


µ− 0
n (dx ) = = = (µn−1 Qn )(dx0 ) .
hγn− , 1i hγn−1 , 1i
34 Master Recherche STI 05/06

L’équation du filtre bayésien optimal a été obtenue très simplement, mais il est en
général impossible de la résoudre, sauf dans le cas particulier des systèmes linéaires gaus-
siens, où elle se ramène aux équations du filtre de Kalman–Bucy, présentées au Cha-
pitre 3. Il faut donc avoir recours à une approximation numérique, et on présente ci–
dessous une approximation de type Monte Carlo, appelée filtre particulaire, qui a connu
un développement spectaculaire au cours des dernières années, et qui est maintenant large-
ment répendu, en particulier dans les applications en localisation, navigation ou poursuite
de mobiles, aussi bien dans le domaine militaire (aéronef, sous–marin, bâtiment de sur-
face, missile, drone, etc.), que dans le domaine civil, avec des applications en robotique
mobile ou en communications sans–fil.

5.3 Approximation particulaire


L’idée du filtrage particulaire consiste à chercher une approximation de la distribution
de probabilité conditionnelle µk (dx) sous la forme d’une combinaison linéaire pondérée de
masses de Dirac, appelées particules, de la forme
N
X N
X
µk ≈ µN = wki δ avec wki = 1 ,
k ξki
i=1 i=1

où les positions {ξki , i = 1, · · · , N } des particules sont des éléments de l’espace d’état
E, et où les poids {wki , i = 1, · · · , N } des particules sont des nombres compris entre 0
et 1. Cette approximation est complètement caractérisée par la donnée du système de
particules Σk = {ξki , wki , i = 1, · · · , N }, et l’algorithme est complètement décrit par le
mécanisme qui permet de construire Σk à partir de Σk−1 . On rappelle que la suite {µk }
vérifie l’équation récurrente
prédiction correction
µk−1 −−−−−−−−−−−→ µ− −−−−−−−−−−→ µk = Ψk · µ−
k = µk−1 Qk − k ,

d’après le Théorème 5.1. Si on applique le noyau markovien Qk (x, dx0 ) à l’approximation


N
X
µN = i
wk−1 δ i ,
k−1 ξk−1
i=1

on obtient exactement
N
X
0
(µN
k−1 Qk )(dx ) = i
wk−1 i
Qk (ξk−1 , dx0 ) ,
i=1

qui est un mélange de lois, peu pratique à manipuler, et qu’on décide de remplacer par la
loi empirique
N
1 X
µ−,N = δ i ,
k
N ξk
i=1
Filtre de Kalman et Modèles de Markov Cachés 35

associée à un N –échantillon {ξki , i = 1, · · · , N } de variables aléatoires ayant précisément


0
la loi commune (µN k−1 Qk )(dx ). Générer un échantillon selon un mélange de lois est très
simple, et peut être réalisé de la façon suivante : indépendemment pour tout i = 1, · · · , N
i
(i) on génère un indice τk−1 appartenant à l’ensemble {1, · · · , N } selon la loi discrète
1 N
(wk−1 , · · · , wk−1 ), c’est–à–dire que
i j
P[τk−1 = j] = wk−1 , pour tout j = 1, · · · , N
i
τk−1
et on pose ξbk−1
i
= ξk−1 , c’est–à–dire qu’on fait le choix de la particule correspon-
dante dans la population Σk−1 ,
(ii) on génère une variable aléatoire ξki selon la loi Qk (ξbk−1
i
, dx0 ), ce qui est facile par
hypothèse.
On applique ensuite la formule de Bayes à l’approximation µ−,N
k (dx0 ), et on obtient exac-
tement
XN XN
−,N Ψk (ξki )
Ψk · µ k = δ i = wki δ i ,
N
X ξ k ξk
i=1 j i=1
Ψk (ξk )
j=1
avec
Ψk (ξki )
wki = N
pour tout i = 1, · · · , N .
X
Ψk (ξkj )
j=1

En résumé, cet algorithme, appelé filtre particulaire bootstrap, peut être décrit de la
façon suivante.

passage de Σk−1 à Σk indépendemment pour tout i = 1, · · · , N


i
τk−1
i
• générer un indice τk−1 1
∼ (wk−1 N
, · · · , wk−1 ) et poser ξbk−1
i
= ξk−1 ,
• générer la nouvelle position ξki ∼ Qk (ξbk−1 i
, dx0 ),
i i
• calculer le nouveau poids wk ∝ Ψk (ξk ).

Il s’agit d’une approximation numérique, très simple à mettre en œuvre puisqu’il suffit
de savoir simuler des transitions indépendantes de la chaı̂ne de Markov, et qui converge
vers le filtre optimal lorsque le nombre N de particules utilisées pour les calculs tend vers
l’infini. L’étape essentielle dans l’algorithme est l’étape de rééchantillonage, qui sélectionne
les particules ayant une forte vraisemblance, et concentre ainsi automatiquement la puis-
sance de calcul disponible dans les régions d’intérêt de l’espace d’état E.
36 Master Recherche STI 05/06
Chapitre 6

Modèles de Markov cachés

Dans cette seconde partie, on se propose d’étudier à nouveau le problème de filtrage,


c’est–à–dire le problème de l’estimation d’un état inconnu au vu d’observations bruitées,
dans le cas où l’état inconnu est modélisé par une chaı̂ne de Markov à temps discret et
espace d’état fini.

6.1 Chaı̂nes de Markov à état fini


On considère un espace d’état fini E à N éléments. Une suite {Xk } de v.a. à valeurs
dans E est une chaı̂ne de Markov si la propriété suivante est vérifiée (propriété de Markov)

P[Xk = ik | X0 = i0 , · · · , Xk−1 = ik−1 ] = P[Xk = ik | Xk−1 = ik−1 ] ,

pour tout instant k et toute suite i0 , · · · , ik ∈ E.


Cette notion généralise la notion de système dynamique déterministe (machine à état
fini, suite récurrente, ou équation différentielle ordinaire) : la distribution de probabilité
de l’état présent Xk ne dépend que de l’état immédiatement passé Xk−1 .

Définition 6.1 Une probabilité sur E est un vecteur ν = (νi ) de dimension N , vérifiant
X
0 ≤ νi ≤ 1 , pour tout i ∈ E, et νi = 1 .
i∈E

Une matrice markovienne sur E est une matrice π = (πi,j ) de dimension N × N , vérifiant
X
0 ≤ πi,j ≤ 1 , pour tout i, j ∈ E, et πi,j = 1 , pour tout i ∈ E.
j∈E

Il résulte de la Proposition 6.2 ci–dessous qu’une chaı̂ne de Markov {Xk } est entièrement
caractérisée par la donnée

37
38 Master Recherche STI 05/06

• de la loi initiale ν = (νi )

νi = P[X0 = i] , pour tout i ∈ E,

• et de la matrice de transition π = (πi,j )

πi,j = P[Xk = j | Xk−1 = i] , pour tout i, j ∈ E,

qu’on suppose indépendante de l’instant k (chaı̂ne de Markov homogène).


Il suffit donc d’une donnée locale (les probabilités de transition entre deux instants suc-
cessifs) pour caractériser de façon globale une chaı̂ne de Markov.

Proposition 6.2 Soit ν une probabilité sur E, et π une matrice markovienne sur E. La
distribution de probabilité de la chaı̂ne de Markov {Xk }, de loi initiale ν et de matrice
de transition π, est donnée par

P[X0 = i0 , · · · , Xk = ik ] = νi0 πi0 ,i1 · · · πik−1 ,ik ,

pour tout instant k, et tout i0 , · · · , ik ∈ E.

Preuve. On conditionne par l’évènement {X0 = i0 , · · · , Xk−1 = ik−1 } et on applique la


propriété de Markov

P[X0 = i0 , · · · , Xk−1 = ik−1 , Xk = ik ] =

= P[Xk = ik | X0 = i0 , · · · , Xk−1 = ik−1 ] P[X0 = i0 , · · · , Xk−1 = ik−1 ]

= P[X0 = i0 , · · · , Xk−1 = ik−1 ] πik−1 ,ik .

En itérant cette relation, on obtient le résultat annoncé. 2

6.2 Modèles de Markov cachés


On considère ensuite le cas des modèles de Markov cachés, ou chaı̂nes de Markov
partiellement observées. Dans ce modèle, on n’observe pas directement la suite {Xk },
mais on dispose d’observations {Yk } à valeurs dans un espace fini O = {1, · · · , M },
ou dans Rd . On suppose que les observations sont recueillies à travers un canal sans
mémoire, c’est–à–dire que conditionnellement aux états {Xk }, les observations {Yk } sont
mutuellement indépendantes, et que chaque observation Yk ne dépend que de l’état Xk
au même instant. Cette propriété s’exprime de la façon suivante :
Filtre de Kalman et Modèles de Markov Cachés 39

• dans le cas fini


n
Y
P[Y0 = `0 , · · · , Yn = `n | X0 = i0 , · · · , Xn = in ] = P[Yk = `k | Xk = ik ] ,
k=0

pour tout i0 , · · · , in ∈ E, et tout `0 , · · · , `n ∈ O,


• et dans le cas continu
n
Y
P[Y0 ∈ dy0 , · · · , Yn ∈ dyn | X0 = i0 , · · · , Xn = in ] = P[Yk ∈ dyk | Xk = ik ] ,
k=0

pour tout i0 , · · · , in ∈ E, et tout y0 , · · · , yn ∈ Rd .

Exemple 6.3 Supposons que les observations {Yk } soient reliées aux états {Xk } de la
façon suivante
Yk = h(Xk ) + Vk ,
où la suite {Vk } est un bruit blanc gaussien de dimension d, de moyenne nulle et de
matrice de covariance R, indépendant de la chaı̂ne de Markov {Xk }.
La fonction h définie sur E à valeurs dans Rd est caractérisée par la donnée d’une
famille h = (hi ) de N vecteurs de Rd , et on a
1 © ª
P[Yk ∈ dy | Xk = i] = √ √ exp − 21 (y − hi )∗ R−1 (y − hi ) dy .
( 2π)d det R

Conditionnellement à {X0 = i0 , · · · , Xn = in }, les vecteurs aléatoires Y0 , · · · , Yn sont


mutuellement indépendants, et chaque Yk est un vecteur aléatoire gaussien de dimension
d, de moyenne hik et de matrice de covariance R, de sorte que la propriété de canal sans
mémoire est vérifiée.

Définition 6.4 Une matrice markovienne sur E × O est une matrice b = (b`i ) de dimen-
sion N × M , vérifiant

0 ≤ b`i ≤ 1 , pour tout i ∈ E et tout ` ∈ O, et


X
b`i = 1 , pour tout i ∈ E.
`∈O

Un noyau markovien sur E × Rd est une famille ψ = (ψi ) de N fonctions définies sur Rd ,
vérifiant
ψi (y) ≥ 0 , pour tout i ∈ E et tout y ∈ Rd , et
Z
ψi (y) dy = 1 , pour tout i ∈ E.
Rd
40 Master Recherche STI 05/06

Il résulte de la Proposition 6.5 ci–dessous qu’un modèle de Markov caché {(Xk , Yk )}


est entièrement caractérisé par la donnée
• de la loi initiale ν = (νi )
νi = P[X0 = i] , pour tout i ∈ E,
• de la matrice de transition π = (πi,j )
πi,j = P[Xk+1 = j | Xk = i] , pour tout i, j ∈ E,
• et dans le cas fini, des probabilités d’observation b = (b`i )
b`i = P[Yk = ` | Xk = i] , pour tout i ∈ E, et tout ` ∈ O,
• ou dans le cas continu, des densités d’observation ψ = (ψi )
ψi (y) dy = P[Yk ∈ dy | Xk = i] , pour tout i ∈ E, et tout y ∈ Rd .
Il suffit donc d’une donnée locale (les probabilités de transition entre deux instants suc-
cessifs, et les probabilités/densités d’observation à un instant donné) pour caractériser de
façon globale un modèle de Markov caché.

Proposition 6.5 Dans le cas fini, la distribution de probabilité du modèle de Markov


caché {(Xk , Yk )}, de loi initiale ν, de matrice de transition π, et de probabilités d’obser-
vation b, est donnée par
P[X0 = i0 , · · · , Xk = ik , Y0 = `0 , · · · , Yk = `k ] =

= νi0 πi0 ,i1 · · · πik−1 ,ik b`i00 · · · b`ikk ,


pour tout instant k, tout i0 , · · · , ik ∈ E, et tout `0 , · · · , `k ∈ O.
Dans le cas continu, la distribution de probabilité du modèle de Markov caché {(X k , Yk )},
de loi initiale ν, de matrice de transition π, et de densités d’observation ψ, est donnée
par
P[X0 = i0 , · · · , Xk = ik , Y0 ∈ dy0 , · · · , Yk ∈ dyk ] =

= νi0 πi0 ,i1 · · · πik−1 ,ik ψi0 (y0 ) · · · ψik (yk ) dy0 · · · dyk ,
pour tout instant k, tout i0 , · · · , ik ∈ E, et tout y0 , · · · , yk ∈ Rd .

Preuve. On considère d’abord le cas fini. On utilise la formule de Bayes, et la propriété


de canal sans mémoire
P[X0 = i0 , · · · , Xk = ik , Y0 = `0 , · · · , Yk = `k ] =

= P[Y0 = `0 , · · · , Yk = `k | X0 = i0 , · · · , Xk = ik ] P[X0 = i0 , · · · , Xk = ik ]

= P[X0 = i0 , · · · , Xk = ik ] b`i00 · · · b`ikk ,


Filtre de Kalman et Modèles de Markov Cachés 41

et on conclut en utilisant la Proposition 6.2.


Dans le cas continu, on procède de la même manière

P[X0 = i0 , · · · , Xk = ik , Y0 ∈ dy0 , · · · , Yk ∈ dyk ] =

= P[Y0 ∈ dy0 , · · · , Yk ∈ dyk | X0 = i0 , · · · , Xk = ik ] P[X0 = i0 , · · · , Xk = ik ]

= P[X0 = i0 , · · · , Xk = ik ] ψi0 (y0 ) · · · ψik (yk ) dy0 · · · dyk ,

et on conclut de la même manière, en utilisant la Proposition 6.2. 2

On désigne par M = (ν, π, b) dans le cas fini, et par M = (ν, π, ψ) dans le cas continu,
les paramètres caractéristiques du modèle.
On s’intéresse aux deux problèmes suivants :
• Evaluer le modèle M : Il s’agit de calculer efficacement la distribution de probabi-
lité de la suite d’observations (Y0 , · · · , Yn ) (ou fonction de vraisemblance) en fonc-
tion des paramètres du modèle. La réponse à ce problème est fournie par l’équation
forward de Baum.
• Estimer l’état de la chaı̂ne : Etant donnée une suite d’observations (Y0 , · · · , Yn ), il
s’agit d’estimer de façon récursive l’etat présent Xn (problème de filtrage), ou bien
d’estimer un état intermédiaire Xk pour k = 0, · · · , n (problème de lissage), ou en-
core d’estimer globalement la suite d’états (X0 , · · · , Xn ), pour un modèle donné M .
La réponse aux deux premiers problèmes est fournie par les équations forward et
backward de Baum, qui permettent de calculer la distribution de probabilité condi-
tionnelle de l’état Xk sachant les observations (Y0 , · · · , Yn ). La réponse au dernier
problème est fournie par un algorithme de programmation dynamique, l’algorithme
de Viterbi, qui permet de maximiser la distribution de probabilité conditionnelle de
la suite d’états (X0 , X1 , · · · , Xn ).
42 Master Recherche STI 05/06
Chapitre 7

Equations forward / backward


de Baum

On commence par présenter une première méthode pour calculer la distribution de


probabilité des observations (Y0 , · · · , Yn ).

Proposition 7.1 La distribution de probabilité des observations (Y 0 , · · · , Yn ) est donnée :


• dans le cas fini par
X
P[Y0 = `0 , · · · , Yn = `n ] = νi0 πi0 ,i1 · · · πin−1 ,in b`i00 · · · b`inn ,
i0 ,··· ,in ∈E

pour tout `0 , · · · , `n ∈ O,
• et dans le cas continu par

P[Y0 ∈ dy0 , · · · , Yn ∈ dyn ] =


X
= νi0 πi0 ,i1 · · · πin−1 ,in ψi0 (y0 ) · · · ψin (yn ) dy0 · · · dyn ,
i0 ,··· ,in ∈E

pour tout y0 , · · · , yn ∈ Rd .

Preuve. On considère d’abord le cas fini. On utilise la Proposition 6.5 pour calculer la
distribution de probabilité marginale

P[Y0 = `0 , · · · , Yn = `n ] =
X
= P[X0 = i0 , · · · , Xn = in , Y0 = `0 , · · · , Yn = `n ]
i0 ,··· ,in ∈E
X
= νi0 πi0 ,i1 · · · πin−1 ,in b`i00 · · · b`inn .
i0 ,··· ,in ∈E

43
44 Master Recherche STI 05/06

Dans le cas continu, on procède de la même manière


P[Y0 ∈ dy0 , · · · , Yn ∈ dyn ] =
X
= P[X0 = i0 , · · · , Xn = in , Y0 ∈ dy0 , · · · , Yn ∈ dyn ]
i0 ,··· ,in ∈E
X
= νi0 πi0 ,i1 · · · πin−1 ,in ψi0 (y0 ) · · · ψin (yn ) dy0 · · · dyn . 2
i0 ,··· ,in ∈E

Remarque 7.2 Le nombre d’opérations nécessaires pour calculer la distribution de pro-


babilité des observations (Y0 , · · · , Yn ) à partir des formules données dans la Proposition 7.1
est considérable : pour chaque trajectoire possible (i0 , · · · , in ) de la chaı̂ne de Markov, il
faut effectuer le produit de 2(n+1) termes, et il y a N n+1 trajectoires possibles différentes.
Le nombre total d’opérations élémentaires (additions et multiplications) à effectuer est
donc de l’ordre de : 2(n + 1) N n+1 . Ce nombre croı̂t de façon exponentielle avec le nombre
n d’observations.

7.1 Equation forward


Pour tout instant k, la distribution de probabilité jointe des observations passées
(Y0 , · · · , Yk ) et de l’état présent Xk est définie :
• dans le cas fini par
P[Y0 = `0 , · · · , Yk = `k , Xk = i] = αki [`0 , · · · , `k ] ,
pour tout i ∈ E, et tout `0 , · · · , `k ∈ O,
• et dans le cas continu par
P[Y0 ∈ dy0 , · · · , Yk ∈ dyk , Xk = i] = αki [y0 , · · · , yk ] dy0 · · · dyk ,
pour tout i ∈ E, et tout y0 , · · · , yk ∈ Rd .
En particulier à l’instant initial k = 0, on a :
• dans le cas fini
α0i [`] = P[Y0 = `, X0 = i]

= P[Y0 = ` | X0 = i] P[X0 = i] = νi b`i ,


pour tout i ∈ E, et tout ` ∈ O,
• et dans le cas continu
α0i [y] dy = P[Y0 ∈ dy, X0 = i]

= P[Y0 ∈ dy | X0 = i] P[X0 = i] = νi ψi (y) dy ,


pour tout i ∈ E, et tout y ∈ Rd .
Filtre de Kalman et Modèles de Markov Cachés 45

On définit la variable forward pk = (pik ) par

pik = αki [Y0 , · · · , Yk ] ,

pour tout i ∈ E.

Notations Pour tout ` ∈ O, on définit la matrice diagonale N × N

B ` = diag(b`1 , · · · , b`N ) .

De même, pour tout y ∈ Rd , on définit la matrice diagonale N × N

Ψ(y) = diag(ψ1 (y), · · · , ψN (y)) .

Remarque 7.3 Pour tout i ∈ E, la fonction bi définie sur O à valeurs dans R, est
équivalente à la donnée du vecteur bi = (b`i ) de dimension M . De même, la fonction B
définie sur O et à valeurs dans l’espace des matrices N × N diagonales, est équivalente à
la donnée de la famille B = (B ` ) de M matrices diagonales N × N .

Théorème 7.4 La suite {pk } vérifie l’équation récurrente suivante :


• dans le cas fini £X ¤
pjk+1 = bj (Yk+1 ) πi,j pik , (7.1)
i∈E

pour tout j ∈ E, avec la condition initiale

pi0 = νi bi (Y0 ) , pour tout i ∈ E,

ou sous forme vectorielle

pk+1 = B(Yk+1 ) π ∗ pk , p0 = B(Y0 ) ν ,

• et dans le cas continu


£X ¤
pjk+1 = ψj (Yk+1 ) πi,j pik , (7.2)
i∈E

pour tout j ∈ E, avec la condition initiale

pi0 = νi ψi (Y0 ) , pour tout i ∈ E,

ou sous forme vectorielle

pk+1 = Ψ(Yk+1 ) π ∗ pk , p0 = Ψ(Y0 ) ν .


46 Master Recherche STI 05/06

Preuve. On considère uniquement le cas fini. Par définition

αki [`0 , · · · , `k ] = P[Y0 = `0 , · · · , Yk = `k , Xk = i] =


X
= P[Y0 = `0 , · · · , Yk = `k , X0 = i0 , · · · , Xk−1 = ik−1 , Xk = i]
i0 ,··· ,ik−1 ∈E
X `
= νi0 πi0 ,i1 · · · πik−1 ,i b`i00 · · · bik−1
k−1
b`i k ,
i0 ,··· ,ik−1 ∈E

pour tout i ∈ E, et tout `0 , · · · , `k ∈ O. De même

P[Y0 = `0 , · · · , Yk = `k , Yk+1 = `k+1 , Xk = i, Xk+1 = j] =


X
= P[Y0 = `0 , · · · , Yk = `k , Yk+1 = `k+1 ,
i0 ,··· ,ik−1 ∈E

X0 = i0 , · · · , Xk−1 = ik−1 , Xk = i, Xk+1 = j]


X ` `
= νi0 πi0 ,i1 · · · πik−1 ,i πi,j b`i00 · · · bik−1
k−1
b`i k bjk+1
i0 ,··· ,ik−1 ∈E

`
= bjk+1 πi,j αki [`0 , · · · , `k ] ,

pour tout i, j ∈ E, et tout `0 , · · · , `k , `k+1 ∈ O. En sommant pour tout i ∈ E, on obtient


j `
X
αk+1 [`0 , · · · , `k+1 ] = bjk+1 πi,j αki [`0 , · · · , `k ] ,
i∈E

d’où le résultat. 2

Remarque 7.5 La distribution de probabilité des observations (Y0 , · · · , Yn ) peut se cal-


culer de la façon suivante :
• dans le cas fini
X
P[Y0 = `0 , · · · , Yn = `n ] = αni [`0 , · · · , `n ] ,
i∈E

pour tout `0 , · · · , `n ∈ O,
• et dans le cas continu
©X ª
P[Y0 ∈ dy0 , · · · , Yn ∈ dyn ] = αni [y0 , · · · , yn ] dy0 · · · dyn ,
i∈E

pour tout y0 , · · · , yn ∈ Rd .
Filtre de Kalman et Modèles de Markov Cachés 47

Remarque 7.6 La variable forward permet de calculer, de façon récursive, la distribution


de probabilité conditionnelle de l’état présent Xn sachant les observations (Y0 , · · · , Yn ) :
pi
P[Xn = i | Y0 , · · · , Yn ] = Xn ,
pjn
j∈E

pour tout i ∈ E (en ce sens, pn est une distribution de probabilité non–normalisée), et la


constante de normalisation X
Ln = pjn ,
j∈E

s’interprète comme la vraisemblance du modèle sachant les observations (Y0 , · · · , Yn ).

Remarque 7.7 Le calcul récursif de la variable forward pn fait seulement intervenir des
produits matrice / vecteur, et permet de calculer plus efficacement la distribution de
probabilité des observations (Y0 , · · · , Yn ). Il suffit de N (2N + 1) opérations élémentaires
(additions et multiplications) pour passer de l’instant k à l’instant (k + 1). Le nombre
total d’opérations élémentaires à effectuer est donc de l’ordre de : n N (2N + 1) + (N − 1).
Ce nombre croı̂t de façon linéaire avec le nombre n d’observations.

7.2 Equation backward


Soit n un instant final fixé. Pour tout instant k antérieur à n, la distribution de pro-
babilité jointe des observations à venir (Yk+1 , · · · , Yn ) et de l’état présent Xk est définie :
• dans le cas fini par
P[Yk+1 = `k+1 , · · · , Yn = `n | Xk = i] = βki [`k+1 , · · · , `n ] ,
pour tout i ∈ E, et tout `k+1 , · · · , `n ∈ O,
• et dans le cas continu par
P[Yk+1 ∈ dyk+1 , · · · , Yn ∈ dyn | Xk = i] = βki [yk+1 , · · · , yn ] dyk+1 · · · dyn ,
pour tout i ∈ E, et tout yk+1 , · · · , yn ∈ Rd .
La définition ci–dessus n’a pas de sens à l’instant final k = n. En revanche, pour k = n − 1
on a :
• dans le cas fini
i
βn−1 [`] = P[Yn = ` | Xn−1 = i]
X
= P[Yn = `, Xn = j | Xn−1 = i]
j∈E
X X
= P[Yn = ` | Xn = j] P[Xn = j | Xn−1 = i] = πi,j b`j ,
j∈E j∈E

pour tout i ∈ E, et tout ` ∈ O,


48 Master Recherche STI 05/06

• et dans le cas continu


i
βn−1 [y] dy = P[Yn ∈ dy | Xn−1 = i]
X
= P[Yn ∈ dy, Xn = j | Xn−1 = i]
j∈E
X X
= P[Yn ∈ dy | Xn = j] P[Xn = j | Xn−1 = i] = πi,j ψj (y) dy ,
j∈E j∈E

pour tout i ∈ E, et tout y ∈ Rd .


On définit la variable backward vk = (vki ) par

vki = βki [Yk+1 , · · · , Yn ] ,

pour tout i ∈ E.

Remarque 7.8 Conditionnellement à {Xk = i}, la suite Xk+1 , Xk+2 , · · · est une chaı̂ne
de Markov, de loi initiale πi,• (ligne i de la matrice π) — c’est–à–dire que

P[Xk+1 = j | Xk = i] = πi,j , pour tout j ∈ E,

et de matrice de transition π.

Théorème 7.9 La suite {vk } vérifie l’équation récurrente rétrograde suivante :


• dans le cas fini X j
vki = πi,j bj (Yk+1 ) vk+1 , (7.3)
j∈E

pour tout i ∈ E, avec la condition initiale

vni = 1 , pour tout i ∈ E,

ou sous forme vectorielle

vk = π B(Yk+1 ) vk+1 , vn ≡ 1 ,

• et dans le cas continu X j


vki = πi,j ψj (Yk+1 ) vk+1 , (7.4)
j∈E

pour tout i ∈ E, avec la condition initiale

vni = 1 , pour tout i ∈ E,

ou sous forme vectorielle

vk = π Ψ(Yk+1 ) vk+1 , vn ≡ 1 .
Filtre de Kalman et Modèles de Markov Cachés 49

Preuve. On considère uniquement le cas fini. Avec l’initialisation proposée à l’instant


final, l’équation (7.3) permet de retrouver à l’instant k = n − 1
X
i i
vn−1 = πi,j bj (Yn ) = βn−1 [Yn ] .
j∈E

D’autre part, il résulte de la Remarque 7.8 et de la Proposition 6.5 que


βki [`k+1 , · · · , `n ] = P[Yk+1 = `k+1 , · · · , Yn = `n | Xk = i] =
X
= P[Yk+1 = `k+1 , · · · , Yn = `n , Xk+1 = ik+1 , · · · , Xn = in | Xk = i]
ik+1 ,··· ,in ∈E
X `
= πi,ik+1 · · · πin−1 ,in bik+1
k+1
· · · b`inn ,
ik+1 ,··· ,in ∈E

pour tout i ∈ E, et tout `k+1 , · · · , `n ∈ O. De même


P[Yk+1 = `k+1 , · · · , Yn = `n , Xk+1 = j | Xk = i] =
X
= P[Yk+1 = `k+1 , · · · , Yn = `n , Xk+1 = j, Xk+2 = ik+2 , · · · , Xn = in | Xk = i]
ik+2 ,··· ,in ∈E
X ` `
= πi,j πj,ik+2 · · · πin−1 ,in bjk+1 bik+2
k+2
· · · b`inn
ik+2 ,··· ,in ∈E

` j
= πi,j bjk+1 βk+1 [`k+2 , · · · , `n ] ,
pour tout i, j ∈ E, et tout `k+1 , · · · , `n ∈ O. En sommant pour tout j ∈ E, on obtient
X ` j
βki [`k+1 , · · · , `n ] = πi,j bjk+1 βk+1 [`k+2 , · · · , `n ] ,
j∈E

d’où le résultat. 2

Proposition 7.10 Les équations forward et backward sont duales l’une de l’autre :
X X X
pi0 v0i = pik vki = pin ,
i∈E i∈E i∈E

pour tout instant k.

Preuve. On considère uniquement le cas fini. En utilisant successivement l’équation


backward (7.3) et l’équation forward (7.1), on obtient
X X £X j
¤
pik vki = pik πi,j bj (Yk+1 ) vk+1
i∈E i∈E j∈E
X £X ¤ j
X
= bj (Yk+1 ) πi,j pik vk+1 = pjk+1 vk+1
j
,
j∈E i∈E j∈E

d’où le résultat. 2
50 Master Recherche STI 05/06

Proposition 7.11 Pour tout instant k, la distribution de probabilité jointe de l’état


présent Xk et des observations (Y0 , · · · , Yn ) jusqu’à l’instant final n, est donnée :
• dans le cas fini par

P[Y0 = `0 , · · · , Yn = `n , Xk = i] = αki [`0 , · · · , `k ] βki [`k+1 , · · · , `n ] ,

pour tout i ∈ E, et tout `0 , · · · , `n ∈ O,


• et dans le cas continu par

P[Y0 ∈ dy0 , · · · , Yn ∈ dyn , Xk = i] = αki [y0 , · · · , yk ] βki [yk+1 , · · · , yn ] dy0 · · · dyn ,

pour tout i ∈ E, et tout y0 , · · · , yn ∈ Rd .

Preuve. On considère uniquement le cas fini. Fixer l’état à l’instant k permet d’effectuer
une coupure entre le passé jusqu’à l’instant (k − 1) et le futur à partir de l’instant (k + 1),
de la façon suivante :

P[Y0 = `0 , · · · , Yn = `n , Xk = i] =
X
= P[Y0 = `0 , · · · , Yn = `n ,
i0 ,··· ,ik−1 ∈E
ik+1 ,··· ,in ∈E
X0 = i0 , · · · , Xk−1 = ik−1 , Xk = i, Xk+1 = ik+1 , · · · , Xn = in ]
X ` `
= νi0 πi0 ,i1 · · · πik−1 ,i πi,ik+1 · · · πin−1 ,in b`i00 · · · bik−1
k−1
b`i k bik+1
k+1
· · · b`inn
i0 ,··· ,ik−1 ∈E
ik+1 ,··· ,in ∈E
X ` £ X
= νi0 πi0 ,i1 · · · πik−1 ,i b`i00 · · · bik−1
k−1
b`i k
i0 ,··· ,ik−1 ∈E ik+1 ,··· ,in ∈E

` ¤
πi,ik+1 · · · πin−1 ,in bik+1
k+1
· · · b`inn

= αki [`0 , · · · , `k ] βki [`k+1 , · · · , `n ] ,

d’où le résultat. 2

Remarque 7.12 Le produit composante–par–composante des variables forward et back-


ward permet de calculer la distribution de probabilité conditionnelle de l’état X k à un
instant intermédiaire k, sachant les observations (Y0 , · · · , Yn ) jusqu’à l’instant final n :

qi
P[Xk = i | Y0 , · · · , Yn ] = Xk ,
qkj
j∈E
Filtre de Kalman et Modèles de Markov Cachés 51

pour tout i ∈ E, avec la définition

qki = pik vki , pour tout i ∈ E.

p0 = B(Y0 ) ν - pk

vk ¾ vn ≡ 1

k=0 k=n

Fig. 7.1 – Equations forward–backward

On remarque que la constante de normalisation


X X X
qki = pik vki = pin = Ln ,
i∈E i∈E i∈E

ne dépend pas de l’instant k considéré, et s’interprète comme la vraisemblance du modèle


sachant les observations (Y0 , · · · , Yn ).
52 Master Recherche STI 05/06
Chapitre 8

Algorithme de Viterbi

Il résulte des Remarques 7.6 et 7.12 que les variables forward et backward étudiées
au Chapitre 7 permettent de calculer la distribution de probabilité conditionnelle de
l’état présent Xn , ou de l’état Xk à un instant intermédiaire, sachant les observations
(Y0 , · · · , Yn ) :
pi
P[Xn = i | Y0 , · · · , Yn ] = Xn ,
pjn
j∈E

et
qi
P[Xk = i | Y0 , · · · , Yn ] = Xk ,
qkj
j∈E

respectivement, pour tout i ∈ E.


Compte tenu que les états possibles pour la chaı̂ne de Markov ne se prêtent pas en
général aux opérations algébriques, il n’y aurait aucun sens à utiliser ces distributions de
probabilités conditionnelles pour calculer des moyennes conditionnelles. En revanche, on
peut proposer l’estimateur suivant basé sur les observations (Y0 , · · · , Yn ), soit pour l’état
présent
XnMAP, loc = argmax P[Xn = i | Y0 , · · · , Yn ] = argmax pin ,
i∈E i∈E

soit pour l’état à un instant intermédiaire

XkMAP, loc = argmax P[Xk = i | Y0 , · · · , Yn ] = argmax qki ,


i∈E i∈E

(en supposant que dans chacun des cas le maximum est atteint en un point unique). Cet
estimateur est appelé estimateur local du maximum a posteriori.
Cependant, il peut arriver que la suite (X0MAP, loc , · · · , XnMAP, loc ) ainsi générée soit in-
cohérente avec le modèle, dans le sens suivant : il peut arriver que l’on obtienne XkMAP, loc =
MAP, loc
i et Xk+1 = j pour deux instants successifs, alors que πi,j = 0 pour cette même paire

53
54 Master Recherche STI 05/06

(i, j), ce qui signifie que la transition de l’état i vers l’état j est impossible pour le modèle.
Pour cette raison, on utilise plutôt un autre estimateur, appelé estimateur global du maxi-
mum a posteriori, ou simplement estimateur du maximum a posteriori, défini par

(X0MAP , · · · , XnMAP ) = argmax P[X0 = i0 , · · · , Xn = in | Y0 , · · · , Yn ] .


i0 ,··· ,in ∈E

Le calcul efficace de cet estimateur est fourni par un algorithme de programmation dyna-
mique, appelé algorithme de Viterbi.

Programmation dynamique
D’après la formule de Bayes, la trajectoire qui maximise la distribution de probabilité
conditionnelle de (X0 , · · · , Xn ) sachant les observations (Y0 , · · · , Yn ) maximise également
la distribution de probabilité jointe de (X0 , · · · , Xn ) et des observations (Y0 , · · · , Yn ),
c’est–à–dire que :
• dans le cas fini

argmax P[X0 = i0 , · · · , Xn = in , Y0 = `0 , · · · , Yn = `n ] =
i0 ,··· ,in ∈E

= argmax P[X0 = i0 , · · · , Xn = in | Y0 = `0 , · · · , Yn = `n ] ,
i0 ,··· ,in ∈E

pour tout `0 , · · · , `n ∈ O,
• et dans le cas continu

argmax P[X0 = i0 , · · · , Xn = in , Y0 ∈ dy0 , · · · , Yn ∈ dyn ] =


i0 ,··· ,in ∈E
© ª
= argmax P[X0 = i0 , · · · , Xn = in | Y0 = y0 , · · · , Yn = yn ] dy0 · · · dyn ,
i0 ,··· ,in ∈E

pour tout y0 , · · · , yn ∈ Rd .
Pour tout instant k, on définit :
• dans le cas fini

max P[X0 = i0 , · · · , Xk = ik−1 , Xk = i, Y0 = `0 , · · · , Yk = `k ] = δki [`0 , · · · , `k ] ,


i0 ,··· ,ik−1

pour tout i ∈ E, et tout `0 , · · · , `k ∈ O,


• et dans le cas continu

max P[X0 = i0 , · · · , Xk = ik−1 , Xk = i, Y0 ∈ dy0 , · · · , Yk ∈ dyk ] =


i0 ,··· ,ik−1

= δki [y0 , · · · , yk ] dy0 · · · dyk ,

pour tout i ∈ E, et tout y0 , · · · , yk ∈ Rd .


Filtre de Kalman et Modèles de Markov Cachés 55

La fonction valeur Vk = (Vki ) est définie par

Vki = δki [Y0 , · · · , Yk ] ,

pour tout i ∈ I.

Théorème 8.1 La suite {Vk } vérifie la récurrence suivante :


• dans le cas fini £ ¤
j
Vk+1 = bj (Yk+1 ) max πi,j Vki , (8.1)
i∈E

pour tout j ∈ E, avec la condition initiale

V0i = νi bi (Y0 ) , pour tout i ∈ E,

• et dans le cas continu


j
£ ¤
Vk+1 = ψj (Yk+1 ) max πi,j Vki , (8.2)
i∈E

pour tout j ∈ E, avec la condition initiale

V0i = νi ψi (Y0 ) , pour tout i ∈ E.


A chaque instant k, on définit pour tout j ∈ E l’indice

Ik (j) = argmax [πi,j Vki ]


i∈E

(en supposant que le maximum est atteint en un point unique).

Preuve. On considère uniquement le cas fini. Il résulte de la Proposition 6.5 que

P[X0 = i0 , · · · , Xk−1 = ik−1 , Xk = i, Xk+1 = j,

Y0 = `0 , · · · , Yk = `k , Yk+1 = `k+1 ] =

`
= νi0 πi0 ,i1 · · · πik−1 ,i πi,j b`i00 · · · b`i k bjk+1

= bj (`k+1 ) πi,j P[X0 = i0 , · · · , Xk−1 = ik−1 , Xk = i, Y0 = `0 , · · · , Yk = `k ] ,

pour tout i, j ∈ E, tout i0 , · · · , ik−1 ∈ E, et tout `0 , · · · , `k , `k+1 ∈ O. On en déduit que

max P[X0 = i0 , · · · , Xk−1 = ik−1 , Xk = i, Xk+1 = j,


i0 ,··· ,ik−1 ∈E

Y0 = `0 , · · · , Yk = `k , Yk+1 = `k+1 ] =

= bj (`k+1 ) πi,j δki [`0 , · · · , `k ] ,


56 Master Recherche STI 05/06

pour tout i, j ∈ E, et tout `0 , · · · , `k , `k+1 ∈ O. En maximisant par rapport à i ∈ E, on


obtient
j
δk+1 [`0 , · · · , `k+1 ] =

= max P[X0 = i0 , · · · , Xk−1 = ik−1 , Xk = i, Xk+1 = j,


i0 ,··· ,ik−1 ,i∈E

Y0 = `0 , · · · , Yk = `k , Yk+1 = `k+1 ]

= max max P[X0 = i0 , · · · , Xk−1 = ik−1 , Xk = i, Xk+1 = j,


i∈E i0 ,··· ,ik−1 ∈E

Y0 = `0 , · · · , Yk = `k , Yk+1 = `k+1 ]

£ ¤
= bj (`k ) max πi,j δki [`0 , · · · , `k ] ,
i∈E

d’où le résultat. 2

Remarque 8.2 Parmi toutes les trajectoires qui aboutissent dans l’état j à l’instant
(k + 1), la trajectoire de plus grande probabilité est passé dans l’état
Ik (j) = argmax [πi,j Vki ] ,
i∈E

à l’instant précédent k (en supposant que le maximum est atteint en un point unique).
En outre, on a nécessairement
πIk (j),j > 0 ,
ce qui garantit que la transition de l’état Ik (j) vers l’état j est possible pour le modèle.

La trajectoire optimale est alors calculée de la façon suivante : On remarque d’abord


que
• dans le cas fini
max P[X0 = i0 , · · · , Xn = in , Y0 = `0 , · · · , Yn = `n ] =
i0 ,··· ,in ∈E

= max max P[X0 = i0 , · · · , Xn−1 = in−1 , Xn = i, Y0 = `0 , · · · , Yn = `n ]


i∈E i0 ,··· ,in−1 ∈E

= max δni [`0 , · · · , `n ] ,


i∈E

• et dans le cas continu


max P[X0 = i0 , · · · , Xn = in , Y0 ∈ dy0 , · · · , Yn ∈ dyn ] =
i0 ,··· ,in ∈E

© ª
= max δni [y0 , · · · , yn ] dy0 · · · dyn .
i∈E
Filtre de Kalman et Modèles de Markov Cachés 57

On en déduit que la trajectoire optimale aboutit dans l’état

XnMAP = argmax Vni


i∈E

(en supposant que le maximum est atteint en un point unique), à l’instant final. De proche
en proche, on en déduit que la trajectoire optimale est passée dans l’état

XkMAP = Ik (Xk+1
MAP
),

à l’instant k.

Vk1

π1,j
Vki
πi,j

πN,j

VkN

k=0 k−1 k k+1

Fig. 8.1 – Algorithme de Viterbi (programmation dynamique)


58 Master Recherche STI 05/06
Annexe A

Rappels de probabilités

L’objectif de la théorie des probabilités est l’étude des phénomènes aléatoires. La


caractéristique d’une expérience aléatoire est que le comportement quantitatif ou qualitatif
de grandeurs tentant de décrire le phénomène en question, ne peut pas être complètement
prédit au vu des conditions expérimentales, mais dépend aussi du hasard.
Pour modéliser une expérience aléatoire, on se donne
• un ensemble Ω décrivant toutes les issues possibles de l’expérience, les réalisations,
• une collection F d’évènements possibles, qui sont des parties de Ω,
• une application P qui à chaque évènement A associe la probabilité que celui–ci se
réalise.
L’évaluation des probabilités résulte
• soit d’une formulation a priori,
• soit de l’expérimentation statistique : on réalise un grand nombre d’expériences et
on évalue le rapport NA /N , où NA désigne le nombre d’expériences qui ont vu
l’évènement A se réaliser, et N désigne le nombre total d’expériences,
• soit du calcul : on utilise alors des axiomes, consistants avec la notion intuitive et
expérimentale de probabilité.

Espace de probabilités
Un triplet (Ω, F, P) est appelé espace de probabilités si
• Ω est un ensemble de réalisations,
• F est un ensemble, appelé tribu, de parties de Ω, sont appelées évènements, vérifiant
(i) Ω ∈ F.
(ii) si A ∈ F, alors Ac ∈ F (où par définition Ac = Ω \ A),
[
(iii) si An ∈ F pour tout n ∈ N, alors An ∈ F.
n∈N

59
60 Master Recherche STI 05/06

• P est une application, appelée mesure de probabilité (ou probabilité), définie sur la
tribu F et vérifiant
(iv) pour tout A ∈ F, P (A) ≥ 0,
(v) P (Ω) = 1,
(vi) si An ∈ F pour tout n ∈ N, et An ∩ Am = ∅ pour tout n 6= m, alors
[ X
P( An ) = P(An ) .
n∈N n∈N

A partir des axiomes, on peut montrer les propriétés suivantes


(vii) pour tout A ∈ F, 0 ≤ P(A) ≤ 1,
(viii) pour tout A ∈ F, P(Ac ) = 1 − P(A),
(ix) si An ∈ F pour tout n ∈ N, alors
[ X
P( An ) ≤ P(An ) .
n∈N n∈N

Si F0 ⊂ F, on appelle tribu engendrée par F0 la plus petite tribu contenant tous les
éléments de F0 . Par exemple, si Ω = R et F0 désigne l’ensemble des intervalles ouverts
de R, on appelle tribu borélienne la tribu B engendrée par F0 . De même, si Ω = Rn et
F0 désigne l’ensemble des parties ouvertes de Rn , on appelle tribu borélienne la tribu Bn
engendrée par F0 .

Variables aléatoires
On appelle variable aléatoire réelle sur (Ω, F), une application X définie sur Ω, à
valeurs dans R, telle que pour tout B ∈ B

{ω : X(ω) ∈ B} ∈ F ,

où B est la tribu borélienne sur R.


On appelle vecteur aléatoire de dimension n sur (Ω, F), une application X définie sur
Ω, à valeurs dans Rn , telle que pour tout B ∈ Bn

{ω : X(ω) ∈ B} ∈ F ,

où Bn est la tribu borélienne sur Rn .


Plus généralement, on appelle variable aléatoire sur (Ω, F) à valeurs dans un espace
probabilisable (E, E) (on dit également application mesurable de (Ω, F) dans (E, E)), une
application X définie sur Ω, à valeurs dans E, telle que pour tout B ∈ E

{ω : X(ω) ∈ B} ∈ F .
Filtre de Kalman et Modèles de Markov Cachés 61

Pour tout B ∈ E, on utilise les notations suivantes


4
{X ∈ B} = {ω : X(ω) ∈ B} ,

et
4
P(X ∈ B) = P({X ∈ B}) .
On vérifie que l’application µX définie sur la tribu E par la relation
4
µX (B) = P(X ∈ B) ,

pour tout B ∈ E, est une mesure de probabilité sur (E, E), appelée loi de X (on dit
également distribution de probabilité de X).

Densité, densité jointe, densités marginales


Soit X un vecteur aléatoire de dimension n sur (Ω, F, P). S’il existe une fonction p X
définie sur Rn , telle que pour tout B ∈ Bn
Z
P(X ∈ B) = µX (B) = pX (x) dx ,
B

on dit que la loi de X est absolument continue, et que pX est la densité de X (on dit
également densité de probabilité de X).

Exemple A.1 [densité gaussienne] On appelle variable aléatoire gaussienne réelle, de


moyenne µ et de variance σ 2 , une variable aléatoire réelle dont la densité est définie par

1 © (x − µ)2 ª
pX (x) = √ exp − .
2π σ 2σ 2

Soit X (resp. Y ) un vecteur aléatoire de dimension n (resp. de dimension p) sur


(Ω, F, P). S’il existe une fonction pX,Y définie sur Rn+p , telle que pour tout B ∈ Bn+p
Z
P[(X, Y ) ∈ B] = pX,Y (x, y) dx dy ,
B

on dit que pX,Y est la densité jointe de X et Y .


On remarque que les densités marginales de pX,Y , définies respectivement par
Z Z
4 4
pX (x) = pX,Y (x, y) dy , et pY (y) = pX,Y (x, y) dx ,
Rp Rn
62 Master Recherche STI 05/06

coı̈ncident avec les densités de X et de Y . En effet, pour tout B ∈ Bn

P(X ∈ B) = P[(X, Y ) ∈ B × Rp ]
Z Z Z
© ª
= pX,Y (x, y) dx dy = pX,Y (x, y) dy dx ,
B×Rp B Rp

et de même pour tout B ∈ Bp

P(Y ∈ B) = P[(X, Y ) ∈ Rn × B]
Z Z Z
© ª
= pX,Y (x, y) dx dy = pX,Y (x, y) dx dy .
Rn ×B B Rn

Moyenne, covariance
L’espérance mathématique (ou la moyenne) de la variable aléatoire X, notée E[X], est
définie par Z
4
E[X] = x pX (x) dx .
Rn

Si Y = g(X) est une fonction (mesurable) réelle de la variable aléatoire X, alors Y a pour
espérance Z
E[Y ] = E[g(X)] = g(x) pX (x) dx .
R

La matrice de covariance (ou simplement la variance dans le cas réel) est définie par
Z
4 ∗
cov(X) = E[(X − X̄) (X − X̄) ] = (x − X̄) (x − X̄)∗ pX (x) dx ,
Rn

avec la notation X̄ = E[X]. Il s’agit d’une matrice n × n symétrique et semi–définie


positive.

Exemple A.2 Soit X une variable aléatoire gaussienne réelle, de densité

1 © (x − µ)2 ª
pX (x) = √ exp − .
2π σ 2σ 2

On vérifie par le calcul que E[X] = µ et var(X) = σ 2 , ce qui justifie la terminologie


employée dans l’Exemple A.1 ci–dessus.

L’opérateur d’espérance mathématique ainsi défini est linéaire : soit α, β ∈ R et X, Y


deux vecteurs aléatoires de dimension n,

E[α X + β Y ] = α E[X] + β E[Y ] .


Filtre de Kalman et Modèles de Markov Cachés 63

En effet
Z
E[α X + β Y ] = (α x + β y) pX,Y (x, y) dx dy
Rn ×Rn
Z Z Z Z
© ª © ª
=α x pX,Y (x, y) dy dx + β y pX,Y (x, y) dx dy
n Rn Rn Rn
ZR Z
=α x pX (x) dx + β y pY (y) dy = α E[X] + β E[Y ] .
Rn Rn

Probabilité conditionnelle, indépendance


Soit A, B ∈ F deux évènements. La connaissance que l’évènement B est réalisé conduit
à réévaluer la probabilité de voir l’évènement A se réaliser, de la façon suivante : on définit
la probabilité conditionnelle de l’évènement A sachant B par la formule
P(A ∩ B)
P(A | B) = , (A.1)
P(B)

pourvu que P(B) > 0.


Cette définition est conforme à l’intuition fondée sur la notion de fréquence relative :
on réalise un grand nombre d’expériences et on évalue le rapport NA∩B /NB , où NB désigne
le nombre d’expériences qui ont vu l’évènement B se réaliser, et NA∩B désigne le nombre
d’expériences parmi celles–ci qui ont également vu l’évènement A se réaliser, c’est–à–
dire le nombre d’expériences qui ont vu l’évènement A ∩ B se réaliser. Si N désigne le
nombre total d’expériences, on a bien NA∩B /NB = NA∩B /N · (NB /N )−1 , ce qui justifie la
définition.
A partir de la définition, on obtient la formule de Bayes
P(B | A) · P(A)
P(A | B) = ,
P(B)

pourvu que P(B) > 0. On montre aussi que, si A1 , · · · , An est une partition de Ω, alors
n
X
P(B) = P(B | Ai ) · P(Ai ) ,
i=1

pour tout B ∈ F. On en déduit


P(B | Aj ) · P(Aj )
P(Aj | B) = n ,
X
P(B | Ai ) · P(Ai )
i=1

pour tout B ∈ F.
64 Master Recherche STI 05/06

Deux évènements A, B ∈ F sont dits indépendants, et on note A ⊥ B, si la connais-


sance que l’un de ces évènements s’est réalisé n’entraı̂ne aucune modification de la pro-
babilité de voir l’autre évènement se réaliser, c’est–à–dire
P(A ∩ B)
= P(A) ,
P(B)
ou de façon plus symétrique
P(A ∩ B) = P(A) · P(B) .

Des événements A1 , · · · , An ∈ F sont mutuellement indépendants si


P(Ai1 ∩ · · · ∩ Aik ) = P(Ai1 ) · · · P(Aik )
pour tout choix 1 ≤ i1 < · · · < ik ≤ n. Attention : on peut avoir A ⊥ B, B ⊥ C, et
A ⊥ C mais cela n’entraı̂ne pas que A, B, C sont mutuellement indépendants.
Soit X (resp. Y ) un vecteur aléatoire de dimension n (resp. de dimension p) défini sur
(Ω, F, P). On dit que les vecteurs aléatoires X et Y sont indépendants, et on note X ⊥ Y ,
si pour tout A ∈ Bn , B ∈ Bp , les évènements (X ∈ A) et (Y ∈ B) sont indépendants,
c’est–à–dire
P(X ∈ A , Y ∈ B) = P(X ∈ A) · P(Y ∈ B) .

Si pX,Y désigne la densité jointe de (X, Y ), alors pour tout A ∈ Bn , B ∈ Bp


Z
P(X ∈ A , Y ∈ B) = pX,Y (x, y) dx dy ,
A×B

et
Z Z Z
P(X ∈ A) · P(Y ∈ B) = pX (x) dx pY (y) dy = pX (x) pY (y) dx dy .
A B A×B

Il en résulte que la propriété d’indépendance est équivalente à la propriété de factorisation


de la densité jointe : pour (presque) tout x ∈ Rn , y ∈ Rp
pX,Y (x, y) = pX (x) · pY (y) .

Soit f (resp. g) une fonction (mesurable) réelle définie sur Rn (resp. sur Rp ). On a
Z
E[f (X) g(Y )] = f (x) g(y) pX,Y (x, y) dx dy ,
Rn ×Rp

et
Z Z
© ª© ª
E[f (X)] · E[g(Y )] = f (x) pX (x) dx g(y) pY (y) dy
Rn Rp
Z
= f (x) g(y) pX (x) pY (y) dx dy .
Rn ×Rp
Filtre de Kalman et Modèles de Markov Cachés 65

On obtient ainsi un autre critère pour vérifier l’indépendance de deux vecteurs aléatoires :
les vecteurs aléatoires X et Y , de dimension n et p respectivement, sont indépendants si
et seulement si
E[f (X) g(Y )] = E[f (X)] · E[g(Y )] ,
pour toute paire f , g de fonctions (mesurables) réelles définies sur Rn et Rp respectivement.

Conditionnement par (Y = y)
Etant donnés deux vecteurs aléatoires X et Y définis sur (Ω, F, P), de dimension n et
p respectivement, qu’apporte le fait d’observer la réalisation Y = y sur la connaissance
que l’on a de X ?
On aimerait utiliser la formule (A.1), c’est–à–dire écrire
P(X ∈ A, Y = y)
P(X ∈ A | Y = y) = ,
P(Y = y)
mais en général P(Y = y) = 0. On introduit donc la définition suivante : s’il existe une
fonction (mesurable) ψ(·) définie sur Rp telle que
Z
P(X ∈ A, Y ∈ B) = ψ(y) pY (y) dy ,
B
n p
pour tout A ∈ B , B ∈ B , on dit que ψ(y) est (une version de) la probabilité condition-
nelle de l’évènement (X ∈ A) sachant Y = y, et on note P(X ∈ A | Y = y).

Remarque A.3 Si B ∈ Bp , avec y ∈ B et P(Y ∈ B) > 0, alors la formule (A.1) peut


être utilisée, et donne
Z
ψ(z) pY (z) dz
P(X ∈ A, Y ∈ B) BZ
P(X ∈ A | Y ∈ B) = = −→ ψ(y) ,
P(Y ∈ B)
pY (z) dz
B

quand B ↓ {y}, c’est–à–dire quand l’ensemble B décroı̂t vers le point y, ce qui justifie
intuitivement la définition donnée plus haut.

Le calcul pratique de la probabilité conditionnelle P(X ∈ A | Y = y) se fait de la


façon suivante : soit (X, Y ) un vecteur aléatoire de dimension (n + p) défini sur (Ω, F, P),
et soit pX,Y sa densité jointe. Par définition
Z
P(X ∈ A, Y ∈ B) = pX,Y (x, y) dy dx
A×B
Z Z Z Z
© ª © pX,Y (x, y) ª
= pX,Y (x, y) dx dy = dx pY (y) dy ,
B A B A pY (y)
66 Master Recherche STI 05/06

ce qui donne l’expression suivante


Z
pX,Y (x, y)
P(X ∈ A | Y = y) = dx .
A pY (y)
La densité de la loi conditionnelle (ou densité conditionnelle) du vecteur aléatoire X
sachant Y = y, est définie par la formule
pX,Y (x, y)
pX|Y =y (x) = .
pY (y)

Soit φ(·) une fonction (mesurable) réelle définie sur Rn . On définit la moyenne condi-
tionnelle de la variable aléatoire réelle φ(X) sachant Y = y par
Z
E[φ(X) | Y = y] = φ(x) pX|Y =y (x) dx .
Rn

Le calcul donne
Z
E[ φ(X) 1(Y ∈ B) ] = φ(x) pX,Y (x, y) dy dx
ZRn ×BZ
© pX,Y (x, y) ª
= φ(x) dx pY (y) dy
ZB ZRn pY (y) (A.2)
© ª
= φ(x) pX|Y =y (x) dx pY (y) dy
ZB Rn

= E[φ(X) | Y = y] pY (y) dy ,
B

pour tout B ∈ Bp , ce qui fournit une autre caractérisation de la moyenne conditionnelle.


Le résultat suivant montre que la moyenne conditionnelle sachant Y peut s’interpréter
comme une projection orthogonale sur la tribu engendrée par le vecteur aléatoire Y (pour
le produit scalaire hξ, ηi = E[ξ η] défini sur l’ensemble des variables aléatoires réelles de
carré intégrable).

Proposition A.4 Soit φ(y) b b ),


= E[φ(X) | Y = y]. Alors la variable aléatoire réelle φ(Y
notée aussi E[φ(X) | Y ], est caractérisée par
b )] ψ(Y ) ] = 0 ,
E[ [φ(X) − φ(Y

pour toute fonction (mesurable) réelle ψ(·) définie sur Rp .

Preuve. Prenons ψ(·) de la forme ψ(y) = 1(y ∈ B) , où B ∈ Bp . Alors, d’après (A.2)
Z Z
b
E[ φ(Y ) ψ(Y ) ] = b
φ(y) pY (y) dy = E[φ(X) | Y = y] pY (y) dy
B B
= E[ φ(X) 1(Y ∈ B) ] = E[ φ(X) ψ(Y ) ] . 2
Filtre de Kalman et Modèles de Markov Cachés 67

Une écriture équivalente est


E[ E[φ(X) | Y ] ψ(Y ) ] = E[ φ(X) ψ(Y ) ] ,
pour toute fonction (mesurable) réelle ψ(·) définie sur Rp .
On obtient en particulier
E[ E[φ(X) | Y ] ] = E[φ(X)] ,
en prenant ψ(y) ≡ 1. D’autres conséquences de la Proposition A.4 sont listées ci–dessous.

Corollaire A.5 (i) Si X = f (Y ), alors : E[φ(X) | Y ] = φ(X).


(ii) Si Y ⊥ X, alors : E[φ(X) | Y ] = E[φ(X)].
(iii) Si Z ⊥ (X, Y ), alors : E[ φ(X) | Y, Z ] = E[ φ(X) | Y ].

Remarque A.6 La première propriété (i) exprime que lorsque X dépend explicitement
de Y , l’observation de Y permet de connaı̂tre X exactement.
La seconde propriété (ii) exprime que dans la situation opposée où les vecteurs aléatoires
X et Y sont indépendants, l’observation de Y n’apprend rien de nouveau sur φ(X). La
dernière propriété (iii) est une généralisation de (ii).

Preuve. On utilise systématiquement la caractérisation donnée à la Proposition A.4.


Si X = f (Y ), alors
E[ φ(X) ψ(Y ) ] = E[ φ[f (Y )] ψ(Y ) ] ,
d’où
E[φ(X) | Y ] = φ[f (Y )] = φ(X) ,
ce qui prouve (i).
Si Y ⊥ X, alors
E[ φ(X) ψ(Y ) ] = E[φ(X)] E[ψ(Y )] = E[ E[φ(X)] ψ(Y ) ] ,
ce qui prouve (ii).
Si Z ⊥ (X, Y ), alors
E[ φ(X) ψ(Y ) χ(Z) ] = E[ φ(X) ψ(Y ) ] E[χ(Z)]
= E[ E[φ(X) | Y ] ψ(Y ) ] E[χ(Z)]
= E[ E[φ(X) | Y ] ψ(Y ) χ(Z) ] ,
ce qui prouve (iii). 2
Finalement le résultat suivant, dont la démonstration est similaire à celle de la Propo-
sition 1.4, montre que la moyenne conditionnelle sachant Y peut également s’interpréter
comme un estimateur du minimum de variance.
68 Master Recherche STI 05/06

Proposition A.7 La moyenne conditionnelle φ(Y b ) = E[φ(X) | Y ] de la variable aléatoire


φ(X) sachant le vecteur aléatoire Y , est l’estimateur de φ(X) construit à partir de Y qui
minimise la variance de l’erreur d’estimation, c’est–à–dire que
b )|2 ] ≤ E[ |φ(X) − ψ(Y )|2 ]
E[ |φ(X) − φ(Y
pour tout autre estimateur ψ(·).

Fonction caractéristique
Soit X un vecteur aléatoire de dimension n défini sur (Ω, F, P). On appelle fonction
caractéristique de X, la transformée de Fourier de la densité pX , définie par
Z
i u∗ X
e i u x pX (x) dx ,

ΦX (u) = E[ e ]=
Rn
n
pour tout u ∈ R . Grace à la formule d’inversion, la donnée de la densité pX est équiavelente
à la donnée de la fonction caractéristique ΦX .

Exemple A.8 Soit X une variable aléatoire gaussienne réelle, de moyenne µ et de va-
riance σ 2 . On vérifie que
© ª
ΦX (u) = exp i uµ − 12 σ 2 u2 .

Si les composantes (X1 , · · · , Xn ) du vecteur aléatoire X = (X1 , · · · , Xn ) sont mutuel-


lement indépendantes, alors
ΦX (u) = ΦX1 (u1 ) · · · ΦXn (un ) ,
pour tout u = (u1 , · · · , un ), ce qui fournit un nouveau critère pour vérifier l’indépendance
mutuelle de vecteurs aléatoires.

Proposition A.9 Soit X un vecteur aléatoire de dimension n défini sur (Ω, F, P). Soit
A une application linéaire de Rn dans Rp , c’est–à–dire une matrice p × n, et soit b un
vecteur de Rp . On définit Y = A X + b, et on vérifie qu’il s’agit d’un vecteur aléatoire de
dimension p, dont la fonction caractéristique vérifie
ΦY (u) = e i u b ΦX (A∗ u) ,

pour tout u ∈ Rp .

Preuve. Par définition


∗ (A X+b)
ΦY (u) = E[ e i u
∗Y
] = E[ e i u ]

= e i u b E[ e i u AX
] = e i u b E[ e i (A u)∗ X
] = e i u b ΦX (A∗ u) ,
∗ ∗ ∗ ∗ ∗

pour tout u ∈ Rp . 2
Filtre de Kalman et Modèles de Markov Cachés 69

Vecteurs aléatoires gaussiens


Soit X un vecteur aléatoire de dimension n défini sur (Ω, F, P). On dit que X est un
vecteur aléatoire gaussien si toute combinaison linéaire des composantes du vecteur X
est une variable aléatoire gaussienne réelle, c’est–à–dire si, pour tout u ∈ R n , la variable
aléatoire réelle u∗ X est gaussienne.

Proposition A.10 Soit X un vecteur aléatoire gaussien de dimension n, de moyenne µ


et de matrice de covariance Q. Sa fonction caractéristique vérifie
© ª
ΦX (u) = exp i u∗ µ − 12 u∗ Qu ,
pour tout u ∈ Rn .

Preuve. Comme la variable aléatoire réelle u∗ X est gaussienne, sa loi est complètement
caractérisée par sa moyenne
E[u∗ X] = u∗ E[X] = u∗ µ ,
et sa variance
E[ (u∗ (X − µ))2 ] = E[ u∗ (X − µ)(X − µ)∗ u ] = u∗ Qu ,
qui définissent respectivement une forme linéaire et une forme quadratique symétrique
semi–définie positive sur Rn . La fonction caractéristique de la variable aléatoire gaussienne
réelle u∗ X vérifie donc, d’après le résultat donné à l’Exemple A.8
© ª
Φu∗ X (λ) = E[ e i λ u X ] = exp i λ u∗ µ − 12 λ2 u∗ Qu = ΦX (λu) ,

pour tout réel λ. En faisant λ = 1, on vérifie que la fonction caractéristique du vecteur


aléatoire gaussien X vérifie
© ª
ΦX (u) = exp i u∗ µ − 21 u∗ Qu ,
pour tout u ∈ Rn . 2

Remarque A.11 Par définition, les composantes d’un vecteur aléatoire gaussien sont
des variables aléatoires gaussiennes. Mais un vecteur aléatoire dont les composantes sont
des variables aléatoires gaussiennes n’est pas nécessairement gaussien.

On énonce le résultat suivant, sans démonstration.

Proposition A.12 Soit X un vecteur aléatoire gaussien de dimension n, de moyenne µ


et de matrice de covariance Q. Si la matrice Q est non–dégénérée (inversible), alors la
loi de X possède une densité pX , qui vérifie
1 © ª
pX (x) = √ √ exp − 21 (x − µ)∗ Q−1 (x − µ) .
( 2π)n det Q
70 Master Recherche STI 05/06

Proposition A.13 Soit X un vecteur aléatoire gaussien de dimension n, de moyenne µ


et de matrice de covariance Q. Soit A une application linéaire de Rn dans Rp , c’est–à–dire
une matrice p × n, et soit b un vecteur de Rp . Alors, le vecteur aléatoire Y = A X + b est
gaussien, de moyenne A µ + b et de matrice de covariance AQA∗ .

Preuve. Il suffit de montrer le caractère gaussien. En combinant les Propositions A.9


et A.10, on obtient
© ª
ΦY (u) = e i u b ΦX (A∗ u) = e i u b exp i (A∗ u)∗ µ − 12 (A∗ u)∗ Q(A∗ u)
∗ ∗

© ª
= exp i u∗ (Aµ + b) − 12 u∗ (AQA∗ )u ,

pour tout u ∈ Rp . 2
Le résultat suivant montre que deux composantes d’un vecteur aléatoire gaussien sont
indépendantes, si et seulement si ces composantes sont non–corrélées (ou orthogonales).

Proposition A.14 Soit (X, Y ) un vecteur aléatoire gaussien de dimension (n+p). Alors
X ⊥ Y si et seulement si

QX,Y = E[(X − µX ) (Y − µY )∗ ] = 0 .

Preuve. Si X ⊥ Y , alors il est évident que

QX,Y = E[ (X − µX )(Y − µY )∗ ] = E[X − µX ] E[Y − µY ]∗ = 0 .

indépendamment du caractère gaussien.


Réciproquement, pour tout u ∈ Rn , v ∈ Rp
µ ¶ µ ¶µ ¶
© µ X 1 Q X Q X,Y u ª
ΦX,Y (u, v) = exp i ( u∗ v ∗ ) − 2 ( u∗ v ∗ )
µY QY,X QY v
© ª
= exp i u∗ µX + i v ∗ µY − 21 u∗ QX u − u∗ QX,Y v − 12 v ∗ QY v

© ª © ª © ª
= exp i u∗ µX − 21 u∗ QX u exp i v ∗ µY − 21 v ∗ QY v exp − u∗ QX,Y v

© ª
= ΦX (u) ΦY (v) exp − u∗ QX,Y v .

Si QX,Y = 0, alors la fonction caractéristique se factorise : pour tout u ∈ Rn , v ∈ Rp

ΦX,Y (u, v) = ΦX (u) ΦY (v) ,

c’est–à–dire que X ⊥ Y . 2
Filtre de Kalman et Modèles de Markov Cachés 71

Soit X et Y deux vecteurs aléatoires de dimension n et p respectivement. D’après la


b = E[X | Y ] est la
Proposition A.4, l’espérance conditionnelle de X sachant Y , notée X
projection orthogonale du vecteur aléatoire X sur la tribu Y engendrée par le vecteur
aléatoire Y .
Soit X ⊥ la projection orthogonale du vecteur aléatoire X sur l’espace vectoriel H
engendré par les constantes et par les composantes du vecteur aléatoire Y . Evidemment
H ⊂ Y, de sorte que
b 2] .
E[ |X − X ⊥ |2 ] ≥ E[ |X − X|

Le résultat suivant montre que les deux projections coı̈ncident dans le cas particulier
des vecteurs aléatoires gaussiens.

Proposition A.15 Soit (X, Y ) un vecteur aléatoire gaussien de dimension (n + p), et


soit X ⊥ la projection orthogonale du vecteur aléatoire X sur l’espace vectoriel H engendré
par les constantes et par les composantes du vecteur aléatoire Y . On a alors

X ⊥ = E[X | Y ] .

Preuve. Par définition


X⊥ = α + A Y ,
où α est un vecteur de Rn et A est une matrice n × p, et chaque composante du vecteur
aléatoire (X − X ⊥ ) est orthogonale à la constante 1, et à chacune des composantes du
vecteur aléatoire Y , ce qui peut se traduire par les relations

E[X − X ⊥ ] = 0 , (A.3)
E[ (X − X ⊥ ) Y ∗ ] = 0 . (A.4)

D’autre part, le vecteur aléatoire (X − X ⊥ , Y ) est un vecteur aléatoire gaussien de di-


mension (n + p) : en effet, pour tout u ∈ Rn , v ∈ Rp

u∗ (X − X ⊥ ) + v ∗ Y = u∗ (X − α − A Y ) + v ∗ Y = u∗ X + (v − A∗ u)∗ Y .

D’après la Proposition A.14 ci–dessus, la propriété d’orthogonalité (A.4) entraı̂ne l’indé-


pendance des vecteurs aléatoires (X − X ⊥ ) et Y . En utilisant (A.3), on obtient

E[ (X − X ⊥ ) ψ(Y ) ] = E[X − X ⊥ ] E[ψ(Y )] = 0 ,

pour toute fonction (mesurable) réelle ψ(·) définie sur Rp . Il suffit alors d’appliquer la
Proposition A.4 pour conclure. 2

Vous aimerez peut-être aussi