Questions tagged «random-number-generation»

4
Fortuna或Mersenne Twister是否更适合作为算法RNG?
最近的回答提到使用Fortuna或Mersenne Twister随机数生成器(RNG)进行蒙特卡洛模拟。我之前没有听说过Fortuna,所以我查了一下-看起来它主要是供加密使用的。 我目前在生产代码中使用Mersenne Twister播种K-Means算法。 哪种(Fortuna或Mersenne Twister)被认为是“算法播种”应用程序的最佳选择(例如Monte Carlo和K-Means播种)?还是“扔掉”-即使用最方便。 在我所坐的地方,“最佳”应该提供最高质量的随机数,可以快速运行,并且(可能)占用的内存少。其中,质量对于我们大多数人来说可能是最重要的。

1
如何确定伪随机数生成器的周期?
假设我正在使用线性同余伪随机数生成器(PRNG)。给定种子,乘积因子(a),移动因子(c)和模量因子(m),我如何确定PRNG的周期?是否通过实验/模式检测算法确定它,或者有直接公式计算其周期? X0x0x_0 尽管我的问题专门针对线性同余法,但我愿意了解更多有关如何实际计算其他PRNG的周期的信息。

1
如果给出了序列,如何确定伪随机数生成器的初始值?
假设我知道线性同余生成器生成了一个随机数序列。那是, xn+1=(aXn+c)modmxn+1=(aXn+c)modmx_{n+1}=(aX_n+c) \bmod m 如果给了我整个周期(或至少是一个较大的连续子序列),我该如何重建产生该序列的参数和?我正在寻找一种通用方法,如果已知伪随机数生成器,该方法将能够确定初始参数。a,c,ma,c,ma,c,mx0x0x_0
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.