sujet

publicité
Sup Galilée
MACS1
6/12/16
Projets numériques-TP6
Simulation d’un vecteur gaussien
1
Méthode Box-Müller
On veut simuler des variables aléatoires indépendantes suivant la loi gaussienne centrée
réduite N (0, 1).
1. Soient R et θ deux variables aléatoires indépendantes. On pose X = R cos(θ) et
Y = R sin(θ). Montrer que si R2 suit une loi exponentielle de paramètre 12 et θ est
x2 +y 2
1 − 2
uniformément répartie sur [0, 2π], alors (X, Y ) a pour densité 2π
e
.
2. Méthode Box-Müller : en déduire
p que si (U1 , U2 ) sont deux
p variables aléatoires indépendantes
de loi uniforme sur [0, 1] alors ( −2 log(U1 ) cos(2πU2 ), −2 log(U1 ) sin(2πU2 )) est un
couple de variables aléatoires indépendantes de loi N (0, 1).
— Ecrire un programme pour simuler deux variables aléatoire gaussiennes N (0, 1) indépendantes
par la méthode de Box-Müller.
2
Méthode polaire
Cette méthode, ne fait pas appel aux fonctions trigonométriques mais elle s’appuie sur
la méthode du rejet.
√
Soit (U, V ) un couple de loi uniforme sur le disque de rayon 1. On pose R := U 2 + V 2
p
p
X := U −2 log(R2 )/R2 , et Y := V −2 log(R2 )/R2 ,
alors (X, Y ) est un couple de variables aléatoires indépendantes de loi N (0, 1).
Remarque En pratique, pour simuler un couple de variables aléatoires de loi uniforme
sur le disque, on utilise la méthode du rejet. Il suffit de considérer un couple (U 0 , V 0 ) de
loi uniforme sur (0, 1]2 puis de mettre en ouevre un algorithme de rejet sur le disque. En
effet soit (Xn )n≥1 une suite de variables aléatoires indépendantes identiquement distribuées
à valeurs dans Rd et D ⊂ Rd , tels que P(X1 ∈ D > 0. On définit
τ1 := inf{i ≥ 1 : Xi ∈ D}
τn+1 := inf{i > τn : Xi ∈ D}
Yn := Xτn , pour toutn ≥ 1.
(Yn )n≥1 est une suite de variables aléatoires indépendantes identiquement distribuées à valeurs dans D de loi
µ(A) = P(X1 ∈ A|X1 ∈ D), pour toutA ∈ D.
— Ecrire un programme pour simuler deux variables aléatoire gaussiennes N (0, 1) indépendantes
par la méthode polaire.
3
Simulation d’un vecteur gaussien
De la simulation de la loi N (0, 1), on déduit celle de la loi normale d’espérance µ et
de variance σ 2 quelconques par une transformation affine. En effet si X suit la loi N (0, 1)
alors µ + σX suit la loi N (µ, σ 2 ). La situation est analogue en dimension d quelconque.
Rappelons qu’un vecteur est dit gausien si toute combinaison linéaire de ses composantes
est une variable aléatoire réelle gaussienne. On montre que la loi d’un vecteur gaussien est
caractérisée par la donnée de son éspérance µ et sa matrice de variance-covariance Σ. C’est
une matrice semi-définie positive, la fonction caractéristique de Nd (µ, Σ) est donnée par
1
ϕNd (µ,Σ) (u) = exp(iu0 µ − u0 Σu)
2
et lorsque la matrice est définie positive, donc inversible, la loi gaussienne multidimensionnelle
admet une densité par rapport à la mesure de Lebesgue
1
1
fNd (µ,Σ) (x) =
exp(− (x − µ)0 Σ−1 (x − µ)),
d/2
1/2
(2π) |Σ|
2
avec |Σ| est le déterminant de Σ.
Pour simuler un vecteur gaussien d’espérance µ ∈ Rd et de matrice de variance-covariance
Σ, il suffit de trouver une matrice A telle que AA0 = Σ, simuler un vecteur aléatoire X =
(X1 , · · · , Xd ) de Rd de loi Nd (0, I), c’est à dire d variables aléatoires réelles de loi N (0, 1),
puis considérer µ + AX. En effet µ + AX suit la loi Nd (µ, Σ).
1 ρ
On veut maintenant simuler un vecteur gaussien centré de matrice de covariance
.
ρ 1
1 p 0
G1
G1
1 0
X
Montrer que si
suit la loi N 0,
alors
=
G2
G
0 1
Y
1 − ρ2
ρ
2
1 ρ
suit la loi N 0,
.
ρ 1
— Ecrire un programme
simuler un vecteur gaussien centré et de matrice de variance
pour
1 ρ
covariance N 0,
.
ρ 1
1 p 0
ρ
1 − ρ2
Remarque La matrice L =
est en fait la décomposition de Cholesky
1 ρ
de M =
(i.e. LLT = M et L triangulaire inférieure). Cette méthode permet
ρ 1
de simuler un vecteur gaussien dès que l’on a calculé la décomposition de Cholesky de sa
matrice de covariance. Sous Matlab la fonction chol permet de calculer la décomposition de
Cholesky d’une matrice symétrique. Cette fonction renvoie LT . Une version de l’algorithme
utilisé pour calculer la décomposition de Cholesky L d’une matrice symétrique positive A
est donné par
pour k = 1..size
faire
q
P
Lk,k = Ak,k − j<k L2k,j
pour i = k + 1..size
P faire
Ai,k − j<k Lk,j Li,j
Li,k =
Lk,k
Exercice
1. Soit


1 1 1
Σ =  1 5 7 .
1 7 11
Appliquer la méthode de Cholesky, trouver la matrice sous-triangulaire A t.q. Σ =
AAT .
2. Soit (X, Y ) ∼ N (µ, Σ), où
µ=
1
2
, et Σ =
4 3
3 4
.
Simuler une suite de vecteurs qui suivent la loi de (X, Y ). Quelle est la distribution
de X + Y ? Comparer la fonction de densité avec l’histogramme de simulation.
Téléchargement