• Nie Znaleziono Wyników

Całkowanie metodą Monte Carlo

N/A
N/A
Protected

Academic year: 2021

Share "Całkowanie metodą Monte Carlo"

Copied!
14
0
0

Pełen tekst

(1)

Całkowanie metodą Monte Carlo

Plan wykładu:

1. Podstawowa metoda Monte Carlo

2. Metody MC o zwiększonej efektywności a) losowania ważonego

b) zmiennej kontrolnej c) losowania warstwowego d) obniżania krotności całki

(2)

Funkcja gęstości prawdopodobieństwa zmiennej losowej x.

Funkcja ta ma następujące własności:

Przy jej pomocy można określić

prawdopodobieństwo zdarzenia że zmienna x przyjmie wartość pomiędzy x a x+dx:

Dla danej funkcji gęstości prawdopodobieństwa można określić dystrybuantę rozkładu

która jest funkcją prawostronnie ciągłą i niemalejącą.

^

x2[a;b]

f (x) ¸ 0

Z

b a

f (x)dx = 1

P fx · x

i

· x + dxg = f (x)dx

P fx

1

· x · x

2

g = Z

b

a

f (x)dx = F (x

2

) ¡ F (x

1

)

Przykład. Rozkład normalny (Gaussa)

f (x) = 1 2 p

¼ exp µ

¡ (x ¡ ¹)

2

2

F (x) = Z

x

¡1

f (x

0

)dx

0

(3)

- wartość oczekiwana zmiennej losowej x

- wariancja zmiennej losowej x

- odchylenie standardowe

¾

2

(x) = hx

2

i ¡ hxi

2

¾

2

(x) = h[x ¡ hxi]

2

i Z

b

a

[x ¡ hxi]

2

dx

= Z

b a

£ x

2

¡ 2xhxi + hxi

2

¤

= Z

b a

x

2

f (x)dx ¡ 2hxi Z

b

a

xf (x)dx

+ hxi Z

b

a

f (x)dx

Wartość oczekiwana µ oraz odchylenie standardowe σ są parametrami funkcji gęstości prawdopodobieństwa f(x).

W podobny sposób możemy określić wartość

oczekiwaną funkcji, której argumentem jest zmienna losowa x o funkcji gęstości prawdopodobieństwa f(x)

i analogicznie jej wariancję

oraz odchylenie standardowe

hxi = E(x) = ¹(x) = Z

b

a

xf (x)dx

¾

2

(z) = hz

2

i ¡ hzi

2

¾(x) = p

hx

2

i ¡ hxi

2

¾(z) = p

hz

2

i ¡ hzi

2

hzi = ¹(z) =

Z

1

¡1

zg(z)dz = Z

b

a

z(x)f (x)dx

(4)

Jeśli ciąg liczb

stanowią zmienne losowe o funkcji gęstości prawdopodobieństwa f(x) to estymatorem wartości oczekiwanej µ(z) zmiennej losowej z(xi) jest średnia z próbki

z wariancją

Uwaga:

(N-1) w mianowniku wynika z faktu że średnią wyliczamy z N wartości z(xi) – znając jej wartość możemy wyliczyć

dowolną z(xi) dysponując N-1 pozostałymi wartościami. Liczba stopni swobody

zmniejsza się o 1. W praktyce, dla dużych N jedynkę można pominąć.

fx

i

g = fx

i

jn = 1; 2; : : : ; Ng

¹

z = 1 N

X

N i=1

z(x

i

)

s

2

(z) = 1 N ¡ 1

X

N i=1

[z(x

i

) ¡ ¹ z]

2

s

2

(z) = 1 N ¡ 1

X

N i=1

(z

i

¡ ¹ z)

2

= 1

N ¡ 1

µ X

N

i=1

z

i2

¡ 1 N

µ X

N

i=1

z

i

2

s = p

s

2

(z)

Miarą „rozrzutu” zmiennych losowych zi wokół wartości średniej jest odchylenie standardowe

Ale też jest zmienną losową, ponieważ konstruujemy ją ze zmiennych zi (każda z nich ma identyczną wariancję) . Jakie jest odchylenie standardowe średniej?

Do jego estymacji możemy użyć s(z)

¹ z

¾

2

(¹ z) = ¾

2

à 1 N

X

N i=1

z

i

!

= 1 N

2

X

N i=1

¾

2

(z) = 1

N ¾

2

(z)

s(¹ z) = s(z)

p N

(5)

5 Podstawowa metoda Monte Carlo

Interesuje nas wyznaczenie (a raczej estymacja) wartości oczekiwanej zmiennej losowej

która jest funkcją wektora zmiennych (losowych):

Rozkład prawdopodobieństwa zmiennej losowej z opisuje funkcja gęstości g(z)

a rozkład prawdopodobieństwa wektora x opisuje funkcja gęstości f(x)

x x x = [x

1

; x

2

; : : : ; x

m

] z = z(x x x)

Z

1

¡1

g(z(x x x))dz = 1

Przy takich założeniach, zgodnie z CTG

metodę Monte Carlo szacowania wartości całek w wersji podstawowej definiują wzory:

a) wartość całki

Uwaga: x – jest wektorem, którego składowe są niezależnymi zmiennymi losowymi o

określonych funkcjach gęstości prawdopodobieństwa

b) błąd oszacowania

Z

V

f (x x x)dx x x = 1

hzi =

Z

1

¡1

zg(z)dz = Z

V

z(x x x)f (x x x)dx x x

N

lim

!1

P 8 <

:

j¹ z ¡ hzij

¾(z)p N

· ¸ 9 =

; = 1 p 2¼

Z

¸

¡¸

e

¡u22

du

I = Z

V

z(x x x)f (x x x)dx x x ¼ 1 N

X

N i=1

z(x x x)

¾(I) =

sZ

V

(z ¡ hzi)

2

f (x x x)dx x x

¼ s(z)

p N

(6)

6 Zazwyczaj obszarem całkowania jest określony

podzbiór przestrzeni RM. W takim przypadku obliczaną całkę trzeba zapisać w nieco zmienionej postaci:

gdzie:

jest funkcją przynależności do zbioru

Kwadratura Monte Carlo (metoda orzeł-reszka)

Uwagi:

a) w powyższym przypadku zakładamy, że funkcja gęstości prawdopodobieństwa jest stała w obszarze Ω b) wydajność metody zależy od stosunku wielkości obszaru V i obszaru Ω.

1 11

V

(x x x)

1 11

V

(x x x) =

½ 1 dla x x x 2 V 0 dla x x x = 2 V I =

Z

V

z(x x x)f (x x x)dx x x = Z

­

1 11

V

(x x x)z(x x x)f (x x x)dx x x

V ½ ­

I = Z

V

z(x x x)dx x x = Z

­

1

V

(x x x)z(x x x)dx x x ¼ ­ N

X

N i=1

1

V

(x x x)z(x x x)

Przykład

Wyznaczyć pole powierzchni obiektu o nieregularnym kształcie.

S = ­ N

X

N i=1

1

V

= ­ n N S =

Z

V

1d

2

rrr = Z

­

1

V

d

2

rrr

(7)

7

I

trap

= h

5

X

n

i=0

w

i

X

n j=0

w

j

X

n k=0

w

k

X

n

l=0

w

l

X

n m=0

w

m

g(x

i

; x

j

; x

k

; x

l

; x

m

)

h = 1

n w

i;j;k;l;m

=

½

1

2

i; j; k; l; m = 0; n

1 i; j; k; l; m = 1; 2; : : : ; n ¡ 1

Przykład

Należy obliczyć numerycznie wartość całki

a) metoda trapezów

b) Kwadratura Monte Carlo

gdzie:

jest wektorem, którego składowe są zmiennymi losowymi

X X X = [X

1

; X

2

; X

3

; X

4

; X

5

] I

M C

= h

5

N

X

N i=1

g(X X X) I =

Z

1 0

dx

1

Z

1

0

dx

2

Z

1

0

dx

3

Z

1

0

dx

4

Z

1

0

dx

5

g(x

1

; x

2

; x

3

; x

4

; x

5

)

Z

1

0

f (y)dy = h

"

f (y

0

) + f (y

n

)

2 +

n

X

¡1 i=1

f (y

i

)

# y

0

= 0

y

n

= 1

(8)

8 Wykres błędu oszacowania wartości całki w zależności od liczby

węzłów (trapezy)/losowań (MC).

(9)

9 Przykład

Dzielnik napięcia powinien zapewniać tłumienie o wartości 0.5 z dokładnością 2%. Opory r1 i r2 mają rozrzuty produkcyjne które można reprezentować za pomocą niezależnych zmiennych

o funkcjach gęstości prawdopodobieństwa

Wyznaczyć estymatę uzysku produkcyjnego ´ , czyli średniego odsetka układów sprawnych.

Tłumienie napięciowe dzielnika:

k = r

1

r

1

+ r

2

Tłumienie jest realizacją zmiennej losowej:

Rozkład tej zmiennej opisuje fgp:

zależna od

Warunkiem sprawności układu (jednej z wielu realizowanych możliwości) jest :

Wykorzystujemy metodę MC do estymacji wartości oczekiwanej:

k jest funkcją wektora losowego:

k 2 V

V = [0:49; 0:51]

r

1

r

2

f

r1

(r

1

) f

r2

(r

2

)

k = r

1

r

1

+ r

2

f

k

(k) f

r1

(r

1

) f

r2

(r

2

)

´ =

Z

1

¡1

11 1

V

(k)f

k

(k)dk

rrr = [r

1

; r

2

]

T

(10)

10 dlatego uzysk produkcyjny można wyrazić

wzorem na średnią wartość funkcji przynależności:

gdzie:

jest iloczynem ze względu na niezależność zmiennych losowych r1 i r 2.

Estymatę uzysku można obliczać jako średnią arytmetyczną

gdzie:

są niezależnymi realizacjiami wektora losowego r

rrr

1

; rrr

2

rrr

3

; : : :

Algorytm wyznaczenia uzysku:

1) Wylosuj parę liczb: r1 i r2, zwiększ N o 1 2) Jeśli obliczone k mieści się w obszarze V

wówczas zwiększ Ns o 1

3) Uzysk oblicz jako wartość ułamka

Przykład.

Wyznaczyć minimalną liczbę N próbek wystarczającą do wyznaczenia estymaty uzysku z trzysigmowym błędem względnym:

Dla

±

=0.1%,1%,10%.

Obliczamy wariancję estymatora:

´ = N

s

N

± = 3¾

´^

^

´

^

´ = 1 N

X

N n=1

111

V

(k(rrr

n

))

¾

´2^

= 1

N (N ¡ 1)

µ X

N

n=1

¡ 11 1

V

(k(rrr

n

)) ¢

2

¡ 1 N

µ X

N

n=1

1 11

V

(k(rrr

n

))

2

= ´(1 ^ ¡ ^´) N ¡ 1

´ = Z

R2

111

V

(k(rrr))f

r

(rrr)dr

f

rrr

= f

r1

(r

1

)f

r2

(r

2

)

(11)

11

Błąd względny:

Przekształcając go można otrzymać wyrażenie na minimalną liczbę próbek potrzebną do

uzyskania wymaganej dokładności:

Rys. Zależność minimalnej liczby próbek od założnego uzysku

± = 3

s 1 ¡ ^´

(N ¡ 1)^ ´

N = 1 ¡ ^´

^

´

µ 3

±

2

Metody zwiększania efektywności metody Monte Carlo

Dokładność wyznaczenia całki metodą MC zależy od liczeby próbek N oraz wariancji zmiennej losowej:

Wydajność metody można zwiększyć ustalając N i dokonując takiej transformacji aby nowa zmienna losowa miała mniejszą wariancję.

I = Z

­

G(x x x)f (x x x)dx x x = Z

RM

111

V

(x x x)G(x x x)f (x x x)dx x x

z = 1 11

V

(x x x)G(x x x)

(12)

12 a) Metoda losowania ważonego

Zakładamy że jest fgp dodatnio określoną dla

Całkę estymujemy:

Zmienna losowa z ma taką samą wartość oczekiwaną jak zmienna losowa y oraz wariancję zależną od fgp:

Wariancję etsymatora całki można zmniejszyć odpowiednio dobierając fgp.

Najmniejszą wartość wariancja osiąga dla:

Jeżeli G(x) jest funkcją nieujemną, wówczas minimalna wariancja estymatora ważonego jest równa 0. Należałoby jednak w takim przypadku znać wartość całki w mianowniku. Zazwyczaj nie jest to możliwe, dlatego funkcję G(x) zastępuje się inną G1(x), której całka może być łatwo obliczona.

Minimalizacja wariancji w takim przypadku zależy od jakości zastosowanego przybliżenia.

x x x 2 V g

xxx

(x x x)

y = 111

V

G(x x x)f

xxx

=g

xxx

I = 1 N

X

N n=1

y(x x x

n

)

g

xxx

(x x x)

g

xxx

(x x x) = 11 1

V

jG(xxx)jf

xxx

(x x x) R

V

jG(xxx)jf

xxx

(x x x)dx x x

I = E(z) = Z

V

½

G(x x x) f

x

(x x x)

g

x

(x x x) g

x

(x x x)dx x x

¾

(13)

13 b) Metoda zmiennej kontrolnej.

Metoda polega na dekompozycji całki:

Gdzie:

jest aproksymacją funkcji G(x) umożliwiającą łatwe obliczenie pierwszego wyrazu po prawej stronie (analitycznie lub numerycznie).

Wariancja zmiennej losowej

ma znacznie mniejszą wariancję niż G(x).

c) Losowanie warstwowe

W metodzie tej obszar całkowania V dzieli się na K rozłącznych podobszarów:

Całkę I oblicza się jako sumę całek w podobszarach.

gdzie: k=1,2,3,...,K

Całki Ik można obliczać za pomocą podstawowej wersji metody MC

Próbki

są realizacjami wektora losowego x o fgp

G(x ^ x x)

fxxx

(k)n

jn = 1; 2; : : : ; N

k

g I =

Z

V

G(x ^ x x)f

xxx

dx x x + Z

V

h G(x x x) ¡ ^ G(x x x) i

f

xxx

dx x x

V

1

; V

2

; : : : ; V

k

I

k

= Z

Vk

G(x x x)f

xxx

(x x x)dx x x

= ¹(V

k

) Z

Vk

G(x x x)f

xxx

=¹(V

k

)dx x x

¹(V

k

) = Z

Vk

f

xxx

(x x x)dx x x

I ^

k

= ¹(V

k

) N

k

Nk

X

n=1

111

Vk

(x x x

(k)n

)G(x x x

(k)n

)

f

xxx;k

(x x x) = 111

Vk

f

xxx

(x x x)

¹(V

k

)

y = G(x x x) ¡ ^ G(x x x)

(14)

14 d) Metoda obniżania krotności całki

Obniżenia krotności całki można dokonać gdy jest możliwa dekompozycja wektora

oryginalnych zmiennych losowych:

oraz obszaru

że zachodzi

Zmienna losowa

ma zazwyczaj mniejszą wariancję niż G(x) co pozwala dość łatwo obliczyć całkę zewnętrzną.

Metoda jest skuteczna jeśli potrafimy dość dokładnie i szybko obliczyć całkę wewnętrzną (analitycznie lub numerycznie).

Metoda MC wymaga zastosowania generatora liczb pseudolosowych o zadanym rozkładzie gęstości prawdopodobieństwa. Generatory (a raczej ciągi generowanych liczb) muszą spełniać określone warunki (korelacja, okres, fgp itp.).

Zastosowania metody Monte Carlo

a) sumulacja komputerowa probabilistycznego modelu matematycznego/fizycznego

(kwantowa dyfuzyjna metoda MC).

b) Obliczanie wartości całek wielokrotnych

(obliczanie objętości, momentów bezwładności itp. obiektów o nieregularnym kształcie)

c) Optymalizacja (minimalizacja czasu

oczekiwania pacjenta w kolejce do lekarza) d) Rozwiązywanie równań różniczkowych (rów.

Poissona metodą błądzenia przypadkowego ze stałym lub zmiennym krokiem)

V = V

u

£ V

v

f

xxx

(x x x) = f

uuu

(u u u)f

vvv

(vvv) u u u 2 V

u

vvv 2 V

v

I =

Z

Vu

½ Z

Vv

G(x x x(u u u; vvv))f

v

(vvv)dvvv

¾

f

u

(u u u)du u u

z = Z

Vv

G(x x x(u u u; vvv))f

v

(vvv)dvvv

x x x

T

= [u u u

T

vvv

T

]

Cytaty

Powiązane dokumenty

Wykorzystuj¹c wzór na dyla- tacjê czasu (MT 06/06), stwierdzamy, ¿e jeœli po- ci¹g porusza siê z prêdkoœci¹ v, to czas zmie- rzony pomiêdzy zdarzeniami (wys³anie i

INFORMACJE O OBLICZANIU FUNKCJI PIERWOTNYCH 221 Mianownik jest iloczynem wielomianów pierwszego i drugiego stopnia.. Obliczymy całkę nieoznaczoną funkcji wymiernej z przykładu 9.4.18

Zakładamy, że obiekt którego moment bez- władności chcemy wyznaczyć jest jednorodny tzn.. W sprawozdaniu proszę: a) narysować kontur sześcianu i zaznaczyć na nim osie obrotu,

Jednak, ten wzór jest użyteczny, gdy mamy scałkować iloczyn dwu funkcji z których jedna znacząco się upraszcza, gdy się ją

Ponieważ w rozważanym przykładzie funkcją podcałkową jest pierwiastek kwadratowy, punktami podziału powinny być liczby, których pierwiastki kwadratowe są liczbami wymiernymi,

Jeżeli f jest nierozkładalny, to ma rozkład trywialny, załóżmy więc, że f jest rozkładalny.. Wówczas R[x] jest pierścieniem z

Wybór zadań: Grzegorz Graczyk 483033 Copyright © Gdańskie

Obliczyć wartość całki oznaczonej w przedziale &lt;0, 10&gt; funkcji y=x.*exp(-x).*sin(3*x); przy użyciu metody trapezów oraz metody Monte Carlo.. W przypadku metody Monte