Méthode de Monte Carlo.

Transcription

Méthode de Monte Carlo.
M ÉTHODE DE M ONTE C ARLO .
Alexandre Popier
Université du Maine, Le Mans
A. Popier (Le Mans)
Méthode de Monte Carlo.
1 / 95
P LAN DU COURS
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
2 / 95
B UT : CALCUL D ’ ESPÉRANCE .
Soient X une v.a.r. et f : R → R une fonction.
B UT
Calculer numériquement E(f (X )).
E XEMPLES
F INANCE : prix d’une option d’achat
I
modèle de Cox-Ross-Rubinstein :

!+ 
N
Y
1
.
E  S0
Ti − K
C=
(1 + r )N
i=1
I
P(Ti = 1 + u) = p = 1 − P(Ti = 1 + d) où p = (u − r )/(u − d).
modèle de Black-Scholes :
+ −rT
(r −σ 2 /2)T +σWT
C = e E S0 e
−K
avec WT ∼ N (0, T ).
A. Popier (Le Mans)
Méthode de Monte Carlo.
3 / 95
B UT : CALCUL D ’ ESPÉRANCE .
Soient X une v.a.r. et f : R → R une fonction.
B UT
Calculer numériquement E(f (X )).
E XEMPLES
F INANCE : prix d’une option d’achat
A SSURANCE : calcul de la prime
I
I
I
Prime pure : E(X ),
Prime exponentielle : 1c ln E(ecX ),
Prime quantile : FX−1 (1 − ε),
C ALCUL DE PERTE ou Value At Risk en finance : P(X < seuil).
etc.
A. Popier (Le Mans)
Méthode de Monte Carlo.
3 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
4 / 95
L OI DES GRANDS NOMBRES .
T HÉORÈME
Soit (Yi )i∈N une suite de variables aléatoires.
H YPOTHÈSES
indépendance
distribution identique (comme une v.a. Y )
E(|Y |) < +∞.
Alors presque sûrement :
lim Yn = lim
n→+∞
n→+∞
1
(Y1 + . . . + Yn ) = E(Y ).
n
Autrement dit, pour n assez grand
n
1X
Yi ≈ E(Y ).
n
i=1
A. Popier (Le Mans)
Méthode de Monte Carlo.
5 / 95
M ÉTHODE DE M ONTE C ARLO .
M ÉTHODE
Pour calculer µ = E(f (X )),
simuler N v.a. (Xn )1≤n≤N i.i.d. de même loi que X ,
poser :
N
1X
f (X1 ) + . . . + f (XN )
µ̂N =
f (Xi ) =
.
N
N
i=1
Loi des grands nombres : µ̂N ≈ µ pour N grand.
P ROBLÈME : quelle est l’erreur commise ?
A. Popier (Le Mans)
Méthode de Monte Carlo.
6 / 95
L OI EXPONENTIELLE (2) ( ESPÉRANCE 1/2)
A. Popier (Le Mans)
Méthode de Monte Carlo.
7 / 95
L OI DE PARETO (0,5) PAS D ’ ESPÉRANCE
A. Popier (Le Mans)
Méthode de Monte Carlo.
8 / 95
T HÉORÈME CENTRAL LIMITE .
T HÉORÈME
Soit (Yi )i∈N une suite de v.a.
H YPOTHÈSES
indépendance
distribution identique (comme une v.a. Y )
E(|Y |2 ) < +∞.
Alors Yn ∼
= N (0, 1) : pour tout a < b
√ Yn − µ
lim P a < n
<b
n→+∞
σ
A. Popier (Le Mans)
!
= P(a < Z < b), Z ∼ N (0, 1).
Méthode de Monte Carlo.
9 / 95
I NTERVALLE DE CONFIANCE .
TCL : µ = E(Y1 ), Y n = n1 (Y1 + . . . + Yn )
!
√ Yn − µ
σ
σ
≤a
P Yn − a√ ≤ µ ≤ Yn + a√
= P −a ≤ n
σ
n
n
≈ P(|Z | ≤ a),
où σ 2 = Var(f (X )).
Pour un niveau de confiance α ∈ [0, 1] fixé, il existe cα > 0 tel que
P(|Z | ≤ cα ) = α.
Donc avec a = cα , pour n grand
P (µ ∈ Iα,n ) ≈ P(|Z | ≤ cα ) = α
avec
Iα,n
σ
σ
: intervalle de confiance.
= Y n − cα √ , Y n + cα √
n
n
A. Popier (Le Mans)
Méthode de Monte Carlo.
10 / 95
M ÉTHODE DE M ONTE C ARLO : ERREUR .
M ÉTHODE
Simuler N v.a. (Xn )1≤n≤N i.i.d. de même loi que X .
Poser :
N
f (X1 ) + . . . + f (XN )
1X
f (Xi ) =
.
µ̂N =
N
N
i=1
Erreur donnée par un intervalle de confiance :
P µ ∈ Iα,N ≈ α
avec
Iα,N
σ
σ
√
√
= µ̂N − cα
, µ̂N + cα
,
N
N
σ 2 = Var (f (x)).
Problème : on ne connaît pas en général la variance σ 2 .
A. Popier (Le Mans)
Méthode de Monte Carlo.
11 / 95
E STIMATION DE LA VARIANCE .
n
1 X
(Yi − Y n )2 . On peut
n−1
On estime σ 2 grâce à l’estimateur Sn2 =
i=1
montrer que
ESn2 = σ 2 = Var(Y ) et
lim Sn2 = σ 2 .
n→+∞
M ÉTHODE
Simuler N v.a. (Xn )1≤n≤N i.i.d. de même loi que X .
Poser :
v
u
u
σ̂N = t
N
1 X
(f (Xi ) − µ̂N )2 .
N −1
i=1
A. Popier (Le Mans)
Méthode de Monte Carlo.
12 / 95
M ÉTHODE DE M ONTE C ARLO COMPLÈTE .
M ÉTHODE
1
Simuler N v.a. (Xn )1≤n≤N i.i.d. de même loi que X .
2
Poser :
N
1X
f (X1 ) + . . . + f (XN )
f (Xi ) =
,
N
N
i=1
v
u
N
u 1 X
t
σ̂N =
(f (Xi ) − µ̂N )2 .
N −1
µ̂N =
i=1
3
Erreur donnée par intervalle de confiance avec niveau de
confiance α
σ̂N
σ̂N
Iα,N = µ̂N − cα √ , µ̂N + cα √
.
N
N
A. Popier (Le Mans)
Méthode de Monte Carlo.
13 / 95
L OI EXPONENTIELLE (2) ( ESPÉRANCE 1/2)
A. Popier (Le Mans)
Méthode de Monte Carlo.
14 / 95
√
L OI EXPONENTIELLE (2) ( DÉCROISSANCE EN 1/ N )
A. Popier (Le Mans)
Méthode de Monte Carlo.
15 / 95
PARETO (1,5) ( ESPÉRANCE 3, PAS DE VARIANCE )
A. Popier (Le Mans)
Méthode de Monte Carlo.
16 / 95
PARETO (1,5) ( TAILLE INTERVALLE CONFIANCE )
A. Popier (Le Mans)
Méthode de Monte Carlo.
17 / 95
M ÉTHODE DE M ONTE C ARLO : REMARQUES .
O BLIGATOIRE
Donner µ̂N sans intervalle de confiance n’a aucune valeur !
E RREUR
Pour diminuer la taille de IC,
diminuer le niveau de confiance α,
augmenter N,
diminuer σ (−→ réduction de variance).
AVANT :
S IMULATION
Que signifie « Simuler N v.a. (Xn )1≤n≤N i.i.d. de même loi que X » ?
A. Popier (Le Mans)
Méthode de Monte Carlo.
18 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
19 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
20 / 95
T HÉORÈME FONDAMENTAL DE LA SIMULATION .
T HÉORÈME
Toute variable aléatoire X à valeurs dans Rd peut être simulée sous la
forme
X = f (U1 , U2 , . . . , Un )
en loi
où
(U1 , U2 , . . . , Un ) est uniformément répartie sur [0, 1]n ,
la fonction f : Rn → Rd est borélienne et a ses points de
discontinuité dans un ensemble Lebesgue-négligeable.
Il est même possible de réaliser ceci en imposant n = 1 ou n = d ou
encore n ≥ 1 donné.
R EMARQUE : f est « explicite ».
A. Popier (Le Mans)
Méthode de Monte Carlo.
21 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
22 / 95
S UITES ALÉATOIRES .
Considérons une suite finie x := x1 , . . . , xn ∈ {0, 1}. Toutes les suites
finies de ce type sont équiprobables et de probabilité 2−n .
Certaines suites moins aléatoires que d’autres
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1
1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0
Quel sens donner et comment quantifier le caractère aléatoire
d’une suite finie ou infinie donnée ?
Comment produire des suites finies qui sont de « bonnes »
approximations finies des suites infinies probables correspondant
à des réalisations i.i.d. d’une loi donnée ? Comment mesurer la
qualité de ces algorithmes ?
A. Popier (Le Mans)
Méthode de Monte Carlo.
23 / 95
S UITES ALÉATOIRES .
D.H. Lehmer (1951) :
A random sequence is a vague notion... in which each term is
unpredictable to the uninitiated and whose digits pass a certain
number of tests traditional with statisticians...
A. Popier (Le Mans)
Méthode de Monte Carlo.
23 / 95
N OMBRES PSEUDO - ALÉATOIRES .
Simuler la loi uniforme consistera à produire par un algorithme des
suites finies de nombres que nous pouvons considérer comme autant
de réalisations indépendantes de variables aléatoires uniformes sur
[0, 1].
Mathématiquement les n sorties successives d’un tel générateur
seront considérées comme la donnée de U1 (ω), . . . , Un (ω) pour un
ω ∈ Ω où les Ui sont des v.a.r. Ui : (Ω, F, P) → [0, 1] de loi uniforme.
Matlab permet de simuler la loi uniforme via la fonction rand, qui
renvoie un nombre « aléatoire » compris entre [0, 1].
A. Popier (Le Mans)
Méthode de Monte Carlo.
24 / 95
N OMBRES PSEUDO - ALÉATOIRES .
Intéressons nous au nombre
0, 950129285147175.
C’est par défaut le premier nombre produit par la fonction rand de
Matlab.
Pour cela redémarrer Matlab, et exécuter les commandes
format l o n g
rand
Si tous les utilisateurs de Matlab trouvent toujours ce même nombre il
ne peut être qualifié d’aléatoire. D’ailleurs il ne l’est pas.
A. Popier (Le Mans)
Méthode de Monte Carlo.
25 / 95
N OMBRES PSEUDO - ALÉATOIRES .
À ce stade il est important de faire la distinction entre deux types de
méthodes de génération de suites « aléatoires ».
Méthodes prédictibles : ce sont des méthodes déterministes
basées entièrement sur des algorithmes bien établis qui
nécessitent d’être initialisés. On parlera de suites ou nombres
pseudo-aléatoires.
Méthodes non-prédictibles : surtout utiles en cryptographie, où il
est capital que le hasard utilisé ne soit pas prédictible ni
reproductible. Elles peuvent être obtenues à partir des premières
en utilisant des « fonctions de hachage », difficilement inversibles
en terme de temps de calcul.
A. Popier (Le Mans)
Méthode de Monte Carlo.
26 / 95
A LGORITHMES PAR CONGRUENCE (L EHMER , 1950).
utilisent trois paramètres entiers a, c et m et une valeur initiale x0 ,
appelé seed ;
créent une suite d’entiers yn+1 = ayn + c mod m compris entre 0
et m ;
ramènent les valeurs entre 0 et 1 : xn = yn /m.
Exemple : a = 13, c = 0, m = 31 et x0 = 1. Suite des yn :
1
13
14
27
10
6
16
22
7
29
5
3...
Celle des xn :
0.0323, 0.4194, 0.4516, 0.8710, 0.3226, 0.1935, 0.5161, . . .
A. Popier (Le Mans)
Méthode de Monte Carlo.
27 / 95
A LGORITHMES PAR CONGRUENCE (L EHMER , 1950).
Dans les années 60, sur IBM, Scientific Subroutine Package (SSP) :
a = 65539, c = 0, et m = 231 .
Comme le codage se fait en 32-bits, l’arithmétique modulo 231 se
fait très rapidement.
a = 216 + 3 : multiplication par a = shift + addition.
Problème : yk +2 = 6yk +1 − 9yk : très forte corrélation.
cf. graphique randssp
A. Popier (Le Mans)
Méthode de Monte Carlo.
27 / 95
A LGORITHMES PAR CONGRUENCE (L EHMER , 1950).
À partir de Matlab 4, on a choisi : a = 75 = 16807, c = 0,
m = 231 − 1 = 2147483647.
Toujours disponible via
I
I
s=rand(’seed’) : fournit le paramètre x0 de cette méthode.
rand(’seed’,s) : impose à Matlab d’utiliser cet algorithme avec
x0 = s.
Périodicité grande : m − 1.
Génére toutes les valeurs k /m avec k = 1, . . . , m, i.e.
[0, 1] ≈ Dr = {k /m, 1 ≤ k ≤ m}
⊂ [0.00000000046566, 0.99999999953434].
cf. graphique randmcg
A. Popier (Le Mans)
Méthode de Monte Carlo.
27 / 95
A LGORITHME PAR DÉFAUT.
À partir de la version 5 (1995),
Du à G. Marsaglia.
N’utilise plus les algorithmes à la Lehmer, plus de multiplication,
plus de division.
Génère directement des nombres décimaux.
Disponible via
I
I
s=rand(’state’) : fournit le paramètre x0 de cette méthode
(vecteur de dimension 35).
rand(’state’,s) : impose à Matlab d’utiliser cet algorithme
avec x0 = s.
Peut générer tous les nombres (flottants) entre 2−53 et 1 − 2−53
(on ne connaît pas de nombre non atteint).
Période proche de 21492 .
A. Popier (Le Mans)
Méthode de Monte Carlo.
28 / 95
A LGORITHME « M ERSENNE T WISTER ».
Troisième algorithme implémenté sous Matlab (version 5 et plus).
Disponible via
I
I
s=rand(’twister’) : fournit le paramètre x0 de cette méthode
(vecteur de dimension 625).
rand(’twister’,s) : impose à Matlab d’utiliser cet algorithme
avec x0 = s.
Période de l’ordre de (219937 − 1)/2.
A. Popier (Le Mans)
Méthode de Monte Carlo.
29 / 95
I MPORTANCE DE LA RACINE .
R EMARQUE
Connaître la valeur de la racine avant de lancer un programme peut
être important ! Notamment pour pouvoir :
comparer des vitesses de calcul ;
générer des variables aléatoires couplées.
Pour éviter d’avoir toujours le même nombre de départ :
rand ( ’ s t a t e ’ ,sum(100∗ clock ) )
rand
A. Popier (Le Mans)
Méthode de Monte Carlo.
30 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
31 / 95
F ONCTION DE RÉPARTITION .
D ÉFINITION
La fonction de répartition de X , notée FX , est définie sur R par :
∀x ∈ R, FX (x) = P(X ≤ x).
P ROPOSITION
Soit FX la fonction de répartition d’une v.a.r. X . Alors :
1
FX (x) ∈ [0, 1].
2
FX est croissante.
3
lim FX (x) = 0 et lim FX (x) = 1.
x→−∞
4
x→+∞
FX est continue à droite et a une limite à gauche en tout point.
A. Popier (Le Mans)
Méthode de Monte Carlo.
32 / 95
V. A . À DENSITÉ .
D ÉFINITION
Une v.a. X est à densité (par rapport à la mesure de Lebesgue) s’il
existe f t.q.
pour tout x ∈ R, f (x) ≥ 0 ;
Z +∞
f (x) dx = 1 ;
−∞
et pour tout −∞ ≤ a < b ≤ +∞, P(a < X ≤ b) =
Rb
a
f (t)dt.
E XEMPLE : LOI UNIFORME SUR [a, b]
X suit une loi uniforme sur [a, b] si sa densité f est
f (x) =
A. Popier (Le Mans)
1
1
(x).
b − a [a,b]
Méthode de Monte Carlo.
33 / 95
V. A . À DENSITÉ .
P ROPOSITION
Si X a pour densité f , alors
∀x ∈ R, FX (x) = P(X ≤ x) =
Rx
−∞ f (t)dt.
FX est continue.
FX est dérivable aux points de continuité de f avec fX (x) = FX0 (x).
E XEMPLE : LOI UNIFORME SUR [a, b]
Si X suit la loi uniforme sur [a, b], alors
FX (x) = 0 si x ≤ a,
x −a
FX (x) =
si x ∈ [a, b],
b−a
FX (x) = 1 pour x ≥ b.
A. Popier (Le Mans)
Méthode de Monte Carlo.
33 / 95
V. A . DISCRÈTES .
D ÉFINITION
Une v.a. X est discrète si elle ne prend qu’un nombre fini (ou
dénombrable) de valeurs {xi ∈ R, i ∈ N} avec probabilité
+∞
+∞
X
X
pi = 1.
P(X = xi ) =
pi = P(X = xi ) ≥ 0. De plus
i=0
i=0
R EPRÉSENTATION en tableau
X
x0
x1
x2
x3 . . . (valeurs prises parX)
P(X = xi ) p0 p1 p2 p3 . . . (probabilité)
P ROPOSITION
Si X est une v.a. discrète, FX est constante par morceaux.
A. Popier (Le Mans)
Méthode de Monte Carlo.
34 / 95
E XEMPLE : DÉ À SIX FACES .
F ONCTION DE RÉPARTITION d’une v.a. de loi uniforme sur {1, . . . , 6}
A. Popier (Le Mans)
Méthode de Monte Carlo.
35 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
36 / 95
M ÉTHODE D ’ INVERSION .
Si X est une v.a.r. alors la fonction de répartition FX est définie par
∀x ∈ R, FX (x) = P(X ≤ x).
Comme FX est croissante, on peut définir la fonction pseudo-inverse
qX de FX ainsi :
∀u ∈ (0, 1), qX (u) = inf{x ∈ R, FX (x) > u}.
T HÉORÈME
Si U suit une loi uniforme sur [0, 1], qX (U) suit la même loi que X .
P ROPOSITION
Si F est inversible, alors q = F −1 .
A. Popier (Le Mans)
Méthode de Monte Carlo.
37 / 95
E XEMPLES .
Si U suit une loi uniforme sur [0, 1], alors
L OI UNIFORME SUR [a, b]
X = a + (b − a)U suit la loi uniforme sur [a, b].
L OI EXPONENTIELLE
1
X = − ln(1 − U) suit la loi exponentielle de paramètre λ.
λ
L OI DE C AUCHY
X = c tan(π(U − 1/2)) suit la loi de Cauchy de paramètre c.
L OI DE B ERNOULLI
Si U < 1 − p, X = 0, sinon X = 1 : suit la loi de Bernoulli de paramètre
p ∈ [0, 1].
A. Popier (Le Mans)
Méthode de Monte Carlo.
38 / 95
L OI DISCRÈTE À SUPPORT FINI .
function r e a l i s = r d i s t ( x , p )
n=length ( p ) ;
r = rand ; a = 0 ; b = p ( 1 ) ;
f o r i = 1 : n−1,
i f ( ( r >=a ) & ( r <b ) )
realis = x( i );
return ;
end
a = b ; b = b + p( i +1);
end
realis = x(n );
A. Popier (Le Mans)
Méthode de Monte Carlo.
39 / 95
L OI UNIFORME .
function r e a l i s = r a n d d i s c r ( x , n ,m)
%Renvoie des realisations iid
%de loi uniforme sur x(1),...,x(length(x)).
%n et m sont des entiers optionnels, valant 1 par defaut.
i f ( nargin ==0)
e r r o r ( ’ Pas assez de parametres ’ ) ;
e l s e i f ( nargin ==1)
n =1;m=1;
e l s e i f ( nargin ==2)
m=1;
e l s e i f ( nargin >3)
e r r o r ( ’ Trop de parametres ’ ) ;
end ;
r e a l i s = reshape ( x ( c e i l ( length ( x ) ∗ rand ( n ,m) ) ) , n ,m) ;
return ;
A. Popier (Le Mans)
Méthode de Monte Carlo.
40 / 95
I NVERSION : DIMENSION QUELCONQUE .
Soit une v.a. X = (X1 , X2 ) de loi connue PX sur R2 avec densité f > 0.
Fonction de répartition de X1 :
Z x1 Z
FX1 (x1 ) =
f (x, y )dxdy .
−∞
R
Soit q1 son inverse.
Fonction de répartition FXX21 =x1 de la loi conditionnelle de X2 sachant
X1 = x1 :
R x2
f (x1 , y )dy
X1 =x1
.
FX2
(x2 ) = R −∞
+∞
f
(x
,
y
)dy
1
−∞
Inverse : q2 .
M ÉTHODE
Si U1 et U2 sont deux v.a. uniformes sur [0, 1] indépendantes, alors
X1 = q1 (U1 ),
A. Popier (Le Mans)
X2 = q2 (q1 (U1 ), U2 ).
Méthode de Monte Carlo.
41 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
42 / 95
L OI BINOMIALE .
D ÉFINITION
Une v.a. X à valeurs entières comprises entre 1 et N suit une loi
binômiale de paramètres N ∈ N∗ et p ∈ [0, 1] si :
∀k = 1, . . . , N, P(X = k ) = CNk pk (1 − p)N−k .
P ROPOSITION
Soient Ui , i = 1, . . . , N des v.a. uniformes sur [0, 1] indépendantes.
N
X
Soit X le nombre des Ui inférieures à p ∈ [0, 1], i.e. X =
1Ui <p .
i=1
Alors X suit une loi binomiale de paramètres N et p.
M ÉTHODE
Simuler N v.a. de Bernoulli Xi et en faire la somme.
A. Popier (Le Mans)
Méthode de Monte Carlo.
43 / 95
L OI GÉOMÉTRIQUE .
D ÉFINITION
Une v.a. X à valeurs entières strictement positives suit une loi
géométrique de paramètre p ∈]0, 1[ si :
∀n ≥ 1, P(X = n) = p(1 − p)n−1 .
Q UELQUES RÉSULTATS :
1−p
.
p2
p)k −1 .
E(X ) = p1 , Var(X ) =
P(X ≥ k ) = (1 −
P ILE OU FACE
Une loi géométrique est la loi du nombre de tirages à pile ou face
(indépendants) à réaliser pour obtenir face (si face a p % de chances
de sortir).
A. Popier (Le Mans)
Méthode de Monte Carlo.
44 / 95
L OI DE P OISSON .
D ÉFINITION
Une v.a. X à valeurs entières positives suit une loi de Poisson de
paramètre λ > 0 si :
∀n ≥ 0, P(X = n) = e−λ
λn
.
n!
M OMENTS : E(X ) = Var(X ) = λ.
P ROPOSITION
Soit (En )n∈N v.a. i.i.d. exponentielles de paramètre λ. Alors
P(E1 + . . . + En ≤ 1 < E1 + . . . + En+1 ) = e−λ
A. Popier (Le Mans)
Méthode de Monte Carlo.
λn
.
n!
45 / 95
L OI DE P OISSON .
D ÉFINITION
Une v.a. X à valeurs entières positives suit une loi de Poisson de
paramètre λ > 0 si :
∀n ≥ 0, P(X = n) = e−λ
λn
.
n!
M OMENTS : E(X ) = Var(X ) = λ.
M ÉTHODE
X
= 1E1 ≤1<E1 +E2 + 2 × 1E1 +E2 ≤1<E1 +E2 +E3 + . . .
+n × 1E1 +...+En ≤1<E1 +...+En+1 + . . .
suit une loi de Poisson de paramètre λ.
A. Popier (Le Mans)
Méthode de Monte Carlo.
45 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
46 / 95
Q UELLES VÉRIFICATIONS ?
D EUX TYPES de vérifications :
histogramme normalisé contre densité,
fonctions de répartition empirique contre théorique.
Dans les deux cas, il faut d’abord simuler un grand nombre de fois la
loi en question. Pour n ∈ N∗ , on obtient un vecteur (x1 , . . . , xn ) qui
contient n réalisations de la loi de X .
A. Popier (Le Mans)
Méthode de Monte Carlo.
47 / 95
H ISTOGRAMME VS . DENSITÉ .
H ISTOGRAMME NORMALISÉ
1
regrouper les n termes dans un certain nombre m de classes
(avec
X m < n). Dans chaque classe rm réalisations de X avec
rm = n.
2
normalisation : la somme des aires des colonnes fait 1
−→ rm /(n(Cm+1 − Cm )).
3
tracé : sur l’axe des abscisses, placer les m centres des m
classes, et mettre une colonne de hauteur rm /(n(Cm+1 − Cm )).
m
C ONVERGENCE VERS LA DENSITÉ
rm
1
−→
P(X ∈ [Cm , Cm+1 [).
n(Cm+1 − Cm ) n→+∞ Cm+1 − Cm
A. Popier (Le Mans)
Méthode de Monte Carlo.
48 / 95
H ISTOGRAMME VS . DENSITÉ .
C ONVERGENCE VERS LA DENSITÉ
rm
1
−→
P(X ∈ [Cm , Cm+1 [).
n(Cm+1 − Cm ) n→+∞ Cm+1 − Cm
C ONCLUSION
Si X discrète avec Ck espacés de 1, approximativement pk .
Si X à densité, alors
P(X ∈ [Cm , Cm+1 [)
1
=
Cm+1 − Cm
Cm+1 − Cm
A. Popier (Le Mans)
Z
Cm+1
f (t)dt
Cm
Méthode de Monte Carlo.
−→
Cm+1 −Cm →0
f (Cm ).
48 / 95
R ÉPARTITION EMPIRIQUE VS . THÉORIQUE .
F ONCTION DE RÉPARTITION EMPIRIQUE
n
∀t ∈ R, F n (t) =
1X
1]−∞,t] (xi ).
n
i=1
T HÉORÈME DE KOLMOGOROV-S MIRNOV
∀t ∈ R,
A. Popier (Le Mans)
lim F n (t) = FX (t).
n→+∞
Méthode de Monte Carlo.
49 / 95
E XEMPLE SUR LA LOI EXPONENTIELLE (2).
n=100
Histogramme vs densite
Fcts de repartition
2.0
empirique
1.8
theorique
1.0
1.6
0.8
1.4
1.2
0.6
1.0
0.4
0.8
0.6
0.2
0.4
0.0
0.2
0.0
!0.2
0
1
2
A. Popier (Le Mans)
3
4
5
6
!1
Méthode de Monte Carlo.
0
1
2
3
4
5
50 / 95
E XEMPLE SUR LA LOI EXPONENTIELLE (2).
n=10000
Histogramme vs densite
Fcts de repartition
2.0
empirique
1.8
theorique
1.0
1.6
0.8
1.4
1.2
0.6
1.0
0.4
0.8
0.6
0.2
0.4
0.0
0.2
0.0
!0.2
0
1
2
3
A. Popier (Le Mans)
4
5
6
7
8
!1
Méthode de Monte Carlo.
0
1
2
3
4
5
6
7
51 / 95
E XEMPLE SUR LA LOI DE B ERNOULLI (0.3).
n=100
Histogramme
Fcts de repartition
0.8
empirique
theorique
0.7
1.0
0.6
0.8
0.5
0.6
0.4
0.4
0.3
0.2
0.2
0.0
0.1
0.0
!0.5
0.0
0.5
A. Popier (Le Mans)
1.0
1.5
2.0
!0.2
!1.0
Méthode de Monte Carlo.
!0.5
0.0
0.5
1.0
1.5
2.0
52 / 95
E XEMPLE SUR LA LOI DE B ERNOULLI (0.3).
n=10000
Histogramme
Fcts de repartition
0.7
empirique
theorique
0.6
1.0
0.5
0.8
0.4
0.6
0.3
0.4
0.2
0.2
0.1
0.0
0.0
!0.5
0.0
0.5
A. Popier (Le Mans)
1.0
1.5
2.0
!0.2
!1.0
Méthode de Monte Carlo.
!0.5
0.0
0.5
1.0
1.5
2.0
53 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
54 / 95
M ÉTHODE DE REJET.
On veut simuler une v.a. de densité f , et il existe une densité g
simulable facilement et une constante k ≥ 1 telle que
∀x ∈ R, f (x) ≤ kg(x).
Soit α(x) =
f (x)
.
kg(x)
P ROPOSITION
Soit (Xi )i≥1 une suite de v.a. i.i.d. de densité g, et (Ui )i≥1 une suite de
v.a. i.i.d. de loi uniforme sur [0, 1], indépendante de la suite (Xi )i≥1 .
Soit
T = inf{i ≥ 1, Ui ≤ α(Xi )}.
La variable XT a pour densité f .
A. Popier (Le Mans)
Méthode de Monte Carlo.
55 / 95
M ÉTHODE DE REJET.
M ÉTHODE
Soit (X1 , U1 ) un couple de v.a. indépendantes telles que X1 suive la loi
de densité g et U1 suive une loi uniforme sur [0, 1]. Si U1 ≤ α(U1 ), on
pose X = X1 .
Sinon on rejette X1 et on recommence en générant une suite
(Xn , Un )n≥2 de v.a. indépendantes de même loi que (X1 , U1 ) jusqu’à
l’instant p où Up ≤ α(Xp ). On pose alors X = Xp .
R EMARQUES
on n’a pas besoin de connaître F , ni F −1 .
elle s’étend à Rd , à des lois discrètes, etc.
A. Popier (Le Mans)
Méthode de Monte Carlo.
56 / 95
M ÉTHODE DE REJET : VITESSE .
Calcul de la probabilité d’acceptation :
p = P(U ≤ α(X )) =
1
.
k
Donc T a pour distribution une loi géométrique de paramètre p. En
moyenne, on doit rejeter k = 1/p fois avant d’accepter la valeur.
Ainsi il faut choisir g telle que
f
k = max
g
soit la plus petite possible.
A. Popier (Le Mans)
Méthode de Monte Carlo.
57 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
58 / 95
L OI NORMALE : MÉTHODE POLAIRE .
P ROPOSITION
Si Y ∼ N (µ, σ 2 ), alors X = (Y − µ)/σ ∼ N (0, 1).
Pour simuler X (et Y )
simuler deux lois uniformes U et V sur [0, 1] ;
poser
X =
√
−2 ln U cos(2πV ),
Y =
√
−2 ln U sin(2πV ).
P ROPOSITION
X et Y sont deux v.a. normales centrées réduites indépendantes.
Ou utiliser sous Matlab randn(n,m).
A. Popier (Le Mans)
Méthode de Monte Carlo.
59 / 95
L OI NORMALE : MÉTHODE POLAIRE .
Pour simuler X (et Y )
simuler deux lois uniformes U et V sur [0, 1] ;
poser
X =
√
−2 ln U cos(2πV ),
Y =
√
−2 ln U sin(2πV ).
c l f ; hold on
t i t l e ( ’ S i m u l a t i o n d ’ ’ une l o i normale ’ )
ylabel ( ’ E f f e c t i f s ’ ) ; xlabel ( ’ Valeurs ’ ) ;
[ E ,C] = e c d f ( s q r t (−2∗ log ( rand ( 5 0 0 0 , 1 ) ) )
. ∗ cos ( 2 ∗ p i ∗rand ( 5 0 0 0 , 1 ) ) ) ;
e c d f h i s t ( E , C, 4 0 ) ;
hold on
p l o t (C, ( 2 ∗ p i ) ^ ( − 1 / 2 ) ∗ exp(−C . ^ 2 / 2 ) , ’ r− ’ ) ;
legend ( ’ Empirique ’ , ’ Theorique ’ )
hold o f f
A. Popier (Le Mans)
Méthode de Monte Carlo.
60 / 95
L OI NORMALE : MÉTHODE POLAIRE .
A. Popier (Le Mans)
Méthode de Monte Carlo.
61 / 95
L OI NORMALE : MÉTHODE POLAIRE .
A. Popier (Le Mans)
Méthode de Monte Carlo.
61 / 95
L OI NORMALE : MÉTHODE POLAIRE - REJET.
P ROPOSITION
(X , Y ) = (ρ cos(θ), ρ sin(θ)) suit une loi uniforme sur le disque unité du
plan, alors
p
−4 ln(ρ)
(X , Y )
ρ
suit une loi normale centrée réduite bidimensionnelle.
(X , Y ) facile à simuler par rejet à partir d’une uniforme sur le carré
[−1, 1]2 (rejet dans 21 % des cas puisque π/4 ≈ 0, 79).
θ et ρ indépendantes,
ρ loi de densité u 7→ 2u1[0,1] (u), −4 ln(ρ) exponentielle de
paramètre 1/2,
θ uniforme sur [0, 2π].
A. Popier (Le Mans)
Méthode de Monte Carlo.
62 / 95
L OI UNIFORME SUR LE DISQUE .
A. Popier (Le Mans)
Méthode de Monte Carlo.
63 / 95
V ECTEUR GAUSSIEN .
P ROPOSITION
Soit
m ∈ Rn ,
Γ ∈ Sn+ (R) matrice réelle de taille n symétrique positive,
Y vecteur aléatoire gaussien standard de moyenne nulle et
matrice de covariance Idn .
Alors le vecteur aléatoire X = Γ1/2 Y + m est gaussien de moyenne m
et de matrice de covariance Γ.
Si Y est un vecteur gaussien de loi N (0, Idn ), ses coordonnées sont
i.i.d. de loi N (0, 1). Ainsi on peut simuler une réalisation de Y en
simulant n réalisations indépendantes Y1 (ω), . . . , Yn (ω) de loi N (0, 1).
A. Popier (Le Mans)
Méthode de Monte Carlo.
64 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
65 / 95
D EUX EXEMPLES .
2 /2
E XEMPLE THÉORIQUE . Calculer θ = E(e5Z ) = e5
variance théorique :
σ2
=
e50
−
e25
≈7×
avec Z ∼ N (0, 1)
1010 .
valeur exacte : 268337.
nombre tirages : N = 500000.
valeur estimée : θ = 221741.
Intervalle de confiance : I = [−65186, 508668].
A. Popier (Le Mans)
Méthode de Monte Carlo.
66 / 95
D EUX EXEMPLES .
E XEMPLE PLUS CONCRET. Call C = E((5e(Z −1/2) − 3)+ ) avec
Z ∼ N (0, 1)
valeur exacte : 2,71.
nombre tirages : N = 1000.
valeur estimée : 2,83.
Intervalle de confiance : I = [2, 42; 3, 24].
Put P = E((3 − 5e(Z −1/2) )+ ) et C − P = 2.
valeur exacte : 0,71.
valeur estimée : 0,70.
Intervalle de confiance : I = [0, 64; 0, 76].
Contrôle : C = 2 + P.
A. Popier (Le Mans)
Méthode de Monte Carlo.
66 / 95
R ÉDUCTION DE VARIANCE : MÉTHODES .
Variables antithétiques.
Variables de contrôle.
Échantillonnage préférentiel (ou d’importance).
Échantillonnage stratifié.
Méthodes adaptatives (chaînes de Markov).
A. Popier (Le Mans)
Méthode de Monte Carlo.
67 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
68 / 95
VARIABLES ANTITHÉTIQUES .
B UT : calculer θ = E(Y ) = E(f (X )).
D EUX V. A . Y1 et Y2 de même loi que Y .
2
;
E(Y ) = 12 (E(Y1 ) + E(Y2 )) = E Y1 +Y
2
2
= Var (Y1 )+Var (Y42 )+2Cov(Y1 ,Y2 ) ;
Var Y1 +Y
2
si Y1et Y2 décorrélées
(ou indépendantes),
Var
(Y )
Y1 +Y2
=
;
Var
2
2
si Cov(Y1 , Y2 ) < 0, alors Var
Y1 +Y2
2
< Var2(Y ) .
Q UESTION : comment obtenir Y1 et Y2 de même loi que Y avec
Cov(Y1 , Y2 ) < 0 ?
A. Popier (Le Mans)
Méthode de Monte Carlo.
69 / 95
VARIABLES ANTITHÉTIQUES UNIFORMES .
H YPOTHÈSE : Y = g(U) où U uniforme sur [0, 1] .
A LGORITHME CLASSIQUE avec échantillon de taille 2n.
M ÉTHODE
de i = 1 à 2n
générer Ui
définir Yi = g(Ui )
fin
2n
2n
1 X
1 X
2
définir θ̂2n = Y 2n =
=
Yi et σ̂2n
(Yi − θ̂2n )2
2n
2n − 1
i=1
i=1
σ̂2n
σ̂2n
définir CI = [θ̂2n − cα √ , θ̂2n + cα √ ]
2n
2n
A. Popier (Le Mans)
Méthode de Monte Carlo.
70 / 95
VARIABLES ANTITHÉTIQUES UNIFORMES .
H YPOTHÈSE : Y = g(U) avec U uniforme sur [0, 1].
A LGORITHME avec échantillon de taille 2n.
M ÉTHODE
de i = 1 à 2n
générer Ui
définir Yi = g(1 − Ui )
fin
2n
2n
1 X
1 X
2
définir θ̂2n = Y 2n =
Yi et σ̂2n =
(Yi − θ̂2n )2
2n
2n − 1
i=1
i=1
σ̂2n
σ̂2n
définir CI = [θ̂2n − cα √ , θ̂2n + cα √ ]
2n
2n
A. Popier (Le Mans)
Méthode de Monte Carlo.
70 / 95
VARIABLES ANTITHÉTIQUES UNIFORMES .
H YPOTHÈSE : Y = g(U) avec U uniforme sur [0, 1].
A LGORITHME MÉLANGÉ avec échantillon de taille n.
M ÉTHODE
de i = 1 à n
générer Ui
Yi + Ỹi
définir Yi = g(Ui ), Ỹi = g(1 − Ui ) et Zi =
2
fin
n
n
1X
1 X
définir θ̂n,a = Z n =
Zi et σ̂n2 =
(Zi − θ̂n )2
n
n−1
i=1
i=1
σ̂n
σ̂n
définir CI = [θ̂n,a − cα √ , θ̂n,a + cα √ ]
n
n
A. Popier (Le Mans)
Méthode de Monte Carlo.
70 / 95
VARIABLES ANTITHÉTIQUES UNIFORMES .
H YPOTHÈSE : Y = g(U) avec U uniforme sur [0, 1].
D IFFÉRENTS RÉSULTATS :
1 P2n
θ̂2n = Y 2n = 2n
i=1 Yi ;
1 Pn
θ̂n,a = Z n = n i=1 Zi .
C OMPARAISON DES VARIANCES
P2n
Var (θ̂2n ) = Var
i=1 Yi
2n
Var (θ̂n,a ) = Var (θ̂2n ) +
!
=
Var (Y )
2n
Cov(Y , Ỹ )
.
2n
Ainsi
Var (θ̂n,a ) < Var (θ̂2n ) ⇐⇒ Cov(g(U), g(1 − U)) < 0.
A. Popier (Le Mans)
Méthode de Monte Carlo.
70 / 95
VARIABLES ANTITHÉTIQUES UNIFORMES .
H YPOTHÈSE : Y = g(U) avec U uniforme sur [0, 1].
T HÉORÈME
Si g est une fonction monotone, alors Cov(g(U), g(1 − U)) < 0.
C ONSÉQUENCE
Méthode d’inversion : g = f (FX−1 ) est monotone si f l’est.
A. Popier (Le Mans)
Méthode de Monte Carlo.
70 / 95
VARIABLES ANTITHÉTIQUES : GÉNÉRALISATION .
H YPOTHÈSE SUR X : il existe a t.q. X et a − X aient la même loi.
E XEMPLES
Lois normales N (µ, σ 2 ) : a = 2µ.
Lois de Laplace de paramètre λ > 0 : f (x) =
λ
2
exp(−λ|x|). a = 0.
M ÉTHODE
de i = 1 à n
générer Xi
Yi + Ỹi
définir Yi = g(Xi ), Ỹi = g(a − Xi ) et Zi =
2
fin
n
n
1 X
1X
définir θ̂n,a = Z n =
Zi et σ̂n2 =
(Zi − θ̂n )2
n
n−1
i=1
i=1
σ̂n
σ̂n
définir CI = [θ̂n,a − cα √ , θ̂n,a + cα √ ]
n
n
A. Popier (Le Mans)
Méthode de Monte Carlo.
71 / 95
E XEMPLE : OPTION K NOCK -I N .
C ONTRAT FINANCIER de payoff h(ST ) = max(0, ST − K )1ST >B .
√
M ODÈLE B LACK -S CHOLES ST = S0 exp((r − σ 2 /2)T + σ T X ,
X ∼ N (0, 1).
P RIX DU CONTRAT
C = e−rT E (h(ST )) = e−rT E max(0, ST − K )1ST >B .
J EU DE PARAMÈTRES S0 = 2, K = 1, B = 2, 5, r = 0, 1, σ = 0.3,
T = 10, N = 5000.
R ÉSULTATS OBTENUS
sans réduction de variance : C = 1.5720 (variance 5.4236) ;
avec réduction de variance : C = 1.5543 (variance 1.5827).
A. Popier (Le Mans)
Méthode de Monte Carlo.
72 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
73 / 95
VARIABLES DE CONTRÔLE .
B UT : calculer θ = E(Y ) = E(f (X )).
A JOUT d’une variable Z
facilement simulable ;
E(Z ) connue ou facilement calculable (variance « petite »).
D EUX CALCULS POSSIBLES DE θ :
par méthode de Monte Carlo standard,
en posant Wc = Y + c(Z − E(Z )) et en calculant E(Wc ) par
Monte Carlo (c : paramètre constant fixé).
Q UESTION : Var (Wc ) < Var (Y ) ?
A. Popier (Le Mans)
Méthode de Monte Carlo.
74 / 95
VARIABLES DE CONTRÔLE .
C ALCUL DE LA VARIANCE :
Var (Wc ) = Var (Y ) + c 2 × Var (Z ) + 2c × Cov(Y , Z ).
C HOIX OPTIMAL DE c : c ∗ = − Cov(Y ,Z ) ;
Var (Z )
Cov
(Y ,Z )2
Var (Wc ∗ ) = Var (Y ) −
;
Var (Z )
Var (Wc ∗ ) < Var (Y ) ⇔ Cov(Y , Z ) < 0 ;
Z : variable de contrôle de Y .
A LGORITHME :
θ̂N,c ∗
N
1X
=
(Yi + c ∗ (Zi − E(Z ))) ≈ θ.
N
i=1
P ROBLÈMES : calcul de E(Z ) ? De Cov(Y , Z ) ?
A. Popier (Le Mans)
Méthode de Monte Carlo.
75 / 95
MMC AVEC VARIABLE DE CONTRÔLE .
M ÉTHODE
É TAPE 1 : p petit → détermine une valeur approchée de c ∗ .
Simuler p v.a. (Yn )1≤n≤p et p v.a. (Zn )1≤n≤p .
Poser :
p
p
i=1
i=1
X
X
b )= 1
b )= 1
Zi , E(Y
Yi ,
E(Z
p
p
p
d (Z ) =
Var
1 X
b ))2 ,
(Zj − E(Z
p−1
j=1
d ,Z) =
Cov(Y
1
p−1
p
X
b ))(Zj − E(Z
b ))).
(Yi − E(Y
j=1
(Y ,Z )
Calculer cb∗ = − Cov
.
d
Var
(Z )
d
A. Popier (Le Mans)
Méthode de Monte Carlo.
76 / 95
MMC AVEC VARIABLE DE CONTRÔLE .
M ÉTHODE
É TAPE 1 : p petit → détermine une valeur approchée de c ∗ .
É TAPE 2 : N grand.
Simuler N v.a. (Yn )1≤n≤N et N v.a. (Zn )1≤n≤N .
Poser :
N
1X
b
b ))) ≈ θ.
θ=
(Yi + cb∗ (Zi − E(Z
N
i=1
A. Popier (Le Mans)
Méthode de Monte Carlo.
76 / 95
U N EXEMPLE .
É NONCÉ
2
Calculer θ = E(e(U+V ) ) avec U et V de loi uniforme sur [0, 1].
2
Y = e(U+V ) .
Variables de contrôle : Z1 = U + V , Z2 = (U + V )2 ou encore
Z3 = exp(U + V ).
A. Popier (Le Mans)
Méthode de Monte Carlo.
77 / 95
L E PROGRAMME ( CALCUL DE c ∗ ).
p=500;
u=rand ( p , 1 ) ; v=rand ( p , 1 ) ;
y=exp ( ( u+v ) . ^ 2 ) ; z1=u+v ; z2 =( u+v ) . ^ 2 ; z3=exp ( u+v ) ;
a1=cov ( [ y z1 ] ) ;
a2=cov ( [ y z2 ] ) ;
a3=cov ( [ y z3 ] ) ;
c_est1=−a1 ( 1 , 2 ) / a1 ( 2 , 2 )
c_est2=−a2 ( 1 , 2 ) / a2 ( 2 , 2 )
c_est3=−a3 ( 1 , 2 ) / a3 ( 2 , 2 )
Valeurs obtenues :
c est1 = - 11.088954
c est2 = - 5.7049857
c est3 = - 3.9928724
A. Popier (Le Mans)
Méthode de Monte Carlo.
78 / 95
L E PROGRAMME (MMC).
n=5000;
u=rand ( n , 1 ) ; v=rand ( n , 1 ) ;
y=exp ( ( u+v ) . ^ 2 ) ; z1=u+v ; z2 =( u+v ) . ^ 2 ; z3=exp ( u+v ) ;
m1=mean( z1 )
m2=mean( z2 )
m3=mean( z3 )
w1=y+ c_est1 ∗ ( z1−m1 ) ;
w2=y+ c_est2 ∗ ( z2−m2 ) ;
w3=y+ c_est3 ∗ ( z3−m3 ) ;
b0 = [mean( y ) s t d e v ( y ) ^ 2 ]
b1 = [mean( w1 ) v a r ( w1 ) ]
b2 = [mean( w2 ) v a r ( w2 ) ]
b3 = [mean( w3 ) v a r ( w3 ) ]
%Intervalle de confiance
CI = [ b2 (1) −1.96∗ s t d e v ( w2 ) / s q r t ( n ) ,
b2 ( 1 ) + 1 . 9 6 ∗ s t d e v ( w2 ) / s q r t ( n ) ]
A. Popier (Le Mans)
Méthode de Monte Carlo.
79 / 95
B ILAN .
Valeurs obtenues :
m1 = 1.0006399 (exacte 1) ;
m2 = 1.171765 (exacte 7/6 ≈ 1.1666667) ;
m3 = 2.959135 (exacte (e − 1)2 ≈ 2.9524924) ;
b0
b1
b2
b3
moyenne
4.9317203
4.9317203
4.9317203
4.9317203
variance
34.564778
13.840552
7.7461357
7.2175877
CI = [4.8545742, 5.0088663].
A. Popier (Le Mans)
Méthode de Monte Carlo.
80 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
81 / 95
M ONTE C ARLO CONDITIONNEL .
I DÉE : au lieu de calculer θ = E(Y ) = E(f (X )), pour Z v.a.
poser V = E(Y |Z ) = g(Z ) v.a. ;
et θ = E(V ).
C ONDITIONS :
Z facilement simulable ;
V facilement calculable.
C ALCULS DE LA VARIANCE : Var (Y |Z ) est une v.a. positive :
h
i
Var (Y |Z ) = E (Y − E(Y |Z ))2 Z ,
et comme Y − E(Y ) − (E(Y |Z ) − E(Y )) ⊥ E(Y |Z ) − E(Y ),
Var (Y ) = E(Var (Y |Z )) + Var (E(Y |Z )) ⇒ Var (Y ) ≥ Var (E(Y |Z )).
A. Popier (Le Mans)
Méthode de Monte Carlo.
82 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
83 / 95
É VÉNEMENTS RARES .
Technique utilisée beaucoup pour
θ = P(X ≤ seuil ) = E(1X ≤seuil ),
quand l’occurence de X ≤ seuil est très petite.
E XEMPLES .
Catastrophes climatiques, ferroviaires, aériennes, etc.
Faillites de grosses entreprises, d’états, etc.
Cracks boursiers importants
B UT : mesurer les risques de portefeuille, opérationnels, etc.
(obligation légale pour les banques ou les assurances).
A. Popier (Le Mans)
Méthode de Monte Carlo.
84 / 95
E XEMPLE .
X suit une loi normale de paramètres 0 et 1
θ = P(X ≤ −10) = E(1X ≤−10 ).
M ONTE -C ARLO CLASSIQUE .
Nombre de tirages N variant de 1000 à 10000000.
Valeur estimée : 0.
C ONCLUSION ERRONÉE : θ = 0.
VALEUR EXACTE : θ = 7.6199 × 10−24 .
Nombre de tirages nécessaires de l’ordre de 1025 : impossible !
A. Popier (Le Mans)
Méthode de Monte Carlo.
85 / 95
É CHANTILLONNAGE PRÉFÉRENTIEL : PRINCIPE .
Changer la loi. Soient φ la densité de X et ψ une autre densité telle
que ψ(x) 6= 0 si φ(x) 6= 0. Alors
Z
θ = E(f (X )) =
= E(h(Y )),
Z
f (x)φ(x)dx =
avec h(x) = f (x)
f (x)
φ(x)
ψ(x)dx
ψ(x)
φ(x)
et Y ∼ ψ.
ψ(x)
D ÉFINITION : g est une fonction d’importance.
Q UESTION : comment choisir g ?
A. Popier (Le Mans)
Méthode de Monte Carlo.
86 / 95
R ETOUR SUR L’ EXEMPLE .
X ∼ N (0, 1) et θ = P(X ≤ −10) : forcer les tirages de Y à être aux
alentours de -10. Donc Y ∼ N (−10, 1).
R EMARQUE
Si Y ∼ N (µ, σ 2 ), alors P(Y ≤ µ) = 1/2.
2
1
x
P(X ≤ −10) =
1x≤−10 √ exp −
2
2π
R
2 

Z
√1 exp − x
2
1
(x + 10)2
2π


√
exp −
1x≤−10
dx
(x+10)2
2
2π
R
√1 exp −
2
2π
Z
1
(x + 10)2
dx
1x≤−10 exp 10x + (−10)2 /2 √ exp −
2
2π
R
E [1Y ≤−10 exp (10Y + 50)] .
Z
θ =
=
=
=
A. Popier (Le Mans)
Méthode de Monte Carlo.
87 / 95
R ETOUR SUR L’ EXEMPLE .
θ = P(X ≤ −10) = E [1Y ≤−10 exp (10Y + 50)].
M ONTE -C ARLO AVEC Y.
Valeur exacte θ = 7.6199 × 10−24 .
Y=randn(N,1) - 10.
Nombre de tirages N variant de 1 à 10000.
Valeur estimée : 8.0060 × 10−24 .
Écart-type : 2.6893 × 10−23
A. Popier (Le Mans)
Méthode de Monte Carlo.
87 / 95
R ETOUR SUR L’ EXEMPLE .
A. Popier (Le Mans)
Méthode de Monte Carlo.
87 / 95
C HOIX DE LA FONCTION D ’ IMPORTANCE .
D ONNÉES : φ densité de X , ψ autre densité t.q. ψ(x) 6= 0 si φ(x) 6= 0.
φ(Y )
, Y ∼ ψ.
θ = E(f (X )) = E(h(Y )) = E f (Y )
ψ(Y )
C ALCULS DE LA VARIANCE :
Z
f 2 (x)φ(x)dx − θ2 ;
Z
f 2 (x)
Var (f (X )) =
Var (h(Y )) =
φ2 (x)
dx − θ2 .
ψ(x)
Donc
Z
Var (f (X )) − Var (h(Y )) =
A. Popier (Le Mans)
φ(x)
f (x) 1 −
φ(x)dx > 0.
ψ(x)
2
Méthode de Monte Carlo.
88 / 95
C HOIX DE LA FONCTION D ’ IMPORTANCE .
D ONNÉES : φ densité de X , ψ autre densité t.q. ψ(x) 6= 0 si φ(x) 6= 0.
φ(Y )
, Y ∼ ψ.
θ = E(f (X )) = E(h(Y )) = E f (Y )
ψ(Y )
C ALCULS DE LA VARIANCE :
Z
Var (f (X )) − Var (h(Y )) =
φ(x)
f (x) 1 −
φ(x)dx > 0.
ψ(x)
2
P ISTE : si ψ(x) = f (x)φ(x)/θ, Var (h(Y )) = 0 ! Prendre ψ proche de
f φ...
T HÉORÈME (RUBINSTEIN )
La densité ψ qui minimise la variance est
ψ(x) = R
A. Popier (Le Mans)
1
|f (x)|φ(x).
|f (x)|φ(x)dx
Méthode de Monte Carlo.
88 / 95
C HOIX DE LA FONCTION D ’ IMPORTANCE .
D ONNÉES : φ densité de X , ψ autre densité t.q. ψ(x) 6= 0 si φ(x) 6= 0.
φ(Y )
, Y ∼ ψ.
θ = E(f (X )) = E(h(Y )) = E f (Y )
ψ(Y )
C ALCULS DE LA VARIANCE :
Z
Var (f (X )) − Var (h(Y )) =
φ(x)
f 2 (x) 1 −
φ(x)dx > 0.
ψ(x)
I DÉE :
prendre φ/ψ > 1 quand f φ petit ;
prendre φ/ψ < 1 quand f φ grand.
A. Popier (Le Mans)
Méthode de Monte Carlo.
88 / 95
P LAN
1
2
M ÉTHODE DE M ONTE C ARLO
P ROBLÈME DE SIMULATION
Théorème fondamental
Simulation de la loi uniforme
Fonction de répartition
Méthode d’inversion
Cas particuliers
Vérifications
Méthode de rejet
Lois gaussiennes
3
R ÉDUCTION DE VARIANCE
Variables antithétiques
Variables de contrôle
Monte Carlo conditionnel
Échantillonnage d’importance
Échantillonnage stratifié
A. Popier (Le Mans)
Méthode de Monte Carlo.
89 / 95
P RINCIPE DE L’ ÉCHANTILLONNAGE STRATIFIÉ .
O BJECTIF : évaluer θ = E(Y ) avec Y v.a. réelle. Soit A1 , . . . , AK
sous-ensembles disjoints de R tels que P(Y ∈ ∪i Ai ) = 1. Alors
θ=
K
X
P(Y ∈ Ai )E(Y |Y ∈ Ai ) =
K
X
pi E(Y |Y ∈ Ai ).
i=1
i=1
S TRATIFICATION PROPORTIONNELLE . Soit N la taille de l’échantillon.
choisir les Ai avec pi = P(Y ∈ Ai ) ;
poser ni = Npi (considéré comme entier) ;
pour chaque i = 1, . . . , K , simuler Yij , j = 1, . . . , ni i.i.d. suivant la
loi de Y sachant Y ∈ Ai .
θ≈
K
X
i=1
A. Popier (Le Mans)


ni
ni
K
X
1
1 XX
pi 
Yij  =
Yij .
ni
N
j=1
Méthode de Monte Carlo.
i=1 j=1
90 / 95
G ÉNÉRALISATION .
I
S TRATIFICATION FONCTION DE X .
Ai choisis tels que P(X ∈ ∪i Ai ) = 1 :
θ=
K
X
P(X ∈ Ai )E(Y |Y ∈ Ai ) =
i=1
K
X
pi E(Y |X ∈ Ai ).
i=1
Générer (Xij , Yij ) suivant la loi conditionnelle de (X , Y ) sachant
X ∈ Ai .
I
S UPPRIMER LA PROPORTIONNALITÉ .
Autoriser
le nombre de tirages n1 , . . . , nk arbitraire (avec
P
i ni = N) ;
Poser qi = ni /N :
b =
θ≈Y
K
X
i=1
A. Popier (Le Mans)

ni
ni
K
X
1 X pi X
1


Yij =
Yij .
pi
ni
N
qi

j=1
Méthode de Monte Carlo.
i=1
j=1
91 / 95
E XEMPLES .
I
S TRATIFICATION DE LA LOI UNIFORME .
Partition de ]0, 1[ : Ai =]ai , bi ] ;
Loi de U sachant U ∈ Ai : uniforme entre ai et bi ;
Échantillon : Vi = ai + (bi − ai )Ui .
Exemple : Ai =](i − 1)/N, i/N], i = 1, . . . , N.
I
V IA FONCTION DE RÉPARTITION .
Y de fonction de répartition F .
Pour p1 , . . . , pK données, avec a0 = −∞,
a1 = F −1 (p1 ), a2 = F −1 (p1 + p2 ), . . . , aK = F −1 (1),
et Ai =]ai−1 , ai ] pour i = 1, . . . , K . Si ak = +∞, alors
AK =]aK −1 , aK [.
V = ai−1 + U(ai − ai−1 ) uniforme sur Ai et F −1 (V ) a la loi de Y
sachant Y ∈ Ai .
A. Popier (Le Mans)
Méthode de Monte Carlo.
92 / 95
b.
A NALYSE DE L’ ESTIMATEUR Y
N OTATIONS :
θi = E(Yij ) = E(Y |X ∈ Ai ),
σ 2 = Var (Yij ) = Var (Y |X ∈ Ai ).
E STIMATEUR SANS BIAIS :
b) =
E(Y
K
X
i=1


ni
N
X
X
1
pi 
E(Yij ) =
pi θi = θ.
ni
j=1
i=1
de variance :
b) =
Var (Y
K
X
i=1


ni
N
X
X
σ2
1
σ 2 (q)
pi2 i =
pi2 Var 
E(Yij ) =
ni
ni
N
i=1
j=1
avec
2
σ (q) =
N
X
p2
i
i=1
A. Popier (Le Mans)
qi
σi2 .
Méthode de Monte Carlo.
93 / 95
b.
A NALYSE DE L’ ESTIMATEUR Y
I NTERVALLE DE CONFIANCE :
1
p
[Nqi ]
[Nqi ]
X
en loi
(Yij − θi ) −→ N (0, σi2 )
j=1
d’où


[Nqi ]
K
X
√ X
√ 1
b −θ
N Y
=
N
pi 
(Yij − θi )
[Nqi ]
i=1
j=1


[Nqi ]
K
X
X
pi
1
≈
(Yij − θi )
√ p
qi
[Nqi ]
i=1
Ainsi
A. Popier (Le Mans)
j=1
√ loi
b − θ en
N Y
−→ N (0, σ(q)2 ).
Méthode de Monte Carlo.
93 / 95
b.
A NALYSE DE L’ ESTIMATEUR Y
I NTERVALLE DE CONFIANCE : Ainsi
√ loi
b − θ en
−→ N (0, σ(q)2 ).
N Y
σ(q)2 : estimé via
s2 (q) =
N
X
p2
i
i=1
qi
si2 , avec si déviation standard de Yi1 , . . . , Yini ;
ou
I
I
I
N = mk , ki = qi k et ni = mki ,
b moyenne de m estimateurs Y
bi qui allouent une fraction qi
Y
d’observations pour la strate i et de taille k ,
bi de variance σ(q)2 /k et Y
b de variance (σ(q)2 /k )/m.
Y
A. Popier (Le Mans)
Méthode de Monte Carlo.
93 / 95
R ÉDUCTION DE VARIANCE ?
I
C AS PROPORTIONNEL .
σ2
N
=
=
=
Ainsi :
" K
#
X
1
1
(E(Y 2 ) − θ2 ) =
pi E(Y 2 |X ∈ Ai ) − θ2
N
N
i=1
" K
#
1 X
pi (σi2 + θi2 ) − θ2
N
1
N
i=1
K
X
pi σi2 +
i=1
K
1X
pi (θi − θ)2
N
i=1
K
X
σ2
bProp ) = 1
− Var (Y
pi (θi − θ)2 .
N
N
i=1
A. Popier (Le Mans)
Méthode de Monte Carlo.
94 / 95
R ÉDUCTION DE VARIANCE ?
I
I
K
1X
σ2
b
− Var (YProp ) =
pi (θi − θ)2 .
C AS PROPORTIONNEL . Ainsi :
N
N
i=1
O PTIMISATION .
Trouver le minimum de σ 2 (q) =
N
X
p2
i
i=1
qi
σi2 avec qi = ni /N et
n1 + . . . + nk = N.
pi σi
Optimum : qi∗ = K
.
X
pj σj
j=1
Ainsi
2

K
X
σ̄ 2
bOpt ) = 1 
Var (Y
pj σj  =
.
N
N
j=1
bProp ) − Var (Y
bOpt ) =
Var (Y
K
2
1X
pj σj − σ̄ .
N
j=1
A. Popier (Le Mans)
Méthode de Monte Carlo.
94 / 95
R ÉDUCTION DE VARIANCE ?
I
K
1X
σ2
b
− Var (YProp ) =
pi (θi − θ)2 .
C AS PROPORTIONNEL . Ainsi :
N
N
I
O PTIMISATION .
i=1
bProp ) − Var (Y
bOpt ) =
Var (Y
K
2
1X
pj σj − σ̄ .
N
j=1
I
C ONCLUSION .
σ2
N
=
=
2
σ2
bProp ) + Var (Y
bProp ) − Var (Y
bOpt ) + σ̄
− Var (Y
N
 N
K
K
X
2
1 X
pi (θi − θ)2 +
pj σj − σ̄ + σ̄ 2  .
N
i=1
A. Popier (Le Mans)
j=1
Méthode de Monte Carlo.
94 / 95
E XEMPLE NUMÉRIQUE .
√
O BJECTIF : calculer θ = E(Y ) = E( 1 − U 2 ), avec variable de
stratification X = U.
√
Pour Ai =]ai , bi ], Yi = ( 1 − U 2 |U ∈ Ai ) obtenue via (U|U ∈ Ai )
uniforme sur Ai .
Choix : A1 =]0, K1 ], A2 =] K1 , K2 ], . . . , AK =] KK−1 , 1].
pi = 1/K , ni = Npi = N/K .
R ÉSULTATS :
N = 10000, K = 100.
Monte-Carlo standard : θ = 0, 782 avec intervalle de confiance
[0, 7775; 0, 7864]. Variance : 0,05.
Échantillonnage stratifié : θ = 0, 7854 avec intervalle de confiance
[0, 7853; 0, 7855]. Variance : 2, 65 × 10−5 .
A. Popier (Le Mans)
Méthode de Monte Carlo.
95 / 95

Documents pareils