python利用指数分布随机数构成泊松过程
时间: 2023-07-15 16:15:38 浏览: 119
泊松随机数产生
以下是Python代码实现指数分布随机数构成泊松过程的方法:
```python
import numpy as np
# 设置参数
lamda = 5 # 平均到达率
T = 20 # 模拟时间
# 生成指数分布随机数
arrive_time = np.cumsum(np.random.exponential(1/lamda, int(lamda*T)))
# 计算泊松过程
n_arrives = np.zeros(int(lamda*T)+1)
for i in range(len(arrive_time)):
if arrive_time[i] > T:
break
n_arrives[int(arrive_time[i])] += 1
# 输出结果
print("时间段\t到达次数")
for i in range(len(n_arrives)):
print("{}-{}\t{}".format(i, i+1, int(n_arrives[i])))
```
上述代码中,首先设置了指数分布参数 `lamda` 和模拟时间 `T`,然后使用 `numpy.random.exponential` 函数生成符合指数分布的随机数,再使用 `numpy.cumsum` 累加,得到到达事件的时间点。接着,使用 `numpy.zeros` 初始化一个全为0的数组 `n_arrives` 存储每个时间段内到达的次数,并使用循环统计各时间段内到达次数,最后输出结果。
阅读全文