M
ÉTHODE DEM
ONTEC
ARLO.
Alexandre Popier
Université du Maine, Le Mans
P
LAN DU COURS1 MÉTHODE DEMONTECARLO
2 PROBLÈ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é
B
UT:
CALCUL D’
ESPÉRANCE.
SoientX une v.a.r. etf :R→Rune fonction.
BUT
Calculer numériquementE(f(X)).
EXEMPLES
FINANCE: prix d’une option d’achat
I modèle de Cox-Ross-Rubinstein :
C= 1 (1+r)NE
S0 N
Y
i=1
Ti −K
!+
.
P(Ti =1+u) =p=1−P(Ti =1+d)oùp= (u−r)/(u−d).
I modèle de Black-Scholes : C=e−rTE
S e(r−σ2/2)T+σWT−K+
avecW ∼ N(0,T).
B
UT:
CALCUL D’
ESPÉRANCE.
SoientX une v.a.r. etf :R→Rune fonction.
BUT
Calculer numériquementE(f(X)).
EXEMPLES
FINANCE: prix d’une option d’achat ASSURANCE: calcul de la prime
I Prime pure :E(X),
I Prime exponentielle : 1clnE(ecX),
I Prime quantile :FX−1(1−ε),
CALCUL DE PERTE ou Value At Risk en finance :P(X <seuil).
etc.
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
L
OI DES GRANDS NOMBRES.
THÉORÈME
Soit(Yi)i∈Nune suite de variables aléatoires.
HYPOTHÈSES
indépendance
distribution identique (comme une v.a.Y) E(|Y|)<+∞.
Alors presque sûrement :
n→+∞lim Yn = lim
n→+∞
1
n(Y1+. . .+Yn) =E(Y).
Autrement dit, pournassez grand 1 n
n
XYi ≈E(Y).
M
ÉTHODE DEM
ONTEC
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 = 1
N
N
X
i=1
f(Xi) = f(X1) +. . .+f(XN)
N .
Loi des grands nombres :µˆN ≈µpourN grand.
PROBLÈME: quelle est l’erreur commise ?
L
OI EXPONENTIELLE(2) (
ESPÉRANCE1/2)
L
OI DEP
ARETO(0,5)
PAS D’
ESPÉRANCET
HÉORÈME CENTRAL LIMITE.
THÉORÈME
Soit(Yi)i∈Nune suite de v.a.
HYPOTHÈSES
indépendance
distribution identique (comme une v.a.Y) E(|Y|2)<+∞.
AlorsYn∼=N(0,1): pour touta<b
n→+∞lim P a<√
nYn−µ σ <b
!
=P(a<Z <b), Z ∼ N(0,1).
I
NTERVALLE DE CONFIANCE.
TCL:µ=E(Y1),Yn= n1(Y1+. . .+Yn) P
Yn−a σ
√n ≤µ≤Yn+a σ
√n
= P −a≤√
nYn−µ
σ ≤a
!
≈ P(|Z| ≤a), oùσ2=Var(f(X)).
Pour unniveau de confianceα∈[0,1]fixé, il existecα >0 tel que P(|Z| ≤cα) =α.
Donc aveca=cα, pourngrand
P(µ∈Iα,n)≈P(|Z| ≤cα) =α avec
Iα,n=
Yn−cα σ
√ ,Yn+cα σ
√
: intervalle de confiance.
M
ÉTHODE DEM
ONTEC
ARLO:
ERREUR.
MÉTHODE
Simuler N v.a.(Xn)1≤n≤N i.i.d. de même loi que X . Poser :
ˆ µN = 1
N
N
X
i=1
f(Xi) = f(X1) +. . .+f(XN)
N .
Erreur donnée par un intervalle de confiance : P µ∈Iα,N
≈α
avec
Iα,N =
ˆ µN−cα
√σ
N,µˆN+cα
√σ N
, σ2=Var(f(x)).
Problème: on ne connaît pas en général la varianceσ2.
E
STIMATION DE LA VARIANCE.
On estimeσ2grâce à l’estimateurSn2= 1 n−1
n
X
i=1
(Yi−Yn)2.On peut montrer que
ESn2=σ2=Var(Y)et lim
n→+∞Sn2=σ2.
MÉTHODE
Simuler N v.a.(Xn)1≤n≤N i.i.d. de même loi que X . Poser :
ˆ σN=
v u u t
1 N−1
N
X
i=1
(f(Xi)−µˆN)2.
M
ÉTHODE DEM
ONTEC
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 = 1
N
N
X
i=1
f(Xi) = f(X1) +. . .+f(XN)
N ,
ˆ σN=
v u u t
1 N−1
N
X
i=1
(f(Xi)−µˆN)2.
3 Erreur donnée par intervalle de confiance avec niveau de confianceα
Iα,N =
ˆ
µN−cα σˆN
√N,µˆN+cα σˆN
√N
.
L
OI EXPONENTIELLE(2) (
ESPÉRANCE1/2)
L
OI EXPONENTIELLE(2) (
DÉCROISSANCE EN1/ √
N )
P
ARETO(1,5) (
ESPÉRANCE3,
PAS DE VARIANCE)
P
ARETO(1,5) (
TAILLE INTERVALLE CONFIANCE)
M
ÉTHODE DEM
ONTEC
ARLO:
REMARQUES.
OBLIGATOIRE
DonnerµˆN sans intervalle de confiance n’a aucune valeur !
ERREUR
Pour diminuer la taille de IC,
diminuer le niveau de confianceα, augmenterN,
diminuerσ (−→réduction de variance).
AVANT: SIMULATION
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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é
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
T
HÉORÈME FONDAMENTAL DE LA SIMULATION.
THÉORÈME
Toute variable aléatoireX à valeurs dansRd peut être simulée sous la forme
X =
en loif(U1,U2, . . . ,Un) où
(U1,U2, . . . ,Un)est uniformément répartie sur[0,1]n, la fonctionf :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 imposantn=1 oun=d ou encoren≥1 donné.
REMARQUE:f est « explicite ».
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
S
UITES ALÉATOIRES.
Considérons une suite finiex :=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 ?
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...
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 lesnsorties successives d’un tel générateur seront considérées comme la donnée deU1(ω), . . . ,Un(ω)pour un ω ∈Ωoù lesUisont des v.a.r.Ui: (Ω,F,P)→[0,1]de loi uniforme.
Matlab permet de simuler la loi uniforme via la fonctionrand, qui renvoie un nombre « aléatoire » compris entre[0,1].
N
OMBRES PSEUDO-
ALÉATOIRES.
Intéressons nous au nombre
0,950129285147175.
C’est par défaut le premier nombre produit par la fonctionrandde 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.
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éthodespré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 desuites ou nombres pseudo-aléatoires.
Méthodesnon-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
LGORITHMES PAR CONGRUENCE(L
EHMER, 1950).
utilisent trois paramètres entiersa,cetmet une valeur initialex0, appeléseed;
créent une suite d’entiersyn+1=ayn+c modmcompris entre 0 etm;
ramènent les valeurs entre 0 et 1 :xn=yn/m.
Exemple :a=13,c =0,m=31 etx0=1. Suite desyn:
1 13 14 27 10 6 16 22 7 29 5 3. . .
Celle desxn:
0.0323, 0.4194, 0.4516, 0.8710, 0.3226, 0.1935, 0.5161, . . .
A
LGORITHMES PAR CONGRUENCE(L
EHMER, 1950).
Dans les années 60, sur IBM, Scientific Subroutine Package (SSP) : a=65539,c =0, etm=231.
Comme le codage se fait en 32-bits, l’arithmétique modulo 231 se fait très rapidement.
a=216+3 : multiplication para= shift + addition.
Problème:yk+2=6yk+1−9yk : très forte corrélation.
cf. graphique randssp
A
LGORITHMES PAR CONGRUENCE(L
EHMER, 1950).
À partir deMatlab 4, on a choisi :a=75=16807,c=0, m=231−1=2147483647.
Toujours disponible via
I s=rand(’seed’): fournit le paramètrex0de cette méthode.
I rand(’seed’,s): impose à Matlab d’utiliser cet algorithme avec x0=s.
Périodicité grande :m−1.
Génére toutes les valeursk/maveck =1, . . . ,m, i.e.
[0,1] ≈ Dr ={k/m, 1≤k ≤m}
⊂ [0.00000000046566,0.99999999953434].
cf. graphique randmcg
A
LGORITHME PAR DÉFAUT.
À partir de laversion 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 s=rand(’state’): fournit le paramètrex0de cette méthode (vecteur de dimension 35).
I rand(’state’,s): impose à Matlab d’utiliser cet algorithme avecx0=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
LGORITHME« M
ERSENNET
WISTER».
Troisième algorithme implémenté sous Matlab (version 5 et plus).
Disponible via
I s=rand(’twister’): fournit le paramètrex0de cette méthode (vecteur de dimension 625).
I rand(’twister’,s): impose à Matlab d’utiliser cet algorithme avecx0=s.
Période de l’ordre de(219937−1)/2.
I
MPORTANCE DE LA RACINE.
REMARQUE
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
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
F
ONCTION DE RÉPARTITION.
DÉFINITION
Lafonction de répartitionde X , notée FX, est définie surRpar :
∀x ∈R, FX(x) =P(X ≤x).
PROPOSITION
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
x→−∞FX(x) =0et lim
x→+∞FX(x) =1.
4 FX est continue à droite et a une limite à gauche en tout point.
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.
EXEMPLE:LOI UNIFORME SUR[a,b]
X suit une loi uniforme sur[a,b]si sa densitéf est f(x) = 1
b−a1[a,b](x).
V.
A.
À DENSITÉ.
PROPOSITION
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).
EXEMPLE:LOI UNIFORME SUR[a,b]
SiX suit la loi uniforme sur[a,b], alors FX(x) =0 six ≤a,
FX(x) = x −a
b−a six ∈[a,b], FX(x) =1 pourx ≥b.
V.
A.
DISCRÈTES.
DÉFINITION
Une v.a. X estdiscrètesi elle ne prend qu’un nombre fini (ou dénombrable) de valeurs{xi ∈R, i ∈N}avec probabilité pi =P(X =xi)≥0. De plus
+∞
X
i=0
P(X =xi) =
+∞
X
i=0
pi =1.
REPRÉSENTATIONen tableau
X x0 x1 x2 x3 . . . (valeurs prises parX) P(X =xi) p0 p1 p2 p3 . . . (probabilité)
PROPOSITION
Si X est une v.a. discrète, FX est constante par morceaux.
E
XEMPLE:
DÉ À SIX FACES.
FONCTION DE RÉPARTITIONd’une v.a. de loi uniforme sur{1, . . . ,6}
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
M
ÉTHODE D’
INVERSION.
SiX est une v.a.r. alors la fonction de répartitionFX est définie par
∀x ∈R, FX(x) =P(X ≤x).
CommeFX est croissante, on peut définir la fonctionpseudo-inverse qX deFX ainsi :
∀u∈(0,1), qX(u) =inf{x ∈R, FX(x)>u}.
THÉORÈME
SiU suit une loi uniforme sur[0,1],qX(U)suit la même loi queX. PROPOSITION
Si F est inversible, alors q =F−1.
E
XEMPLES.
SiU suit une loi uniforme sur[0,1], alors LOI UNIFORME SUR[a,b]
X =a+ (b−a)Usuit la loi uniforme sur[a,b].
LOI EXPONENTIELLE X =−1
λln(1−U)suit la loi exponentielle de paramètreλ.
LOI DECAUCHY
X =ctan(π(U−1/2))suit la loi de Cauchy de paramètrec.
LOI DEBERNOULLI
SiU <1−p,X =0, sinonX =1 : suit la loi de Bernoulli de paramètre
L
OI DISCRÈTE À SUPPORT FINI.
f u n c t i o n 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 ) ) r e a l i s = x ( i ) ; r e t u r n;
end
a = b ; b = b + p ( i + 1 ) ; end
r e a l i s = x ( n ) ;
L
OI UNIFORME.
f u n c t i o n 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) ; r e t u r n;
I
NVERSION:
DIMENSION QUELCONQUE.
Soit une v.a.X = (X1,X2)de loi connuePX surR2avec densitéf >0.
Fonction de répartition deX1: FX1(x1) =
Z x1
−∞
Z
R
f(x,y)dxdy. Soitq1son inverse.
Fonction de répartitionFXX1=x1
2 de la loi conditionnelle deX2sachant X1=x1:
FXX1=x1
2 (x2) = Rx2
−∞f(x1,y)dy R+∞
−∞ f(x1,y)dy. Inverse :q2.
MÉTHODE
Si U1et U2sont deux v.a. uniformes sur[0,1]indépendantes, alors X =q (U ), X =q (q (U ),U ).
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
L
OI BINOMIALE.
DÉFINITION
Une v.a. X à valeurs entières comprises entre 1 et N suit uneloi binômialede paramètres N∈N∗et p ∈[0,1]si :
∀k =1, . . . ,N, P(X =k) =CNkpk(1−p)N−k. PROPOSITION
Soient Ui, i=1, . . . ,N des v.a. uniformes sur[0,1]indépendantes.
Soit X le nombre des Ui inférieures à p∈[0,1], i.e.X =
N
X
i=1
1Ui<p. Alors X suit une loi binomiale de paramètres N et p.
MÉTHODE
SimulerN v.a. de BernoulliXi et en faire la somme.
L
OI GÉOMÉTRIQUE.
DÉFINITION
Une v.a. X à valeurs entières strictement positives suit uneloi géométriquede paramètre p∈]0,1[si :
∀n≥1, P(X =n) =p(1−p)n−1. QUELQUES RÉSULTATS:
E(X) = 1p, Var(X) = 1−pp2 . P(X ≥k) = (1−p)k−1. PILE 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 ap% de chances de sortir).
L
OI DEP
OISSON.
DÉFINITION
Une v.a. X à valeurs entières positives suit uneloi de Poissonde paramètreλ >0si :
∀n≥0, P(X =n) =e−λλn n!. MOMENTS:E(X) =Var(X) =λ.
PROPOSITION
Soit(En)n∈Nv.a. i.i.d. exponentielles de paramètreλ. Alors
P(E1+. . .+En≤1<E1+. . .+En+1) =e−λλn n!.
L
OI DEP
OISSON.
DÉFINITION
Une v.a. X à valeurs entières positives suit uneloi de Poissonde paramètreλ >0si :
∀n≥0, P(X =n) =e−λλn n!. MOMENTS: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λ.
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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é
Q
UELLES VÉRIFICATIONS?
DEUX TYPESde vérifications :
histogramme normalisé contre densité,
fonctions de répartition empirique contre théorique.
Dans les deux cas, il faut d’abord simuler ungrand nombre de foisla loi en question. Pourn∈N∗, on obtient un vecteur(x1, . . . ,xn)qui contientnréalisations de la loi deX.
H
ISTOGRAMME VS.
DENSITÉ.
HISTOGRAMME NORMALISÉ
1 regrouper lesntermes dans un certain nombremde classes (avecm<n). Dans chaque classermréalisations deX avec X
m
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 lesmcentres desm classes, et mettre une colonne de hauteurrm/(n(Cm+1−Cm)).
CONVERGENCE VERS LA DENSITÉ rm
n(Cm+1−Cm) −→
n→+∞
1
Cm+1−CmP(X ∈[Cm,Cm+1[).
H
ISTOGRAMME VS.
DENSITÉ.
CONVERGENCE VERS LA DENSITÉ rm
n(Cm+1−Cm) −→
n→+∞
1
Cm+1−CmP(X ∈[Cm,Cm+1[).
CONCLUSION
SiX discrète avecCk espacés de 1, approximativementpk. SiX à densité, alors
P(X ∈[Cm,Cm+1[) Cm+1−Cm
= 1
Cm+1−Cm
Z Cm+1
Cm
f(t)dt −→
Cm+1−Cm→0f(Cm).
R
ÉPARTITION EMPIRIQUE VS.
THÉORIQUE.
FONCTION DE RÉPARTITION EMPIRIQUE
∀t∈R, Fn(t) = 1 n
n
X
i=1
1]−∞,t](xi).
THÉORÈME DEKOLMOGOROV-SMIRNOV
∀t∈R, lim
n→+∞Fn(t) =FX(t).
E
XEMPLE SUR LA LOI EXPONENTIELLE(2).
n=100
0 1 2 3 4 5 6
0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
Histogramme vs densite
!1 0 1 2 3 4 5
!0.2 0.0 0.2 0.4 0.6 0.8 1.0
Fcts de repartition
empirique theorique
E
XEMPLE SUR LA LOI EXPONENTIELLE(2).
n=10000
0 1 2 3 4 5 6 7 8
0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0
Histogramme vs densite
!1 0 1 2 3 4 5 6 7
!0.2 0.0 0.2 0.4 0.6 0.8 1.0
Fcts de repartition
empirique theorique
E
XEMPLE SUR LA LOI DEB
ERNOULLI(0.3).
n=100
!0.5 0.0 0.5 1.0 1.5 2.0
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
Histogramme
!1.0 !0.5 0.0 0.5 1.0 1.5 2.0
!0.2 0.0 0.2 0.4 0.6 0.8 1.0
Fcts de repartition
empirique theorique
E
XEMPLE SUR LA LOI DEB
ERNOULLI(0.3).
n=10000
!0.5 0.0 0.5 1.0 1.5 2.0
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7
Histogramme
!1.0 !0.5 0.0 0.5 1.0 1.5 2.0
!0.2 0.0 0.2 0.4 0.6 0.8 1.0
Fcts de repartition
empirique theorique
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
M
ÉTHODE DE REJET.
On veut simuler une v.a. de densitéf, et il existe une densitég simulable facilementet uneconstantek ≥1telle que
∀x ∈R, f(x)≤kg(x).
Soitα(x) = f(x) kg(x). PROPOSITION
Soit(Xi)i≥1une suite de v.a. i.i.d. de densité g, et(Ui)i≥1une 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 .
M
ÉTHODE DE REJET.
MÉTHODE
Soit(X1,U1)un couple de v.a. indépendantes telles que X1suive la loi de densité g et U1suive une loi uniforme sur[0,1]. Si U1≤α(U1), on pose X =X1.
Sinon on rejette X1et on recommence en générant une suite
(Xn,Un)n≥2de v.a. indépendantes de même loi que(X1,U1)jusqu’à l’instant p où Up≤α(Xp). On pose alors X =Xp.
REMARQUES
on n’a pas besoin de connaîtreF, niF−1. elle s’étend àRd, à des lois discrètes, etc.
M
ÉTHODE DE REJET:
VITESSE.
Calcul de la probabilité d’acceptation :
p=P(U ≤α(X)) = 1 k.
DoncT a pour distribution uneloi géométrique de paramètrep.En moyenne, on doit rejeterk =1/p fois avant d’accepter la valeur.
Ainsi il faut choisirg telle que
k =max f
g
soit la plus petite possible.
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
L
OI NORMALE:
MÉTHODE POLAIRE.
PROPOSITION
SiY ∼ N(µ, σ2), alorsX = (Y −µ)/σ∼ N(0,1).
Pour simulerX (etY)
simuler deux lois uniformesUetV sur[0,1]; poser
X =√
−2 lnUcos(2πV), Y =√
−2 lnUsin(2πV).
PROPOSITION
X et Y sont deux v.a. normales centrées réduites indépendantes.
Ou utiliser sous Matlabrandn(n,m).
L
OI NORMALE:
MÉTHODE POLAIRE.
Pour simulerX (etY)
simuler deux lois uniformesUetV sur[0,1]; poser
X =√
−2 lnUcos(2πV), Y =√
−2 lnUsin(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 ’) y l a b e l( ’ E f f e c t i f s ’) ; x l a b e l( ’ V a l e u r s ’) ; [ 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
L
OI NORMALE:
MÉTHODE POLAIRE.
L
OI NORMALE:
MÉTHODE POLAIRE.
L
OI NORMALE:
MÉTHODE POLAIRE-
REJET.
PROPOSITION
(X,Y) = (ρcos(θ), ρsin(θ))suit uneloi 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éu7→2u1[0,1](u),−4 ln(ρ)exponentielle de paramètre 1/2,
θuniforme sur[0,2π].
L
OI UNIFORME SUR LE DISQUE.
V
ECTEUR GAUSSIEN.
PROPOSITION 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éatoireX = Γ1/2Y+mest gaussien de moyenne m et de matrice de covarianceΓ.
SiY est un vecteur gaussien de loiN(0,Idn), ses coordonnées sont i.i.d. de loiN(0,1). Ainsi on peut simuler une réalisation deY en simulantnréalisations indépendantesY1(ω), . . . ,Yn(ω)de loiN(0,1).
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
D
EUX EXEMPLES.
EXEMPLE THÉORIQUE.Calculerθ=E(e5Z) =e52/2avecZ ∼ N(0,1) variance théorique :σ2=e50−e25≈7×1010.
valeur exacte : 268337.
nombre tirages :N=500000.
valeur estimée :θ=221741.
Intervalle de confiance :I= [−65186,508668].
D
EUX EXEMPLES.
EXEMPLE PLUS CONCRET.CallC=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].
PutP =E((3−5e(Z−1/2))+)etC−P=2.
valeur exacte : 0,71.
valeur estimée : 0,70.
Intervalle de confiance :I= [0,64;0,76].
Contrôle:C=2+P.
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).
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
V
ARIABLES ANTITHÉTIQUES.
BUT :calculerθ=E(Y) =E(f(X)).
DEUX V.A.Y1etY2de même loi queY. E(Y) = 12(E(Y1) +E(Y2)) =E
Y1+Y2 2
; Var
Y1+Y2 2
= Var(Y1)+Var(Y2)+2Cov(Y1,Y2)
4 ;
siY1etY2décorrélées (ou indépendantes), Var
Y1+Y2 2
= Var(Y)
2 ;
si Cov(Y1,Y2)<0, alors Var
Y1+Y2
2
< Var(Y) 2 .
QUESTION:comment obtenirY1etY2de même loi queY avec Cov(Y1,Y2)<0?
V
ARIABLES ANTITHÉTIQUES UNIFORMES.
HYPOTHÈSE:Y =g(U)oùUuniforme sur[0,1]. ALGORITHME CLASSIQUEavec échantillon de taille 2n.
MÉTHODE de i=1 à 2n générerUi
définirYi =g(Ui) fin
définirθˆ2n=Y2n= 1 2n
2n
X
i=1
Yi etσˆ2n2 = 1 2n−1
2n
X
i=1
(Yi−θˆ2n)2
définirCI = [ˆθ2n−cα√σˆ2n
2n,θˆ2n+cα√ˆσ2n
2n]
V
ARIABLES ANTITHÉTIQUES UNIFORMES.
HYPOTHÈSE:Y =g(U) avecU uniforme sur[0,1].
ALGORITHMEavec échantillon de taille 2n.
MÉTHODE de i=1 à 2n générerUi
définirYi =g(1−Ui) fin
définirθˆ2n=Y2n= 1 2n
2n
X
i=1
Yi etσˆ2n2 = 1 2n−1
2n
X
i=1
(Yi−θˆ2n)2
définirCI = [ˆθ2n−cα σˆ2n
√
2n,θˆ2n+cα ˆσ2n
√ 2n]
V
ARIABLES ANTITHÉTIQUES UNIFORMES.
HYPOTHÈSE:Y =g(U) avecU uniforme sur[0,1].
ALGORITHME MÉLANGÉ avec échantillon de taillen.
MÉTHODE de i=1 à n générerUi
définirYi =g(Ui),Y˜i =g(1−Ui)etZi = Yi+ ˜Yi fin 2
définirθˆn,a=Zn= 1 n
n
X
i=1
Zietσˆn2= 1 n−1
n
X
i=1
(Zi−θˆn)2
définirCI = [ˆθn,a−cα σˆn
√n,θˆn,a+cασˆn
√n]
V
ARIABLES ANTITHÉTIQUES UNIFORMES.
HYPOTHÈSE:Y =g(U) avecU uniforme sur[0,1].
DIFFÉRENTS RÉSULTATS: θˆ2n =Y2n= 2n1 P2n
i=1Yi; θˆn,a=Zn= 1nPn
i=1Zi. COMPARAISON DES VARIANCES
Var(ˆθ2n) =Var
P2n i=1Yi 2n
!
= Var(Y) 2n Var(ˆθn,a) =Var(ˆθ2n) + Cov(Y,Y˜)
2n .
Ainsi
Var(ˆθn,a)<Var(ˆθ2n)⇐⇒Cov(g(U),g(1−U))<0.
V
ARIABLES ANTITHÉTIQUES UNIFORMES.
HYPOTHÈSE:Y =g(U) avecU uniforme sur[0,1].
THÉORÈME
Sig est une fonction monotone, alors Cov(g(U),g(1−U))<0.
CONSÉQUENCE
Méthode d’inversion :g=f(FX−1)est monotone sif l’est.
V
ARIABLES ANTITHÉTIQUES:
GÉNÉRALISATION.
HYPOTHÈSE SURX :il existeat.q.X eta−X aient la même loi.
EXEMPLES
Lois normalesN(µ, σ2):a=2µ.
Lois de Laplace de paramètreλ >0 :f(x) = λ2exp(−λ|x|).a=0.
MÉTHODE de i=1 à n générerXi
définirYi =g(Xi),Y˜i =g(a−Xi)etZi = Yi+ ˜Yi fin 2
définirθˆn,a=Zn= 1 n
n
X
i=1
Zietσˆn2= 1 n−1
n
X
i=1
(Zi−θˆn)2
définirCI = [ˆθn,a−cα σˆn
√n,θˆn,a+cασˆn
√n]
E
XEMPLE:
OPTIONK
NOCK-I
N.
CONTRAT FINANCIERde payoffh(ST) =max(0,ST −K)1ST>B. MODÈLEBLACK-SCHOLESST =S0exp((r −σ2/2)T +σ√
T X, X ∼ N(0,1).
PRIX DU CONTRAT
C =e−rTE(h(ST)) =e−rTE max(0,ST −K)1ST>B .
JEU DE PARAMÈTRESS0=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).
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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é
V
ARIABLES DE CONTRÔLE.
BUT :calculerθ=E(Y) =E(f(X)).
AJOUT d’une variableZ facilement simulable ;
E(Z)connue ou facilement calculable (variance « petite »).
DEUX CALCULS POSSIBLES DEθ:
par méthode de Monte Carlo standard,
en posantWc =Y +c(Z−E(Z))et en calculantE(Wc)par Monte Carlo (c : paramètre constant fixé).
QUESTION:Var(Wc)<Var(Y)?
V
ARIABLES DE CONTRÔLE.
CALCUL DE LA VARIANCE:
Var(Wc) =Var(Y) +c2×Var(Z) +2c×Cov(Y,Z).
CHOIX OPTIMAL DEc :c∗ =−Cov(Y,Z)
Var(Z) ; Var(Wc∗) =Var(Y)−Cov(Y,Z)2
Var(Z) ; Var(Wc∗)<Var(Y)⇔Cov(Y,Z)<0; Z :variable de contrôledeY.
ALGORITHME:
θˆN,c∗ = 1 N
N
X
i=1
(Yi+c∗(Zi−E(Z)))≈θ.
MMC
AVEC VARIABLE DE CONTRÔLE.
MÉTHODE
ÉTAPE1 :ppetit→détermine une valeur approchée de c∗. Simuler p v.a.(Yn)1≤n≤pet p v.a.(Zn)1≤n≤p.
Poser :
Eb(Z) = 1 p
p
X
i=1
Zi, Eb(Y) = 1 p
p
X
i=1
Yi,
Vard(Z) = 1 p−1
p
X
j=1
(Zj−Eb(Z))2,
Cov(Yd ,Z) = 1 p−1
p
X
j=1
(Yi−Eb(Y))(Zj−Eb(Z))).
Cov
MMC
AVEC VARIABLE DE CONTRÔLE.
MÉTHODE
ÉTAPE1 :ppetit→détermine une valeur approchée de c∗. ÉTAPE2 :N grand.
Simuler N v.a.(Yn)1≤n≤N et N v.a.(Zn)1≤n≤N. Poser :
θb= 1 N
N
X
i=1
(Yi +cb∗(Zi−E(Zb )))≈θ.
U
N EXEMPLE.
ÉNONCÉ
Calculerθ=E(e(U+V)2)avecU etV de loi uniforme sur[0,1].
Y =e(U+V)2.
Variables de contrôle :Z1=U+V,Z2= (U+V)2ou encore Z3=exp(U+V).
L
E PROGRAMME(
CALCUL DEc
∗).
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 _ e s t 1=−a1 ( 1 , 2 ) / a1 ( 2 , 2 ) c _ e s t 2=−a2 ( 1 , 2 ) / a2 ( 2 , 2 ) c _ e s t 3=−a3 ( 1 , 2 ) / a3 ( 2 , 2 )
Valeurs obtenues : c est1 = - 11.088954 c est2 = - 5.7049857 c est3 = - 3.9928724
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 _ e s t 1∗( z1−m1 ) ; w2=y+ c _ e s t 2∗( z2−m2 ) ; w3=y+ c _ e s t 3∗( 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 ) ]
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) ;
moyenne variance b0 4.9317203 34.564778 b1 4.9317203 13.840552 b2 4.9317203 7.7461357 b3 4.9317203 7.2175877 CI =[4.8545742,5.0088663].
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
M
ONTEC
ARLO CONDITIONNEL.
IDÉE:au lieu de calculerθ=E(Y) =E(f(X)), pourZ v.a.
poserV =E(Y|Z) =g(Z)v.a. ; etθ=E(V).
CONDITIONS:
Z facilement simulable ; V facilement calculable.
CALCULS DE LA VARIANCE:Var(Y|Z)est une v.a. positive : Var(Y|Z) =E
h
(Y −E(Y|Z))2 Zi
, et commeY −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)).
P
LAN1 MÉTHODE DEMONTECARLO
2 PROBLÈ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
É
VÉNEMENTS RARES.
Technique utilisée beaucoup pour
θ=P(X ≤seuil) =E(1X≤seuil),
quand l’occurence deX ≤seuil est très petite.
EXEMPLES.
Catastrophes climatiques, ferroviaires, aériennes, etc.
Faillites de grosses entreprises, d’états, etc.
Cracks boursiers importants
BUT :mesurer les risques de portefeuille, opérationnels, etc.
(obligation légale pour les banques ou les assurances).
E
XEMPLE.
X suit une loi normale de paramètres 0 et 1
θ=P(X ≤ −10) =E(1X≤−10).
MONTE-CARLO CLASSIQUE.
Nombre de tiragesN variant de 1000 à 10000000.
Valeur estimée : 0.
CONCLUSION ERRONÉE:θ=0.
VALEUR EXACTE:θ=7.6199×10−24.
Nombre de tirages nécessairesde l’ordre de 1025: impossible !
É
CHANTILLONNAGE PRÉFÉRENTIEL:
PRINCIPE.
Changer la loi.Soientφla densité deX etψune autre densité telle queψ(x)6=0 siφ(x)6=0. Alors
θ = E(f(X)) = Z
f(x)φ(x)dx = Z
f(x)φ(x)
ψ(x)ψ(x)dx
= E(h(Y)), avech(x) =f(x)φ(x)
ψ(x) etY ∼ψ.
DÉFINITION :g est unefonction d’importance.
QUESTION:comment choisirg?
R
ETOUR SUR L’
EXEMPLE.
X ∼ N(0,1)etθ=P(X ≤ −10):forcerles tirages deY à être aux alentours de -10. DoncY ∼ N(−10,1).
REMARQUE
SiY ∼ N(µ, σ2), alorsP(Y ≤µ) =1/2.
θ = P(X ≤ −10) = Z
R
1x≤−10 1
√ 2π exp
−x2 2
= Z
R
1x≤−10
√1
2πexp
−x22
√1 2πexp
−(x+10)2 2
√1 2π exp
−(x +10)2 2
dx
= Z
R
1x≤−10exp
10x+ (−10)2/2 1
√2πexp
−(x+10)2 2
dx