Vous êtes sur la page 1sur 9

Université Paris Dauphine 2018–2019

Département MIDO
Master 1 – Méthodes de Monte Carlo

Examen Final – Janvier 2019


D URÉE 2 H 00 – D OCUMENTS ET C ALCULATRICE N ON AUTORISÉS

Important. Suivant les réglements en vigueur :

1. Les enseignants présents lors de l’épreuve ne peuvent communiquer que sur les fautes d’énoncé potentielles.
Toute autre question durant la composition ne sera pas acceptée.
2. Les étudiants sont tenus de se lever au moment de l’annonce de fin de la composition. En cas de refus, le respon-
sable de l’UE sera fondé à ne pas prendre en compte la copie incriminée.
3. L’identification des copies et intercalaires doit avoir été faite au moment de la remise de chaque copie par les
enseignants et surveillants. Il ne sera pas accordé de délai pour cette raison en fin d’épreuve.

Sauf mentions contraires, toutes les variables aléatoires sont supposées de carré intégrable.

Exercice 1 (Vrai ou Faux – 4 pts). On souhaite calculer


Z
m= h(x) f (x)dx.
R

Dire si les assertions suivantes sont vraies ou fausses en justifiant. Seules les réponses justifiées seront
validées. Il n’y a pas de points négatifs.

1. (1pt) Soient Y1 , . . . , Yn des variables alétoires corrélées ayant toutes pour loi marginale g telle que le
support de f soit inclus dans le support de g . Alors l’estimateur d’échantillonnage préférentiel pour
la loi d’importance g

1 Xn h(Y ) f (Y )
k k
, est un estimateur sans biais de m.
n k=1 g (Yk )

2. (1pt) Soit (X n )n≥1 une suite de variables aléatoires i.i.d. de densité f . On suppose que f est invariante
par une transformation A, i.e., X 1 et A(X 1 ) ont même loi. Alors l’estimateur

1 Xn h(X ) + h ◦ A(X
k k+n )
n k=1 2
P2n ±
est de variance plus faible que l’estimateur de Monte Carlo classique k=1
h(X k ) (2n).

3. (1pt) Si Y1 est une variable aléatoire de densité g et que l’on simule Yi conditionnellement à Yi −1
suivant la densité ν(· | Yi −1 ), i > 1, alors
" #
1 h(Y1 ) f (Y1 ) X n h(Y ) f (Y )
k k
+ −→ m.
n g (Y1 ) k=2 ν(Yk | Yk−1 )
n→+∞

4. (1pt) On suppose que f est la densité de la loi normale N (0 , 1) et on note Φ la fonction de répartition
associée. En partitionnant R en L strates de la forme D ` = Φ−1 (`−1/L ) , Φ−1 (`/L ) , ` = 1, . . . , L, et en
£ £

1
Examen Méthodes de Monte Carlo

prenant la loi normale N (0 , 1) comme variable de stratification, l’estimateur stratifié avec allocation
proportionnel s’écrit

−1 ` − 1 +Ui
1 XL X n/L µ ¶
h ◦Φ où Ui ∼ U ([0 , 1]).
nL `=1 i =1 L

Solution Exercice 1.
1. Vrai. L’espérance de l’estimateur proposé vérifie

1 Xn ·
h(Yk ) f (Yk )
¸ ·
h(Y1 ) f (Y1 )
¸
Eg = Eg (Y1 , . . . , Yn ont la même distribution marginale)
n k=1 g (Yk ) g (Y1 )
h(y) f (y)
Z Z
= g (y)dy = h(y) f (y)dy.
supp(g ) g (y) supp(g )

Finalement, comme supp( f ) ⊂ supp(g ), on a


Z Z
h(y) f (y)dy = h(y) f (y)dy = m.
supp(g ) supp( f )

2. Faux. Soient X 1 , . . . , X 2n des variables aléatoires i.i.d. de densité f . Du fait de l’indépendance


entre X 1 , . . . , X n et A(X n+1 ), . . . , A(X 2n ),
" #
1 Xn h(X ) + h ◦ A(X n
k k+n ) 1 X
Var = Var[h(X k )] + Var[h ◦ A(X k+n )].
n k=1 2 4n k=1

De plus comme f est invariante par A, X 1 , . . . , X n , A(X n+1 ), . . . , A(X 2n ) sont identiquement dis-
tribuées. Donc
" # " #
1 Xn h(X ) + h ◦ A(X 2n
k k+n ) 1 1 X
Var = Var[h(X 1 )] = Var h(X k ) .
n k=1 2 2n 2n k=1

Cet estimateur a la même variance que l’estimateur de Monte Carlo classique pour un échan-
tillon de taille 2n.
3. Faux. On ne dispose pas de suffisamment d’hypothèses pour savoir si le théorème ergodique
s’applique (ex : prendre une masse de dirac pour ν).
Il ne fallait surtout pas utiliser la loi forte des grands nombres.
4. Faux. Soit X une variable aléatoire de loi N (0 , 1). Pour une allocation n 1 , . . . , n L , l’estimateur
stratifié s’écrit
n
L P [X ∈ D ] X̀
`
³ ´
δbn (n 1 , . . . , n L ) = h X i(k) , X i(k) ∼ L (X | X ∈ D ` ).
X
`=1 n` i =1

Pour l’allocation proportionnel, on choisit n ` = n P [X ∈ D ` ] et l’estimateur est alors de la


forme

1 XL nP[X
X∈D ` ] ³ (k) ´
δbn (n 1 , . . . , n L ) = h Xi .
n `=1 i =1

2
Examen Méthodes de Monte Carlo

Exercice 2 (5 pts). On considère X , Y des variables aléatoires réelles de loi jointe f X ,Y (x, y) dont la
loi marginale f X est inconnue. L’objectif est d’obtenir via les méthodes de Monte Carlo, une estimation
de f X (x) pour tout x ∈ R.

1. (1 pt) Soient (X 1 , Y1 ), . . . , (X n , Yn ) une suite de variables indépendantes suivant la loi jointes f X ,Y (x, y)
et w(·) une densité ayant le même support que f X . Montrer que

n f
1 X X ,Y (x, Yk )w(X k )
−→ f X (x).
n k=1 f X ,Y (X k , Yk ) n→+∞

2. (1 pt) Si l’on suppose que les variables aléatoires X et Y sont indépendantes, pour quel choix de w
obtient-on l’estimateur de variance minimale ?

Application. On considère pour loi jointe f X ,Y (x, y), la densité proportionnelle à

x + (y − 2)2
µ ¶
p
h X ,Y (x, y) = sin2 (y) exp − y − 1{x∈[0,2]} 1{ y∈[0,3]} .
2

3. (1 pt) Pour simuler suivant f X ,Y (x, y) par la méthode du rejet, parmi les densités des lois intrumen-
tales suivantes, laquelle choisiriez-vous ? Justifier.

(a) g X ,Y (x, y) densité de E (1/2) ⊗ N (2 , 1). (b) g X ,Y (x, y) densité de U ([0 , 2]) ⊗ U ([0 , 3]).

4. (2 pts) On suppose que l’on dispose d’une fonction f.joint(x,y) qui permet d’évaluer la densité f X ,Y (x, y)
en tout point (x, y). Sans chercher à optimiser, écrire le code R qui permet de simuler suivant f X ,Y (x, y)
et d’estimer la marginale f X (x) pour tout point x ∈ [0 , 2] et pour une fonction w(x) quelconque.

Solution Exercice 2.
1. En appliquant la loi forte des grands nombres, on obtient

n f
X ,Y (x, Yk )w(X k ) f X ,Y (x, Y1 )w(X 1 )
· ¸
1 X
−→ E f X ,Y .
n k=1 f X ,Y (X k , Yk ) n→+∞ f X ,Y (X 1 , Y1 )

Or, par définition,

f X ,Y (x, Y1 )w(X 1 ) f X ,Y (x, y)w(t )


· ¸ Ï
E f X ,Y = f X ,Y (t , y)dt dy
f X ,Y (X 1 , Y1 ) f X ,Y (t , y)
Ï Z Z
= f X ,Y (x, y)w(t )dt dy = w(t )dt f X ,Y (x, y)dy = f X (x).
| {z }| {z }
=1 = f X (x)

2. Pour une suite (X 1 , Y1 ), . . . , (X n , Yn ) de variables aléatoires i.i.d., on cherche


" #
n f
X ,Y (x, Yk )w(X k ) f X ,Y (x, Y1 )w(X 1 )
· ¸
1 X
arg min Var f X ,Y = arg min Var f X ,Y .
w n k=1 f X ,Y (X k , Yk ) w f X ,Y (X 1 , Y1 )

Les variables X et Y étant supposées indépendantes, si l’on note f Y la loi marginale de Y , on

3
Examen Méthodes de Monte Carlo

a pour tout (x, y) ∈ R2 , f X ,Y (x, y) = f X (x) × f Y (y) et

f X ,Y (x, Y1 )w(X 1 ) f X (x) f Y (Y1 )w(X 1 ) w(X 1 )


· ¸ · ¸ · ¸
2
Var f X ,Y = Var f X ,Y = f X (x) Var f X ,Y .
f X ,Y (X 1 , Y1 ) f X (X 1 ) f Y (Y1 ) f X (X 1 )

On en deduit que l’on obtient l’estimateur de variance minimale en choisisant w = f X (sa


variance est alors nulle).
±
3. Par définition, il existe une constante c > 0 telle que f X ,Y = h X ,Y c. Pour simuler suivant
f X ,Y (x, y) par la méthode du rejet, on suppose qu’il existe une densité g X ,Y et une constante
M ≥ 1 telles que pour tout (x, y) ∈ R2

f X ,Y (x, y) ≤ M g X ,Y (x, y) ⇔ h X ,Y (x, y) ≤ c M g X ,Y (x, y).


±
La probabilité d’acceptation de la méthode étant 1 M , on choisit la densité instrumentale qui
conduit à la constante M la plus petite.
(a) Pour tout (x, y) ∈ R2 , la densité instrumentale s’écrit

³ x´ 1 (y − 2)2 x + (y − 2)2
µ ¶ µ ¶
1 1
g X ,Y (x, y) = exp − p exp − 1{x≥0} = p exp − 1{x≥0} .
2 2 2π 2 2 2π 2

On en déduit, si n 2 et les fonctions indicatrices étant majorées par 1,


p p
h X ,Y (x, y) ≤ 2 2πg X ,Y (x, y) ⇒ c M 1 = 2 2π.

(b) Pour tout (x, y) ∈ R2 , les fonctions sin2 et exp sont majorée par 1 et

h X ,Y (x, y) ≤ 1{x∈[0,2]} 1{ y∈[0,3]} = 6g X ,Y (x, y) ⇒ c M 2 = 6.

On a cM 1 < c M 2 et donc, c étant une constante positive, M 1 < M 2 . On choisit la réponse (a).
4. # --- Méthode du rejet
rejet <- function(n) {
ans <- matrix(0, n, 2)
for (i in 1:n) {
ans[i, 1] <- rexp(1, 0.5)
ans[i, 2] <- rnorm(1, 2)
while (runif(1) > sin(x)^2 * (x < 2) * (y > 0) * (y < 3)) {
ans[i, 1] <- rexp(1, 0.5)
ans[i, 2] <- rnorm(1, 2)
}
}
return(ans)
}
# --- Évaluation de la marginale
z <- rejet(n)
mean(f.joint(x, z[, 2]) * w(z[, 1])/f.joint(z[, 1], z[, 2]))

4
Examen Méthodes de Monte Carlo

Exercice 3 (11pts). On souhaite calculer


Z
I= h(x) f (x)dx,
Rd

en simulant X1 , . . . , Xn des variables aléatoires i.i.d. de densité f par la méthode du rejet. Pour ce faire,
on a dû simuler Y1 , . . . , Yn+T , avec Yn+T = Xn , un nombre aléatoire de variables aléatoires de densité g
satisfaisant :

(i) pour tout x ∈ Rd , f (x) ≤ M g (x), avec M = sup( f /g ) ;


(ii) {x ∈ supp( f ) : f (x) = M g (x)} est de mesure nulle.

Partie 1 – Méthode de Monte Carlo classique.

1. (0.5 pt) Rappeler la définition de l’estimateur de Monte Carlo classique, noté Ibn , de I .

2. (1.5 pts) En moyenne, combien de tirages suivant g faut-il effectuer pour obtenir une précision ² au
niveau de confiance 1 − α, i.e. P |Ibn − I | ≤ ² −→ 1 − α.
£ ¤
n→+∞

Partie 2 – Soyons écolo et utilisons tout.

On se propose d’utiliser les variables Y1 , . . . , Yn+T −1 simulées suivant g dans l’algorithme du rejet pour
estimer I . On admet que la densité marginale de Yi conditionnellement à T = t , i ∈ {1, . . . , n + t − 1}, est
donnée par

n −1 t M g (y) − f (y)
m(y) = f (y) + .
n +t −1 n +t −1 M −1

3. (1 pt) Montrer que pour toute fonction φ et toute constante réelle β, on peut écrire

h(Y1 ) f (Y1 )
· ¸
I = βE φ(Y1 ) + E − βφ(Y1 ) .
£ ¤
m(Y1 )

On suppose dans la suite que E φ(Y1 ) est connue.


£ ¤

4. (a) (0.5 pt) Déduire l’expression d’un estimateur Monte Carlo, noté Ibn (β), de I .

(b) (0.5 pt) Donner la variance de l’estimateur Ibn (β).

(c) (1.5 pts) Justifier que Ibn (β) est sans biais, converge presque sûrement vers I et donner un in-
tervalle de confiance IC(α) au niveau α pour I , i.e. P [I ∈ IC(α)] −→ α.
n→+∞

5. (1 pt) Montrer qu’on obtient l’estimateur de variance minimal en choisissant comme valeur de β,

Cov h(Y1 ) f (Y1 ) m(Y1 ), φ(Y1 )


£ ± ¤
?
β = .
Var φ(Y1 )
£ ¤

6. (2 pts) Comparer la variance de l’estimateur Ibn (β? ) obtenu en choisissant β = β? et la variance de


l’estimateur Ibn obtenu par la méthode de Monte Carlo classique pour

(a) une même taille d’échantillon (i.e., on utilise le même nombre de réalisations suivant f et g ),

(b) un coût de simulation équivalent (i.e., on utilise le même nombre de simulations suivant g ).

5
Examen Méthodes de Monte Carlo

7. (2.5 pts) On se place dans le cadre de variables aléatoires réelles (d = 1) et on suppose que l’on sait cal-
culer explicitement xh(x) f (x)dx. Existe-t-il un choix de φ permettant d’utiliser l’estimateur Ibn (β? )
R

dans les situations suivantes ? Si oui, préciser φ, expliquer comment estimer β? et donner l’expres-
sion de l’estimateur de I .

(a) Il existe y0 telle que P Y1 > y0 est connue.


£ ¤

(b) Les moments d’ordre 1 et 2 de Y1 , notés respectivement m 1 et m 2 , sont connus.

Solution Exercice 3.

Partie 1 – Méthode de Monte Carlo classique.

1. L’estimateur de Monte Carlo classique s’écrit

1 Xn
Ibn = h(Xk ).
n k=1

2. Pour n variables aléatoires i.i.d. de densité f , le théorème central limite donne

n
r
L
( Ibn − I ) −→ N (0 , 1).
Var[h(X1 )] n→+∞

On en déduit
¯
n
·¯r ¸
P ¯ ( I n − I )¯ ≤ q 1−α/2 −→ 1 − α
¯ ¯
¯ b ¯
Var[h(X1 )] n→+∞

où q 1−α/2 est le quantile d’ordre 1 − α de la loi N (0 , 1). Afin d’obtenir une precision ², il faut
donc choisir n tel que
s
2
Var[h(X1 )] q 1−α/2
q 1−α/2 = ² ⇔ n= Var[h(X1 )].
n ²2

Sachant qu’il faut en moyenne M tirages suivant g avant qu’une variable aléatoire soit accep-
tée, le nombre moyen de tirages suivant g nécessaire pour obtenir une précision ² est donc

M Var[h(X1 )] 2
q 1−α/2 .
²2

Partie 2 – Soyons écolo et utilisons tout.

3. β étant une constante, il suffit de montrer que l’on a

h(Y1 ) f (Y1 ) h(y) f (y)


· ¸ Z Z Z
E = m(y)dy = h(y) f (y)dy = h(y) f (y)dy = I .
m(Y1 ) supp(m) m(y) supp(m) ↑ supp( f )
?

Il suffit donc de justifier que supp( f ) ⊂ supp(m). Soit y ∈ supp( f ) = y ∈ Rd ¯ f (y) > 0 . En uti-
© ¯ ª

lisant l’hypothèse (i ) sur la densité g , i.e., pour tout x ∈ Rd , M g (x) − f (x) ≥ 0, on en déduit

6
Examen Méthodes de Monte Carlo

que

n −1
m(y) ≥ f (y) > 0.
n +t −1 ↑
y ∈ supp( f )

Donc y ∈ supp(m).
4. (a) En supposant que E φ(Y1 ) est connue, on en déduit un estimateur par variable de
£ ¤

contrôle

1 n+t
X−1 h(Yk ) f (Yk )
Ibn (β) = βE φ(Y1 ) + − βφ(Yk ).
£ ¤
n + t − 1 k=1 m(Yk )

(b) Les variables Y1 , . . . , Yn+t −1 étant indépendantes, on a

h(Y1 ) f (Y1 )
· ¸
(n + t − 1)Var In (β) = Var + βφ(Y1 )
£ ¤
b
m(Y1 )
h(Y1 ) f (Y1 ) h(Y1 ) f (Y1 )
· ¸ · ¸
2
= Var + β Var φ(Y1 ) − 2βCov , φ(Y1 ) .
£ ¤
m(Y1 ) m(Y1 )

(c) Biais. Comme supp( f ) ⊂ supp(m), un calcul direct donne

h(Y1 ) f (Y1 ) h(Y1 ) f (Y1 )


· ¸ · ¸
E In (β) = βE φ(Y1 ) + E − E βφ(Y1 ) = E =I.
£ ¤ £ ¤ £ ¤
b
m(Y1 ) m(Y1 )

Donc l’estimateur est sans biais.

Convergence. Pour les variables aléatoires i.i.d. Y1 , . . . , Yn+t −1 , la loi forte des grands
nombres donne

1 n+t
X−1 h(Yk ) f (Yk )
·
h(Y1 ) f (Y1 )
¸
p.s.
− βφ(Yk ) −→ E − βφ(Y1 ) = I − E βφ(Y1 ) ,
£ ¤
n + t − 1 k=1 m(Yk ) n→+∞ m(Y1 )

p.s.
et donc Ibn −→ I .
n→+∞

Intervalle de confiance. Pour les variables aléatoires i.i.d. Y1 , . . . , Yn+t −1 , le théorème


central limite donne
s
1 L
¤ (Ibn (β) − I ) −→ N (0 , 1).
Var In (β)
£
b n→+∞

On en déduit
· q ¸
P In (β) − I ≤ q (1+α)/2 Var In (β) −→ α,
¯ ¯ £ ¤
¯ b ¯ b
n→+∞

où q (1+α)/2 est le quantile d’ordre (1+α)/2 de la loi N (0 , 1). L’intervalle de confiance au ni-
veau α est donc
· q q ¸
IC (α) = Ibn (β) − q (1+α)/2 Var Ibn (β) , Ibn (β) + q (1+α)/2 Var Ibn (β) .
£ ¤ £ ¤

7
Examen Méthodes de Monte Carlo

5. Var Ibn (β) est une fonction polynômiale du second degré en β dont le coefficient dominant
£ ¤

est positif. On en déduit qu’elle admet un unique maximum donné par


¯
h(Y1 ) f (Y1 )
· ¸
d ?
Var In (β) ¯¯ 2β Var φ(Y1 ) − 2Cov , φ(Y1 ) = 0.
£ ¤¯ £ ¤
b =0 ⇔
dβ β=β? m(Y1 )

6. En choisissant β = β? , la variance de l’estimateur s’écrit

h(Y1 ) f (Y1 ) 1 − ρ 2 2 f (Y1 ) 1 − ρ2


· ¸ µ · µ ¶¸¶
?
Var In (β ) = Var = Var[h(Y1 )] + E h(Y1 )
£ ¤
b −1 ,
m(Y1 ) n +t −1 m(Y1 ) n +t −1
avec

Cov h(Y1 ) f (Y1 ) m(Y1 ), φ(Y1 )


£ ± ¤
ρ= q ¤.
Var h(Y1 ) f (Y1 ) m(Y1 ) Var φ(Y)
£ ± ¤ £

(a) Si l’on dispose de la même taille d’échantillon, i.e., n + t − 1 réalisations suivant f et m,


pour calculer l’estimateur de Monte Carlo classique et celui par variable de contrôle, on
a

1 − ρ2 2 f (Y1 )
· µ ¶¸
? 2
Var In (β ) = Var In+t −1 (1 − ρ ) + E h(Y1 )
£ ¤ £ ¤
b b −1 .
n +t −1 m(Y )
| {z 1 }
(∗)

Une condition suffisante pour que l’estimateur réduise la variance est que (∗) soit négatif.
Autrement dit que l’estimateur d’échantillonnage préférentiel soit plus efficace en terme
de variance que la méthode classique. Dans ce cas, on observerait une réduction de la
variance d’un facteur au moins (1 − ρ 2 )−1 .
(b) Pour un coup de simulation équivalent, on a n réalisations suivant f et n + 1 − t suivant
m et

n 1 − ρ2 f (Y1 )
· µ ¶¸
Var Ibn (β? ) = Var Ibn (1 − ρ 2 ) + E h(Y1 )2
£ ¤ £ ¤
−1 .
n +t −1 n +t −1 m(Y )
| {z 1 }
(∗)

Pour réduire la variance, on obtient la même condition suffisante sur (∗). Dans ce cas,
on peut observer qu’en utilisant l’ensemble des variables simulées, on observerait une
réduction de la variance d’un facteur au moins (n + t − 1)(n − nρ 2 )−1 . En particulier, la
méthode sera d’autant plus efficace que la probabilité d’acceptation sera faible (car t est
alors grand).
7. (a) Oui. Il existe y0 telle que P Y1 > y0 := p est connue, donc on choisit φ(y) = 1{y>y0 } . On
£ ¤

a alors
R R
y>y h(y) f (y)dy − p Rd h(y) f (y)dy
β? =
0

p(1 − p)
R R
y>y0 h(y) f (y)dy y≤yo h(y) f (y)dy
= − .
p 1−p

8
Examen Méthodes de Monte Carlo

On peut estimer β? à l’aide de l’algorithme du rejet en considérant les N premières par-


ticules simulées :

1 XN h(y ) f (Y ) µ 1 1

βb?
k k
= 1 − 1 .
p { k 0} 1 − p { k 0}
N Y >y Y ≤y
N k=1 m(Yk )

On estime ensuite I sur les particules suivantes (afin de conserver un estimateur sans
biais) en utilisant l’estimation de β? :

n+tX
−N −1 h(Y
1 N +k ) f (YN +k )
Iˆ βb? b?
N = p βN + − βb?
¡ ¢
N 1{YN +k >y0 } .
n + t − N − 1 k=1 m(YN +k )

(b) Oui. Le moment d’ordre 1, m 1 = E [Y1 ], étant connu, on choisit φ(y) = y. On a alors
h i h i
h(Y1 ) f (Y1 ) h(Y1 ) f (Y1 )
E m(Y1 ) Y1 −E E [Y1 ] yh(y) f (y)dy − m 1 I
R
? m(Y1 ) Rd
β = =
Var[Y1 ] m2 .

Par hypothèse m 2 et I ? = Rd yh(y) f (y)dy sont connus, pour estimer β? il suffit donc
R

d’estimer grosssièrement une première fois I à l’aide de l’algorithme du rejet en consi-


dérant les N premières particules simulées :

I? m1 X N h(y ) f (Y )
βb?
k k
N = − .
m 2 N m 2 k=1 m(Yk )

Comme précédemment, on estime ensuite I sur les particules suivantes en utilisant l’es-
timation de β? .

Vous aimerez peut-être aussi