【发布时间】:2015-09-20 00:53:17
【问题描述】:
我意识到这是复杂而具体的,但由于我的概率很低,我想我会尝试在这方面寻求一些帮助。
我本质上想要做的是根据之前的随机数选择获得一个具有加权概率的随机数。
我希望它的设置方式是这样的。 (假设第一个选择是随机的,请原谅我的语法)。
$start = 3;
$next = /* function call to get random value */
我本质上希望3 的概率最高,4 第二高 5 第三高,环绕(以某个数字为模)以使2 的概率最低。
我该怎么做?我不想强迫相同的数字重复,我只是希望它这样做的可能性更高(并且它顺序进行的可能性也更高)。让我知道是否需要澄清,但基本上初始选择 3 和模数 6,我希望下一个选择的概率是这样的:
P(3)=30%
P(4)=25%
P(5)=20%
P(0)=12.5%
P(1)=7.5%
P(2)=5%
我没有设置那些特定的概率,只是它们的顺序 - 单边钟形曲线形状会很好(特别是如果有内置功能来支持它)。
【问题讨论】:
-
如果 P(4)=25% 和 P(2)=5% 我认为它不是高斯的。这是一些倾斜的分布。我认为最好的方法是确定您需要的分发类型(在 stats.stackexchange.com 上),然后寻找一种将其实现到 PHP 中的方法。
标签: php random probability