Vous êtes sur la page 1sur 20

Ecole

Polytechnique de Louvain
Catholique de Louvain
Universite

INMA1731 : Processus stochastiques

Rapport de projet

Auteurs :
Georges-Henri LECLERCQ 3289 10 00
Thomas PAIRON 5459 10 00

Annee academique 2013-2014

Professeurs :
Pierre-Antoine ABSIL
Luc VANDENDORPE
Assistant du projet :
Francois GONZE

Table des mati`


eres
1 Partie statique

1.1

Estimateur BLUE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2

Variance de lestimateur BLUE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.3

Crit`ere de Cramer-Rao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.4

Estimateur du maximum de vraisemblance (MLE) . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.5

Comparaison des resultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.6

Estimation de la variance des estimateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 Partie dynamique

2.1

Reformulation du probl`eme simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2

Reformulation du probl`eme complet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3

Mod`ele continu - vitesse positive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4

Estimation des param`etres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.5

Variation des param`etres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

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 lerreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Rapport de projet

Partie statique

On sinteresse au probl`eme de la localisation dun oiseau `a partir de mesures bruitees.Dans cette premi`ere partie
du rapport, on suppose que loiseau ne se deplace pas et que sa position est une inconnue deterministe notee r.
On dispose dun set de N mesures {y1 , y2 , . . . , yn } independantes `a partir des quelles on desire estimer la position
r de loiseau. 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 mod`ele 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.1

r 2

exp 2 (

yr 2
r )

Estimateur BLUE

On sinteresse `
a lestimateur BLUE (Best Linear Unbiased Estimator) pour estimer la position de loiseau. 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 dobservations lineaires et independantes par rapport au temps, et de plus, les
observations de la position suivent toutes la meme statistique gaussienne.
Le mod`ele des mesures secrit
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 o`
u les
observations sont lineaires et gaussiennes (eq. 3.59) :

\
BLU E =

2 N
v2 i=1 yi
2
+ N 2
v

m +
1

Sachant que V = 0, on deduit que v2 = 0 et on reecrit donc la formule precedente comme


\
BLU E =

1.2

2
N
v2 m + i=1 yi
2

v2 + N

N
i=1 yi
= y
N

(1)

Variance de lestimateur BLUE

Comme les differentes mesures sont independantes, et quon en prend la combinaison lineaire qui nest autre que
la moyenne arithmetique de celles-ci, on peut facilement manipuler la relation suivante :
2
\
BLU E

=
=
=
=

PARTIE STATIQUE

V ar(

1 N
yi )
N i=1

1
V ar(N
i=1 yi )
N2
1 N
V ar(yi )
N 2 i=1
r2 2
N

(2)

Page 1 de 18

1.3

Crit`ere de Cramer-Rao

1.3

Rapport de projet

Crit`
ere de Cram
er-Rao

Linegalite de Cramer-Rao stipule que la variance minimale dun estimateur dun param`etre est bornee par la
relation suivante :
E[( )( )T ] I 1 ()
o`
u I() est la matrice dinformation de Fischer. Cela veut dire que, si lon a trouve un estimateur dont la variance
atteint cette borne, lestimateur est efficace ; on ne peut donc pas trouver un estimateur de moindre variance.
Commes les N observations sont independantes, la matrice dinformations de Fischer se calcule comme :
=

I()

N E[

2
lnTyi (yi ; r)]
r2

(3)

On connait la distribution des observations yi sachant la moyenne r. On peut d`es lors calculer la borne de CramerRao en calculant la derivee seconde de cette distribution.
p
(r y)2
)
= ln( (2r)
2r2 2

1 y 2 yr
ln(fY ; r) = + 3 2
r
r
r
2
1 y 3 + yr
ln(fY ; r) = +
r2
r
r4 2
ln(fY ; r)

(4)

En substituant lequation (4) dans lequation(3), on obtient :


I(r)

=
=
=

1 y 3 + yr
N E[ +
]
r4 2
 r

2rE[y] 3E[y 2 ]
1
N 2+
r
r4 2
2
N (2 + 1)
2 r2

(5)

La borne inferieure de Cram`er-Rao secrit donc comme :


c2

r2 2
N (1 + 2 2 )

On constate que cette borne nest pas atteinte par lestimateur \


BLU E . Pour rappel, bien que BLUE signifie
meilleur estimateur lineaire `
a variance minimale, cela ne signifie pas quil soit lestimateur le plus efficace. Il
faut donc trouver un estimateur qui ne soit pas lineaire par rapport aux donnees. On cherchera donc `a comparer
lestimateur BLUE `
a un estimateur non-lineaire, ici le MLE.

1.4

Estimateur du maximum de vraisemblance (MLE)

N
Lestimateur du maximum de vraisemblance rM
e sur les N observations yi est la valeur qui maximise la
LE bas

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 secrit fyi (yi ; r)
N (r, r2 2 ). Dans notre cas, cette fonction sexprime comme suit :
L(y; r)

N
Y

fyi (yi ; r)

i=1

=
1

PARTIE STATIQUE

1
2 2 r2

 N2

"

exp

PN

2
i=1 (yi r)
2 2 r2

!#

(6)
Page 2 de 18

1.5

Comparaison des resultats

Rapport de projet

N
N
Trouver rM
equation precedente est equivalent `a trouver rM
LE qui maximise l
LE qui maximise le logarithme de cette

expression, puisque la fonction logarithme est strictement croissante et monotone. On cherche donc `a maximiser
PN
(yi r)2
N
2 2
L(y; r) = log (L(y; r)) = log(2 r ) i=1 2 2
(7)
2
2 r
N
Notre estimateur rM
erivee partielle par rapport `a r de la fonction L(y; r)
LE est la valeur de r pour laquelle la d

sannule. On obtient :
L(y; r)
r

r
N
+
r

PN

N 2 r2 r

i=1

PN

yi +
2 r3
yi +

i=1

N
X

yi2

=0

yi2 = 0

(8)

i=1

On obtient une equation du second degre en r dont le determinant vaut

N
X

yi

i=1

!2

+ 4N 2

N
X

yi2 0

(9)

i=1

N
est une quantite toujours positive, on obtient donc deux valeurs reelles pour rM
LE :
r
2
PN
PN
PN
+ 4N 2 i=1 (yi2 )
i=1 yi
i=1 yi
N
rM LE,1,2 =
2N 2

(10)

Pour savoir quelle valeur retenir, il faut evaluer les deux candidats dans lequation 7 et prendre celui qui donne la
valeur maximum.

1.5

Comparaison des r
esultats

Lestimateur du maximum de vraisemblance poss`ede de bonnes proprietes asymptotiques.


N
e vers r,
rM
LE converge en probabilit
N
ete
rM
LE est asymptotiquement normal et efficace. Sa variance converge vers la borne de Cramer-Rao (qui a

calculee precedemment).
On peut comparer les resultats obtenus pour lestimation de r en utilisant lestimateur 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 lestimation 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 lestimateur BLUE, on a montre que la variance vaut


2
BLU
E

r2 2
N

(11)

N
Pour le maximum de vraisemblance, rM
LE , on sait quil respecte la condition
2
lim M
LE

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 d`es lors calcule la variance de ces 1000 mesures
1

PARTIE STATIQUE

Page 3 de 18

Rapport de projet
Comparison between BLUE and Maximum Likelihood estimators
112
BLUE
MLE
True Value of r

110

108

106

104

102

100

98

50

100
Number of samples

150

200

Figure 1 Comparaison entre lestimation de la position avec deux estimateurs differents.


gr
ace `
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 lestimateur BLUE converge egalement
vers lexpression theorique de la variance. Finalement, pour les valeurs r = 100 et = 0.1, la variance du MLE est
leg`erement inferieure `
a celle de lestimateur BLUE. On peut le voir sur la partie gauche de la figure 2 o`
u un zoom
a ete effectue afin de mieux observer les differentes courbes.

Partie dynamique

Dans la seconde partie du probl`eme, loiseau se deplace en ligne droite. On note sa position au temps t par rt . Le
mod`ele discret propose pour evaluer sa vitesse et sa position est enonce comme suit :
vt+1
ut
rt+1
yt

= vt vt2 + (1 + sin(t)) + ut

N (0, vt2 v2 ) t

= rt + vt

N (rt , rt2 y2 ) t

(13)
(14)
(15)
(16)

Comme dans le cas statique, r est la position de loiseau, v est sa vitesse et y sont les mesures disponibles de sa
position.

2.1

Reformulation du probl`
eme simple

On consid`ere le cas dune marche aleatoire simple, o`


u
vt+1 = vt + ut
2

PARTIE DYNAMIQUE

Page 4 de 18

2.1

Reformulation du probl`eme simple

Rapport de projet

Variance of the BLUE and MLE, in function of the N

10

2d
SBLUE
2
Sd
MLE

2d
BLUE
Cramer-Rao Lower Bound

Variance of the estimator

10

10

10

10

20

40

60

80

100
Number of samples

120

140

160

180

200

Variance of the BLUE and MLE, in function of the N


2d
SBLUE
2
Sd
MLE

2d
BLUE
Cramer-Rao Lower Bound

0.2

Variance of the estimator

10

0.3

10

0.4

10

155

160

165
Number of samples

170

175

Figure 2 Variance des deux estimateurs en fonction du nombre dobservations. La figure du bas est un zoom de
la figure du haut.

PARTIE DYNAMIQUE

Page 5 de 18

2.2

Reformulation du probl`eme complet

Rapport de projet

avec
ut N (0, v2 )t
Si on raffine le pas de temps , on se doit daffiner le mod`ele, 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 mod`ele comme :
vt+1 () = vt +

ut

(17)

on peut constater, en prenant par exemple = 0.5, que


vt+0.5 ( = 0.5)

vt +

vt+1 ( = 0.5)

vt +

vt +

Et donc, en toute generalite :


vt+1 () = vt +

0.5ut
0.5ut +

0.5ut+0.5

0.5(ut + ut+0.5 )
1

i=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 +
=

i=0
ui+t ]

vt

(19)

Le calcul de la variance se presente comme suit :


V ar[vt+1 ()]

= V ar[vt +
1

=
=
=

i=0
ui+t ]

V ar[i=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 , v2 )

(21)

On constate donc que si on souhaite predire la vitesse de loiseau avec plus de points, la variance de la vitesse
estimee reste la meme, ce qui est une propriete remarquable.

2.2

Reformulation du probl`
eme complet

On etend desormais notre raisonnement au probl`eme complet. Celui-ci a ete modifie de sorte quon obtienne le
meme resultat en t + 1, quel que soit le pas de temps choisi.
vt+i
rt+

= vt ivt2 + i(1 + sin(t)) +

i1
j=0 ut+j

= rt + vt

2
yt+ N (rt+ , rt+
y2 ) N (rt + vt , (rt + vt )2 y2 )

(22)
(23)
(24)

On particularise de nouveau au cas = 0.5 :


vt+0.5 ( = 0.5)
vt+1 ( = 0.5)
2

PARTIE DYNAMIQUE

= vt 0.5vt2 + 0.5(1 + sin(t)) + 0.5ut

= vt vt2 + (1 + sin(t)) + 0.5(ut + ut+0.5 )


Page 6 de 18

2.3

Mod`ele continu - vitesse positive

Rapport de projet

Le calcul de la distribution resultante est tr`es 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 vt2 + (1 + sin(t))

V ar[vt+1 ( = 0.5)] = V ar[ 0.5(ut + ut+0.5 )]

(25)

0.5(V ar[ut ] + V ar[ut+0.5 ])

= V ar[ut ] = rt2 v2
= 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
quon `
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

Mod`
ele continu - vitesse positive

On sinteresse au syst`eme au temps continu, cest-`a-dire avec un pas de temps infiniment petit. On cherche `
a
montrer quen labsence de bruit et avec une vitesse initiale positive, la vitesse sera toujours positive ou nulle.
Lequation 22 peut etre reecrite :
vt+ vt
= vt2 + (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. Lacceleration en pire cas est donc negative. De prime abord, on
pourrait croire que cela va `
a lencontre de ce que lon veut prouver. Cependant, si on etudie le comportement de
cette fonction en vt = 0, on obtient :
vt+
= (1 + sin(t))

(28)

En 0, lacceleration est toujours positive ou nulle ! Donc, on est assure que la fonction sera toujours positive. Ceci
nest valable que si le mod`ele est en temps continu. Dans le cas contraire, on nest pas sur que lequation discr`ete
sera evaluee en 0, et on pourrait sauter cette barri`ere dans le cas de conditions initiales particuli`eres (vitesse initiale
tr`es elevee, grand , ...).

2.4

Estimation des param`


etres

Gr
ace `
a lexpression discretisee du probl`eme, des simulations ont ete realisees afin de connatre la vitesse et la
position de loiseau du temps t = 0 . . . t = 1000 avec un pas de temps = 1. Voici les valeurs des differents
param`etres du mod`ele que nous avons utilises pour nos simulations :

PARTIE DYNAMIQUE

0.1

0.2

0.2

0.1

r0

100

v0

0.1
Page 7 de 18

2.4

Estimation des param`etres

Rapport de projet

Figure 3 Estimation de la vitesse au cours du temps.


Estimation de la vitesse
Nous avons realise les simulations gr
ace `
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 mod`ele de lequation de la vitesse, vt+1
depend de vt et dune valeur aleatoire ut . Celle-ci est creee grace `a la fonction normrnd qui gen`ere une valeur
gaussienne aleatoire de moyenne nulle et de variance vt2 t2 .
La figure 3 montre les resultats obtenus. On observe que la vitesse est bien nulle au temps t = 0 et quelle a lallure
dun sinus (ceci etant bien evidemment d
u au terme (1 + sin(t))). Cette vitesse oscille donc autour dune valeur
moyenne, egalement representee sur la figure 3.

Estimation de la position
Connaissant lestimation de la vitesse, on peut en deduire lestimation 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 loiseau jusquau 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 rt2 y2 . Ces valeurs ont ete generees comme precedemment gr
ace `
a la
fonction normrnd.
On observe que les mesures sont de plus en plus bruitee en fonction du temps. Cela concorde avec le mod`ele. En
effet, plus le temps avance et plus loiseau seloigne (r augmente). Or, la variance des mesures est proportionnelle
a r2 . Cest 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 param`etres

Rapport de projet

Figure 4 Estimation de la position au cours du temps.

2.5

Variation des param`


etres

On a pu faire varier les param`etres , et v et calculer lestimee de la vitesse v =

1
1000
500 i=501 vi

afin de voir leffet

de ces param`etres sur la vitesse moyenne de loiseau (figure 2.5).

(en noir sur le graphe) correspond `


a un coefficient de frottement dans le mod`ele. Il est logique dobserver
quaugmenter va reduire fortement la vitesse que peut prendre loiseau au cours du temps. Pour un frottement
tr`es petit, le mod`ele devient divergent et donne lieu `a des vitesses finales tr`es elevees (non representees sur le
graphe).

(en bleu) est un coefficient qui dose la variation sinusoidale de la vitesse. Laugmenter ne fait quaugmenter quasi
lineairement la vitesse (quand la composante sinusoidale est dominante, laugmentation lineaire du coefficient m`ene
logiquement `
a une augmentation lineaire de la vitesse moyenne).

v (en rouge) correspond au coefficient decart-type du bruit du mod`ele de la vitesse de loiseau. Nous navons pas
pu le faire varier sur le meme intervalle que les deux autres param`etres, car des valeurs elevees font diverger tr`es
fort le mod`ele. En effet, la variance totale du bruit en vt+1 est donnee par vt2 v2 . Si on augmente lecart-type, et donc
la divergence `
a chaque pas de temps, on repercute cette variation sur ce meme ecart-type au temps suivant. Cela
m`ene `
a des comportements fort divergents si ce bruit devient damplitude similaire `a celle des autres composantes
2

PARTIE DYNAMIQUE

Page 9 de 18

Estimateur de la vitesse

Rapport de projet

estimate of the average speed when , and v vary


Noise variance
4.5

0.05

0.1

0.15

0.2

0.25

0.3

0.35
1.38

4
1.36
3.5

1.34

2.5
1.32
2

1.3

1.5

1
1.28
0.5

0.2

0.4

0.6

0.8

1.2

1.4

1.6

1.8

Estimated speed for noise variance [m/s]

Estimated speed for alpha (black) and beta (blue) [m/s]

2.6

1.26

Values for alpha and beta parameters

de la vitesse.

2.6

Estimateur de la vitesse

On sinteresse desormais `
a lestimateur de la vitesse suivant, quand par ailleurs v = 0 :
yt+ yt
vbt =

Les distributions des mesures sont connues :


yt
yt+

N (rt , rt2 y2 )

N (rt + vt , (rt +

(29)

(30)
vt )2 y2 )

(31)

De plus, les observations, et donc yt et yt+ sont independants.


Biais

E[vbt vt ]

=
=
=

1
(E[yt+ ] E[yt ]) vt

1
(rt + vt rt ) vt

Lestimateur de la vitesse est donc non biaise.


Variance

V ar(

yt+ yt
)

=
=

PARTIE DYNAMIQUE

1
(V ar(yt+ ) + V ar(yt ))
2
y2
(2rt2 + 2vt rt + 2 vt2 )
2

(32)
Page 10 de 18

2.7

Estimateur utilisant trois mesures

2.7

Rapport de projet

Estimateur utilisant trois mesures

On sinteresse maintenant `
a la construction dun estimateur utilisant les mesures en amont yt ,yt+ et yt+2 . Une
condition minimum est davoir un biais nul. Par ailleurs, on aimerait avoir une variance efficace par rapport `
a
lestimateur nutilisant que deux mesures. Le probl`eme est quon 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
param`etres proposes ( = 0, = 1, = 1, v = 0) , le mod`ele de la vitesse est devenu deterministe et vaut
vt+ = vt + (sin(t) + 1)

(33)

Lidee 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 ninfluera pas la variance.
Le mod`ele lineaire secrit :
vt = Ayt+2 + Byt+ + Cyt + D

(34)

Les distributions des variables (independantes) sont :


yt
yt+
yt+2

N (rt , rt2 y2 )
N (rt + vt , (rt +

(35)
vt )2 y2 )

(36)

N (rt + vt+1 , (rt + vt+1 )2 y2 )


N (rt + (vt + (sin(t) + 1), (rt + (vt + (sin(t) + 1))2 y2 )

(37)

On exprime le biais et on en tire un syst`eme dequations, pour annuler chaque variable :


E[
vt ] vt = A(rt + (vt + (1 + sin(t)))) + B(rt + vt ) + Crt + D vt = 0

A+B+C =0

A + B = 1

(38)

A = B = 2

D = A 2 (1 + sin(t))

La troisi`eme equation vient du fait quon veut minimiser la variance, et que celle ci depend de A2 et de B 2 . Comme
la somme de A et B doit valoir 1, on choisit donc 12 comme valeur. La derni`ere permet dannuler le biais cree par
le terme en 2 . La derni`ere inconnue est deduite directement : C = 1 . On peut d`es lors aisement verifier que le
biais est nul.
Notre estimateur vaut en definitive :
yt+2 + yt+ 2yt
(1 + sin(t))

(39)
2
2
Le calcul de la variance de cet estimateur donne des resultats plutot interessants :
1
V ar[
vt ] =
(V ar[yt+2 + V ar[yt+ ] + 4V ar[yt ])
4 2

2 
2
y
2
2
[r
+

(v
+
(sin(t)
+
1)
]
+
(r
+
v
)
+
r
=
t
t
t
t
t
4 2
y2
=
(3rt2 + 4rt vt + 2 2 vt2 + 2 2 rt sin(t) + 2 2 rt + 2 3 vt sin(t) + 2 3 vt + 2 4 sin(t) + 4 + 4 sin2 (t))
4 2
Pour y voir un peu plus clair, si on consid`ere un pas de temps petit, on peut clairement negliger les termes en
3
4
2 , et les termes en 2 seront petits. Cela donne :
vt =

y2 3 2
1
1
1
1
1
( r + rt vt + 2 vt2 + 2 rt sin(t) + 2 rt + 3 vt sin(t) + 3 vt )
2 4 t
2
2
2
2
2
La variance de cet estimateur est `
a peu pr`es deux fois moindre que celle de lestimateur de la question precedente
V ar[
vt ] =

(equation 32), `
a laquelle on additionne notamment des termes en sinus.
2

PARTIE DYNAMIQUE

Page 11 de 18

2.8

Algorithme de Monte Carlo

2.8

Rapport de projet

Algorithme de Monte Carlo

Nous avons implemente un algorithme de Monte Carlo pour obtenir une estimation sur la position et la vitesse de
loiseau, en se basant sur les mesures observees.
Dans un premier temps, on ecrit les equations

vt+1 =
rt+1 =

yt '

du syst`eme dynamique :
vt vt2 + (1 + sin(t)) + ut
rt + vt
N (rt , rt2 r2 )

avec

ut = N (0, vt2 v2 )
On peut d`es lors creer les differents sets de resultats vt , rt et yt .
On peut ensuite appliquer lalgorithme de Monte Carlo `a proprement parler. Pour chaque temps t [0; 1000], on
gen`ere n = 1000 particules.
G
en
eration des
echantillons : premi`erement, on gen`ere n = 1000 echantillons au temps t = 0. Ces echantillons
sont generes comme suit :
v0i

r0i

100

Ceci correspond a` la condition initiale du syst`eme dynamique. Comme le bruit au temps t = 0 a une variance qui
depend de la vitesse initiale (ici, vt1 = 0), la variable v0i est deterministe et nulle pour tout n. Il est est de meme
pour r0i qui vaut dans ce cas la position initiale de loiseau, cest `a dire r0i = 100.
Pr
ediction :

a chaque pas de temps t, on gen`ere n = 1000 echantillons du type


`
(
i
vt+1
= f (vt+1 | xit )
i
rt+1

= g(rt+1 | rti )

avec
f (vt ) = vt vt2 + (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 dobtenir la valeur
de notre estimateur pour un temps t. Il sagit 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 gr
ace `
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 poss`ede d`es 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.
R
esultats :

nous pouvons maintenant observer les estimations de la vitesse et de la position de loiseau generees

par lalgorithme de Monte Carlo. Nous avons generes deux sets de resultats. Dans les deux cas, on observe que lestimation de la position et de la vitesse correspond bien aux valeurs reelles de ces param`etres (egalement representees
sur les figures des resultats).

PARTIE DYNAMIQUE

Page 13 de 18

2.9

Distribution `
a posteriori

Rapport de projet
Monte Carlo estimation of the bird speed using a particle filter
3
Real speed
Estimated speed

2.5

Speed [m/s]

1.5

0.5

100

200

300

400

500
time [s]

600

700

800

900

1000

Figure 5 Estimation de la vitesse pour le premier set de donnees.

2.9

Distribution `
a posteriori

On sinteresse ici `
a connatre la distribution des particules generees pour chaque pas de temps par lalgorithme
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 lhistogramme des particules generees pour differents temps, et ce pour deux sets de donnees
differents. La position reelle de loiseau 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.
Noublions pas que lon 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 loiseau. Cette erreur est illustree
dans la section suivante.

2.10

Mesure de lerreur

Sur base de lestimation de la position de loiseau obtenue grace `a lalgorithme de Monte Carlo, on peut calculer
lerreur de lestimateur `
a chaque pas de temps (voir figure 2.10.

On peut tout dabord observer que lerreur 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 lerreur pour ce set de donnees vaut 1%. Lalgorithme nous
fournit donc une estimation precise de la position quelque soit le moment de lobservation.
2

PARTIE DYNAMIQUE

Page 14 de 18

2.10

Mesure de lerreur

Rapport de projet

Monte Carlo estimation of the bird position using a particle filter


1800
Measured position
Real position
Estimated position
1600

1400

Position [m]

1200

1000

800

600

400

200

100

200

300

400

500
time [s]

600

700

800

900

1000

Figure 6 Estimation de la position pour le premier set de donnees.

Monte Carlo estimation of the bird speed using a particle filter


3
Real speed
Estimated speed

2.5

Speed [m/s]

1.5

0.5

100

200

300

400

500
time [s]

600

700

800

900

1000

Figure 7 Estimation de la vitesse pour le second set de donnees.

PARTIE DYNAMIQUE

Page 15 de 18

2.10

Mesure de lerreur

Rapport de projet

Monte Carlo estimation of the bird position using a particle filter


1800
Measured position
Real position
Estimated position

1600

1400

Position [m]

1200

1000

800

600

400

200

100

200

300

400

500
time [s]

600

700

800

900

1000

Figure 8 Estimation de la position pour le second set de donnees.

PARTIE DYNAMIQUE

Page 16 de 18

2.10

Mesure de lerreur

Rapport de projet

t=1

t=200

1000

t=500

t=1000

300

300

300

250

250

250

200

200

200

900

800

500

400

150

Number of particles

600

Number of particles

Number of particles

Number of particles

700

150

150

100

100

100

50

50

50

300

200

100

0
90

95

100

105

0
362

110

363

Position [m]

364

0
750

365

760

Position [m]

t=1

t=200

1000

770

0
1425

780

1430

Position [m]

1435

1440

1445

Position [m]

t=500

t=1000

300

300

300

250

250

250

200

200

200

900

800

500

400

150

Number of particles

600

Number of particles

Number of particles

Number of particles

700

150

150

100

100

100

50

50

50

300

200

100

0
90

95

100

Position [m]

105

110

0
354

356

358

Position [m]

360

362

0
768

769

770

771

Position [m]

772

773

0
1440

1450

1460

1470

1480

Position [m]

Figure 9 Distribution des particules generees par lalgorithme de Monte Carlo pour differents temps et pour
deux sets de donnees.

PARTIE DYNAMIQUE

Page 17 de 18

2.10

Mesure de lerreur

Rapport de projet

Error of the position in function of time


3
Error
Average error

Relative error of the position [%]

2.5

1.5

0.5

100

200

300

400

500
Time [s]

600

700

800

900

1000

Error of the position in function of time


6
Error
Average error

Relative error of the position [%]

100

200

300

400

500
Time [s]

600

700

800

900

1000

Figure 10 Erreur de lestimateur `


a chaque pas de temps, pour deux sets de donnees differents.

PARTIE DYNAMIQUE

Page 18 de 18