• Aucun résultat trouvé

Filtre de Kalman

Dans le document Recueil de Modèles Aléatoires (Page 111-117)

7.2 Filtre de Kalman

Un avion se déplace entre Paris et Londres, en tentant de suivre une tra- jectoire théorique définie par le plan de vol. L’avion est surveillé au sol par des contrôleurs aériens grâce à un radar qui reçoit un écho de l’avion à intervalles réguliers. La trajectoire effective de l’avion s’écarte de la trajectoire théorique pour de multiples raisons (météorologie, imprécision du pilote automatique, turbulences,. . . ). On cherche donc à localiser l’avion au cours de son vol à partir des observations radars successives.

On note Xn l’écart (inconnu) entre la trajectoire théorique et la position de l’avion au temps n. De plus, on note Yn la mesure donnée par le radar au temps n. Cette mesure est entachée d’erreurs à cause de l’imprécision du radar. Le problème qui se pose à l’aiguilleur est d’estimer au mieux la position de l’avion au temps n au vu des observations Y0, . . . , Yn. Pour simplifier l’étude, on supposera que l’objet observé évolue dans un espace de dimension 1. On modélise les suites aléatoires (Xn)n>0 et (Yn)n>0en posant

     X0= W0, Xn = aXn−1+ Wn n > 1, Yn= Xn+ Vn n > 0,

où a est un nombre réel déterministe, et où (Vn)n>0 et (Wn)n>0 sont des suites aléatoires indépendantes, avec (Vn)n>0i.i.d. de loi gaussienne N (0, τ2) et (Wn)n>0i.i.d. de loi gaussienne N (0, σ2). Les variables aléatoires (Wn)n>0 représentent les fluctuations instantanées de l’écart entre position théorique et position réelle. Les variables aléatoires (Vn)n>0 modélisent les erreurs de mesure du radar. Le paramètre a modélise l’action du pilote.

En théorie du signal, on dit que (Xn)n>0 est un processus autorégressif d’ordre 1, noté AR(1), à bruit gaussien, et on a

Xn= n X k=0 akWn−k= n X k=0 an−kWk, n∈ N.

À présent, le problème est d’estimer Xnsachant les observations Y0, . . . , Yn. Le candidat naturel est l’espérance conditionnelle E(Xn| Y0, . . . , Yn) puisque c’est la fonction des observations qui est la plus proche de Xn dans L2 (moindre carrés). Or le caractère gaussien du modèle permet, grâce aux pro- priétés des vecteurs gaussiens, de calculer explicitement la loi conditionnelle Loi(Xn| Y0, . . . , Yn), en particulier sa moyenne qui est E(Xn| Y0, . . . , Yn).

La première remarque importante est que pour tout n > 1, (X0, . . . , Xn, Y0, . . . , Yn)

est un vecteur aléatoire gaussien puisque toute combinaison linéaire de ses co- ordonnées est une combinaison linéaire des variables aléatoires gaussiennes

100 7 Chaînes de Markov cachées

indépendantes (Wi)06i6n et (Vi)06i6n. En particulier, pour tout n > 0,

(Xn, Y0, . . . , Yn) est aussi un vecteur gaussien. De plus, la loi de Xn sachant (Y0, . . . , Yn) est une loi gaussienne, dont on note la moyenne ˆXnet la variance

Pn. On se propose de calculer ces quantités par récurrence. Comme pour les chaînes de Markov à espace d’états fini de la première partie du chapitre, la récurrence se fait en deux étapes. L’étape de prédiction consiste à expri- mer la loi Loi(Xn| Y0, . . . , Yn−1) en fonction de Loi(Xn−1| Y0, . . . , Yn−1). Puis,

dans l’étape de filtrage, on prend en compte l’observation Yn pour exprimer Loi(Xn| Y0, . . . , Yn) en fonction de Loi(Xn| Y0, . . . , Yn−1).

Lemme 7.5 (Lois conditionnelles). On a

Loi(Xn| Y0, . . . , Yn) = N ( ˆXn, Pn) ˆ Xn= a ˆXn−1+Pτ2n(Yn− a ˆXn−1) et Pn= a2τ2P n−1+ σ2τ2 a2P n−1+ σ2+ τ2 . Démonstration. Tout d’abord, on rappelle le résultat suivant sur les vecteurs

gaussiens, que nous appelons formule de Bayes : si (X, Y0, . . . , Yn−1) est un

vecteur gaussien dans Rn+1 avec

Loi(X | Y0, . . . , Yn−1) = N (µ, γ2) et Loi(Y | Y0, . . . , Yn−1, X) =N (X, δ2) alors Loi(X | Y0, . . . , Yn−1, Y ) =N  ρ2  µ γ2 + Y δ2  , ρ2  où 1 ρ2 := 1 γ2+ 1 δ2.

À présent, et comme annoncé, on procède par récurrence, en deux étapes. — Initialisation. Puisque Y0 = X0+ V0, on a Loi(Y0| X0) = N (X0, τ2).

La formule de Bayes assure que Loi(X0| Y0) = N ( ˆX0, P0) où

ˆ X0= σ 2 σ2+ τ2Y0 et P0= σ2τ2 σ2+ τ2.

— Prédiction. On a Loi(Xn−1| Y0, . . . , Yn−1) = N ( ˆXn−1, Pn−1), et grâce

au modèle,

Loi(Xn| Y0, . . . , Yn−1) = N (a ˆXn−1, a2Pn−1+ σ2).

— Filtrage. D’après le modèle à nouveau, il vient

Loi(Yn| Y0, . . . , Yn−1, Xn) = N (Xn, τ2).

On applique alors la formule de Bayes pour inverser le conditionnement entre Yn et Xn : la loi Loi(Xn| Y0, . . . , Yn) = N ( ˆXn, Pn) avec

1 Pn = 1 a2P n−1+ σ2 + 1 τ2 et Xˆn= Pn a ˆXn−1 a2P n−1+ σ2 + Yn τ2 ! .

7.2 Filtre de Kalman 101

⊓ ⊔

Remarque 7.6 (Gain suite aux observations). La majoration Pn = E

h

(Xn− ˆXn)2 i

6 E(Xn− Yn)2= τ2,

peu surprenante connaissant les propriétés de l’espérance conditionnelle, sou- ligne bien que l’on gagne effectivement à utiliser toutes les observations Y0, . . . , Yn plutôt que de se contenter de la dernière Yn.

Estimation de certains paramètres du modèle

On suppose dans cette section qu’on observe les positions de l’avion sans erreurs, c’est-à-dire qu’on a accès à la suite (Xi)16i6n. On souhaite estimer

les coefficients a et σ2. La question n’est pas complètement évidente car les

observations ne sont pas indépendantes.

Lemme 7.7 (Estimateur de maximum de vraisemblance). L’estimateur de maximum de vraisemblance (ˆa, ˆσ) de (a, σ) est donné par

ˆan= Pn k=1Xk−1Xk Pn k=1Xk2−1 et ˆσ2 n= 1 n n X k=1 (Xk− ˆanXk−1)2.

Démonstration. Il suffit de maximiser le logarithme de la vraisemblance don-

née par L(X1,...,Xn)(a, σ) = 1 (2πσ2)n/2 n Y k=1 exp  −(Xk− aXk−1) 2 2  . ⊓ ⊔

Théorème 7.8 (Convergence et normalité). Si−1 < a < 1 alors (ˆan, ˆσn) p.s. −→ n→∞(a, σ), etn(ˆa− a) −→loi n→∞N (0, 1 − a 2), etn ˆσ2 − σ2n−→→∞loi N (0, 2σ4).

Démonstration. On se contente d’établir les résultats sur ˆa, en supposant σ

connu et fixé. On réécrit ˆan de la manière suivante : ˆan= a + Pn k=1Xk−1Wk Pn k=1Xk2−1 = a + Mn Pn k=1Xk−1

où Mn =Pnk=1Xk−1Wk, avec M0= 0. La suite (Mn)n>0 est une martingale par rapport à la filtration (Fn)n naturelle de W , de processus croissant

102 7 Chaînes de Markov cachées

hMi0= 0 et, pour n > 1, hMin= σ2 n X k=1

X2

k−1.

À présent, on vérifie tout d’abord, en utilisant le fait que X est un processus autorégressif d’ordre 1 AR(1) avec |a| < 1, que

hMin n p.s. −→ n→∞ σ4 (1 − a2),

(on a en particulier hMin → +∞ p.s. quand n → ∞), puis on utilise la loi des grands nombres et le théorème limite central pour les martingales de carré intégrable, qui donnent

Mn hMin p.s. −→ n→∞0 et Mn p hMin loi −→ n→∞N (0, 1). ⊓ ⊔

7.3 Pour aller plus loin

L’algorithme de segmentation progressif-rétrograde remonte au moins aux travaux des années 1960 de Leonard Baum et Lloyd Welch, et peut être vu comme une instance du concept général de programmation dynamique. Les chaînes de Markov cachées ont été utilisées notamment pour la reconnais- sance de la parole dans les années 1970, et pour la génomique à partir des an- nées 1980. Le livre de Stéphane Robin, François Rodolphe, et Sophie Schbath [RRS05] propose une introduction accessible à l’utilisation des chaînes de Mar- kov cachées en génomique. On peut également consulter à ce sujet le livre de Étienne Pardoux [Par07]. Bien que les modèles utilisés en pratique soient plus sophistiqués que celui présenté dans ce chapitre, notamment en ce qui concerne les espaces d’état A et U, ils font appel aux mêmes concepts et outils. Cependant en pratique, on ne connaît pas en général les matrices de transi- tion ni même le nombre d’états cachés pertinent pour rendre compte de la loi de la séquence, et il faut donc construire des algorithmes qui permettent en plus d’estimer ces paramètres de complexité. On pourra également consul- ter le livre de Jean-François Delmas et Benjamin Jourdain [DJ06] à ce sujet. D’autre part, il est possible de tester si une suite aléatoire est markovienne ou pas en utilisant par exemple Ni et Nij et le test du χ2, comme expliqué par

exemple dans le livre de Didier Dacunha-Castelle et Marie Duflo [DCD83]. La partie sur le filtre de Kalman est inspirée du livre de David Williams [Wil91]. Le filtre de Kalman, présenté ici dans une version simple, est un grand classique de la théorie du signal, développé dès les années 1960 par Thorvald Thiele et Peter Swerling, et par Rudolf Kalman et Richard Bucy, notamment pour les besoins du programme Apollo de la National Aeronautics and Space Administration. On trouvera dans [Par07] l’expression du filtre de

7.3 Pour aller plus loin 103

Kalman en dimension supérieure à 1. La loi des grands nombres et le théorème limite central pour les martingales utilisé dans la preuve du théorème 7.8 sont tirés du livre [BC07]. L’estimation par maximum de vraisemblance des paramètres a, σ, τ du modèle gaussien à partir de Y sans connaître X se trouve par exemple dans le livre de Peter Brockwell et Richard Davis [BD02, Sec. 8.5].

8

Algorithme EM et mélanges

Mots-clés. Mélange de lois ; estimation paramétrique.

Outils. Formule de Bayes ; maximum de vraisemblance ; entropie relative ;

loi gaussienne.

Difficulté. *

L’algorithme Expectation-Maximization (EM) fait partie des algorithmes les plus importants de la statistique. Il permet d’approcher numériquement l’estimateur de maximum de vraisemblance pour les modèles partiellement ob- servés. De nombreuses variantes sont disponibles. Dans ce chapitre, nous illus- trons la mécanique fondamentale de l’algorithme EM sur un exemple simple. Sur une île cohabitent quatre espèces de mouettes différentes. Les ornitho- logues souhaitent estimer la proportion de mouettes de chaque espèce à partir de l’observation de la taille des nids. Contrairement aux oiseaux, les nids ne bougent pas, ce qui facilite le comptage. Malheureusement, les différentes es- pèces font des nids assez ressemblants : on ne sait pas par quelles espèces ils ont été construits. On suppose en revanche que la distribution des nids est caractéristique d’une espèce. La distribution globale de la taille des nids appa- raît comme le mélange de quatre lois de probabilité, chacune rendant compte de la répartition de la taille des nids pour chaque espèce d’oiseaux.

Dans le document Recueil de Modèles Aléatoires (Page 111-117)