首页 > 解决方案 > 下面伪代码中的高斯分布函数在哪里?

问题描述

我正在做我的最终作业,我提出了 Box Muller Gaussian Distribution 方法来寻找统一软件中的随机数。

我对在其中一本期刊中找到的伪代码的高斯分布函数感到非常困惑。

Pseudocode algoritma Box-Muller(Sukajaya dkk., 2012) :

a. Generate uniform random number u, v in range [-1, 1]
b. Calculate s = u2 + v2
c. Looping step 2 until s < 1
d. Find normal random numbers `z0 = u. √((-2lns)/s)` and z1 = v . √(- (-2lns)/s)

我认为伪代码只涉及 Box Muller,而高斯分布函数仅用于显示随机数的图表。

标签: randomnumbersdistributionpseudocodegaussian

解决方案


Box-Muller 算法不包含高斯密度公式的直接实现。相反,它产生的结果(累积地)遵循该密度。z0算法产生的结果z1是两个独立的高斯随机值。如果您将算法迭代数百或数千次并构建所有z值的直方图,它将开始看起来像高斯分布的钟形曲线。它背后的数学超出了 StackOverflow 帖子的范围,所以我建议你只推“我相信!” 按钮,或者如果您想要更多解释和各种原始来源的链接,请参阅Wikipedia 文章。

当您说“高斯分布函数仅用于显示随机数字图”时,我不确定您的意思。高斯分布是最重要的建模分布之一,因为来自所有其他具有有限方差的分布的值的总和将收敛到分布中的高斯分布。这意味着如果您正在研究平均值(由总和构建)或大量小错误的聚合,高斯分布在表征结果方面做得很好。


推荐阅读