• Aucun résultat trouvé

Simulation stochastique et méthode de Monte Carlo

N/A
N/A
Protected

Academic year: 2022

Partager "Simulation stochastique et méthode de Monte Carlo"

Copied!
56
0
0

Texte intégral

(1)

Simulation stochastique et m ´ethode de Monte Carlo

Afif Masmoudi

Laboratoire de probabilit ´es et statistique Universit ´e de Sfax

Journ ´ees de Statistique Math ´ematique et Data Science (JSMDS 2019)

(2)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(3)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(4)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(5)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(6)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(7)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(8)

M ´ethode de Monte Carlo

SoitX une v.a. et soitg :R→Rune fonction bor ´elienne telle queg(X)∈L1.

Probl `eme:Calculer num ´eriquement θ=E(g(X)) =

Z

g(x)f(x)dx avecf est la densit ´e de probabilit ´es deX.

(9)

M ´ethode de Monte Carlo

Exemples

En finance: Prix d’une option d’achat.

•Mod `ele de Black-Scholes:

c=e−rTE

S0e(r−σ2/2)T+σWT −K+ avec WT ∼ N(0,1).

En assurance:

•Prime pure:E(X);

•Prime exponentielle: 1clog E(ecX)

;

Calcul de la Value At Risk en finance: P(X < seuil).

(10)

M ´ethode de Monte Carlo

M ´ethode

Pour calculerθ=E(g(X)),

Simuler N v.a. (Xn)16n6N i.i.d. de m ˆeme loi queX, L’estimateur deθ:

θb= 1 N

N

X

i=1

g(Xi) = g(X1) +...+g(XN)

N .

θb −→p−s

N→+∞I:loi des grands nombre θb'I, pourNassez grand.

(11)

PROBL `EME: quelle est l’erreur d’estimation?

T.C.L√

N(θb−θ) −→d

N→+∞N(0, σ2); σ2=Var(g(X)).

(12)

M ´ethode de Monte Carlo

M ´ethode

Simuler N v.a. (Xn)16n6N i.i.d. de m ˆeme loi queX,

θb= 1 N

N

X

i=1

g(Xi) = g(X1) +...+g(XN)

N ,

N = v u u t

1 N−1

N

X

i=1

(g(Xi)−bθ)2. Intervalle de confiance :

θ∈

θb±1,96σbN

√N

.

(13)

Exemples.

Exemple 1 : Calculerθ1=Rπ

0 exsin(x)dx

1 la valeur th ´eorique : θ1= 12eπ+1=12.0703.

2 Valeur estim ´ee :θˆ1=12.1045 Exemple 2 :θ2=R R

x2+y2≤1 dx dy

1 la valeur th ´eorique : θ2=π=3.1415.

2 Valeur estim ´ee :θˆ2=3.144.

(14)

Simulation stochastique

Th ´eor `eme

(X1, ...,Xd) =

en loiΦ (U1, ...,Ud) avec

U1, ...,Ud sont ind ´ependantes et identiquement distribu ´ees selon la loi uniforme sur[0,1],

la fonctionΦest bor ´elienne et a ses points de discontinuit ´e dans un ensemble de mesure de Lebesgue nulle.

(15)

Simulation stochastique

Loi Gaussienne

SiY ∼ N(µ, σ2),alorsX = (Y −µ)/σ∼ N(0,1).

Pour simulerX etY

1 Simuler deux v.aU etV ind ´ependantes et uniformes sur [0,1];

2 Poser X =p

−2ln(U)cos(2πV), Y =p

−2ln(U)sin(2πV).

X etY sont deux v.a. ind ´ependantes et de m ˆeme loi normale centr ´ees r ´eduites.

(16)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(17)

Simulation stochastique

Simuler la loi uniforme consistera `a produire par un algorithme des suites finies de nombres que nous pouvons consid ´erer comme autant de r ´ealisations ind ´ependantes de variables al ´eatoires uniformes sur[0,1].

(18)

M ´ethode d’inversion

D ´efinition

La fonction de r ´epartition deX, not ´eeFX, est d ´efinie surRpar:

∀x ∈R, FX(x) =P(X 6x).

Proposition

SoitFX la fonction de r ´epartition d’une v.a.r. X. Alors:

FX ∈[0,1].

FX est croissante.

x→−∞lim FX(x) =0 et lim

x→+∞FX(x) =1.

FX est continue `a droite et a une limite `a gauche en tout point.

(19)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(20)

M ´ethode d’inversion

CommeFX est croissante, on peut d ´efinir la fonction pseudo-inverseqX deFX :

∀u∈(0,1), qX(u) = inf{x ∈R,FX(x)≥u}.

Th ´eor `eme

SiUsuit une loi uniforme sur[0,1], alorsqX(U)suit la m ˆeme loi queX.

M ´ethode d’inversion u ∼ U[0,1];

x =qX(u). : r ´ealisation deX

(21)

M ´ethode d’inversion

SiUsuit la loi uniforme sur[0,1], alors Loi uniforme sur [a,b]

X =a+ (b−a)U=qX(u) suit la loi uniforme sur[a,b].

Loi exponentielle

X =−1λln(1−U) =qX(u) suit la loi exponentielle de param `etreλ.

Loi de Cauchy

X =ctan(π(U−1/2)) =qX(u) suit la loi de Cauchy de param `etrec.

Loi de Bernoulli

siU<1−p,X =0,sinonX =1 suit la loi de Bernoulli de param `etrep ∈[0,1].

(22)

M ´ethode d’inversion

SoitX = (X1,X2)un couple al ´eatoire absolument continu de densit ´ef(x,y).

Fonction de r ´epartition deX1:

FX1(x1) = Z x1

−∞

Z

R

f(x,y)dy dx.

Fonction de r ´epartition deFXX1=x1

2 de la loi conditionnelle deX2 sachantX1=x1:

FXX1=x1

2 (x2) = Z x2

−∞

f(x1,y)dy Z +∞

−∞

f(x1,y)dy .

(23)

M ´ethode d’inversion

SiU1etU2sont deux v.a. uniformes sur[0,1]et ind ´ependantes, alors

X1=q1(U1), X2=q2(q1(U1),U2).

(24)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(25)

M ´ethode de rejet

Soitf une densit ´e de probabilit ´e. On suppose qu’ il existe une densit ´egsimulable facilement et une constantek ≥1 telles que

∀x ∈R,f(x)≤k g(x).

Soitα(x) = k g(x)f(x) . Proposition

Soit(Xi)i≥1une suite de v.a. i.i.d de m ˆeme densit ´eg, et soit (Ui)i≥1une suite de v.a. i.i.d de m ˆeme loi uniforme sur[0,1], ind ´ependante de la suite(Xi)i≥1.Si

T =inf {i≥1,Ui ≤α(Xi)}, (1) alors la variable al ´eatoireXT a pour densit ´ef.

(26)

M ´ethode de rejet

M ´ethode

Soit(X1,U1)un couple de v.a. ind ´ependantes telles queX1a pour densit ´eg etU1suit la loi uniforme sur[0,1]. Si

U1≤α(X1),on choisitX =X1.

Sinon on rejetteX1et on recommence en g ´en ´erant une suite (Xn,Un)n≥2de v.a. ind ´ependantes de m ˆeme loi que(X1,U1) jusqu’ `a l’instantpo `uUp≤α(Xp).On choisit alorsX =Xp. Remarques

1 On n’a pas besoin de connaitreFX, niFX−1;

2 Elle s’ ´etend `aRd, `a des lois discr `etes, etc.

(27)

M ´ethode de rejet : Vitesse.

Calcul de la probabilit ´e d’acceptation : p=P(U ≤α(X)) = 1

k.

DoncT suit la loi g ´eom ´etrique de param `etrep.En moyenne, on doit rejeterk =1/pfois avant d’accepter la valeur. Ainsi il faut choisirgtelle que

k =max f

g

.

(28)

Exemple

Exemple plus concret. Calculerθ=E((5e(Z−1/2)−3)+)avec Z ∼ N(0,1)

1 Valeur exacte : 2.71.

2 Nombre de tirages : N=1000.

3 Valeur estim ´ee :θ=2.83.

4 Intervalle de confiance : θ∈[2.42;3.24].

(29)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(30)

R ´eduction de la variance.

BUT :Calculerθ=E(Y) =E(g(X)).

Deux v.aY1etY2de m ˆeme loi queY.

1 E(Y) = 12(E(Y1) +E(Y2)) =E Y1+Y2

2

;

2 Var

Y1+Y2 2

= Var(Y1)+Var(Y42)+2Cov(Y1,Y2);

3 SiY1etY2d ´e-corr ´el ´ees ( ou ind ´ependantes ), alors Var

Y1+Y2

2

= Var(Y)2 ;

4 SiCov(Y1,Y2)<0,alorsVar

Y1+Y2 2

< Var(Y2 ).

(31)

R ´eduction de la variance.

θ= Z 1

0

g(x)dx =E(g(X)), avecX ∼ U[0,1]

X1,X2, ...,Xn: iid de m ˆeme loiU[0,1].

θˆ= 1 n

n

X

i=1

g(Xi)

(32)

R ´eduction de la variance.

θ= Z 1

0

g(1−x)dx =E(g(X))

= Z 1

0

g(x) +g(1−x)

2 dx

θ˜= 1 2n

n

X

i=1

(g(Xi) +g(1−Xi)) Var(˜θ)≤Var(ˆθ)

(33)

Variables anth ´etiques uniformes.

Approcherθ=E(g(U)) =R1

0 g(x)dx o `uU est uniforme sur [0,1].

Agorithme classique de Monte Carloavec ´echantillon de taille 2n.

M ´ethode De i =1 `a2n G ´en ´erer Ui D ´efinir Yi =g(Ui) Fin

D ´efinir θˆ= ¯Y2n= 2n1 P2n

i=1Yi etσˆ2= 2n−11 P2n

i=1(Yi−θ)ˆ2 D ´efinir I.C = [ˆθ−1.96ˆσ

2n,θˆ+1.96ˆσ

2n]

(34)

Variable anth ´etique uniforme.

Hypoth `eses:Y =g(U)avecU uniforme sur[0,1]. Diff ´erents r ´esultats:

θˆ= ¯Y = 1 2n

2n

X

i=1

Yi,

θ˜= ¯Zn= 1 n

n

X

i=1

Zi,avecZi =Yi+ ˜Yi,Y˜i =g(1−Ui).

(35)

R ´eduction de la variance.

Cas g ´en ´eral :

θ= Z

g(x)f(x)dx, o `uf est la densit ´e deX.

x →t(x) =y : changement de variable ( bijective ) pr ´eservant la loi deX;

Y =t(X)a la m ˆeme loi queX. θ=

Z

g(t−1(y))f(y)dy.

(36)

R ´eduction de la variance.

θ= 1 2

n

E(g(X)) +E(g(t−1(X))) o

,

o `uf est la densit ´e deX. θ˜= 1

2n

n

X

i=1

g(Xi) +g(t−1(Xi)) ,

Var(˜θ)≤Var(ˆθ)

(37)

EXEMPLE : OPTION KNOCK-IN

CONTRAT FINANCIER de PAYOFF g(ST) =max(0,ST −K)1ST>B. MOD ´ELE BLACK-SCHOLES ST =S0exp((r −σ2/2)T +σ√

T X),X ∼ N(0,1).

PRIX DU CONTRAT

C= e−rT E(g(ST)) = e−rTE(max(0,ST −K)1ST>B).

JEU DE PARAM ´ETERS

S0=2,K =1,B =2,5,r =0,1, σ=0.3,T =10,N=5000.

R ´ESULTATS OBTENUS

sans r ´eduction de variance: C=1.5720 (variance 5.4236), avec r ´eduction de variance: C=1.5543 (variance 1.5827).

(38)

Variable de contr ˆole

BUT:calculer θ=E(Y) =E(g(X)).

AJOUTd’une variableZ facilement simulable,

E(Z)connue ou facilement calculable (variance ”petite”).

Deux calculs possible deθ:

par la m ´ethode de Monte Carlo standard,

en posantWc =Y +c(Z −E(Z))et en calculantE(Wc) parMonte Carlo.

Question: Var(Wc)<Var(Y)?

(39)

Variable de contr ˆole

Var(Wc) =Var(Y) +c2Var(Z) +2cCov(Y,Z) Choix optimal dec:Var(Wc)<Var(Y)

On posec=−2Cov(Y,Z) Var(Z) c ∈(0,c),ˆc= c2

Var(Wˆc) =Var(Y)−3Cov(Y,Z)2 Var(Z) Z :variable de contr ˆole de Y.

Algorithme:

θˆN,ˆc = 1 N

N

X

i=1

(Yi+ ˆc(Zi −E(Z)))≈θ.

Probl `eme:Calcul deE(Z)?DeCov(Y,Z)?

(40)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(41)

MC avec variable de contr ˆole.

M ´ethode

ETAPE 1:´ p petit−→d ´eterminer une valeur approch ´ee deˆc.

Simuler p v.a.(Yn)1≤n≤petpv.a.(Zn)1≤n≤p. Poser :

Eˆ(Z) = 1 p

p

X

i=1

Zi,Eˆ(Y) = 1 p

p

X

i=1

Yi

Vˆar(Z) = 1 p−1

p

X

j=1

(Zj−Eˆ(Z))2,

Cˆov(Z,Y) = 1 p−1

p

X

i,j=1

(Zi−E(Zˆ ))(Yj−E(Yˆ )).

(42)

MC avec variable de contr ˆole.

M ´ethode

Calculerˆc=−Cov(Y,Z) Vˆar(Z) . ETAPE 2:´ N grand .

SimulerN v.a.(Yn)1≤n≤N etN v.a.(Zn)1≤n≤N. Poser :

θˆ= 1 N

N

X

i=1

(Yi+ ˆc(Zi−Eˆ(Z)))≈θ.

(43)

Exemple

Enonc ´e´

Calculerθ=E(e(U+V)2)avecU etV sont de loi uniforme sur [0,1].

Y = e(U+V)2.

Variables de contr ˆole :Z1=U+V,Z2= (U+V)2ou encoreZ3=exp(U+V).

(44)

Exemple

X suit une loi normale de param `etres 0 et 1, θ=P(X >4) =E(1X>4).

Monte-Carlo classique:

Nombre de tirageN variant de 1000 `a 10000000.

Valeur estim ´ee : 0.

Conclusion erron ´ee: θ=0.

Valeur exacte:θ=7.6199×10−24.

Nombre de tirages n ´ecessaires de l’ordre de 1025: impossible!

(45)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(46)

Echantillonnage pr ´ef ´erentiel ´

Soitf la densit ´e deX et soitψune autre densit ´e telle que Supp f ⊂Supp ψ.Alors

θ =E(g(X)) = Z

g(x)f(x)dx

= Z

g(x)f(x)

ψ(x)ψ(x)dx,

=E(h(Y)), avech(y) = g(y)f(y)

ψ(y) etY ∼ψ.

θˆ= N1 PN

i=1h(Yi)est l’estimateur deθ.

D ´efinition:hest une fonction d’importance.

Question: comment choisirψ?

(47)

Choix de la fonction d’importance.

Calcul de la variance:

Var(g(X)) = Z

g2(x)f(x)dx −θ2,

Var(h(Y)) =

Z g2(y)f2(y)

ψ(y) dy−θ2. Donc

Var(g(X))−Var(h(Y)) = Z

g2(x)

1− f(x) ψ(x)

f(x)dx.

(48)

Choix de la fonction d’importance.

PISTE:Siψ(x) = g(x)fθ(x),alors Var(h(Y)) =R

θgg(y)f2(y)f2(y)(y) dy −θ2=0!.Prendreψproche de g.f...

TH ´EOR `EME (RUBINSTEIN)

La densit ´eψqui minimise la variance est ψ(x) = |g(x)|f(x)

R|g(x)|f(x)dx.

(49)

Plan

1 M ´ethode de Monte Carlo

2 Simulation stochastique M ´ethode d’inversion M ´ethode de rejet

R ´eduction de la variance 3 MC avec variable de contr ˆole 4 Echantillonnage pr ´ef ´erentiel´ 5 Algorithme de Metropolis-Hastings

(50)

Algorithme de Metropolis-Hastings

Principe

Points Communs avec la m ´ethode d’acceptation-rejet

I f unedensit ´e cible, suivant laquelle on cherche `a simuler.

I q une densit ´e de proposition, selon laquelle on va

´echantillonner, en acceptant la proposition avec une probabilit ´e donn ´ee.

Diff ´erence

I q d ´epend de la valeur pr ´ec ´edente de l’ ´echantillon:

q() =q(.|x).

I Si la proposition `a partir dexnest refus ´ee, on pose xn+1=xn: l’ ´echantillon contiendra des valeurs r ´ep ´et ´ees.

I L’ ´echantillon correspond `a une trajectoire d’une chaˆıne de Markov.

(51)

Algorithme de Metropolis-Hastings

Algorithme de Metropolis-Hastings

Etant donn ´exn,

1. G ´en ´ereryn∼q(y |xn).

2. Choisir

xn+1=

yn avec probabilit ´eρ(xn,yn), xn avec probabilit ´e 1−ρ(xn,yn).

o `u

ρ(x,y) = min f(y)

f(x)

q(x |y) q(y |x),1

(52)

Algorithme de Metropolis-Hastings

Algorithme de Metropolis-Hastings

Th ´eor `eme

Les(xn)forment une chaˆıne de Markov. Siqest tel que cette chaˆıne est irr ´eductible, sa distribution limite estf.

I Toute loi de propositionqrendant la chaˆıne irr ´eductible convient.

I Contrairement `a l’algorithme d’acceptation-rejet, on a plus besoin d’ ´evaluermaxgf.

Le choix deqn’influe pas sur le fait qu’il y a convergence, mais il influe sur la vitesse de celle-ci. Certains choix sont privil ´egi ´es.

(53)

Algorithme de Metropolis-Hastings

Algorithme de Metropolis-Hastings ind ´ependant

I La proposition ne d ´epend pas de la valeur courante.

Etant donn ´exn,

1. G ´en ´ereryn∼q(.|xn).

2. Choisir

xn+1=

yn avec probabilit ´eρ(xn,yn), xn avec probabilit ´e 1−ρ(xn,yn).

o `u

ρ(x,y) = min f(y)

f(x)

q(x |y) q(y |x),1

(54)

Algorithme de Metropolis-Hastings

Algorithme de Metropolis-Hastings ind ´ependant

I tr `es ressemblant `a l’acceptation-rejet.

I pas de besoin d’ ´evaluermaxgf, mais on perd l’ind ´ependance entre les valeurs de l’ ´echantillon.

I La convergence sera d’autant plus rapide que la distributiongest proche def.

(55)

Algorithme de Metropolis-Hastings

Algorithme de Metropolis-Hastings par marche al ´eatoire

I La proposition suit une marche al ´eatoire sym ´etrique.

1. G ´en ´ereryn∼g(.|xn),g sym ´etrique.

2. Choisir

xn+1=

yn avec probabilit ´eρ(xn,yn), xn avec probabilit ´e 1−ρ(xn,yn).

o `u

ρ(x,y) = min f(y)

f(x),1

(56)

Algorithme de Metropolis-Hastings

Algorithme de Metropolis-Hastings par marche al ´eatoire

I la probabilit ´e d’acceptation ne d ´epend plus deg.

I approche tr `es simple qui peut ˆetre utilis ´ee quandf est tr `es mal connue, contrairement `a l’algorithme ind ´ependant:

espaces de grande dimension et /ou espaces d’objets discrets.

Références

Documents relatifs

On appelle communément méthode de Monte-Carlo toute méthode visant à estimer une quantité numérique, difficile à calculer explicitement, à l’aide de procédés probabilistes qui

On pousse tous les bits d'un cran (ou de plusieurs si on remplace 1 par n) vers la droite (on perd donc des données de ce côté), on complète par des zéros sur la gauche. On obtient

When only exchanging European contracts with the counterparty and the number of simulated trajectories is big enough, using a square Monte Carlo for CVA computation gives

Une méthode bien connue qui réduit l’erreur d’une estimation de Monte Carlo est la méthode d’échantillonnage suivant l’importance

Cela consiste à payer un montant C (convenu à l’avance entre vendeur et acheteur), pour qu’à une date fixée T (ici dans six mois), vous puissiez exercer votre droit d’acheter ou

De même, la fonction arc-cosinus, notée arccos — qui s’obtient sous M ATLAB par la commande « acos » —, est la fonction de [−1, 1] dans [0, π] dé- finie comme la

[r]

Habituellement, dans un langage à lasses, toute lasse représente un type (pour le système.