2012-02-22 39 views
5

C++ 11 içinde bulunan rasgele sayı üreteci ile çalışıyorum. Şu anda, ben belirttiğim A & B aralığı içinde herhangi bir sayı almak için bana eşit bir olasılık vermelidir düzgün bir dağıtım kullanıyorum. Bununla birlikte, Poisson dağılımları üretmek konusunda kafam karışmış olurum. Poisson probability'u nasıl belirleyeceğimi anladığım halde, Poisson dağılımına göre rasgele bir sayı dizisinin nasıl dağıtılabileceğini anlamıyorum. ÖrneğinRastgele sayı üretecinin Poisson dağılımını anlama

bir Poisson dağılımına C++ 11 yapıcı bir argüman alır - Poisson olasılık probleminde mean of the distribution

std::tr1::poisson_distribution<double> poisson(7.0); 
std::cout << poisson(eng) << std::endl; 

olan λ bu başarıların beklenen sayısına eşittir Belirli bir aralıkta meydana gelen olaylar. Ancak, bu örnekte neyi temsil ettiğini anlamıyorum. Rastgele sayı senaryosunda "başarı"/"olay" nedir?

Bunu anlamama yardımcı olması için kullanabileceğim herhangi bir yardım veya referans malzemeyi takdir ediyorum.

+0

Burada sorunun bir kısmı tamamen bir Poisson amacını anlayamıyorum olabilir dağılımı. İstatistiklerim/olasılık metinlerim Poisson olasılığının belirlenmesini tartışıyor, ancak Poisson dağılımı içinde sayı üretmeye dair hiçbir şey sağlamadı. Şu anda gerçek bir uygulamam yok. Gerçekten bunun nasıl çalıştığını merak ediyorum. – BSchlinker

+1

Örnek bir uygulama, her bir değer için meydana gelme olasılığını hesaplayabilir ve daha sonra Poisson'a eşit bir dağılımı çevirmek için bu değerleri temel alan aralıkları hesaplayabilir. Örneğin. & lambda için; == 2% 0 şansımız var,% 27 şansımız 1,% 27 şansımız 2 ... Ardından 0,0 ve 1,0 arasında iyi bir eski üniforma rasgele sayı üretiyoruz. Eğer bu sayı <= 0.13 geri dönüşü 0 ise. <= 0.40 geri dönüş 1. Bu <= 0.67 geri dönüş 2 vs ... – oddstar

cevap

3

Poisson dağılımı olasılığı, belirli bir değerin ortaya çıkma olasılığıdır. Her gün belirli bir noktayı kaç tane aracın geçtiğini hesaplamak istediğinizi düşünün. Bu değer birkaç gün daha, diğer günlerde daha az olacak. Ancak bunu ciddi bir zaman diliminde takip ederken, yakın çevresinde değerler daha sık ortaya çıktıkça ve daha uzak değerler (günde 0 araba veya on kat miktar) daha az muhtemeldir. Ve lambda; Bu ortaya çıktı demek.

Bunu RNG'lere yansıtırken, algoritma size rastgele bir günde geçen araçların miktarını döndürür (tekdüze olarak seçilir). Tahmin edebileceğiniz gibi ortalama değer ve lambda; ortaya çıkması daha muhtemeldir ve uçların en az ortaya çıkması muhtemeldir.

aşağıdaki linki Poisson sahiptir dağılımının bir örneğini vardır, edindiğiniz ayrık sonuçları ve bunların her fırsatı gösteren oluşma vardır:

http://www.mathworks.com/help/toolbox/stats/brn2ivz-127.html

bir örnek uygulaması her değer için hesaplayabilirsiniz Olasılık olasılığı ve daha sonra Poisson'a tekdüze bir dağılımı çevirmek için bu değerlere dayalı aralıkları hesaplar. Örneğin. & lambda için; == 2% 0 şansımız var,% 27 şansımız 1,% 27 şansımız 2 ... Ardından 0,0 ve 1,0 arasında iyi bir eski üniforma rasgele sayı üretiyoruz. Bu sayı < = 0,13 dönüş 0 ise < = 0.40 dönüş 1. < = 0,67 dönüş 2 vb ...

+0

Tamam - beklediğim şeye benzer. Bununla birlikte, çıkış numaralarının "aralığını" belirleyen nedir? Örneğin, ortalama 75 ise, 50 ve 150 ya da 74 ve 76 gibi iki sayıya sahip olabiliriz. Her ikisi de bu ortalamadan 75'e, ama 50 ile 150 arasındaki değerler daha büyüktür.Ek olarak, ortalamanın ortaya çıkmaya başlaması için kaç tane numune gerektiğini belirleyen nedir? – BSchlinker

+0

50 ve 150'nin her birinin 74 ve 76'dan daha düşük bir şansı vardır. Aralığının ortalaması 75 olsa da, sayılara kendi başlarına ve bunların ortalama ile nasıl bağlantılı olduklarına bakmalısınız. deneyde ortaya çıkma şansı ne kadar yüksek? Bir günde 50 aracın geçme şansı ne kadar yüksek, ya da 150, 74 ya da 76 aracın ne kadar yüksek geçtiğine kıyasla. Ortalama ortala karıştırmayın. Ortalama, tüm sonuçların ortalaması değil, tüm sonuçların 'ortasında' ortaya çıkan sayıdır. – oddstar

+0

Ortalamanın ortaya çıkması için kaç örneğe ihtiyacınız varsa, bu, ayrı bir dağılım olduğu için ortalamaya bağlıdır. Örneğin. Eğer ortalaman 2 ise, ortalaman 1050 (% 1.2 şansı RNG 1050 geri döndürür) olduğundakinden çok daha hızlı (% 25 şansı RNG geri dönüş) gerçekleşecektir. & Lambda ile; 75, 75 ortaya çıkma olasılığı yaklaşık% 4'tür. – oddstar