Algorithms

偽隨機數生成算法

  • July 19, 2010

現代和高質量的隨機數生成器中使用了哪些算法?

在 R 中,隨機數生成的默認設置是:

  1. 對於 U(0,1),使用 Mersenne-Twister 算法
  2. 對於高斯數,使用標準正態分佈函數的數值反演。

你可以很容易地檢查這一點,即。

> RNGkind()
[1] "Mersenne-Twister" "Inversion"

可以將默認生成器更改為其他 PRNG,例如 Super-Duper、Wichmann-Hill、Marsaglia-Multicarry 甚至用戶提供的 PRNG。有關詳細信息,請參閱 ?RNGkind。我從來不需要更改默認的 PRNG。

默認情況下,C GSL庫也使用Mersenne-Twister

引用自:https://stats.stackexchange.com/questions/40

comments powered by Disqus