Monte Carlo
Monte Carlo
Monte Carlo
Méthodes Monte-Carlo
Arnaud Guyader
Table des matières
2 Intégration Monte-Carlo 21
2.1 Généralités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.1.1 Convergence et intervalles de confiance . . . . . . . . . . . . . . . . . . . . . 21
2.1.2 Quelques mots sur l’intégration numérique . . . . . . . . . . . . . . . . . . . 23
2.1.3 Le cadre bayésien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.1.4 Tests d’hypothèses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2 Réduction de variance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2.1 Echantillonnage préférentiel . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.2.2 Conditionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.2.3 Stratification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.2.4 Variables antithétiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.3 Méthodes Quasi-Monte-Carlo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.4 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.5 Corrigés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
i
ii Table des matières
3.6 Corrigés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Introduction
Idéalement, une méthode Monte-Carlo repose sur la simulation d’une suite de variables aléatoires
(Xn )n≥1 indépendantes et identiquement distribuées (i.i.d.) selon une loi donnée. Ce chapitre
expose quelques méthodes pour y parvenir, au moins de façon approchée, en commençant par la
loi uniforme, sur laquelle toutes les autres sont basées.
où Xn est un vecteur de 19937 bits et A une matrice bien choisie. La variable pseudo-aléatoire Un
correspond alors aux 32 derniers bits de Xn . Proposé par Matsumoto et Nishimura en 1998 [23],
ce générateur a une période de longueur 219937 − 1 (i.e. le maximum possible vu la taille de Xn et
le fait que 0 est un point fixe), lequel est un nombre premier de Mersenne.
Notons aussi que si, pour une raison ou une autre, on veut changer de générateur sous R, il suffit
de le spécifier avant l’appel à runif via la fonction RNGkind. En voici un exemple pour utiliser un
générateur proposé par L’Ecuyer :
> set.seed(123) # fixe la graine du générateur
> runif(1) # génération par Mersennne Twister
[1] 0.2875775
> RNGkind("L’Ecuyer-CMRG") # changement de générateur pseudo-aléatoire
> set.seed(123)
1
2 Chapitre 1. Génération de variables aléatoires
> runif(1)
[1] 0.1663742
> RNGkind("Mersenne-Twister") # retour au générateur par défaut
> set.seed(123)
> runif(1)
[1] 0.2875775
Remarque : Sur cet exemple, le fait de fixer la graine du générateur pseudo-aléatoire par la
commande set.seed a simplement permis de vérifier les changements de générateurs. De façon
plus générale, cette commande en début de programme peut s’avérer très utile puisqu’elle permet
de refaire une simulation dans les mêmes conditions et, le cas échéant, de trouver une erreur dans
un code.
Dans tout ce cours, nous supposerons donc disposer d’un générateur pseudo-aléatoire “satisfaisant”
pour la loi uniforme. La suite de ce chapitre explique alors comment, partant de la loi uniforme,
il est possible de générer d’autres lois. Pour une référence très complète sur le sujet, on pourra
consulter le livre de Luc Devroye [8] en libre accès sur sa page.
c’est-à-dire
m
X
F −1 (u) = xk 1p1 +···+pk−1 <u≤p1+···+pk . (1.1)
k=1
Si l’ensemble des valeurs prises par la variable discrète X n’est pas fini, il suffit de remplacer
cette somme par une série. Quoi qu’il en soit, outre que, tout comme F , cette fonction quantile est
croissante et en escalier, on notera que, contrairement à F , elle est continue à gauche. Ces propriétés
sont en fait vraies de façon générale. Venons-en maintenant aux résultats utiles en simulation.
Remarque : c’est le premier point qui porte le nom de méthode d’inversion. Le second point nous
sera utile lorsque nous aborderons la théorie des copules en Section 1.4.4.
Preuve. Soit X = F −1 (U ) et x réel fixé. Montrons que pour tout u ∈]0, 1], on a
Par définition de F −1 (u), si u ≤ F (x), alors F −1 (u) ≤ x. Inversement, si F −1 (u) ≤ x, alors pour
tout ε > 0 on a F −1 (u) < x + ε, donc par définition de F −1 (u) et par croissance de F , il vient
u ≤ F (x + ε). Puisque F est continue à droite, on en déduit que u ≤ F (x) et l’équivalence (1.2)
est établie. Dès lors, la fonction de répartition de X se calcule facilement :
la dernière égalité venant de ce que, pour tout u ∈ [0, 1], P(U ≤ u) = u. Le premier point est donc
prouvé. On l’applique pour le second : la variable Y = F −1 (U ) a même loi que X, donc la variable
F (X) a même loi que F (Y ) = (F ◦ F −1 )(U ). Or, d’après (1.2), pour tout u ∈]0, 1], on a
Réciproquement, pour tout u ∈]0, 1] et pour tout ε > 0, on a, toujours par (1.2),
Etant donné que u ∈]0, 1] et que F est supposée continue en F −1 (u) > 0, le passage à la limite
lorsque ε → 0 donne (F ◦ F −1 )(u) ≤ u. Au total, on a donc prouvé que, pour tout u ∈]0, 1],
(F ◦ F −1 )(u) = u. En revenant aux variables aléatoires, ceci donne F (Y ) = (F ◦ F −1 )(U ) = U
presque sûrement.
Exemples :
1. Concernant la seconde propriété, si X suit une loi de Bernoulli de paramètre 1/2, la variable
F (X) prend les valeurs 1/2 et 1 de façon équiprobable, donc n’est pas uniforme. De façon
générale, dès lors que la loi de X présente un atome, par exemple en x0 , sa fonction de
répartition F ne prend aucune des valeurs dans l’intervalle ]F (x−
0 ), F (x0 )[, donc la variable
aléatoire F (X) non plus, donc elle ne peut correspondre à une variable uniforme.
Bien entendu, la méthode d’inversion requiert la connaissance et le calcul rapide de F −1 (u). Ceci
n’est pas toujours envisageable : il suffit de penser à la loi normale centrée réduite, de fonction de
répartition Z x
1 t2
Φ(x) = √ e− 2 dt
−∞ 2π
et dont l’inverse n’admet pas d’expression analytique simple.
Dans ce cas, la méthode de rejet, détaillée en section suivante, peut représenter une alternative
judicieuse. La méthode ziggourat est un exemple d’application de la méthode de rejet permettant
de simuler la loi normale, ou encore la loi exponentielle sans faire appel à la fonction logarithme.
Ceci étant acquis, le résultat suivant montre comment simuler suivant la densité f voulue.
Remarque : si p ∈]0, 1[, nous disons que N suit une loi géométrique de paramètre p si N est à
valeurs dans N⋆ , avec pour tout n ∈ N⋆ : P(N = n) = p(1 − p)n−1 , ce qui équivaut à dire que
P(N > n) = (1 − p)n . L’autre convention, qui est par exemple celle de R pour la fonction rgeom,
consiste à considérer N à valeurs dans N, avec pour tout n ∈ N : P(N = n) = p(1 − p)n . La seconde
variable se déduit tout simplement de la première en enlevant 1.
Preuve. Commençons par montrer que N est p.s. finie. A priori, N est à valeurs dans N⋆ ∪ {+∞}.
Pour tout n ∈ N⋆ , le fait que les couples (Yi , Ui ) sont i.i.d. permet d’écrire
P(N > n) = P(U1 > r(Y1 ), . . . , Un > r(Yn )) = P(U1 > r(Y1 ))n .
Les variables Y1 et U1 étant indépendantes, leur loi jointe est le produit des marginales, ce qui
donne par Fubini-Tonelli
Z Z 1
P(U1 > r(Y1 )) = E[1U1 >r(Y1 ) ] = 1u>r(y) du g(y)dy,
R 0
donc
1 n
P(N > n) = 1 − ,
m
ce qui montre que N suit une loi géométrique de paramètre 1/m et en particulier que cette variable
est p.s. finie. La variable X = YN est donc p.s. bien définie. Notons maintenant F la fonction de
répartition associée à la densité f . On a alors
c’est-à-dire
Z Z x Z x
1 F (y)
P(Un ≤ r(Yn ), Yn ≤ x) = 1y≤x r(y)g(y)dy = r(y)g(y)dy = f (y)dy = .
R −∞ m −∞ m
Au total, on a obtenu
n−1
1 F (x)
P(X ≤ x, N = n) = 1− × .
m m
Par sigma-additivité, il vient
∞
X ∞
F (x) X 1 n−1
P(X ≤ x) = P(X ≤ x, N = n) = 1− = F (x),
m m
n=1 n=1
ce qui prouve que X a bien la loi voulue. Enfin, le fait que P(X ≤ x, N = n) = P(X ≤ x)P(N = n)
montre bien l’indépendance des variables X et N .
Remarque : la variable N étant géométrique de paramètre 1/m, elle a pour moyenne m. Par
conséquent, il faut faire en moyenne m essais pour obtenir une seule simulation selon la loi cible
f . Dès lors, il s’agira de choisir le couple (g, m) de sorte que m soit aussi proche de 1 que possible.
En d’autres termes, on a tout intérêt à choisir une densité g qui ressemble le plus possible à f .
Exemple jouet. On veut simuler X de densité f (x) = 3x2 sur [0, 1]. Puisque f (x) ≤ 3, on peut
choisir pour g la loi uniforme sur [0, 1] et prendre m = 3, ce qui donne pour le rapport d’acceptation
f (y)
r(y) = = y2.
mg(y)
L’algorithme est alors le suivant : on simule un couple (Y1 , U1 ) de variables uniformes indépen-
dantes : si U1 ≤ Y12 , on pose X = Y1 , sinon on recommence. Le nombre moyen d’essais pour
obtenir une réalisation de X est donc égal à 3. Cet exemple est “jouet” en ce sens que, dans ce cas
particulier, il vaut mieux appliquer la méthode d’inversion : un calcul immédiat montre en effet
que si U est uniforme sur [0, 1], la variable X = U 1/3 a pour densité f .
La preuve de la Proposition 2 est identique si au lieu de calculer la probabilité P(X ≤ x, N = n),
on étudie P(X ∈ A, N = n) pour A borélien quelconque de R. L’intérêt est que cette version
s’adapte directement en dimension supérieure. Autrement dit, la méthode de rejet reste valable si
f et g sont des densités sur Rd . De façon générale, pour pouvoir appliquer la méthode de rejet, il
suffit que la loi de X soit absolument continue par rapport à celle de Y . Voyons un cas particulier
d’application.
Exemple : simulation d’une loi conditionnelle. Soit B un ensemble (borélien) contenu dans
le carré [0, 1] × [0, 1] de R2 . Supposons qu’on veuille simuler des points uniformément dans B mais
que, pour tout point x du plan, on ne dispose que d’une fonction boîte noire nous disant si, oui
ou non, x est dans B (ce n’est rien d’autre que l’indicatrice de B). L’algorithme de simulation est
alors naturel : il suffit de générer des points Yn uniformément dans [0, 1] × [0, 1] jusqu’à l’instant
aléatoire N où l’on tombe dans B. Par le résultat précédent, la variable X = YN est alors uniforme
sur B. En effet, dans ce contexte, en notant λ(B) la mesure de Lebesgue de B (i.e. sa surface) et
C = [0, 1] × [0, 1], on a, avec des notations évidentes,
1B (x, y) 1
f (x, y) = et g(x, y) = 1C (x, y) =⇒ m = et r(x, y) = 1B (x, y).
λ(B) λ(B)
1.4.1 Conditionnement
Supposons que l’on veuille simuler un couple aléatoire (X, Y ). Si les deux coordonnées sont indé-
pendantes, on est ramené à ce qui précède puisqu’il suffit de simuler X et Y indépendamment.
Si tel n’est pas le cas, on peut éventuellement s’en sortir si, par exemple, X est facilement simulable
et si la loi de Y sachant X l’est aussi : il suffit de simuler x selon L(X) puis y selon la loi
conditionnelle L(Y |X = x). Dans le cas de variables à densité, ceci est tout simplement basé sur
le fait que f (x, y) = f (x) × f (y|x).
Exemple. On considère la densité
Il est facile de voir que X suit une loi uniforme sur [0, 1] et que, sachant X = x, Y suit une loi
exponentielle de paramètre x. La simulation du couple (X, Y ) est donc triviale.
fU,V (u, v) = fX,Y (ϕ−1 (u, v))| det Jϕ−1 (u, v)|1B (u, v).
Ce résultat se retrouve par la méthode de la fonction muette : on cherche fU,V (u, v) telle que pour
toute fonction continue bornée h : R2 → R, on ait
ZZ
E[h(U, V )] = h(u, v)fU,V (u, v)dudv.
R2
Il ne reste plus qu’à appliquer la formule de changement de variable vue en cours d’analyse en
considérant
(u, v) = ϕ(x, y) ⇐⇒ (x, y) = ϕ−1 (u, v),
ce qui donne
ZZ
E[h(U, V )] = h(u, v)fX,Y (ϕ−1 (u, v))| det Jϕ−1 (u, v)|dudv,
B
c’est-à-dire
ZZ
E[h(U, V )] = h(u, v)fX,Y (ϕ−1 (u, v))| det Jϕ−1 (u, v)|1B (u, v)dudv.
R2
Rappelons que Jϕ−1 (u, v) désigne la matrice jacobienne de l’application ϕ−1 au point (u, v) avec
formellement
∂x ∂x
Jϕ−1 (u, v) = ∂u
∂y
∂v
∂y (u, v).
∂u ∂v
donc |Jϕ−1 (r, θ)| = r. Par conséquent, si le couple (X, Y ) a pour densité fX,Y alors le couple
(R, Θ) = ϕ(X, Y ) a pour densité
Application : algorithme de Box-Muller. D’après ce qui vient d’être vu, si (X, Y ) est un
couple de variables gaussiennes centrées réduites indépendantes, alors les coordonnées polaires
(R, Θ) ont pour densité
1
−r 2 /2 ]0,2π[ (θ)
fR,Θ (r, θ) = re 1]0,+∞[ (r) ,
2π
autrement dit elles sont indépendantes, l’angle Θ suit une loi uniforme sur ]0, 2π[ (isotropie) et la
distance à l’origine a pour densité (dite loi de Rayleigh)
2 /2
fR (r) = re−r 1]0,+∞[ (r).
Puisque R2 = X 2 + Y 2 , cette variable R est la racine carrée d’un khi-deux à deux degrés de liberté,
c’est-à-dire la racine carrée d’une loi exponentielle de paramètre 1/2. Or on a vu précédemment
que si U suit une loi uniforme sur [0, 1], alors −2 log U suit une loi exponentielle de paramètre
1/2. Réciproquement, soit (U, V ) un couple de variables i.i.d. de loi uniforme sur [0, 1]. Alors les
variables X et Y définies par
√
X = √ −2 log U × cos(2πV )
Y = −2 log U × sin(2πV )
Remarque. La méthode de Box-Muller semble parfaite pour générer des variables gaussiennes. En
fait, elle n’est pas utilisée en pratique en raison de l’appel à des fonctions coûteuses en temps de cal-
cul (logarithme, cosinus et sinus). Comme mentionnée précédemment, la génération de gaussiennes
est souvent plutôt basée sur une technique de rejet sophistiquée (méthode de ziggourat).
3
2
2
1
1
z
Y
0
0
−3 −2 −1
−3 −2 −1
y x
−3 −1 1 2 3 −4 −2 0 2
X
Γi,j = Cov(Xi , Xj ) = E[(Xi − E[Xi ])(Xj − E[Xj ])] = E[Xi Xj ] − E[Xi ]E[Xj ].
Par ailleurs, si A est une matrice d0 × d et b un vecteur de taille d0 , tous deux déterministes,
le vecteur aléatoire Y = AX + b admet pour espérance E[Y ] = AE[X] + b et pour matrice de
covariance ΓY = AΓA′ .
D’autre part, un vecteur X = [X1 , · · · , Xd ]′ est dit gaussien si toute combinaison linéaire de ses
variables est gaussienne, c’est-à-dire si pour tout d-uplet de coefficients (α1 , . . . , αd ), la variable
α1 X1 + · · · + αd Xd est gaussienne.
Du point de vue de la simulation, les vecteurs gaussiens ont un double intérêt : d’une part, ils sont
complètement caractérisés par moyenne et dispersion, d’autre part ils sont stables par transforma-
tion affine. C’est ce que résume le résultat suivant.
Supposons maintenant qu’on veuille simuler un vecteur aléatoire gaussien X ∼ N (m, Γ) dans Rd ,
m et Γ étant donnés. Soit R une racine carrée de Γ, c’est-à-dire une matrice d×d vérifiant Γ = RR′ .
La matrice Γ étant semi-définie positive, elle se diagonalise en base orthonormée, c’est-à-dire sous
la forme Γ = P ∆P ′ avec P ′ = P −1 et Γ = diag(λ1 , . . . , λd ), les valeurs propres λi étant toutes
positives ou nulles. Il suffit donc de prendre
√ √ p p
R=P ∆ avec ∆ = diag( λ1 , . . . , λd ). (1.3)
Si Γ est définie positive, on peut aller plus vite via la méthode de Choleski, qui fournit une matrice
R triangulaire inférieure vérifiant cette propriété. Bref, une racine carrée étant obtenue, il suffit de
partir d’un vecteur gaussien centré réduit, donc facile à simuler, pour arriver à nos fins. En effet,
en vertu de la proposition précédente,
X0 ∼ N (0, Id ) =⇒ X = RX0 + m ∼ N (m, Γ),
et l’affaire est dans le sac.
Exemple. Sous R, le calcul d’une racine carrée est effectué comme expliqué en (1.3) et la génération
de vecteurs gaussiens se fait très simplement par l’appel préalable à la librairie MASS :
> library(MASS)
> mvrnorm(1000,m,Gamma)
génère 1000 vecteurs
gaussiens de moyenne
m et de matrice de dispersion Γ. Ceci est illustré Figure
2 1 1
1.2 pour m = et Γ = . Voir aussi l’exercice 1.12.
1 1 4
−5
0 2 4 6
1.4.4 Copules
Tout ce qui suit est exposé en dimension 2, mais la généralisation en dimension supérieure se fait
sans problème. Pour des compléments sur toute cette section, on pourra se reporter à [26] ou au
Chapitre 5 de [24]. Pour un couple aléatoire (X, Y ), l’idée des copules est de séparer la dépendance
entre les variables X et Y de leurs lois marginales.
On rappelle que la fonction de répartition d’un couple (X, Y ) est définie par :
∀(x, y) ∈ R × R F (x, y) = P(X ≤ x, Y ≤ y).
La définition d’une copule est liée à la fonction de répartition d’un couple dont les marginales sont
uniformes.
Définition 2 (Copule)
On dit qu’une fonction C : [0, 1]2 → [0, 1] est une copule si C est la fonction de répartition d’un
couple (U, V ) tel que U et V suivent chacune une loi uniforme sur [0, 1], autrement dit :
C(u, v) = P(U ≤ u, V ≤ v),
avec U ∼ U[0,1] et V ∼ U[0,1] .
En toute rigueur, C est plutôt la restriction à [0, 1]2 de la fonction de répartition du couple (U, V )
puisque cette dernière est définie sur R2 tout entier.
1.0
1.0
0.8
0.8
0.6
0.6
z
0.4
0.4
v
u
0.2
0.2
0.0
0.0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Figure 1.3 – Copule indépendante c(u, v) = uv, lignes de niveaux et nuage de points
(Ui , Vi )1≤i≤500 .
Exemples : dans tout ce qui suit, on considère 0 ≤ u, v ≤ 1. Voir l’exercice 1.17 pour les repré-
sentations.
— copule comonotone : si U ∼ U[0,1] alors V = U ∼ U[0,1] et C(u, v) = min(u, v).
— copule anti-comonotone : si U ∼ U[0,1] alors V = 1−U ∼ U[0,1] et C(u, v) = max(u+v−1, 0).
— copule indépendante : si U ∼ U[0,1] et V ∼ U[0,1] , avec U et V indépendantes, alors C(u, v) =
uv (voir Figure 1.3).
Le fait qu’une copule permette de séparer la loi jointe des lois marginales est illustré par le résultat
suivant.
Preuve. On se contente du cas où FX et FY sont continues, qui est la seule situation qui nous
intéressera dans les exemples. D’après le second point de la Proposition 1, les variables aléatoires
U = FX (X) et V = FY (Y ) sont alors toutes deux uniformes sur [0, 1]. Par définition, la fonction
de répartition C(u, v) = P(U ≤ u, V ≤ v) du couple (U, V ) est donc une copule. De plus, puisque
U et V sont sans atome
C(u, v) = P(U ≤ u, V ≤ v) = P(U < u, V < v) = P(FX (X) < u, FY (Y ) < v).
la dernière égalité p.s. étant due au fait que que FX (X) est uniforme, donc sans atome. Ainsi, vu
la définition de la copule C, il vient
C(FX (x), FY (y)) = P(U ≤ FX (x), V ≤ FY (y)) = P(FX (X) ≤ FX (x), FY (Y ) ≤ FY (y)),
et il reste à utiliser la relation précédente pour conclure que
0.8
0.8
0.6
0.6
z
0.4
0.4
v
u
0.2
0.2
0.0
0.0
0.0 0.2 0.4 0.6 0.8 1.0 0.0 0.2 0.4 0.6 0.8 1.0
Figure 1.4 – Copule gaussienne de paramètre ρ = 3/4, lignes de niveaux et nuage de points
(Ui , Vi )1≤i≤500 .
Remarque. Lorsqu’une copule C vérifie la relation (1.4), on dit que c’est une copule pour le couple
(X, Y ).
Venons-en à quelques exemples de copules classiques.
Exemple : copule gaussienne. Si (X, Y ) est un couple gaussien centré tel que Var(X) =
Var(Y ) = 1 et Cov(X, Y ) = ρ ∈] − 1, 1[, alors la copule gaussienne de paramètre ρ est définie
par
Z Φ−1 (u) Z Φ−1 (v) 2
1 x − 2ρxy + y 2
C(u, v) = p exp − dxdy,
−∞ −∞ 2π 1 − ρ2 2(1 − ρ2 )
où Φ−1 est la réciproque de Φ, fonction de répartition de la loi normale centrée réduite (voir Figure
1.4).
Une autre famille classique est celle des copules archimédiennes. Si X est une variable aléatoire
positive, la fonction
ϕ(λ) = E[e−λX ]
est appelée transformée de Laplace de X. Elle est dérivable sur ]0, ∞[ avec ϕ′ (λ) = −E[Xe−λX ]. Dès
lors, si X est strictement positive, ϕ est strictement décroissante et établit une bijection de [0, ∞[
dans ]0, 1]. On note ϕ−1 sa fonction réciproque, avec les conventions ϕ(∞) = 0 et ϕ−1 (0) = ∞.
Exemple : Si X ∼ E(1), alors ϕ(λ) = 1/(1 + λ) donc ϕ−1 (u) = (1 − u)/u (voir Figure 1.5).
1.00
15
0.75
10
0.50
0.25 5
0.00 0
0 5 10 15 20 0.25 0.50 0.75 1.00
λ u
Figure 1.5 – Transformée de Laplace ϕ(λ) de la loi exponentielle et réciproque ϕ−1 (u).
est une copule, dite copule archimédienne associée à la loi de X. Si U1 et U2 sont uniformes sur
[0, 1] et indépendantes, et si X a pour transformée de Laplace ϕ, alors le couple (U, V ) défini par
U = ϕ(− X1 log U1 ) et V = ϕ(− X1 log U2 ) a des marges uniformes et pour copule C.
Preuve. Le couple (U, V ) est bien à valeurs dans [0, 1] × [0, 1]. Pour 0 ≤ u, v ≤ 1, on a
1 1
P(U ≤ u, V ≤ v) = P ϕ(− log U1 ) ≤ u, ϕ(− log U2 ) ≤ v .
X X
Ceci assure que U suit une loi uniforme, tout comme V . Ainsi C(u, v) définit bien une copule.
Exemple : copule de Clayton. Si X ∼ E(1), alors ϕ(λ) = 1/(1 + λ) donc ϕ−1 (u) = (1 − u)/u
et la copule associée à la loi exponentielle, dite copule de Clayton, est
1
C(u, v) = 1 1 .
u + v −1
Remarque : Noter que (f (X), g(Y )) est encore un couple de variables continues, d’où l’unicité
de la copule.
Simulation : D’après le Théorème de Sklar, un couple aléatoire (X, Y ) est complètement carac-
térisé par la donnée de sa copule et de ses lois marginales. Considérons donc C, FX et FY données
et supposons qu’on veuille simuler une réalisation de ce couple. D’après ce qui précède, il “suffit”
en général de :
1. simuler (U, V ) de lois marginales uniformes et de copule C ;
2. calculer X = FX−1 (U ) et Y = FY−1 (V ).
Lorsque FX−1 et FY−1 sont strictement croissantes, le Lemme 1 assure en effet que (X, Y ) a même
copule que (U, V ). De plus, le premier point de la Proposition 1 nous dit que X et Y ont bien les
marginales souhaitées.
Enfin, par le Lemme 1 et le second point de la Proposition 1, pour simuler (U, V ) de lois marginales
uniformes et de copule C, il suffit de savoir simuler (S, T ) de copule C et de fonctions de répartition
FS et FT strictement croissantes et continues, puis de considérer U = FS (S) et V = FT (T ). Ceci
est illustré en exercice 1.17.
1.5 Exercices
Exercice 1.1 (Loi de Cauchy)
On rappelle que X suit une loi de Cauchy standard si elle a pour densité
1
f (x) =
π(1 + x2 )
Grâce à la méthode d’inversion, donner un moyen simple de simuler une telle loi.
1 2
√
f (x, y) = √ e−y x/2 e− x 1x>0 .
8π
1. Quelle est la loi de Y sachant X = x ?
√
2. Quelle est la loi de X ?
3. En déduire une méthode de simulation du couple (X, Y ).
∀n ∈ N P(Y = n) = (1 − λ)λn .
T = F −1 (F (a) + (1 − F (a))U ).
1 (x+3)2 2 (x−3)2
f (x) = √ e− 8 + √ e− 2 .
6 2π 3 2π
1. Représenter la fonction f .
2. En voyant f comme un mélange de lois, proposer une méthode de simulation de X.
3. Représenter sur un même graphique un histogramme de réalisations de X et la densité f .
3. On veut retrouver I = E[X|X > m] par simulation. On fixe p = 1/6 et m = 12. Utiliser la
question 2 pour tracer un estimateur Iˆn en fonction de n, pour n allant par exemple de 1 à
1000, les intervalles de confiance à 95% et la droite horizontale y = I (en rouge).
4. Par rapport à la méthode de la question 1, toujours pour p = 1/6 et m = 12, par quel
facteur en moyenne a-t-on divisé le temps de calcul ?
Exercice 1.16 (Loi Gamma)
On veut générer une variable X suivant une loi Gamma Γ(3/2, 1), c’est-à-dire de densité
2
f (x) = √ x1/2 e−x 1x>0 .
π
1. On utilise une technique de rejet avec comme loi de proposition une exponentielle E(2/3)
de densité notée g. Déterminer m = supx>0 f (x)/g(x). Quelle est le nombre moyen de
simulations de la loi exponentielle pour aboutir à une réalisation de la loi Gamma ?
2. Représenter sur un même graphique un histogramme de réalisations de X (obtenues par
cette méthode de rejet) et la densité f .
3. Intuitivement, qu’est-ce qui a guidé le choix du paramètre 2/3 comme paramètre de l’ex-
ponentielle ? On peut justifier cette intuition : considérer comme proposition la densité gλ
d’une exponentielle E(λ) et déterminer la valeur optimale de λ en terme de probabilité de
rejet.
Exercice 1.17 (Représentation et simulation de copules)
Rappelons que pour visualiser une surface z = f (x, y) sur [0, 1] × [0, 1], une méthode consiste à
implémenter la fonction f , discrétiser x et y, appliquer z=outer(x,y,f) si f est vectorisable puis,
via le package rgl, la commande rgl.surface(x,y,z). On peut aussi utiliser persp(x,y,z) ou
contour(x,y,z).
1. Représenter les surfaces associées aux copules comonotone C(u, v) = min(u, v), anti-comonotone
C(u, v) = max(u + v − 1, 0), indépendante C(u, v) = uv, de Clayton, et gaussienne de para-
mètre ρ = 1/2. Pour cette dernière, on pourra faire appel à la fonction pmvnorm du package
mvtnorm.
2. On veut simuler deux nuages de 1000 points dont chaque marge suit une loi gaussienne
centrée réduite. Sur la même fenêtre graphique, représenter à gauche un tel échantillon
pour la copule gaussienne de paramètre ρ = 1/2, et à droite pour la copule de Clayton.
3. On veut simuler deux nuages de 1000 points dont chaque marge suit une loi de Laplace. Sur
la même fenêtre graphique, représenter à gauche un tel échantillon pour la copule gaussienne
de paramètre ρ = 1/2, et à droite pour la copule indépendante.
Exercice 1.18 (Mouvement brownien, pont brownien)
Un mouvement brownien ou processus de Wiener (Wt )t≥0 peut être caractérisé par : W0 = 0, les
trajectoires de t 7→ Wt sont presque sûrement continues, Wt est à incréments indépendants avec,
pour tout 0 ≤ s ≤ t, Wt − Ws ∼ N (0, t − s).
1. On veut simuler de façon approchée un mouvement brownien entre les dates t = 0 et
t = 1. Simuler n = 100 variables gaussiennes et en déduire des réalisations de Wt pour
t ∈ {1/100, . . . , 99/100, 1} (on pourra utiliser la fonction cumsum). Représenter la trajectoire
avec en abscisse le temps et en ordonnée Wt , les points (t, Wt ) étant reliés par des segments.
Idem avec n = 104 .
2. En dimension 2, un processus (Wt )t≥0 = (Wtx , Wty )t≥0 est un mouvement brownien si
(Wtx )t≥0 et (Wty )t≥0 sont deux mouvements browniens indépendants. Simuler et représenter
une trajectoire (Wt )0≤t≤1 à partir de n = 100 points. Idem avec n = 104 points. Marquer
l’origine d’un point rouge.
où U(1,n) < · · · < U(n,n) est le n-ème échantillon ordonné et U(n+1,n) = +∞. En déduire
√
la représentation de n(Fn (x) − F (x)) sur [0, 1] pour n = 100 et pour n = 104 .
(b) Fixons n = 100. En tenant compte du fait que
j−1 j
kFn − F k∞ = max max U(j,n) − , U(j,n) − ,
1≤j≤n n n
√
construire un échantillon de taille 1000 selon la loi nkFn − F k∞ . Sur un même gra-
phique, représenter un estimateur de la densité de cet échantillon et un estimateur de
la densité d’un échantillon de taille 1000 de la loi de sup0≤t≤1 |Bt |.
1.6 Corrigés
Voir la page du cours.
Intégration Monte-Carlo
Introduction
Une application classique des méthodes Monte-Carlo est le calcul de quantités du type
Z
I = E[ϕ(X)] = ϕ(x)f (x)dx, (2.1)
où les Xi sont générées de façon i.i.d. selon f . Outre les propriétés de cet estimateur, ce chapitre ex-
plique comment on peut éventuellement améliorer sa précision grâce à des techniques de réduction
de variance.
2.1 Généralités
2.1.1 Convergence et intervalles de confiance
Il est clair que l’estimateur Iˆn est sans biais, c’est-à-dire que E[Iˆn ] = I. Mieux, la loi forte des
grands nombres assure qu’il est convergent.
Proposition 5 (Loi des grands nombres)
Si E|ϕ(X)| < ∞, alors
n
ˆ 1X p.s.
In = ϕ(Xi ) −−−→ I.
n n→∞
i=1
21
22 Chapitre 2. Intégration Monte-Carlo
On dispose donc d’un estimateur Monte-Carlo 1 pour la constante π. Encore faut-il connaître sa
précision : c’est tout l’intérêt du théorème central limite.
Proposition
6 (Théorème central limite)
Si E ϕ(X)2 < ∞, alors
√ L
n (Iˆn − I) −−−→ N (0, σ 2 ),
n→∞
avec Z
2 2 2
σ = Var(ϕ(X)) = E[ϕ(X) ] − E[ϕ(X)] = ϕ(x)2 f (x)dx − I 2 .
Ainsi, lorsque n est grand, notre estimateur suit à peu près une loi normale : avec un abus de
notation flagrant, on a Iˆn ≈ N (I, σ 2 /n), c’est-à-dire que Iˆn tend vers I avec une vitesse en
√
O(1/ n). Plus précisément, le TCL doit permettre de construire des intervalles de confiance.
Cependant, en général, l’écart-type σ est lui aussi inconnu, il va donc falloir l’estimer. Qu’à cela
ne tienne, la méthode Monte-Carlo en fournit justement un estimateur à peu de frais puisque basé
sur le même échantillon (X1 , . . . , Xn ), à savoir
n
1X p.s.
σ̂n2 = ϕ(Xi )2 − Iˆn2 −−−→ σ 2 (2.3)
n n→∞
i=1
par la loi des grands nombres pour le premier terme et la Proposition 5 pour le second. Le lemme
de Slutsky implique donc que
√ Iˆn − I L
n −−−→ N (0, 1).
σ̂n n→∞
Exemple : estimation de π. Dans ce cas, la variance vaut tout simplement
π π
σ2 = I − I 2 = 1− ,
4 4
laquelle est donc estimée par σ̂n2 = Iˆn − Iˆn2 , et d’après ce qui vient d’être dit
√ Iˆn − I L
n q −−−→ N (0, 1).
n→∞
Iˆn − Iˆn2
où Φ−1 (1 − α/2) désigne le quantile d’ordre 1 − α/2 de la loi normale centrée réduite.
Typiquement α = 0.05 donne Φ−1 (1 − α/2) = q0.975 = 1.96 ≈ 2, qui permet de construire un
intervalle de confiance à 95% pour I. Un point de précision en passant : prendre 1.96 plutôt que 2
√
pour le quantile de la loi normale est tout à fait illusoire si le terme σ̂n / n n’est pas déjà lui-même
de l’ordre de 0.01 (i.e., pour un écart-type unité, un échantillon de taille au moins 10 000).
1. tout à fait inutile en pratique, puisqu’il existe des formules analytiques bien plus efficaces pour approcher π.
3.6
3.4
3.2
3.0
2.8
où les Ui = (Ui,1 , . . . , Ui,d ) sont des vecteurs i.i.d. uniformes sur [0, 1]d . Par ailleurs, si la fonc-
tion ϕ est suffisamment régulière, des méthodes déterministes d’intégration numérique permettent
également d’approcher cette intégrale.
Commençons par la dimension d = 1 et rappelons quelques résultats classiques :
— Dans ce cas, si ϕ est de classe C 1 , la méthode des rectangles sur la subdivision régulière
{1/n, . . . , (n − 1)/n, 1} a une précision en O(1/n). Plus précisément, si on convient de noter
M1 = supx∈[0,1] |ϕ′ (x)| et Rn l’approximation obtenue, alors
M1
|Rn − I| ≤ .
2n
— Si ϕ est de classe C 2 , la méthode des trapèzes sur la même subdivision a une précision
en O(1/n2 ). Plus précisément, si on note M2 = supx∈[0,1] |ϕ′′ (x)| et Tn l’approximation
obtenue, alors
M2
|Tn − I| ≤ .
12n2
— La méthode de Simpson consiste à approcher f sur chaque segment [k/n, (k + 1)/n] par un
arc de parabole qui coïncide avec f aux deux extrémités et au milieu de ce segment. Si ϕ
est de classe C 4 , cette méthode a une précision en O(1/n4 ). Plus précisément, si on note
M4 = supx∈[0,1] |ϕ(4) (x)| et Sn l’approximation obtenue, alors
M4
|Sn − I| ≤ .
2880n4
— De façon générale, si ϕ est de classe C s , une méthode adaptée à cette régularité (de type
Newton-Cotes) permettra d’obtenir une erreur en O(1/ns ). Si l’on compare à l’erreur en
√
O(1/ n) de la méthode Monte-Carlo, il est donc clair que les méthodes déterministes sont
préférables dès que f est C 1 .
Passons maintenant au cas d = 2 et focalisons-nous sur la plus simple des méthodes déterministes,
à savoir celle des “rectangles” : on somme donc cette fois des volumes de pavés. Si l’on considère
Z 1Z 1 n−1
X Z (k+1)/n Z (ℓ+1)/n
I= ϕ(x, y)dxdy = ϕ(x, y)dxdy
0 0 k,ℓ=0 k/n ℓ/n
il vient
n−1
X Z (k+1)/n Z (ℓ+1)/n
|I − Rn | ≤ |ϕ(x, y) − ϕ(k/n, ℓ/n)| dxdy.
k,ℓ=0 k/n ℓ/n
Par le théorème des accroissements finis (on rappelle que ϕ est à valeurs dans R), pour tout couple
(k, ℓ), il existe ck,ℓ ∈ [k/n, (k + 1)/n] × [ℓ/n, (ℓ + 1)/n] tel que
∂ϕ ∂ϕ 1
|ϕ(x, y) − ϕ(k/n, ℓ/n)| = (ck,ℓ )(x − k/n) + (ck,ℓ )(y − ℓ/n) ≤ k∇ϕ(ck,ℓ )k1 .
∂x ∂y n
En notant M1 = sup0≤x,y≤1 k∇ϕ(x, y)k1 , on obtient donc
M1
|I − Rn | ≤ .
n
Néanmoins, pour comparer ce qui est comparable, il faut considérer que les deux méthodes font le
même nombre n d’appels 2 à la fonction ϕ. La subdivision {0, 1/n, . . . , (n − 1)/n} de la dimension
√ √ √
1 est donc remplacée par le maillage de n points Ak,ℓ = (k/ n, ℓ/ n), avec 1 ≤ k, ℓ ≤ n. La
√
précision de la méthode s’en ressent puisqu’elle est alors logiquement en O(1/ n), tout comme la
méthode Monte-Carlo basée sur n appels à la fonction ϕ.
De façon générale, si ϕ est de classe C s sur [0, 1]d , alors une méthode déterministe adaptée à
cette régularité et faisant n appels à la fonction ϕ permettra d’atteindre une vitesse en O(n−s/d ).
Cette vitesse qui s’effondre avec d est symptomatique du fléau de la dimension. A contrario, la
√
méthode Monte-Carlo, avec une vitesse en 1/ n, est insensible à la dimension et peut donc s’avérer
plus avantageuse dès que l’on travaille en dimension grande ou sur une fonction irrégulière. En
fin de chapitre, nous dirons un mot des méthodes quasi Monte-Carlo, lesquelles représentent un
compromis entre les méthodes déterministes et les méthodes Monte-Carlo.
permettent de l’estimer par une méthode donnée, par exemple au maximum de vraisemblance.
L’approche bayésienne est différente : elle consiste à considérer que θ est lui-même une variable
aléatoire θ et suit une loi (dite a priori) donnée, les observations X = (X1 , . . . , XN ) permettant
d’affiner cette loi.
Plus formellement, notons π la densité de la loi a priori de θ (ou prior) et f (x|θ) la densité
conditionnelle de X sachant θ = θ (ou vraisemblance). Nous supposons pour simplifier les écritures
que toutes ces densités sont définies par rapport à la mesure de Lebesgue. Par la règle de Bayes,
la densité a posteriori de θ sachant l’observation X (ou posterior) s’écrit alors tout simplement
f (X|θ)π(θ) f (X|θ)π(θ)
π(θ|X) = =Z .
f (X)
f (X|t)π(t)dt
Puisqu’on cherche une densité par rapport à la variable θ, tout ce qui ne dépend pas de θ joue le
rôle d’une constante de normalisation, d’où l’utilisation du symbole ∝ (“proportionnel à”). Ainsi
l’écriture
π(θ|X) ∝ f (X|θ)π(θ)
signifie qu’il existe une constante de normalisation c(X), ne faisant pas intervenir θ, telle que
Il suffit alors de faire apparaître une densité gaussienne pour en déduire la loi a posteriori :
2
N +1 N
π(θ|X) ∝ exp − 2 θ − N +1 X̄N ,
donc
N 1
L(θ|X) = N N +1 X̄N , N +1 .
La loi a posteriori est une loi normale de moyenne N X̄N /(N + 1) (qui dépend des observations)
et de variance 1/(N + 1) (qui ne dépend pas des observations). C’est la loi (aléatoire, car fonction
de X) ayant la densité suivante par rapport à la mesure de Lebesgue sur R :
r 2
N +1 N +1 N
π(θ|X) = exp − 2 θ − N +1 X̄N .
2π
Par rapport à la loi a priori (i.e. la gaussienne standard), la loi a posteriori est donc centrée grosso
modo autour de la moyenne empirique X̄N des données observées et est bien plus concentrée
autour de cette moyenne que ne l’était la loi a priori autour de 0. Autrement dit, les observations
X1 , . . . , XN ont apporté de l’information sur le paramètre inconnu et aléatoire θ.
Ceci fait, on pourra s’intéresser à une valeur moyenne par rapport à cette loi a posteriori, laquelle
s’écrira donc
Z
Z ϕ(θ)f (X|θ)π(θ)dθ
E[ϕ(θ)|X] = ϕ(θ)π(θ|X)dθ = Z . (2.4)
f (X|θ)π(θ)dθ
Exemple. Dans l’exemple précédent, puisque sachant X, la variable θ suit une loi gaussienne de
moyenne N X̄N /(N + 1) et de variance 1/(N + 1), l’estimateur de Bayes pour la perte quadratique
est tout simplement
θ̂N (X) = NN+1 X̄N .
Remarque. Si l’on adopte une approche fréquentiste et que l’on considère une réalisation fixée
θ0 de la variable aléatoire θ, on voit que, lorsque N croît, l’estimateur de Bayes diffère de moins
en moins de la moyenne empirique X̄N , qui est dans ce modèle l’estimateur du maximum de
vraisemblance. Dans ce cas, cette moyenne empirique se concentrant elle-même autour de θ0 , la
loi a posteriori se concentre autour de θ0 .
Contrairement à ce que pourrait laisser croire cet exemple jouet, le calcul de l’intégrale (2.4) est en
général impossible analytiquement et difficile par intégration numérique déterministe, en particulier
si le paramètre θ est multidimensionnel. On a donc naturellement recours à des méthodes Monte-
Carlo.
Supposons en effet que l’on sache simuler suivant la loi a priori π(θ) et, pour tout θ, évaluer
la quantité ϕ(θ)f (x|θ). On retombe alors exactement dans le cadre d’application des méthodes
Monte-Carlo d’intégration, puisqu’il suffit de générer des réalisations i.i.d. (θ 1 , . . . , θ n ) selon π(θ)
pour en déduire que, sachant X,
n Z
1X p.s.
ϕ(θ i )f (X|θ i ) −−−→ ϕ(θ)f (X|θ)π(θ)dθ.
n n→∞
i=1
ceci peut se faire assez simplement. Supposons en effet que l’on adopte une méthode de rejet avec
la loi a priori comme loi instrumentale : il faut alors trouver m tel que
où, sous réserve d’existence et d’unicité, θ̃ = θ̃(X) est l’estimateur du maximum de vraisemblance.
Notons qu’on a alors tout simplement
π(θ|X) f (X|θ)
= .
mπ(θ) f (X|θ̃)
Ainsi, dès lors que l’on sait simuler selon la loi a priori et, pour l’observation X, calculer en tout θ
la vraisemblance ainsi que l’estimateur du maximum de vraisemblance, il suffit de procéder comme
suit :
— Pour l’observation X, calculer l’estimateur du maximum de vraisemblance θ̃ ;
— simuler des couples (θ k , Uk ) i.i.d. selon la loi a priori π(θ) et la loi uniforme jusqu’à ce que
f (X|θ)
Uk ≤ .
f (X|θ̃)
Le point remarquable de cette méthode est qu’elle ne nécessite pas le calcul de la densité marginale
f (X), qui est souvent très compliquée.
Exemple : si, sachant θ, les (Xi )1≤i≤N sont i.i.d. selon la loi N (θ, 1), alors on sait que l’estimateur
du maximum de vraisemblance est tout bonnement θ̃ = X̄N et, après simplifications,
f (X|θ) N 2
= exp − (θ − X̄N ) .
f (X|θ̃) 2
α0 (x) = inf{α ∈ [0, 1], H0 est rejetée au niveau α} = inf{α ∈ [0, 1], S(x) > cα }.
Rappelons qu’une p-value très faible signifie que H0 est très peu vraisemblable. Si H0 est une
hypothèse simple, i.e. θ = θ0 , alors sous certaines hypothèses (par exemple lorsque, sous H0 , la
fonction de répartition de la variable aléatoire S(X) est bijective), on peut montrer que, sous H0 ,
où X est aléatoire suivant la loi prescrite par H0 : θ = θ0 , et S(x) fixée. On résume souvent ceci
par la phrase : « La p-value est la probabilité, sous H0 , d’obtenir une statistique de test au moins
aussi extrême que celle observée. »
Exemple. Dans l’exemple précédent, pour une réalisation x, la p-value s’obtient via la première
formulation comme suit :
α0 (x) = inf{α ∈ [0, 1], S(x) > Φ−1 (1−α/2)} = inf{α ∈ [0, 1], α > 2(1−Φ(S(x))} = 2(1−Φ(S(x)).
√
On retrouve facilement ce résultat par la seconde formulation : sous H0 , puisque S(X) = | nX̄n | ∼
|N (0, 1)|, on a
P(S(X) > S(x)) = P(|N (0, 1)| > S(x)) = 2(1 − Φ(S(x))) = α0 (x).
Sur cet exemple élémentaire, toutes les lois sont explicites et connues, mais ce n’est pas toujours
le cas. Supposons un test consistant à rejeter H0 au niveau α si et seulement si S(X) > cα et que,
pour une réalisation x, on veuille calculer la p-value associée. Si on sait simuler X sous H0 , alors
un estimateur Monte-Carlo α̂n0 (x) de α0 (x) s’obtient tout simplement en simulant des variables
Xi i.i.d. sous H0 et en considérant
n
1X
α̂n0 (x) = 1S(Xi )>S(x) .
n
i=1
Un intervalle de confiance de niveau asymptotique 95% pour α0 (x) est ainsi donné par
" p n p n #
α̂ (x)(1 − α̂n (x)) α̂ (x)(1 − α̂n (x))
0 0 0 0
α̂n0 (x) − 2 √ ; α̂n0 (x) + 2 √ .
n n
Remarque : Supposons que H0 n’est pas vraie, alors la p-value peut être très petite, par exemple
α0 (x) = 10−9 . Dans ce cas, il est clair qu’à moins de prendre n de l’ordre de 109 , l’estimateur
Monte-Carlo renverra typiquement la valeur 0. Si l’on souhaite une estimation précise de cette
p-value, il faut alors faire appel à des méthodes Monte-Carlo pour événements rares.
σ 2 par 2 permet de diviser le nombre n de simulations nécessaires par 2 pour atteindre la même
précision. Si la nouvelle méthode n’est pas plus coûteuse en temps de calcul, c’est donc la durée
de la simulation qui est ainsi divisée par deux. Si la nouvelle méthode requiert beaucoup plus
de calculs, il faut en toute rigueur en tenir compte, par exemple en définissant l’efficacité d’une
technique par
1
Efficacité = ,
Complexité × Variance
et en comparant les efficacités des différentes méthodes entre elles. Ceci n’est néanmoins pas tou-
jours facile.
Si la fonction ϕ prend ses plus grandes valeurs là où la densité f est très faible, i.e. là où X a très
peu de chances de tomber, et réciproquement, l’estimateur Monte-Carlo classique
n
1X
Iˆn = ϕ(Xi )
n
i=1
est très mauvais puisqu’à moins de prendre n très grand, il va estimer environ 0 même si I vaut 1.
Exemples :
1. Evénements rares : la variable X suivant une loi normale centrée réduite, on veut estimer
la probabilité
Z
1 x2
P(X > 6) = 1 − Φ(6) = E[1X>6 ] = 1x>6 √ e− 2 dx.
R 2π
La commande 1-pnorm(6) en R montre qu’elle est de l’ordre de 10−9 . Ceci signifie qu’à
moins de prendre n de l’ordre d’au moins un milliard, on a toutes les chances d’obtenir
Iˆn = 0. Un cas particulier est celui où, en section précédente, on voudrait estimer de
façon précise (i.e. pas par zéro) une p-value alors qu’elle est très faible. Ceci est crucial dans
certains domaines applicatifs où l’on doit assurer un risque de première espèce extrêmement
faible (normes de sécurité drastiques, etc.).
2. Plus siouxe : soit m un réel, X ∼ N (m, 1) et ϕ(x) = exp(−mx + m2 /2). Pour tout m, on
a donc Z Z
1 x2
I = E[ϕ(X)] = ϕ(x)f (x)dx = √ e− 2 dx = 1.
R R 2π
Or 95% des Xi tombent dans l’intervalle [m−2, m+2] tandis que ϕ(m) = exp(−m2 /2) tend
très vite vers 0 quand m augmente. Ainsi, dès lors que m est grand, on obtient Iˆn proche de
0, ce qui n’est clairement pas une approximation souhaitable de la valeur cherchée I = 1.
où les Yi sont i.i.d. de densité g. Mutatis mutandis, les résultats vus pour Iˆn s’appliquent à nouveau
ici.
avec Z
2
s = Var(w(Y )ϕ(Y )) = w(y)2 ϕ(y)2 g(y)dy − I 2 = E[w(X)ϕ(X)2 ] − I 2 .
L’égalité dans l’inégalité précédente n’est possible que si la variable aléatoire w(Y )|ϕ(Y )| est p.s.
constante. La variable Y étant de densité g, ceci signifie qu’il existe une constante c telle que pour
tout y tel que g(y) > 0, on a
|ϕ(y)|f (y) |ϕ(y)|f (y)
w(y))|ϕ(y)| = c ⇐⇒ g(y) = ⇐⇒ g(y) = Z ,
c
|ϕ(y)|f (y)dy
2.2.2 Conditionnement
On cherche toujours à estimer I = E[ϕ(X)] en supposant E ϕ2 (X) < ∞. L’idée force dans cette
section a été vue en cours de probabilités, à savoir : le conditionnement ne change pas la moyenne,
mais réduit l’incertitude. Appliqué à notre contexte, ceci signifie que pour toute autre variable
aléatoire Y , on a d’une part
E[E[ϕ(X)|Y ]] = E[ϕ(X)] = I.
D’autre part, puisque ϕ(X) est de carré intégrable, l’espérance conditionnelle est la projection
orthogonale (définie p.s.) de ϕ(X) sur le sous-espace 3 σ(Y ) des variables aléatoires de la forme
h(Y ) où h est borélienne et telle que E[h(Y )2 ] < ∞. Par le Théorème de Pythagore, on a donc
(voir Figure 2.2)
Puisque E[E[ϕ(X)|Y ]] = E[ϕ(X)], on peut soustraire le carré de cette quantité des deux côtés pour
aboutir à
σ 2 = Var(ϕ(X)) ≥ Var(E[ϕ(X)|Y ]) = s2 .
Remarque. Une autre façon de le voir est d’appliquer la formule dite de la variance totale, à
savoir
Var(ϕ(X)) = Var(E[ϕ(X)|Y ]) + E[Var(ϕ(X)|Y )] ≥ Var(E[ϕ(X)|Y ]),
où la variance conditionnelle de ϕ(X) sachant Y est la variable aléatoire définie p.s. par
Soit donc Y une variable auxiliaire de densité g dont on sait simuler des réalisations et telle que,
pour tout y, on puisse calculer ψ(y) = E[ϕ(X)|Y = y]. On considère l’estimateur
n n
1X 1X
I˜n = ψ(Yi ) = E[ϕ(X)|Yi ].
n n
i=1 i=1
ϕ(X)
ϕ(X) − E[ϕ(X)|Y ]
E[ϕ(X)|Y ]
σ(Y )
avec
s2 = Var(E[ϕ(X)|Y ]) = Var(ψ(Y )) = E[ψ 2 (Y )] − I 2 .
La variance de Iˆn étant de σ 2 = π/4(1 − π/4) ≈ 0.17, on gagne un facteur 2 en écart-type, c’est-à-
dire que pour le même n, on a un estimateur deux fois plus précis avec deux fois moins de variables
uniformes (puisqu’on ne simule plus les Yi ).
2.2.3 Stratification
Le principe est le même qu’en sondages : s’il existe une variable auxiliaire Y permettant de par-
titionner l’espace d’états X = X1 ∪ · · · ∪ XJ en J strates sur chacune desquelles la variable X est
“assez homogène”, on a tout intérêt à tirer parti de cette information.
Formellement, supposons que l’on connaisse les probabilités pj = P(X ∈ Xj ) et que l’on sache
simuler selon les lois conditionnelles L(X|X ∈ Xj ). Par conditionnement, on peut écrire
J
X J
X
I = E[ϕ(X)] = E[ϕ(X)|X ∈ Xj ]P(X ∈ Xj ) = pj E[ϕ(X)|X ∈ Xj ].
j=1 j=1
L’idée est alors d’estimer séparément chacune des moyennes conditionnelles E[ϕ(X)|X ∈ Xj ] grâce
à nj simulations. Soit donc (n1 , . . . , nJ ) un J-uplet tel que n1 + · · · + nJ = n et, pour tout j,
(X1,j , . . . , Xnj ,j ) des réalisations i.i.d. de la loi L(X|X ∈ Xj ). L’estimateur par stratification a la
forme !
J nj
X 1 X
I˜n = pj ϕ(Xi,j )
nj
j=1 i=1
avec
σj2 = Var(ϕ(X)|X ∈ Xj ) = E ϕ2 (X)|X ∈ Xj − E [ϕ(X)|X ∈ Xj ]2 .
Si l’on convient de noter mj = E[ϕ(X)|X ∈ Xj ] les moyennes par classe, la formule de décompo-
sition en variances intra et inter-classe nous assure que
J
X J
X
Var(ϕ(X)) = pj σj2 + pj (I − mj )2 .
j=1 j=1
Cette allocation est impossible a priori puisqu’on ne connaît pas les σj . On sait cependant les
estimer par les σ̃j déjà croisés, donc on peut envisager une méthode en deux temps : on commence
par les estimer grâce à une première simulation, tandis qu’une seconde simulation effectue une
allocation quasi-optimale avec
!
p 1 σ̃ 1 p J σ̃ J
(ñ⋆1 , . . . , ñ⋆J ) = PJ n . . . , PJ n .
j=1 pj σ̃j j=1 pj σ̃j
Indépendamment de l’allocation choisie, les termes de variance intra-classe σj2 rappellent qu’on a
tout intérêt à choisir des strates Xj sur lesquelles la variable X est aussi homogène que possible.
Remarque. Notons Y la variable aléatoire discrète valant j si X ∈ Xj . L’approche par stratifica-
tion est liée à la méthode de conditionnement puisque dans les deux cas l’estimation est basée sur
le calcul d’espérance par conditionnement :
Z
E[ϕ(X)|Y = y]g(y)dy
E[ϕ(X)] = E[E[ϕ(X)|Y ]] =
PJ E[ϕ(X)|Y = j]p
j=1 j
Elles sont en fait duales : dans un cas on simule la variable auxiliaire Y et on connaît l’espé-
rance conditionnelle sachant celle-ci, dans l’autre on connaît la loi de Y et on estime l’espérance
conditionnelle sachant celle-ci.
est lui aussi sans biais et convergent. Il est cependant deux fois plus coûteux si l’évaluation
ϕ(F −1 (u)) n’est pas immédiate. Quid de sa variance ? Celle de Iˆn a déjà été vue et vaut Var(ϕ(X))/n.
Pour I˜n , on a
si bien que l’on a toujours, en notant ρ(X, Y ) = Cov(X, Y )/(σ(X)σ(Y )) le coefficient de corrélation
linéaire,
Var(I˜n ) 1 + ρ(ϕ(F −1 (U ), ϕ(F −1 (1 − U )))
= ≤ 1,
Var(Iˆn ) 2
c’est-à-dire que I˜n est préférable à Iˆn . Si de plus ϕ est monotone, alors l’inégalité de covariance de
Tchebychev permet de montrer que
Var(I˜n ) 1
Cov(ϕ(F −1 (U ), ϕ(F −1 (1 − U ))) ≤ 0 =⇒ ≤ .
Var(Iˆn ) 2
Si d = 1, pour une méthode Monte-Carlo classique, c’est-à-dire lorsque (Xn )n≥1 est une suite de
variables i.i.d. uniformes sur [0, 1], l’estimateur
n
1X
Iˆn = ϕ(Xi )
n
i=1
√
a une erreur moyenne en O(1/ n), celle-ci étant mesurée par l’écart-type. Pour n fixé, puisque
cette moyenne est mesurée par rapport à l’ensemble des séquences possibles {X1 , . . . , Xn } i.i.d.
√
uniformes sur [0, 1], cela signifie qu’il en existe pour lesquelles l’erreur est plus petite que 1/ n.
Par exemple, à n fixé et si ϕ est de classe C 1 , alors pour la séquence {1/n, . . . , (n − 1)/n, 1}, la
méthode des rectangles donne
n
1X kϕ′ k∞
|Rn − I| = ϕ(i/n) − I ≤ ,
n 2n
i=1
donc une vitesse bien meilleure. Néanmoins, avec cette méthode, l’estimateur à (n + 1) points
requiert le calcul des ϕ(i/(n + 1)), c’est-à-dire qu’on ne peut se servir ni de la valeur de Rn ni des
valeurs ϕ(i/n) déjà calculées. A contrario, pour une méthode Monte-Carlo, la relation entre Iˆn et
Iˆn+1 est élémentaire puisque
n ˆ 1
Iˆn+1 = In + ϕ(Xn+1 ).
n+1 n+1
L’idée des méthodes Quasi-Monte-Carlo est de trouver un compromis entre ces deux techniques.
Commençons par introduire la notion de discrépance, ou plutôt une notion de discrépance.
où R⋆ = {B = [0, u1 ] × · · · × [0, ud ], 0 ≤ uj ≤ 1 ∀j} est l’ensemble des pavés contenus dans [0, 1]d
avec un sommet en l’origine, λ(B) = u1 × · · · × ud est la mesure de Lebesgue d’un tel pavé tandis
que λn (B) est sa mesure empirique pour la suite (ξn )n≥1 , i.e. la proportion des n premiers points
de cette suite appartenant à B.
En dimension d = 1, on a ainsi
n
1X
Dn⋆ (ξ) = sup 1[0,u] (ξi ) − u .
0≤u≤1 n
i=1
Autrement dit, la discrépance à l’origine mesure la distance en norme sup entre la fonction de
répartition empirique et celle de la loi uniforme.
Exemples :
1. Suites de van der Corput : en dimension d = 1, on se fixe un nombre entier, par exemple 2,
et on part de la suite des entiers naturels que l’on traduit en base 2 :
1 = (1), 2 = (10), 3 = (11), 4 = (100), 5 = (101), 6 = (110), 7 = (111), 8 = (1000), . . .
puis on applique la transformation “miroir” suivante :
B
X B
X
b xb
n= xb 2 =⇒ ξn = ,
2b+1
b=0 b=0
2. Suites de Halton : elles correspondent à la généralisation des suites de van der Corput en
dimension d supérieure à 1. On considère d nombres premiers entre eux b1 , . . . , bd et on
construit les d suites de van der Corput ξ (1) , . . . , ξ (d) de bases respectives b1 , . . . , bd . La
suite de Halton associée est alors
ξ = (ξn )n≥1 = ξn(1) , . . . , ξn(d) .
n≥1
Pour une suite de Halton en dimension d, on peut montrer que Dn⋆ (ξ) = O((log n)d /n).
1.00 1.00
0.75 0.75
0.50 0.50
0.25 0.25
0.00 0.00
0.00 0.25 0.50 0.75 1.00 0.00 0.25 0.50 0.75 1.00
Figure 2.3 – Echantillons de n = 500 points d’une suite uniforme et d’une suite de Halton.
Avant de voir en quoi la notion de discrépance permet de contrôler l’erreur d’estimation, il faut
introduire une notion de variation de la fonction à intégrer. Pour simplifier les choses, nous nous
focaliserons sur les fonctions ϕ suffisamment régulières.
d
X X Z ∂j ϕ
V (ϕ) = (x(i1 , . . . , ij )) dxi1 . . . dxij ,
[0,1]j ∂xi1 . . . ∂xij
j=1 i1 <···<ij
avec x(i1 , . . . , ij ) le point de Rd dont toutes les coordonnées valent 1 sauf celles de rangs (i1 , . . . , ij )
qui valent respectivement (xi1 , . . . , xij ).
Il est clair qu’en dimension supérieure, estimer la variation de Hardy-Krause devient vite inextri-
cable : somme de (2d − 1) termes, dérivées partielles... Néanmoins, cette notion intervient de façon
cruciale pour majorer la qualité d’un estimateur basé sur une séquence (ξn )n≥1 .
L’intérêt de ce résultat est de séparer l’erreur d’estimation en deux termes : l’un faisant intervenir
la régularité de ϕ, l’autre les propriétés de (ξn )n≥1 en terme de discrépance. Puisqu’a priori on n’a
aucune latitude sur ϕ, l’idée est de prendre (ξn )n≥1 de discrépance minimale.
En dimension 1, il est prouvé qu’on ne peut faire mieux qu’une discrépance en O(log n/n). En
dimension supérieure, ce problème est encore ouvert à l’heure actuelle : on sait prouver que la
discrépance ne peut être plus petite que O((log n)d/2 /n), mais la conjecture est que la meilleure
borne possible est en fait en O((log n)d /n). Ceci explique la définition suivante.
Exemples. Outre les suites de Halton détaillées ci-dessus, on peut citer les suites de Faure, de
Sobol et de Niederreiter comme exemples de suites à discrépance faible.
Si l’on revient au problème d’intégration
Z
I= ϕ(x)dx,
[0,1]d
et que l’on se donne une suite (ξn )n≥1 à discrépance faible, par exemple une suite de Halton basée
sur les d premiers nombres premiers, alors l’estimateur
n
1X
Iˆn = ϕ(ξi )
n
i=1
2.4 Exercices
Exercice 2.1 (Estimation de π)
On revient sur la méthode vue en cours de simulation uniforme dans le quart de disque unité.
1. En déduire un estimateur π̂n de π, ainsi qu’un intervalle de confiance asymptotique à 95%.
2. Sur un même graphique, représenter π̂n et les intervalles de confiance en fonction de n pour
n allant de 1 à 1000. Ajouter à ce graphique la droite horizontale y = π.
3. Comment choisir n pour obtenir une précision au centième sur π (avec 95% de chances) ?
4. Retrouver ce résultat par simulation.
2. Montrer par ailleurs que : Cov(ϕ(X) − ϕ(X ′ ), ψ(X) − ψ(X ′ )) = 2 Cov(ϕ(X), ψ(X)), et en
déduire l’inégalité de covariance de Tchebychev, à savoir que : Cov(ϕ(X), ψ(X)) ≤ 0.
3. En déduire le principe des variables antithétiques en Monte-Carlo, à savoir que si ϕ est
monotone et h décroissante telle que h(X) ait même loi que X alors, sous réserve d’existence
des variances,
ϕ(X) + ϕ(h(X)) 1
Var ≤ Var(ϕ(X)).
2 2
4. Exemple jouet : proposer une méthode de variable antithétique pour estimer E[exp X]
lorsque X ∼ N (0, 1) et illustrer la réduction de variance obtenue par rapport à une méthode
Monte-Carlo classique.
5. On peut généraliser l’inégalité de Tchebychev comme suit : soit ϕ(x, y) croissante en chaque
variable, ψ(x, y) décroissante en chaque variable, et (X, Y ) deux variables indépendantes,
alors sous réserve d’existence des variances, on a Cov(ϕ(X, Y ), ψ(X, Y )) ≤ 0. En déduire
une méthode de variables antithétiques pour estimer la valeur de p de l’Exercice 2.7 et la
comparer à la méthode par conditionnement.
4. Sur un même graphique, représenter à gauche 500 points distribués selon une loi uniforme
dans le carré [0, 1] × [0, 1], et à droite 500 points d’une suite de Halton.
5. Toujours à l’aide d’une suite de Halton, implémenter l’estimateur Quasi-Monte-Carlo I˜n de
I(k, d). Sur un même graphique, pour k = 1, représenter I, Iˆn et I˜n en fonction de n. Faire
varier d.
θ0X (1 − θ0 )N −X
T (X) = −2 log ,
θ̂ X (1 − θ̂)N −X
avec X ∼ B(N, 1/2). Comment estimer α0 (x) par une méthode Monte-Carlo ? Implémenter
cette méthode pour N = 10.
3. On peut montrer que, sous H0 , T (X) tend en loi vers une χ21 lorsque N tend vers l’infini.
Pour N = 104 , retrouver le résultat de la simulation de la question précédente à partir de
la fonction pchisq.
4. Grâce à un développement limité en θ0 autour de θ̂, justifier la convergence vers une loi χ21
de la question précédente.
4. Sur cet échantillon, calculer la proportion p̃n,R de θr∗ qui sont positifs. Comparer à la pro-
babilité obtenue en question 2.
5. Soit ϕ : R → R une fonction mesurable bornée, déterminer
R
1 X
E[ ϕ(θr∗ )|θ̃1 , · · · , θ̃n , x].
R r=1
2.5 Corrigés
Voir la page du cours.
Introduction
Le premier chapitre exposait quelques méthodes pour simuler des variables aléatoires X1 , X2 , . . .
i.i.d. selon une loi f donnée. Ceci étant supposé possible, le deuxième chapitre en donnait une
application classique pour l’estimation de
Z
I = E[ϕ(X)] = ϕ(x)f (x)dx, (3.1)
Ceci étant, la convergence de Iˆn vers I est encore valable si les variables Xn ne sont plus i.i.d.,
mais constituent par exemple une chaîne de Markov de loi stationnaire f . On parle alors de
méthodes Monte-Carlo par chaînes de Markov (MCMC), dont l’algorithme de Metropolis-Hastings
est l’exemple le plus connu. Afin de simplifier les choses, ce chapitre en présente les idées dans le
cadre d’un espace d’états fini, mais tout est transposable dans un cadre plus général.
Autrement dit, sachant le présent, le futur est indépendant du passé. Ou encore : l’état présent
étant connu, toute information sur le passé est inutile pour prévoir l’état futur. On appelle alors
probabilité de transition de l’état x vers l’état y la quantité
∀(x, y) ∈ E 2 , 0 ≤ P (x, y) ≤ 1.
47
48 Chapitre 3. Monte-Carlo par Chaînes de Markov
Autrement dit, 1 est valeur propre de P , le vecteur 1 = [1, . . . , 1]′ étant un vecteur propre
associé.
— Spectre : toute valeur propre de P est, en module, inférieure ou égale à 1. En effet, soit
(λ, v) un couple propre. Il existe x0 ∈ E tel que kvk∞ = |v(x0 )| > 0, or P v = λv donne en
particulier
X X X
|λv(x0 )| = P (x0 , y)v(y) ≤ P (x0 , y)|v(y)| ≤ P (x0 , y) |v(x0 )| = |v(x0 )|,
y∈E y∈E y∈E
donc |λ| ≤ 1.
Le sous-espace propre associé à la valeur propre 1 n’est pas nécessairement de dimension égale à 1.
Pour preuve l’exemple trivial de la matrice identité : noter que cet exemple correspondrait à une
chaîne qui ne change jamais d’état, il ne présente donc pas un grand intérêt.
Par ailleurs, la spécification de la loi initiale, c’est-à-dire des P(X0 = x) pour tout x ∈ E, et des
probabilités de transition P (x, y) permet d’écrire très simplement la loi jointe du vecteur aléatoire
(X0 , . . . , Xn ), puisque :
A toute chaîne de Markov peut être associé un graphe de transition de la façon suivante : les
sommets du graphe sont les états de E et il existe un arc, étiqueté P (x, y), de x vers y si P (x, y) > 0.
Cette construction est commode lorsque E n’est pas trop grand ou lorsque la matrice P est très
creuse, autrement dit lorsque d’un état on ne peut transiter que vers un petit nombre d’états.
1
2
1 2
2 0 1 3
1
3
Exemple : la ligne téléphonique. On considère une ligne de téléphone. L’état Xn de cette ligne
à l’étape n est 0 si elle est libre et 1 si elle occupée. Entre deux instants successifs, il y a une
probabilité 1/2 pour qu’un appel arrive. Si la ligne est occupée et qu’un appel arrive, cet appel est
perdu. La probabilité pour que la ligne se libère entre l’instant n et l’instant (n + 1) est 1/3. Le
graphe de transition de cette chaîne de Markov est donné figure 3.1. La matrice de transition est
la suivante :
1/2 1/2
P = .
1/3 2/3
Les probabilités de transition en n étapes sont en fait complètement déterminées par les probabilités
de transition en un coup, c’est-à-dire par la matrice de transition. Ceci est explicité par les équations
de Chapman-Kolmogorov, que nous allons voir maintenant.
C’est plutôt cette équation qu’on appelle relation de Chapman-Kolmogorov. Ce qu’on traduit
comme suit : aller de x à y en (n1 + n2 ) pas, c’est d’abord aller de x à un certain x′ en n1 pas,
puis de x′ à y en n2 pas.
Notation. Tout comme les transitions de la chaîne, la position initiale X0 peut être aléatoire. On
convient de noter la loi de X0 comme un vecteur ligne de taille |E| = d :
Pour une suite de variables aléatoires (Xn ) à valeurs dans l’ensemble fini E, la convergence en loi
correspond simplement à la convergence du vecteur ligne µn de taille d, c’est-à-dire à la convergence
de chacune de ses d composantes. Puisque µn = µ0 P n , une condition suffisante pour la convergence
en loi de (Xn ) est donc la convergence de la suite (P n ) des puissances de la matrice P .
Tant qu’à faire, on aimerait avoir convergence de la loi de (Xn ) vers une loi indépendante de la
loi initiale µ0 , phénomène connu sous le nom d’oubli de la condition initiale. Mentionnons deux
situations pathologiques :
0 1 1 0
P = et Q= = I2 . (3.3)
1 0 0 1
Afin d’éviter ces désagréments, nous nous focaliserons sur les chaînes irréductibles et apériodiques.
Une chaîne est dite irréductible si tous les états communiquent entre eux, autrement dit : pour
tout couple de sommets du graphe de transition, il existe un chemin allant de l’un à l’autre en
suivant le sens des flèches :
On peut alors montrer que 1 est valeur propre simple (ce qui n’était pas le cas pour P = I2 ).
Remarque : la valeur propre 1 peut être simple sans que la chaîne soit irréductible, comme le
montre la matrice
1 0
P = .
1/2 1/2
On parle dans ce cas de chaîne indécomposable (des états transitoires et une seule classe de
récurrence).
Une chaîne est dite apériodique si
La quantité d(x) ∈ N∪{∞} est appelée période de l’état x. On peut montrer que, lorsqu’une chaîne
est irréductible, tous les états ont même période. Par conséquent, pour une chaîne irréductible,
une condition suffisante d’apériodicité est qu’il existe un état sur lequel elle puisse boucler, c’est-
à-dire un indice x tel que P (x, x) > 0. Pour une chaîne irréductible, un critère d’apériodicité est
le suivant :
Si une chaîne est apériodique, on peut montrer que 1 est la seule valeur propre de module 1.
Bilan : pour une chaîne apériodique et irréductible, 1 est valeur propre simple et c’est la seule de
module 1.
Remarque : En (3.3), la chaîne de matrice de transition P est irréductible mais pas apériodique
(période 2), tandis que celle correspondant à Q est apériodique, mais pas irréductible.
Notations :
— Tandis qu’une loi π sur E est un vecteur ligne, une fonction ϕ : E → R est un vecteur
colonne. La quantité πϕ n’est alors rien d’autre que la moyenne de la variable aléatoire
ϕ(X) lorsque X a pour loi π :
X
πϕ = π(x)ϕ(x) = E[ϕ(X)].
x∈E
— Nous avons dit que si une chaîne est irréductible et apériodique, 1 est valeur propre simple de
P et c’est la seule de module 1. Notons 1 > |λ2 | ≥ |λ3 | ≥ · · · les valeurs propres distinctes
rangées par ordre décroissant de leur module. Pour les valeurs propres distinctes de module
|λ2 |, chacune a un degré, dit algébrique, dans le polynôme minimal de P : ce degré vaut 1 si
le sous-espace propre associé à cette valeur propre est de dimension égale à la multiplicité
de cette racine dans le polynôme caractéristique de P , sinon il correspond à la taille du bloc
de Jordan associé. On note alors r le maximum des degrés algébriques associés aux valeurs
propres distinctes de module |λ2 |. Par exemple, si P est diagonalisable, alors clairement
r = 1.
La propriété de convergence géométrique semble donc une excellente nouvelle, mais lorsque l’espace
d’états est très grand, |λ2 | peut être très proche de 1 et C peut être très grande : ce résultat n’a
alors plus aucune implication pratique. La quantité (1 − |λ2 |) est appelée le trou spectral.
Remarques :
1. On parle indifféremment de loi invariante, ou de loi stationnaire ou encore de loi d’équilibre,
pour π vérifiant πP = π. Supposons la chaîne irréductible, donc l’unicité de π : en notant
Tx+ = inf{n > 0, Xn = x} le premier temps de retour de la chaîne en x, on a l’expression
suivante pour cette loi stationnaire :
1
π(x) = .
E[Tx+ |X0 = x]
2. On parle de théorème ergodique pour la loi des grands nombres dans le cas des chaînes
de Markov. Dans la même veine que la remarque précédente, la mesure d’équilibre π peut
s’interpréter comme la proportion du temps passé par une trajectoire dans chaque état. Il
suffit pour s’en convaincre de prendre par exemple ϕ = 1x0 , pour x0 un état fixé quelconque,
et d’appliquer le théorème ergodique 1 :
n
1X |{k ∈ {1, . . . , n}, Xk = x0 }| p.s.
1x0 (Xk ) = −−−→ π1x0 = π(x0 ).
n n n→∞
k=1
3. Contrairement au cas des suites de variables i.i.d., la variance σ 2 (ϕ) qui apparaît dans le
TCL pour les chaînes de Markov n’est pas triviale du tout. En particulier, ça n’est pas tout
bonnement 2
XM XM
Varπ (ϕ) = ϕ2 (j)πj − ϕ(j)πj ,
j=1 j=1
qui correspondrait à la variance “limite”, i.e. celle de ϕ(X) lorsque X a pour loi π. Il faut
en effet tenir compte des dépendances entre les variables Xn de la chaîne, ce qui complique
tout... En considérant X0 la condition initiale de la chaîne, supposée de loi π, on peut
montrer que cette variance asymptotique vaut, :
σ 2 (ϕ) = E (u(X1 ) − (P u)(X0 ))2 ,
4. Si l’on revient à l’exemple de la matrice de transition P en (3.3), qui est irréductible, l’unique
loi stationnaire est π = [1/2, 1/2]. D’après le théorème, cette chaîne vérifie donc une loi des
grands nombres, à savoir
n
1X p.s. 1
ϕ(Xk ) −−−→ (ϕ(1) + ϕ(2)) ,
n n→∞ 2
k=1
ainsi qu’un théorème central limite, mais certainement pas de convergence en loi. La raison
est intuitivement claire : la moyennisation sur une trajectoire de la chaîne permet de tuer
le phénomène de périodicité, ce qui n’est pas le cas de la convergence en loi.
Définition 6 (Réversibilité)
Soit π une mesure de probabilité et (Xn ) une chaîne de Markov de matrice de transition P . On
dira que la chaîne est réversible pour π si elle vérifie les équations d’équilibre détaillé, à savoir
Une interprétation est la suivante : considérons la mesure initiale µ comme une répartition de
masses sur l’espace d’états, la masse totale valant donc 1. Entre l’instant 0 et l’instant 1, une
proportion P (x, y) de la masse µ(x) présente en x part en y, et ce pour tout couple de points
(x, y). Il est facile de voir que la répartition des masses à l’instant 1 est µP , c’est-à-dire la loi
de X1 . Ainsi, de façon générale, dire que π est une mesure d’équilibre pour P (c’est-à-dire que
πP = π), signifie que si l’on part de cette mesure à un instant donné, tout ce qui quitte l’état
x est égal à tout ce qui arrive dans l’état x : la répartition des masses ne change donc pas d’un
instant au suivant (d’où la dénomination “loi d’équilibre”). Dire que la chaîne est réversible pour
π est plus fort : sous la loi π, ce qui part de l’état x pour aller vers l’état y est égal à ce qui part
de l’état y pour aller vers l’état x.
Remarque : réversibilité du temps. Le terme de réversibilité s’explique comme suit : si X0 ∼ π,
alors les équations d’équilibre détaillé permettent d’écrire pour la loi jointe
L(X0 , . . . , Xn ) = L(Xn , . . . , X0 ).
Dit prosaïquement : pour une chaîne réversible à l’équilibre, face à une suite d’états, on ne sait
pas dans quel sens le temps s’écoule. A contrario, considérons la chaîne irréductible de matrice de
transition
0 1 0
P = 0 0 1 , (3.6)
1 0 0
d’unique loi stationnaire π la loi uniforme. Sans même faire de calculs, il est clair que la chaîne
n’est pas réversible pour π puisqu’on voit très bien dans quel sens s’écoule le temps.
Exemple : marche aléatoire sur un graphe. Supposons donné un graphe non orienté de
sommets numérotés de 1 à M et, pour chaque sommet i ∈ {1, . . . , M }, notons di le nombre
d’arêtes connectées à celui-ci. Considérons maintenant la chaîne de Markov suivante : partant du
sommet i, on va vers l’un des dx sommets voisins de façon
P équiprobable. Il est facile de vérifier que
cette chaîne est réversible pour la mesure π = (dx / x′ ∈E d′x )x∈E . Cette marche aléatoire, mais
sur un graphe orienté, est l’un des ingrédients du fameux algorithme PageRank de Google : les
sommets correspondent aux pages web et il y a une arête de la page x vers la page y si, sur la page
x, il y a un lien vers la page y.
Remarque : Si on suppose de plus que la chaîne est irréductible, alors par le Théorème 4, les π(x)
sont tous strictement positifs et la matrice diagonale ∆π telle que ∆π (x, x) = π(x) est inversible.
Cette remarque et la réversibilité assurent alors que
′
∆π P = P ′ ∆π =⇒ ∆π1/2 P ∆π−1/2 = ∆1/2 −1/2
π P ∆π .
1/2 −1/2
La matrice symétrique réelle ∆π P ∆π est donc diagonalisable, par conséquent P aussi, ce qui
implique r = 1 dans le Théorème 4. Ce raisonnement montre aussi que, si P est réversible, son
spectre est réel.
Parmi les chaînes de Markov, les chaînes réversibles constituent donc un cadre d’étude privilégié.
Ce sont elles qui vont nous intéresser dans la suite.
πu (x)
∀x ∈ E π(x) = Cπu (x) = P ′
, (3.7)
x′ ∈E πu (x )
où πu signifie “π unnormalized”. Ce problème est tout sauf artificiel : il est par exemple récurrent
en statistique bayésienne et en physique statistique. Nous supposerons pour simplifier que π(x) > 0
pour tout x ∈ E.
Pour construire cette chaîne, il nous faut spécifier une matrice de transition P ayant π comme loi
stationnaire. A l’instar des méthodes de rejet et d’échantillonnage préférentiel, l’idée est d’utiliser
un mécanisme de proposition auxiliaire (ou instrumental) et de corriger le tir ensuite.
Soit donc Q = [Q(x, y)]x,y∈E une matrice de transition telle que :
— symétrie : pour tout couple (x, y), on a Q(x, y) = Q(y, x) ;
— partant de tout état x, on sait simuler facilement selon la loi Q(x, .).
Comme dans les méthodes précédentes, l’algorithme fonctionne alors en plusieurs étapes :
Concernant le pénible phénomène de périodicité, la preuve va montrer qu’elle est en fait à peu
près exclue ici, si ce n’est dans le cas très particulier où π est uniforme sur E et Q elle-même
périodique : autant dire qu’il faut vraiment le faire exprès. Rappelons surtout que la dynamique
instrumentale définie par Q est choisie par l’utilisateur : il suffit donc de prendre Q irréductible et
apériodique pour que tout se passe bien, c’est-à-dire que le Théorème 4 s’applique.
Preuve. Notons P = [P (x, y)] la matrice de transition de la chaîne (Xn ). On veut montrer que
π(x)P (x, y) = π(y)P (y, x) pour tout couple (x, y). C’est clairement vrai si x = y. Supposons donc
x 6= y , alors par définition de l’algorithme,
d’où
π(y)
π(x)P (x, y) = π(x) min , 1 Q(x, y) = min (π(x), π(y)) Q(x, y).
π(x)
Par symétrie des rôles joués par x et y, on en déduit aussitôt que
Puisque Q(x, y) = Q(y, x), les équations d’équilibre détaillé sont bien vérifiées :
L’irréductibilité de la chaîne (Xn ) se déduit de celle induite par Q : s’il existe un chemin de x
vers y dans le graphe de transition associé à Q, alors ce chemin reste de probabilité non nulle
pour le graphe de transition associé à P . Passons à l’apériodicité : supposons la chaîne (Xn )
non apériodique, alors en particulier P (x, x) = 0 pour tout x, ce qui implique d’une part que
Q(x, x) = 0, d’autre part que π(y) ≥ π(x) pour tout Q-voisin y de x (i.e. tout y tel que Q(x, y) > 0).
Puisque Q est irréductible, ceci implique de proche en proche que tous les π(x) sont égaux à 1/|E|.
Dans cette situation, toutes les propositions sont acceptées, on a donc P = Q et Q est elle-même
périodique.
et X
∀x ∈ E, P (x, x) = 1 − α(x, y)Q(x, y).
y6=x
d’où α(x, y) = 1 pour tout couple (x, y) tel que Q(x, y) 6= 0. Ainsi P = Q et Q serait elle-même
périodique, ce qui est exclu.
π(y)Q(y, x)
α(x, y) = .
π(y)Q(y, x) + π(x)Q(x, y)
Avec ce choix, comme 0 < α(x, y) < 1 pour tout couple (x, y) tel que Q(x, y) > 0, l’apériodicité
de la chaîne (Xn ) est claire puisqu’on peut boucler sur tout état :
X X
P (x, x) = 1 − α(x, x′ )Q(x, x′ ) > 1 − Q(x, x′ ) = Q(x, x) ≥ 0.
x′ 6=x x′ 6=x
Remarque. Tout comme pour la méthode de rejet ou pour l’échantillonnage préférentiel, il existe
un noyau de proposition optimal, mais il est hors d’accès. En effet, il suffit de considérer Q(x, y) =
π(y) pour tout y. La condition Q(x, y) > 0 ssi Q(y, x) > 0 est bien vérifiée puisque π charge tous
les points. De plus, le rapport de Metropolis-Hastings vaut r(x, y) = 1, donc toute proposition de
transition est acceptée. En fait, quelle que soit la loi initiale, la loi de X1 est exactement la loi
cible π.
Exemple. Caricaturalement, prenons E = {1, 2, 3}, avec V (1) = 0, V (2) = 1 et V (3) = −1. On
vérifie facilement les deux comportements extrêmes suivants
1 1 1
µT −−−→ [0, 0, 1] et µT −−−−−→ , , .
T →0 T →+∞ 3 3 3
En particulier, lorsque la température tend vers 0, la mesure de Gibbs se concentre sur le minimum
de V . Ce résultat est général et l’idée sous-jacente est la même que pour la méthode de Laplace
en analyse.
Ainsi, lorsque V atteint son minimum global en un unique point x⋆ , ceci signifie que la mesure de
Gibbs se concentre en x⋆ lorsque la température tend vers 0 (cf. exemple précédent avec x⋆ = 3).
Preuve. Soit V ⋆ le minimum de V , alors pour tout x de E
exp − T1 (V (x) − V⋆ ) exp − T1 (V (x) − V⋆ )
µT (x) = P 1
= P ,
′
x′ ∈E exp − T (V (x ) − V⋆ ) |M⋆ | + x′ ∈E\M⋆ exp − T1 (V (x′ ) − V⋆ )
avec
′ ⋆ 1 ′
∀x ∈ E \ M , exp − (V (x ) − V⋆ ) −−−−→ 0.
T T →0+
c’est-à-dire que la mesure de Gibbs converge vers la loi uniforme sur E à haute température.
Puisqu’à basse température la mesure de Gibbs se concentre sur les minima globaux de V , une
idée consiste à se donner une suite de températures (Tn ) décroissant vers 0 et à simuler une chaîne
(Xn ) qui, à chaque étape n, transite selon un noyau de loi stationnaire µn = µTn . Pour une
matrice de transition Q(x, y) donnée et vérifiant les propriétés requises par Metropolis-Hastings
(irréductibilité et apériodicité), c’est ce que fait l’algorithme suivant, appelé recuit simulé 2 :
3. tirer une loi uniforme U ∼ U[0,1] , indépendante de toutes les autres variables aléatoires,
poser Xn = Y = y si U ≤ rn (x, y), et Xn = Xn−1 = x sinon.
Remarque : Comme pour Metropolis-Hastings, (Xn ) est bien une chaîne de Markov, mais elle
n’est plus homogène en raison des changements constants de températures Tn .
Si les transitions sont symétriques, i.e. Q(x, y) = Q(y, x), on obtient un algorithme de Metropolis
inhomogène avec le rapport
1
rn (x, y) = exp − (V (y) − V (x)) ,
Tn
lequel est supérieur ou égal à 1 dès lors que V (y) ≤ V (x). On accepte donc systématiquement une
transition vers une valeur de V plus basse, mais on ne refuse pas systématiquement une transition
vers une valeur plus élevée, ceci afin d’éviter de rester piégé dans un minimum local de V . On
voit aussi que, à x et y fixés tels que V (y) > V (x), plus la température Tn sera basse, moins on
acceptera de transiter vers une valeur plus élevée. Le schéma de température (Tn ) joue clairement
un rôle critique dans cette histoire. Le résultat suivant fournit une réponse partielle à la question
du réglage de la suite (Tn ).
Hypothèses de la preuve. Cette preuve est tirée du livre de Jean-François Delmas et Benja-
min Jourdain [11]. Comme eux, nous nous contenterons de démontrer ce résultat dans le cas où
Q(x, y) = Q(y, x) (cadre Metropolis) et en supposant Q irréductible et apériodique. Par ailleurs,
la constante c0 apparaissant dans la preuve n’est pas la constante optimale : nous reviendrons sur
ce point ultérieurement.
La preuve fait appel à plusieurs résultats intermédiaires. De façon générale, on dit que Q vérifie
une condition de Doeblin s’il existe a > 0, une loi de probabilité π et ℓ ∈ N⋆ tels que
Dans ce cas, il est clair que a ≥ 1. On commence par noter que si Q est irréductible et apériodique,
le critère (3.4) assure qu’elle vérifie une condition de Doeblin : il suffit en effet de considérer
ℓ = max(x,y) n0 (x, y),
minx Qℓ (x, y) X
π(y) = P ℓ ′
et a = min Qℓ (x′ , y).
y minx′ Q (x , y) y
x′
1X 1X X
kνQℓ − µQℓ kvt = |(νQℓ )(y) − (µQℓ )(y)| = (ν(x) − µ(x))Qℓ (x, y) .
2 2
y∈E y∈E x∈E
1X X
kνQℓ − µQℓ kvt = (ν(x) − µ(x))(Qℓ (x, y) − aπ(y))
2
y∈E x∈E
or X
(Qℓ (x, y) − aπ(y)) = 1 − a,
y∈E
donc
Ainsi Qℓ agit comme une application contractante de rapport 1 − a < 1 sur l’ensemble P(E) des
mesures de probabilité sur E. Notons que, de façon générale, si l’on sait juste que Q est une matrice
de transition, alors on peut seulement dire que
1X X
kνQ − µQkvt ≤ |ν(x) − µ(x)| Q(x, y) = kν − µkvt . (3.13)
2
x∈E y∈E
Comme Q est supposée symétrique, il est clair que δ ≥ 0. C’est la barrière maximale d’énergie
que Q est susceptible de franchir en un coup. Elle intervient dans le résultat suivant, qui quantifie
l’effet contractant du recuit simulé.
Lemme 3 (Effet contractant du schéma de température)
Pour toutes mesures de probabilités µ et ν, on a
δℓ
k(ν − µ)Pn+1 · · · Pn+ℓ kvt ≤ 1 − a e− c log(n+ℓ) kν − µkvt .
si bien que
δ
∀(x, y) ∈ E × E, Pn (x, y) ≥ e− Tn Q(x, y).
Il ne reste plus qu’à itérer cette inégalité et appliquer la condition de Doeblin (3.11) :
1
−δ +···+ T 1 δℓ
Qℓ (x, y) ≥ e− c log(n+ℓ)
Tn+1
(Pn+1 · · · Pn+ℓ )(x, y) ≥ e n+ℓ
aπ(y).
Or ceci n’est rien d’autre qu’une condition de Doeblin pour la matrice de transition
Pn+1 · · · Pn+ℓ
Nous aurons également besoin du résultat suivant pour contrôler la distance entre deux mesures
de Gibbs en fonction de l’écart de température.
Lemme 4 (Distance entre mesures de Gibbs)
Notons ∆(V ) = maxx∈E V (x) − V ⋆ , alors
1 1
∀(T, T ′ ) ∈]0, ∞[2 kµT − µT ′ kvt ≤ − ′ ∆(V ).
T T
Preuve. La mesure de Gibbs est inchangée si on remplace V par V − V⋆ (cf. par exemple la
première égalité de la preuve du Lemme 2), donc on peut supposer sans perte de généralité que
V ≥ 0 et V⋆ = 0, de sorte que ∆(V ) = maxx∈E V (x). Toujours sans perte de généralité, on va
supposer T ≥ T ′ > 0. En remarquant que 0 ≤ 1 − e−x ≤ x pour tout x ≥ 0, il vient
− V T(x) − VT(x) − V T(x) −( T1′ − T1 )V (x) 1 1 − V T(x) 1 1 V (x)
e −e ′ =e 1−e ≤ ′
− V (x)e ≤ ′
− ∆(V )e− T
T T T T
et la sommation sur x donne
X
− V T(x) −
V (x) 1 1
|ZT − ZT ′ | ≤ e −e T′ ≤ ′
− ∆(V )ZT ,
T T
x∈E
Nous avons besoin d’un dernier résultat élémentaire avant de passer à la preuve proprement dite.
Lemme 5 (Convergence de suite) P
Soit (an ), (bn ) deux suites positives telles que 0 < an < 1 pour tout n, n an = ∞, lim bn /an = 0,
et une suite (un ) telle que u0 ≥ 0 et, pour tout n ≥ 0,
un+1 ≤ (1 − an )un + bn ,
Par ailleurs, pour tout ε > 0, il existe n0 = n0 (ε) tel que pour tout n ≥ n0 on ait bn ≤ εan , donc
ou encore (n )
0 +p−1
Y
un0 +p ≤ ε + (1 − ai ) (un0 − ε).
i=n0
Par conséquent
lim sup un = lim sup un0 +p ≤ ε,
n→∞ p→∞
on a la décomposition télescopique
ℓ
X
νn+ℓ − µn+ℓ = (νn − µn )Pn+1 · · · Pn+ℓ + (µn+k−1 − µn+k )Pn+k · · · Pn+ℓ .
k=1
donc
ℓ
X
kνn+ℓ − µn+ℓ kvt ≤ k(νn − µn )Pn+1 · · · Pn+ℓ kvt + kµn+k−1 − µn+k kvt . (3.14)
k=1
kν(j+1)ℓ − µ(j+1)ℓ kvt = kνn+ℓ − µn+ℓ kvt ≤ (1 − aj )kνn − µn kvt + bj = (1 − aj )kνjℓ − µjℓ kvt + bj ,
où l’on a noté
δℓ a′
aj = a e− c log(ℓ(j+1))
= δℓ
,
j c
et
ℓ
∆(V ) X ∆(V ) 1 ∆(V )
bj = (log(jℓ + k) − log(jℓ + k − 1)) = log 1 + ∼ ,
c c j cj
k=1
les équivalents étant considérés lorsque j tend vers l’infini. En posant uj = kνjℓ − µjℓ kvt , on a bien
0 < aj < 1 pour tout j et le Lemme 5 s’applique dès lors que c > c0 := δℓ, i.e.
Ensuite, pour tout p ∈ {1, · · · , ℓ − 1}, on déduit de (3.13), (3.14) et du Lemme 4 que
∆(V ) p
kνjℓ+p − µjℓ+p kvt ≤ kνjℓ − µjℓ kvt + log 1 + −−−→ 0.
c jℓ j→∞
Au total, on a prouvé que, si c > c0 = δℓ,
|P(V (Xn ) > V⋆ ) − µn ({x, V (Xn ) > V⋆ })| ≤ kνn − µn kvt −−−→ 0,
n→∞
f (Znj )
Wnj := PN .
f (Z ℓ)
ℓ=1 n
Pour pouvoir analyser la convergence de cet algorithme vers le ou les maximaux globaux de f , il
convient de faire dépendre p, q et les poids W de l’itération n. Comme pour le recuit simulé, l’idée
est, au fur et à mesure des itérations, de favoriser de moins en moins les mutations (donc p = pn et
q = qn décroissants avec n) et de se concentrer de plus en plus sur les endroits où f est maximale,
par exemple en considérant des poids de la forme
j
f (Zn )
e Tn
Wnj := ,
PN ℓ)
f (Zn
ℓ=1 e
Tn
Le théorème énoncé en [17] est à la fois plus général et plus précis. De plus, à l’instar du résultat de
Hajek mentionné précédemment, il existe en fait une constante optimale D ⋆ , dépendant du graphe
G et de V , telle que pour toute suite (Tn ) décroissant vers 0, le résultat précédent est vérifié si et
seulement si
X∞
D⋆
e− Tn = ∞.
n=1
ou de façon équivalente si, pour toute fonction mesurable bornée (dite fonction test) ϕ : E → R,
on a
E[ϕ(Xn+1 )|X0 , · · · , Xn ] = E[ϕ(Xn+1 )|Xn ] = (P ϕ)(Xn ),
avec, pour tout x ∈ E, Z
(P ϕ)(x) = P (x, dy)ϕ(y).
E
Comme dans le cas discret, on peut montrer que ceci équivaut à l’existence d’une suite de variables
aléatoires (Wn )n≥1 i.i.d. et indépendantes de X0 et d’une fonction h telles que
Exemple : noyau gaussien. Soit E = R et σ 2 > 0 fixé. On appelle noyau de transition gaussien
le noyau défini pour tout couple (x, y) ∈ R2 par
1 (y−x)2
P (x, dy) = p(x, y)dy = √ e− 2σ 2 dy.
2πσ 2
Autrement dit, une chaîne de Markov de noyau de transition P est définie par sa condition initiale
X0 = x (ou plus généralement sa loi initiale µ0 , mesure de probabilité sur R) et, si Xn = x, alors
Xn+1 ∼ N (x, σ 2 ), c’est-à-dire de façon générale
Xn+1 = Xn + σWn+1 ,
où (Wn )n≥1 est une suite de variables i.i.d. gaussiennes standards indépendantes de X0 . Le para-
mètre de réglage σ donne la taille moyenne du pas effectuée à chaque étape : un calcul élémentaire
montre en effet que
r
2
E[|Xn+1 − Xn |] = σE[|Wn+1 |] = σE[|N (0, 1)|] = σ .
π
Notations, définitions et propriétés. Mutatis mutandis, toutes les propriétés classiques vues
dans le cas d’un espace d’états fini passent dans un cadre plus général. En particulier, comme dans
le cas discret, nous conviendrons qu’un noyau de transition agit à gauche sur les mesures et à
droite sur les fonctions. Ainsi, si (Xn ) est une chaîne de Markov de noyau de transition P et si
X0 ∼ µ0 , alors la loi µ1 de X1 est donnée par
Z
µ1 (dy) = (µ0 P )(dy) = µ0 (dx)P (x, dy).
E
de sorte que, si X0 ∼ µ0 ,
ZZ
E[ϕ(X1 ] = µ0 P ϕ = µ0 (dx)P (x, dy)ϕ(y).
E2
On dit que la loi de probabilité π est stationnaire (ou invariante, ou d’équilibre) pour le noyau de
transition P si πP = π, i.e.
Z
∀y ∈ E, π(dy) = π(dx)P (x, dy).
E
On dit que le noyau de transition P est réversible pour la loi de probabilité π si les équations
d’équilibre détaillé sont vérifiées :
Comme dans le cas discret, il est facile de voir que si P est réversible pour π, alors π est stationnaire
pour P .
Exemple : noyau gaussien. Soit le noyau de transition P défini pour tout couple (x, y) ∈ R2
par 2
1 − y− √x2
P (x, dy) = √ e dy.
π
Dit autrement, si (Xn ) est une chaîne de Markov de noyau de transition P , elle admet la repré-
sentation suivante sous forme de récurrence aléatoire :
Xn 1
Xn+1 = √ + √ Wn+1 ,
2 2
où (Wn )n≥1 est une suite de variables i.i.d. gaussiennes standards et indépendantes de X0 . Il est
clair que si X0 ∼ N (0, 1), alors il en va de même pour tout Xn , c’est-à-dire que π = N (0, 1) est
une loi invariante pour cette chaîne. On vérifie en fait sans problème que la chaîne est réversible
pour π.
π(y)q(y, x)
r(x, y) = .
π(x)q(x, y)
3. tirer une loi uniforme Un+1 ∼ U[0,1] , poser Xn+1 = Y = y si Un+1 ≤ r(x, y), et Xn+1 =
Xn = x sinon.
Remarque. En notant α(x, y) = min(1, r(x, y)), la représentation sous forme de récurrence aléa-
toire
Xn+1 = Yn+1 1Un+1 ≤α(Xn ,Yn+1 ) + Xn 1Un+1 >α(Xn ,Yn+1 )
assure que (Xn ) est une chaîne de Markov homogène. Bien que Q soit à densité, ce n’est pas le cas
du noyau de transition P de la chaîne (Xn ) et ceci en raison de la probabilité de rester sur place,
laquelle implique une mesure de Dirac. Plus précisément, on a
Z
′ ′ ′
P (x, dy) = α(x, y)q(x, y)dy + 1 − α(x, x )q(x, x )dx δx (dy). (3.16)
E
En effet, on cherche à déterminer pour toute fonction test ϕ le noyau P tel que
Z
(P ϕ)(Xn ) = E[ϕ(Xn+1 )|Xn ] = ϕ(y)P (Xn , dy).
Par définition de l’algorithme, en notant Yn+1 = Y et Un+1 = U pour alléger les notations, on
peut écrire
(P ϕ)(Xn ) = E[E[ϕ(Xn+1 )|Xn , Y ]|Xn ] = E[E[ϕ(Y )1U≤ α(Xn ,Y ) + ϕ(Xn )1U >α(Xn ,Y ) |Xn , Y ]|Xn ],
Preuve. Les équations d’équilibre détaillé (3.15) étant toujours vérifiées pour x = y, il suffit de
vérifier que
π(dx)P (x, dy) = π(dy)P (y, dx)
pour x 6= y, or dans ce cas tout est simple puisqu’on a des densités :
π(y)q(y, x)
π(dx)P (x, dy) = π(x)α(x, y)q(x, y)dxdy = π(x)q(x, y) min 1, dxdy,
π(x)q(x, y)
π(dx)P (x, dy) = min (π(x)q(x, y), π(y)q(y, x)) dxdy = π(dy)P (y, dx).
Proposition 14
Si π est à support compact S, si π et q sont strictement positives et continues sur ce compact, alors
le noyau de Metropolis-Hastings est uniformément ergodique, c’est-à-dire qu’il existe des constantes
C > 0 et 0 ≤ r < 1 telles que
Bien entendu, l’hypothèse très forte de ce résultat est la compacité du support de la loi cible π.
Par exemple, il ne s’applique pas à l’exemple jouet/caricatural ci-dessus de la simulation d’une
gaussienne standard via un noyau de proposition gaussien... Il existe cependant des résultats plus
fins permettant de traiter le cas où π n’est pas supposée à support compact mais seulement à
queues sous-exponentielles (cf. par exemple le point (ii) de la Proposition 1.3.33 du polycopié
Méthodes de Monte Carlo de Benjamin Jourdain).
1 π(x)
q(y, x) = × .
d π(x−ℓ )
les deux membres valant 0 si y−ℓ 6= x−ℓ . Puisque chaque noyau Qℓ est choisi avec probabilité 1/d,
le noyau P correspondant à l’échantillonneur de Gibbs à balayage aléatoire est
1
P = (Q1 + · · · + Qd ).
d
En d’autres termes, P est un mélange de noyaux de transition. Le noyau P n’est pas à densité :
partant de x, on ne peut aller en y que si x et y ne diffèrent que par une coordonnée. Néanmoins,
puisque les équations d’équilibre détaillé sont vérifiées par chaque noyau Qℓ , c’est encore vrai pour
le noyau P : pour tout couple (x, y),
Cette méthode est appelée échantillonnage de Gibbs par balayage aléatoire car l’indice ℓ est tiré
au hasard à chaque étape. On comprend que ce n’est pas complètement satisfaisant puisque, si la
coordonnée ℓ est tirée deux fois de suite, le second tirage ne sert à rien en terme d’évolution de la
chaîne.
Ce qu’on appelle plus couramment échantillonnage de Gibbs (sous-entendu : à balayage détermi-
niste ou systématique) est la méthode consistant à tirer les d coordonnées successivement :
1. partant de Xn = x,
′ ,x
pour ℓ allant de 1 à d, simuler Xℓ′ selon la loi π(·|X1′ , . . . , Xℓ−1 ℓ+1 , . . . , xd ) ;
2. poser Xn+1 = X ′ = (X1′ , . . . , Xd′ ).
Ainsi, lors d’une étape du Gibbs systématique, i.e. pour le passage de Xn à Xn+1 , toutes les
coordonnées ont été modifiées. A contrario, pour le passage de Xn à Xn+1 dans le Gibbs à balayage
aléatoire, une seule d’entre elles a changé.
Lemme 8 (Echantillonneur de Gibbs)
L’échantillonneur de Gibbs (sous-entendu : à balayage systématique) admet π comme loi invariante.
Preuve. Notons R(x, dy) le noyau de transition de l’échantillonneur de Gibbs à balayage systé-
matique. Il revient à composer les noyaux de transition Qℓ introduits ci-dessus, i.e. R = Q1 . . . Qd .
On veut montrer que πR = π, or on a vu que πQℓ = π pour tout ℓ, donc le résultat est clair.
Remarques :
1. C’est bien entendu cette version de l’échantillonneur de Gibbs qui est utilisée en pratique,
non celle à balayage aléatoire.
2. Si π a une densité, alors le noyau R de l’échantillonneur de Gibbs (sous-entendu : à balayage
systématique) est à densité : pour tout couple (x, y) ∈ Rd × Rd , celle-ci vaut
3. Contrairement au cas du balayage aléatoire, la chaîne (Xn ) n’est en général pas π-réversible.
En dimension 2, il faudrait en effet que pour tous couples (x1 , x2 ) et (y1 , y2 ),
π(x1 , x2 )π(y1 |x2 )π(y2 |y1 ) = π(y1 , y2 )π(x1 |y2 )π(x2 |x1 ),
ou encore
π(y1 |x2 )π(y2 ) = π(y1 )π(y2 |x1 ).
Cette relation est vérifiée si les composantes de π sont indépendantes, mais n’a aucune
raison de l’être en général. Il suffit en effet de voir que le membre de gauche dépend de x2 ,
contrairement à celui de droite.
4. Comme le montre l’Exercice 3.12, il ne faut surtout pas remettre toutes les coordonnées à
jour simultanément, sans quoi on risque de ne plus converger vers la loi cible !
3.5 Exercices
Exercice 3.1 (Modèle de diffusion d’Ehrenfest)
On considère deux urnes A et B, contenant M boules à elles deux, numérotées de 1 à M . A chaque
instant, on choisit un numéro j ∈ {1, . . . , M } de façon équiprobable et on change d’urne à la boule
numéro j. L’état Xn de la chaîne est le nombre de boules à l’instant n dans l’urne A.
1. Donner le graphe de transition de la chaîne (Xn ).
2. Cette chaîne est-elle irréductible ? apériodique ?
3. Montrer que (Xn ) admet pour loi stationnaire π une loi binomiale dont on précisera les
paramètres.
4. En fixant par exemple M = 10, retrouver π par simulation grâce à une seule réalisation
(très longue) de la chaîne. En d’autres termes, illustrer la loi des grands nombres du cours.
5. Toujours pour M = 10, retrouver π grâce à plusieurs réalisations de la chaîne. En d’autres
termes, illustrer la convergence en loi du cours.
6. Supposons M grand. Approcher la loi π par une loi normale dont on précisera les paramètres.
En déduire un intervalle [m1 , m2 ] tel qu’asymptotiquement, la chaîne passe 95% de son
temps entre ces deux valeurs.
7. Vérifier ce résultat par simulation.
2 3 4 5
1 6
D
B
0 9 8 7
2. Un jeu du genre Monopoly a dix cases (voir figure 3.2 à droite). On part de la case 0 et on
lance un dé équilibré à six faces pour avancer le pion. Xn est la position du pion après le
n-ème lancer.
(a) Déterminer la matrice de transition de la chaîne de Markov (Xn ).
(b) La chaîne est-elle irréductible ? apériodique ?
(c) Déterminer la (ou les) loi(s) stationnaire(s).
2/3 0 1/3 0
(a) Vérifier la loi des grands nombres.
(b) Que dire de la convergence en loi ?
7. Tirer “au hasard” une matrice de transition P à l’aide de la fonction runif. Vérifier que
la loi des grands nombres et la convergence en loi permettent de trouver un même vecteur
probabilité ligne π. Retrouver cette loi d’équilibre grâce à la fonction eigen et en utilisant
1. Sur [−5, 5] × [−5, 5], donner une représentation 3d de f (par exemple par persp(u,v,z))
et une représentation 2d par lignes de niveau de f (par exemple par image(u,v,z)).
2. On veut simuler selon la densité g en utilisant l’algorithme de Metropolis-Hastings. Partant
de x = (u, v), on considère le noyau de transition q(x, x′ ) qui correspond à la densité de
X ′ = x + σW , où σ > 0 est un paramètre de réglage et W ∼ N ([0, 0]′ , I2 ), loi gaussienne
centrée réduite dans R2 . Expliquer pourquoi q(x, x′ ) = q(x′ , x), c’est-à-dire qu’on est dans
le cadre de l’algorithme de Metropolis.
3. Implémenter l’algorithme de Metropolis. On utilisera le noyau de transition q(x, x′ ) ci-dessus
avec σ = 1. On pourra par exemple prendre comme initialisation X1 = (0, 0) et considérer
une chaîne (Xk )1≤k≤n de longueur n = 104 .
4. Sur le graphe de f par lignes de niveau (via image(u,v,z)), superposer les points de la
chaîne par exemple par la commande points(X,pch=3,cex=.1). Faire la même chose avec
σ grand, par exemple σ = 10, et commenter. Idem avec σ petit, par exemple σ = 0.1.
5. Proposer une méthode de rejet pour simuler suivant g à partir d’une loi instrumentale gaus-
sienne. Comme en question précédente, superposer un échantillon de grande taille simulé par
cette méthode aux niveaux de la fonction f pour vérifier visuellement le bon fonctionnement
de l’algorithme.
6. Des deux méthodes, laquelle vous semble préférable ?
3. Sur une même figure, pour x variant entre -1 et 1, représenter à gauche x 7→ exp(−V (x)/T )
pour T = 10, et à droite pour T = 0.1.
4. On note U une loi uniforme sur [−1/2, 1/2]. Partant d’un point x, on considère le noyau de
transition q(x, y) qui correspond à la densité de Y = x + U . Déterminer q(x, y). En déduire
q(y, x) et le rapport de Metropolis-Hastings r(x, y) pour une température T > 0 fixée.
5. Implémenter l’algorithme du recuit simulé pour le noyau de transition q et le schéma de
température Tk = 1/(1 + log k) pour k allant de 1 à n = 1000. On pourra prendre comme
initialisation X1 ∼ U[−10,10] . On donnera en sortie la valeur V (Xn ) ainsi que le minimum
observé sur toutes les valeurs V (Xk ) pour k ∈ {1, . . . , n}.
N
X
Dσ = d(Mσ(ℓ) , Mσ(ℓ+1) ),
ℓ=1
avec la convention σ(N + 1) = σ(1). Dans ce qui précède, on avait donc σ = (1, 2, . . . , N −
1, N ). Reformuler le problème d’optimisation avec ces notations.
′
5. La permutation σ étant donnée, on note σ ℓ,ℓ la permutation consistant à inverser l’ordre
de visite des villes ℓ et ℓ′ , autrement dit :
′
σ = (σ(1), . . . , σ(ℓ), . . . , σ(ℓ′ ), . . . , σ(N )) =⇒ σ ℓ,ℓ = (σ(1), . . . , σ(ℓ′ ), . . . , σ(ℓ), . . . , σ(N )).
′
Partant de σ, comment tirer uniformément parmi les σ ℓ,ℓ ?
′
6. Implémenter l’algorithme de Metropolis correspondant aux transitions Q(σ, σ ℓ,ℓ ) ci-dessus
et de loi stationnaire proportionnelle à exp(−Dσ ) sur l’espace d’états SN .
7. Déterminer le meilleur trajet obtenu par cette méthode et le représenter.
8. On adopte la technique du recuit simulé : par rapport à ce qui précède, il suffit donc de tenir
compte de la température Tn à chaque étape. Pour comparer les schémas de température,
on utilisera la fonction set.seed (permettant de fixer en début de simulation la graine
du générateur aléatoire) et on comparera les performances sur un nombre représentatif de
simulations, par exemple une centaine. Le nombre N de villes ne devra pas être pris trop
grand, contrairement à la longueur n de la chaîne...
(a) Implémenter le recuit simulé avec un schéma de température en Tn = 1/ log n. Comparer
à ce qui était obtenu avec la température fixe T = 1 de la question 7.
(b) Même question avec un schéma de température à décroissance polynomiale, c’est-à-dire
de type Tn = n−γ , pour plusieurs valeurs de γ.
Autrement dit, dans la somme définissant V interviennent toutes les paires de sites voisins dans le
carré C.
1. Quelles sont les configurations minimisant l’énergie ?
où α et β sont deux constantes positives. Dans la seconde somme définissant V interviennent donc
toutes les paires de sites voisins dans le carré C.
1. Si α > 0 et β = 0, quelle(s) configuration(s) minimise(nt) V ? Même question si α = 0 et
β > 0.
2. On suppose dans toute la suite que α et β sont tous deux strictement positifs fixés et
permettent d’effectuer un compromis entre deux contraintes : l’attache à l’image initiale Σ et
l’obtention de contours nets (élimination du bruit). On veut alors minimiser V , en supposant
ce minimum atteint pour une unique configuration S ⋆ = (Sij ⋆)
1≤i,j≤N . On introduit pour
cela un paramètre de température T > 0 et on associe à V la mesure de Gibbs
1 1
µT (S) = exp − V (S) ,
ZT T
où ZT est la constante de normalisation. Que dire de cette mesure de probabilité dans les
deux situations extrêmes où T → 0 et où T → +∞ ?
3. Soit T > 0 fixé. Comme dans le modèle d’Ising, on applique la méthode de Metropolis-
Hastings pour simuler suivant µT . Pour cela, partant d’une configuration S = (Sij )1≤i,j≤N ,
on commence par tirer un site (i0 , j0 ) au hasard (uniforme) et on propose de changer Si0 j0
en −Si0 j0 . On note S (i0 ,j0 ) cette nouvelle configuration où seul un pixel a changé. Que vaut
Q(S, S (i0 ,j0 ) ) ? Et Q(S (i0 ,j0 ) , S) ? Expliciter le rapport de Metropolis-Hastings r(S, S (i0 ,j0) ).
On adopte la convention selon laquelle le carré C est entouré de 0, ainsi tout site (i, j)1≤i,j≤N a
exactement 4 voisins. A une température T > 0, on associe la mesure de Gibbs
1 1
µT (x) = exp − V (x) ,
ZT T
3.6 Corrigés
Voir la page du cours.
[1] Søren Asmussen and Peter W. Glynn. Stochastic simulation : algorithms and analysis, vo-
lume 57 of Stochastic Modelling and Applied Probability. Springer, New York, 2007.
[2] Thierry Bodineau. Modélisation de phénomènes aléatoires. Format électronique, 2015.
[3] Raphaël Cerf. The dynamics of mutation-selection algorithms with large population sizes.
Ann. Inst. H. Poincaré Probab. Statist., 32(4) :455–508, 1996.
[4] Raphaël Cerf. A new genetic algorithm. Ann. Appl. Probab., 6(3) :778–817, 1996.
[5] Raphaël Cerf. Asymptotic convergence of genetic algorithms. Adv. in Appl. Probab.,
30(2) :521–550, 1998.
[6] Thomas M. Cover and Joy A. Thomas. Elements of information theory. John Wiley & Sons
Inc., 1991.
[7] Bernard Delyon. Simulation et Modélisation. Format électronique, 2014.
[8] Luc Devroye. Nonuniform random variate generation. Springer-Verlag, New York, 1986.
[9] Marie Duflo. Algorithmes stochastiques. Springer, 1996.
[10] Rick Durrett. Essentials of Stochastic Processes. Springer Texts in Statistics. Springer-Verlag,
New York, 1999.
[11] Jean-François Delmas et Benjamin Jourdain. Modèles aléatoires. Springer, 2006.
[12] Pierre Del Moral et Christelle Vergé. Modèles et méthodes stochastiques. Springer, 2014.
[13] Bernard Bercu et Djalil Chafaï. Modélisation stochastique et simulation. Dunod, 2007.
[14] Michel Benaïm et Nicole El Karoui. Promenade aléatoire. Editions de l’Ecole Polytechnique,
2004.
[15] Jean Jacod et Philip Protter. L’essentiel en théorie des probabilités. Cassini, 2003.
[16] Nathalie Bartoli et Pierre Del Moral. Simulation et algorithmes stochastiques. Cépaduès-
Editions, 2001.
[17] Olivier François. Global optimization with exploration/selection algorithms and simulated
annealing. Ann. Appl. Probab., 12(1) :248–271, 2002.
[18] Emmanuel Gobet. Méthodes de Monte-Carlo et processus stochastiques : du linéaire au non-
linéaire. Editions de l’Ecole Polytechnique, 2013.
[19] Bruce Hajek. Cooling schedules for optimal annealing. Math. Oper. Res., 13(2) :311–329,
1988.
[20] W. K. Hastings. Monte Carlo sampling methods using Markov chains and their applications.
Biometrika, 57(1) :97–109, April 1970.
[21] Benjamin Jourdain. Méthodes de Monte Carlo. Format électronique, 2021.
[22] David A. Levin, Yuval Peres, and Elizabeth L. Wilmer. Markov chains and mixing times.
Format électronique, 2009.
83
[23] Makoto Matsumoto and Takuji Nishimura. Mersenne twister : A 623-dimensionally equidis-
tributed uniform pseudo-random number generator. ACM Trans. Model. Comput. Simul.,
8(1) :3–30, January 1998.
[24] Alexander J. McNeil, Rüdiger Frey, and Paul Embrechts. Quantitative risk management.
Princeton Series in Finance. Princeton University Press, Princeton, NJ, 2005. Concepts,
techniques and tools.
[25] N. Metropolis, A. W. Rosenbluth, M. N. Rosenbluth, A. H. Teller, and E. Teller. Equation of
state calculations by fast computing machines. The Journal of Chemical Physics, 21(6) :1087–
1092, 1953.
[26] Roger B. Nelsen. An introduction to copulas. Springer Series in Statistics. Springer, New
York, second edition, 2006.
[27] Harald Niederreiter. Random number generation and quasi-Monte Carlo methods. Society for
Industrial and Applied Mathematics (SIAM), Philadelphia, PA, 1992.
[28] James R. Norris. Markov Chains. Cambridge University Press, 1997.
[29] Christian P. Robert and George Casella. Monte Carlo statistical methods. Springer Texts in
Statistics. Springer-Verlag, New York, second edition, 2004.
[30] Christian P. Robert and George Casella. Introducing Monte Carlo methods with R. Use R !
Springer, New York, 2010.
[31] Sheldon M. Ross. Simulation. Statistical Modeling and Decision Science. Academic Press,
Inc., San Diego, CA, second edition, 1997.
[32] Justin Salez. Temps de mélange des chaînes de Markov. Format électronique, 2021.
[33] Luke Tierney. Markov chains for exploring posterior distributions. Ann. Statist., 22(4) :1701–
1762, 1994. With discussion and a rejoinder by the author.
[34] Bruno Tuffin. La simulation de Monte Carlo. Hermes Science Publications, 2010.
[35] Bernard Ycart. Modèles et algorithmes markoviens. Springer-Verlag, Berlin, 2002.