MM1排队系统仿真matlab实验报告

MM1排队系统仿真matlab实验报告
M/M/1排队系统实验报告
一、实验目的
本次实验要求实现M/M/1单窗口无限排队系统的系统仿真,利用事件调度法实现离散事件系统仿真,并统计平均队列长度以及平均等待时间等值,以与理论分析结果进行对比。
二、实验原理
根据排队论的知识我们知道,排队系统的分类是根据该系统中的顾客到达模式、服务模式、服务员数量以及服务规则等因素决定的。
1、 顾客到达模式
设到达过程是一个参数为λ的Poisson 过程,则长度为t 的时间内到达k 个
呼叫的概率 服从Poisson 分布,即e t k
k k t t p λλ-=!)()(,⋅⋅⋅⋅⋅⋅⋅⋅⋅=,2,1,0k ,其中λ>0
为一常数,表示了平均到达率或Poisson 呼叫流的强度。
2、 服务模式
设每个呼叫的持续时间为i τ,服从参数为μ的负指数分布,即其分布函数为
{}1,0t P X t e t μ-<=-≥
3、 服务规则
先进先服务的规则(FIFO )
4、 理论分析结果
在该M/M/1系统中,设
λρμ=,则稳态时的平均等待队长为1Q ρλρ=-,顾客的平均等待时间为T ρ
μλ=-。
三、实验内容
M/M/1排队系统:实现了当顾客到达分布服从负指数分布,系统服务时间也服从负指数分布,单服务台系统,单队排队,按FIFO (先入先出队列)方式服务。
四、采用的语言
MatLab 语言
源代码:
clear;
title('各顾客在系统中的排队时间和等待时间');
stairs([0 ArriveNum],[0 t_Queue],'b');
hold on;
stairs([0 LeaveNum],[0 t_Wait],'y');
hold off;
legend('排队时间','等待时间');
%仿真值与理论值比较
disp(['理论平均等待时间t_Wait_avg=',num2str(1/(Mu-Lambda))]);
disp(['理论平均排队时间t_Wait_avg=',num2str(Lambda/(Mu*(Mu-Lambda)))]);
disp(['理论系统中平均顾客数=',num2str(Lambda/(Mu-Lambda))]);
disp(['理论系统中平均等待队长=',num2str(Lambda*Lambda/(Mu*(Mu-Lambda)))]);
disp(['仿真平均等待时间t_Wait_avg=',num2str(t_Wait_avg)])
disp(['仿真平均排队时间t_Queue_avg=',num2str(t_Queue_avg)])
disp(['仿真系统中平均顾客数=',num2str(CusNum_avg)]);
disp(['仿真系统中平均等待队长=',num2str(QueLength_avg)]);
五、数据结构
1.仿真设计算法(主要函数)
利用负指数分布与泊松过程的关系,产生符合泊松过程的顾客流,产生符合负指数分布的随机变量作为每个顾客的服务时间:
Interval_Arrive=-log(rand(1,SimTotal))/Lambda;%到达时间间隔,结果与调用exprnd(1/Lambda,m)函数产生的结果相同
Interval_Serve=-log(rand(1,SimTotal))/Mu;%服务时间间隔
t_Arrive(1)=Interval_Arrive(1);%顾客到达时间
时间计算
t_Wait=t_Leave-t_Arrive;%各顾客在系统中的等待时间
t_Queue=t_Wait-Interval_Serve; %各顾客在系统中的排队时间
由事件来触发仿真时钟的不断推进。每发生一次事件,记录下两次事件间隔的时间以及在该时间段内排队的人数:
Timepoint=[t_Arrive,t_Leave]; %系统中顾客数变化
CusNum=zeros(size(Timepoint));
CusNum_avg=sum(CusNum_fromStart.*[Time_interval 0] )/Timepoint(end); %系统中平均顾客数计算

本文发布于:2024-09-20 17:18:03,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/91882.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:系统   排队   时间   服务   指数分布   到达
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议