If you're seeing this message, it means we're having trouble loading external resources on our website.

Bağlandığınız bilgisayar bir web filtresi kullanıyorsa, *.kastatic.org ve *.kasandbox.org adreslerinin engellerini kaldırmayı unutmayın.

Ana içerik

Rastgele sayıların özel dağılımları

Hayatınızda rasgele değerlerin tekdüze dağılımını, veya bir Gauss dağılımı istemediğiniz bir zaman gelecek. Bir anlığına yiyecek arayan rasgele bir yürüyüşçü olduğunuzu hayal edelim. Bir yerde rastgele hareket etmek, yiyecek bir şey bulmak için makul bir strateji gibi görünüyor. Ne de olsa, yiyeceğin nerede olduğunu bilmiyorsunuz, onun için bulana kadar rastgele arayabilirsiniz. Farkettiğiniz gibi problem, rastgele yürüyüşçülerin birçok kere önceden ziyaret ettikleri yerlere geri dönmeleridir (buna “fazladan örnekleme” denir). Böyle bir problemi önlemenin bir stratejisi, bazen çok büyük bir adım atmaktır. Bu yürüyüşçünün fazladan örnekleme miktarını azaltmak için düzenli olarak çok ileri atlayarak belirli bir konumda rastgele yiyecek aramasını sağlar. Rastgele yürüyüşteki bu varyasyon (Lévy kaçışı denir) özel bir olasılık kümesi gerektirir. Bu tam bir Lévy uçuşu uygulaması olmasa da, olasılık dağılımını şu şekilde ifade edebiliriz: adım ne kadar uzunsa, seçilmesi o kadar az olasıdır; adım ne kadar kısaysa, o kadar olasıdır.
Bu bölümde daha önce bir diziyi değerlerle doldurarak (bazıları birden fazla ki daha sık seçilsin) veya random() sonucunu test ederek özel olasılık dağılımları oluşturabiliriz. Yürüyüşçünün büyük bir adım atma şansının %1 olduğunu söyleyerek bir Lévy uçuşu uygulayabiliriz.
var r = random(1);
// Büyük adım atma şansı % 1
if (r < 0{,}01) {
  xstep = random(-100, 100);
  ystep = random(-100, 100);
} else {
  xstep = random(-1, 1);
  ystep = random(-1, 1);
}
Ancak, bu olasılıkları sabit bir sayıda seçeneğe indirger. Daha genel bir kural oluşturmak istersek—sayı ne kadar yüksekse, seçilmesi o kadar olasıdır? 3,145'in seçilmesi 3,144'ten daha olasıdır, her ne kadar bu olasılık azıcık daha fazla olsa da. Başka bir deyişle, eğer x rastgele sayıysa, bu olasılığı y ekseninde y = x olarak gösterebiliriz.
Kodun Niteliği Görüntüsü
Şekil I.4
Üstteki grafiğe göre rastgele sayıların bir dağılımını oluşturmayı bulabilirsek, formülü olan herhangi bir eğri için de aynı metodolojiyi uygulayabiliriz.
Bir çözüm, bir yerine iki rasgele sayı seçmektir. Birinci rasgele sayı, sadece rasgele bir sayıdır. Ancak, ikincisi “belirleyici bir rastgele değerdir.” Birincisini mi kullanmayı, yoksa bunu atıp başka birini mi seçeceğimizi söyler. Daha kolay belirleyici olan sayılar daha sık seçilir, ve nadiren belirleyen sayılar nadiren seçilir. Adımları aşağıda bulabilirsiniz (şimdilik sadece 0 ile 1 arasında rastgele sayıları düşünelim):
  1. Rastgele bir sayı seçin: R1
  2. R1'in sağladığı bir P olasılığını hesaplayın. Deneyelim: P = R1.
  3. Başka bir rastgele sayı seçin: R2
  4. R2 P'den küçükse, sayımızı bulduk demektir—R1!
  5. R2 P'den küçük değilse, 1. adıma dönün ve baştan başlayın.
Burada rastgele bir sayının belirleyici olma olasılığının o rastgele sayıya eşit olduğunu söylüyoruz. Örneğin, R1 için 0,1 seçelim. Bu, R1'in belirleyici olma olasılığının %10 olduğu anlamına gelir. R1 için 0,83 seçersek, belirleyici olma şansı %83'tür. Sayı ne kadar büyükse, kullanma olasılığımız o kadar yüksektir.
Burada (Monte Carlo yöntemi adıyla ifade edilen, ki bu da Monte Carlo kumarhanesi için böyle adlandırılmıştır) üstteki algoritmayı uygulayan, 0 ile 1 arasında rastgele bir değer veren bir fonksiyon bulabilirsiniz. Bu program bu değerleri elipslerin boyutu için kullanır, ama bu değerleri birçok şey için kullanabiliriz.

Bu "Doğal Simülasyonlar" dersi, Daniel Shiffman'ın"Kodun Doğası"'nın bir türevidir ve Creative Commons Yüklemesi-Ticari Olmayan 3,0 Dağıtıma Açık Lisansla kullanılmaktadır.

Tartışmaya katılmak ister misiniz?

Henüz gönderi yok.
İngilizce biliyor musunuz? Khan Academy'nin İngilizce sitesinde neler olduğunu görmek için buraya tıklayın.