我想了解如何生成概率分布。我正在研究随机最短路径问题,其中边缘具有相关概率分布以及每个概率的相关成本。我能够生成这样的(正常)分布:
0 1 2 3 4
0.15 0.2 0.18 0.22 0.25
通过遵循此question中提供的答案,所有概率的总和为1。现在,我需要生成其他分布,如bi-normal,log-normal和gamma。我非常感谢对这些发行版和(伪)代码的任何澄清,最好是在Java中生成它们。
答案 0 :(得分:2)
我会远离100%的自制解决方案,例如你提到的问题。
以下是生成分发的一些代码。您必须自己对它们进行标准化,以使总和加起来为1.
for i in (randint(1,5),randint(9,15),randint(21,27)):
print i
答案 1 :(得分:1)
快速搜索会显示Colt library及其distributions类套件。