我正在使用C ++进行蒙特卡罗模拟,我使用Boost进行随机数。我也使用过GSL。但事实证明,随机数生成是我最大的运行时效率低下因素之一,所以我刚开始使用来自rand()
的好cstdlib
。
我在模拟中冒险使用随机数属性有多糟糕?我使用大约10 ^ 6或10 ^ 7个随机数样本。
答案 0 :(得分:0)
有两个问题:(1)因为RAND_MAX仅保证至少为32767,可能没有太多可能的值(对于某些应用程序来说不一定是坏的),以及(2)实施不佳。
如果您需要所谓的安全随机数生成器,则需要查看其他位置。但对于许多应用来说,rand()
就足够了。
解决您的疑虑的博客文章是http://eternallyconfuzzled.com/arts/jsw_art_rand.aspx。