永发信息网

请问如何用matlab生成满足该lambda值的泊松过程的样本

答案:1  悬赏:50  手机版
解决时间 2021-04-04 06:51
  • 提问者网友:喧嚣尘世
  • 2021-04-03 07:19
请问如何用matlab生成满足该lambda值的泊松过程的样本
最佳答案
  • 五星知识达人网友:往事隔山水
  • 2021-04-03 08:17
1.基本原理
根据服务系统接受服务顾客数服从泊松分布这一模型可知,{X(n),t }是一个计数过程,{ Tn,n>1} 是对应的时间间隔序列,若 Tn(n)(n=1,2,...)是独立同分布的均值为1/lambda的指数分布,则{X(n),t }是具有参数为λ的泊松过程。
2.具休实现过程
思路:本实验从用MATLAB编程软件,从构造服从指数分布的时间间隔入手,计算每个事件的发生时刻 ,最后得到X(t),也就模拟了泊松过程。
实现步骤如下:
(1).由函数random(‘exponential’,lamda)构造服从指数分布的 序列。
(2).根据服务系统模型, Wn+1=Wn+Tn+1 。
(3).对任意t (Wn,Wn+1),X(t)=n,由此得到泊松过程的模拟。

******泊松过程的检验---可忽略
1.检验方法
Kolmogorov-Smirnov检验(柯尔莫哥洛夫-斯摩洛夫),亦称拟合优度检验法,用来检用来检验模拟所得的数据的分布是不是符合一个理论的已知分布。
检验步骤及过程:
(1)条件设定:
H1:实验产生模拟泊松分布数据的总体分布服从泊松分布。
H0:实验产生模拟泊松分布数据的总体分布不服从泊松分布。
(2)检验准备:
对于H1,已经假定所产生模拟泊松过程数据 服从泊松分布,而强度 未知,利用函数poissfit(x,alpha)估算出模拟泊松过程的强度 ,再利用函数poisscdf(x,lamda)得到泊松分布的累积分布函数 。
(3) Kolmogorov-Smirnov检验
直接调用Kolmogorov-Smirnov检验函数kstest(x,[x,p],alpha),其中,x为输入模拟泊松序列,P为累积分布函数,1- alpha为置信区间,当结果 时,则输入数据位泊松分布,否则,不是泊松分布。

!!!!程序代码
clear
lamda=2;Tmax=50;
delta_t=0.1;%时间精度
i=1;a=random('exponential',lamda);
T(1)=round(a*10)/10;
w(1)=T(1);%初始化
%%%%%%%%%%%%%%泊松过程模拟%%%%%%%%%%%%%%%
while(w(i)T(i)=random('exponential',lamda);%构造服从指数分布的时间间隔序列Tn
T(i)=round(T(i)*10)/10;
w(i+1)=w(i)+T(i);%计算等待时间
i=i+1;
end
w=w';
x=zeros(w(1)/delta_t,1);
for k=1:size(w,1)-1
length=w(k+1)/delta_t-w(k)/delta_t;
x=[x;ones(length,1)*k];%得到泊松分布X(t)序列
end
%%%%%%%%%%%泊松过程检验%%%%%%%%%%%%%%%%%
alpha=0.05;
lamda1=poissfit(x,alpha);%用MLE算法计算出泊松分布的强度lamda,置信区间为1-lamda
p=poisscdf(x,lamda1);%计算累计分布
[H,s]=kstest(x,[x,p],alpha)%利用Kolmogorov-Smirnov检验,置信区间为1-lamda
if H==1;
disp('该数据源服从泊松分布。')
else
disp('该数据源不服从泊松分布。')
end
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯