eşit olmayan rasgele sayı üretmenin herhangi bir yolunu söyleyebilir misiniz?
Java kullanıyorum ama kod örnekleri ne istersen olabilir. Bir yol, iki eşit rastgele sayıyı birbirine ekleyerek (yani, 2 zar), çarpık bir dağılım oluşturmaktır.Düzgün olmayan rasgele sayıların üretilmesi
cevap
Sapmaların hangi dağılımını istiyorsunuz?
Her zaman işe yarayan, ancak her zaman en verimli olan bir teknik. Kümülatif dağılım işlevi P (x), değerlerin x değerinin altına düştüğü süreyi verir. Böylece mümkün olan en düşük x değerinde P (x) = 0 ve olası en yüksek x değerinde P (x) = 1. Her dağılımın, P (x) 'in 0'dan 1'e yükseldiği şekilde, dağılımın tüm özelliklerini kodlayan eşsiz bir CDF vardır. Eğer y, [0,1] aralığında bir tekdüze sapma ise, o zaman x, P'yi tatmin eder.) = y dağıtımınıza göre dağıtılacaktır. Bu çalışmayı rahatlatmak için, dağıtımınız için P (x) 'in tersini hesaplamanın bir yoluna ihtiyacınız var.
Meta.Numerics kütüphanesi tanımlar yaygın olarak kullanılan distrubtions çok sayıda (örneğin normal, lognormal, üstel, ki vb kare) ve CDF (Distribution.LeftProbability) ve ters CDF işlem fonksiyonları vardır (Distribution.InverseLeftProbability) her biri için.
Özel dağıtımlar için hızlı olan özel teknikler için, örn. Normal dağıtılmış sapmalar için Box-Muller tekniği, Sayısal Recipies kitabına bakınız.
Sadece farklı dağıtımlarda sayı üretmenin yollarını aradığım farketmez. Sanırım bunu çok düşünmemiştim. Daha fazla okumaya ihtiyacım var gibi geliyor, bahsettiğin kitap bu mu? Sayısal Yemek Tarifleri 3rd Edition: Bilimsel Hesaplama Sanatı –
Evet, bu kitap. Bu sayısal hesaplama için standart bir giriş, ama para ve çaba için büyük bir yatırım. Eğer sadece lanet olasılığını istiyorsan, bir kütüphaneye sataşırım. Bahsettiğim birini kullanarak şu kadar basit: Rastgele rng = new Random (1); Dağılım dist = new NormalDistribution (1.0,2.0); çift x = dist.InverseLeftProbability (rng.NextDouble()); –
harika, bu kesinlikle emin olmak isterim. Kitabı kontrol etmeyi planlıyorum. Çok teşekkür ederim. –
Düzgün olarak dağıtılmış rasgele sayılar oluşturmayı deneyin ve ardından her biri için ters olmayan tekdüze olmayan cumulative distribution function'u uygulayın.
+1 Bunu yapmanın yolu budur. – ralphtheninja
Yanlış, dağıtım işlevinizi tersine çevirmelisiniz. Kare dağılımı istiyorsanız, rastgele sayıların kareköklerini almalısınız. – glmxndr
Dağıtım işlevinin uygun inversiyonu uyguladığı varsayımını yapıyorum. Sanırım sorun, kullanılan funcion'a dağıtım türünün terminolojisi ile daha fazla. –
Java kullanıyorsanız, benim Uncommons Maths kitaplığım ilginizi çekebilir. Üniforma, Gauss, Poisson, Binomial ve Üstel dağılımlar için rasgele sayılar üretmek için sınıfları içerir. This article, bu dağıtımları nasıl kullanabileceğinizi gösterir.
- 1. Geometrik rastgele sayıların üretilmesi
- 2. "Düzgün" rasgele sayılar için algoritma
- 3. Java'da rasgele bir yöntemden sayıların sıralanması
- 4. Nümerik olmayan rasgele sayı sayıları
- 5. Sözdizimsel rasgele sayıların ve satır sayısının nasıl üretileceği Tableau
- 6. rasgele sayı karşılaştırması doğru olmayan bir değerle eşleşmiyor
- 7. Görüntülerle PDF'lerin üretilmesi çok yavaş
- 8. Excel Rasgele Sayılar haftaya bağlı
- 9. otomatik .cpp gelen .h üretilmesi/.c
- 10. otomatik olarak üretilmesi ortam modülü bildirimleri
- 11. ssh anahtarlarının üretilmesi için Bash komut dosyası
- 12. Rasgele bir tabanda sayıların sıfır dolgulu bir dizgi temsilini nasıl oluşturabilirim?
- 13. Değişken sayıların eklenmesi
- 14. Racket'teki doğal olmayan logaritmaları nasıl hesaplarım?
- 15. Regex python kullanarak dizideki sayıların çoklu ikamesi
- 16. R'de rasgele sayılar nasıl daha hızlı oluşturulur?
- 17. Django'nun test istemcisi düzgün olmayan bir kodlanmış URL döndürüyor
- 18. Facebook düzgün olmayan biçimlendirilmiş URL parametresiyle oauth yanıtı
- 19. PHP - Bir sayıdaki sayıların uzunluğu
- 20. Yücelteki sayı ve sayıların karşılaştırılması
- 21. Kodların sayısı VS Sayıların sayısı
- 22. Simulink'te bu sayıların anlamı nedir?
- 23. Rasgele hızlı Rasgele hızlı uygulanması için
- 24. Javascript garip rasgele davranış
- 25. rasgele JQuery
- 26. ZSH_THEME = "rasgele"
- 27. Düzgün
- 28. düzgün
- 29. Düzgün
- 30. NumPy rastgele tohum farklı rasgele sayılar
İstediğiniz dağıtıma bağlıdır. –