KESĐKLĐ DAĞILIMLARDAN RASGELE SAYI ÜRETME Trs Dönüşüm Yöntmi F dağılım fonksiyonuna sahip bir X rasgl dğişknin dağılımından sayı ürtmk için n çok kullanılan yöntmlrdn biri, F dağılım fonksiyonunun gnllştirilmiş trsi dnn F : (0,) R { } u F ( u ) = inf : F ( ) u fonksiyonuna dayalı X = F ( U ) dönüşümünü kullanmaktır. Burada U rasgl dğişkni (0,) aralığı üzrindki düzgün dağılıma, yani U ( 0, ) dağılımına sahiptir. F ( u) : u (0,) için F( F ( u)) u v F ( F( )) { } {( u, ) : F ( u) } = {( u, ) : F( ) u} olmak üzr P ( F ( U ) ) = P( U F( )) = F( ) dır. F (U ) yani F (U ) rasgl dğişkninin dağılım fonksiyonu F dir, dönüşümü il ortaya çıkan rasgl dğişkn X rasgl dğişkninin kndisidir. X = F ( U ) dönüşümü intgral dönüşümü olarak bilinmktdir. U ( 0, ) düzgün dağılımdan ürtiln sayılar intgral dönüşümü sonucunda X rasgl dğişknin dağılımından ürtilmiş sayılar olacaktır. Algoritma. U ( 0, ) dağılımından U ürtilir. X = F (U ) hsaplanır
Örnk X rasgl dğişkninin olasılık fonksiyonu X= f() 3 0. 0.5 0.3 olsun. Ksikli bir rasgl dğişkn olan X in fonksiyonu dağılım 0 0. F ( ) = 0.7,,,, < < 3 3 dır. F fonksiyonu, F, ( u) =, 3, 0 < u 0. 0. < u 0.7 0.7 < u < olmak üzr, X, 0 < U 0. = F ( U ) =, 0. < U 0.7 3, 0.7 < U < dönüşümü il ürtilbilir. X rasgl dğişknin dağılımından sayı
Bazı Ksikli Dağılımlardan Sayı Ürtm Bu kısımda uygulamada nçok karşılaşılan ksikli dağılımlardan rasgl sayıların nasıl ürtildiği örnklr üzrind açıklanacaktır. Örnk (Brnoulli Dağılımı) X ~ b(, p), Brnoulli dağılımına sahip rasgl dğişknin olasılık fonksiyonu, f ( X = ) = p ( p), = 0, X= 0 f() q p olmak üzr, dağılım fonksiyonu 0, < 0 F ( ) = q, 0 <, v 0, 0 < u q F ( u) =, q < u < biçiminddir. U ~ U ( 0, ) olmak üzr trs dönüşüm yöntmin gör b (, p) dağılımından rasgl sayı aşağıdaki algoritmaya gör ürtilir. Algoritma ) Eğr 0 U < q is X = 0 ) Eğr q < U < is X = 3
Örnk Đçind 3 kırmızı, siyah top bulunan bir kavanozdan iadli olarak 4 top çkilmsi v gln kırmızı topların sayısının gözlnmsi dnyinin simülasyonu:. Yöntm Đlk olarak yukarıdaki algoritma kullanılsın. X, top çkilmsi dnyind gln kırmızı topların sayısı olmak üzr X rasgl dğişknin dağılımı X ~ b(, p = 3 ) olacaktır. Bu 4 durumda, X rasgl dğişknin dağılımından 4 tan sayı ürtip bu sayıların toplamının bulunması bu dnyin simülasyonu olacaktır. Bu işlm aşağıdaki bilgisayar programı il yapılır. KT=0 FOR I= TO 4 q=/4 U=RND IF U >=q THEN KT=KT+ NEXT I PRINT "KT=", KT Bu programda U = RND ~ U ( 0, ) olmak üzr, U q = 4 koşulu sağlandığında X = olarak alınmıştır. U < p = 3 4 koşulu sağlandığında X = dğrini alacak şkildki bilgisayar programı da aşağıda vrilmiştir. KT=0 FOR I= TO 4 U=RND p=3/4 IF U <p THEN KT=KT+ NEXT I PRINT "X=", KT 4
.Yöntm X k : k.çkilişt ( k =,,3, 4 ) gln kırmızı topların sayısı olmak üzr, X = X + X + X 3 + X 4 ~ B( n = 4, p = 3/ 4) v n f p q n ( ) =,,,...,, = 0 n (Binom dağılımı) olacaktır. Bu durumda X r.d. nin o.f. X= f() 0 3 4 /56 /56 54/56 08/56 8/56 biçiminddir. Trs dönüşüm yöntmin gör bu dağılımdan rasgl sayı ürtck bilgisayar programı aşağıda vrilmiştir. P(0)=/56:P()=/56 P()=54/56:P(3)=08/56:P(4)=8/56 U=RND: T=0 FOR I=0 TO 4 T=T+P(I) IF U<T THEN PRINT "X=",I EXIT FOR END IF NEXT I 5
Gnl olarak ksikli dağılıma sahip bir X rasgl dğişkni için, < <... < n, p i = v f ( i ) = pi i = olmak üzr, trs dönüşüm yöntmin gör aşağıdaki algoritma il sayı ürtilir. Algoritma Eğr 0 U < p is X = alınır. j Eğr p U < p i = i j i = i is X = j alınır. Bu algoritma için bilgisayar programı aşağıda vrilmiştir. INPUT "N=",N DIM P(N), X(N) FOR I= TO N INPUT P(I), X(I) NEXT I U=RND: T=0 FOR I= TO N T=T+P(I) IF U<T THEN PRINT "X=",I EXIT FOR END IF NEXT I 6
Örnk (Gomtrik Dağılım) Đçind 3 kırmızı, siyah top bulunan bir kavanozdan siyah top glincy kadar topların çkilmsi v çkiliş sayısının gözlnmsi dnyinin simülasyonu:.yöntm X, top çkilmsi dnyind gln siyah topların sayısı olmak üzr X rasgl dğişknin dağılımı, X ~ b(, p = ) olacaktır. Bu dağılımından X = olana kadar 4 (U</4 olana kadar) sayı ürtilir (tkrarlanır) v tkrar sayısı hsaplanarak bu dğr yazdırılır. Bu düşüncy gör bilgisayar programı aşağıda vrilmiştir. TEKRAR=0 0 U=RND IF U</4 THEN GO TO 35 TEKRAR=TEKRAR+ GO TO 0 35 PRINT "X=", TEKRAR Dikkat dilirs bu programda birdn fazla RND fonksiyonu kullanılmıştır (birdn fazla rasgl sayı ürtilmiştir)..yöntm X, siyah top glincy kadar yapılan dnmlrin sayısı olmak üzr X rasgl dğişknin dağılımı p=/4 olan gomtrik dağılım olacaktır. X rasgl dğişknin olasılık fonksiyonu f ( ) = p( p), dır. Trs dönüşüm yöntmin gör bu dağılımdan sayı ürtck program aşağıdaki gibidir. 7
INPUT "P=",P I=0:T=0:U=RND 0 I=I+: T=T+(-P)^(I-)*P IF U<T THEN GO TO 35 GO TO 0 35 PRINT "X=",I 3.Yöntm Gomtrik dağılıma sahip X rasgl dğişknin dağılım fonksiyonu k P( X k + ) = p + qp + q p+... + q p = p( + q + q +... + q k ) k q = p q + = + q k olarak bulunur. Buna gör bilgisayar programı aşağıdaki gibidir. INPUT "P=",P q=-p: I=: U=RND 0 IF U< -q^(i) THEN 35 I=I+ GO TO 0 35 PRINT "X=",I 4.Yöntm U ~ U ( 0, ) olmak üzr, trs dönüşüm yöntmin gör k k - q U < q koşulu sağlandığında X durumda, + = k + dğrini almaktadır. Bu 8
k k + - q U < q k < k + -q U q k k + q U < q k k + q U < q, (- U ~ U ( 0, ) ) k logq log U < ( k + ) logq logu log q k < k +, (logq < 0) olacağından dnm sayısı k = INT ( LOG( U ) / LOG( P)) + olarak bulunur. 4.yöntmd hiçbir karşılaştırma işlmi olmadığından bu yöntml sayı ürtm işlmi daha hızlı olacaktır. Örnk (Poisson Dağılımı) λ paramtrli Poisson dağılımının olasılık fonksiyonu, λ λ f ( ) =, = 0,,,...! il vrilir. p = f ( X = ) olmak üzr λ p + = p + olacağından trs dönüşüm yöntmin gör bu dağılımdan sayı ürtck bilgisayar programı aşağıdaki gibidir. INPUT "LAMDA=",LAMDA U=RND: K=EXP(-LAMDA) X=0 IF U<K THEN PRINT "X=",X T=K: I=0 0 X=X+: K=K*LAMDA/X: T=T+K IF U>=T THEN GO TO 0 0 PRINT "X=",X 9
Örnk (Binom Dağılımı) Binom dağılımına sahip X rasgl dğişknin olasılık fonksiyonu n f p q n ( ) =,,,...,, = 0 n il vrilir. p = f ( X = ) olmak üzr p n p + = + p p olacağından, trs dönüşüm yöntmin gör bu dağılımdan sayı ürtck bilgisayar programı aşağıdaki gibidir. INPUT "N=",N INPUT "P=",P X=0: U=RND:TERIM=(-P)^N IF U < TERIM THEN PRINT "X=",X C=P/(-P):T=TERIM 0 X=X+ TERIM=TERIM*C*(N-X)/(X+) T=T+TERIM IF U >= T GO TO 0 ELSE PRINT "X=",X 0
Örnk (Ngatif Binom Dağılımı) Başarı olasılığı p olmak üzr, k başarı ld dincy kadar yapılan Brnoulli dnmlrinin sayısı X rasgl dğişkni olsun. X in olasılık fonksiyonu f p k k ( ) = ( p), = k, k +,... k dır..yöntm Bir başarı ld dilincy kadar yapılan dnm sayısının dağılımının gomtrik dağılım olduğu bilindiğindn Örnk 3.8 dki 4.yöntm il ld diln formül kullanılarak aşağıdaki program il bu dağılımdan sayı ürtilbilir. INPUT "P=",P INPUT "K=",K FOR I= TO K X=X+INT(LOG(RND)/LOG(-P))+ NEXT I PRINT "X=",X. Yöntm p f ( ) olmak üzr = p + =.( p) + k p bağıntısı kullanılarak, trs dönüşüm yöntmin gör bu dağılımdan sayı ürtilbilir.
Örnk (Hiprgomtrik Dağılım) Đçind m adt nsn bulunan v bu m adt nsndn p oranındakilri blli özlliğ sahip olan bir torbadan n tan nsnnin aynı anda çkilmsi dnyind, X rasgl dğişkninin blli özlliğ sahip olan nsnlrin sayısı olmak üzr X rasgl dğişkninin olasılık fonksiyonu m. p m m. p n f ( ) = m n, = 0,,..., m. p şklinddir. Bu dağılımdan sayı ürtmk için aşağıda vriln algoritma kullanılabilir. Algoritma ) m, n v p dğrlrini oku ) X=0 k=p.m s=m-k 3.adımdaki işlmlri n kz tkrarla v X dğrini vr 3) U=RND Eğr U < k is X = X +, k = k m Eğr U k is s = s m
Ayrışım (Dcomposition) Yöntmi Ayrışım yöntmind rasgl sayılar ürtilck olan dağılımın f olasılık yoğunluk fonksiyonu, kolayca sayılar ürtilbiln bazı olasılık yoğunluk fonksiyonların karması (mitur) olarak yazılmaktadır. i =,,..., n için p 0, n i= p i = v g, g,..., g n lr olasılık yoğunluk fonksiyonları olmak üzr, f ( ) = n i= p g ( ) i i i olduğunda, f nin dağılımından sayı ürtmk için algoritma aşağıdaki gibidir. ) i =,,..., n sayılarını sırasıyla p, p,..., pn olasılıkları il alan ksikli dağılımdan bir i sayısı ürtilir. ) Olasılık yoğunluk fonksiyonu g i olan dağılımdan bir sayı ürtilir v bu ürtiln sayı çıkılır (alınır). Y bir rasgl dğişkn, D Y bu rasgl dğişknin aldığı dğrlrin kümsi v h, Y nin olasılık yoğunluk fonksiyonu olmak üzr, olasılık yoğunluk fonksiyonlarının g : y ailsi yardımıyla, bir { } y D Y f ( ) = g ( ) h( y) dy D Y y biçimind yazıldığında f nin dağılımından sayı ürtmk için algoritma aşağıdaki gibidir. 3
) Olasılık yoğunluk fonksiyonu h olan dağılımdan bir Y sayısı ürtilir. ) Olasılık yoğunluk fonksiyonu g Y olan dağılımdan bir sayı ürtilir v bu ürtiln sayı alınır. Bu algoritma bir X rasgl dğişknin başka bir Y rasgl dğişknin gör koşullu dağılımının bilinmsi v bu koşullu dağılım il Y nin dağılımından sayı ürtilbilir olmasında da kullanılabilir. Y = y vrildiğind X in koşullu olasılık yoğunluk fonksiyonu g v Y nin marginal olasılık yoğunluk fonksiyonu h olmak üzr X in olasılık yoğunluk fonksiyonu, dır. f ( ) = g( y) h( y) dy Örnk r srbstlik drcli t -dağılımından sayı ürtilmk istnsin. Bilindiği gibi Z ~ N(0,), V ~ ℵ (r) v Z il V rasgl dğişknlri bağımsız olmak üzr, Z X = ~ t ( r ) V / r dır. Buna gör t (r ) dağılımından sayı ürtmk için standart normal dağılımdan bir Z sayısı v r srbstlik drcli kikar dağılımından bir V sayısı ürtilir v hsaplanır. Z V / r Şimdi t (r ) dağılımından ayrışım yöntmi il sayı ürtmy çalışalım. Hatırlanacağı gibi, Z X = V / r Y = V 4
gibi bir dönüşüm il tanımlı ortak olasılık yoğunluk fonksiyonu, X, Y rasgl dğişknlrinin f X, Y (, y) = π 0 r y r / y Γ( ) r r / y r y, < <, y > 0, d. y dır. Y nin marginal olasılık yoğunluk fonksiyonu h olmak üzr v f, (, y) g( y) h( y) X Y = Y ~ ℵ (r) olduğu gözönün alınırsa Y = y vrildiğind X in koşullu olasılık yoğunluk fonksiyonu, dır. g( y) = π r y r / y, < < Y = y vrildiğind X in koşullu dağılımı N ( µ = 0, σ = r / y) normal dağılımıdır. X in marginal olasılık yoğunluk fonksiyonu, 0 f ( ) = g( y) h( y) dy olmak üzr ayrışım yöntmin gör X in dağılımından yani r srbstlik drcli t -dağılımından sayı ürtmk için; ) r srbstlik drcli ki-kar dağılımından Y sayısı ürtilir. r ) µ = 0, σ = olan normal dağılımdan ürtiln sayı Y X olarak alınır. 5
Örnk Hipr üstl dağılıma sahip X rasgl dğişknin n olasılık yoğunluk fonksiyonu, p i = v p i 0 olmak üzr, i = f ) = i 0 n ( = pi θ i i θ, > 0, d. y şklinddir. Ayrışım yöntmindki algoritmaya bağlı olarak bu dağılımdan sayı ürtmk için aşağıdaki gibi bir BASIC programı kullanılabilir. INPUT N DIM P(N),TETA(N) FOR I = TO N INPUT TETA(I), P(I) NEXT I U=RND:T=0 FOR I = TO N T=T+P(I) IF U < T THEN X= -TETA(I)*LOG(RND) PRINT X EXIT FOR END IF NEXT I Örnk X rasgl dğişknin olasılık yoğunluk fonksiyonu 5 4 ( + ( ) ), 0 f ( ) = 0, d.y. olsun. f fonksiyonu 6
5 5 4 5 6 6 f ( ) = + ( ) = f ( ) + f ( ) şklind yazılabilir. Burada,, 0 f( ) = 0, d.y. 5 4 ( ), 0 f ( ) = 0, d.y. dır. f y karşılık gln dağılım fonksiyonu 5 4 F ( ) = ( ) d = ( ) 0 5 olmak üzr, bu dağılımdan X = ( * U + ) / 5 + trs dönüşümü il sayı ürtilir (U ~ U ( 0, ) ). Algoritma ) 5/6 olasılıkla v /6 olasılıkla sayılarından birisi ürtilir. ) Eğr glmiş is f, glmiş is f dn bir sayı ürtilir. Đlgili BASIC dyimlri aşağıdaki gibidir. U=RND IF U<5/6 THEN X=*U ELSE X=(*U+)^/5+ PRINT "X=",X 7
Bazı Sürkli Dağılımlardan Sayı Ürtm Örnk (Cauchy Dağılımından sayı ürtm) Cauchy dağılımına sahip X ( X ~ C( α, β ) ) rasgl dğişkninin olasılık yoğunluk fonksiyonu f ( ) = α πβ + β, < < olmak üzr, dağılım fonksiyonu biçiminddir. α F ( ) = + arctan π β.yöntm Dağılım fonksiyonunun trsi, F (y) = β tan π y + α β = α + tan( πy) dır. Buna gör aşağıdaki program il bu dağılımdan sayı ürtilbilir. INPUT ALFA=,ALFA INPUT BETA=,BETA X=ALFA+BETA/TAN(3.4*RND) PRINT "X=",X 8
.Yöntm (Standart normal dağılım kullanarak) Z, Z ~ N ( 0, ) v Z, Z bağımsız rasgl dğişknlr olmak üzr Z Y = ~ C( α = 0, β = ) Z dır. X = β Y + α ~ C( α, β ) dönüşümü yardımıyla C( α, β ) dağılımından sayı ürtilbilir. 3.Yöntm (Düzgün dağılım kullanarak) Y, Y ~ U (-, ) v Y, Y bağımsız rasgl dğişknlr olmak üzr Y Y Y + < 4 is X = ~ C( α = 0, β = ) Y özlliğindn yararlanılarak bu dağılımdan sayı ürtilbilir. Örnk (Wibull Dağılımından sayı ürtm) Wibull dağılımına sahip X rasgl dğişknin olasılık yoğunluk fonksiyonu c f ( ) = θ θ 0 c θ c, > 0, d. il vrilir (θ > 0,c > 0). Dağılım fonksiyonu olmak üzr F ( ) = - F c θ ( y) = θ ( Log( y) )c dır. Trs dönüşüm yöntmi il bu dağılımdan sayı ürtilbilir. y 9
Örnk (Laplac Dağılımından sayı ürtm) Laplac dağılımına sahip X rasgl dğişknin olasılık yoğunluk fonksiyonu f ( ) = θ θ, - < < il vrilir. Dağılım fonksiyonu θ F( ) = θ,, < 0 0 biçiminddir. Tr dönüşüm yöntmin gör bu dağılımdan sayı ürtck bilgisayar programı aşağıda vrilmiştir. INPUT "TETA=", TETA IF RND < 0.5 THEN X=TETA*LOG(*RND) ELSE X=TETA*LOG(-*RND) PRINT "X=",X Örnk (Gnllştirilmiş Laplac dağılımı) Gnllştirilmiş Laplac dağılımına sahip X rasgl dğişknin olasılık yoğunluk fonksiyonu θ f ( ) =, - < < θ Γ + α biçiminddir ( θ > 0, α > 0 ). Bu dağılımın aşağıdaki özlliklri dikkat çkicidir. α 0
α için X ~ U(- θ, θ ) α = için X ~ N (0, σ = θ ) α = için Laplac (çift taraflı üstl) dağılımı Bu dağılımdan kabul-rd yöntmin gör sayı ürtmk için g( ) fonksiyonu aşağıdaki şkild sçilbilir. α için g( ) Normal dağılım α için g( ) Laplac dağılımı Örnk (Erlang Dağılımından sayı ürtm) Erlang dağılımına sahip X rasgl dğişknin olasılık yoğunluk fonksiyonu n N v β > 0 olmak üzr, n f ( ) = ( n )! β 0 n β, > 0, d.y. il vrilir ( X ~ Γ( α = n, β )). X, X,..., X n lr θ = β paramtrli bağımsız rasgl dğişknlr olmak üzr X = X + X +... + X n ~ Γ( α = n, β ) olduğundan, bu dağılımdan sayı ürtmk için aşağıdaki algoritma kullanılabilir. Algoritma ) i =,,..., n için Ui ~ U ( 0, ) sayıları ürtilir hsaplanır. n ) X = θ LOG( U i ) i=
Örnk (Ki-kar dağılımından sayı ürtm) Ki-kar dağılımına sahip bir X rasgl dğişkninin r dağılımının Γ( α =, β = ) olduğu gözönün alınarak, r sayısının dğrin gör aşağıdaki algoritma il dağılımdan sayı ürtilbilir. Algoritma Paramtrsi θ = olan üstl dağılımdan r tan X i sayıları ürtilir. Z standart normal dağılımdan ürtiln sayı olmak üzr r / X i i= r / ) r çift sayı is X = ) r tk sayı is X alınır. [ ] = i= X i + Z Örnk (F dağılımından sayı ürtm) X ~ χ r, Y dğişknlr olmak üzr ~ χ r X il Y bağımsız rasgl X / r F = ~ F( r, r ) Y / r dönüşümü kullanılarak F dağılımından sayı ürtilbilir.
3 Örnk (Lojistik dağılımından sayı ürtm) Lojistik dağılıma sahip X rasgl dğişknin olasılık yoğunluk fonksiyonu. + = < < -, ) ( b a b a b f biçimind vrilir. Dağılım fonksiyonu ) ( b a F + = olmak üzr ) log( ) ( = U b a U F il bu dağılımdan sayı ürtilbilir.