..4 EME 7 Rassal Sayı ve Rassal Değer Üretimi SİSTEM SİMÜLASYONU Rassal Sayı ve Rassal Değer Üretimi Ders Girdi Analizi bölümünde gözlemlerden elde edilen verilere en uygun dağılımı uydurmuştuk. Bu günkü derste bu dağılımlardan simulasyonda kullanmak için nasıl rassal değişken üretileceği üzerinde durulacaktır. Örneğin bir eczaneye müşteri gelişleri arasında geçen sürenin dağılımı Arena da EXPO( dk.) olarak belirlenmiş olsun. Bu dağılımdan simulasyonda kullanacağımız gelişler arası süreler nasıl üretilebilir? Rassal Sayı ve Rassal Değer Üretimi Rassal Sayı Üretimi 4 Herhangi bir dağılımdan rassal bir değişken üretebilmek için U(,) rassal değişkenleri gereklidir. Rassal sayılar, birbirinden bağımsız ve görülme olasılıkları eşit olan sayıların oluşturduğu dizilerdir. Bu sayı dizileri eşit olasılık gereği, Düzgün (Uniform) olasılık dağılımı gösterir. Bir simulasyonda kullanılan rassal sayılar, gerçekte rassal değildir! Tanım: Bir sözde rassal sayılar dizisi U(i), gerçek rassal sayılar dizisi U(,) deki bazı ilgili istatistiksel özelliklere sahip deterministik sayılar dizisidir.
..4 Rassal Sayıların Dağılımı Rassal Sayıların Özellikleri 6 Düzgün ve bağımsızlık özelliğinin iki sonucu; )(,) aralığı, eşit uzunlukta k sınıfa bölünürse, N; gözlemlerin toplam sayısı olmak üzere, her aralıktaki gözlemlerin beklenen değeri: B = N k ) Bir aralıkta bir değerin gözlemlenme olasılığı, elde edilen bir önceki değerden bağımsızdır. Rassal Sayı Üreteçlerinde İstenen Özellikler ) Orta Kare Yöntemi 7 8 Bu yöntemde i) (m) basamaklı ve genellikle tek olan bir sayı başlangıç değeri (seed) olarak alınır. ii) Bu sayının karesi alınarak bulunan sayının ortasındaki m kadar basamaklı sayı alınır. iii)alınan bu sayı rassal sayı olarak kaydedilir. iv)istenen sayıda rassal sayı elde edene dek tekrar edilir. ii, iii, iv
..4 Örnek Dezavantajları 9 X X... ( ) X ( ) X = 5497 (Seed) = 5497 = 79 ise = 7 U =.7 X = 7 = 4789 ise = 789 U =.789 )İlk sayı ve dizinin uzunluğu arasındaki periyodu önceden bilmek mümkün değildir. Çogu kez peryot kısadır. )Elde edien sayılar rassal olmayabilir. Yani dizide dejenerasyon (bozulma) söz konusu olabilir. ) Doğrusal Eşlik Üreteci (Linear Congruential Generator) Tanım: Bir LCG aşağıda verilen tekrarlanan ilişkiye göre belirlenen ve m- arasındaki ( R, R, ) tam sayılar dizisi tanımlar: ( ) R : dizinin başlangıc değeri a : sabit çarpan katsayısı c : artış miktarı m :modulus Ri + = ari + c mod m i =,,,... ( m, a, c, R ) tamsayı ve a >, c ³, > R i m - U i = R i m m, m > a, m > c m > R, LCG Örnek ( m = 8, a = 5, c =, R = 5) parametreli Doğrusal Eşlik Üreteç (LCG) düsünün. Tanımlanan diziden ilk 9 R i ve U i değerlerini hesaplayın. Mod operatorü: ê y ú z = y mod m Û z = y - mê ú ë mû ëx û, en büyük tamsayı x ê7 ú Örneğin, z = 7 mod Û z = 7 - ê = 7-5 = ú. ë û
..4 Çözüm R i+ = ( ar i + c)mod m i =,,, ( m= 8,a = 5,c =, R = 5) 4 Rassal Sayı Dizileri Rassal sayıların U i =R i /m olduğuna dikkat edin. Sayıların çevrim dizilerinde tekrarlanıp tekrarlanmadığına dikkat edin. Uzun cevrim periyoduna sahip a, m ve c belirlenmesi amaçlanır. R = (5R + ) mod8 = 6mod8 = U 4 5 6 7 8 9 R = (5R + ) mod8 = mod8 = U R = (5R R = 6 U + ) mod8 = 6mod8 = U R = (5R + ) mod8 = mod8 = U 5 R = 7 U 6 R = 4 U 7 R = 5 U 8 R = U 9 =.75 =.875 =.5 =.65 =.5 4 =.5 =.75 =. =.5 Örneğin R = gibi bir çekirdek (seed), bir rassal dizisinde başlangıç yerini tanımlar. Rassal sayı dizisi, farklı çekirdeklerle tanımlanan dizileri gösterir. Farklı görevlerde bağımsız rassal sayıları kullanabilmek için çevrimi ayrı dizilere bölmek isteriz. R 6 = 7 R 7 = 4 R 5 = 6 R = 5 = R 8 R 4 = R = R = R = Rassal Sayılar Tablosu Rassal Sayı Üreteçlerinin Testleri 5 6 Kolmogorov-Smirnov Testi Ki-Kare Testi Bagimsizlik testleri Koşu (run) testi Otokorlasyon (Autocorrelation) testi Poker testi 4
..4 Rassal Değer Üretimi Dağılımlardan Örneklem Alınması AMAÇ: Bir simulasyon modelinde girdi olarak kullanılmak üzere belirli bir dağılımdan örneklem üretilmesi Yaygın olarak kullanılan rassal değer üretim yöntemlerinin öğrenilmesi Ters dönüşüm tekniği Kabul-ret tekniği Tahmin edilemeyen yada belirsiz faaliyetlerin modellenmesinde istatistiksel dağılımlar kullanılır. Gerçek yaşam problemlerindeki gelişler arası süre, servis süreleri, talep vb. değişkenler genellikle tahmin edilemezdir. Bu tür değişkenler, belli bir istatistiksel dağılıma sahip rassal değişkenler olarak modellenebilir. Rassal Değer Üretme Teknikleri Rassal değer üretme tekniklerinin tümü [,] aralığında Düzgün dağılmış rassal sayıların elimizde mevcut olduğunu varsayar. Her bir R i rassal sayı için: Ters Dönüşüm Tekniği Üstel, Düzgün, Weibull ve deneysel sürekli dağılımların yanı sıra bir çok kesikli dağılımdan örneklem almaya uygun bir yöntemdir. Hesaplama yönünden basit ve direk bir yöntem olmasına karşın, her zaman etkin değildir. 5
..4 Ters Dönüsüm Tekniği (Devam) Tekniğin temel mantığı: r = F(x) birikimli dağılım fonksiyonu için [,] düzgün dağılımından r rassal sayısını üret x i hesapla. x = F - (r) r F(x) r = F(x) Deneysel Kesikli Dağılım x i 4 f ( x i ).4... F ( x i ).4.7.9. ì ï ï.4 F( x) = í.7 ï.9 ï ïî if x < if x < if x < if x < 4 if 4 x x x Deneysel Kesikli Dağılım (Devam) Uygulamalar Eğer R i aralıktaysa R i.4.4 < R i.7.7 < R i.9.9 < R i. 4 X i [a,b] aralığında Düzgün Değer Üretimi Üstel Değer Üretimi Kesikli Ters Dönüşüm Algoritması Üret r i = uniform(,) for i= to n If r i F(x i ) then return x i Loop 4 6
..4 [a,b] Aralığında Düzgün Değer Üretimi [a,b] Aralığında Düzgün Değer Üretimi (Devam) Düzgün dağılmış X rassal değişkenine ait f(x) olasılık yoğunluk fonksiyonu aşağıda verilmiştir. ì ï a x b f(x) = íb - a î ï Aksi Halde X rassal değişkeninin Birikimli Dağılım Fonksiyonu F(x), Olasılık Yoğunluk Fonksiyonu f(x) in integrali alınarak bulunur. F(x) = ò ì x < a ï x - a f(x)dx = í a x b ïb - a îï x > b f(x): Olasılık Yoğunluk Fonksiyonu (Probability density function, pdf): F(x): Birikimli (Olasılık) Dağılım Fonksiyonu (Cumulative density function, cdf) [a,b] Aralığında Düzgün Değer Üretimi (Devam) Düzgün dağılımdan değerler üretmede ters dönüşüm metodunu kullanmak için F x (x) = R alınır ve x aşağıdaki gibi çözülür: x - a = = = - + b - a Artık, [a,b] aralığında Düzgün rassal değer üretebiliriz: [,] aralığında Düzgün R üret x = a + R (b -a) - R ise x F ( x) ( b a) R a 7 8 Üstel Dağılım ì f (x) = le-lx x ³ í î A ksi Halde ì F(x) = í x< î- e -lx x E[X] = l l = E[X] 7
..4 9 Üstel Dağılım (Devam) - İstenilen X rassal değişkeni için kümülatif yoğunluk fonksiyonu hesaplanır. Üstel Dağılım (Devam) Üstel Dağılım (Devam) Üstel Dağılım (Devam) 8
..4 Üstel Dağılım (Devam) Rassal Normal Değer Üretme (,5<Rassal Sayı<) r = F(x) birikimli dağılım fonksiyonu için [,] düzgün dağılımından r rassal sayısını üret x i hesapla. F(x) =,99 s = Örnegin m=5,s = parametreli Normal Dagilimdan rassal deger uretelim. R=.99 olsun. m = 5 x z= x - m s x = m + zs F(z) =,99 z Rassal Normal Değer Üretme (,5<Rassal Sayı<) Rassal Normal Değer Üretme (<Rassal Sayı<,5) P( Z,4 ) =,99 z=,4 f(z) Üretilen rassal sayının.5 ten küçük olması normal dağılımdan üretilecek değerin ortalamadan küçük olduğunu gösterir. z x = m + zs = 5 +,4. s = Örnegin m=5,s = parametreli Normal Dagılımdan rassal deger uretelim. R=.5 olsun. = 9 F(x) = RS =,5 x m = 5 z= x - m s s = F(z) = RS =,5 x = m - zs -z 9
..4 Rassal Normal Değer Üretme (<Rassal Sayı<,5) Rassal Normal Değer Üretme (<Rassal Sayı<,5) P( Z.9) =,65 P(Z -.9) =,5 f(z) s = s = z =,9 z x = m - zs -z z z = 5 -,9. =, P(Z < -z) = P(Z > z) =,5 P(Z < z) = -,5 =,65, 5