3

这是一个纯粹的理论问题。

我们都知道,大多数(如果不是全部)随机数生成器实际上只生成伪随机数。

假设我想要一个从 10 到 20 的随机数。我可以按如下方式执行此操作(myRandomNumber作为整数类型变量):

myRandomNumber = rand(10, 20);

但是,如果我执行此语句:

myRandomNumber = rand(5, 10) + rand(5, 10);

这种方法随机吗?

4

2 回答 2

4

不。

随机性不是累积的。该rand()函数在您定义的两个端点之间使用均匀分布。

添加两个均匀分布会使均匀分布无效。它会形成一个看起来很奇怪的金字塔,最有可能倾向于中心。这是因为随着自由度的增加概率密度函数的累积。

我敦促您阅读以下内容:

均匀分布

还有这个:

卷积

特别注意屏幕右上角的两个均匀分布会发生什么。

您可以通过将所有总和写入文件然后在 Excel 中绘图来向自己证明这一点。确保给自己足够大的样本量。25000应该足够了。

于 2013-02-07T00:13:57.073 回答
1

理解这一点的最好方法是考虑流行的游乐场游戏“幸运七”。如果我们掷一个六面骰子,我们知道获得六个数字中的任何一个的概率是相同的 - 1/6。如果我们掷两个骰子并将两个骰子上出现的数字相加会怎样?总和的范围可以从 2(两个骰子都显示“一”)到 12(两个骰子都显示“六”)。从 2 到 12 获得不同数字的概率不再一致。获得“七”的概率最高。可以有 1+6、6+1、2+5、5+2、3+4 和 4+3。从 36 种可能性中获得“七”的六种方法。如果我们绘制分布图,我们会得到一个金字塔。概率是 1,2,3,4,5,6,5,4,3,2,1(当然,每个都必须除以 36)。和的金字塔图(和概率分布)可以通过'卷积得到。如果我们知道两个随机数的“预期值”和标准偏差(“sigma”),我们可以快速计算两个随机数之和的预期值。期望值只是两个单独的期望值的加法。通过对两个单独的 sigma(每个 sigma 的平方和的平方根)应用“毕达哥拉斯定理”来获得 sigma。期望值只是两个单独的期望值的加法。通过对两个单独的 sigma(每个 sigma 的平方和的平方根)应用“毕达哥拉斯定理”来获得 sigma。期望值只是两个单独的期望值的加法。通过对两个单独的 sigma(每个 sigma 的平方和的平方根)应用“毕达哥拉斯定理”来获得 sigma。

于 2017-03-14T03:01:27.750 回答