poly monte carlo x

39
Introduction aux Méthodes de Monte-Carlo L AURE E LIE B ERNARD L APEYRE Septembre 2001

Upload: balde-junayd

Post on 01-Jan-2016

39 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Poly Monte Carlo x

Introduction aux Méthodes deMonte-Carlo

LAURE ELIE BERNARD LAPEYRE

Septembre 2001

Page 2: Poly Monte Carlo x
Page 3: Poly Monte Carlo x

Table des matières

1 Introduction aux méthodes de monte-Carlo 51.1 Simulation de lois uniformes. . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2 Simulation de lois non uniformes. . . . . . . . . . . . . . . . . . . . . . . . . 71.3 Lois particulières. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.4 Lois vectorielles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.5 Méthode de composition ou de mélange. . . . . . . . . . . . . . . . . . . . . 101.6 Méthode de rejet :. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101.7 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2 Techniques de réduction de variance 152.1 Échantillonnage préférentiel ou fonction d’importance. . . . . . . . . . . . . 152.2 Variables de contrôle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.3 Variables antithétiques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.4 Méthode de stratification. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.5 Valeur moyenne ou conditionnement. . . . . . . . . . . . . . . . . . . . . . . 192.6 Suites à discrépance faible. . . . . . . . . . . . . . . . . . . . . . . . . . . . 202.7 Commentaires bibliographiques. . . . . . . . . . . . . . . . . . . . . . . . . 222.8 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3 Méthodes de Monte-Carlo et Chaînes de Markov 293.1 Chaîne de Markov et ergodicité. . . . . . . . . . . . . . . . . . . . . . . . . . 303.2 Algorithme de Hastings-Metropolis. . . . . . . . . . . . . . . . . . . . . . . 343.3 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4 Travaux dirigés 394.1 Travail dirigé 1 : Simulation en Scilab. . . . . . . . . . . . . . . . . . . . . . 394.2 Travail dirigé 2 : Méthodes de réduction de variance. . . . . . . . . . . . . . . 444.3 Travail dirigé 3 : Méthodes de Monte-Carlo par chaîne de Markov. . . . . . . 484.4 Un exemple simple d’utilisation de scilab. . . . . . . . . . . . . . . . . . . . 514.5 Produits de transformations aléatoires. . . . . . . . . . . . . . . . . . . . . . 54

3

Page 4: Poly Monte Carlo x
Page 5: Poly Monte Carlo x

Chapitre 1

Introduction aux méthodes demonte-Carlo

De manière générale, la simulation permet d’étudier et expérimenter un système donné donton connaît les interactions complexes, de mesurer les effets de certains changements dans lesintéractions sur le comportement du système, d’expérimenter de nouvelle situations.

Lorsque dans la simulation intervient un élément aléatoire, on parle de simulation aléatoire.Les exemples d’application sont très variés, citons par exemple :

– la simulation de files d’attente, de réseaux,– la simulation de portefeuilles d’actifs en finance,– la comparaison d’estimateurs en statistique,– la recherche d’état stationnaire en physique, en économie.Remarquons de plus que si l’on cherche une représentation fidèle des phénomènes observés,

on est rapidement confronté à des difficultés dues auxcalculs non explicites. Les techniques desimulation vont nous permettre d’approcher numériquement ces calculs. Nous allons dévelop-per ici les méthodes de Monte-Carloqui ont pour essence l’utilisation d’expériences répétéespour évaluer une quantité, résoudre un système déterministe. Ces méthodes peuvent servir pour :

– le calcul d’intégrale,– la résolution d’équations aux dérivées partielles,– la résolution de système linéaire,– la résolution de problèmes d’optimisation (algorithme du recuit simulé).Considérons par exemple le problème de l’intégration numérique. Il s’agit d’approcher

I =

∫ 10

g(x)dx.

Diverses méthodes classiques de type déterministe existent : rectangles,trapèzes, Simpson etI

est approximé par une somme de la forme

n∑

i=0

wig(xi) avecn∑

i=0

wi = 1 et (xi)0≤i≤n bien choisis dans[0, 1].

La méthode de Monte-Carloconsiste à écrire cette intégrale sous la forme

I = E[g(U)]

où U est une variable aléatoire suivant une loi uniforme sur[0, 1] et à utiliserla loi des grandsnombres: si (Ui)i∈N est une suite de variables aléatoires indépendantes et de loi uniforme sur

5

Page 6: Poly Monte Carlo x

6 PROCESSUS ET ESTIMATION : MONTE-CARLO

[0, 1], alors1

n

n∑

i=1

g(Ui) → E[g(U)] p.s.

En d’autres termes, siu1, u2, u3, . . . , un sont des nombres tirés au hasard dans[0, 1],

1

n(g(u1) + g(u2) + · · ·+ g(un)) est une approximation de

∫ 10

g(x)dx.

Prenons l’exemple plus général d’une intégrale du type

I =

Rdg(x)f(x)dx

où f(x) ≥ 0 et∫

Rd f(x)dx = 1. Alors I = E[g(X)] où X est une variable aléatoire de densitéf

par rapport à la mesure de Lebesgue surRd. Toujours par la loi des grands nombres, si(Xi)i∈N

est une suite de variables indépendantes surRd de loi de densitéf,

1

n

n∑

i=1

g(Xi) → E[g(X)] p.s.

et donc si(x1, x2, . . . , xn) est une réalisation de(X1, X2, . . . , Xn), 1n(g(x1)+g(x2)+· · ·+g(xn))

sera une approximation deI.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σ2Var[g(X1],

√n

σ

[1

n

n∑

i=1

g(Xi) − E(g(X1))

]converge en loi vertG,

où G est une variable aléatoire gaussienne centrée de variance 1. Par conséquent pourn suffi-samment grand, l’écartεn = 1

n

∑ni=1 g(Xi) − E[g(X1)] satisfait

P(

√n εn

σ≤ 1, 96) ∼ P(|G| ≤ 1, 96) = 0, 95

et donc|εn| est avec une quasi-certitude de95% inférieur àσ1;96√n . Par suite un intervalle de

confiance pourE[g(X1)] au niveau0, 95 est[ 1n∑ni=1 g(Xi) − σ1;96√

n , 1n∑ni=1 g(Xi) + σ1;96√

n ].En généralσ ne sera pas calculable et on l’approximera par une méthode de Monte-Carlo

puisque1

n

n∑

i=1

g(Xi)2 −

( 1

n

n∑

i=1

g(Xi))2 → σ2 p.s.

Ce calcul sera mené en même temps que celui de l’espérance.La vitesse de convergence est donc de l’ordre de1√

n . Cette vitesse peut paraître faible enpetite dimension, mais présente l’avantage

– d’être insensible à la dimension,– de ne pas dépendre de la régularité de la fonctiong à intégrer, pourvu queg(X1) soit de

carré intégrable.On remarque cependant le rôle important joué par l’écart-typeσ dans la qualité de l’approxi-mation et on va chercher des méthodes pour réduire cet écart-type.

Il se pose donc les questions suivantes :

Page 7: Poly Monte Carlo x

Ch.1Introduction aux méthodes de monte-Carlo 7

– 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 chapitresuivant des méthodes plus générales qui font appel aux chaînes de Markov.

1.1 Simulation de lois uniformes

On admet que l’on dispose d’un générateur de nombres aléatoires qui est capablede simuler une suite de nombres au hasard compris entre 0 et 1. En d’autres termescette suite représentera une réalisation d’une suite de variables aléatoiresU1, U2, . . . , Unindépendantes et de loi uniforme sur[0, 1]. Le générateur qu’il soit congruentiel, àdéplacement de registre ou mixte aura été testé par des méthodes statistiques. On renvoie auxtransparents pour ce paragraphe.

1.2 Simulation de lois non uniformes

Méthode de la fonction de répartition On suppose que X

est une variable aléatoire réelle de fonction de répartitionF(t) = P(X ≤ t), alors F est une fonction croissante continue à droite. On définit lafonction pseudo-inverse deF sur[0, 1] par

F-1(u) = inf{y ∈ R , F(y) ≥ u}.

Cette fonction pseudo-inverse est bien sûr la fonction réciproque deF lorsqueF est bijective.On a le lemme suivant :

Lemme 1.2.1 Pour toutu ∈ [0, 1] etx ∈ R,

F-1(u) ≤ x ⇐⇒ u ≤ F(x)

Démonstration : L’implication ⇐ est triviale. Pour le sens direct, on remarque que siF-1(u) ≤x, alors par croissance deF pour touty > x, on aF(y) ≥ u. CommeF est continue à droite, onen déduitF(x) ≥ u.

Proposition 1.2.2 Si U suit une loi uniforme sur[0, 1], la variable aléatoireF-1(U) suit uneloi de fonction de répartitionF.

Démonstration : D’après le lemme 1.2.1, on a pour toutx ∈ R,

P[F-1(U) ≤ x] = P[U ≤ F(x)] = F(x).

Par conséquent siF est explicite, on calculeraF-1 et pour générer un échantillonX1, X2, . . . , Xn de variables aléatoires indépendantes et de même loi de fonction derépartitionF, on générera un échantillonU1, U2, . . . , Un de variables de loi uniforme sur[0, 1]

et on poseraXi = F-1(Ui).

Page 8: Poly Monte Carlo x

8 PROCESSUS ET ESTIMATION : MONTE-CARLO

Variable aléatoire exponentielle Si X suit uneloi exponentielle de paramètreλ de densité

f(x) = λ exp(−λx)

surR+, sa fonction de répartition vaut pourx ≥ 0, F(x) = 1 − exp(−λx) et donc siu ∈ [0, 1],

F-1(u) =− log(1 − u)

λ.

SoitU une v.a. de loi uniforme sur[0, 1]. La variableX a donc même loi que- log(1-U)� et aussi

par symétrie que- logU� .

Variable aléatoire prenant un nombre fini de valeurs Supposons queX soit une v.a. prenantun nombre fini de valeursde loi

P(X = xi) = pi 0 ≤ i ≤ n.

Alors

F-1(u) = x0 1u≤p0 +

n∑

i=1

xi 1p0+p1+···+pi-1<u≤p0+p1+···+pi .

Pour simulerX, on procédera de la manière suivante : on tireu au hasard dans[0, 1] et on poseX = xk si, p0 + p1 + · · ·+ pk-1 < u ≤ p0 + p1 + · · ·+ pk.

Par exemple siX est une v.a. de Bernouilli prenant la valeur1 avec la probabilité p et lavaleur0 sinon, on poseraX = 1 si u ≤ p etX = 0 si p < u ≤ 1.

La méthode ci-dessus s’étend bien sûr aux lois discrètes.

1.3 Lois particulières

– Loi binomialeB(N,p) : P(X = k) = CkNpk(1 − p)N-k. La v.a.X peut s’écrire commesomme deN v.a. de Bernouilli indépendantes prenant la valeur1 avec la probabilitép.Une méthode possible consiste à tirerN nombres au hasard dans[0, 1] et à poserX = k

si exactementk nombres sont tombés dans l’intervalle[0, p].

Page 9: Poly Monte Carlo x

Ch.1Introduction aux méthodes de monte-Carlo 9

– Loi géométrique :P(X = k) = p(1 − p)k-1 pourk ∈ N∗.On simule des nombres au hasrd dans[0, 1], et on poseX = k si le kèmenombre tiré estle premier à tomber dans[0, p].

– Loi gaussienne :La fonction de répartition n’est pas explicite ; on peut utiliser des ap-proximations de cette fonction, mais on risque d’accumuler les erreurs.

Une méthode classique directe dite de Box-Muller repose sur la propriété suivante : siθ suitune loi uniforme sur[0, 2π], si R2 suit une loi exponentielle de paramètre1/2 avecθ etR2 sontindépendantes, alorsX = R cosθ et Y = R sinθ sont deux v.a. indépendantes de loi normalecentrée de variance 1.

Par conséquent siU1 et U2 sont indépendantes et de loi uniforme sur[0, 1], le couple((−2 logU1)

12 cos(2πU2), (−2 logU1)

12 sin(2πU2)) est formé de variables gaussiennes indé-

pendantes centrées de variance 1. La simulation de deux v.a. indépendantes de loi uniformeconduit à la simulation de deux v.a. gaussiennes standard indépendantes.

Pour simuler un v.a. gaussienne de moyennem et de varianceσ2, il suffit de poserX =

m + σG, oùG suit une loi normale centrée réduite.

Loi de Poisson de paramètreλ

P(X = n) = exp(−λ)λn

n.

Si (Ti)i≥1 est une suite de variables exponentielles de paramètreλ, alors on peut montrer que lav.a.

X =

1∑n=1

n 1fT1+T2+···+Tn≤1≤T1+T2+···+Tn+1g

suit une loi de Poisson de paramètreλ. Sachant queTi peut se mettre sous la forme− logUi/λ

avecUi de loi uniforme sur[0, 1], on obtient

X =

1∑n=1

n 1fU1U2:::Un≤exp-�≤U1+U2+:::Un+1g.

Pour simulerX, on simule une suite(ui)i≥1 de nombres au hasard dans[0, 1] , on cherche lepremier instantk oùu1u2 . . . uk < exp−λ et on poseX = k − 1.

1.4 Lois vectorielles

– Si les coordonnées sont des v.a. réelles indépendantes, on se ramène au cas univariré ensimulant successivement les coordonnées de manière indépendante.

– Sinon on peut effectuer des conditionnements successifs : par exemple soit(X, Y) uncouple de v.a. de densitéf(x, y) par rapport à la mesure de Lebesgue surR2 ; on peutécriref(x, y) = fX(x) f(y/x) où fX est la densité deX et oùf(./x) est la densité condi-tionnelle deY sachant{X = x}. Pour générer(X, Y), on simuleX selon la loi de densitéfX ; si X = x, on simuleY selon la loi de densitéf(y/x) et indépendamment deX. Ceprocédé peut être itéré pour générer des vecteurs d-dimensionnels.

– La formule de changement de variables est aussi un outil utile pour effectuer des trans-formations.

Page 10: Poly Monte Carlo x

10 PROCESSUS ET ESTIMATION : MONTE-CARLO

1.5 Méthode de composition ou de mélange

On suppose que la v.a.X à simuler a une densitéfX(x)

– soit de la forme∫

g(x, y)dy oùg est une fonction positive,– soit de la forme

∑i∈I pifi(x) oùpi ≥ 0 pour touti ∈ I.

Dans le premier cas, on remarque que puisquefX est une densité,∫ ∫

g(x, y)dxdy = 1 et doncqueg est la densité d’un couple dont la première marginale estX. L’idée est donc de grossirl’espace, de générer un couple(X, Y) de densité g et de retrouver par projectionX. On pourrautiliser la méthode proposée au paragraphe précédent en commencant par générerY de densitéfY(y)

∫g(x, y) dy, puis en générant siY = y, une v.a.X indépendante deY et ayant pour

densité la densité conditionnellef(x/y) = g(x;y)fY(y)

.

Considérons par exemple la densité définie surR+ par fX(x) = n∫11 y-n exp(−xy) dy.

Alors g(x, y) = n 1y∈[1;1[ 1x∈[0;1[ y-n exp(−xy) et fY(y) =∫

g(x, y)dx = 1y∈[1;1[n

yn+1 .

La méthode de la fonction de répartition permet de prouver queY = U1=n où U suit une loiuniforme sur[0, 1]. Remarquant que la loi conditionnellef(x/y) est une loi exponentielle deparamètrey, on conclut que pour générerX :

– on génèreY = U1=n,– puis siY = y, on génèreX = − 1

y logV où U et V sont deux variables indépendantes deloi uniforme sur[0, 1].

Dans le cas où la v.a.X à simuler a une densité de la forme∑i∈I pifi(x) où pi ≥ 0 pour

tout i ∈ I, alorsX est à nouveau la première marginale d’un couple(X, Y) dont la loi est définiede la manière suivante :Y a une loi discrète :∀i ∈ I, P(Y = i) = pi ; et la loi conditionnelledeX sachant que{Y = i} a pour densitéfi. Pour générerX, on procède comme ci-dessus encommençant par générer le couple(X, Y) ; cette méthode est intéressante si les lois de densitéfi sont faciles à simuler.

1.6 Méthode de rejet :

On veut simuler une v.a. de loi de densitéf (par exemple par rapport à lemesure de Le-besgues surRd), et on suppose qu’il exixte une loi de densitég simulable facilement telle que

∀x ∈ Rd, f(x) ≤ kg(x)

oùk est une constante réelle. On poseα(x) = f(x)kg(x) .

Proposition 1.6.1 Générons un couple(X1, U1) de v.a. indépendantes telles queY1 une loi dedensitég etU1 suive une loi uniforme sur[0, 1]. SiU1 ≤ α(X1), posonsX = X1.

Sinon rejetonsX1 et recommençons en générant une suite(Xn, Un)n≥2 de v.a.indépendantes de même loi que(X1, U1) jusqu’à l’instantp où Up ≤ α(Xp). Posons alorsX = Xp.

La v.a.X ainsi simulée a pour densitéf.

Remarque 1.6.21) La probabilité d’acceptation à l’instant 1 de la v.a.X1 vaut

p1 = P(U1 ≤ α(X1)) =

∫P(U1 ≤ α(x)) PX1(dx) =

∫a(x)g(x)dx =

∫1

kf(x)dx =

1

k

par indépendance deU1 etX1.Si on ne veut pas trop de rejets lors de la simulation deX, il faut que cette probabilité

d’acceptationp1 soit la plus grande possible et donc quek soit le plus petit possible. Commefetg sont des densités et quef ≤ kg, le réelk est en fait nécessairement≥ 1.

Page 11: Poly Monte Carlo x

Ch.1Introduction aux méthodes de monte-Carlo 11

Remarquons de plus que les rejets seront limités sif(x)k g(x) est proche de 1 et donc si la

fonction g a une allure similaire à celle def.

2) L’algorithme ci-dessus est encore valable si la v.a.X à simuler a une densitéf par rapport à une mesure positiveµ quelconque majorée parkg oùg est la densité par rapportൠd’une variableY facile à simuler. Ceci se traduit par

P(X ∈ A) =

Af(x)µ(dx) ≤

Akg(x)µ(dx) = kP(Y ∈ A).

Si la v.a.X a une loi portée par un ensemble discretE, on peut choisir pourµ la mesure decomptage surE et la méthode de rejet est aussi valable pour des lois discrètes,f(x) étant dansce cas égal àP(X = x).

Démonstration : Remarquons tout d’abord qu’au bout d’un nombre d’essais fini, la relationUp ≤ α(Xp) sera vérifiée ; en effet

P(∀p ∈ N∗, X 6= Xp) = limN!1P(

p≤NX 6= Xp) = lim

N!1P(⋂

p≤NUp ≤ α(Xp)),

puis

P(∀p ∈ N∗, X 6= Xp) = limN!1P(U1 ≤ α(X1))

N = limN!1(p1)

N = limN!1(

1

k)N = 0,

puisque les v.a.(Xp, Up) sont indépendantes et de même loi. Par conséquent

P[X ∈ A] =∑

n∈N∗P[X = Xn, X ∈ A]

=∑

n∈N∗P[

p≤n-1Up ≤ α(Xp)

⋂Un ≤ α(Xn)

⋂Xn ∈ A]

=∑

n∈N∗(1 − p1)

n-1P[U1 ≤ α(X1) ∩ X1 ∈ A]

= p1P[U1 ≤ α(X1) ∩ X1 ∈ A]

= P[X1 ∈ A/{U1 ≤ α(X1)}].

La loi de deX est donc la loi deX1 conditionnée par l’ensemble d’acceptation

{U1 ≤ α(X1)}.

Elle satisfait par indépendance deX1 etU1,

P [ X ∈ A ] = p1

AP(U1 ≤ α(x)) PX1(dx) =

1

k

Aa(x)g(x)µ(dx) =

Af(x)dx.

Page 12: Poly Monte Carlo x

12 PROCESSUS ET ESTIMATION : MONTE-CARLO

1.7 Exercices

Exercice 1 Soit X une variable aléatoire telle queE(X2

)< +∞. Soit (X1, . . . , Xn) n-tirages

“Monte–Carlo” indépendants selon la loi deX. On approximeE(X) par :

1

n(X1 + · · ·+ Xn) .

Expliquer comment on peut construire un intervalle de confiance à95% pour notre estimation.

Exercice 2 SoitX une variable aléatoire de loi admettant comme fonction de répartition :

F(x) = 1 − exp(−αx�

), pourx > 0,

0 sinon. Expliciter la densité de la loi deX et proposer une méthode de simulation de cette loi.

Exercice 3 SoitX une loi géométrique de paramètrep :

P(X = k) = p (1 − p)k-1

, k ≥ 1.

1. Rappeler la méthode classique de simulation à l’aide de tirages à pile ou face.

2. Donner une autre méthode de simulation de cette loi utilisant la fonction de répartition.

3. Comment comparer l’efficacité des2 méthodes ?

Exercice 4 Soit X et Y deux variables aléatoires indépendantes suivant des lois gaussiennescentrées réduites.

1. Soit (R,Θ) les coordonnées polaires du point(X, Y). Montrer queR et Θ sont indépen-dantes et calculer leur loi.

2. Montrer que siU1 et U2 sont deux variables aléatoires indépendantes suivant une loiuniforme sur[0, 1], alors le couple(X1, X2) avec :

X1 =√

−2 log(U1) cos(2πU2) etX2 =√

−2 log(U1) sin(2πU2),

est un couple de variables aléatoires gaussiennes centrées réduites indépendantes.

3. On poseV1 = 2U1 − 1, V2 = 2U2 − 1 et R2 = V21 + V22 . On accepte ces tirages sousréserve queR < 1 et l’on fait de nouveau tirage siR ≥ 1. Quelle est la loi du couple(V1, V2) dans ces conditions (après rejet) ? En déduire que si l’on pose :

X1 = V1

√−2 log(R2)

R2etX2 = V2

√−2 log(R2)

R2,

X1 etX2 sont deux variables aléatoires gaussiennes centrées réduites indépendantes.

4. Proposer un algorithme de rejet permettant de simuler une variable aléatoire gaussienneà partir de la loi double exponentielle de densité(λ/2) exp(−λ|x|).

Exercice 5 SoitX une variable aléatoire réelle de fonction de répartitionF. On supposera cettefonction de répartition inversible et l’on noteF-1 son inverse.

1. Comment simuler la loi deX conditionnellement àX > m à l’aide d’une méthode derejet ? Évaluer l’efficacité de la méthode ? Que se passe t’il, en particulier, sim devienttrès grand ?

Page 13: Poly Monte Carlo x

Ch.1Introduction aux méthodes de monte-Carlo 13

2. On poseZ, si U est une variable aléatoire uniforme sur[0, 1] :

Z = F-1 (F(m) + (1 − F(m))U) .

Calculer la fonction de répartition deZ et en déduire une méthode de simulation deX

conditionnellement àX > m. Comparer l’efficacité de cette méthode à la méthode durejet.

3. Généraliser la méthode précédente au cas où l’on cherche à simulerX conditionnellementàa < X < b.

4. On suppose maintenant que l’on cherche à simulerX, avec loi normale de moyenneµ etde varianceσ2, conditionnellement àX > m. Montrer que l’on peut se ramener au casµ = 0, σ2 = 1 etm arbitraire.

5. Proposer une méthode du rejet basée sur la loi exponentielle translatée de densité donnéeparθe-�(x-m)1{x > m}. Comment choisir le paramètreθ ?

Page 14: Poly Monte Carlo x

14 PROCESSUS ET ESTIMATION : MONTE-CARLO

Page 15: Poly Monte Carlo x

Chapitre 2

Techniques de réduction de variance

Nous venons de voir que la vitesse de convergence de la méthode de Monte-Carlo est del’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 donnerune 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éthodesqui sont applicables dans pratiquement tous les cas de simulations.

2.1 Échantillonnage préférentiel ou fonction d’importance

Supposons que l’on cherche à calculer :

E(g(X))

et que la loi deX soitf(x)dx (surR pour fixer les idées). La quantité que l’on cherche à évaluervaut donc :

E(g(X)) =

Rg(x)f(x)dx.

Soit maintenant,f la densité d’une autre loi telle quef > 0 et∫

R f(x)dx = 1, il est clair queE(g(X)) peut aussi s’écrire :

E(g(X)) =

R

g(x)f(x)

f(x)f(x)dx.

Cela signifie queE(g(X)) = E(g(Y)f(Y)f(Y)

), si Y suit la loi f(x)dx sousP. On a donc une autre

méthode de calcul deE(g(X)) en utilisantn tirages deY, Y1, . . . , Yn et en approximantE(g(X))

par :1

n

(g(Y1)f(Y1)

f(Y1)+ · · ·+ g(Yn)f(Yn)

f(Yn)

).

Si l’on poseZ = g(Y)f(Y)/f(Y), on aura amélioré l’algorithme si Var(Z) < Var(g(X)). Il estfacile de calculer la variance deZ :

Var(Z) = E(Z2) − E(Z)2 =

R

g2(x)f2(x)

f(x)dx − E(g(X))2.

15

Page 16: Poly Monte Carlo x

16 PROCESSUS ET ESTIMATION : MONTE-CARLO

Si g(x) > 0, on peut vérifier que, en prenantf(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îtE(g(X)), et c’est justement la quantité que l’on cherche à calculer.

Cela permet cependant de justifier l’heuristique suivante : prendref(x) aussi proche quepossible 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 sontlargement contradictoires et rendent cet exercice souvent délicat.

Donnons un exemple simple pour fixer les idées. Supposons que l’on cherche à calculer :∫ 10

cos(πx/2)dx.

Cela correspond àg(x) = cos(x) et f(x) = 1{[0, 1]}(x). On peut alors approcher lecospar

un polynôme du second degré. Comme lecosest pair, vaut0 en x = 1 et 1 en x = 0, il estnaturel de prendref(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 facteur100.

Montrons sur le cas du calcul d’un “put” comment l’on peut appliquer cette méthode. Plusprécisément, nous allons chercher à calculer :

P = E((

1 − e�G)+

).

La fonctionex−1 est proche dex lorsquex n’est pas trop grand. Cela suggère de mettreP sousla forme :

P =

R

(1 − e�x

)+

β|x|β|x|e-x

2=2 dx√2π

.

Le changement de variable,x =√

y surR+ et x = −√

y surR-, permet alors d’écrireP sousla forme :

P =

∫+10

(1 − e�

√y)+ +

(1 − e-�

√y)+√

2π√

ye-y=2

dy

2.

Si l’on note quee-x=2dx/2 est la loi d’une variable aléatoireY exponentielle de paramètre1/2.On peut encore écrire :

P = E

(1 − e�

√Y)+

+(1 − e-�

√Y)+√

2π√

Y

,

On peut alors comparer avec une méthode directe et on constate une amélioration sensible de laprécision du calcul : pour10000 tirages l’erreur relative passe de6% dans la méthode initiale à1% grâce à cette méthode d’échantillonnage préférentiel.

2.2 Variables de contrôle

Dans sa version la plus simple, il s’agit d’écrireE(f(X)) sous la forme :

E(f(X)) = E(f(X) − h(X)) + E(h(X)),

avecE(h(X)) qui peut se calculer explicitement et Var(f(X) − h(X)) sensiblement plus petitque Var(f(X)). On utilise alors une méthode de Monte-Carlo pour évaluerE(f(X) − h(X)) etle calcul direct pourE(h(X)).

Page 17: Poly Monte Carlo x

Ch.2Techniques de réduction de variance 17

Commençons par donner un exemple simple. Supposons que l’on veuille calculer∫10 exdx.

Comme au voisinage de0, ex ≈ 1 + x, on peut écrire :

∫ 10

exdx =

∫ 10(ex − 1 − x)dx +

3

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 :

C − P = E(e�G − K

)= e�

2=2 − K.

L’idée est alors d’écrireC = P + e�2=2 − K et de réaliser une méthode de Monte-Carlo pourP.

On a déjà vu que l’erreur de la méthode est alors très sensiblement inférieure.

2.3 Variables antithétiques

Supposons que l’on cherche à calculer :

I =

∫ 10

f(x)dx.

Commex → 1 − x laisse invariante la mesuredx, on a aussi :

I =1

2

∫ 10(f(x) + f(1 − x))dx.

On peut donc calculerI de la façon suivante. On tiren variables aléatoiresU1, . . . , Un suivantsune loi uniforme sur[0, 1] et indépendantes, et on approximeI par :

I2n = 1n

(12(f(U1) + f(1 − U1)) + · · ·+ 1

2(f(Un) + f(1 − Un)))

= 12n (f(U1) + f(1 − U1) + · · ·+ f(Un) + f(1 − Un)) .

Lorsque l’on compare cette méthode à une méthode de Monte-Carlo directe à l’issue de2n

tirages, on peut montrer que si la fonctionf est continue monotone la qualité de l’approximations’améliore.

On peut généraliser ce genre d’idée en dimension supérieure et à d’autres transformationspré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 deG est identique à celle de−G et réduire la varianced’un coefficient proche de2.

2.4 Méthode de stratification

C’est une méthode bien connue des statisticiens et souvent utilisée dans les sondages (voir[Coc77]). Supposons que l’on cherche à calculerI, avec :

I = E(g(X)) =

Rdg(x)f(x)dx.

oùX est une variable aléatoire à valeur dansRd suivant la loif(x)dx.

Page 18: Poly Monte Carlo x

18 PROCESSUS ET ESTIMATION : MONTE-CARLO

On se donne une partition(Di, 1 ≤ i ≤ m) de Rd. On décompose alorsI de la façonsuivante :

I =

m∑

i=1

E(1{X ∈ Di}g(X)) =

m∑

i=1

E(g(X)|X ∈ Di)P(X ∈ Di).

Lorsque que l’on connaît les nombrespi = P(X ∈ Di), on peut utiliser une méthode deMonte-Carlo pour estimer les intégralesIi = E(g(X)|X ∈ Di). Supposons que l’on approximel’intégraleIi par Ii à l’aide deni tirages indépendants, la variance de l’erreur d’approximation

est donnée par�2ini

, si l’on noteσ2i = Var(g(X)|X ∈ Di). On approxime ensuiteI par I avec :

I =

m∑

i=1

piIi.

Les échantillons servant à obtenir les estimateursIi étant supposés indépendants on montrefacilement que la variance de l’estimateurI vaut :

m∑

i=1

p2iσ2ini

.

Il est alors naturel de minimiser cette erreur pour un nombre total de tirages fixé∑mi=1 ni = n.

On peut vérifier que lesni qui minimise la variance deI sont donnés par :

ni = npiσi∑mi=1 piσi

.

Le minimum de la variance deI vaut alors :

1

n

(m∑

i=1

piσi

)2

.

Il est inférieur à la variance que l’on obtiendrait avecn tirages aléatoires par la méthode deMonte-Carlo classique. En effet, cette variance vaut :

Var(g(X)) = E(g(X)2

)− E (g(X))

2

=

m∑

i=1

piE(g2(X)|X ∈ Di

)−

(m∑

i=1

piE (g(X)|X ∈ Di)

)2

.

D’où en faisant intervenir les variances conditionnellesσi :

Var(g(X)) =

m∑

i=1

piVar(g(X)|X ∈ Di) +

m∑

i=1

piE (g(X)|X ∈ Di)2

{m∑

i=1

piE (g(X)|X ∈ Di)

}2

.

On utilise alors, deux fois, l’inégalité de convexité pourx2, (∑mi=1 piai)

2 ≤ ∑mi=1 pia

2i si∑m

i=1 pi = 1, pour montrer que :

Var(g(X)) ≥m∑

i=1

piVar(g(X)|X ∈ Di) ≥(

m∑

i=1

piσi

)2

.

Page 19: Poly Monte Carlo x

Ch.2Techniques de réduction de variance 19

Ceci prouve que, sous réserve que l’on fasse une affectation optimale des tirages, on peut obtenirpar stratification un estimateur de variance moindre. Notons cependant que l’on ne peut querarement calculer lesσi, ce qui limite la portée de cette technique (mais on peut toujours lesestimer à l’aide d’un premier tirage de Monte-Carlo).

Notons aussi qu’il est possible d’obtenir un estimateur de variance supérieure à l’estimateurinitial 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 exemplela stratégie qui affecte un nombre de points proportionnel à la probabilité du domaine :

ni = npi.

On obtient alors un estimateur de variance égale à :

1

n

m∑

i=1

piσ2i .

Or nous venons de voir que∑mi=1 piσ

2i est un majorant de Var(g(X)). Cette stratégie d’alloca-

tion est parfois utilisée lorsque l’on sait expliciter les probabilitéspi. Pour des considérationsapprofondies sur ces techniques on pourra consulter [Coc77].

2.5 Valeur moyenne ou conditionnement

Supposons que l’on cherche à calculer :

E(g(X, Y)) =

∫g(x, y)f(x, y)dxdy,

où f(x, y)dxdy est la loi du couple(X, Y). Si l’on pose :

h(x) =1

m(x)

∫g(x, y)f(x, y)dy,

avecm(x) =∫

f(x, y)dy, il est facile de voir queE(g(X, Y)) = E(h(X)). En effet la loi deXestm(x)dx, et donc :

E(h(X)) =

∫m(x)h(x)dx =

∫dx

∫g(x, y)f(x, y)dy = E(g(X, Y)).

On peut retrouver ce résultat en notant que :

E (g(X, Y)|X) = h(X).

Cette interprétation comme une espérance conditionnelle permet, de plus, de prouver que :

Var(h(X)) ≤ Var(g(X, Y)).

Si l’on peut calculer explicitement la fonctionh(x), il est préférable d’utiliser une méthode deMonte-Carlo pourh(X).

Page 20: Poly Monte Carlo x

20 PROCESSUS ET ESTIMATION : MONTE-CARLO

2.6 Suites à discrépance faible

Une autre façon d’améliorer les méthodes de type Monte-Carlo est de renoncer au caractèrealéatoire des tirages et de tirer les points de façon “plus ordonnée”. On cherche à trouver dessuites(xi, i ≥ 0) déterministes permettant d’approximer des intégrales par une formule de laforme : ∫

[0;1]df(x)dx ≈ lim

n!+1 1

n(f(x1) + · · ·+ f(xn)).

On parle dans ce cas de méthode dequasi Monte-Carlo. On peut trouver des suites, telles quela vitesse de convergence de l’approximation soit de l’ordre deK

log(n)dn , mais à condition que

la fonctionf possède une certaine régularité, ce qui est sensiblement meilleur qu’une méthodede 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éssuivantes (équivalentes) est vérifiée. (Six ety sont deux points de[0, 1]d, x ≤ y si et seulementsi par définitionxi ≤ yi, pour tout1 ≤ i ≤ d.)

– Pour touty = (y1, · · · , yd) ∈ [0, 1]d :

limn!+1 1

n

n∑

k=1

1{xk ∈ [0, y]} =

d∏

i=1

yi = Volume([0, y]).

où [0, y] = {z ∈ [0, 1]d, z ≤ y}.

– D∗n(x) = sup

y∈[0;1]d

∣∣∣∣∣1

n

n∑

k=1

1{xk ∈ [0, y]} − Volume([0, y])

∣∣∣∣∣ → 0.

– Pour toute fonctionf Riemann intégrable (c’est à dire bornée etdx-ps continue) définiesur[0, 1]d :

limn!+1 1

n

n∑

k=1

f(xk) =

[0;1]df(x)dx.

D∗n(x) est appelé ladiscrépance à l’originede la suitex.

Remarque 2.6.2 – Si (Un)n≥1 désigne une suite de variables aléatoires indépendantes etde 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 :

presque sûrement limn

√2n

log(logn)D∗n(U) = 1.

– On dit qu’une suite està discrépance faiblesi sa discrépance est asymptotiquementmeilleure que celle d’une suite aléatoire. On peut prouver que la discrépance d’une suiteinfinie vérifie forcément :

D∗n > Cd

(logn)max(d2 ;1)

npour un nombre infini de valeurs den,

oùCd est une constante ne dépendant que ded.– On connaît de nombreuses suites à discrépance faibled-dimensionnelles. Les meilleures

discrépances asymptotiques connues sont de l’ordre de((logn)d

)/ (n). Ces suites ont

une discrépance quasi optimale vu la remarque précédente.

Page 21: Poly Monte Carlo x

Ch.2Techniques de réduction de variance 21

Ces suites sont asymptotiquement meilleures qu’une suite de nombres aléatoires. Cepen-dant, dans la pratique, c’est à dire pour des valeurs den entre103 et106, les discrépancesdes meilleures suites connues ne sont pas aussi bonnes que les résultats asymptotiquespourraient 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 fournissentdes 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 presquetoujours très éloignée de la valeur réelle de l’erreur et que la variation d’une fonction est unequantité 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 ausens de Hardy et Krause de variationV(g), alors :

∀n ≥ 1

∣∣∣∣∣1

N

N∑

k=1

g(xk) − E(X)

∣∣∣∣∣ ≤ V(g)D∗N(x).

Remarque 2.6.4La définition générale d’une fonction à variation finie au sens de Hardy andKrause est relativement compliquée (voir [Nei92]). Cependant, en dimension1, cette notioncoïncide avec celle de fonction à variation finie classique. De plus, en dimensiond, si g estdfois continuement différentiable, la variationV(g) est donnée par :

V(g) =

d∑

k=1

1≤i1<···<ik≤d

[0;1]d

∣∣∣∣∂kg(x)

∂xi1 · · ·∂xik

∣∣∣∣dx.

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(x1, . . . , xd) > λ} avecf régulière)

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 lesplus utilisées en pratique. Il y en a beaucoup d’autres (voir [Nei92] pour d’autres exemples).

Suites de Van Der Corput Soitp un entier strictement supérieur à1. Soitn un entier positifon noteraa0, a1, . . . , ar sa décompositionp-adique unique vérifiant :

n = a0 + · · ·+ arpr,

avec0 ≤ ai < p pour0 ≤ i ≤ r, etar > 0. La suite de Van Der Corput en basep est donnéepar :

φp(n) =a0

p+ · · ·+ ar

pr+1.

On peut comprendre la définition deφp(n) de la façon suivante. On écrit le nombren en basep :

n = arar-1 . . . a1a0, alorsφp(n) = 0, a0a1 . . . ar,

où il faut comprendre la notation0, a0a1 . . . ar comme étant la décompositionp−adique d’unnombre.

Page 22: Poly Monte Carlo x

22 PROCESSUS ET ESTIMATION : MONTE-CARLO

Suites de Halton Les suites de Halton sont des généralisations multidimensionnelles dessuites de Van Der Corput. Soitp1, · · · , pd lesd premiers nombres premiers. La suite de Haltonest définie par, sin est un entier :

xdn = (φp1(n), · · · , φpd(n)) (2.1)

oùφpi(n) est la suite de Van Der Corput en basepi.La discrépance de la suite de Haltond−dimensionnelle est majorée par :

D∗n ≤

1

n

d∏

i=1

pi log(pin)

log(pi).

Suite de Faure La suite de Faure en dimensiond est définie de la façon suivante. Soitr unentier premier impair plus grand qued (on peut prendre, par exemple,r = 11 dans le cas oùd = 8). On définit alors une applicationT opérant sur l’ensemble desx s’écrivant sous la forme :

x =∑

k≥0

ak

rk+1,

la somme étant une somme finie. Pour un telx on pose alors :

T(x) =∑

k≥0

bk

rk+1

avecbk =∑i≥kCikai mod r. LesCik étant les coefficients du binône. On peut alors définir la

suite de Faure de la façon suivante :

xn =(φr(n − 1), T(φr(n − 1)), · · · , Td-1(φr(n − 1))

). (2.2)

Cette suite admet une discrépance majorée parClog(n)dn .

Translations irrationnelles du tore Ces suites sont données sous la forme :

xn = ({nαi})1≤i≤d, (2.3)

où {x} est la partie fractionnaire du nombrex et α = (α1, · · · , αd) avec(1, α1, · · · , αd) unefamille libre deQ. On peut choisir, par exemple,α =

(√p1, · · · ,

√pd

). On peut prouver, pour

cette suite, qu’elle a une discrépance eno( 1n1-�

)pour toutε > 0. Cette suite est en particulier

utilisée dans le logiciel commercialNAG.

2.7 Commentaires bibliographiques

Le lecteur souhaitant conforter ses connaissance en probabilité pourra consulter [Bou86].De nombreux ouvrages élémentaires traitant des méthodes de Monte-Carlo sont disponibles : onpeut citer [HH64],[KW86], [Rub81], [Rip87] and [BFS87]. L’ouvrage de Luc Devroye concer-nant la simulation des variables aléatoires [Dev86] est une référence indispensable. Les suitesà discrépance faible sont étudiées en détail dans [KN74] et [Nei92]. On trouvera aussi dans[Nei92] de très nombreuses références bibliographiques). Le lecteur cherchant des algorithmeset des programmes permettant de simuler des variables aléatoires uniformes pourra consulter[L’E90],[PTFV92].

Page 23: Poly Monte Carlo x

Ch.2Techniques de réduction de variance 23

2.8 Exercices

Exercice 6 Echantillonnage préférentiel :On veut calculer par une méthode de Monte-Carlo :

I = E(g(X)),

X étant une variable aléatoire réelle de loif(x)dx.

1. Soit f(x)dx la loi d’une variable aléatoireY. On supposera quef(x) > 0 pour toutx ∈ R.Montrer que l’on peut écrireI sous la formeE (g(Y)), g étant une fonction que l’onexplicitera.

2. Calculer la variance de l’estimateur Monte-Carlo construit à partir deg(Y). Donner unintervalle de confiance au niveau95% pourI.

3. Montrer que lorsqueg est positive, on peut trouver une densitéf(x) qui annule la variancede l’estimateur. Commentaires.

4. Etudier le cas oùg n’est pas forcément positive.

Exercice 7 1. Proposer une méthode de fonction d’importance pour le calcul de

I = E(

1{ξ > 0} expβξ)

,

si ξ est une gaussienne centrée réduite etβ = 5.

2. Proposer une méthode de variable de contrôle pour cette même intégrale.

3. Amélliorer votre estimateur à l’aide d’une technique de variables antithétiques.

Exercice 8 Le but de cet exercice est de prouver que la méthode des variables antithétiquesréduit bien la variance lorsque la fonction est monotone en chacune de ses variables.

1. On suppose quef etg sont deux fonctions croissantes bornées deR dansR. Montrez que,si X etY sont deux variables aléatoires réelles, on a :

E (f(X)g(X)) + E (f(Y)g(Y)) ≥ E (f(X)g(Y)) + E (f(Y)g(X)) .

En déduire que siX si est une variable aléatoire réelle :

E (f(X)g(X)) ≥ E (f(X)) E (g(X)) .

2. Montrez que, siX1, . . . , Xn sontn variables aléatoires indépendantes :

E (f(X1, . . . , Xn)g(X1, . . . , Xn)|Xn) = φ(Xn),

φ étant une fonction que l’on explicitera sous forme d’une espérance.

3. En déduire que, sif etg sont deux fonctions croissantes en chacun de leur arguments :

E (f(X1, . . . , Xn)g(X1, . . . , Xn)) ≥ E (f(X1, . . . , Xn)) E (g(X1, . . . , Xn)) .

4. Soit h une fonction de[0, 1]n dans R monotone en chacun de ses arguments, soitU1, . . . , 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.

Page 24: Poly Monte Carlo x

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 deu(n+1) − u(n) et en déduire quelimn!+1 u(n+1) − u(n) = 0.

2. Montrer que l’estimateur :

n-1∑

i=1

(u(i+1) − u(i)

)h(u(i+1) − u(i))

converge vers∫10 h(u)du.

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éeC, montrer que l’erreurεn peut être majorée par :

C

n∑

i=0

(u(i+1) − u(i)

)2,

avecu(0) = 0 etu(n+1) = 1. En déduire queεn tends vers0 à la vitesse1/n.

Exercice 10 Recyclage dans la méthode du rejetOn veut évaluer par une méthode de Monte Carlo :

Rf(x)p(x)dx,

en simulant unn-échantillonX1, . . . , Xn de densitép par la méthode du rejet. On aura doncdû simuler un nombre aléatoireN de variable aléatoire de densitéq. Parmis celle ci on noteraZ1, . . . , ZN-n les v.a.Y qui ont été rejetées, c’est à dire telles que :

p(Yi) ≤ MUiq(Yi).

1. Quelle est la loi deN ?

2. Quelle est la loi deZ1, . . . , ZN-n conditionnellement àN = n + p ?

3. Montrez que :

1

N

(n∑

i=1

f(Xi) +

N-n∑

i=1

(M − 1)p(Zi)

(Mq − p)(Zi)f(Zi)

)

est un estimateur sans biais deE (f(X1)).

Exercice 11 On considère un vecteur gaussien composé de deux variables aléatoires(G1, G2).On supposeG1 etG2 sont deux variables aléatoires gaussiennes centrées et de variance1 et quela covarianceCov (G1, G2) = ρ vérifie −1 < ρ < 1. Le but de ce problème est de construirediverses méthodes de Monte-Carlo pour le calcul de :

E = E[(

C1e�1G1 + C2e

�2G2 − K)+

],

C1, C2, λ1, λ2, K sont des constantes réelles et positives.

1. Soitg1, g2 deux gaussiennes centrées réduitesindépendantes. Identifier un jeu de valeursde(α,β1, β2) assurant que la loi du couple(g1+αg2, β1g1+β2g2) est identique à cellede(G1, G2). En déduire une méthode de simulation selon la loi du couple(G1, G2)

Page 25: Poly Monte Carlo x

Ch.2Techniques de réduction de variance 25

2. Décrire une méthode de Monte-Carlo adapté au calcul deE et expliquer comment l’onpeut estimer uniquement à partir des simulations l’erreur de la méthode.

3. CalculerE(e�1G1+�2G2

), σ1 etσ2 étant deux nombres réels.

4. Expliciter E(C1e

�1G1 + C2e�2G2

)et proposer une technique de variables de contrôle

visant à réduire la variance de la méthode de Monte-Carlo. Comment peut on vérifier surles simulations que cette nouvelle méthode réduit effectivement la variance ?

5. On pose :X =

(C1e

�1G1 + C2e�2G2 − K

)+ ,

Y1 = e�1G1 etY2 = e�1G1. On cherche à identifier la meilleure variable de contrôle de laformeµ1Y1 + µ2Y2. Calculer explicitement la matrice de variance covariance du couple(Y1, Y2).

En supposant que l’on connait explicitementCov (X, Y1) et Cov (X, Y2), trouver uncouple(µ01, µ

02) permettant de minimiser :

Var(X − µ1Y1 − µ2Y2) .

et proposer une méthode de réduction de variance meilleure que celle proposée à la ques-tion précédente. Comment peut on estimerCov (X, Y1) etCov (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 etf une fonction positive, on a :

E(e-�g1-

12�2f(g1 + µ, g2)

)= E (f(g1, g2)) .

En déduire, en utilisant le résultat de la question 1, que :

E(e-�G1-

12�2f(G1 + µ1, G2 + µ2)

)= E (f(G1, G2)) ,

µ1 etµ2 étant des constantes que l’on calculera en fonction deµ etρ.

7. On noteX� pour :

X� = e-�G1-12�2φ(G1 + µ1, G2 + µ2),

avec :φ(x, y) =

(C1e

�1x + C2e�2y − K

)+ .

Montrer queE(X�) = E(X).Utiliser ce résultat pour proposer une nouvelle méthode decalcul deE. Prouver que :

Var(X�) = E(e-�G1+

12�2φ(G1, G2)

2)

− E (X)2,

et en déduire que :

dVar(X�)dµ

= E((−G1 + µ)e-�G1+

12�2φ(G1, G2)

2)

.

8. On suppose queC2 = 0, montrer que siµ ≤ d1 = 1�1

log(KC1

), dVar(X�)

d� ≤ 0. Comment

utiliser ce résultat pour choisir unµ permettant de réduire la variance ?

Page 26: Poly Monte Carlo x

26 PROCESSUS ET ESTIMATION : MONTE-CARLO

Exercice 12 Le but de cet exercice est d’étudier diverses méthodes permettant d’évaluerp =

P(Z > t) , oùZ est une variable aléatoire de la forme :

Z = λ1e�1X1 + λ2e

�2X2,

(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 queVar(X1) = Var(X2) = 1 et Cov (X1, X2) = ρ, avec|ρ| ≤ 1. Expliquer comment l’onpeut simuler des variables aléatoires selon la loi deZ. Décrire une méthode de Monte-Carlo permettant d’estimerp ainsi que de donner une idée de l’erreur que l’on commet.

2. On suppose que la valeur det est telle que l’on cherche à estimer une valeur dep del’ordre de10-7. Donner un ordre de grandeur du nombre de tirages à effectuer dans uneméthode de Monte-Carlo standard pour pouvoir affirmer, avec une confiance proche de1,que :

1

2× 10-7 ≤ p ≤ 3

2× 10-7.

3. On suppose queX1 et X2 sont deux gaussiennes centrées de variance1 indépendantes.Soitm un nombre réel. En utilisant une technique de fonctions d’importance montrer quep peut s’écrire sous la forme :

p = E(

φ(X1, X2)1{λ1e

�1(X1+m) + λ2e�2(X2+m) ≥ t

})

,

φ étant une fonction que l’on précisera. Proposer un choix dem assurant que :

P(λ1e�1(X1+m) + λ2e

�2(X2+m) ≥ t) ≥ 1

4.

Proposer une nouvelle méthode de Monte-Carlo permettant d’évaluerp. 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éspX(x)

etpY(y). Montrer que, sif est une fonction bornée :

E (f(X, Y)) = E(h(Y))

avech(y) = E(f(X, y)). Montrer que

E(f2(X, Y)

)= E(g(Y)),

g étant une fonction que l’on précisera. En déduire Var(h(Y)) ≤ Var(f((X, Y)).

5. On suppose queX2 est une variable aléatoire réelle dont la fonction de répartition estdonnée parF2(x). Calculez la fonction de répartitionG2(x) deλ2e

�2X2.

6. On suppose queX1 etX2 sont indépendantes. Montrer que

p = E(1 − G2

(t − λ1e

�1X1))

.

Montrer que la variance de1 − G2(t − λ1e

�1X1)

est toujours inférieure à celle de1{

λ1e�1X1 + λ2e

�2X2 > t}. Proposer une nouvelle méthode de Monte-Carlo permettant

de calculerp.

Page 27: Poly Monte Carlo x

Ch.2Techniques de réduction de variance 27

7. On se place à nouveau dans le cas où(X1, X2) est une vecteur gaussien centrée tel queVar(X1) = Var(X2) = 1 etCov (X1, X2) = ρ, avec|ρ| ≤ 1, montrer que :

p = E (1 − F2 (φ(X1))) ,

F2 étant la fonction de répartition deX2 etφ une fonction que l’on précisera. On utiliserala fait queX2 − ρX1 est une gaussienne indépendante deX1.En déduire une méthode de Monte-Carlo, dont on prouvera quelle réduit la variance,permettant d’évaluerp.

Page 28: Poly Monte Carlo x

28 PROCESSUS ET ESTIMATION : MONTE-CARLO

Page 29: Poly Monte Carlo x

Chapitre 3

Méthodes de Monte-Carlo et Chaînes deMarkov

Nous avons mis en évidence un certain nombre de méthodes pour simuler un variablesalé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 aussiconduire à des simulations lente si la probabilité de rejet est trop grande. Les méthodes deMonte-Carlo par chaîne de Markov vont 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 loides grands nombres s’étend aux processus stationnaires ergodiques et donc si(Xn, n ≥ 0) estun tel processus, siX0 a pour loiπ et sif(X0) est intégrale, alors :

limn!+1 f(X0) + · · ·+ f(Xn)

n= E

(f(X0)

)=

∫f(x)dπ(x) presque sûrement. (3.1)

Mais comme on ne sait pas simulerX0 selon la loiπ, on n’a guère avancé.Considérons cependant l’exemple d’un processus AR(1) :

Xn = aXn-1 + Un avecUn i.i.d. et |a| < 1. (3.2)

La solution stationnaireXn de cette équation s’écrit∑+1p=0 apUn-p et est ergodique.

Soit maintenantXxn la solution de3.2satisfaisantX0 = x. Il est facile de montrer par récur-rence que :

Xxn − Xyn = an(x − y),

et donc les trajectoires se rapprochent et oublient leur point de départ. De mêmeXxn − Xn =

an(x − X0) tend vers0 quandn tends vers+∞. Par suite, sif est uniformément continue :

limn!+1 f (Xxn) − f

(Xn

)= 0 p.s.

et donc la moyenne de Césaro aussi :

limn!+1 1

n

n∑

i=1

f (Xxi ) − f(Xi

)= 0 p.s..

On en déduit donc que pour tout point de départx :

limn!+1 1

n

n∑

i=1

f (Xxi ) = E(f(X0)

)p.s..

29

Page 30: Poly Monte Carlo x

30 PROCESSUS ET ESTIMATION : MONTE-CARLO

La chaîne de MarkovXxn d’état initial x est facile à simuler et conduit à une approximationde E

(f(X0)

). 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 ergodiquesi la loi initiale estπ et dont les trajectoires, pour tout état initialx, auront un comportementasymptotique analogue aux trajectoires de la solution stationnaire. En d’autres termes, pour toutx, les trajectoires issues dex, vérifieront la loi forte des grands nombres :

limn!+1 1

n

n∑

i=1

f (Xxi ) =

∫f(x)dπ(x),

que l’on cherche à évaluer. Il faudra ensuite étudier la vitesse de convergence.

3.1 Chaîne de Markov et ergodicité

Les notations sont celles du cours de première année. On rappelle que(Xn, n ≥ 0) est unechaîne de Markov si la loi de l’étatXn+1 ne dépend des valeurs passées(X0, . . . , Xn) que parXn.

On suppose l’espace d’étatsE discret et l’on considère surE une matrice de transitionQ =

(Q(x, y); x, y ∈ E). Cela signifie queQ est telle que :– Q(x, y) ≥ 0 pour tout(x, y) ∈ E2,–

∑y∈EQ(x, y) = 1, pour toutx ∈ E.

Une suite(Xn, n ≥ 0) de variables aléatoires à valeurs dansE est appelée unechaîne de Markovde matrice de transitionQ si, pour toutx1, · · · , xn ∈ E :

P(Xn+1 = x|X0 = x0, X1 = x1, . . . , . . . , Xn = xn) = P(Xn+1 = x|Xn = xn)

= Q(xn, x).

Il est alors facile de voir que :– P(X0 = x0, X1 = x1, . . . , . . . , Xn = xn) = π0(x0)Q(x0, x1) . . . Q(xn-1, Xn),– P(Xn = xn)

∑x0∈E π0(x0)Q

n(x0, xn) = (π0Qn)(xn), où Qn est définie au sens de la

multiplication des matrices.Par suite, si la loi initiale de la chaîne de Markov estπ0, la loi deXn estπ0Qn.

On dira que la probabilitéπ0 est invariante pourQ si :

π0Q = π0. (3.3)

Proposition 3.1.1 Soitπ un probabilité sur un espaceE discret et soitXn la chaîne de Markovde matrice de transitionQ et de loi initialeπ. Alors, il y a équivalence entre :

1. π est un loi invariante pourQ,

2. la chaîne(Xn, n ≥ 0) est un processus stationnaire au sens strict.

Démonstration : La fait que 2 implique 1 est clair, puisque a loi deX1 (égale àπQ) estidentique à celle deX0 (égale àπ).

Pour démontrer que 1) implique 2), notons que :

P(X1 = x1, . . . , Xn = xn) =∑x0

π(x0)Q(x0, x1)Q(x1, x2) . . . Q(xn-1, xn)

= (πQ)(x1)Q(x1, x2) . . . Q(xn-1, xn)

= π(x1)Q(x1, x2) . . . Q(xn-1, xn)

= P(X0 = x1, . . . , Xn-1 = xn).

Page 31: Poly Monte Carlo x

Ch.3Méthodes de Monte-Carlo et Chaînes de Markov 31

Ceci prouve que les lois de(X1, . . . , Xn) et de(X0, . . . , Xn-1) sont identiques. Le processus(Xn, 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 comportementsanalogues, il faut imposer à la matrice de transitionQ d’être irréductible, c’est à dire que :

– pour toutx ∈ E et pour touty ∈ E il existe un entiern > 1 tel que :

P(X0 = x, Xn = y) = Qn(x, y) > 0.

Ceci signifie que l’on peut aller (avec un probabilité strictement positive) de tout point deE àtout point deE 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.1Supposons queQ 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 (Xn, n ≥ 0) désigne la chaîne de Markov stationnaire au sens strict de loi initialeπ,alors, pour toute fonctionf telle que

∫|f(x)|dπ(x) < +∞ :

limn!+1 1

n

n∑

p=1

f(Xp

)=

∫f(x)dπ(x) p.s..

4. Pour tout pointx ∈ E, si l’on note(Xxn, n ≥ 0) une chaîne de Markov d’état initialx :

limn!+1 1

n

n∑

p=1

f(Xxp

)=

∫f(x)dπ(x) p.s..

Conséquence : Si l’on sait construire une chaîne de Markov de matrice de transition irréduc-tible et ayantπ comme probabilité invariante, on pourra approximer

∫fdπ par 1n

∑np=1 f

(Xxp

).

Le problème du calcul de l’intégrale se ramène à celui de la simulation de la chaîne(Xxn, n ≥ 0).

Remarque 3.1.2Si π est une probabilité telle que, pour toutx, y :

π(x)Q(x, y) = π(y)Q(y, x),

on dit que la probabilité est uneprobabilité symétrique. Notez qu’une probabilité symétriqueest forcément invariante puisque :

(πQ)(y) =∑

x∈Eπ(x)Q(x, y) =

x∈Eπ(y)Q(y, x) = π(y)

x∈EQ(y, x) = π(y).

On dit alors que la chaîne estréversiblecar la loi deXn sachant{Xn-1 = x} est égale à la loi deXn sachant{Xn+1 = x}.

Page 32: Poly Monte Carlo x

32 PROCESSUS ET ESTIMATION : MONTE-CARLO

Démonstration : Commençons par montrer que siQ est irréductible et siπ est une probabilitéinvariante, alors, pour toutx ∈ E, π(x) > 0.

Pour cela remarquons que commeπ est une probabilité, il existe un pointy de E tel queπ(y) > 0. Considérons maintenant un point arbitrairex de E. CommeQ est irréductible, ilexiste unn > 1 tel queQn(y, x) > 0. On a donc :

π(x) = πQn(x) =∑z

π(z)Qn(z, x) ≥ π(y)Qn(y, x) > 0.

Montrons maintenant queπ est l’unique probabilité invariante. Soitπ ′ une autre probabilitéinvariante. Alorsπ ′′(x) = min(π(x), π ′(x)) définit une mesure positive telle que :

π ′′Q ≤ πQ = π.

De mêmeπ ′′Q ≤ π ′ et doncπ ′′Q ≤ π ′′. Comme de plus,∑x∈E π ′′Q(x) = 1 =

∑x∈E π ′′(x),

on en déduit queπ ′′Q = π ′′.Par suite∆ = π − π ′′ 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 partoutnulle, soit partout strictement positive. Ce qui prouve dans le premier cas queπ ≤ π ′ et dansle second cas queπ ′ ≤ π. Dans les deux cas comme

∑x∈E π(x) = 1 =

∑x∈E π ′(x), ceci

implique queπ = π ′. 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 toutx ety on a :∑

n≥01{Xxn = y} < +∞ p.s.,

donc limn!+1 1{Xxn = y} = 0 p.s.. Et on en déduit, en utilisant le théorème de Lebesgue

(puisque1{Xxn = y} ≤ 1), que :

limn!+1Qn(x, y) = lim

n!+1E(

1{Xxn = y}

)= 0.

En utilisant encore une fois le théorème de Lebesgue, on montre que siπ est la probabilitéinvariante, alors :

limn!+1∑

x∈Eπ(x)Qn(x, y) = 0.

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 toutx ety :

limn!+1 1

n

n∑

p=1

1{Xxp = y

} = µ(y) p.s.,

La limite µ(y) ne dépend pas du point de départx et µ est soit nulle, soit une probabilitésatisfaisantµQ = µ.

Montrons queµ ne peut pas être nulle. Pour cela supposons queµ = 0. Alors en appliquantle théorème de Lebesgue à1n

∑np=1 1{

Xxp = y}, qui reste clairement borné par1, on obtient :

limn!+1 1

n

n∑

p=1

Qp(x, y) = limn!+1E

[1

n

n∑

p=1

1{Xxp = y

}]

= 0.

Page 33: Poly Monte Carlo x

Ch.3Méthodes de Monte-Carlo et Chaînes de Markov 33

Soitπ le probabilité invariante. Toujours en utilisant le théorème de Lebesgue, on obtient :

limn!+1∑

x

π(x)

[1

n

n∑

p=1

Qp(x, y)

]= 0.

Donc comme,πQp = π :

∑x

π(x)

[1

n

n∑

p=1

Qp(x, y)

]=

1

n

n∑

p=1

πQp(y) = π(y).

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é pourf = 1{y}. Il est relativement facile de

l’étendre àf borné. L’extension au cas∫

|f(x)|π(dx) < +∞ est nettement plus technique aussinous l’admettrons.

Si f est bornée parM, alorsg = f − M ≥ 0.Soit (gk, k ≥ 1) une suite de fonction à support fini telle que lesgk tendent en croissant

versg. Alors, d’après le résultat obtenu, on a, pour toutk :

limn!+1 1

n

n∑

p=1

gk(Xxp

)=

∑y

gk(y)π(y).

On en déduit donc que, pour toutk :

lim infn+1 1

n

n∑

p=1

g(Xxp

) ≥∑y

gk(y)π(y),

d’où, par passage à la limite :

lim infn+1 1

n

n∑

p=1

g(Xxp

) ≥∑y

g(y)π(y),

Par linéarité on obtient alors :

lim infn+1 1

n

n∑

p=1

f(Xxp

) ≥∑y

f(y)π(y).

Le même raisonnement, en utilisant la fonction−f prouve que :

lim supn+1 1

n

n∑

p=1

f(Xxp

) ≤∑y

f(y)π(y).

D’où le résultat annoncé pour une fonction bornéf.Pour montrer le résultat, lorsque la chaîne(Xn, n ≥ 0) part d’une probabilité arbitraireν, il

suffit de remarquer que :

P

[1

n

n∑

p=1

f(Xp

)]

=∑

x∈EP(X0 = x) P

[1

n

n∑

p=1

f(Xxp

)]

.

Page 34: Poly Monte Carlo x

34 PROCESSUS ET ESTIMATION : MONTE-CARLO

Comme, pour toutx :

P(X0 = x) P

[1

n

n∑

p=1

f(Xxp

)]

= 1,

et comme∑x∈E P(X0 = x) = 1. Le résultat reste vrai pour toute loi initialeν et en particulier

pourπ.

Pour étudier la vitesse de convergence de1n

∑np=1 f

(Xxp

), nous allons imposer à la chaîne d’être

apériodique.

Définition 3.1.3 SoitQ une matrice de transition. On note :

d(x) = PGCD{n,Qn(x, x) > 0} .

On dit quex est apériodique sid(x) = 1.Si Q est irréductible et si un état est apériodique, tous les états sont alors apériodiques et

l’on dit que la chaîne est apériodique.

Nous admettrons le théorème suivant.

Théorème 3.1.2Supposons que l’espace d’étatsE soit fini et soitQ une matrice de transitionirréductible apériodique admettant une probabilité invarianteπ.

1. Il existe deux réelsα, M avecα < 1 etM < +∞ tel que, pour toutx et pour touty :

|Qn(x, y) − π(y)| < Mαn.

2. Pour toutx et pour toute fonctionf définie surE :

√n

(1

n

n∑

p=1

f(Xxp

)−

y∈Eπ(y)f(y)

)converge en loi vers une gaussienne centrée de varianceσ2,

avecσ2 < +∞.

Remarque 3.1.4En pratique, la varianceσ2 < +∞ est beaucoup plus délicate à estimer quepour le théorème de la limite centrale classique.

3.2 Algorithme de Hastings-Metropolis

Cet algorithme très simple v anous permettre de simuler une chaîne de Markov ayant uneprobabilitéπ donnée. L’algorithme est le suivant.

SoitE un espace discret etπ une probabilité donnée surE. Soit une matrice de transition (àpriori quelconque) surE. FixonsX0 = x0 ∈ E où x0 est tel queπ(x0) > 0, puis construisons(Xn, n ≥ 1) de la manière itérative suivante.

Supposons queXn = xn. On simule deux variables aléatoires indépendantes (et indépen-dantes des simulations passées)Yn etUn, avec :

– Yn suit la loiQ(xn, .) (i.e. pour touty, P(Xn = y) = Q(xn, y)),– Un suit une loi uniforme sur[0, 1].

On pose :

α(x, y) = min

(1,

π(y)Q(y, x)

π(x)Q(x, y)

),

et l’on définitXn+1 de la façon suivante :

Page 35: Poly Monte Carlo x

Ch.3Méthodes de Monte-Carlo et Chaînes de Markov 35

– 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 transitionP avec :

– P(x, y) = Q(x, y)α(x, y), si x 6= y,– P(x, x) = 1 −

∑y6=x P(x, y) = 1 −

∑y6=xQ(x, y)α(x, y).

La probabilitéπ est invariante parP (π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 deXn+1 ne dépend desvariables aléatoires passées(X1, . . . , Xn) que parXn. Pour calculer la matrice de transitionremarquons que, lorsquex 6= y :

P(Xn+1 = y|Xn = x) = P(Yn = y,Un ≤ α(Xn, Yn) ≤ |Xn = x) = P(Yn = y,Un ≤ α(x, y) ≤ |Xn = x) .

CommeUn est indépendante du couple(Yn, Xn), etα(x, y) ≤ 1 on a :

P(Yn = y,Un ≤ α(x, y) ≤ |Xn = x) =P(Yn = y,Un ≤ α(x, y), Xn = x)

P(Xn = x)

= P(Un ≤ α(x, y))P(Yn = y, Xn = x)

P(Xn = x)= α(x, y)P(Yn = y|Xn = x) .

De plus la loi deYn conditionnellement àXn = x est donnée parQ(x, y), donc, pourx 6= y :

P(Yn = y,Un ≤ α(x, y) ≤ |Xn = x) = α(x, y)Q(x, y).

Il suffit alors de remarquer que :

P(Xn+1 = x|Xn = x) = 1 −∑

y6=xP(Xn+1 = y|Xn = x) = 1 −

y 6=xα(x, y)Q(x, y),

pour évaluerP(x, x).Pour démontrer que la probabilitéπ est symétrique par rapport àP, remarquons que, si

x 6= y :

π(x)P(x, y) = π(x)α(x, y)Q(x, y) = max(π(y)Q(y, x), π(x)Q(x, y))

= π(y)α(y, x)Q(y, x) = π(y)Q(y, x).

La chaîne est donc réversible et admetπ comme probabilité invariante (voir la remarque3.1.2).

Remarquons, de plus, que la chaîne issue d’unx0 tel queπ(x0) > 0, restera dans l’ensembleE1 = {x ∈ E, π(x) > 0}. On peut donc supposer queE = E1.

Si P est une matrice de transition irréductible, alors le théorème3.1.1s’applique et l’on a :

limn!+1 1

n

n∑

p=1

f(Xxp

)=

x∈Ef(x)dπ(x) p.s.,

ce qui fourni un moyen d’approximer∑x∈E f(x)dπ(x).

Proposition 3.2.2 SiQ satisfait, pour toutx 6= y, Q(x, y) > 0 alorsP est irréductible.

Page 36: Poly Monte Carlo x

36 PROCESSUS ET ESTIMATION : MONTE-CARLO

La preuve est immédiate (noter que l’on suppose queE = E1 = {x ∈ E, π(x) > 0}), car alors,pour toutx, y, P(x, y) = α(x, y)Q(x, y) > 0, si x 6= y.

La condition imposée surQ en en fait trop restrictive surtout lorsque l’espaceE est grand.Il faut alors choisirQ de manière à ce que la variable aléatoireYn de loi Q(x, .) soit facile àsimuler.

Dans l’algorithme de Métropolisoriginal, la matriceQ est choisiesymétrique(Q(x, y) =

Q(y, x)). Dans ce cas, il est clair que :

α(x, y) = inf

(1,

π(y)

π(x)

).

Pour que la chaîne reste le moins souvent possible au même endroit, il faut queα(Xn, Yn) soitproche de (ou égal à)1. Ceci implique que�(Yn)�(Xn) ne devienne pas trop petit.

On parle d’algorithmeindépendant, lorsqueQ(x, y) = q(y). Alors :

α(x, y) = min

(1,

π(y)q(x)

π(x)q(y)

),

On voit que le choix deYn ne dépend pas deXn mais que son acceptation ou son rejet oui.

Proposition 3.2.3 SoitE discret. SoitQ irréductible symétrique et soitπ une probabilité nonconstante. Alors la chaîne de Markov construite par l’algorithme de Métropolis est réversible,irréductible apériodique de loi invarianteπ.

On peut alors approximer∑x π(x)f(x) par 1n

∑np=1 f (Xp) et la vitesse de convergence est

donnée par la proposition3.1.2.Démonstration : Il s’agit de prouver que la matrice de transition donnée, pourx 6= y :

P(x, y) = Q(x, y)α(x, y),

est irréductible et apériodique. CommeE = {x, π(x) > 0} et queα(x, y) = min(1,�(y)�(x)

), on a

α(x, y) 6= 0 pour toutx, y.CommeQ est irréductible, pour toutx ety distincts, il existe une suite finie(xi, 1 ≤ i ≤ p)

d’éléments distincts tels quex1 = x, xp = y et Q(xi, xi+1) > 0 pour1 ≤ i ≤ p − 1. On endéduit queP(xi, xi+1) = α(xi, xi+1)Q(xi, xi+1) > 0 et doncPp(x, y) ≥ ∏p-1

i=1 P(xi, xi+1) > 0.P est donc irréductible.

Pour prouver l’apériodicité deP, on va montrer qu’il existe un élémentx tel queP(x, x) > 0.Supposons le contraire. Alors pour toutx, P(x, x) = 0. Or :

P(x, x) = 1 −∑

y6=xP(x, y) =

∑y

Q(x, y) −∑

y 6=xQ(x, y)α(x, y).

Donc :P(x, x) = Q(x, x) +

y6=xQ(x, y)(1 − α(x, y)).

D’où, pourx 6= y :

Q(x, y)

[1 −

π(y)

π(x)

]+≤ 0.

On end déduit que pour toutx 6= y tel queQ(x, y) > 0, π(y) ≤ π(x). Par symétrie deQ, onen déduit queπ(x) = π(y).

Page 37: Poly Monte Carlo x

Ch.3Méthodes de Monte-Carlo et Chaînes de Markov 37

Comme ci dessus, il découle de l’irréductibilité deQ que pour toutx 6= z, il existe une suitefinie (xi, 1 ≤ i ≤ p) d’éléments distincts tels quex1 = x, xp = y et Q(xi, xi+1) > 0 pour1 ≤ i ≤ p − 1. Par suiteπ(z) = π(xp-1) = · · · = π(x2) = π(x). La probabilité est doncconstante, ce qui est contradictoire.

3.3 Exercices

Exercice 13 Soit E un espace d’états dénombrable (on peut aussi se placer dans un espaced’états abstrait au prix d’une extension de la notion de chaîne de Markov) etp etq des densitésde probabilité , avec0 < p ≤ cq, q étant une densité facilement simulable. On considère alorsune suiteYn, n ≥ 1 de variables aléatoires indépendantes identiquement distribuées selon la loiq et indépendantes de la variable aléatoireX0. On définit par récurrence :

Xn+1 =

Yn+1 avec probabilitép(Yn+1)cq(Yn+1)

Xn avec probabilité1 −p(Yn+1)cq(Yn+1)

1. En considérant une suiteUn de variables aléatoires indépendantes identiquement distri-buées selon la loi uniforme sur[0, 1] écrireXn+1 sous la formef(Xn, Un+1, Yn+1) et endéduire queXn est une chaîne de Markov.

2. Calculer la probabilité de transitionP(i, j) deXn.

3. CalculerµP pour une probabilitéµ et en déduire que la loi deXn converge vers uneunique 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’étatfini E. On suppose que :

P(x, y) ≥ αc(y), pour touty ∈ E, (3.4)

oùc est une mesure de probabilité etα > 0.

1. Soitµ etµ ′ deux mesures de probabilité surE. On note|µ − µ ′| =∑x∈E |µ(x) − µ ′(x)|.

Montrer que l’on a :|µP − µ ′P| ≤ (1 − α) |µ − µ ′| .

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 transitionP. Montrer que quelleque soit la loi initiale deX0, 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 existel ≥ 1 :

Pl(x, y) ≥ αc(y), pour touty ∈ E. (3.5)

5. On considère maintenant l’algorithme de Métropolis. On suppose queP(x, y) = P(y, x)

et que l’équation (3.4) est vérifiée. On cherche à simuler une loiµ donnée à une constanteprès par :

µ(x) = Ce-�H(x).

Écrire la probabilité de transitionP(x, y) surE qui permet de construire l’algorithme deMétropolis.

Page 38: Poly Monte Carlo x

38 PROCESSUS ET ESTIMATION : MONTE-CARLO

6. Vérifier queP vérifie l’équation (3.4). Proposer une méthode de simulation approchéeselon la loiµ.

Exercice 15 Algorithme de Métropolis pour une marche aléatoire symétriqueSoitq la densité d’une variable aléatoire. On suppose de plus queq(x) = q(−x). A l’instant non simule une variable aléatoireZn indépendante selon la loiq(x)dx et on noteYn = Xn+Zn.On pose alors, sip(x) est une densité qui ne s’annule jamais :

Xn+1 =

{Yn avec probabilité1 ∧

p(Yn)p(Xn)

Xn sinon

Montrer que(Xn, n ≥ 0) est une chaîne réversible. Expliquer comment l’on peut simuler unevariable aléatoire selon la loi de densité :

1

Zexp(−βH(x))

Exercice 16 Échantillonneur de GibbsSoit (X1, . . . , Xn) un vecteur prenant ses valeurs dansEn, E étant un ensemble fini. On noterap(x1, . . . , xn) sa loi.

On considère alors la chaîne de Markov décrite de la façon suivante : on commence par tireruniformément un indice entre1 etn, puis l’on modifie la coordonnéei ainsi choisie selon la loiconditionnelle deXi sachant(Xj = xj, j 6= i).

1. Montrer que la probabilité de transition de la chaîne ainsi définie est donnée par, six =

(x1, . . . , xi, . . . , xn) et siy = (x1, . . . , y, . . . , xn) :

q(x, y) =1

nP(Xi = y|Xj = xj, j 6= i)

0 sinon.

2. Expliquer comment simuler une variable aléatoire selon la probabilité de transitionq(x, y) lorsque l’on sait simuler selon la loi conditionnelleP(Xi = y|Xj = xj, j 6= i).

3. On cherche à simuler selon la loi :

p(x)1{x ∈ A}

P(X ∈ A).

Écrire l’algorithme de Métroplis-Hastings dans ce cas.

4. Que devient cet algorithme dans le cas oùA = En ?

5. Étendre (sans démonstration) l’algorithme au cas d’une variable aléatoire admettant unedensité.

6. Proposer un algorithme pour tirern points uniformément dans un cercle conditionnelle-ment à ce que ces points soient éloignés d’au moinsδ.

7. Proposer un algorithme permettant de simuler selon la loi de(X1, . . . , Xn) conditionnel-lement àX1+ · · ·+Xn ≥ C, les variables aléatoiresXi étant indépendantes et suivant deslois exponentielles de paramètreλ.

Page 39: Poly Monte Carlo x

Bibliographie

[AS70] M. Abramowitz et I.A. Stegun, editeurs.Handbook of Mathematical Functions.Dover, 9th edition, 1970.

[BFS87] P. Bratley, B.L. Fox, et E.L. Schrage.A Guide to Simulation. Springer Verlag, NewYork, 2nd edition, 1987.

[Bou86] N. Bouleau.Probabilités de l’Ingénieur. Hermann, 1986.

[Coc77] W.G. Cochran.Sampling Techniques. John Wiley and Sons, 1977.

[Dev86] L. Devroye.Non Uniform Random Variate Generation. Springer Verlag, New York,1986.

[HH64] J.M. Hammersley et D.C. Handscomb.Monte Carlo Methods. Chapman and Hall,1964.

[KN74] L. Kuipers et H. Neiderreiter.Uniform Distribution of Sequences. Wiley, 1974.

[Knu81] D.E. Knuth.The Art of Computer programming, Vol. 2, Seminumerical Algorithms.Addison-Wesley, 1981.

[KW86] M.H. Kalos et P.A. Whitlock.Monte Carlo Methods, volume I : Basics. John Wileyand Sons, 1986.

[L’E90] P. L’Ecuyer. Random numbers for simulation.Communications of the ACM, 33, 101990.

[Nei92] H. Neiderreiter. Random Number Generation and Quasi Monte Carlo Methods.Society for Industrial and Applied mathematics, 1992.

[PTFV92] W.H. Press, S.A. Teukolsky, B.P. Flannery, et W.T. Vetterling.Numerical Recepies.Cambridge University Press, 1992.

[Rip87] B.D. Ripley. Stochastic Simulation. Wiley, 1987.

[Rob96] Christian Robert. Methodes de Monte Carlo par chaines des Markov. EditionsEconomica, 1996.

[Rub81] R. Y. Rubinstein.Simulation and the Monte Carlo Method. John Wiley and Sons,1981.

39