为什么电话呼叫次数服从泊松分布?

生活中我们已经非常习惯使用电话呼叫中心服务:110/119/120、银行客服热线、114挪车、快递公司等各类热线,为保证服务效率的同时节约成本,如何配置最适合的客服资源?这里,我们来讨论一下泊松分布在电话呼叫中心资源配置中的应用。
Poisson分布(法语:loi de Poisson,英语:Poisson distribution,译名有泊松分布、普阿松分布、卜瓦松分布、布瓦松分布、布阿松分布、波以松分布、卜氏分配等),是一种统计与概率学里常见到的离散机率分布(discrete probability distribution),由法国数学家西莫恩·德尼·泊松(Siméon-Denis Poisson)在1838年时发表。
泊松分布适合于描述单位时间内随机事件发生的次数。如某一服务设施在一定时间内到达的人数,电话交换机接到呼叫的次数,汽车站台的候客人数,机器出现的故障数,自然灾害发生的次数等等。
若随机变量X取0和一切正整数值,在n次独立试验中出现的次数x恰为k次的概率P(X=k)=(k=0,1,…,n),式中λ是一个大于0的参数,此概率分布称为泊松分布。它的期望值为E(x)=np,方差为D(x) = λ。当n很大,且在一次试验中出现的概率P很小时,泊松分布近似二项分布。
Poisson分布主要用于描述在单位时间(空间)中稀有事件的发生数。即需满足以下四个条件:
假设条件 求解 泊松过程的模拟
假设条件

求解




泊松过程的模拟
给定时间,求发生次数
给定发生次数,求所需时间
非齐时泊松过程
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
from scipy import stats
from tqdm import tqdm, trange
sns.set()
sns.set_context('talk')
sns.set_style('ticks')
模拟泊松过程
给定时间,求发生次数
time = 10 # the total time of a path of possion process
interval = 0.001
plt.figure(figsize=(15, 10))
k = 0
for rate in (1/2, 1, 2, 5):
k += 1
plt.subplot(2, 2, k)
lambda_ = rate * interval # the parameter of possion distribution
x = np.arange(0, time, interval)
y = np.cumsum(np.random.poisson(lambda_, size=int(time/interval)).clip(0, 1))
for i in np.unique(y):
where = np.where(y == i)
plt.plot(x[where], y[where], c='r')
sns.despine()
plt.title(f'A path of possion process with rate $\lambda={rate}$', fontdict={'fontsize':15})
plt.suptitle('Possion Process With Different Rate', y=1, fontsize=20)
# plt.savefig('p1.png', dpi=400)
plt.show()

给定发生次数,求所需时间
plt.figure(figsize=(15, 10))
k = 0
for rate in (0.5, 1, 2, 5):
k += 1
plt.subplot(2, 2, k)
sample = np.random.exponential(1/rate, size=size)
time = np.cumsum(sample)
for i in range(size-1):
plt.plot((time[i], time[i+1]), (i, i), c='r')
sns.despine()
plt.title(f'A path of possion process with rate $\lambda={rate}$', fontdict={'fontsize':15})
plt.suptitle('Possion Process With Different Rate', y=1, fontsize=20)
# plt.savefig('p2.png', dpi=400)
plt.show()

非齐时泊松过程
m = lambda x: x ** 2
interval = 0.0001
plt.figure(figsize=(9, 5.5))
x = np.arange(0, time, interval)
tmp = [np.random.poisson(rate(i) * interval) for i in x]
y = np.cumsum([np.random.poisson(rate(i) * interval, size=1).clip(0, 1) for i in x])
for i in np.unique(y):
where = np.where(y == i)
plt.plot(x[where], y[where], c='r')
plt.title('A path of possion process with rate $\lambda(x)=2x$', fontdict={'fontsize':15})
sns.despine();plt.show()

由此,我们可以根据已知的电话呼叫中心历史数据,得到相关重要统计特征,并对未来一定时期内的接入电话数量进行预测。特别是在某些特定时期,如双11电商狂欢节、舆情或严重故障等突发应急情况,泊松分布的应用将为预案设置提供重要、精准的数字依据。

About us
统计学公众号
传递知识,沉淀思维
如需帮助,请回复 123,或者联系小D老师微信:pekingdata