我在某处读到 python 库函数 random.expovariate 产生等效于泊松过程事件的间隔。
真的是这样吗,还是我应该对结果施加其他一些功能?
问问题
12285 次
2 回答
8
严格阅读您的问题,是的,这就是 random.expovariate 所做的。
expovariate 为您提供呈指数分布的随机浮点数。在泊松过程中,连续事件之间的间隔大小是指数的。
但是,我可以想象其他两种方法来模拟泊松过程
- 只需生成随机数,均匀分布并排序。
- 生成具有泊松分布的整数(即它们的分布类似于泊松过程中固定间隔内的事件数)。使用 numpy.random.poisson 来执行此操作。
当然,这三件事是完全不同的。正确的选择取决于您的应用。
于 2011-12-21T15:33:55.437 回答
3
https://stackoverflow.com/a/10250877/1587329很好地解释了为什么它有效(不仅在 python 中)和一些代码。简而言之
以每秒 15 次到达的平均速率模拟泊松过程中的前 10 个事件,如下所示:
import random for i in range(1,10): print random.expovariate(15)
于 2015-12-20T18:59:03.120 回答