【发布时间】:2017-10-30 03:24:24
【问题描述】:
我想做一个蒙特卡罗模拟,在该模拟上我生成 10 个场景,每个场景的特征在于时间范围内的随机到达数。
我使用scipy.stats.poisson
https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.poisson.html
为每个场景生成到达样本,假设平均值为 12。
from scipy.stats import poisson
arrivals = poisson.rvs(12, 10)
print arrivals
输出是一个随机数列表:
[11 13 9 10 8 9 13 12 11 23]
平均值为 11.9,这已经足够了,但问题是在这种情况下,在最后一个场景中,有 23 个到达,与平均值 12 相差甚远。
由于在运行此模拟之前我必须选择一个总体,因此我必须使该总体的大小足够大以符合泊松随机变量。 所以假设我选择了一个大小为 1.5 * 12 = 18 的总体,不幸的是在最后一个场景中我会得到一个错误,因为样本大于总体本身。
我的第一个问题是:为了使用泊松随机变量列表对这些到达进行抽样,我必须选择的最小总体规模是多少?
我的第二个问题是:有没有更好的方法通过使用另一种概率分布来管理此类问题?
请注意,在这种情况下,mean=12,但我必须模拟 mean=57 和 mean=234 的其他上下文。
【问题讨论】:
-
是否有某些原因您不能按需生成人口成员,而不是预先生成?
标签: python random scipy statistics poisson