这是多么糟糕的事情啊
How bad rand from stdlib.h is?
我正在用c++进行蒙特卡罗模拟,我正在使用Boost进行随机数。我也用过一点GSL。但事实证明随机数生成是我最大的运行时低效率之一,所以我从cstdlib
开始使用老的rand()
。
我在模拟中有多糟糕的随机数属性?我使用大约10^6或10^7个随机数样本。
有两个问题:(1)因为RAND_MAX只保证至少为32767,可能没有很多可能的值(对某些应用程序来说不一定是坏的),(2)糟糕的实现。
如果您需要所谓的安全随机数生成器,则需要查看其他地方。但是对于很多应用来说,rand()
就足够了。
解决您所关心的问题的博客文章是http://eternallyconfuzzled.com/arts/jsw_art_rand.aspx。
相关文章:
- 没有找到相关文章