- ★初心者以前の質問に雪崩のように答えるスレ 3★ [転載禁止]©2ch.net
329 :デフォルトの名無しさん[sage]:2015/03/17(火) 21:19:55.90 ID:a/EPreJz - >>326-328
色々な提案をありがとうございます。 あまりよい疑似乱数ではない線形合同法 X(n+1)=AX(n)+B mod M この周期がMとなる場合を利用しようと思います。 以下の条件が満たされたときに最大周期Mをもつ。 1. BとMが互いに素である。 2. A-1が、Mの持つ全ての素因数で割りきれる。 3. Mが4の倍数である場合は、A-1も4の倍数である。 http://ja.wikipedia.org/wiki/%E7%B7%9A%E5%BD%A2%E5%90%88%E5%90%8C%E6%B3%95
| - ★初心者以前の質問に雪崩のように答えるスレ 3★ [転載禁止]©2ch.net
330 :デフォルトの名無しさん[sage]:2015/03/17(火) 21:55:58.93 ID:a/EPreJz - 0からM-1までの値を出力する線形合同法で
最大周期Mのとき、それをたどればランダム順列になっています。 また非線形合同法も検討してみます。 aX^2+bX+c mod 2^nが最大周期をもつ必要十分条件は b=c=1 mod 2 , a+b=1 mod 4 だそうです。 http://hp.vector.co.jp/authors/VA004808/random1.html
|
|