【发布时间】:2009-02-06 21:28:24
【问题描述】:
这是基于this question。提出了许多产生不均匀分布的答案,我开始想知道如何量化输出的不均匀性。我不是在寻找模式问题,只是在寻找单值方面。
可接受的程序是什么?
我目前的想法是通过计算每个值的熵并取加权平均值来计算每个调用的平均 Shannon entropy。然后可以将其计算为预期值。
我的担忧是
- 这是正确的吗?
- 如何在不损失精度的情况下计算这些值?
对于#1,我想知道我是否正确。
对于#2,我担心的是我会处理大小为 1/7 +/- 1e-18 的数字,我担心浮点错误会因为除最小问题之外的任何问题而杀死我。计算的确切形式可能会导致这里出现一些重大差异,我似乎记得有一些 ASM 选项可用于一些特殊的日志案例,但我似乎找不到关于此的文档。
在这种情况下,使用范围为[1,n] 的“好”PRNG 并为范围[1,m] 生成一个SRNG。问题是结果比输入差多少?
我所拥有的是每个输出值的预期发生率。
【问题讨论】: