单服务排队系统MAAB仿真程序Word文档格式.docx
- 文档编号:21588451
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:27
- 大小:18.50KB
单服务排队系统MAAB仿真程序Word文档格式.docx
《单服务排队系统MAAB仿真程序Word文档格式.docx》由会员分享,可在线阅读,更多相关《单服务排队系统MAAB仿真程序Word文档格式.docx(27页珍藏版)》请在冰豆网上搜索。
(1)顾客信息初始化
根据到达率λ和服务率μ来确定每个顾客的到达时间间隔和服务时间间隔。
服务间隔时间可以用负指数分布函数exprnd()来生成。
由于泊松过程的时间间隔也服从负指数分布,故亦可由此函数生成顾客到达时间间隔。
需要注意的是exprnd()的输入参数不是到达率λ和服务率μ而是平均到达时间间隔1/λ和平均服务时间1/μ。
根据到达时间间隔,确定每个顾客的到达时刻.学习过C语言的人习惯于使用FOR循环来实现数值的累加,但FOR循环会引起运算复杂度的增加而在MATLAB仿真环境中,提供了一个方便的函数cumsum()来实现累加功能读者可以直接引用
对当前顾客进行初始化。
第1个到达系统的顾客不需要等待就可以直接接受服务其离开时刻等于到达时刻与服务时间之和。
(2)进队出队仿真
在当前顾客到达时刻,根据系统内已有的顾客数来确定是否接纳该顾客。
若接纳则根据前一顾客的离开时刻来确定当前顾客的等待时间、离开时间和标志位;
若拒绝,则标志位置为0.
流程图如下:
四、程序实现
单服务台服务,服务参数M/M/1,λ=μ=0.1,排队规则为FIFO,以分为单位,仿真时间240分钟。
仿真程序代码如下
%总仿真时间
Total_time=240;
%到达率与服务率
lambda=0.1;
mu=0.1;
%平均到达时间与平均服务时间
arr_mean=1/lambda;
ser_mean=1/mu;
%可能到达的最大顾客数(round:
四舍五入求整数)
arr_num=round(Total_time*lambda*2);
%顾客事件表初始化
events=[];
%按负指数分布产生各顾客达到时间间隔
events(1,:
)=exprnd(arr_mean,1,arr_num);
%各顾客的到达时刻等于时间间隔的累积和
)=cumsum(events(1,:
));
%按负指数分布产生各顾客服务时间
events(2,:
)=exprnd(ser_mean,1,arr_num);
%计算仿真顾客个数,即到达时刻在仿真时间内的顾客数
len_sim=sum(events(1,:
)<
=Total_time);
%*****************************************
%计算第1个顾客的信息
%第1个顾客进入系统后直接接受服务,无需等待
events(3,1)=0;
%其离开时刻等于其到达时刻与服务时间之和
events(4,1)=events(1,1)+events(2,1);
%其肯定被系统接纳,此时系统内共有1个顾客,故标志位
%置1
events(5,1)=1;
%其进入系统后,系统内已有成员序号为1
member=[1];
%计算第i个顾客的信息
fori=2:
arr_num
%如果第i个顾客的到达时间超过了仿真时间,则跳出循环
ifevents(1,i)>
Total_time
break;
%如果第i个顾客的到达时间未超过仿真时间,则计算在其
%到达时刻系统中已有的顾客个数
elsenumber=sum(events(4,member)>
events(1,i));
%如果系统已满,则系统拒绝第i个顾客,其标志位置0
ifnumber>
=N+1
events(5,i)=0;
%如果系统为空,则第i个顾客直接接受服务
elseifnumber==0
%其等待时间为0
events(3,i)=0;
%其离开时刻等于到达时刻与服务时间之和
events(4,i)=events(1,i)+events(2,i);
%其标志位置1
events(5,i)=1;
member=[member,i];
%如果系统有顾客正在接受服务,且系统等待队列未满,则
%第i个顾客进入系统
elselen_mem=length(member);
%其等待时间等于队列中前一个顾客的离开时刻减去其到
%达时刻
events(3,i)=events(4,member(len_mem))-events(1,i);
%其离开时刻等于队列中前一个顾客的离开时刻加上其服
%务时间
events(4,i)=events(4,member(len_mem))+events(2,i);
%标识位表示其进入系统后,系统内共有的顾客数
events(5,i)=number+1;
end
五、仿真结果
events=
[]
number=
1
0
Columns1through7
5.641813.205057.515568.388686.578988.8820100.5548
9.117825.774614.274720.929816.933214.27318.7403
0000000
14.7597000000
1.0000000000
Columns8through14
106.9312124.9101129.9854143.3425147.5878151.3098154.2113
30.02671.02350.56807.11597.148810.85541.0530
Columns15through21
162.1843186.9750201.7163202.6228221.4368223.3506229.5432
9.962921.96402.48149.422814.20099.065623.3868
Columns22through28
229.5819255.0699263.2190285.6008285.9892339.7321342.2822
20.25160.59700.44865.530228.170914.491110.4084
Columns29through35
344.2996345.7073370.4249379.5933393.0690395.2996403.7064
1.970041.731631.460017.77924.32143.12354.3426
Columns36through42
404.6424421.6883435.0138454.2870474.2329475.6337481.0860
7.96466.032912.16312.947816.66253.757516.9548
Columns43through48
487.0670506.3803507.9699512.7172523.1882529.8581
9.98364.69012.481725.11750.73232.5397
000000
14.7597071.79010000
1.000001.00000000
14.7597071.79010103.512100
1.000001.000001.000000
136.9579000000
Colu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 服务 排队 系统 MAAB 仿真 程序