You are on page 1of 55

Mthodes de Monte-Carlo

(Cours et exercices)
M1 IM, 2015-2016

Sylvain Rubenthaler
Table des matires

Prface iii
Chapitre 1. Introduction 1
1.1. Description de la mthode 1
1.2. Thormes de convergence 2
1.3. Exemples 3
1.4. Comparaison avec les mthodes dterministes 4
1.5. Exercices 5
Chapitre 2. Simulation de variables alatoires 9
2.1. Inversion de la fonction de rpartition 9
2.2. Simulation dune loi exponentielle 10
2.3. Simulation de variables gaussiennes (algorithme de Box-Mller) 11
2.4. Simulation dune variable alatoire poissonienne 12
2.5. Mthode de rejet 13
2.6. Vrification par histogramme 15
2.7. Exercices 16

Chapitre 3. Rduction de variance 21


3.1. chantillonage prfrentiel ( importance sampling en anglais) 21
3.2. Variable de contrle 22
3.3. Variables antithtiques 23
3.4. Mthode de stratification 24
3.5. Valeur moyenne ou conditionnement 26
3.6. Exercices 27
Chapitre 4. Mthodes de Monte-Carlo par chanes de Markov 29
4.1. Rappels sur les chanes de Markov 29
4.2. Algorithme de Hastings-Metropolis 30
4.3. Algorithme de Metropolis simple 32
4.4. Le modle dIsing 33
4.5. Analyse baysienne dimage 35
4.6. Cryptographie 37
4.7. Exercices 38

Annexe A. Table de la loi normale 41


Annexe B. Fonctions, intgrales et sommes usuelles 43
Bibliographie 45
Liste des symboles 47

Index 49

i
Prface

Ce polycopi est une introduction aux mthodes de Monte-Carlo. Les prrequis sont : cours de
L3 MASS de probabilits 1, cours de M1 IM sur les chanes de Markov, notions de R (acquises au
premier semestre). Les sources dinspiration de ce document sont les suivantes : [DB01, Par08],
le polycopi de Laure lie et Bernard Lapeyre 2, le polycopi de Bernard Ycart 3, des exercices
fournis par Franois Delarue, un expos de Persi Diaconis sur la cryptographie. Les TP se feront
en R, les exemples de programmes seront aussi donns en R.
Important : les fichiers sources et les corrigs des exercices sont disponibles sur : http://
math.unice.fr/~rubentha/cours.html. Jencourage toute personne enseignant les mthodes de
Monte-Carlo utiliser ces fichiers et ajouter son nom la liste dauteurs de ce polycopi.

1. http://math.unice.fr/~rubentha/enseignement/poly-integration-probas.pdf
2. http://cermics.enpc.fr/~bl/PS/SIMULATION-X/poly-monte-carlo-x.pdf
3. http://ljk.imag.fr/membres/Bernard.Ycart/polys/montec.pdf

iii
iv
Chapitre 1

Introduction

1.1. Description de la mthode


Supposons que lon veuille calculer une quantit I. La premire tape est de la mettre sous
forme dune esprance I = E(X) avec X une variable alatoire. Si on sait simuler des variables
X1 , X2 , . . . indpendantes et identiquement distribues (ce que nous noterons i.i.d. dans la suite),
alors nous pouvons approcher I par
X1 + X2 + + XN
(1.1) I
N
avec N grand , sous rserve dapplication de la loi des grands nombres. Cest ce type dapproxi-
mation que lon appelle mthode de Monte-Carlo (cest une mthode pour faire des calculs
numriques).
Exemple 1.1. Supposons que lon cherche calculer
Z
I= f (u1 , . . . , ud )du1 . . . dud .
[0;1]d

Nous posons X = f (U1 , . . . , Ud ) o les U1 , . . . , Ud sont des variables alatoires indpendantes


suivant toutes une loi uniforme sur [0; 1]. Alors :
I = E(f (U1 , . . . , Ud )) = E(X).
Nous avons donc ralis la premire tape. Tout logiciel de programmation nous permet de simuler
des variables uniformes sur [0; 1]. De plus, des appels successifs de variables uniformes renvoient des
(1) (1) (2) (2)
variables indpendantes. Nous pouvons donc facilement simuler U1 , . . . , Ud , U1 , . . . , Ud , . . .
des variables i.i.d. de loi uniforme sur [0; 1] (nous noterons cette loi U([0; 1]) ) et donc X1 =
(1) (1) (2) (2)
(U1 , . . . , Ud ), X2 = (U1 , . . . , Ud ) , . . . sont i.i.d. Le programme 1.1 fournit un exemple de
programme approchant I par une mthode de Monte-Carlo (avec d = 3, n = 1000 itrations,
f (u1 , u2 , u3 ) = sin(u1 ) sin(u2 ) sin(u3 )).

Programme 1.1 approximation de Monte-Carlo


d=3
n=1000
s=0
for (i in 1:n)
{
u=runif(d,0,1) #simulation de d variables uniformes indpendantes
s=s+sin(u[1])*sin(u[2])*sin(u[3])
}
print(s/n)

Si nous cherchons valuer une intgrale de la forme


Z
I= g(x)f (x)dx
Rn
R
avec f une densit de probabilit (cest dire f positive et Rn f (x)dx = 1), alors nous pouvons
crire I = E(g(X)) avec X de loi de densit f . Nous sommes encore dans la situation o nous
1
2 1. INTRODUCTION

voulons calculer lesprance dune variable alatoire (si X est une variable alatoire, alors g(X)
est une variable alatoire, condition que g soit mesurable).

1.2. Thormes de convergence


1.2.1. Convergence.
Thorme 1.2 (Loi forte des grands nombres.). Soit (Xn )n0 une suite de variables alatoires
i.i.d., valeurs dans Rd (d N ). On suppose que E(|X1 |) < +. Alors
X1 + + Xn p.s.
E(X) .
n n+

Rappel : p.s. signifie presque srement .


Ce thorme nous dit pourquoi lapproximation de Monte-Carlo (1.1) est valide (et sous quelles
hypothses).
1.2.2. Vitesse de convergence.
Thorme 1.3 (Thorme de la limite centrale.). Soit (Xn )n0 une suite de variables ala-
toires i.i.d., valeurs dans R. On suppose que E(X12 ) < +. Soit 2 = V(X) (la variance de X).
Alors  
n X1 + + Xn loi
E(X1 ) N (0, 1) .
n n+

Rappels : Le symbole N (, 2 ) se rapporte la loi normale (on dit aussi gaussienne) de


loi
moyenne et de variance 2 . La convergence en loi dune suite de variables relles Zn Z
n+
(Z de loi de densit ) signifie que pour toute fonction f : R R continue, borne,
Z
E(f (Zn )) E(f (Z)) = f (x)(x)dx .
n+ R
Ceci implique en particulier, sous les hypothses du thorme ci-dessus, pour tout a < b,
   
n X1 + + Xn
P a E(X1 ) b
n
   
n X1 + + Xn
= E 1[a;b] E(X1 )
n
Z b 2
ex /2
1 dx .
n+ a 2
Si nous cherchons approcher E(X) par une mthode de Monte-Carlo (E(X) X1 ++Xn
n
), nous
X1 ++Xn
pouvons donc dire que lerreur n E(X) est dordre n . Mais cette erreur est alatoire

(le thorme ci-dessus nous dit que X1 ++X


n
n
E(X) est peu prs de loi N (0, 2 /n)), nous ne
pouvons donc pas la borner. En revanche, nous pouvons donner un intervalle de confiance pour le
rsultat.
Toujours sous les hypothse du thorme ci-dessus, notons n = X1 ++X
n
n
E(X1 ). On cherche
approcher E(X1 ) 0, 01 prs avec une confiance de 95% (on cherche construire un intervalle
de confiance). Cest dire que lon veut
P (|n | 0, 01) 0, 05 ,
ce qui est quivalent
P (|n | 0, 01) 0, 95 .
Calculons :
 
X1 + + Xn
P (|n E(X1 )| 0, 01) = P 0, 01 E(X1 ) 0, 01
n
   
n n X1 + + Xn n
= P 0, 01 E(X1 ) 0, 01
n
1.3. EXEMPLES 3


n 2
+0,01
et /2
Z
(pour n"assez grand") dt
0,01
n 2

n 2
+0,01
et /2
Z
(par symtrie de N (0, 1)) = 2 dt 1 .
2
R +0,01 ne t2 /2
On veut donc n tel que 2
dt 0, 975. On regarde dans une table de la loi normale

(voir par exemple lannexe A) et on voit quil suffit pour cela davoir 0, 01 n/ 1, 96, cest
dire
(1, 96 )2
n .
0, 012
On remarque que le nombre de tirages ncessaire n pour atteindre un certain niveau derreur avec
une certaine confiance est une fonction linaire de 2 .
Dans la pratique, 2 pourrait ne pas tre connu, mais on peut lestimer par une mthode de
Monte-Carlo.
On dit que 2 est la variance de la mthode. Sous les hypothses du thorme 1.3, la variance
de lerreur X1 ++X
n
n
E(X1 ) est asymptotiquement 2 /n. La variance 2 est aussi la variance
des variables i.i.d. dont on fait la moyenne empirique.
Lemme 1.4 (Estimateur de la variance). Si X1 , X2 , . . . sont i.i.d. avec E(X12 ) < + et
2
= V(X), alors
(X1 X2 )2 + (X3 X4 )2 + + (X2n1 X2n )2 p.s.
2 .
2n n+

Dmonstration. Les variables (X1 X2 )2 , (X3 X4 )2 , . . . sont i.i.d. avec E((X1 X2 )2 ) =


E(X12 + X22 2X1 X2 ) = 2E(X12 ) 2E(X1 )2 < + (car E(X12 ) > E(X1 )2 et E(X12 ) < +). Donc
le rsultat dcoule de la loi des grands nombres. 

1.3. Exemples
1.3.1. Cas facile. Soit U une variables alatoire dans Rd (d N ) et f : Rd R mesurable.
On cherche calculer p = P(f (U ) ) pour un certain (p est donc dans [0; 1]). Soit X = 1f (U ) .
Alors p = E(X). On peut donc approcher p par (en faisant des tirages i.i.d. X1 , X2 , . . . de mme
loi que X)
X1 + + Xn
pn = p.
n
Nous calculons 2 = V(X) = p(1 p). Si nous voulons une erreur |p pn | infrieure 0, 01 avec
une confiance 0, 95% (comme dans lexemple ci-dessus), il suffit de prendre
(1, 96 )2
n .
0, 012
Pour tout p [0; 1], p(1 p) 1/4, donc il suffit de prendre
1, 962 1
n .
0, 012 4
1.3.2. Cas difficile. On cherche calculer E(eZ ) avec Z N (0, 1). Nous savons que
Z + x2 /2
Z x e
E(e ) = e dx
2
Z +
2
 
1 1 2
= exp (x ) + dx
2 2 2
2
= e /2
.
Si nous tirons Z1 , Z2 , . . . i.i.d. de mme loi que Z, nous aurons au bout de n tirages :
eZ1 + + eZn
E(eZ ) + Y
n n
4 1. INTRODUCTION

avec Y N (0, 1), 2 = V(eZ ) (daprs le thorme de la limite-centrale). Un calcul similaire


2 2
celui que nous venons de faire nous donne : 2 = e2 e . En ce qui concerne lerreur relative
Z r
e 1 + + eZn

1 Z
2
Z
E(e ) Z
E(|Y |) = Z
.
E(e ) n E(e ) n E(e ) n

Nous avons E(eZ ) = e 2 1. Par exemple, si = 5, si nous voulons une erreur relative de lordre
de 1, il nous faut prendre n tel que

n
2 q 1, 96 ,
e 1 2
cest dire n de lordre de 4 1011 , ce qui nest pas ralisable dans la pratique. Cest pourquoi il
est important de rduire la variance (voir le chapitre 3).
1.3.3. Les aiguilles de Buffon. On jette une grande quantit daiguilles de mme longueur
sur un parquet. Le parquet est consitu de planches parallles de mme largeur (et de longueur
suppose infinie). On calcule la propotion daiguilles tombant sur une rainure du parquet (voir une
animation sur un site de lINRIA 1). On en dduit une approximation de (voir la formule sur le
site de lINRIA). Voir une variation avec lancer de saucisses 2.

1.4. Comparaison avec les mthodes dterministes


Replaons-nous dans le cadre de lexemple 1.1. Nous pouvons galement approcher lintgrale
en question par des sommes de Riemann :
Z  
1 X i1 id
f (x)dx = lim f ,..., .
[0;1]d n+ nd n n
1i1 ,...,id n

Pour comparer cette approximation avec lapproximation de Monte-Carlo, il convient de comparer


les temps de calcul ncessaires pour atteindre une prcision fixe, ou de comparer les prcisions
atteintes pour des temps de calcul gaux.
Lemme 1.5. Si f est lipschitz alors

Z  
1 X i1 id C
f (x)dx d f ,...,

[0;1]d n n n n
1i1 ,...,id n

pour une certaine constante C.


Dmonstration. La proprit lipschitz veut dire : il existe une constante C 0 telle que, pour
tout x, y [0; 1]d , |f (x) f (y)| C 0 kx yk. Nous avons donc

Z  
1 X i1 i d
f (x)dx d f ,...,

[0;1]d n n n
1i1 ,...,id n

Z Z  
X i 1 i d
= ... i f (x) f ,..., du1 . . . dud

n n
h
i1 1 i1 id 1 id
1i1 ,...,id n u1 [ n ; n ] ud n ; n
Z Z  
X i1 id
... i f (x) f
,..., du1 . . . dud
n n
h
i1 1 i1 i 1 i
1i1 ,...,id n u1 [ n ; n ] ud dn ; nd
Z Z
0 d 0 d
X
... iC du1 . . . dud = C .
n n
h
i 1 i i 1 i
1i1 ,...,id n u1 [ 1n ; n1 ] ud dn ; nd


1. http://www-sop.inria.fr/mefisto/java/tutorial1/node14.html#SECTION00033110000000000000
2. https://www.youtube.com/watch?v=Q3jVk6k6CGY
1.5. EXERCICES 5

P
Pour calculer la somme 1i1 ,...,id n . . . , nous devons excuter d boucles embotes de lon-
gueur n (et nous sommons donc nd termes). Nous dirons donc que le cot du calcul est dordre
nd . La prcision est elle dordre n1 . Si nous notons N = nd le cot du calcul, nous avons donc
une prcision en N 1/d .
Dans le programme 1.1, le cot du calcul est dordre n (il y a n boucles) pour une prcision
dordre n1/2 (daprs le thorme 1.3, si E(X 2 ) < ). Si nous notons N = n le cot du calcul,
nous avons donc une prcision en N 1/2 .
Remarque 1.6. On voit donc que la mthode de Monte-Carlo nest avantageuse nu-
mriquement qu partir de la dimension d = 3. Mme si la plupart des exercices et
exemples de ce livre sont donns en dimension 1 par souci de simplicit, il convient de ne
pas oublier ce fait dans la pratique
Les hypothse permettant dappliquer lune ou lautre des mthodes sont diffrentes (moins
contraignantes dans le cas Monte-Carlo).
La mthode de Monte-Carlo est facile implmenter, cest ce qui fait son succs.
Il existe des mthodes dterministes dites quasi Monte-Carlo qui sont plus rapides que
les mthodes de Monte-Carlo simples (mais qui demandent plus dhypothses et qui sont
plus difficiles implmenter). Le lecteur pourra se reporter au polycopi de Laure lie et
Bernard Lapeyre cit dans lintroduction.

1.5. Exercices
Exercice 1.1. Donner au moins deux mthodes de Monte-Carlo diffrentes dapproximation
de lintgrale
Z 1
I1 = cos(x3 ) exp(x)dx,
0
laide dune moyenne empirique impliquant des variables alatoires de loi connue.
Mme question avec
Z +
x2 
I2 = sin(x4 ) exp(2x) exp dx,
0 2
et Z 1
I3 = ln(1 + x2 ) exp(x2 )dx.
0

Exercice 1.2. Soient X1 , X2 , . . . des variables i.i.d uniformes dans C = [1; 1] [1; 1]. Soit
D le disque (dans R2 ) de centre (0, 0) et de rayon 1.
(1) Calculer par une mthode de Monte-Carlo la valeur de E(1XD ) (coder en R).
(2) Estimer la variance de la mthode (coder en R).
(3) Trouver n un nombre de boucles effectuer en (1) pour que lestimation de lesprance
soit prcise 0, 1 prs avec une probabilit 0, 95.
Exercice 1.3. On sintresse
Z +
I= xex dx .
0

(1) Donner deux mthodes de Monte-Carlo diffrentes pour calculer I (de manire approche).
(2) crire un programme en R qui calcule I (de manire approche).
R1
Exercice 1.4. On sintresse I = 0 sin( x)dx.
(1) Proposer une mthode de Monte-Carlo pour calculer I (de manire approche). Dans la
suite, on notera 2 la variance de cette mthode.
(2) crire un programme en R qui calcule I (de manire approche).
6 1. INTRODUCTION

(3) Trouver un nombre de boucle n (qui scrit comme une fonction de 2 ) telle que la mthode
ci-dessus approche I 0, 01 prs avec une probabilit 0, 9 (il nest pas ncessaire de
simplifier lexpression trouve)
Exercice 1.5. Soit (Un1 , . . . , Un3 )n1 une famille de v.a. indpendantes et identiquement dis-
tribues de loi uniforme sur ]0; 1[3 . Donner la limite presque-sre de
Xn
n1 1(Ui1 )2 +(Ui2 )2 +(Ui3 )2 <1 .
i=1

Donner une mthode similaire pour retrouver le volume dune boule de rayon 2.
Exercice 1.6 (Loi des grands nombres.). tant donne une suite de variables alatoires
(Xn )n1 identiquement distribues et indpendantes, telles que E[|X1 |4 ] < + et E(X1 ) = 0, on
pose
Xn
Sn = Xk .
k=1

(1) Montrer quil existe une constante C > 0 telle que, pour tout n 1,
E Sn4 Cn2 .
 

(2) En utilisant lingalit de Markov lordre 4, en dduire quil existe une constant c > 0
telle que, pour tout n 1,
P |Sn | n5/6 cn4/3 .


(3) En utilisant le lemme de Borel-Cantelli, en dduire que, presque-srement, Sn /n 0.


Exercice 1.7 (Densit des polynmes dans C([0; 1]).). tant donne une fonction f continue
sur le segment [0, 1], on dfinit, pour tout rang n 1, la fonction polynomiale
n
X  k k k 
Pn (x) = Cn x (1 x)nk f .
n
k=0

(1) En introduisant, pour tout x [0, 1], (n (x))n1 , suite de variables alatoires indpen-
dantes de mme loi de Bernoulli de paramtre x, et en posant Sn (x) = 1 (x) + + n (x),
interprter Pn (x) comme une esprance.
(2) En utilisant lingalit de Bienaym-Chebychev, montrer que
 Sn (x) 1
> 0, P x .
n 4n2
(3) En dduire que
lim sup f (x) Pn (x) = 0.
n+ x[0,1]

Exercise 1.8. La figure 1.5.1 reprsente une cardiode (section de pomme) dquation (x2 +
y x)2 = (x2 + y 2 ) .
2

(1) Lintrieur est de la cardiode est donne par linquation (x2 + y 2 x)2 < (x2 + y 2 ).
En dduire une mthode probabiliste dapproximation de la surface intrieure de la
cardiode.
(2) On obtient un solide de rvolution en faisant tourner lintrieur de la cardiode autour de
laxe des x (on obtient quelque chose qui ressemble une pomme). Proposer une mthode
probabiliste dapproximation du volume de ce solide.
(3) En fait, la cardiode admet aussi une description paramtrique en coordonnes polaires :
= 1 + cos(). En dduire que le volume dune pomme est 8/3.
Exercice 1.9 (Plus difficile). Soient X1 , . . . , Xn des v.a. i.i.d. suivant une loi exponentielle
de paramtre 1, de somme note Sn .
1.5. EXERCICES 7

Figure 1.5.1. Cardiode

(1) En utilisant le TCL, calculer la limite quand n tend vers linfini de


 Sn 
P a n 1 b ,
n
pour a et b deux rels.
(2) On rappelle que Sn suit une loi (n, 1), i.e. a pour densit la fonction
xn1
x 7 1[0,+) (x) exp(x),
(n)
calculer directement la mme quantit que ci-dessus.
(3) Retrouver la formule de Stirling
n n
n! 2n .
n+ e
(On rappelle que (n) = (n 1)!.)
Chapitre 2

Simulation de variables alatoires

Comme nous lavons vu dans le chapitre prcdent, pour appliquer une mthode de Monte-
Carlo, il faut savoir simuler suivant une loi donne. Nous supposons ici que nous disposons dun
gnrateur de nombres alatoires de loi U([0; 1]). Le langage R contient les gnrateurs dun grand
nombre de lois classiques.
Remarque 2.1. Les ordinateurs ne disposent pas de composant au comportement alatoire.
Quand on demande un programme de gnrer des nombres alatoires de loi U([0; 1]), il renvoie
des nombres pris dans une liste la suite les uns des autres. En gnral, cette suite est suffisamment
dsordonne et longue pour avoir un comportement similaire celui dune suite alatoire. Dans
le cas dun programme crit dans un langage de bas niveau (type C++), lutilisateur aura intrt
construire lui-mme une procdure de gnration de nombres alatoires (la liste utilise par le
langage tant trop peu dsordonne).

2.1. Inversion de la fonction de rpartition


Lemme 2.2. Soit X une v. a. r. (variable alatoire relle) de fonction de rpartition F . Posons,
pour 0 t 1,
F 1 (t) = inf{x, F (x) t} .
Alors, si U U([0; 1]) (veut dire : U suit la loi U([0; 1]) ), alors F 1 (U ) a mme loi que X.
Dmonstration. Attention, si F est continue, F 1 est linverse de F mais ce nest pas le
cas si F nest pas continue (puisque F na alors pas dinverse). La fonction F 1 ainsi dfinie
sappelle le pseudo-inverse. Voir les figures 2.1.1 et 2.1.2 pour un exemple (pour t [1/3; 2/3],
{x, F (x) t} = [2; +[ et donc F 1 (t) = 2). Soit maintenant u [0; 1] et t R.

Figure 2.1.1. Fonction de


rpartition F .
Figure 2.1.2. Fonction F 1 .

Si u F (t) alors t {x, F (x) u} donc F 1 (u) t.


Supposons que F 1 (u) t. Soit  > 0. Il existe x t +  tel que F (x) u. La fonction
F est croissante donc F (x) F (t + ), donc u F (t + ). Ceci est vrai pour tout  > 0
et la fonction F est continue droite (parce que cest une fonction de rpartition) donc
u F (t).
9
10 2. SIMULATION DE VARIABLES ALATOIRES

Nous avons donc


[u F (t)] [F 1 (u) t] .
Nous avons alors, pour tout t R,
P(F 1 (U ) t) = P(U F (t)) = F (t) .
Donc F 1 (U ) a la mme fonction de rpartition que X (et donc ils ont la mme loi). 

Exemple 2.3. Dans le cas de la fonction F donne dans les figures 2.1.1, 2.1.2, nous avons
x

3 si x [0; 1[ ,
x + 1 si x [1; 2] ,

F (x) = 3 3


1 si x 1 ,
0 si x 0 ,


si t 0; 31 ,
 
3t

1
1 2
F (t) = 1 si t 3 ; 3 ,
si t 32 ; 1 .
 
3t 1

Le programme 2.1 renvoie une variable de fonction de rpartition F (on parle ici de la variable
affiche la fin du programme).

Programme 2.1 Simulation par inversion de la fonction de rpartition


finv<-function(u)
{
if (u<1/3)
{ z=3*u }
else if (u<2/3)
{ z=1 }
else
{ z=3*u-1 }
return(z)
}
u=runif(1,0,1) #simulation dune variable uniforme (dans [0;1])
print(finv(u))

2.2. Simulation dune loi exponentielle


On rappelle que X suit une loi exponentielle de paramtre (> 0) si pour tout t R+ ,
P(X > t) = exp(t) .
Nous noterons cette loi E(). Si F est la fonction de rpartition de X, nous avons alors F (t) =
1 et et
log(1 x)
F 1 (x) = .

Si U U([0; 1]), nous avons, daprs le rsultat ci-dessus : log(1 U )/ E(). Remarquons
que 1 U a mme loi que U et donc
log(U )
E() .

Attention : nous crivons log pour le logarithme nprien.
2.3. SIMULATION DE VARIABLES GAUSSIENNES (ALGORITHME DE BOX-MLLER) 11

2.3. Simulation de variables gaussiennes (algorithme de Box-Mller)


Lemme 2.4. Si U, V sont de loi U([0; 1]) et indpendantes alors
p p
( 2 log(U ) cos(2V ), 2 log(U ) sin(2V ))
 
1 0
est un vecteur gaussien de matrice de covariance (donc les deux composantes sont ind-
0 1
pendantes et de loi N (0, 1)).
Dmonstration. On se rappelle que pour identifier la loi dune variable alatoire, il suffit de
savoir calculer les esprances de fonctions de cette variables alatoires (pour toute fonction dans
un ensemble de fonctions tests, voir proposition 6.2.10 dans le polycopi de L3 1). Nous prenons
donc f Cb+ (R2 ) (Cb+ (R2 ) est lensemble des fonctions positives, continues, bornes de R2 dans
R). Notons X et Y deux variables indpendantes de loi N (0, 1). Nous avons :
2 2
e(x +y )/2
Z
E(f (X, Y )) = f (x, y) dxdy .
R2 2
Nous voulons effectuer le changement de variable x = r cos(), y = r sin() (r R+ , [0; 2])
(cest le passage usuel en coordonnes polaires). Nous obtenons la matrice jacobienne
 x y   
r r cos() sin()
J1 (x, y) = x y = ,

r sin() r cos()

de dterminant det(J1 ) = r cos2 () + r sin2 () = r. Donc


2
er /2
Z
E(f (X, Y )) = f (r cos(), r sin()) |r|drd .
(r,)R+ [0;2] 2
p
Nous effectuons maintenant un nouveau changement de variable : r = 2 ln(u), = 2v ((u, v)
[0; 1]2 ). Nous obtenons la matrice jacobienne
" #
u2 0
J2 (r, ) = 1 2 ,
2 2 log(u)

2
de dterminant det(J2 ) = . Donc
u 2 log(u)
Z p p up
E(f (X, Y )) = f ( 2 ln(u) cos(2v), 2 ln(u) sin(2v)) 2 ln(u)
(u,v)[0;1]2 2
2
p dudv
u 2 ln(u)
Z p p
= f ( 2 ln(u) cos(2v), 2 ln(u) sin(2v))dudv
(u,v)[0;1]2
p p
= E(f ( 2 ln(U ) cos(2V ), 2 ln(U ) sin(2V ))) .
Ceci est vrai pour toute fonction f Cb+ (R2 ) donc (X, Y ) et
p p
( 2 ln(U ) cos(2V ), 2 ln(U ) sin(2V ))
ont mme loi. 

variable X de loi N (0, 1), il suffit donc de prendre U, V U([0; 1]) indpen-
Pour simuler unep
dantes et poser X = 2 log(U ) cos(2V ). Pour simuler une variable X de loi N (, 2 ), il suffit
de prendre X = + Y avec Y N (0, 1).

1. http ://math.unice.fr/~rubentha/enseignement/poly-integration-probas.pdf
12 2. SIMULATION DE VARIABLES ALATOIRES

2.4. Simulation dune variable alatoire poissonienne


Une variable de loi de Poisson de paramtre > 0 est une variable valeurs dans N telle que
e n
P(X = n) =
n!
(ici la variable sappelle X).
Lemme 2.5. Soit (Ti )i1 une suite de variables i.i.d. de loi E() ( > 0). Alors

n1{T1 ++Tn t<T1 ++Tn+1 }


X
Nt =
n1

est une variable de Poisson de paramtre t.


Dmonstration. Commenons par vrifier que la variable Nt est bien dfinie. Pour tout
, il existe un k N et un seul tel que T1 + + Tk t < T1 + + Tk+1 et donc
Nt () = k 1{T1 ++Tk t<T1 ++Tk+1 } (tous les autres termes de la somme sont nuls). Nous avons,
pour tout n N ,

P(Nt = n) = P(T1 + + Tn t < T1 + + Tn+1 )


Z Z
= ... 1{t1 ++tn t<t1 ++tn+1 } et1 . . . etn+1 dt1 . . . dtn+1
0t1 t tn+1 0
Z Z Z Z
= ... et1 . . . etn+1 dtn+1 dtn . . . dt1
0t1 t 0t2 tt1 0tn t(t1 ++tn1 ) 1(t1 ++tn )tn+1
Z Z Z
+
et1 . . . etn etn+1 1(t ++t ) dtn . . . dt1

= ...
1 n
0t1 t 0t2 tt1 0tn t(t1 ++tn1 )
Z Z Z
= ... n e dt1 . . . dtn .
t1 0 0t2 tt1 0tn t(t1 ++tn1 )

Montrons par rcurrence sur n N que pour tout x 0,


xn
Z Z Z Z
... 1dtn . . . dt1 = .
0t1 x 0t2 xt1 0t3 x(t1 +t2 ) 0tn x(t1 ++tn1 ) n!
1
Pour n = 1, 0t1 x 1dt1 = x = x1! . Pour n = 2,
R

x
(x t1 )2 x2
Z Z Z 
1dt2 dt1 = x t1 dt1 = = .
0t1 x 0t2 xt1 0t1 x 2! 0 2!
Si la proprit est vraie jusquau rang n, calculons
Z Z Z Z
... 1dtn+1 . . . dt1
0t1 x 0t2 xt1 0t3 x(t1 +t2 ) 0tn+1 x(t1 ++tn )
Z Z Z Z !
= ... 1dtn+1 . . . dt2 dt1
0t1 x 0t2 xt1 0t3 x(t1 +t2 ) 0tn+1 x(t1 ++tn )

(par la proprit au rang n)


x
(x t1 )n (x t1 )n+1 xn+1
Z 
= dt1 = = .
0t1 x n! (n + 1)! 0 (n + 1)!
Nous avons donc
n e
P(Nt = n) = .
n!


Nous pouvons donc simuler une variable de Poisson laide dune boucle tant que (et en
utilisant le rsultat de la partie 2.2) ( voir le programme 2.2)
2.5. MTHODE DE REJET 13

Programme 2.2 Simulation dune variable alatoire poissonienne.


lambda=2 #on fixe une valeur arbitraire de lambda
t=1 #on fixe une valeur arbitraire de t
b=0
s=0
n=-1
while (b==0)
{
n=n+1
s=s-log(runif(1,0,1))/lambda
if (s>t)
{
b=1
}
}
print(n)

2.5. Mthode de rejet


On veut simuler une variable de densit f (dans Rd ) et on suppose quil existe une loi de
densit g facile simuler telle que
(2.1) x Rd , f (x) kg(x) .
f (x)
avec k une constante. Posons (x) = kg(x) sur lensemble {x, g(x) > 0}.

Proposition 2.6. Soit (Xn , Un )n1 une suite de variable i.i.d. avec pour tout n, Xn est de
loi de densit g et est indpendante de Un , qui est de loi uniforme sur [0; 1]. Soit T = inf{n, Un
(Xn )} (T est un entier alatoire). Soit X = XT .
Alors la v.a. X ainsi simule est de loi de densit f .
Dmonstration. Remarquons que (Xn ) est dfini pour presque tout . En effet, P(Xn
{x : g(x) = 0}) = 0.
Soit Cb+ (Rd ). Nous avons (XT ) = n=1 f (Xn )1n=T (pour tout , cette somme contient
P+
au plus un terme non nul).
+
E((Xn )1n=T )
X
E((X)) =
n=1
+ n1
1Ui >(Xi ) 1Un (Xn ) )
X Y
= E((Xn )
n=1 i=1
+ n1
E((Xn )1Un (Xn ) ) E(1Ui >(Xi ) ) .
X Y
(par indpendance des (Xi , Ui )) =
n=1 i=1

Calculons, pour tout n,


Z Z !
E((Xn )1Un (Xn ) ) = 1u(x) du (x)g(x)dx
xRd u[0;1]
Z
f (x)
= (x)g(x)dx
xRd kg(x)
Z
1 1
= (x)f (x)dx = .
k xRd k
Nous en dduisons, pour tout n,
E(1Un >(Xn ) ) = 1 E(1Un (Xn ) )
14 2. SIMULATION DE VARIABLES ALATOIRES

1
= 1 .
k
Remarquons que lingalit f kg implique
Z Z
f (x)dx k g(x)dx ,
Rd Rd
donc k 1. Nous avons donc
+ Z  n1
X 1 1
E((X)) = (x)g(x)dx 1
n=1 Rd k k
Z
1 1
(somme gomtrique) = (x)g(x)dx
k 1 1 k1

Rd
Z
= (x)g(x)dx .
Rd
Do le rsultat. 
x3
Exemple 2.7. Soit f (x) = e Z 1x1 avec Z = 1 ex dx (la constante Z nest pas connue
R + 3

1
mais nous nen aurons pas besoin). Soit g(x) = x1 x2 . Les fonctions f et g sont des densits de
probabilit. Il est facile de simuler suivant la loi de densit g en utilisant la technique dinversion
3
de la fonction de rpartition. Nous commenons par tudier la fonction h : x 1 7 x2 ex . Nous
3
avons h0 (x) = (2x 3x4 )ex 0 pour tout x 1. Donc, pour tout x 1, h(x) h(1) = e1 .
Nous en dduisons (pour x 1)
1
f (x) g(x) .
eZ
Nous posons k = 1/(eZ). Soit
f (x) 3
(x) = = x2 ex +1 .
kg(x)
Nous ne connaissons pas Z mais nous pouvons calculer (x) pour tout x 1 donc nous pouvons
utiliser lalgorithme de simulation par rejet pour simuler suivant la densit f (voir programme
2.3). Dans ce programme, nous utilisons les rsultats suivants pour simuler suivant la densit g

Programme 2.3 Simulation par la mthode de rejet.


b=0
while (b==0)
{
u=runif(1,0,1)
v=runif(1,0,1)
y=1/(1-v)
if (u<y^2*exp(-y^3)*exp(1))
{ b=1 }
}
print(y)

par inversion de la fonction de rpartition :


Z x  x
1 1
pour x 1, G(x) = g(u)du = =1 ,
1 u 1 x
1
pour u [0; 1], G1 (u) = .
1u
Exemple 2.8 (Loi conditionnelle). Soit X une variable alatoire valeur dans R, de densit
g. Soit A un sous-ensemble (mesurable) de R tel que P(X A) 6= 0. La loi de X conditionn
tomber dans A a pour densit
g(x)1A (x)
x 7 f (x) = R .
uA
g(u)du
2.6. VRIFICATION PAR HISTOGRAMME 15

Nous remarquons que pour tout x, f (x) Cg(x) avec C = ( uA f (u)du)1 . Donc, si nous tirons
R

(Xn , Un )n0 i.i.d. avec Xn


Un , Xn de loi de densit g, Un U([0; 1]), et si nous posons
T = inf{n : Un f (Xn )/(Cg(Xn ))}, alors XT est de loi de densit f . Ici, le ratio f /(Cg) se
simplifie en
f (x)
= 1A (x) .
Cg(x)
Donc lalgorithme de rejet consiste simplement tirer des Xn jusqu ce quil y en ait un dans A.
Remarque 2.9 (Temps de calcul). Le nombre de boucles effectues dans la mthode du rejet
est alatoire. Sous les hypothses de la proposition ci-dessus, ce nombre de boucles est T et nous
pouvons calculer son esprance
+
X
E(T ) = nP(T = n)
n=1
+
X
= nP(U1 > (X1 ), . . . , Un1 > (Xn1 ), Un (Xn ))
n=1
+
X n1
(par indpendance des (Xi , Ui )) = n (P(U1 > (X1 ))) P(U1 (Xn ))
n=1
+  n1
X 1 1
(daprs la dm. de la prop.) = n 1
n=1
k k
 
1 1
= 1 ,
k k
avec (z) la srie entire (z) = n1 nz n1 (de rayon de convergence 1, cest dire que cette srie
P

converge pour |z| < 1). Nous avons (z) = 0 (z) avec (z) = n0 z n = 1z 1 1
P
. Donc (z) = (1z) 2.

Donc
1 1
E(T ) =  = k .
k 1 1 1 2
k
Donc le temps de calcul moyen est proportionnel k. Cest pourquoi on cherche une constante k
satisfaisant (2.1) qui soit la plus petite possible.
Remarque 2.10. Lalgorithme ci-dessus est encore valable si la v.a. X simuler a une densit
f par rapport une mesure quelconque et que cette densit est majore par kg o g est la densit
par rapport f dune variable Y facile simuler. Ceci se traduit par
Z Z
P(X A) = f (x)(dx) kg(x)(dx) = kP(Y A) .
A A
Si la v.a. X a une loi porte par un ensemble discret E, on peut choisir pour la mesure de
comptage sur E et la mthode de rejet est aussi valable pour les lois discrtes, f (x) tant dans ce
cas gale P(X = x).

2.6. Vrification par histogramme


Quand on simule une variable alatoire relle laide dune des mthodes ci-dessus, on peut
vrifier empiriquement que la loi simule est bien celle que lon voulait. Soient X1 , X2 , . . . des v.a.r.
i.i.d. de loi de densit f (avec une drive f 0 vrifiant kf 0 k < C pour une certaine constante C).
Pour tout a < b,
n
1 P(X1 [a; b])
1[a;b] (Xi ) n+
X p.s.
,
n(b a) i=1 ba
1 [a;b]) 1
Rb
et P(Xba = ba a
f (t)dt donc


P(X1 [a; b])

1 Z b
f (a) = f (t) f (a)dt

ba b a a


16 2. SIMULATION DE VARIABLES ALATOIRES

Z b
1
|f (t) f (a)|dt
ba a
Z b
1
C|t a|dt
ba a
C(b a)
= 0 .
2 b&a

Donc lhistogramme (correctement renormalis) des n valeurs simules X1 , X2 , . . . , Xn est proche


de la densit f . Dans le programme 2.4, nous simulons des variables de densit f : x R 7
1x1 ex /Z (comme dans lexemple 2.7) et nous traons lhistogramme empirique des variables
3

et le graphe de f dans le mme repre (voir figure 2.6.1).


3
Density

2
1
0

1.0 1.2 1.4 1.6 1.8 2.0

tab

Figure 2.6.1. Histogramme et densit

Pour un exemple de construction dhistogramme pour la loi uniforme, voir : http://www-sop.


inria.fr/mefisto/java/tutorial1/node7.html#SECTION00031010000000000000.

2.7. Exercices
Exercice 2.1. (1) Simuler des variables exponentielles par la mthode du cours.
(2) Tracer un histogramme des variables simules par cette mthode. Comparer avec un trac
de la densit de la loi exponentielle.
Exercice 2.2. Montrer que lalgorithme suivant permet de simuler une ralisation de loi
uniforme sur le disque unit de R2 .
(1) Simuler (U, V ) couple de deux v.a. i.i.d. de loi uniforme sur [1, 1].
(2) Tant que U 2 + V 2 > 1, rpter (1).
(3) Renvoyer la valeur de (U, V ) en fin de boucle.
Coder lalgorithme en R.
Exercice 2.3. Montrer que lalgorithme suivant permet de simuler un couple de v.a. i.i.d. de
loi gaussiennes centres rduites.
2.7. EXERCICES 17

Programme 2.4 Trac dun histogramme


#Nous dclarons une fonction qui simule une variable de densit f.
#Remarque : largument t nest pas utilis.
simu<-function(t)
{
b=0
while (b==0)
{
u=runif(1,0,1)
v=runif(1,0,1)
y=1/(1-v)
if (u<y^2*exp(-y^3)/exp(1))
{ b=1 }
}
return(y)
}
f1<-function(x)
{
if (x>1)
{ z=exp(-x^3) }
else
{ z=0 }
return(z)
}
Zi=integrate(f1,1,5)
Z=Zi$value #calcule la constante Z
n=5000
tab=c()
for (i in 1:n)
{
x=simu(1)
tab=c(tab,x)
}
dev.off()
hist(tab,freq=FALSE)
abs=seq(1.01,5,0.01)
y=exp(-abs*abs*abs)/Z
lines(abs,y,type=l,col=red)

(1) Simuler (U, V ) couple de deux v.a. i.i.d. de loi uniforme sur [1, 1].
(2) Tant que U 2 + V 2 > 1, rpter (1).
(3) Renvoyer la valeur de (U, V ) et de R2 = U 2 + V 2 en fin de boucle.
(4) Poser Z = [2 ln(R2 )/R2 ]1/2 .
(5) Poser X = ZU et Y = ZV .
Coder lalgorithme en R. Vrifier laide dun histogramme que la variable X simule suit bien
une loi gaussienne centre rduite.
Exercice 2.4. Soient X et Y deux v.a. i.i.d. de loi exponentielle de paramtre 1.
(1) Montrer que la loi conditionnelle de X sachant 2Y > (1 X)2 a pour densit
2 x2 
x 7 exp 1[0,+[ (x).
2 2
18 2. SIMULATION DE VARIABLES ALATOIRES

(2) Soit S une v.a. de loi Bernoulli de paramtre 1/2, indpendante du couple (X, Y ). Montrer
que la loi conditionnelle de (2S 1)X sachant 2Y > (1 X)2 suit une loi normale centre
rduite.
(3) En dduire un algorithme de simulation de la loi N (0, 1). Le coder en R.
Exercice 2.5. Soient f et g (R 7 R) des densits. Soit h la fonction :
sup(f (x), g(x))
h(x) = R .
R
sup(f (t), g(t))dt
(1) On simule une v.a. Z suivant une mthode d acceptation/rejet. On tire X, Y indpen-
dantes respectivement de lois de densit f, g et U, V indpendantes uniformes sur [0, 1] (et
indpendantes de X, Y ) jusqu ce que
U f (X) g(X), auquel cas on prend Z = Y
ou V g(Y ) f (Y ) et U f (X) > g(X), auquel cas on prend Z = X.
Montrer que Z est de loi de densit h.
(2) On suppose ici que f densit de la loi N (0, 1) et g densit de la loi N (3/2, 1).
(a) crire un programme qui simule des variables alatoires suivant h.
(b) crire un programme qui dessine un histogramme empirique de h.
Exercice 2.6. On dsigne par f la densit
r  2
2 x
f (x) = exp 1{x>0} , x R.
2
(1) Pour > 0 fix, trouver une constante c > 1 telle que
f (x) c exp(x) , x R+ .
(2) En dduire une mthode de simulation de la loi de densit f
(3) Trouver tel que le temps moyen de calcul dans la mthode propose soit le plus petit
possible.
Exercice 2.7. Pour a > 0 donn, on dsigne par f la fonction
f (x) = 1[0;a] (x) exp(x) , x R .
(1) Trouver une constante C telle que Cf soit une densit.
(2) Trouver une constante c1 > 1 telle que
1[0;a] (x)
Cf (x) c1 , x R.
a
(3) Trouver une constante c2 > 1 telle que
Cf (x) c2 1[0;+[ (x) exp(x) , x R .
(4) On veut mettre en place une mthode de rejet pour simuler la loi densit f en utilisant
la loi uniforme sur [0; a] ou la loi exponentielle de paramtre 1. Laquelle vaut-il mieux
choisir ? Coder la mthode.
Exercice 2.8. On souhaite simuler suivant la loi de densit
1
f : x R 7 exp(x2 )1x1 ,
Z
R + x2
avec Z = 1 e dx.
(1) Trouver une densit g (suivant laquelle on sait simuler) et une constante C telles que
f Cg.
(2) Soit X N (0, 1/2). Montrer que f est la densit de la loi de X sachant X 1 (on pourra
calculer lesprance sur une fonction test).
2.7. EXERCICES 19

(3) Coder la simulation de la loi de densit f (suivant la mthode du rejet base sur g, C).
Exercice 2.9. Soit X une variable alatoire admettant pour fonction de rpartition
F (x) = (1 exp(x ))1[0;+[ (x) ,
avec et des paramtres > 0. Expliciter la densit de la loi de X et proposer une mthode de
simulation de cette loi.
Exercice 2.10. Soit X une loi gomtrique de paramtre p :
P(X = k) = p(1 p)k1 , pour k N .
(1) Rappeler la mthode classique de simulation de X laide de tirages pile ou face.
(2) Donner une autre mthode de simulation de cette loi utilisant la fonction de rpartition.
(3) Comment comparer lefficacit des 2 mthodes ?
Exercice 2.11. Soit n N . Soient U1 , U2 , . . ., Un des variables i.i.d. de loi U([0; 1]). On note
(V1 , . . . , Vn ) la variable alatoire telle que, pour tout , {V1 (), . . . , Vn ()} = {U1 (), . . . , Un ()}
et V1 () V2 () Vn () (cest une remise en ordre des variables U1 , . . . , Un ). Le vecteur
alatoire (V1 , . . . , Vn ) est appel statistique dordre uniforme sur [0; 1].
(1) Soit Cn = {(v1 , . . . , vn ) [0; 1] : v1 v2 vn }. Montrer que la densit de la loi de
(V1 , . . . , Vn ) est
(v1 , . . . , vn ) Rn 7 n! 1Cn (v1 , . . . , vn ) .
(2) Soient X1 , X2 , . . . , Xn , Xn+1 des variables i.i.d. de loi E(1). Montrer que
 
X1 X1 + X2 X1 + + Xn
, ,...,
X1 + X2 + + Xn+1 X1 + X2 + + Xn+1 X1 + X2 + + Xn+1
a mme loi que (V1 , . . . , Vn ).
Chapitre 3

Rduction de variance

Nous avons vu au chapitre 1 (section 1.2.2) que si nous calculons une quantit E(X) par
la mthode de Monte-Carlo, cest dire si nous approchons E(X) par une moyenne empirique
X1 ++Xn E(X) X1 ++Xn est dordre
n , X1 , X2 , . . . i.i.d. de mme loi que X), alors lerreur n
/n, o 2 = V(X). Nous allons prsenter ici des mthodes qui permettent dcrire E(X) = E(Y )
avec V(Y ) V(X). Ces mthodes sont dites de rduction de variance .

3.1. chantillonage prfrentiel ( importance sampling en anglais)


Nous cherchons calculer E(g(X)) avec X variable valeurs dans Rd , de densit f . Pour
toute densit fe > 0, nous pouvons crire
Z Z !
g(x)f (x) e g(Y )f (Y )
E(g(X)) = g(x)f (x)dx = f (x)dx = E ,
Rd Rd fe(x) fe(Y )
avec Y de densit fe. Nous avons donc deux mthodes de Monte-Carlo pour approcher E(g(X)) :
g(X1 ) + + g(Xn )
E(g(X)) ,
n
!
1 g(Y1 )f (Y1 ) g(Yn )f (Yn )
E(g(X)) + + ,
n fe(Y1 ) fe(Yn )
avec des X1 , X2 , . . . i.i.d. de mme loi que X, des Y1, Y2 , . . . i.i.d.
 de mme loi que Y . La deuxime
mthode est plus intressante que la premire si V g(Ye)f (Y ) V(g(X)).
f (Y )
Supposons g 0 et choisissons fe : x 7 g(x)f (x)
E(g(X)) (cest bien une densit de probabilit), nous
avons alors
! !2 !!2
g(Y )f (Y ) g(Y )f (Y ) E g(Y )f (Y )
V = E
fe(Y ) fe(Y ) fe(Y )
2
g(u)2 f (u)2
Z Z
2e
= 2 2
(E(g(X))) f (u)du E(g(X))f (u)du
e
Rd g(u) f (u) Rd
= (E(g(X)))2 (E(g(X)))2 = 0 .
Nous avons donc ici une mthode de Monte-Carlo de variance nulle, ce qui semble navoir aucun
sens. En fait, la variance de cette mthode na pas dintrt car cette mthode nest pas impl-
mentable. En effet, il faudrait pour cela savoir simuler suivant la densit fe, mais lexpression de fe
contient la constante E(g(X)), que nous ne connaissons pas.
La discussion ci-dessus nous donne une ide dune dmarche suivre pour rduire la variance.
(1) Trouver une fonction fe1 proche de |f g| et telle que lon sache simuler suivant la densit
R
fe = fe1 / d fe1 (x)dx.
R

(2) Soit Y variable alatoire de densit fe. Comparer V(g(X)) et V(g(Y )f (Y )/fe(Y )) (il faut
en gnral approcher ces variables par un estimateur, voir par exemple le lemme 1.4 ce
sujet).
La fonction fe sappelle la fonction dimportance.
21
22 3. RDUCTION DE VARIANCE

R1
Exemple 3.1. On cherche calculer I = 0
cos(x/2)dx par une mthode de Monte-Carlo.
On peut approcher I par
cos(U1 /2) + + cos(Un /2)
(3.1) I ,
n
avec U1 , U2 , . . . i.i.d. de loi U([0; 1]) (toujours pour n grand ). Si nous reprenons les notations
ci-dessus, nous avons g(x) = cos(x) et f (x) = 1 (pour x [0; 1]). Soit fe1 (x) = 1 x,
1x
fe(x) = .
(1/2)

La fonction fe1 est (grossirement) proche de g f . Si U U([0; 1]) alors 1 U est de loi de
densit fe (nous trouvons ce rsultat par la mthode dinversion de la fonction de rpartition, voir
chapitre 2). Donc nous savons simuler suivant la loi de densit fe. Dans le programme 3.1, nous
estimons les variances des deux mthodes. Nous trouvons 1.101 pour la mthode de lquation
(3.1) ci-dessus et 7.103 pour la mthode dchantillonage dimportance par fe. La variance est
donc rduite.

Programme 3.1 Comparaison de variances


simu<-function(t)
{
u=runif(1,0,1)
return(1-sqrt(u))
}
s=0
for (i in 1:n)
{
u=runif(1,0,1)
v=runif(1,0,1)
u1=cos(pi*u/2)
v1=cos(pi*v/2)
s=s+(u1-v1)^2
}
s=s/(2*n)
cat("Variance de la premire mthode : ",s)
s=0
for (i in 1:n)
{
v=simu(1)
v1=cos(pi*v/2)/(2*(1-v))
w=simu(1)
w1=cos(pi*w/2)/(2*(1-w))
s=s+(v1-w1)^2
}
s=s/(2*n)
cat("Variance de la mthode dchantillonage prfrentiel : ",s)

3.2. Variable de contrle


Supposons que lon veuille calculer E(f (X)) avec X une variable alatoire. La premire m-
thode consiste faire lapproximation
f (X1 ) + + f (Xn )
E(f (X))
n
3.3. VARIABLES ANTITHTIQUES 23

avec X1 , X2 , . . . i.i.d. de mme loi que X (toujours pour n grand ). Si on sait calculer E(h(X))
pour une certaine fonction h, alors on peut aussi faire lapproximation
(f (X1 ) h(X1 )) + + (f (Xn ) h(Xn ))
E(f (X)) + E(h(X)) .
n
Il faut ensuite comparer les variances pour savoir quelle est la mthode la plus avantageuse. Dans
le cas de la deuxime mthode, lerreur est
 
(f (X1 ) h(X1 )) + + (f (Xn ) h(Xn ))
E(f (X)) + E(h(X))
n
(f (X1 ) h(X1 )) + + (f (Xn ) h(Xn ))
= E(f (X) h(X)) .
n

Elle est dordre de grandeur V(f (X) h(X))1/2 / n.
La mthode est donc la suivante.
(1) Trouver une fonction h proche de f et telle que lon sache calculer E(h(X)) (le fait que h
soit proche de f devrait faire en sorte que V(f (X) h(X)) est petite).
(2) Estimer les variances V(f (X)) et V(f (X) h(X)), et les comparer.
R1
Exemple 3.2. On chercher calculer I = 0 exp(x2 )dx par une mthode de Monte-Carlo.
2
Nous avons I = E(eU ) avec U U([0; 1]). Donc nous pouvons faire lapproximation
2 2
eU1 + + eUn
I ,
n
avec U1 , U2 , . . . i.i.d., U([0; 1]) (toujours pour n grand ). Nous avons donc une premire
mthode de Monte-Carlo. Avec les notations ci-dessus, nous avons f (x) = exp(x2 ). Remarquons
que h : x 7 1 + x2 est proche de f sur [0; 1] (cest le dbit du dveloppement limit de f en 0).
Nous savons calculer Z 1
1 4
E(h(U )) = 1 + x2 dx = 1 + = .
0 3 3
Nous pouvons faire lapproximation
 2   2 
eU1 1 U12 + + eUn 1 Un2
I E(h(U )) .
n
Nous estimons les deux variances dans le programme 3.2. La variance est rduite dun facteur 10
grce cette mthode.

3.3. Variables antithtiques


R
Supposons que lon cherche calculer I = [0;1]d f (u1 , . . . , ud )du1 . . . dud (une intgrale sur
lhypercube de dimension d). Nous avons I = E(f (U )) avec U = (U1 , . . . , Ud ) variable alatoire
dont les composantes sont indpendantes et de loi U([0; 1]). Nous pouvons utiliser lapproximation
f (X1 ) + + f (Xn )
I ,
n
loi
avec X1 , X2 , . . . i.i.d. de mme loi que U . Nous avons (1, . . . , 1) U = U . Alors
 
f ((1, . . . , 1) U ) + f (U )
I=E ,
2
ce qui nous donne lide dune deuxime approximation
n
1 X f ((1, 1, . . . , 1) Xi ) + f (Xi )
I .
n i=1 2
 
Lemme 3.3. Sous les hypothses ci-dessus, V f ((1,...,1)U 2
)+f (U )
V(f (U )). (La variance
est donc toujours rduite.)
24 3. RDUCTION DE VARIANCE

Programme 3.2 Variable de contrle.


n=5000
s=0
for (i in 1:n)
{
u=runif(1,0,1)
v=runif(1,0,1)
s=(exp(u*u)-exp(v*v))^2
}
s=s/(2*n)
cat("Variance de la premire mthode : ",s)
s=0
for (i in 1:n)
{
u=runif(1,0,1)
v=runif(1,0,1)
s=(exp(u*u)-1-u*u-exp(v*v)+1+v*v)^2
}
s=s/(2*n)
cat("Variance de la mthode de variable de contrle : ",s)

Dmonstration.
 
f ((1, . . . , 1) U ) + f (U )
V
2
 2 !  2
f ((1, . . . , 1) U ) + f (U ) f ((1, . . . , 1) U ) + f (U )
=E E
2 2
1 1
=E(f ((1, . . . , 1) U )2 ) + E(f (U )2 ) + E(f ((1, . . . , 1) U )f (U )) E(f (U ))2
4 4
(Cauchy-Schwarz)
1 1
E(f ((1, . . . , 1) U )2 ) + E(f (U )2 ) + E(f ((1, . . . , 1) U )2 )1/2 E(f (U )2 )1/2 E(f (U ))2
4 4
= V(f (U )) .

Remarque 3.4. Le mme rsultat est encore valable si on remplace [0; 1]d par un domaine
quelconque A de Rd , si on remplace (u1 , . . . , ud ) [0; 1]d 7 (1 u1 , . . . , 1 ud ) [0; 1]d par une
transformation bijective : A A telle que | det(Jac )(x)| = 1 (x) et si f ((x)) = f (x) pour
tout x A.

3.4. Mthode de stratification


On veut calculer une intgrale de la forme I = E(g(X)) avec X variable de densit f sur un
ensemble D (par exemple par rapport la mesure de Lebesgue). Cette criture nous donne lide
dune premire mthode de Monte-Carlo :
g(X1 ) + + g(Xn )
I ,
n
g(X1 )++g(Xn )
avec X1 , X2 , . . . i.i.d. de mme loi que X. Lerreur commise I n est approximati-
vement de loi N (0, 2 ) avec = V(g(X)).
3.4. MTHODE DE STRATIFICATION 25

F
Supposons que D est partitionn en D1 , D2 , . . . , Dm (ce que nous noterons D = 1im Di ).
Nous dcomposons I en :
Xm
I= pi Ii
i=1
Pm
avec pour tout i, Ii = E(g(X)|X Di ), pi = P(X Di ) (nous avons i=1 pi = 1). Nous
supposons que nous savons simuler suivant la loi L(X|X Di ) pour tout i et que tous les pi sont
connus. Pour chaque i, nous pouvons approcher Ii par une mthode de Monte-Carlo ni tirages :
(i) (i)
g(X1 ) + + g(Xni )
Ii Ibi = ,
ni
(i) (i)
avec des variables X1 , X2 , . . . i.i.d. L(X|X Di ). Chacune de ces approximations a un cot
numrique ni (puisquon fait ni boucles pour calculer la somme ci-dessus). Nous en dduisons une
deuxime approximation :
I p1 Ib1 + + pm Ibm .
Lerreur commise se dcompose dans ce cas en une somme derreur :
m
X
I (p1 Ib1 + + pm Ibm ) = pi (Ii Ibi ) .
i=1

Dans cette somme, chacun des termes est (approximativement) de loi N (0, p2i i2 /ni ) avec
i2 = V(g(X)|X Di )
= E((g(X) E(g(X)|X Di ))2 |X Di )
E((g(X) E(g(X)|X Di ))2 1{XDi } )
=
pi
= p1
i E(g(X) 2
1 {XDi } ) + pi E(g(X)|X Di ) E(1{XDi } )
1 2

i E(g(X)|X Di )E(g(X)1{XDi } )
2p1
i E(g(X) 1{XDi } ) pi E(g(X)1{XDi } ) .
= p1 2 2 2

Pm
Donc lerreur est (approximativement) de loi N (0, i=1 i2 /ni ). Nous
Pmvoulons que cette erreur
soit la plus petite possible donc nous voulons minimiser la variance i=1 p2i i2 /ni . Comme nous
voulons
Pm pouvoir faire une comparaison avec la premire mthode, nous ajoutons la contrainte
i=1 n i = n.
Lemme 3.5. Soit S = {(x1 , . . . , xm ) Rm
+ : x1 + + xm = n}. Soit
m
X p2 2 i i
f : x = (x1 , . . . , xm ) S 7 .
i=1
xi
 
p1 1 pm m
Alors f atteint son minimum en n p1 1 ++pm m , . . . , p1 1 ++pm m .

Dmonstration. Lensemble S est la surface {x Rm : g(x) = n} avec g : x = (x1 , . . . , xm )


R 7 x1 + + xm (plus prcisment, lintersection de cette surface avec Rm
m
+ ). Nous commenons
par chercher les points critiques de f (voir le cours doptimisation pour les dtails de la dmons-
tration qui va suivre). Ce sont les points x de S tels que f (x) est colinaire g(x) (nous notons
pour le gradient). Nous avons
  2 2
p2m m2
 
f f p1 1
f (x) = (x), . . . , (x) = ,..., ,
x1 xm x21 x2m
g(x) = (1, 1, . . . , 1) .
p2 2
Donc nous cherchons x S et R tels que, pour tout i {1, . . . , m}, xi2 i = . Lunique
i
pi i
solution est xi = n p1 1 ++p m m
, pour tout i. La fonction f est convexe (sur Rm+ ) donc ce point
critique est un minimum. Comme il est lunique point critique alors, cest un minium absolu. 
26 3. RDUCTION DE VARIANCE

j k
pi i
Comme nous voulons des ni entiers, nous prenons ni = n p1 1 ++p m m
, pour tout i (rappel :
bxc = inf{n Z : n x}). Dans la pratique, il faudra donc estimer les i et les pi (par une mthode
de Monte-Carlo). Si oublie les parties entires, la deuxime mthode est de variance
m m
X p2 2
i i
X (p1 1 + + pm m ) (p1 1 + + pm m )2
= p2i i2 = .
i=1
ni i=1
npi i n

Lemme 3.6. Nous avons


2 (p1 1 + + pm m )2 .
(La variance est donc bien rduite par la stratification.)
Dmonstration. Nous avons
!2
m
g(X)1{XDi }
X
V(g(X)) = E E(g(X))2
i=1

m
! m
!2
g(X)2 1{XDi }
X X
(les Di partitionnent D) = E E pi E(g(X)|X Di )
i=1 i=1
m
X
pi E(g(X)2 |X Di ) pi E(g(X)|X Di )2

=
i=1
m m
!2
X X
2

+ pi E(g(X)|X Di ) E pi E(g(X)|X Di )
i=1 i=1
Pm
Rappelons que pour x1 , . . . , xm R et 1 , . . . , m R+ tels que i=1 i = 1, nous avons
m m
!2
X X
(3.2) i x2i i xi
i=1 i=1

(cest lingalit de convexit pour la fonction carr). Donc


m
X
pi E(g(X)2 |X Di ) pi E(g(X)|X Di )2

V(g(X))
i=1
m
!
X
(encore (3.2)) pi (E(g(X)2 |X Di ) E(g(X)|X Di )2 )1/2
i=1
m
!2
X
= pi i .
i=1


3.5. Valeur moyenne ou conditionnement


On cherche calculer une intgrale de la forme
Z
I = E(g(X, Y )) = g(x, y)f (x, y)dxdy

o f est la densit du couple (X, Y ). Cette criture nous donne lide dune premire approximation
n
1X
I g(Xi , Yi )
n i=1
1
R
avec des (Xi , Yi ) i.i.d. de mme loi que (X, Y ). Soit h(x) = m(x) g(x, y)f (x, y)dy avec m(x) =
R
f (x, y)dy. Nous avons
Z
E(h(X)) = h(x)f (x, y)dxdy
x,y
3.6. EXERCICES 27

Z Z 
1
= R g(x, v)f (x, v)dv f (x, y)dy
x,y u
f (x, u)du v
R
Z
y
f (x, y)dy
(Fubini) = g(x, v)f (x, v) R dxdv
v,x u
f (x, u)du
Z
= g(x, v)f (x, v)dxdv
v,x
= E(g(X, Y )) .

Supposons que nous savons calculer h(x) pour tout x. Nous avons alors lide dune deuxime
approximation
h(X1 ) + + h(Xn )
I .
n
Lemme 3.7. Nous avons
V(h(X)) V(g(X, Y )) .
(Donc la mthode de la valeur moyenne rduit la variance.)

Dmonstration. Nous savons que E(h(X)) = E(g(X, Y )) donc pour comparer V(h(X)) et
V(g(X, Y )), il suffit de comparer E(h(X)2 ) et E(g(X, Y )2 ). Nous avons :
Z
E(h(X)2 ) = h(x)2 f (x, y)dxdy
x,y
R 2
g(x, v)f (x, v)dv
Z
v
= R f (x, y)dxdy
x,y u
f (x, u)du
g(x, v)2 f (x, v)dx
Z R
v
(Cauchy-Schwarz) R f (x, y)dxdy
x,y u
f (x, u)du
g(x, v)2 f (x, v)
Z Z 
(Fubini) = R f (x, y)dy dxdv
x,v u
f (x, u)du y
Z
= g(x, v)2 f (x, v)dxdv
x,v

= E(g(X, Y )2 ) .

Donc V(h(X)) V(g(X, Y )). 

3.6. Exercices
Exercice 3.1. Cet exercice est inspir par lexercice 1.7 de [Par08]. On veut calculer

I = E(1X>0 eX ) ,

o X N (0, 1) et = 5. On estimera la variance chaque tape de lexercice.

(1) Calculer la variance de la mthode Pnave (quand on tire des X1 , X2 ,. . . i.i.d. de loi
n
N (0, 1) et que lon approche I par n1 i=1 1Xi >0 eXi ).
(2) Proposer une mthode dchantillonage prfrentiel.
(3) Proposer une mthode de variable de contrle.
(4) Amliorer la mthode laide dune technique de variable antithtique.

Exercice 3.2. (1) On sintresse au programme suivant.


28 3. RDUCTION DE VARIANCE

Programme 3.3 Boucle de Monte-Carlo


n=1000
s=0
for (i in 1:n)
{
u=rnorm(1,0,1) #tire une variable N(0,1)
s=s+sqrt(abs(u))
}
print(s/n)

On note Z le rsultat affich par lalgorithme. Quelle est la quantit I approche par
Z?
(2) crire un programme qui estime la variance de la mthode ci-dessus.
(3) Proposer une mthode de rduction de variance pour le calcul de I.
(4) crire un programme qui implmente cette nouvelle mthode. crire un programme qui
estime la nouvelle variance (elle soit tre plus petite que la variance de la question 2).
Exercice 3.3. On veut calculer pl = P(X [l; l + 1]) pour X une variable exponentielle de
paramtre 1 et l 0.
(1) (a) Proposer une mthode de Monte-Carlo pour calculer pl .
(b) Calculer la variance de cette mthode.
(2) (a) Proposer une mthode dchantillonage prfrentiel (par exemple : telle que les nou-
veaux tirages soient tous dans [l; l + 1]).
(b) Calculer la variance de cette mthode.
(3) Comparer les variances des deux mthodes quand l +.
Recommencer avec X N (0; 1). On pourra comparer les variances entre les cas suivants :
densit fe uniforme sur [0, 1] et densit fe de la loi exponentielle conditionne tomber dans [l; l+1].
Exercice 3.4 (Recyclage dans la mthode du rejet). On veut valuer par une mthode de
Monte-Carlo Z
f (x)p(x)dx
R
(o p est une densit de probabilit). On fixe un entier n. On simule X1 , . . . , Xn de densit p par
la mthode du rejet (base sur une ingalit p M q). On doit donc simuler un nombre alatoire
N de variables alatoires Yi de densit q. Parmi celles-ci, notons Z1 , . . . , ZN n les variables Y qui
sont rejetes, cest dire telles que :
p(Yi ) M Ui q(Yi ) .
(1) Quelle est la loi de N ?
(2) Quelle est la loi de Z1 , . . . , ZN n conditionnellement N = n + p ?
(3) Montrez que
n
n N
!
1 X X (M 1)p(Zi )
f (Xi ) + f (Zi )
N i=1 i=1
(M q p)(Zi )
est un estimateur sans biais de E(f (Xi )).
Chapitre 4

Mthodes de Monte-Carlo par chanes de Markov

Dans tout ce chapitre, on suppose que lon est dans un espace E fini ou dnombrable. Les
algorithmes dcrits fonctionnent aussi dans le cas E = R ou E = Rd .

4.1. Rappels sur les chanes de Markov


Thorme 4.1 (Thorme ergodique). Soit Q un noyau de Markov irrductible (sur E). Alors,
il existe une probabilit Q-invariante 0 et de plus :
(1) 0 est lunique probabilit Q-invariante.
(2) Tous les tats sont rcurrents (pour Q).
(3) Si (X n )n0 est une chane de Markov de loi initiale 0 et de transition Q alors
n Z
1 X p.s.
f (X p ) f (x)0 (dx) ,
n + 1 p=0 n+

pour toute fonction f qui est 0 -intgrable.


(4) Si (Xn )n0 est une chane de Markov de loi initiale quelconque et de transition Q alors
n Z
1 X p.s.
f (Xp ) f (x)0 (dx) ,
n + 1 p=0 n+

pour toute fonction f qui est 0 -intgrable.


Ce thorme nous permet dapprocher une intgrale par une moyenne empirique. Ici, la suite
des (Xp ) nest pas i.i.d. mais est une chane de Markov. On parle alors de mthode de Monte-Carlo
par chane de Markov ( MCMC pour Monte Carlo Markov Chain en anglais).
Dfinition 4.2. Si une probabilit sur E vrifie (x)Q(x, y) = (y)Q(y, x) alors est dite
symtrique (par rapport Q) ou Q-symtrique.
Lemme 4.3. Si est Q-symtrique, alors elle est Q-invariante.
Dmonstration. Pour tout y,
X
(Q)(y) = (x)Q(x, y)
xE
X
(symtrie) = (y)Q(y, x)
xE
= (y) .

Dfinition 4.4. Soit Q un noyau de Markov. Pour n dans N , on note
X
Qn (x, y) = Q(x, x1 )Q(x1 , x2 ) . . . Q(xn1 , y) .
x1 ,...,xn1

Pour x E, on note
d(x) := P GCD{n : Qn (x, x) > 0} .
Un lment x de E est dit apriodique si d(x) = 1.
29
30 4. MTHODES DE MONTE-CARLO PAR CHANES DE MARKOV

Exemple 4.5 (Marche simple dans Z.). Soit Q noyau de Markov de Z dans Z donn par
1 1
Q(x, x + 1) = , Q(x, x 1) = , x .
2 2
Pour tout x, Q2 (x, x) = P(X2 = x|X0 = x) (o (Xn ) chane de Markov de transition Q). Nous
avons donc  2
2 1
Q (x, x) P(X2 = x, X1 = x + 1|X0 = x) = > 0.
2
Par ailleurs, si Qn (x, x) > 0 alors n est pair (on fait forcment un nombe pair de pas pour aller
de x x). Donc d(x) = 2. Donc le noyau Q nest pas apriodique.
Dfinition 4.6. Soit Q un noyau de Markov. Si tous les x de E sont apriodique alors Q est
dit apriodique.
Lemme 4.7. Si Q est irrductible, [x E qui est apriodique][Q est apriodique].
Thorme 4.8. Supposons que E est fini et que Q est une matrice de transition irrductible,
apriodique et admettant une probabilit invariante 0 .
(1) Il existe deux rels [0; 1[, M R+ tels que pour tout x, y E,
|Qn (x, y) 0 (y)| M n .
(2) Pour tout x E et toute fonction f : E R, si on appelle (Xn )n0 une chane de Markov
de loi initiale quelconque et de transition Q

n
1 X X loi
n + 1 f (Xp ) 0 (y)f (y) N (0, 2 ) ,
n + 1 p=0 n+
yE

avec une variance 2 < +.


R P
Remarque 4.9. Dans le cas dun espace fini ou dnombrable, xE
f (x)(dx) = xE f (x)(x)
pour toute probabilit et toute fonction f .
Remarque 4.10. Pour toute chane (Xn )n0 de transition Q vrifiant les hypothses du
loi
thorme ci-dessus, Xn 0 (cest le point 1). Le point 2 du thorme ci-dessus nous donne
n+
une vitesse de convergence pour la convergence du thorme ergodique (comme le thorme de la
limite centrale nous donne la vitesse de convergence de la loi des grands nombres).

4.2. Algorithme de Hastings-Metropolis


On seR fixe une loi suivant laquelle on aimerait simuler ou dont on voudrait calculer une
intgrale E f (x)(dx). Nous appellerons la loi cible. On se donne un noyau de Markov Q. Nous
appellerons Q le noyau de proposition. Nous allons construire une chane de Markov (Xn )n0 .
Nous prenons X0 = x0 tel que (x0 ) > 0.
Si Xn = x, nous simulons Yn+1 et Un+1 indpendants (et indpendants des simulations
passes) avec
Yn+1 Q(x, .) , Un+1 U([0; 1]) .
La variable Yn+1 sappelle une proposition. Posons, pour tout x, y,
 
(y)Q(y, x)
(x, y) = min 1, .
(x)Q(x, y)
Alors : (
Yn+1 si Un+1 (Xn , Yn+1 ) ,
Xn+1 =
Xn sinon .
Dans le cas o Un+1 (Xn , Yn+1 ), on dit quon accepte la proposition, et dans le cas
contraire on dit quon refuse la proposition.
4.2. ALGORITHME DE HASTINGS-METROPOLIS 31

Proposition 4.11. La suite alatoire (Xn )n0 construite ci-dessus est une chane de Markov
de transition P avec (
P (x, y) = Q(x, y)(x, y) si x 6= y ,
P
P (x, x) = 1 y6=x P (x, y) .
La loi est P -invariante
Dmonstration. Pour tout x, P(Xn+1 = x|X0 , . . . , Xn ) = P(Xn+1 = x|Xn ) (daprs la
construction ci-dessus). Donc (Xn )n0 est bien une chane de Markov. Calculons, pour tout x 6= y
P(Xn+1 = y|Xn = x) = P(Yn+1 = y, Un+1 (Xn , Yn+1 )|Xn = x)
= P(Yn+1 = y, Un+1 (x, Yn+1 )|Xn = 1)
= P(Yn+1 = y, Un+1 (x, y)|Xn = x)
(Yn+1
Un+1 ) = Q(x, y)(x, y) .
Nous en dduisons
X X
P(Xn+1 = x|Xn = x) = 1 P (x, y) = 1 Q(x, y)(x, y) .
yE y6=x

Pour tout x 6= y,
(x)P (x, y) = (x)Q(x, y)(x, y)
 
(y)Q(y, x)
= (x)Q(x, y) min 1,
(x)Q(x, y)
= min ((x)Q(x, y), (y)Q(y, x))
= min ((y)Q(y, x), (x)Q(x, y))
(on refait le calcul en inversant x et y) = (y)P (y, x)
Donc est symtrique par rapport P . Daprs le lemme 4.3, nous avons donc P = . 
p
4.5 et une loi sur Z telle que (x) = C exp( |x|)
Exemple 4.12. Soit Q dfini dans lexempleP
pour tout x (C est alors la constante telle que xZ (x) = 1. Le programme 4.1 fait une simu-
lation dune marche de Metropolis de noyau de proposition Q et de loi-cible . On remarque quil
nest pas ncessaire de connatre C pour implmenter lalgorithme.

Programme 4.1 Chane de Metropolis


n=100
f<-function(k)
{
return(exp(-sqrt(abs(k))))
}
liste=c()
x=0
for (k in 1:n)
{
liste=c(liste,x)
v=runif(1,0,1)
if (v<0.5)
{ y=x+1 }
else
{ y=x-1 }
u=runif(1,0,1)
alpha=min(1,f(y)*0.5/(f(x)*0.5))
if (u<alpha)
{ x=y }
}
32 4. MTHODES DE MONTE-CARLO PAR CHANES DE MARKOV

Lemme 4.13. Avec les notations dfinies ci-dessus, si Q(x, y) est irrductible et vrifie : x, y,
Q(x, y) 6= 0 Q(y, x) 6= 0, et (x) > 0 pour tout x, y alors P est irrductible.

Dmonstration. Soient x, y dans E, x 6= y. Il existe n dans N et x1 , . . . , xn dans E tels que

Q(x, x1 )Q(x1 , x2 ) . . . Q(xn , y) > 0 .

On peut toujours supposer x 6= x1 , . . . , xn 6= y. On dduit des hypothses que

P (x, x1 )P (x1 , x2 ) . . . P (xn , y) > 0 .

4.3. Algorithme de Metropolis simple


Si Q(x, y) = Q(y, x) pour tout x, y (on dit que le noyau Q est symtrique). Dans la version
 de Metropolis, le noyau Q est symtrique. Dans ce cas, se simplifie en
originale de lalgorithme

(y)
(x, y) = min 1, (x) pour tout x, y.

Proposition 4.14. Si Q est un noyau de Markov irrductible, symtrique et si est une


probabilit non constante telle que (x) > 0 pour tout x, alors la chane de Markov de Metropolis
de noyau de proposition Q et de loi cible est irrductible, apriodique, de loi invariante .

Dmonstration. Pour tout x, y, (x, y) > 0. De plus, pour tout x, y, il existe p N et une
suite x1 , . . . , xp de E telle que Q(x, x1 )Q(x1 , x2 ) . . . Q(xp1 , xp )Q(xp , y) > 0. Donc :

P (x, x1 )P (x1 , x2 ) . . . P (xp , y) = Q(x, x1 )(x, x1 ) . . . Q(xp , y)(xp , y) > 0 .

Pour prouver lapriodicit de P , il suffit de montrer quil existe x tel que P (x, x) > 0. Supposons
que P (x, x) = 0 pour tout x. Or, pour tout x,
X
P (x, x) = 1 P (x, y)
y:y6=x
X X
= Q(x, y) Q(x, y)(x, y)
y y:y6=x
X
= Q(x, x) + Q(x, y)(1 (x, y))
y:y6=x
 
X (y)
= Q(x, x) + Q(x, y) 1 ,
(x) +
y:x6=y

donc
 
X (y)
P (x, x) Q(x, x) = Q(x, y) 1 .
(x) +
y:x6=y

Fixons x E. Les deux termes de lquation ci-dessus sont de signes opposs, ils valent donc 0.
Nous avons donc, pour tout y tel que y 6= x et Q(x, y) 6= 0 (il en existe car Q est irrductible),
 
(y)
(4.1) 1 = 0,
(x) +

cest dire (y) (x). Comme nest pas constante alors il existe y tel que (y) > (x). Mais
en inversant x et y dans (4.1), nous avons (x) (y). Nous aboutissons donc une contradiction.
Donc il existe x tel que P (x, x) > 0. Donc le noyau P est apriodique. 

Sous les hypothse de cette proposition, nous pouvons appliquer le thorme 4.8 sur la vitesse
de convergence.
4.4. LE MODLE DISING 33

4.4. Le modle dIsing


Cest un modle trs populaire en physique statistique. Soit N N. Soit
= {N, N + 1, . . . , 1, 0, 1, . . . , N }2 Z2
(on pourrait aussi regarder ce modle en dimension quelconque en prenant lexposant d N la
place de 2). Nous dfinissons lespace des configurations par
E = {1; 1}
(il sagit donc des fonctions f : {1; 1}). Le cardinal de E est 22N +1 . Pour x E, nous
posons
1 X
H(x) = |x(m) x(m0 )|2 ,
2 0
m,m
|mm0 |=1

o la somme porte sur toutes les paires de sites m, m0 de E qui sont voisins. Remarquons que
H(x) est nulle si x est contante. Soit > 0, nous dfinissons la probabilit sur E :
1 x
(x) = e ,
Z()
avec Z() = xE ex . La constante Z() nest pas connue.
P
Nous aimerions simuler suivant la loi ou calculer des intgrales contre la loi . Pour cela,
nous allons utiliser lalgorithme de Metropolis. Nous allons utiliser un noyau de proposition Q
particulier.
Nous dfinissons une partition de en
+ = {(m1 , m2 ) ; m1 + m2 pair} ,
= {(m1 , m2 ) ; m1 + m2 impair} .

Remarquons que si m appartient + alors tous ses voisins sont dans (et rciproquement).
Pour x E, nous notons
x+ = (x(m), m + ) ,
x = (x(m), m ) .

Les composantes x+ et x sont des restrictions de x (respectivement + et ) et nous crivons


x = (x+ , x ). Nous cherchons maintenant calculer (x+ |x ) ((x+ |x ) = P(X + = x+ |X =
x ) avec X variable alatoire de loi ). Nous avons :
(x+ , x )
(x+ |x ) =
(x)
(x+ , x )
= P
yE (y)
y =x
!
+ 0 2
P P
exp m+ m0 (x (m) x (m ))
|mm0 |=1
= !
y (m0 ))2
P P P
yE exp m+ m0 (y + (m)
y =x |mm0 |=1
!
+ 1 2x+ (m)x (m))
P P
exp m+ m0 (1
|mm0 |=1
= !
2y + (m)x (m0 ))
P P P
yE exp m+ m0 (1 +1
y =x |mm0 |=1
34 4. MTHODES DE MONTE-CARLO PAR CHANES DE MARKOV

!
+ 0
P P
exp 2 m+ m0 x (m)x (m )
|mm0 |=1
= !
y + (m)x (m0 )
P P P
yE exp 2 m+ m0
y =x |mm0 |=1
!
+ 0
Q P
m+ exp 2x (m) m0 x(m )
|mm0 |=1
= !.
y + (m)x (m0 )
P P P
yE exp 2 m+ m0
y =x |mm0 |=1

Cette expression est un produit de fonctions de x+ (m) sur m + . Donc, sous la loi (.|x ), les
composantes X + (m), m sont indpendantes et de loi

X
P(X + (m) = x+ (m)|X = x ) exp +
x (m0 )

2x (m) .
m0
|mm0 |=1

x (m0 )
P
Donc, en notant M = m0
|mm0 |=1

e2M
P(X + (m) = 1|X = x ) = ,
+ e2M
e2M
e2M
P(X + (m) = 1|X = x ) = 2M .
e + e2M
Il est donc trs facile de simuler suivant (.|x ). Nous dfinissons maintenant un noyau Q en
dcrivant comment simuler un saut selon Q. Soit x dans E. Nous tirons U B(1/2). Si U 1/2,
nous tirons Y + de loi (.|x ) et nous sautons en (Y + , x). Si U > 1/2, nous tirons Y de loi
(.|x+ ) et nous sautons en (x+ , Y ). Nous pouvons alors crire :
+
si y = x et y + 6= x+ ,
1

2 (y |x )
1 (y |x+ )

si y + = x+ et y 6= x ,
Q(x, y) = 2(x+ |x )+(x |x+ )


2 si x = y ,

0 dans les autres cas .
Remarquons que le noyau Q est symtrique. Soit
 
(y)
(x, y) = min 1, .
(x)
Pour x, y dans E, nous navons pas besoin de Z() pour calculer (x, y). Nous pouvons donc
simuler la chane de Metropolis de noyau de proposition Q et de loi cible . Nous noterons (Xn )n0
cette chane. Le noyau Q est irrductible et symtrique. La loi nest pas constante. Donc par la
proposition 4.14 et le thorme 4.8, la loi de Xn est proche de (pour n +) et, pour une
fonction f , nous pouvons faire lapproximation
Z n+1
1 X
f (x)(dx) f (Xn ) ,
E n + 1 n=0
quand n +.
Dans les figures (4.4.1) et (4.4.2), nous avons simul des tirages suivant la loi laide de
lalgorithme de Metropolis (les rsultats sont donc approximativement de loi ) pour N = 25. Les
sites en rouge (ou gris fonc) reprsentent des +1 et les sites en vert (ou gris clair) reprsentent
des 1. On sattend ce que les variables tires soient reprsentatives de la loi . On remarque
que plus est grand, plus la loi privilgie les configurations x tels que le nombre de couples
de voisins en dsaccord est petit (on dit que m, m0 sont en dsaccord si x(m) 6= x(m0 )). Et
4.5. ANALYSE BAYSIENNE DIMAGE 35

(a) = 0, 3 (b) = 0, 5

Figure 4.4.1

(a) = 0, 8 (b) = 1

Figure 4.4.2

en effet, dans les tirages effectus, les deux couleurs sont plus mlanges pour petit que pour
grand.

4.5. Analyse baysienne dimage


Reprenons le modle prcdent et associons chaque x de E une image : m reprsente un
pixel, le pixel est noir si x(m) = +1 et blanc si x(m) = 1. Nous observons les couleurs des pixels
et lobservation nous donne la couleur exacte de chaque pixel avec probabilit p (p ]0; 1[). Alors,
la loi a posteriori, ou encore la loi conditionnelle de X = x sachant que lon a observ y (limage
de dpart est modlise par une variable alatoire X parce que nous ne la connaissons pas) est
(x|y) eH(x) pa(x,y) (1 p)d(x,y) ,
o a(x, y) = #{m : x(m) = y(m)}, d(x, y) = #{m : x(m) 6= y(m)}. Nous cherchons alors
simuler une variable de loi (.|y) (pour avoir une ide de limage de dpart).
Remarque 4.15. Le paramtre p reprsente lerreur de mesure. Plus p est petit, moins limage
observe est bruite par rapport limage de dpart. Le paramtre dpend de lide que lon
36 4. MTHODES DE MONTE-CARLO PAR CHANES DE MARKOV

se fait du contraste de limage de dpart. Plus est grand, plus on privilgie les images de fort
contraste.
Nous allons construire une chane de Metropolis semblable celle de la partie prcdente.
Lobservation y est fixe et la loi cible est = ((x), x E) avec (x) = (x|y) pour tout x. En
nous inspirant de la partie prcdente, nous obtenons :
(x+ , x )
(x+ |x ) = P
zE (z)
z =x
!
+ 0 2
pa(x,y) (1 p)d(x,y)
P P
exp m+ m0 (x (m) x (m ))
|mm0 |=1
= !
z (m0 ))2
P P P + (m)
zE exp m+ m0 (z pa(z,y) (1 p)d(z,y)
z=x |mm0 |=1
!
+ 0
Q P
m+ exp 2x (m) m0 x(m )
|mm0 |=1
= !
y + (m)x (m0 )
P P P
yE exp 2 m+ m0 pa(z,y) (1 p)d(z,y)
y =x

|mm0 |=1
+
(m)y + (m)|/2 +
(m)y + (m)|/2
Y
p1|x (1 p)|x
m+

(m)y (m)|/2
(m)y (m)|/2
Y
p1|x (1 p)|x
m

Y X 1|x+ (m)y+ (m)|/2 + +
+
x(m0 ) (1 p)|x (m)y (m)|/2 .

exp
2x (m) p
m+ m0
|mm0 |=1

Cette expression est un produit de fonctions de x+ (m) sur m + . Donc, sous la loi (.|x ), les
composantes X + (m), m sont indpendantes et de loi

X 1|x+ (m)y+ (m)|/2 + +
(x+ (m)|x ) exp +
x(m0 ) (1 p)|x (m)y (m)|/2 .

2x (m) p
m0
|mm0 |=1

x (m0 ), si y + (m) = 1,
P
Donc, en notant M = m0
|mm0 |=1

e2M p
(x+ (m) = 1|x ) = ,
e2M p + e2M (1 p)
e2M (1 p)
(x+ (m) = 1|x ) = 2M ;
e p + e2M (1 p)
et si y + (m) = 1,
e2M (1 p)
(x+ (m) = 1|x ) = ,
e2M (1 p) + e2M p
e2M p
(x+ (m) = 1|x ) = 2M .
e (1 p) + e2M p
Il est donc trs facile de simuler suivant (.|x ). Nous dfinissons maintenant un noyau Q en
dcrivant comment simuler un saut selon Q. Soit x dans E. Nous tirons U B(1/2). Si U 1/2,
nous tirons Z + de loi (.|x ) et nous sautons en (Z + , x). Si U > 1/2, nous tirons Z de loi
(.|x+ ) et nous sautons en (x+ , Z ).
4.6. CRYPTOGRAPHIE 37

Remarquons que le noyau Q est symtrique. Soit


 
(y)
(x, y) = min 1, .
(x)
Nous pouvons donc simuler la chane de Metropolis de noyau de proposition Q et de loi cible .
Nous noterons (Xn )n0 cette chane. Le noyau Q est irrductible et symtrique. La loi nest pas
constante. Donc par la proposition 4.14 et le thorme 4.8, la loi de Xn est proche de (pour
n +).

4.6. Cryptographie
Une des techniques de cryptographie les plus simples consiste remplacer les caractres du
texte coder au moyen dune bijection. Supposons par exemple que lensemble des caractres
utiliss soit A ={a, b, c, ...,x, y, z, ., (espace), -, (guillemet simple), (guillemet
double langlaise), ,, ;, ?, !, :}. Cet ensemble est de cardinal 36, on lidentifiera dans la
suite [36] = {1, 2, . . . , 36} (chaque caractre est identifi par son numro). Le codage consiste en
une permutation des caractres, cest dire en une application g bijective [36] [36]. Voici une
phrase code tire dune uvre littraire bien connue
g,hpobv ,gpochb :chbp ;hgpoog,hpo"b ? :sbyo"bos,gpbymbkohgoabhgbox,eebroch
ognm vo ?po :n yovy bpo gvb : : lbgvro ?y :ochb :chbpo gpvgvpombsoh-
goe,gp bhyoch opbovy,hm voos,vbo"bo :h ro ? h
po :o : :opnppb,yko"bhuoxbhybpo ? :hpovy"roabo :boybgs,gvy o"bog,hmbhoqo :obv
vobgos ,e ?lg bo"nhgosey"bobvo ?y : vosx ! !,gp
Chaque lettre a de la phrase dorigine a t remplace par la lettre g(a), etc. Nous notons
E = {f : [36] [36] , bijective}.
On se donne une matrice de Markov M de taille 36 36 qui reprsente les probabilits de
transition dun caractre lautre quand on regarde les caractres les uns aprs les autres dans un
texte crit en franais. Par exemple, si on calibre cette matrice sur un volume des Trois Mousque-
taires , M (2, 1) = 0, 14 parce quun a est suivi dun b dans environ 14% des cas. Notons c1 , c2 ,
..., c314 la suite des numros des caractres apparaissant dans la phrase code. On sintresse la
loi sur E telle que, pour toute f :
313
Y
(f ) M (f (ci ), f (ci+1 )) .
i=1

On remarque que plus (f ) est grande, plus f est un dcodage plausible. Nous voulons construire
une chane de Markov (Fn )n0 telle que Fn converge en loi vers quand n tend vers linfini. Soit
un noyau de Markov de proposition Q sur E dcrit par :
Quand on est en f E. On tire {X, Y } suivant la loi uniforme sur P2 ([36]) (les parties
deux lments de [36]).
On saute en f (X,Y ) dfinie par

f (z)
si z
/ {X, Y } ,
(X,Y )
f (z) = f (X) si z = Y ,

f (Y ) si z = X .

Nous remarquons que le noyau Q est symtrique. Ce noyau est irrductible (parce que les trans-
positions engendrent le groupe symtrique). La loi est non constante. Soit (Fn )n0 une chane
de Metropolis de noyau de proposition Q et de loi cible . La proposition 4.14 et le thorme 4.8
nous disent que pour n grand, la loi de Fn est proche de . Voici ce que lon peut obtenir aprs
10000 itrations
nous etions quelqueshuns a nous declamer de monserve, un jeune boppe. qui
navait cas lair tres in telligent. carla quelques instants avem un ponsieur qui
se trouvait a mote de lui. cuis il all a sasseoir, deux beures clus tard. je le ren-
montrai de nouveau - il etait en mopcagnie dun m aparade et carlait mbiffons
38 4. MTHODES DE MONTE-CARLO PAR CHANES DE MARKOV

Donc le texte dorigine a de fortes chances dtre :


Nous tions quelques-uns nous dplacer de conserve. Un jeune homme, qui
navait pas lair trs intelligent, parla quelques instants avec un monsieur qui
se trouvait ct de lui, puis il alla sasseoir. Deux heures plus tard, je le
rencontrai de nouveau ; il tait en compagnie dun camarade et parlait chiffons.
Raymond Queneau, Exercices de style (Litotes), 1947.
Pour coder cet algorithme de Metropolis, on pourra consulter les archives 2012-2013 de la page
http://www.math.unice.fr/~rubentha/enseignement (le devoir no 2 contient des indications
sur comment sy prendre en scilab, la matrice M . . .).

4.7. Exercices
Exercice 4.1. Soit E, F des espaces finis. Soit Q noyau de transition de E dans E (pour
tout x E, Q(x, .) est une loi de probabilit sur E). Le noyau Q est suppos irrductible et
apriodique. On suppose que Q(x, y) > 0 Q(y, x) > 0. Soit K noyau de transition de E
dans F (pour tout x E, K(x, .) est une loi de probabilit sur F ). On suppose que pour tout
+
P y) E F , K(x, y) > 0. On dispose de Z : E F R et on note, pour tout x E,
(x,
uF Z(x, u)K(x, u) = z(x). On sintresse la chane de Markov suivante dans E F .
X0 = x0 E (quelconque), U0 K(x0 , .).
Si on a (Xn , Un ) E F .

On tire Xn+1 Q(Xn , .) et Vn+1 U([0; 1]) (indpendant de tout le reste). On tire

U n+1 K(Xn+1 , .).
On calcule
 
Z(Xn+1 , Un+1 )Q(Xn+1 , Xn )
(Xn , Un , Xn+1 , Un+1 ) = inf 1, .
Z(Xn , Un )Q(Xn , Xn+1 )

Si Vn+1 (Xn , Un , Xn+1 , Un+1 ) alors Xn+1 = Xn+1 et Un+1 = Un+1 . Sinon Xn+1 =
Xn et Un+1 = Un .
(1) On remarque que pour tout (x, y) E P F , (x0 ,P
y 0 ) 7 Q(x, x0 )K(x0 , y 0 ) dfinit une me-
sure de probabilit sur E F (on a bien x0 E y0 F Q(x, x0 )K(x0 , y 0 ) = 1). On notera
Q((x, y), .) cette mesure. Montrer que Q est un noyau de Markov irrductible sur E F .
(2) Montrer que ((Xn , Un ))n0 est une chane de Metropolis. Prciser son noyau de proposition
et sa loi cible. Nous noterons P sa transition.
(3) Montrer que P est irrductible.
(4) Montrer que P est apriodique.
(5) Montrer que (Xn )n0 converge en loi vers une loi proportionnelle z.
Exercice 4.2. Soient p et q des probabilits sur E (espace fini) avec x, 0 < p(x) cq(x) o
c constante > 0. On prend des variables Yn i.i.d. de loi q, indpendantes de X0 . On dfinit par
rcurrence une chane (Xn ) :
On tire X0 suivant q.
Quand on a Xn , on tire Un U([0, 1]) indpendamment de toutes les autres variables et :
( p(Yn+1 )
Yn+1 si Un cq(Y n+1 )
Xn+1 =
Xn sinon .
(1) Montrer que (Xn ) est une chane de Markov.
(2) Calculer la probabilit de transition P (x, y) de (Xn ).
(3) Quel rapport y-a-t-il entre cette chane et une mthode de rejet classique ?
(4) Calculer P pour une probabilit . En dduire que la loi de Xn converge vers une unique
probabilit invariante gale p.
Exercice 4.3. On se place sur E = Z. Soit q loi sur E telle que q(x) = q(x). Soit p une loi
telle que p(x) > 0, x. On dfinit une chane de Markov (Xn ) par :
4.7. EXERCICES 39

X0 p
On tire Un U([0, 1]) indpendante de toutes les autres variables et Zn de loi q indpen-
dante de toutes les autres variables. On pose Yn = Xn + Zn et :
(  
p(Yn )
Yn si Un inf 1, p(Xn)
Xn+1 =
Xn sinon .
(1) Montrer que p est symtrique par rapport au noyau de proposition.
(2) Soit (x) = Z1 exp(H(x)) une loi sur E (o H est une fonction, R une constante quel-
conque et Z est la constante de normalisation). Comment approcher E f (x)(dx) laide
dun algorithme de Mtropolis ?
Exercice 4.4 (Couplage). On suppose que lon a un noyau de Markov irrductible Q sur un
espace E fini (ou dnombrable) et probabilit sur E telle que Q = . On suppose quil existe
une probabilit sur E et  > 0 tels que x, y E,

(y) Q(x, y) .
On construit deux chanes de Markov (Xn ) et (Yn ) par :
On tire X0 suivant et Y0 (indpendamment de X0 ) suivant 0 .
Si on a tir X0 , . . . , Xn et Y0 , . . . , Yn , on tire Un U([0, 1]) indpendamment de toutes les
autres variables.
Si Un , on tire Xn=1 = Yn+1 suivant .
Sinon
1
Si Xn = Yn , on tire Xn=1 = Yn+1 suivant la loi 1 (Q(Xn , .) (.)) (cest bien
une loi de probabilit).
1
Sinon on tire Xn+1 suivant Q(Xn , .) et Yn+1 suivant 1 (Q(Xn , .) (.)) (ind-
pendamment).
(1) Montrer que (Xn ) et (Yn ) sont des chanes de Markov de transition Q.
(2) Montrer que pour presque tout , n tel que Xn () = Yn ().
Pn p.s.
(3) On prend f une fonction borne. On rappelle que n1 k=1 f (Xn )
P
xE f (x)(x).
n+
Montrer que
n
1X p.s. X
f (Yn ) f (x)(x) .
n n+
k=1 xE
Annexe A

Table de la loi normale

Figure A.0.1. Table de la loi normale

41
Annexe B

Fonctions, intgrales et sommes usuelles

Nous rappelons (a, b)


Z b
ex dx = [ex ]ba = eb + ea .
a
Par intgration par parties, nous avons
Z b Z b
x x b
xe dx = [xe ]a + ex dx .
a a
Et ,
Z b b
Z b
1 x
x1 ex a x2 ex dx .

x e dx = + ( 1)
a a
Formule du binme (de Newton) :
n
X
x, y R , 0 k n (k, n N) , (x + y)n = Cnk xk y nk ,
k=0
n!
o Cnk = k!(nk)! (cest nombre de parties k lments dans un ensemble n lments)(n! =
1 2 3 n).
Somme gomtrique :
n
X 1 pn+1
p R , n N , pk = ,
1p
k=0
+
X 1
si, de plus ,|p| < 1 , pk = .
1p
k=0
Somme arithmtique
n(n + 1)
1 + 2 + + n = .
2
Somme de carrs
n(n + 1)(2n + 1)
1 2 + 2 2 + + n2 = .
6
Exponentielle :
+ n
X x
x R , ex = .
n=0
n!
Cosinus hyperbolique :
+
ex + ex X x2n
x R , cosh(x) = = .
2 n=0
(2n)!
Sinus hyperbolique :
+
ex ex X x2n+1
x R , sinh(x) = = .
2 n=0
(2n + 1)!

43
Bibliographie

[DB01] Pierre Del Moral and Nathalie Bartoli. Simulation et algorithmes stochastiques : une introduction avec
applications. Cepadus, Toulouse, 2001.
[DRR06] Pierre Del Moral, Bruno Rmillard, and Sylvain Rubenthaler. Une introduction aux probabilits. Ellipses,
Paris, 2006.
[Dur96] Richard Durrett. Probability : theory and examples. Duxbury Press, Belmont, CA, second edition, 1996.
[JP03] Jean Jacod and Philip Protter. Lessentiel en thorie des probabilits. Cassini, Paris, 2003.
[Par08] Etienne Pardoux. Markov processes and applications. Wiley Series in Probability and Statistics. John
Wiley & Sons, Ltd., Chichester ; Dunod, Paris, french edition, 2008. Algorithms, networks, genome and
finance.
[Wil91] David Williams. Probability with martingales. Cambridge Mathematical Textbooks. Cambridge University
Press, Cambridge, 1991.

45
Liste des symboles

:= Dfinition
# Cardinal
F
Partition
E Esprance
b. . .c Partie entire infrieure

log Logarithme nprien


B(p) Loi de Bernoulli de paramtre p
Cb+ (. . . ) Fonctions continues bornes positives
E() Loi exponentielle de paramtre
N Loi normale
U Loi uniforme
Gradient
P Probabilit
Indpendant
Proportionnel
Suivre la loi, de loi, ...
V Variance
C Nombre de parties (...)

47
Index

A P
Aiguilles de Buffon, 4 Partition., 25
Apriodique, 29 Poisson, 12
Appels successifs, 1 Proposition, 30
p.s., 2
B Pseudo-inverse, 9
Box-Mller, 11
S
C Sinus hyperbolique, 43
convergence en loi, 2 Somme arithmtique, 43
Cosinus hyperbolique, 43 Somme de carrs, 43
Couplage, 39 Somme gomtrique, 43
statistique dordre, 19
E Symtrique, 29
Espace de configurations, 33
Estimateur de la variance, 3 T
Exponentielle, 43 Temps de calcul, 15
Thorme de la limite centrale, 2
F Thorme ergodique, 29
Fonction dimportance, 21
Formule du binme, 43 V
v. a. r., 9
G Variance, 2
Gnrateur de nombres alatoires, 9 Variance de la mthode, 3

H
Histogramme, 15

I
i.i.d., 1
Intervalle de confiance, 2
Invariante, 29
Irrductible, 30

L
Logarithme nprien, 10
Loi a posteriori, 35
Loi cible, 30
Loi conditionnelle, 14
loi exponentielle, 10
Loi forte des grands nombres, 2

M
Marche simple dans Z., 30
MCMC, 29
Mthode de rejet, 13, 28
Monte-Carlo, 1

N
Nombre de parties (...), 43
Noyau de proposition, 30
Noyau symtrique, 32

49

You might also like