5

我在某处读到 python 库函数 random.expovariate 产生等效于泊松过程事件的间隔。
真的是这样吗,还是我应该对结果施加其他一些功能?

4

2 回答 2

8

严格阅读您的问题,是的,这就是 random.expovariate 所做的。

expovariate 为您提供呈指数分布的随机浮点数。在泊松过程中,连续事件之间的间隔大小是指数的。

但是,我可以想象其他两种方法来模拟泊松过程

  1. 只需生成随机数,均匀分布并排序。
  2. 生成具有泊松分布的整数(即它们的分布类似于泊松过程中固定间隔内的事件数)。使用 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 回答