UPMC-X Master M2 Probabilités et Finance
Méthodes de Monte Carlo 2016/2017
Mini-projet Monte Carlo
à préparer pour le lundi 31 octobre
Algorithme Ziggurat
Partie 1 : Cas support compact
Soit fune densité de probabilité continue unimodale de support compact [l, r]. On note m∈[l, r]le mode
de la densité tel que fsoit strictement croissante sur [l, m]et strictement décroissante sur [m, r]. On note
f∗=f(m) = maxu∈[l,r]f(u)et F(x) = Rx
lf(u)du la fonction de répartition associée à f.
Pour tout y∈[0, f ∗[, la fonction fpossède deux antécédents de y,f−1({y}) = {f−1
−(y), f−1
+(y)}où l’on suppose
conventionnellement que f−1
−(y)< f−1
+(y). On note pour tout y∈[0, f∗[,
d(y) = f−1
+(y)−f−1
−(y).
Dans tout l’exercice on supposera qu’on sait évaluer la densité fen tout point.
Pour une fonction g:R→Ron note E(g)l’épigraphe de la fonction g,i.e.
E(g) = {(x, y)∈R2
+,06y6g(x)}.
La mesure λ2est la mesure de Lebesgue sur R2.
1. Montrer que E(f)⊂[l, r]×[0, f ∗]. En déduire une méthode de rejet pour simuler selon la densité f.
2. Quelle est la loi τdu rejet et l’efficacité de la méthode (en fonction de λ2(E(g)),l,ret f∗).
3. Soit n>1et des points 0 = y0< y1<· · · < yn−1< yn=f∗vérifiant
∃An>0,∀k∈ {1, . . . , n −1}, yk=An
k
X
j=1
1
d(yj−1).
Pour ces points fixés, on considère les nrectangles Rk= [f−1
−(yk−1), f−1
+(yk−1)]×[yk−1, yk],k= 1, . . . , n,
et l’on pose En=
n
[
k=1
Rk.
4. Montrer que pour tout k= 1, . . . , n,λ2(Rk) = Anet en déduire que λ2(En) = nAn>1.
5. Soit (¯
X, ¯
Y)de loi uniforme sur En. Comment simuler efficacement (¯
X, ¯
Y)?
Quelle est la loi de la première marginale ¯
X? Si cette loi est à densité, on pourra noter celle-ci fn.
6. Soit (¯
Xm,¯
Ym)m>1une suite i.i.d. uniforme sur Enet τ= inf m>1,(¯
Xm,¯
Ym)∈ E(f).
Donner la loi de τet montrer que ¯
Xτa pour densité f.
7. Écrire l’algorithme de simulation de ¯
Xτà partir de lois uniformes sur [0,1].
8. Proposer un algorithme permettant de minimiser le nombre d’évaluations de la fonction f.
9. Montrer que pour tout n>1il existe une unique constuction possible i.e. qu’il existe un unique An∈
]0, f∗(r−l)[, et montrer que limn→+∞nAn= 1.
Partie 2 : Cas support non compact
On étend la construction précédente à une densité fde support R. On suppose que pour tout n>1, il existe
An>0tel que y1soit solution de F(f−1
−(y1)) + 1 −F(f−1
+(y1)) + y1d(y1) = Anet pour tout k∈ {2, . . . , n −1},
yk=An
k
X
j=2
1
d(yj−1).
On modifie la construction précédente en considérant
˜
R1=E(f1]−∞,f−1
−(y1)])∪[f−1
−(y1), f−1
+(y1)] ×[0, y1]∪ E(f1[f−1
+(y1),+∞[),
et en posant ˜
En=˜
R1∪R2∪ · · · ∪ Rn.
1