2016-09-16 18 views

答えて

9

、それは

それはそれは、これよりも大きな何回もの巨大な状態空間を持っていることに基づいている53ビットの精度

とメルセンヌツイスターを生成します。また、ビット独立性(RNG出力のパターンを見つけるように設計されたプログラム)の統計的なテストも定期的に行います。分布は、いずれかのビットが正確に0.0を得る確率を効果的に2^53で1(未知の内部状態を想定)

+0

優秀であろう0または1

なることを本質的に等しい確率で均一です!これはすべてのプラットフォームで一貫していますか?アルゴリズムや精度に課せられた制約のためにチャンスが高くなる可能性はありますか? – dexgecko

+1

@dexgecko:ほとんどのPythonのバージョンとプラットフォームでは一貫していると思います。それらはすべてソースでMersenne Twisterアルゴリズムを完全に実装しているため、OSや共有ライブラリコールではありません。これを確認するには、たとえば次のようにします。 'random.seed(12345)'と 'random.random()'の次のいくつかの呼び出しからの出力を見ています - これは広範囲のPython実装で一貫していると思います。 –

+1

しかし 'random.SystemRandom'(これはあなたがとにかく使うはずです)を使うと、それは別の話です。これは、OS、CPU、その他の要因(エントロピーソース)に大きく依存する可能性があります。しかし、やはり同じくらいの確率で同じことが起こるはずです。 – freakish

関連する問題

 関連する問題