您的当前位置:首页排队论(matlab代码可运行)

排队论(matlab代码可运行)

来源:小侦探旅游网
本文格式为Word版,下载可任意编辑

排队论(matlab代码可运行)

for i=1:k

p_t=[p_t,p0*beta*R^i];

篇一

end

%/M/PH/1(k);

%p=stationary_prob(4,beta,S,order,lambda);

function[p,p_minus,p_add,mean,time]=stationary_prob(k,beta,S,lambda)

order=length(beta);

e=ones(order,1);

R=lambda*inv(lambda*eye(size(S))-lambda*e*beta-S);

R_k=eye(size(S));

for i=1:k

R_k=R_k+R^i;

end

p0=inv(beta*(R_k-lambda*R^k*inv(S))*e);

p_t=p0;

p_t=[p_t,p0*beta*(R^k)*(-lambda*inv(S))];

%the queue length distribution in any time

%add every phase in the same level

p=p0;

for i=1:k+1

sum=0;

for j=1:order

sum=sum+p_t(1+(i-1)*order+j);

end

p=[p,sum];

end

第 1 页 共 3 页

本文格式为Word版,下载可任意编辑

p_minus=p; %

%the queue length distribution at departure %application

%p_add=p_minus(i)/(1-p_minus(k+1)) %

p_add=[0]; for i=0:k p_add=[p(k-i+1)/(1-p(k+2)),p_add]; end %the mean queue length mean=0; for i=1:k mean=mean+i*p(i+1); end %the mean waiting time time=mean/lambda/(1-p(k+2)); %M/E2/1(k)

lambda=2;

mu=4;

beta=[1,0];

S=[-mu,mu;0,-mu];

[p,p_minus,p_add,mean,time]=stationary_prob(4,beta,S,lambda); p

p_minus

p_add

mean

time

%M/H2/1(k)

第 2 页 共 3 页

本文格式为Word版,下载可任意编辑

lambda=2; [p,p_minus,p_add,mean,time]=stationary_prob(4,beta,S,lambda); p

mu=2; p_minus

beta=[0.5,0.5]; p_add

S=[-3,0;0,-1.5]; [p,p_minus,p_add,mean,time]=stationary_prob(4,beta,S,lambda); p p_minus p_add mean

time

%M/M/1(k)

lambda=2;

mu=2;

beta=[1];

S=[-mu];

mean

time

第 3 页 共 3 页

因篇幅问题不能全部显示,请点此查看更多更全内容