320 likes | 552 Vues
Monte-Carlo meetodid 4. loeng. Lihtsa juhusliku suuruse genereerimine. Juhuslike suuruste genereerimine jaotusfunktsiooni pööramise meetodil. Lihtsa juhusliku suuruse (lõplik arv väärtuseid) genereerimine. P( Y = y i )= p i , i =1... k , . Näide 1 (Bernoulli jaotus): P(Y=“surm”) = 0,1
E N D
Monte-Carlo meetodid4. loeng Lihtsa juhusliku suuruse genereerimine. Juhuslike suuruste genereerimine jaotusfunktsiooni pööramise meetodil.
Lihtsa juhusliku suuruse (lõplik arv väärtuseid) genereerimine P(Y=yi)=pi, i=1...k, Näide 1 (Bernoulli jaotus): P(Y=“surm”) = 0,1 P(Y=“elus”) = 0,9
Lihtsa juhusliku suuruse (lõplik arv väärtuseid) genereerimine
Lihtsa juhusliku suuruse (lõplik arv väärtuseid) genereerimine P(“Mhmh”) = p1 P(“jaja”) = p2 p1 p1 p2 1 0 D2 D1 Ui U1 U2 U3 U1 Mhmh U2 Mhmh U3 jaja
Lihtsa juhusliku suuruse (lõplik arv väärtuseid) genereerimine D1 D2 Di p1+p2 p1 .... .... 1 0 p1 p2 pi Kui U sattub lõiku Di, siis genereeritakse juhuslik suurus yi
Binoomjaotuse modelleerimine • Soovime genereerida X ~ B(1/4, 3) (1-1/4)3 (1-1/4)3+ 3(1-1/4)2(1/4) 1 0 “0” “1” “2” “3”
Jaotusfunktsiooni pööramise meetod Jaotusfunktsiooni pöördfunktsioon
Jaotusfunktsiooni pööramise meetod Jaotusfunktsiooni pöördfunktsioon
Jaotusfunktsiooni pööramise meetod Olgu U~U(0,1). Juhusliku suuruse F-1(U) jaotusfunktsiooniks on
Näide. Eksponentjaotus. Eksponentjaotus parameetriga λ (EX= 1/λ): Jaotusfunktsioon F(x)
Kasutamine lambda=0.2 u=runif(10000) X=-log(1-u)/lambda hist(X)
Kasutamine lambda=0.2 u=runif(10000) X=-log(1-u)/lambda hist(X)
Ülesanne 1 f(x) = 2*x, kui 0<x<1, mujal 0 Kuidas genereerida antud jaotusest juhuslikke suuruseid?
Ülesanne 2 F(x) = x3, kui 0<x<1 Kuidas genereerida antud jaotusest juhuslikke suuruseid?