【问题标题】:Discrete Uniform distribution random number离散均匀分布随机数
【发布时间】:2014-04-07 03:39:55
【问题描述】:

我尝试使用 (a+(b-a)*R) 生成离散的统一随机数,其中 R 是由线性同余方法生成的随机样本。但我仍然对 D 统一编号的创建存有疑问。请给我任何离散均匀随机数的完美公式?

【问题讨论】:

    标签: random


    【解决方案1】:

    线性生成器不是真正的随机数生成器。如果你想要一个真正的随机生成器,你需要一个好的熵源。在 Windows 中,有许多接口可以访问系统收集的熵。在 Linux 中有 /dev/random。更好的是像新的英特尔 DRNG 指令这样的硬件资源。

    一旦你有了一个好的来源,就应该对来源进行调节(除非已经应用了调节)。一种简单的方法是在 CTR 模式下播种流密码,例如 AES。事实上,如果您使用随机密钥作为种子,AES/CTR 是一个出色的伪随机生成器。

    【讨论】:

    • 我相信问题不在于生成“真正的随机数”。事实上,这个问题很模糊。