Upload
thomas-pierce
View
21
Download
4
Embed Size (px)
DESCRIPTION
Rapport de projet
Citation preview
Ecole Polytechnique de Louvain
Universite Catholique de Louvain
INMA1731 : Processus stochastiques
Rapport de projet
Auteurs :
Georges-Henri LECLERCQ 3289 10 00
Thomas PAIRON 5459 10 00
Professeurs :
Pierre-Antoine ABSIL
Luc VANDENDORPE
Assistant du projet :
Francois GONZE
Annee academique 2013-2014
Table des matieres
1 Partie statique 1
1.1 Estimateur BLUE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Variance de l’estimateur BLUE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 Critere de Cramer-Rao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 Estimateur du maximum de vraisemblance (MLE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.5 Comparaison des resultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.6 Estimation de la variance des estimateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Partie dynamique 4
2.1 Reformulation du probleme simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2 Reformulation du probleme complet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3 Modele continu - vitesse positive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4 Estimation des parametres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.5 Variation des parametres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.6 Estimateur de la vitesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.7 Estimateur utilisant trois mesures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.8 Algorithme de Monte Carlo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.9 Distribution a posteriori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.10 Mesure de l’erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Rapport de projet
1 Partie statique
On s’interesse au probleme de la localisation d’un oiseau a partir de mesures bruitees.Dans cette premiere partie
du rapport, on suppose que l’oiseau ne se deplace pas et que sa position est une inconnue deterministe notee r.
On dispose d’un set de N mesures {y1, y2, . . . , yn} independantes a partir des quelles on desire estimer la position
r de l’oiseau. Chaque mesure yi est une variable aleatoire suivant une loi gaussienne dont la moyenne vaut r et la
variance vaut r2σ2. Une particularite de ce modele est que la moyenne et la variance ne sont pas independantes.
La statistique que suivent les mesures est donc exprimee comme suit :
Ty(y) =1
σr√
2πexp−
12 (y−rrσ )2
1.1 Estimateur BLUE
On s’interesse a l’estimateur BLUE (Best Linear Unbiased Estimator) pour estimer la position de l’oiseau. On
cherche donc un estimateur sans biais et qui est le plus efficace(variance la plus faible) dans la categorie des
estimateurs lineaires.
Nous sommes bien dans le cas d’observations lineaires et independantes par rapport au temps, et de plus, les
observations de la position suivent toutes la meme statistique gaussienne.
Le modele des mesures s’ecrit
Y = Hθ + V = θ
puisque nos mesures sont independantes et non entachees de bruit.
On se sert du resultat obtenu dans le syllabus de Processus Stochastiques qui stipule que, dans le cas ou les
observations sont lineaires et gaussiennes (eq. 3.59) :
θBLUE =mθ +
σ2θ
σ2vΣNi=1yi
1 +Nσ2θ
σ2v
Sachant que V = 0, on deduit que σ2v = 0 et on reecrit donc la formule precedente comme
θBLUE =
σ2θ
σ2vmθ + ΣNi=1yiσ2θ
σ2v
+N=
ΣNi=1yiN
= y (1)
1.2 Variance de l’estimateur BLUE
Comme les differentes mesures sont independantes, et qu’on en prend la combinaison lineaire qui n’est autre que
la moyenne arithmetique de celles-ci, on peut facilement manipuler la relation suivante :
σ2BLUE = V ar(
1
NΣNi=1yi)
=1
N2V ar(ΣNi=1yi)
=1
N2ΣNi=1V ar(yi)
=r2σ2
N(2)
1 PARTIE STATIQUE Page 1 de 18
1.3 Critere de Cramer-Rao Rapport de projet
1.3 Critere de Cramer-Rao
L’inegalite de Cramer-Rao stipule que la variance minimale d’un estimateur d’un parametre est bornee par la
relation suivante :
E[(θ − θ)(θ − θ)T ] ≥ I−1(θ)
ou I(θ) est la matrice d’information de Fischer. Cela veut dire que, si l’on a trouve un estimateur dont la variance
atteint cette borne, l’estimateur est efficace ; on ne peut donc pas trouver un estimateur de moindre variance.
Commes les N observations sont independantes, la matrice d’informations de Fischer se calcule comme :
I(θ) = −NE[∂2
∂r2lnTyi(yi; r)] (3)
On connait la distribution des observations yi sachant la moyenne r. On peut des lors calculer la borne de Cramer-
Rao en calculant la derivee seconde de cette distribution.
ln(fY ; r) = −ln(√
(2πσr)− (r − y)2
2r2σ2)
∂
∂rln(fY ; r) = −1
r+y2 − yrr3σ2
∂2
∂r2ln(fY ; r) = −1
r+−y3 + yr
r4σ2(4)
En substituant l’equation (4) dans l’equation(3), on obtient :
I(r) = NE[−1
r+−y3 + yr
r4σ2]
= N
{1
r2+
2rE[y]− 3E[y2]
r4σ2
}
=N(2σ2 + 1)
σ2r2(5)
La borne inferieure de Cramer-Rao s’ecrit donc comme :
σ2θ ≥
r2σ2
N(1 + 2σ2)
On constate que cette borne n’est pas atteinte par l’estimateur θBLUE . Pour rappel, bien que BLUE signifie
”meilleur estimateur lineaire a variance minimale”, cela ne signifie pas qu’il soit l’estimateur le plus efficace. Il
faut donc trouver un estimateur qui ne soit pas lineaire par rapport aux donnees. On cherchera donc a comparer
l’estimateur BLUE a un estimateur non-lineaire, ici le MLE.
1.4 Estimateur du maximum de vraisemblance (MLE)
L’estimateur du maximum de vraisemblance rNMLE base sur les N observations yi est la valeur qui maximise la
fonction du maximum de vraisemblance L(y; r). Cette fonction est le produit des fonctions de densite de probabilite
des N mesures, etant donne que celles-ci sont independantes. La fonction de densite de probabilite s’ecrit fyi(yi; r) ∼N (r, r2σ2). Dans notre cas, cette fonction s’exprime comme suit :
L(y; r) =
N∏
i=1
fyi(yi; r)
=
(1
2πσ2r2
)N2
exp
[−
(∑Ni=1(yi − r)2
2σ2r2
)](6)
1 PARTIE STATIQUE Page 2 de 18
1.5 Comparaison des resultats Rapport de projet
Trouver rNMLE qui maximise l’equation precedente est equivalent a trouver rNMLE qui maximise le logarithme de cette
expression, puisque la fonction logarithme est strictement croissante et monotone. On cherche donc a maximiser
L(y; r) = log (L(y; r)) = −N2
log(2πσ2r2)−∑Ni=1(yi − r)2
2σ2r2(7)
Notre estimateur rNMLE est la valeur de r pour laquelle la derivee partielle par rapport a r de la fonction L(y; r)
s’annule. On obtient :
∂L(y; r)
∂r= −N
r+−r∑Ni=1 yi +
∑Ni=1 y
2i
σ2r3= 0
= −Nσ2r2 − r∑
yi +
N∑
i=1
y2i = 0 (8)
On obtient une equation du second degre en r dont le determinant vaut
∆ =
(N∑
i=1
yi
)2
+ 4Nσ2N∑
i=1
y2i ≥ 0 (9)
∆ est une quantite toujours positive, on obtient donc deux valeurs reelles pour rNMLE :
rNMLE,1,2 =−∑Ni=1 yi ±
√(∑Ni=1 yi
)2+ 4Nσ2
∑Ni=1(y2i )
2Nσ2(10)
Pour savoir quelle valeur retenir, il faut evaluer les deux candidats dans l’equation 7 et prendre celui qui donne la
valeur maximum.
1.5 Comparaison des resultats
L’estimateur du maximum de vraisemblance possede de bonnes proprietes asymptotiques.
– rNMLE converge en probabilite vers r,
– rNMLE est asymptotiquement normal et efficace. Sa variance converge vers la borne de Cramer-Rao (qui a ete
calculee precedemment).
On peut comparer les resultats obtenus pour l’estimation de r en utilisant l’estimateur BLUE et celui du maximum
de vraisemblance. Pour cela, on a genere un ensemble de N = 200 valeurs aleatoires normalement distribuees avec
une moyenne r = 100 et σ = 0.1. La figure 1.5 montre l’estimation de r dans le cas des deux estimateurs utilises,
ainsi que la vraie valeur de r (100 dans ce cas ci) pour m mesures (1 ≤ m ≤ N).
1.6 Estimation de la variance des estimateurs
Pour l’estimateur BLUE, on a montre que la variance vaut
σ2BLUE =
r2σ2
N(11)
Pour le maximum de vraisemblance, rNMLE , on sait qu’il respecte la condition
limN→∞
σ2MLE =
r2σ2
N(1 + 2σ2)(12)
Nous avons calcule numeriquement la variance de nos estimateurs pour differentes valeurs de N . Pour chacune de
ces valeurs, 1000 estimations de la position ont ete calculees. On a des lors calcule la variance de ces 1000 mesures
1 PARTIE STATIQUE Page 3 de 18
Rapport de projet
0 50 100 150 20098
100
102
104
106
108
110
112Comparison between BLUE and Maximum Likelihood estimators
Number of samples
r
BLUEMLETrue Value of r
Figure 1 – Comparaison entre l’estimation de la position avec deux estimateurs differents.
grace a la fonction var de Matlab.
La figure 2 illustre la variance theorique et experimentale pour les deux estimateurs utilises. On observe que la
variance du MLE converge vers la borne de Cramer-Rao. La variance de l’estimateur BLUE converge egalement
vers l’expression theorique de la variance. Finalement, pour les valeurs r = 100 et σ = 0.1, la variance du MLE est
legerement inferieure a celle de l’estimateur BLUE. On peut le voir sur la partie gauche de la figure 2 ou un zoom
a ete effectue afin de mieux observer les differentes courbes.
2 Partie dynamique
Dans la seconde partie du probleme, l’oiseau se deplace en ligne droite. On note sa position au temps t par rt. Le
modele discret propose pour evaluer sa vitesse et sa position est enonce comme suit :
vt+1 = vt − αv2t + β (1 + sin(γt)) + ut (13)
ut ∼ N (0, v2t σ2v)∀t (14)
rt+1 = rt + vt (15)
yt ∼ N (rt, r2t σ
2y)∀t (16)
Comme dans le cas statique, r est la position de l’oiseau, v est sa vitesse et y sont les mesures disponibles de sa
position.
2.1 Reformulation du probleme simple
On considere le cas d’une marche aleatoire simple, ou
vt+1 = vt + ut
2 PARTIE DYNAMIQUE Page 4 de 18
2.1 Reformulation du probleme simple Rapport de projet
0 20 40 60 80 100 120 140 160 180 20010
−1
100
101
102
103
Variance of the BLUE and MLE, in function of the N
Var
ianc
e of
the
estim
ator
Number of samples
S2BLUES2MLEσ2BLUE
Cramer-Rao Lower Bound
155 160 165 170 175
10−0.4
10−0.3
10−0.2
Variance of the BLUE and MLE, in function of the N
Var
ianc
e of
the
estim
ator
Number of samples
S2BLUES2MLEσ2BLUE
Cramer-Rao Lower Bound
Figure 2 – Variance des deux estimateurs en fonction du nombre d’observations. La figure du bas est un zoom de
la figure du haut.
2 PARTIE DYNAMIQUE Page 5 de 18
2.2 Reformulation du probleme complet Rapport de projet
avec
ut ∼ N (0, σ2v)∀t
Si on raffine le pas de temps δ, on se doit d’affiner le modele, afin de preserver certaines proprietes de la marche
aleatoire. En particulier, on aimerait que la variance de vt+1(δ) soit la meme quel que soit la valeur de δ. Pour ce
faire, on modifie notre modele comme :
vt+1(δ) = vt +√δut (17)
on peut constater, en prenant par exemple δ = 0.5, que
vt+0.5(δ = 0.5) = vt +√
0.5ut
vt+1(δ = 0.5) = vt +√
0.5ut +√
0.5ut+0.5
= vt +√
0.5(ut + ut+0.5)
Et donc, en toute generalite :
vt+1(δ) = vt +√δΣ
1δ−1i=0 uiδ+t (18)
Il est interessant de noter que les uiδ+t sont independants. La distribution de vt+1 sera aussi normale, et on peut
calculer sa moyenne et sa variance :
E[vt+1(δ)] = E[vt +√δΣ
1δ−1i=0 uiδ+t]
= vt (19)
Le calcul de la variance se presente comme suit :
V ar[vt+1(δ)] = V ar[vt +√δΣ
1δ−1i=0 uiδ+t]
= δV ar[Σ1δ−1i=0 uiδ+t]
= δ1
δV ar[ut]
= V ar[ut] (20)
Dans notre cas, la distribution de la variable aleatoire vt+1 avec un pas de temps δ est donc donnee par :
vt+1(δ) ∼ N (vt, σ2v) (21)
On constate donc que si on souhaite predire la vitesse de l’oiseau avec plus de points, la variance de la vitesse
estimee reste la meme, ce qui est une propriete remarquable.
2.2 Reformulation du probleme complet
On etend desormais notre raisonnement au probleme complet. Celui-ci a ete modifie de sorte qu’on obtienne le
meme resultat en t+ 1, quel que soit le pas de temps choisi.
vt+iδ = vt − αiδv2t + iδβ(1 + sin(γt)) +√δΣi−1j=0ut+jδ (22)
rt+δ = rt + δvt (23)
yt+δ ∼ N (rt+δ, r2t+δσ
2y) ∼ N (rt + δvt, (rt + δvt)
2σ2y) (24)
On particularise de nouveau au cas δ = 0.5 :
vt+0.5(δ = 0.5) = vt − α0.5v2t + 0.5β(1 + sin(γt)) +√
0.5ut
vt+1(δ = 0.5) = vt − αv2t + β(1 + sin(γt)) +√
0.5(ut + ut+0.5)
2 PARTIE DYNAMIQUE Page 6 de 18
2.3 Modele continu - vitesse positive Rapport de projet
Le calcul de la distribution resultante est tres simple, puisque la seule quantite non deterministe est le bruit ut. De
plus, les ut+iδ ont tous la meme distribution, mais sont independants.
E[vt+1(δ = 0.5)] = E[vt+0.5(δ = 1)] = vt − αv2t + β(1 + sin(γt)) (25)
V ar[vt+1(δ = 0.5)] = V ar[√
0.5(ut + ut+0.5)] = 0.5(V ar[ut] + V ar[ut+0.5])
= V ar[ut] = r2t σ2v
= V ar[vt+1(δ = 1)] (26)
Les vitesses au temps t+ 1 ont donc la meme distribution quel que soit le pas de temps choisi. Cela est du au fait
qu’on a considere que les valeurs de vt et rt restent fixees pour tout le calcul des points intermediaires entre t et
t+ 1.
2.3 Modele continu - vitesse positive
On s’interesse au systeme au temps continu, c’est-a-dire avec un pas de temps infiniment petit. On cherche a
montrer qu’en l’absence de bruit et avec une vitesse initiale positive, la vitesse sera toujours positive ou nulle.
L’equation 22 peut etre reecrite :vt+δ − vt
δ= −αv2t + β(1 + sin(γt)) (27)
Cette equation fait apparaitre la derivee de la vitesse a gauche. On remarque que la partie β(1+sin(γt)) est bornee
entre β ∗ [0; 2] et vaut donc 0 dans le pire cas. L’acceleration en pire cas est donc negative. De prime abord, on
pourrait croire que cela va a l’encontre de ce que l’on veut prouver. Cependant, si on etudie le comportement de
cette fonction en vt = 0, on obtient :vt+δδ
= β(1 + sin(γt)) (28)
En 0, l’acceleration est toujours positive ou nulle ! Donc, on est assure que la fonction sera toujours positive. Ceci
n’est valable que si le modele est en temps continu. Dans le cas contraire, on n’est pas sur que l’equation discrete
sera evaluee en 0, et on pourrait sauter cette barriere dans le cas de conditions initiales particulieres (vitesse initiale
tres elevee, grand α, ...).
2.4 Estimation des parametres
Grace a l’expression discretisee du probleme, des simulations ont ete realisees afin de connaıtre la vitesse et la
position de l’oiseau du temps t = 0 . . . t = 1000 avec un pas de temps δ = 1. Voici les valeurs des differents
parametres du modele que nous avons utilises pour nos simulations :
α 0.1
β 0.2
γ 0.2
σv 0.1
r0 100
v0 0
σy 0.1
2 PARTIE DYNAMIQUE Page 7 de 18
2.4 Estimation des parametres Rapport de projet
Figure 3 – Estimation de la vitesse au cours du temps.
Estimation de la vitesse
Nous avons realise les simulations grace a Matlab. Connaissant la vitesse initiale v0 au temps t = 0, on peut
calculer la vitesse au temps t + 1 et ainsi de suite. Comme le montre le modele de l’equation de la vitesse, vt+1
depend de vt et d’une valeur aleatoire ut. Celle-ci est creee grace a la fonction normrnd qui genere une valeur
gaussienne aleatoire de moyenne nulle et de variance v2t σ2t .
La figure 3 montre les resultats obtenus. On observe que la vitesse est bien nulle au temps t = 0 et qu’elle a l’allure
d’un sinus (ceci etant bien evidemment du au terme β (1 + sin(γt))). Cette vitesse oscille donc autour d’une valeur
moyenne, egalement representee sur la figure 3.
Estimation de la position
Connaissant l’estimation de la vitesse, on peut en deduire l’estimation de la position r. Pour rappel, celle-ci varie
lineairement avec la vitesse selon la relation rt+1 = rt+vt. La position initiale r0 etant connue, on peut determiner
la position de l’oiseau jusqu’au au temps t = 1000. Les resultats sont illustres a la figure 4. Nous avons represente
sur la meme figure les mesures de la position. La mesure de la position au temps t est une valeur aleatoire qui suit
une loi normale de moyenne rt et de variance r2t σ2y. Ces valeurs ont ete generees comme precedemment grace a la
fonction normrnd.
On observe que les mesures sont de plus en plus bruitee en fonction du temps. Cela concorde avec le modele. En
effet, plus le temps avance et plus l’oiseau s’eloigne (r augmente). Or, la variance des mesures est proportionnelle
a r2. C’est pourquoi pour des temps t grands, les mesures varient fortement autour de la position estimee.
2 PARTIE DYNAMIQUE Page 8 de 18
2.5 Variation des parametres Rapport de projet
Figure 4 – Estimation de la position au cours du temps.
2.5 Variation des parametres
On a pu faire varier les parametres α, β et σv et calculer l’estimee de la vitesse v = 1500Σ1000
i=501vi afin de voir l’effet
de ces parametres sur la vitesse moyenne de l’oiseau (figure 2.5).
α (en noir sur le graphe) correspond a un coefficient de frottement dans le modele. Il est logique d’observer
qu’augmenter α va reduire fortement la vitesse que peut prendre l’oiseau au cours du temps. Pour un frottement
tres petit, le modele devient divergent et donne lieu a des vitesses finales tres elevees (non representees sur le
graphe).
β (en bleu) est un coefficient qui dose la variation sinusoidale de la vitesse. L’augmenter ne fait qu’augmenter quasi
lineairement la vitesse (quand la composante sinusoidale est dominante, l’augmentation lineaire du coefficient mene
logiquement a une augmentation lineaire de la vitesse moyenne).
σv (en rouge) correspond au coefficient d’ecart-type du bruit du modele de la vitesse de l’oiseau. Nous n’avons pas
pu le faire varier sur le meme intervalle que les deux autres parametres, car des valeurs elevees font diverger tres
fort le modele. En effet, la variance totale du bruit en vt+1 est donnee par v2t σ2v . Si on augmente l’ecart-type, et donc
la divergence a chaque pas de temps, on repercute cette variation sur ce meme ecart-type au temps suivant. Cela
mene a des comportements fort divergents si ce bruit devient d’amplitude similaire a celle des autres composantes
2 PARTIE DYNAMIQUE Page 9 de 18
2.6 Estimateur de la vitesse Rapport de projet
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20
0.5
1
1.5
2
2.5
3
3.5
4
4.5
Values for alpha and beta parameters
Estimated speed for alpha (black) and beta (blue) [m/s]
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35
1.26
1.28
1.3
1.32
1.34
1.36
1.38
Noise variance
Estimated speed for noise variance [m/s]
estimate of the average speed when α,β and σv vary
de la vitesse.
2.6 Estimateur de la vitesse
On s’interesse desormais a l’estimateur de la vitesse suivant, quand par ailleurs σv = 0 :
vt =yt+δ − yt
δ(29)
Les distributions des mesures sont connues :
yt ∼ N (rt, r2t σ
2y) (30)
yt+δ ∼ N (rt + δvt, (rt + δvt)2σ2y) (31)
De plus, les observations, et donc yt et yt+δ sont independants.
Biais
E[vt − vt] =1
δ(E[yt+δ]− E[yt])− vt
=1
δ(rt + δvt − rt)− vt
= 0
L’estimateur de la vitesse est donc non biaise.
Variance
V ar(yt+δ − yt
δ) =
1
δ2(V ar(yt+δ) + V ar(yt))
=σ2y
δ2(2r2t + 2δvtrt + δ2v2t ) (32)
2 PARTIE DYNAMIQUE Page 10 de 18
2.7 Estimateur utilisant trois mesures Rapport de projet
2.7 Estimateur utilisant trois mesures
On s’interesse maintenant a la construction d’un estimateur utilisant les mesures en amont yt,yt+δ et yt+2δ. Une
condition minimum est d’avoir un biais nul. Par ailleurs, on aimerait avoir une variance efficace par rapport a
l’estimateur n’utilisant que deux mesures. Le probleme est qu’on utilise des mesures bruitees, et la variance de
la combinaison lineaire de ces mesures est proportionnelle au carre des poids des mesures. Par contre, avec les
parametres proposes ( α = 0, β = 1, γ = 1, σv = 0) , le modele de la vitesse est devenu deterministe et vaut
vt+δ = vt + δ(sin(t) + 1) (33)
L’idee est de choisir des poids menant a une variance faible, mais laissant un biais connu et donc deterministe. On
peut ensuite le soustraire du premier estimateur,cela n’influera pas la variance.
Le modele lineaire s’ecrit :
vt = Ayt+2δ +Byt+δ + Cyt +D (34)
Les distributions des variables (independantes) sont :
yt ∼ N (rt, r2t σ
2y) (35)
yt+δ ∼ N (rt + δvt, (rt + δvt)2σ2y) (36)
yt+2δ ∼ N (rt + δvt+1, (rt + δvt+1)2σ2y)
∼ N (rt + δ(vt + δ(sin(t) + 1), (rt + δ(vt + δ(sin(t) + 1))2σ2y) (37)
On exprime le biais et on en tire un systeme d’equations, pour annuler chaque variable :
E[vt]− vt = A(rt + δ(vt + δ(1 + sin(t)))) +B(rt + δvt) + Crt +D − vt = 0 (38)
A+B + C = 0
Aδ +Bδ = 1
A = B = 12δ
D = −Aδ2(1 + sin(t))
La troisieme equation vient du fait qu’on veut minimiser la variance, et que celle ci depend de A2 et de B2. Comme
la somme de A et B doit valoir 1, on choisit donc 12 comme valeur. La derniere permet d’annuler le biais cree par
le terme en δ2. La derniere inconnue est deduite directement : C = − 1δ . On peut des lors aisement verifier que le
biais est nul.
Notre estimateur vaut en definitive :
vt =yt+2δ + yt+δ − 2yt
2δ− δ(1 + sin(t))
2(39)
Le calcul de la variance de cet estimateur donne des resultats plutot interessants :
V ar[vt] =1
4δ2(V ar[yt+2δ + V ar[yt+δ] + 4V ar[yt])
=σ2y
4δ2
([rt + δ
((vt + δ(sin(t) + 1)
)]2 + (rt + δvt)
2 + r2t
)
=σ2y
4δ2(3r2t + 4δrtvt + 2δ2v2t + 2δ2rt sin(t) + 2δ2rt + 2δ3vt sin(t) + 2δ3vt + 2δ4 sin(t) + δ4 + δ4 sin2(t))
Pour y voir un peu plus clair, si on considere un pas de temps δ petit, on peut clairement negliger les termes enδ4
δ2 , et les termes en δ3
δ2 seront petits. Cela donne :
V ar[vt] =σ2y
δ2(3
4r2t + δrtvt +
1
2δ2v2t +
1
2δ2rt sin(t) +
1
2δ2rt +
1
2δ3vt sin(t) +
1
2δ3vt)
La variance de cet estimateur est a peu pres deux fois moindre que celle de l’estimateur de la question precedente
(equation 32), a laquelle on additionne notamment des termes en sinus.
2 PARTIE DYNAMIQUE Page 11 de 18
2.8 Algorithme de Monte Carlo Rapport de projet
2.8 Algorithme de Monte Carlo
Nous avons implemente un algorithme de Monte Carlo pour obtenir une estimation sur la position et la vitesse de
l’oiseau, en se basant sur les mesures observees.
Dans un premier temps, on ecrit les equations du systeme dynamique :
vt+1 = vt − αv2t + β (1 + sin(γt)) + ut
rt+1 = rt + vt
yt ' N (rt, r2t σ
2r)
avec
ut = N (0, v2t σ2v)
On peut des lors creer les differents sets de resultats vt, rt et yt.
On peut ensuite appliquer l’algorithme de Monte Carlo a proprement parler. Pour chaque temps t ∈ [0; 1000], on
genere n = 1000 particules.
Generation des echantillons : premierement, on genere n = 1000 echantillons au temps t = 0. Ces echantillons
sont generes comme suit :
vi0 = 0
ri0 = 100
Ceci correspond a la condition initiale du systeme dynamique. Comme le bruit au temps t = 0 a une variance qui
depend de la vitesse initiale (ici, vt−1 = 0), la variable vi0 est deterministe et nulle pour tout n. Il est est de meme
pour ri0 qui vaut dans ce cas la position initiale de l’oiseau, c’est a dire ri0 = 100.
Prediction : a chaque pas de temps t, on genere n = 1000 echantillons du type
{vit+1 = f(vt+1 | xit)rit+1 = g(rt+1 | rit)
avec
f(vt) = vt − αv2t + β (1 + sin(γt)) + ut
et
g(rt) = rt + vt
Ces echantillons constituent le set de prediction de notre estimateur.
Mise a jour : connaissant notre set de prediction, on effectue une mise a jour permettant d’obtenir la valeur
de notre estimateur pour un temps t. Il s’agit dans un premier temps de calculer une serie de poids. Ces poids
sont calcules a partir de la fonction de densite de probabilite de y. Ceci est implemente comme suit en utilisant
Matlab :
out_noise_pdf = @(w,r) 1/sqrt((2*pi)^d_x*abs(det(sr*r))) * exp(-.5*(w-r)’*inv(sr*r)*(w-r));
...
weights = zeros(1,n);
for i=1:n
weights(i) = out_noise_pdf(y,Rtilde{i,t+1 +1});
end
2 PARTIE DYNAMIQUE Page 12 de 18
2.8 Algorithme de Monte Carlo Rapport de projet
Ces poids sont ensuite utilises pour re-echantillonner les n particules generes precedemment. Ce re-echantillonnage
est effectue grace a la fonction randsample. Ceci est implemente comme suit :
ind_sample = randsample(n,n,true,weights);
for i=1:n
V{i,t+1 +1} = Vtilde{ind_sample(i),t+1 +1};
R{i,t+1 +1} = Rtilde{ind_sample(i),t+1 +1};
end
On possede des 1000 valeurs pour V{i,t+1 +1} et R{i,t+1 +1}. Notre estimation pour t = t + 1 sera calcule en
prenant la moyenne de ces 1000 valeurs.
Resultats : nous pouvons maintenant observer les estimations de la vitesse et de la position de l’oiseau generees
par l’algorithme de Monte Carlo. Nous avons generes deux sets de resultats. Dans les deux cas, on observe que l’esti-
mation de la position et de la vitesse correspond bien aux valeurs reelles de ces parametres (egalement representees
sur les figures des resultats).
2 PARTIE DYNAMIQUE Page 13 de 18
2.9 Distribution a posteriori Rapport de projet
0 100 200 300 400 500 600 700 800 900 10000
0.5
1
1.5
2
2.5
3
time [s]
Spe
ed [m
/s]
Monte Carlo estimation of the bird speed using a particle filter
Real speedEstimated speed
Figure 5 – Estimation de la vitesse pour le premier set de donnees.
2.9 Distribution a posteriori
On s’interesse ici a connaıtre la distribution des particules generees pour chaque pas de temps par l’algorithme
de Monte Carlo. Le nombre de particules generees par pas de temps t vaut 1000 dans le fichier de simulation. La
figure 2.9 represente l’histogramme des particules generees pour differents temps, et ce pour deux sets de donnees
differents. La position reelle de l’oiseau pour les 4 temps envisages est egalement representee sur les histogrammes.
On remarque que la position reelle et la moyenne de la distribution des particules generees ne correspondent pas.
N’oublions pas que l’on a calcule ici un estimateur pour la vitesse et la position. Bien que ces estimateurs donnent
de bons resultats, il y a une erreur entre la position estimee et la position reelle de l’oiseau. Cette erreur est illustree
dans la section suivante.
2.10 Mesure de l’erreur
Sur base de l’estimation de la position de l’oiseau obtenue grace a l’algorithme de Monte Carlo, on peut calculer
l’erreur de l’estimateur a chaque pas de temps (voir figure 2.10.
On peut tout d’abord observer que l’erreur sur la position reste inferieure a 3% pour tout t ∈ [0; 1000], et ce pour
les deux sets de donnees generes. La valeur moyenne de l’erreur pour ce set de donnees vaut 1%. L’algorithme nous
fournit donc une estimation precise de la position quelque soit le moment de l’observation.
2 PARTIE DYNAMIQUE Page 14 de 18
2.10 Mesure de l’erreur Rapport de projet
0 100 200 300 400 500 600 700 800 900 10000
200
400
600
800
1000
1200
1400
1600
1800
time [s]
Pos
ition
[m]
Monte Carlo estimation of the bird position using a particle filter
Measured positionReal positionEstimated position
Figure 6 – Estimation de la position pour le premier set de donnees.
0 100 200 300 400 500 600 700 800 900 10000
0.5
1
1.5
2
2.5
3
time [s]
Spe
ed [m
/s]
Monte Carlo estimation of the bird speed using a particle filter
Real speedEstimated speed
Figure 7 – Estimation de la vitesse pour le second set de donnees.
2 PARTIE DYNAMIQUE Page 15 de 18
2.10 Mesure de l’erreur Rapport de projet
0 100 200 300 400 500 600 700 800 900 10000
200
400
600
800
1000
1200
1400
1600
1800
time [s]
Pos
ition
[m]
Monte Carlo estimation of the bird position using a particle filter
Measured positionReal positionEstimated position
Figure 8 – Estimation de la position pour le second set de donnees.
2 PARTIE DYNAMIQUE Page 16 de 18
2.10 Mesure de l’erreur Rapport de projet
90 95 100 105 1100
100
200
300
400
500
600
700
800
900
1000t=1
Num
ber
of p
artic
les
Position [m]362 363 364 3650
50
100
150
200
250
300t=200
Num
ber
of p
artic
les
Position [m]750 760 770 7800
50
100
150
200
250
300t=500
Num
ber
of p
artic
les
Position [m]1425 1430 1435 1440 14450
50
100
150
200
250
300t=1000
Num
ber
of p
artic
les
Position [m]
90 95 100 105 1100
100
200
300
400
500
600
700
800
900
1000t=1
Num
ber
of p
artic
les
Position [m]354 356 358 360 3620
50
100
150
200
250
300t=200
Num
ber
of p
artic
les
Position [m]768 769 770 771 772 7730
50
100
150
200
250
300t=500
Num
ber
of p
artic
les
Position [m]1440 1450 1460 1470 14800
50
100
150
200
250
300t=1000
Num
ber
of p
artic
les
Position [m]
Figure 9 – Distribution des particules generees par l’algorithme de Monte Carlo pour differents temps et pour
deux sets de donnees.
2 PARTIE DYNAMIQUE Page 17 de 18
2.10 Mesure de l’erreur Rapport de projet
0 100 200 300 400 500 600 700 800 900 10000
0.5
1
1.5
2
2.5
3Error of the position in function of time
Time [s]
Rel
ativ
e er
ror
of th
e po
sitio
n [%
]
ErrorAverage error
0 100 200 300 400 500 600 700 800 900 10000
1
2
3
4
5
6Error of the position in function of time
Time [s]
Rel
ativ
e er
ror
of th
e po
sitio
n [%
]
ErrorAverage error
Figure 10 – Erreur de l’estimateur a chaque pas de temps, pour deux sets de donnees differents.
2 PARTIE DYNAMIQUE Page 18 de 18