Beruflich Dokumente
Kultur Dokumente
Monte-Carlo
Septembre 2001
Table des matières
4 Travaux dirigés 39
4.1 Travail dirigé 1 : Simulation en Scilab . . . . . . . . . . . . . . . . . . . . . . 39
4.2 Travail dirigé 2 : Méthodes de réduction de variance . . . . . . . . . . . . . . . 44
4.3 Travail dirigé 3 : Méthodes de Monte-Carlo par chaîne de Markov . . . . . . . 48
4.4 Un exemple simple d’utilisation de scilab . . . . . . . . . . . . . . . . . . . . 51
4.5 Produits de transformations aléatoires . . . . . . . . . . . . . . . . . . . . . . 54
3
Chapitre 1
I = E[g(U)]
où U est une variable aléatoire suivant une loi uniforme sur [0, 1] et à utiliser la loi des grands
nombres : si (Ui )i∈N est une suite de variables aléatoires indépendantes et de loi uniforme sur
5
6 PROCESSUS ET ESTIMATION : MONTE-CARLO
et donc si (x1 , x2 , . . . , xn ) est une réalisation de (X1 , X2 , . . . , Xn ), n1 (g(x1 )+g(x2 )+· · ·+g(xn ))
sera une approximation de I.
Une question naturelle est la vitesse de convergence dans la méthode de Monte-Carlo.
D’après le Théorème central limite, si σ2 Var[g(X1 ],
√ " X n
#
n 1
g(Xi ) − E(g(X1 )) converge en loi vert G,
σ n i=1
– Comment simuler des variables aléatoires indépendantes de loi uniforme ou plus généra-
lement de loi donnée ?
– Comment peut-on réduire la variance σ2 pour accélérer la convergence ?
Ces questions seront étudiées dans le premier chapitre. Puis nous aborderons dans le chapitre
suivant des méthodes plus générales qui font appel aux chaînes de Markov.
Cette fonction pseudo-inverse est bien sûr la fonction réciproque de F lorsque F est bijective.
On a le lemme suivant :
Lemme 1.2.1 Pour tout u ∈ [0, 1] et x ∈ R,
Démonstration : L’implication ⇐ est triviale. Pour le sens direct, on remarque que si F-1 (u) ≤
x, alors par croissance de F pour tout y > x, on a F(y) ≥ u. Comme F est continue à droite, on
en déduit F(x) ≥ u.
Proposition 1.2.2 Si U suit une loi uniforme sur [0, 1], la variable aléatoire F-1 (U) suit une
loi de fonction de répartition F.
f(x) = λ exp(−λx)
sur R+ , sa fonction de répartition vaut pour x ≥ 0, F(x) = 1 − exp(−λx) et donc si u ∈ [0, 1],
− log(1 − u)
F-1 (u) = .
λ
- log(1-U)
Soit U une v.a. de loi uniforme sur [0, 1]. La variable X a donc même loi que
et aussi
par symétrie que - log
U
.
Variable aléatoire prenant un nombre fini de valeurs Supposons que X soit une v.a. prenant
un nombre fini de valeurs de loi
P(X = xi ) = pi 0 ≤ i ≤ n.
Alors
n
X
-1
F (u) = x0 1u≤p0 + xi 1p0 +p1 +···+pi-1 <u≤p0 +p1 +···+pi .
i=1
Pour simuler X, on procédera de la manière suivante : on tire u au hasard dans [0, 1] et on pose
X = xk si, p0 + p1 + · · · + pk-1 < u ≤ p0 + p1 + · · · + pk .
Par exemple si X est une v.a. de Bernouilli prenant la valeur 1 avec la probabilité p et la
valeur 0 sinon, on posera X = 1 si u ≤ p et X = 0 si p < u ≤ 1.
La méthode ci-dessus s’étend bien sûr aux lois discrètes.
λn
P(X = n) = exp(−λ) .
n
Si (Ti )i≥1 est une suite de variables exponentielles de paramètre λ, alors on peut montrer que la
v.a.
X1
X= n 1fT1 +T2 +···+Tn ≤1≤T1 +T2 +···+Tn+1 g
n=1
suit une loi de Poisson de paramètre λ. Sachant que Ti peut se mettre sous la forme − log Ui /λ
avec Ui de loi uniforme sur [0, 1], on obtient
1
X
X= n 1fU1 U2 :::Un ≤exp -≤U1 +U2 +:::Un+1 g .
n=1
Pour simuler X, on simule une suite (ui )i≥1 de nombres au hasard dans [0, 1] , on cherche le
premier instant k où u1 u2 . . . uk < exp −λ et on pose X = k − 1.
f(x)
Remarquons de plus que les rejets seront limités si k g(x)
est proche de 1 et donc si la
fonction g a une allure similaire à celle de f.
Si la v.a. X a une loi portée par un ensemble discret E, on peut choisir pour µ la mesure de
comptage sur E et la méthode de rejet est aussi valable pour des lois discrètes, f(x) étant dans
ce cas égal à P(X = x).
Démonstration : Remarquons tout d’abord qu’au bout d’un nombre d’essais fini, la relation
Up ≤ α(Xp ) sera vérifiée ; en effet
\ \
P(∀p ∈ N∗ , X 6= Xp ) = lim P( X 6= Xp ) = lim P( Up ≤ α(Xp )),
N!1 N!1
p≤N p≤N
puis
1
P(∀p ∈ N∗ , X 6= Xp ) = lim P(U1 ≤ α(X1 ))N = lim (p1 )N = lim ( )N = 0,
N!1 N!1 N!1 k
puisque les v.a. (Xp , Up ) sont indépendantes et de même loi. Par conséquent
X
P[X ∈ A] = P[X = Xn , X ∈ A]
n∈N∗
X \ \ \
= P[ Up ≤ α(Xp ) Un ≤ α(Xn ) Xn ∈ A]
n∈N∗ p≤n-1
X
= (1 − p1 )n-1 P[U1 ≤ α(X1 ) ∩ X1 ∈ A]
n∈N∗
= p1 P[U1 ≤ α(X1 ) ∩ X1 ∈ A]
= P[X1 ∈ A/{U1 ≤ α(X1 )}].
1.7 Exercices
¡ ¢
Exercice 1 Soit X une variable aléatoire telle que E X2 < +∞. Soit (X1 , . . . , Xn ) n-tirages
“Monte–Carlo” indépendants selon la loi de X. On approxime E(X) par :
1
(X1 + · · · + Xn ) .
n
Expliquer comment on peut construire un intervalle de confiance à 95% pour notre estimation.
Exercice 2 Soit X une variable aléatoire de loi admettant comme fonction de répartition :
¡ ¢
F(x) = 1 − exp −αx , pour x > 0,
0 sinon. Expliciter la densité de la loi de X et proposer une méthode de simulation de cette loi.
P (X = k) = p (1 − p)k-1 , k ≥ 1.
Exercice 4 Soit X et Y deux variables aléatoires indépendantes suivant des lois gaussiennes
centrées réduites.
1. Soit (R, Θ) les coordonnées polaires du point (X, Y). Montrer que R et Θ sont indépen-
dantes et calculer leur loi.
2. Montrer que si U1 et U2 sont deux variables aléatoires indépendantes suivant une loi
uniforme sur [0, 1], alors le couple (X1 , X2 ) avec :
p p
X1 = −2 log(U1 ) cos(2πU2 ) et X2 = −2 log(U1 ) sin(2πU2 ),
Exercice 5 Soit X une variable aléatoire réelle de fonction de répartition F. On supposera cette
fonction de répartition inversible et l’on note F-1 son inverse.
1. Comment simuler la loi de X conditionnellement à X > m à l’aide d’une méthode de
rejet ? Évaluer l’efficacité de la méthode ? Que se passe t’il, en particulier, si m devient
très grand ?
Ch.1 Introduction aux méthodes de monte-Carlo 13
Nous venons
√ de voir que la vitesse de convergence de la méthode de Monte-Carlo est de
l’ordre de σ/ n. Pour améliorer cette méthode il existe de nombreuses techniques, dites de
réduction de variance, qui cherchent à diminuer la valeur de σ2 . L’idée générale est de donner
une autre représentation sous forme d’espérance de la quantité à calculer :
E (X) = E (Y) ,
en cherchant à diminuer la variance. Nous allons passer en revue quelques unes de ces méthodes
qui sont applicables dans pratiquement tous les cas de simulations.
E(g(X))
et que la loi de X soit f(x)dx (sur R pour fixer les idées). La quantité que l’on cherche à évaluer
vaut donc : Z
E(g(X)) = g(x)f(x)dx.
R
R
Soit maintenant, f̃ la densité d’une autre loi telle que f̃ > 0 et R f̃(x)dx = 1, il est clair que
E(g(X)) peut aussi s’écrire :
Z
g(x)f(x)
E(g(X)) = f̃(x)dx.
R f̃(x)
³ ´
Cela signifie que E(g(X)) = E g(Yf̃()Yf()Y ) , si Y suit la loi f̃(x)dx sous P. On a donc une autre
méthode de calcul de E(g(X)) en utilisant n tirages de Y, Y1 , . . . , Yn et en approximant E(g(X))
par : µ ¶
1 g(Y1 )f(Y1 ) g(Yn )f(Yn )
+ ··· + .
n f̃(Y1 ) f̃(Yn )
Si l’on pose Z = g(Y)f(Y)/f̃(Y), on aura amélioré l’algorithme si Var(Z) < Var(g(X)). Il est
facile de calculer la variance de Z :
Z 2
2 2 g (x)f2 (x)
Var(Z) = E(Z ) − E(Z) = dx − E(g(X))2 .
R f̃(x)
15
16 PROCESSUS ET ESTIMATION : MONTE-CARLO
Si g(x) > 0, on peut vérifier que, en prenant f̃(x) = (g(x)f(x)) / (E(g(X))) on annule Var(Z) !
Il ne faut pas trop donner d’importance à ce résultat car il repose sur le fait que l’on connaît
E(g(X)), et c’est justement la quantité que l’on cherche à calculer.
Cela permet cependant de justifier l’heuristique suivante
R : prendre f̃(x) aussi proche que
possible de |g(x)f(x)| puis la normaliser (diviser par f̃(x)dx) de façon à obtenir une den-
sité dont la loi est facilement simulable. Évidemment les contraintes que l’on s’impose sont
largement contradictoires et rendent cet exercice souvent délicat.
Donnons un exemple simple pour fixer les idées. Supposons que l’on cherche à calculer :
Z1
cos (πx/2) dx.
0
Cela correspond à g(x) = cos(x) et f(x) = 1{[0, 1]} (x). On peut alors approcher le cos par
un polynôme du second degré. Comme le cos est pair, vaut 0 en x = 1 et 1 en x = 0, il est
naturel de prendre f̃(x) de la forme λ(1 − x2 ). En normalisant on obtient, f̃(x) = (1 − x2 )/3.
En calculant les variances, on peut constater que cette méthode a réduit la variance d’un facteur
100.
Montrons sur le cas du calcul d’un “put” comment l’on peut appliquer cette méthode. Plus
précisément, nous allons chercher à calculer :
³¡ ¢ ´
P = E 1 − eG + .
La fonction ex − 1 est proche de x lorsque x n’est pas trop grand. Cela suggère de mettre P sous
la forme : Z ¡ ¢
1 − ex + 2 dx
P= β|x|e-x =2 √ .
R β|x| 2π
√ √
Le changement de variable, x = y sur R et x = − y sur R- , permet alors d’écrire P sous
+
la forme : Z +1 ¡ √ ¢ ¡ √ ¢
1 − e y + + 1 − e- y + -y=2 dy
P= √ √ e .
0 2π y 2
Si l’on note que e-x=2 dx/2 est la loi d’une variable aléatoire Y exponentielle de paramètre 1/2.
On peut encore écrire :
³ √ ´ ³ √ ´
Y - Y
1−e + 1−e
+ +
P = E √ √ ,
2π Y
On peut alors comparer avec une méthode directe et on constate une amélioration sensible de la
précision du calcul : pour 10000 tirages l’erreur relative passe de 6% dans la méthode initiale à
1% grâce à cette méthode d’échantillonnage préférentiel.
R1
Commençons par donner un exemple simple. Supposons que l’on veuille calculer 0
ex dx.
Comme au voisinage de 0, ex ≈ 1 + x, on peut écrire :
Z1 Z1
x 3
e dx = (ex − 1 − x)dx + .
0 0 2
Il est facile de vérifier que la variance de la méthode diminue alors sensiblement.
Donnons maintenant un autre exemple, en considérant le problème du calcul du prix du
“call”. Il est facile de vérifier que les prix du “put” et du “call” vérifient la relation :
¡ ¢ 2
C − P = E eG − K = e =2 − K.
2
L’idée est alors d’écrire C = P + e =2 − K et de réaliser une méthode de Monte-Carlo pour P.
On a déjà vu que l’erreur de la méthode est alors très sensiblement inférieure.
Lorsque l’on compare cette méthode à une méthode de Monte-Carlo directe à l’issue de 2n
tirages, on peut montrer que si la fonction f est continue monotone la qualité de l’approximation
s’améliore.
On peut généraliser ce genre d’idée en dimension supérieure et à d’autres transformations
préservant la loi de la variable aléatoire. Par exemple, si l’on cherche à calculer le prix d’un
“put”, on peut utiliser le fait que la loi de G est identique à celle de −G et réduire la variance
d’un coefficient proche de 2.
Lorsque que l’on connaît les nombres pi = P(X ∈ Di ), on peut utiliser une méthode de
Monte-Carlo pour estimer les intégrales Ii = E(g(X)|X ∈ Di ). Supposons que l’on approxime
l’intégrale Ii par Ĩi à l’aide de ni tirages indépendants, la variance de l’erreur d’approximation
2
est donnée par nii , si l’on note σ2i = Var(g(X)|X ∈ Di ). On approxime ensuite I par Ĩ avec :
m
X
Ĩ = pi Ĩi .
i=1
Les échantillons servant à obtenir les estimateurs Ĩi étant supposés indépendants on montre
facilement que la variance de l’estimateur Ĩ vaut :
m
X σ2i
p2i .
i=1
ni
Pm
Il est alors naturel de minimiser cette erreur pour un nombre total de tirages fixé i=1 ni = n.
On peut vérifier que les ni qui minimise la variance de Ĩ sont donnés par :
pi σ i
ni = n Pm .
i=1 pi σi
Il est inférieur à la variance que l’on obtiendrait avec n tirages aléatoires par la méthode de
Monte-Carlo classique. En effet, cette variance vaut :
¡ ¢
Var (g(X)) = E g(X)2 − E (g(X))2
m
Ãm !2
X ¡ 2 ¢ X
= pi E g (X)|X ∈ Di − pi E (g(X)|X ∈ Di ) .
i=1 i=1
2
Pm 2 Pm 2
On
Pm utilise alors, deux fois, l’inégalité de convexité pour x , ( i=1 p i a i ) ≤ i=1 pi ai si
i=1 pi = 1, pour montrer que :
m
Ãm !2
X X
Var (g(X)) ≥ pi Var (g(X)|X ∈ Di ) ≥ pi σi .
i=1 i=1
Ch.2 Techniques de réduction de variance 19
Ceci prouve que, sous réserve que l’on fasse une affectation optimale des tirages, on peut obtenir
par stratification un estimateur de variance moindre. Notons cependant que l’on ne peut que
rarement calculer les σi , ce qui limite la portée de cette technique (mais on peut toujours les
estimer à l’aide d’un premier tirage de Monte-Carlo).
Notons aussi qu’il est possible d’obtenir un estimateur de variance supérieure à l’estimateur
initial si l’affectation des points aux domaines est quelconque. Il existe malgré tout d’autres stra-
tégies d’affectation des points par domaines qui réduisent forcément la variance. Par exemple
la stratégie qui affecte un nombre de points proportionnel à la probabilité du domaine :
ni = npi .
Cette interprétation comme une espérance conditionnelle permet, de plus, de prouver que :
Si l’on peut calculer explicitement la fonction h(x), il est préférable d’utiliser une méthode de
Monte-Carlo pour h(X).
20 PROCESSUS ET ESTIMATION : MONTE-CARLO
On parle dans ce cas de méthode de quasi Monte-Carlo. On peut trouver des suites, telles que
d
la vitesse de convergence de l’approximation soit de l’ordre de K log(nn) , mais à condition que
la fonction f possède une certaine régularité, ce qui est sensiblement meilleur qu’une méthode
de Monte-Carlo. C’est ce genre de suite que l’on appelle une suite à discrépance faible.
Commençons par donner la définition d’une suite équirépartie.
Définition 2.6.1 On dit que (xn )n≥1 est une suite équirépartie sur [0, 1]d si l’une des propriétés
suivantes (équivalentes) est vérifiée. (Si x et y sont deux points de [0, 1]d , x ≤ y si et seulement
si par définition xi ≤ yi , pour tout 1 ≤ i ≤ d.)
– Pour tout y = (y1 , · · · , yd ) ∈ [0, 1]d :
n d
1X Y
lim 1{x ∈ [0, y]} = yi = Volume([0, y]).
n!+1 n k
k=1 i=1
d
où [0, y] = {z ∈ [0,¯ 1]n , z ≤ y}. ¯
¯1X ¯
∗ ¯ ¯
– Dn (x) = sup ¯ 1{x ∈ [0, y]} − Volume([0, y])¯ → 0.
y∈[0;1]d ¯ n k=1 ¯
k
– Pour toute fonction f Riemann intégrable (c’est à dire bornée et dx-ps continue) définie
sur [0, 1]d :
n Z
1X
lim f(xk ) = f(x)dx.
n!+1 n [0;1]d
k=1
Remarque 2.6.2 – Si (Un )n≥1 désigne une suite de variables aléatoires indépendantes et
de loi uniforme sur [0, 1], les suites aléatoires (Un (ω))n≥1 seront presque sûrement équi-
réparties. On a, de plus, une loi du logarithme itéré pour la discrépance :
s
2n
presque sûrement lim D∗ (U) = 1.
n log(log n) n
Ces suites sont asymptotiquement meilleures qu’une suite de nombres aléatoires. Cepen-
dant, dans la pratique, c’est à dire pour des valeurs de n entre 103 et 106 , les discrépances
des meilleures suites connues ne sont pas aussi bonnes que les résultats asymptotiques
pourraient le laisser espérer particulièrement pour des dimensions supérieures à la di-
zaine.
Un autre intérêt des suites à discrépance faible est de donner une estimation a priori de l’er-
reur commise lors de l’intégration numérique, pour des fonctions à variation finie, par l’inter-
médiaire de la formule de Koksma-Hlawka. Contrairement aux suites aléatoires, qui fournissent
des intervalles de confiance pour une probabilité donnée, cette majoration est effective et déter-
ministe. Il faut cependant relativiser l’intérêt de cette majoration en notant qu’elle est presque
toujours très éloignée de la valeur réelle de l’erreur et que la variation d’une fonction est une
quantité très difficile à évaluer. La proposition suivante explicite cette majoration :
Proposition 2.6.3 (Inégalité de Koksma-Hlawka) Si g est une fonction à variation finie au
sens de Hardy et Krause de variation V(g), alors :
¯ ¯
¯1 X N ¯
¯ ¯
∀n ≥ 1 ¯ g(xk ) − E(X)¯ ≤ V(g)D∗N (x).
¯N ¯
k=1
Remarque 2.6.4 La définition générale d’une fonction à variation finie au sens de Hardy and
Krause est relativement compliquée (voir [Nei92]). Cependant, en dimension 1, cette notion
coïncide avec celle de fonction à variation finie classique. De plus, en dimension d, si g est d
fois continuement différentiable, la variation V(g) est donnée par :
d
X X Z ¯ ¯
¯ ∂k g(x) ¯
V(g) = ¯ ¯ dx.
¯
d ∂xi · · · ∂xi
¯
k=1 1≤i1 <···<ik ≤d [0;1] 1 k
On constate donc que lorsque la dimension augmente il est de plus en plus “difficile” d’être à
variation finie. En particulier les fonctions indicatrices (1{f(x , . . . , x ) > λ} avec f régulière)
1 d
ne sont pas forcément à variation finie dès que la dimension est supérieure ou égale à 2.
Nous allons maintenant donner quelques exemples de suites à discrépance faible, parmi les
plus utilisées en pratique. Il y en a beaucoup d’autres (voir [Nei92] pour d’autres exemples).
Suites de Van Der Corput Soit p un entier strictement supérieur à 1. Soit n un entier positif
on notera a0 , a1 , . . . , ar sa décomposition p-adique unique vérifiant :
n = a0 + · · · + ar pr ,
avec 0 ≤ ai < p pour 0 ≤ i ≤ r, et ar > 0. La suite de Van Der Corput en base p est donnée
par :
a0 ar
φp (n) = + · · · + r+1 .
p p
On peut comprendre la définition de φp (n) de la façon suivante. On écrit le nombre n en base
p:
n = ar ar-1 . . . a1 a0 , alors φp (n) = 0, a0 a1 . . . ar ,
où il faut comprendre la notation 0, a0 a1 . . . ar comme étant la décomposition p−adique d’un
nombre.
22 PROCESSUS ET ESTIMATION : MONTE-CARLO
Suites de Halton Les suites de Halton sont des généralisations multidimensionnelles des
suites de Van Der Corput. Soit p1 , · · · , pd les d premiers nombres premiers. La suite de Halton
est définie par, si n est un entier :
Suite de Faure La suite de Faure en dimension d est définie de la façon suivante. Soit r un
entier premier impair plus grand que d (on peut prendre, par exemple, r = 11 dans le cas où
d = 8). On définit alors une application T opérant sur l’ensemble des x s’écrivant sous la forme :
X ak
x= k+1
,
k≥0
r
2.8 Exercices
Exercice 6 Echantillonnage préférentiel :
On veut calculer par une méthode de Monte-Carlo :
I = E(g(X)),
Exercice 8 Le but de cet exercice est de prouver que la méthode des variables antithétiques
réduit bien la variance lorsque la fonction est monotone en chacune de ses variables.
1. On suppose que f et g sont deux fonctions croissantes bornées de R dans R. Montrez que,
si X et Y sont deux variables aléatoires réelles, on a :
φ étant une fonction que l’on explicitera sous forme d’une espérance.
3. En déduire que, si f et g sont deux fonctions croissantes en chacun de leur arguments :
4. Soit h une fonction de [0, 1]n dans R monotone en chacun de ses arguments, soit
U1 , . . . , Un n variables aléatoires indépendantes suivant un loi uniforme sur [0, 1], mon-
trez que :
Cov (h(U1 , . . . , Un )h(1 − U1 , . . . , 1 − Un )) ≤ 0,
et en déduire que le méthode des variables antithétiques réduit la variance dans ce cas.
24 PROCESSUS ET ESTIMATION : MONTE-CARLO
Exercice 9 Soit (u1 , . . . , un ) un échantillon i.i.d. de loi uniforme sur [0, 1]. Soit u(1) ≤
u(2) . . . ≤ u(n) ) l’échantillon ordonné.
1. Trouvez la loi de u(n+1) − u(n) et en déduire que limn!+1 u(n+1) − u(n) = 0.
2. Montrer que l’estimateur :
n-1
X ¡ ¢
u(i+1) − u(i) h(u(i+1) − u(i) )
i=1
R1
converge vers h(u)du.
0
R
3. Etendre au cas où I = R h(x)f(x)dx et où f est une densité à support compact.
4. Si h est dérivable à dérivée bornée C, montrer que l’erreur ²n peut être majorée par :
n
X ¡ ¢2
C u(i+1) − u(i) ,
i=0
Var (X − µ1 Y1 − µ2 Y2 ) .
et proposer une méthode de réduction de variance meilleure que celle proposée à la ques-
tion précédente. Comment peut on estimer Cov (X, Y1 ) et Cov (X, Y2 ) ?
6. Montrer que si µ est un nombre réel, g1 et g2 deux variables aléatoires gaussiennes cen-
trées réduites indépendantes et f une fonction positive, on a :
³ ´
-g1 - 12 2
E e f(g1 + µ, g2 ) = E (f(g1 , g2 )) .
et en déduire que :
dVar(X ) ³ 1 2
´
= E (−G1 + µ)e-G1 + 2 φ(G1 , G2 )2 .
dµ
³ ´
8. On suppose que C2 = 0, montrer que si µ ≤ d1 = 11 log CK1 , dVar (X )
d
≤ 0. Comment
utiliser ce résultat pour choisir un µ permettant de réduire la variance ?
26 PROCESSUS ET ESTIMATION : MONTE-CARLO
Exercice 12 Le but de cet exercice est d’étudier diverses méthodes permettant d’évaluer p =
P (Z > t) , où Z est une variable aléatoire de la forme :
Z = λ1 e1 X1 + λ2 e2 X2 ,
(X1 , X2 ) étant un couple de variables aléatoires réelles dont on précisera la loi dans la suite, λ1 ,
λ2 , β1 et β2 étant des réels positifs.
1. On suppose, dans cette question, que (X1 , X2 ) est un vecteur gaussien centré tel que
Var(X1 ) = Var(X2 ) = 1 et Cov (X1 , X2 ) = ρ, avec |ρ| ≤ 1. Expliquer comment l’on
peut simuler des variables aléatoires selon la loi de Z. Décrire une méthode de Monte-
Carlo permettant d’estimer p ainsi que de donner une idée de l’erreur que l’on commet.
2. On suppose que la valeur de t est telle que l’on cherche à estimer une valeur de p de
l’ordre de 10-7 . Donner un ordre de grandeur du nombre de tirages à effectuer dans une
méthode de Monte-Carlo standard pour pouvoir affirmer, avec une confiance proche de 1,
que :
1 3
× 10-7 ≤ p ≤ × 10-7 .
2 2
3. On suppose que X1 et X2 sont deux gaussiennes centrées de variance 1 indépendantes.
Soit m un nombre réel. En utilisant une technique de fonctions d’importance montrer que
p peut s’écrire sous la forme :
µ ¶
p = E φ(X1 , X2 )1© 1 (X1 +m) ª ,
λ1 e + λ2 e2 (X2 +m) ≥ t
φ étant une fonction que l’on précisera. Proposer un choix de m assurant que :
1
P(λ1 e1 (X1 +m) + λ2 e2 (X2 +m) ≥ t) ≥ .
4
Proposer une nouvelle méthode de Monte-Carlo permettant d’évaluer p. Expliquer com-
ment l’on peut vérifier, sur les simulations, que cette méthode réduit la variance.
4. Soit (X, Y) deux variables aléatoires indépendantes de lois données par les densités pX (x)
et pY (y). Montrer que, si f est une fonction bornée :
g étant une fonction que l’on précisera. En déduire Var(h(Y)) ≤ Var (f((X, Y)).
5. On suppose que X2 est une variable aléatoire réelle dont la fonction de répartition est
donnée par F2 (x). Calculez la fonction de répartition G2 (x) de λ2 e2 X2 .
6. On suppose que X1 et X2 sont indépendantes. Montrer que
¡ ¡ ¢¢
p = E 1 − G2 t − λ1 e1 X1 .
¡ ¢
Montrer que la variance de 1 − G2 t − λ1 e1 X1 est toujours inférieure à celle de
1© 1 X1 ª . Proposer une nouvelle méthode de Monte-Carlo permettant
λ1 e + λ2 e2 X2 > t
de calculer p.
Ch.2 Techniques de réduction de variance 27
7. On se place à nouveau dans le cas où (X1 , X2 ) est une vecteur gaussien centrée tel que
Var(X1 ) = Var(X2 ) = 1 et Cov (X1 , X2 ) = ρ, avec |ρ| ≤ 1, montrer que :
p = E (1 − F2 (φ(X1 ))) ,
Nous avons mis en évidence un certain nombre de méthodes pour simuler un variables
aléatoire de loi π donnée. Mais il y a des cas où la loi π n’est pas facilement explicitable.
On rencontre ce problème par exemple pour les lois d’équilibres de systèmes infinis de parti-
cules, l’espace d’état étant un espace fini de cardinal important. La méthode de rejet peut aussi
conduire à des simulations lente si la probabilité de rejet est trop grande. Les méthodes de
Monte-Carlo par chaîne de Markov vont R permettre de pallier à ces problèmes.
L’objectif est toujours de calculer f(x)dπ(x) où π est une loi donnée. On sait que la loi
des grands nombres s’étend aux processus stationnaires ergodiques et donc si (X̄n , n ≥ 0) est
un tel processus, si X̄0 a pour loi π et si f(X̄0 ) est intégrale, alors :
Z
f(X̄0 ) + · · · + f(X̄n ) ¡ ¢
lim = E f(X̄0 ) = f(x)dπ(x) presque sûrement. (3.1)
n!+1 n
Mais comme on ne sait pas simuler X̄0 selon la loi π, on n’a guère avancé.
Considérons cependant l’exemple d’un processus AR(1) :
29
30 PROCESSUS ET ESTIMATION : MONTE-CARLO
La chaîne
¡ de¢ Markov Xxn d’état initial x est facile à simuler et conduit à une approximation
de E f(X̄0 ) . Cet exemple très simple donne l’idée d’une démarche générale. Soit π une loi
donnée, on va chercher à construire une chaîne de Markov qui sera stationnaire et ergodique
si la loi initiale est π et dont les trajectoires, pour tout état initial x, auront un comportement
asymptotique analogue aux trajectoires de la solution stationnaire. En d’autres termes, pour tout
x, les trajectoires issues de x, vérifieront la loi forte des grands nombres :
n Z
1X x
lim f (Xi ) = f(x)dπ(x),
n!+1 n
i=1
Proposition 3.1.1 Soit π un probabilité sur un espace E discret et soit X̄n la chaîne de Markov
de matrice de transition Q et de loi initiale π. Alors, il y a équivalence entre :
1. π est un loi invariante pour Q,
2. la chaîne (X̄n , n ≥ 0) est un processus stationnaire au sens strict.
Démonstration : La fait que 2 implique 1 est clair, puisque a loi de X̄1 (égale à πQ) est
identique à celle de X̄0 (égale à π).
Pour démontrer que 1) implique 2), notons que :
X
P(X̄1 = x1 , . . . , X̄n = xn ) = π(x0 )Q(x0 , x1 )Q(x1 , x2 ) . . . Q(xn-1 , xn )
x0
= (πQ)(x1 )Q(x1 , x2 ) . . . Q(xn-1 , xn )
= π(x1 )Q(x1 , x2 ) . . . Q(xn-1 , xn )
= P(X̄0 = x1 , . . . , X̄n-1 = xn ).
Ch.3 Méthodes de Monte-Carlo et Chaînes de Markov 31
Ceci prouve que les lois de (X̄1 , . . . , X̄n ) et de (X̄0 , . . . , X̄n-1 ) sont identiques. Le processus
(X̄n , n ≥ 0) est donc stationnaire au sens strict.
On va supposer dorénavant que la chaîne de Markov que l’on considère admet une proba-
bilité invariante π. Pour que les trajectoires issues des divers points aient des comportements
analogues, il faut imposer à la matrice de transition Q d’être irréductible, c’est à dire que :
– pour tout x ∈ E et pour tout y ∈ E il existe un entier n > 1 tel que :
Ceci signifie que l’on peut aller (avec un probabilité strictement positive) de tout point de E à
tout point de E en un nombre fini de coups.
On sait alors (voir cours de probabilité de première année) que :
– soit tous les états sont réccurents,
– soit tous les états sont transients.
Théorème 3.1.1 Supposons que Q est irréductible et qu’il existe une probabilité π telle que
πQ = π. Alors :
1. π est l’unique probabilité invariante,
2. tous les états sont réccurents,
3. si (X̄n , n ≥ 0) désigne la chaîne de RMarkov stationnaire au sens strict de loi initiale π,
alors, pour toute fonction f telle que |f(x)|dπ(x) < +∞ :
n Z
1X ¡ ¢
lim f X̄p = f(x)dπ(x) p.s..
n!+1 n
p=1
4. Pour tout point x ∈ E, si l’on note (X̄xn , n ≥ 0) une chaîne de Markov d’état initial x :
n Z
1 X ¡ x¢
lim f X̄p = f(x)dπ(x) p.s..
n!+1 n
p=1
on dit que la probabilité est une probabilité symétrique. Notez qu’une probabilité symétrique
est forcément invariante puisque :
X X X
(πQ)(y) = π(x)Q(x, y) = π(y)Q(y, x) = π(y) Q(y, x) = π(y).
x∈E x∈E x∈E
On dit alors que la chaîne est réversible car la loi de Xn sachant {Xn-1 = x} est égale à la loi de
Xn sachant {Xn+1 = x}.
32 PROCESSUS ET ESTIMATION : MONTE-CARLO
Démonstration : Commençons par montrer que si Q est irréductible et si π est une probabilité
invariante, alors, pour tout x ∈ E, π(x) > 0.
Pour cela remarquons que comme π est une probabilité, il existe un point y de E tel que
π(y) > 0. Considérons maintenant un point arbitraire x de E. Comme Q est irréductible, il
existe un n > 1 tel que Qn (y, x) > 0. On a donc :
X
π(x) = πQn (x) = π(z)Qn (z, x) ≥ π(y)Qn (y, x) > 0.
z
Montrons maintenant que π est l’unique probabilité invariante. Soit π 0 une autre probabilité
invariante. Alors π 00 (x) = min(π(x), π 0 (x)) définit une mesure positive telle que :
π 00 Q ≤ πQ = π.
P P
De même π 00 Q ≤ π 0 et donc π 00 Q ≤ π 00 . Comme de plus, x∈E π 00 Q(x) = 1 = x∈E π 00 (x),
on en déduit que π 00 Q = π 00 .
Par suite ∆ = π − π 00 est une mesure positive de masse totale finie telle que ∆Q = ∆. On
peut alors déduire de la première partie de la démonstration que cette mesure est soit partout
nulle, soit partout strictement positive. Ce qui prouve dans
P le premier cas que
P π ≤ π 0 et dans
le second cas que π 0 ≤ π. Dans les deux cas comme x∈E π(x) = 1 = 0
x∈E π (x), ceci
implique que π = π 0 . Ce qui prouve l’unicité de la probabilité invariante.
Montrons maintenant que tout les états sont récurrents. Commencions par supposer tout les
états transients, alors, pour tout x et y on a :
X
1{Xx = y} < +∞ p.s.,
n
n≥0
En utilisant encore une fois le théorème de Lebesgue, on montre que si π est la probabilité
invariante, alors : X
lim π(x)Qn (x, y) = 0.
n!+1
x∈E
P
Or, comme π est invariante π(y) = x∈E π(x)Qn (x, y) et l’on a vu que π(y) > 0 pour tout état
y, ceci entraîne une contradiction. La chaîne étant irréductible tout les état sont donc récurrents.
On peut donc, utiliser le théorème ergodique du cours de première année pour montrer que,
pour tout x et y :
n
1X © ª = µ(y) p.s.,
lim 1 x
n!+1 n X̄p = y
p=1
La limite µ(y) ne dépend pas du point de départ x et µ est soit nulle, soit une probabilité
satisfaisant µQ = µ.
Montrons que µ ne peut pas
Pnêtre nulle. Pour cela supposons que µ = 0. Alors en appliquant
1
le théorème de Lebesgue à n p=1 1 x© ª , qui reste clairement borné par 1, on obtient :
X̄p = y
n
" n
#
1X p 1X © ª = 0.
lim Q (x, y) = lim E 1 x
n!+1 n n!+1 n X̄p = y
p=1 p=1
Ch.3 Méthodes de Monte-Carlo et Chaînes de Markov 33
Ceci entraine une contradiction puisque π(y) > 0. µ est donc une probabilité et est donc égale
à π, puisque nous avons vu qu’il existe une unique probabilité invariante.
Le résultat annoncé dans le lemme est prouvé pour f = 1{y} . Il est relativement facile de
R
l’étendre à f borné. L’extension au cas |f(x)|π(dx) < +∞ est nettement plus technique aussi
nous l’admettrons.
Si f est bornée par M, alors g = f − M ≥ 0.
Soit (gk , k ≥ 1) une suite de fonction à support fini telle que les gk tendent en croissant
vers g. Alors, d’après le résultat obtenu, on a, pour tout k :
n
1 X ¡ x¢ X
lim gk X̄p = gk (y)π(y).
n!+1 n
p=1 y
Remarque 3.1.4 En pratique, la variance σ̄2 < +∞ est beaucoup plus délicate à estimer que
pour le théorème de la limite centrale classique.
– si Un ≤ α(Xn , Yn ), Xn+1 = Yn ,
– si Un > α(Xn , Yn ), Xn+1 = Xn .
Proposition 3.2.1 Le processus (Xn , n ≥ 0) est une chaîne de Markov de matrice de transition
P avec :
– P(x, y) = Q(x,Py)α(x, y), si x 6= y,P
– P(x, x) = 1 − y6=x P(x, y) = 1 − y6=x Q(x, y)α(x, y).
La probabilité π est invariante par P (πP = π). De plus la chaîne (Xn , n ≥ 0) est réversible.
Démonstration : (Xn , n ≥ 0) est une chaîne de Markov car la loi de Xn+1 ne dépend des
variables aléatoires passées (X1 , . . . , Xn ) que par Xn . Pour calculer la matrice de transition
remarquons que, lorsque x 6= y :
De plus la loi de Yn conditionnellement à Xn = x est donnée par Q(x, y), donc, pour x 6= y :
La chaîne est donc réversible et admet π comme probabilité invariante (voir la remarque 3.1.2).
Remarquons, de plus, que la chaîne issue d’un x0 tel que π(x0 ) > 0, restera dans l’ensemble
E1 = {x ∈ E, π(x) > 0}. On peut donc supposer que E = E1 .
Si P est une matrice de transition irréductible, alors le théorème 3.1.1 s’applique et l’on a :
n
1 X ¡ x¢ X
lim f X̄p = f(x)dπ(x) p.s.,
n!+1 n
p=1 x∈E
P
ce qui fourni un moyen d’approximer x∈E f(x)dπ(x).
Proposition 3.2.2 Si Q satisfait, pour tout x 6= y, Q(x, y) > 0 alors P est irréductible.
36 PROCESSUS ET ESTIMATION : MONTE-CARLO
La preuve est immédiate (noter que l’on suppose que E = E1 = {x ∈ E, π(x) > 0}), car alors,
pour tout x, y, P(x, y) = α(x, y)Q(x, y) > 0, si x 6= y.
La condition imposée sur Q en en fait trop restrictive surtout lorsque l’espace E est grand.
Il faut alors choisir Q de manière à ce que la variable aléatoire Yn de loi Q(x, .) soit facile à
simuler.
Dans l’algorithme de Métropolis original, la matrice Q est choisie symétrique (Q(x, y) =
Q(y, x)). Dans ce cas, il est clair que :
µ ¶
π(y)
α(x, y) = inf 1, .
π(x)
Pour que la chaîne reste le moins souvent possible au même endroit, il faut que α(Xn , Yn ) soit
proche de (ou égal à) 1. Ceci implique que ((XYnn)) ne devienne pas trop petit.
On parle d’algorithme indépendant, lorsque Q(x, y) = q(y). Alors :
µ ¶
π(y)q(x)
α(x, y) = min 1, ,
π(x)q(y)
On voit que le choix de Yn ne dépend pas de Xn mais que son acceptation ou son rejet oui.
Proposition 3.2.3 Soit E discret. Soit Q irréductible symétrique et soit π une probabilité non
constante. Alors la chaîne de Markov construite par l’algorithme de Métropolis est réversible,
irréductible apériodique de loi invariante π.
P P
On peut alors approximer x π(x)f(x) par n1 np=1 f (Xp ) et la vitesse de convergence est
donnée par la proposition 3.1.2.
Démonstration : Il s’agit de prouver que la matrice de transition donnée, pour x 6= y :
Donc : X
P(x, x) = Q(x, x) + Q(x, y)(1 − α(x, y)).
y6=x
D’où, pour x 6= y : · ¸+
π(y)
Q(x, y) 1 − ≤ 0.
π(x)
On end déduit que pour tout x 6= y tel que Q(x, y) > 0, π(y) ≤ π(x). Par symétrie de Q, on
en déduit que π(x) = π(y).
Ch.3 Méthodes de Monte-Carlo et Chaînes de Markov 37
Comme ci dessus, il découle de l’irréductibilité de Q que pour tout x 6= z, il existe une suite
finie (xi , 1 ≤ i ≤ p) d’éléments distincts tels que x1 = x, xp = y et Q(xi , xi+1 ) > 0 pour
1 ≤ i ≤ p − 1. Par suite π(z) = π(xp-1 ) = · · · = π(x2 ) = π(x). La probabilité est donc
constante, ce qui est contradictoire.
3.3 Exercices
Exercice 13 Soit E un espace d’états dénombrable (on peut aussi se placer dans un espace
d’états abstrait au prix d’une extension de la notion de chaîne de Markov) et p et q des densités
de probabilité , avec 0 < p ≤ cq, q étant une densité facilement simulable. On considère alors
une suite Yn , n ≥ 1 de variables aléatoires indépendantes identiquement distribuées selon la loi
q et indépendantes de la variable aléatoire X0 . On définit par récurrence :
Yn+1 avec probabilité p(Yn+1 )
cq(Yn+1 )
Xn+1 =
Xn avec probabilité 1 − p(Yn+1 )
cq(Yn+1 )
1. En considérant une suite Un de variables aléatoires indépendantes identiquement distri-
buées selon la loi uniforme sur [0, 1] écrire Xn+1 sous la forme f(Xn , Un+1 , Yn+1 ) et en
déduire que Xn est une chaîne de Markov.
2. Calculer la probabilité de transition P(i, j) de Xn .
3. Calculer µP pour une probabilité µ et en déduire que la loi de Xn converge vers une
unique probabilité invariante égale à p.
4. Quel rapport y-a-t-il entre cette chaîne et la méthode de rejet classique ?
Exercice 14 Soit P(x, y) un noyau de transition d’une chaîne de Markov sur un espace d’état
fini E. On suppose que :
P(x, y) ≥ αc(y), pour tout y ∈ E, (3.4)
où c est une mesure de probabilité et α > 0.
P
1. Soit µ et µ 0 deux mesures de probabilité sur E. On note |µ − µ 0 | = x∈E |µ(x) − µ 0 (x)|.
Montrer que l’on a :
|µP − µ 0 P| ≤ (1 − α) |µ − µ 0 | .
2. Montrer que s’il existe une mesure de probabilité invariante, elle est forcément unique.
3. Soit (Xn , n ≥ 0) une chaîne de Markov de matrice de transition P. Montrer que quelle
que soit la loi initiale de X0 , la loi de Xn converge vers une unique loi de probabilité
invariante.
4. Montrer que les résultats précédents sont conservés si, il existe l ≥ 1 :
Pl (x, y) ≥ αc(y), pour tout y ∈ E. (3.5)
6. Vérifier que P̃ vérifie l’équation (3.4). Proposer une méthode de simulation approchée
selon la loi µ.
Montrer que (Xn , n ≥ 0) est une chaîne réversible. Expliquer comment l’on peut simuler une
variable aléatoire selon la loi de densité :
1
exp (−βH(x))
Z
1
q(x̄, ȳ) = P (Xi = y|Xj = xj , j 6= i)
n
0 sinon.
2. Expliquer comment simuler une variable aléatoire selon la probabilité de transition
q(x̄, ȳ) lorsque l’on sait simuler selon la loi conditionnelle P (Xi = y|Xj = xj , j 6= i).
3. On cherche à simuler selon la loi :
p(x̄)1{x̄ ∈ A}
.
P(X ∈ A)
39