Kendinizi tam döngü LCG PRNG'lerle sınırlarsanız , cevap kolaydır, tanım gereği .m
Belirli bir tohum için tam zamanlı olmayan bir LCG PRNG süresini bulmak için, tohum değerini bir kez daha üretene kadar PRNG'nin tekrar sayısını saymanız yeterlidir.
Başvurulan wikipedia sayfasından :
Dönem uzunluğu
Dönem genel LCG en fazla olan ve bundan çok daha az bazı seçimler için. Kaydıyla sıfırdan farklı olduğu, LCG tüm tohum değerleri için tam bir süre var olacak ancak ve ancak :mc
LCG'ler uygun sahte sayılar üretebilirken , bu , ve parametrelerinin seçimine son derece duyarlıdır .cma
Tarihsel olarak, zayıf seçimler LCG'lerin etkisiz uygulamalarına yol açmıştı. Bunun özellikle örnektir Randu yaygın 1970'lerin başında kullanılan ve şu anda çünkü bu kötü LCG kullanımının sorguya çekiliyor birçok sonuçlara yol oldu.
Neden tam zamanlı bir jeneratör kullanmak istiyorsunuz?
Kendinizi tam zamanlı LCG PRNG'lerle kısıtlamıyorsanız, büyük bir risk alıyorsunuz demektir .
Eğer yoksa biliyorum belirli bir LCG tam döngü sonra olduğunu olabileceğin bazıları karşılıklı olarak farklı dizilerin, keyfi bir sayı ile bir jeneratör ile bitebileceğini utanç verici rezil daha muhtemelen daha da kötü, küçük ve korkunç rastlantısallığını var Randu jeneratör .
Uygulamanız için yeterince uzun bir sıra oluşturduğundan emin olmak için olası her tohum değerini kontrol etmek istemezsiniz.
daha fazla okuma
Sahte rasgele sayı üreteçlerinde mükemmel bir astar için , Rasgele Sayılar'daki Sayısal Tarifler bölümünü okumanızı şiddetle tavsiye ederim .