平方取中法
维基百科,自由的百科全书
平方取中法是個產生偽隨機數的方法,由馮·諾伊曼在1946年提出。
算法:
- 選擇一個m位數Ni作為種子。
- 計算
- 若不足2m個位,在前補0。在這個數選中間m個位的數,即至的數,將結果作為Ni + 1。
[编辑] 優劣
它並不算很好的方法,因為其週期通常很短,而且有很大的弱點(例如當起始數值是便不斷重覆)。不過這些問題很容易察覺,加上它十分快速,適用於ENIAC,不無可取之處。
[编辑] 例子
- 675248 → 455 959 861 504
- 959861 → 921 333 139 321
- 333139 → 110 981 593 321
- 981593 → 963 524 817 649
- 524817 → 275 432 883 489
...