版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、通信网理论基础实验报告信息与通信工程学院通信网理论基础实验报告班级: 姓名: 学号: 序号: 日 期: 第13页 实验二m/m/1排队系统一、实验目的m/m/1是最简单的排队系统,其假设到达过程是一个参数为 的poisson过程,服务时间是参数为 的负指数分布,只有一个服务窗口,等待的位置有无穷多个,排队的方式是fifo。m/m/1排队系统的稳态分布、平均队列长度,等待时间的分布以及平均等待时间,可通过泊松过程、负指数分布、生灭过程以及little公式等进行理论上的分析与求解。本次实验要求实现m/m/1单窗口无限排队系统的系统仿真,利用事件调度法实现离散事件系统仿真,并统计平均队列长度以及平均
2、等待时间等值,以与理论分析结果进行对比。二、 实验内容根据排队论的知识我们知道,排队系统的分类是根据该系统中的顾客到达模式、服务模式、服务员数量以及服务规则等因素决定的。1、顾客到达模式设到达过程是一个参数为的poisson过程,则长度为t的时间内到达k个呼叫的概率pk(t)服从poisson分布,即pkt=(t)kk!e-t, k=0,1,2,其中0为一常数,表示了平均到达率或poisson呼叫流的强度。2、服务模式设每个呼叫的持续时间为i,服从参数的负指数分布,即其分布函数为pxt=1-e-t,t0。3、服务规则先进先服务的规则(fifo)4、理论分析结果在该m/m/1系统中,设=,则稳态
3、时的平均等待队长为q=21-(不是q=1-!),顾客的平均等待时间为t=-。三、 实验内容1、仿真时序图示例本实验中的排队系统为当顾客到达分布服从负指数分布,系统服务时间也服从负指数分布,单服务台系统,单队排队,按fifo方式服务为m/m/1排队系统。理论上,我们定义服务员结束一次服务或者有顾客到达系统均为一次事件。 为第i个任何一类事件发生的时间,其时序关系如下图所示。 bi第i个任何一类事件发生的时间ti第i个顾客到达类事件发生的时间ci第i个顾客离开类事件发生的时间ai为第i-1个与第i个顾客到达时间间隔di第i个顾客排队等待的时间长度si第i个顾客服务的时间长度顾客平均等待队长q(n)
4、及平均排队等待时间d(n)的定义为其中, ri为在时间区间bi-1,bi上排队人数qi乘以该区间长度bi-bi-1。 为第i个顾客排队等待时间。2、仿真设计算法(1)利用负指数分布与泊松过程的关系,产生符合泊松过程的顾客流。(2)分别构建一个顾客到达队列和一个顾客等待队列。顾客到达后,首先进入到达队列的队尾排队,并检测是否有顾客等待以及是否有服务台空闲,如果无人等待并且有服务员空闲则进入服务状态,否则顾客将进入等待队列的队尾等待。(3)产生符合负指数分布的随机变量作为每个顾客的服务时间。(4)当服务员结束一次服务后,就取出等待队列中位于队头的顾客进入服务状态,如果等待队列为空则服务台空闲等待下
5、一位顾客的到来。(5)由事件来触发仿真时钟的不断推进。每发生一次事件,记录下两次事件间隔的时间以及在该时间段内排队的人数。(6)在系统达到稳态时,计算系统的平均等待时间以及平均等待队长。3、仿真结果分析分析仿真数据,统计顾客的平均等待时间与顾客的平均等待队长,计算其方差,分析与理论计算结果的吻合程度,验证仿真程序的正确性。四、程序基本信息1、设计语言及开发工具:matlab。2、数据结构:本次实验由于算法简单,每次计算的数据之间也不存在任何关系(独立)的,因此程序设计时只采用了诸如串、数组等简单形式用于存储数据,复杂的数据结构思想诸如链表、树等基本没有采用。3、主要函数(算法):本程序采用ma
6、tlab语言编写,包含4个主要的m文件。其中calctheoqueuelength.m和calctheowaittime.m函数的算法比较简单,将在simulatemm1中介绍。还有一个mm1.fig文件存储程序界面信息,不作介绍。(1) mm1.m文件这个文件里涉及本次程序的窗口部分(gui),以下仅对于实际操作有关的函数进行介绍。这些函数的都比较简单,因此它们的工作流程用文字说明。下页图是本程序的主界面。function simulate_callback(hobject, eventdata, handles)单击“开始仿真”按钮后触发的函数,实现给定到达率、离去率和顾客数的m/m/1系
7、统仿真。它首先获取用户的输入并检验是否合法,然后调用simulatemm1函数进行仿真并给出相应结果(平均等待队长和等待时间)。function draw1_callback(hobject, eventdata, handles)单击左边的“理论曲线”按钮后触发的函数,按照给定的到达率精度和离去率画出平均等待队长和平均等待时间与到达率的理论关系曲线。它首先检验输入的合法性,并根据到达率精度和离去率(到达率需小于离去率)产生不同的到达率,分别调用calctheowaittime和calctheoqueuelength计算对应到达率和离去率下的理论平均等待队长和平均等待时间,产生理论曲线。这个函
8、数不进行仿真,因此顾客数的变量没有使用。function draw3_callback(hobject, eventdata, handles)单击左边“仿真曲线”按钮后触发的函数,按照给定的到达率精度、离去率和顾客数进行仿真并画出平均等待队长和平均等待时间与到达率的关系曲线。它首先检验输入的合法性,根据到达率精度和离去率产生不同的到达率,并调用simulatemm1进行仿真并画出曲线(画图的代码在simulatemm1里),另外它与simulate_callback调用simulatemm1的方式是不同的,在介绍simulatemm1函数时会详细说明。 function draw2_call
9、back(hobject, eventdata, handles)单击右边的“理论曲线”按钮后触发的函数,按照给定的离去率精度和到达率画出平均等待队长和平均等待时间与到达率的理论关系曲线。其流程与draw1_callback函数类似。 function draw4_callback(hobject, eventdata, handles)单击右边“仿真曲线”按钮后触发的函数,按照给定的离去率精度、到达率和顾客数进行仿真并画出平均等待队长和平均等待时间与到达率的关系曲线。流程与draw3_callback函数类似。(2)simulatemm1.m文件本程序最重要的函数,实现的主要功能是:已知到达
10、率、离去率和总顾客数,进行m/m/1系统仿真,得出平均等待时间和平均等待队长随时间的分布,画出图形并与理论值进行比较;它拥有5个输入参数: a. totalconsumers:顾客数(整数);b. arrivingrate:到达率(取值01的实数);c. leavingrate:离去率(取值01的实数,比到达率大);d. mode:运行模式,取值0、1、2,对应三种模式,其中有两种是为mm1函数中的draw3_callback和draw4_callback设计的,具体见以下说明;e. firstrunning:取值为0或1,在其中两种模式中判定是否为首次运行(仿真),具体见以下说明。由于m/m
11、/1是一个非常简单的排队系统,状态数少,且当到达率小于离去率时系统就可进入稳态,因此对它进行仿真,只需要通过事件的触发不断推动时钟前进即可,系统状态本身不需要用很多变量记录。这也是本程序的仿真设计思想。这个函数流程可分为四部分,前三部分都进行了推动时钟前进的操作。 本函数的流程较为复杂,以下用流程图说明整个函数的工作过程。某些比较特殊的地方会加一标注。流程图第一部分:本段流程主要产生整个系统仿真时产生的服从泊松过程的到达间隔和满足负指数分布的服务(离去)时间间隔,以便进行后续的仿真过程。注释:(1) 产生满足泊松过程(负指数分布)的时间间隔的方法:由泊松过程的定义可得,长度为t的时间内到达k个
12、呼叫的概率pk(t)服从pkt=(t)kk!e-t, k=0,1,2,k=1时该式写成p1t=e-t,两边取自然对数得t=-lnp1(t),其中p1t在matlab中可用rand函数随机生成,因此实现该功能的语句为-log(rand)/x,其中x表示参数。(2)产生时间间隔时,容易出现对应的到达时刻晚于离去时刻的情况。若果完全采用这些时间间隔仿真,就会发生系统空闲。系统空闲状态虽然也是m/m/1的稳态,但由于本程序主要统计平均等待时间和等待队长,这些都是建立在系统中至少有一人的情况下的,因此如果不对这些导致系统空闲的时间间隔进行处理的话,累积下来,最终的仿真结果和理论值相比会出现非常大的偏差。
13、本程序的处理办法是让对应的离开时间间隔变长,使得当对应有一个顾客离开时,恰好有一个顾客到达。虽然这样系统不是在完全的泊松流下进行仿真,但结果要理想得多。流程图第二部分:本段流程根据前面生成的时间间隔完成所有的仿真工作。具体思想前面已有所描述。 流程图第三部分: 本段流程进行第三次推动时钟的操作,每经过一个事件触发的时刻计算和统计从开始仿真到当前时刻所有人的等待时间、系统经过的时间、平均等待队长和平均等待时间(前两项为后两项所用),为后面画图做好准备。 注释:(1)当前区间的所有人的等待时间的计算方法是队长乘以区间长度,通过当前事件的触发时刻和上次事件的触发时刻(注释(3)位置记录的)就可算得区
14、间长度。(2)这段流程用于统计到目前为止总共到达系统的顾客数。若是到达时刻小于系统经过的时间对应的时刻,表明这个区间里有顾客到来。(3)平均队长的计算方法:所有人的等待时间除以系统总共经过的时间,即 ,ri 为所有人的等待时间;平均等待时间的计算方法:所有人的等待时间除以总共到达系统的顾客数,即 ,为第i个顾客排队等待时间。流程图第四部分:最后一段流程,根据工作模式要求作图。三种工作模式(变量名mode):0:作平均等待队长、平均等待时间和它们的差值与时间的关系图。执行simulate_callback函数时按此模式调用simulatemm1函数。1:作平均等待队长和平均等待时间与到达率的关系
15、图。执行draw3_callback函数时按此模式调用simulatemm1函数。2:作平均等待队长和平均等待时间与离去率的关系图。执行draw4_callback函数时按此模式调用simulatemm1函数。注释:(1)按模式1、2工作时需要一个小判断,第一次运行时需要打开一个新的画图窗口,以后就不用了,否则最终图像会分散到许许多多窗口里。 (2)理论值计算方法:设=,则稳态时的平均等待队长为q=21-,顾客的平均等待时间为t=-。它们也是calctheoqueuelength.m和calctheowaittime.m函数的算法。因为这段算法在mm1.m函数中也要调用,因此单独写了两个函数。
16、五、程序运行结果与分析1、m/m/1系统仿真与给定和条件下系统的平均队列长度和平均等待时间的分布曲线:即便采用相同的值,每次仿真出来的结果也是有区别的,以下只选取几组有代表性的结果。(1) =0.2,=0.5,顾客数为500(2) =0.2,=0.5,顾客数为5000 由上两组图对比可以看到,仿真的顾客数越长,最终结果越理想,因此建议顾客数不小于1000。(3) =0.39,=0.4,顾客数5000 由上图可见,当到达率与离去率近似相同时,系统仿真的误差较大,也就是说此时系统很难进入稳态。2、平均等待队长和平均等待时间随和的变化曲线:这里需要输入一个精度,精度越小,图形越精密,当然随之而来的是
17、程序运行的时间增加。另外本程序的作图不考虑到达率大于或等于离去率的情况,因为那时系统已经无法进入稳态,作图没有意义。(1)平均等待队长和平均等待时间随的变化曲线此处输入的离去率是横坐标的终点,取0.99,精度0.001,顾客数5000理论曲线仿真曲线,有误差,但大致走向相同由上面两图可得,当到达率远小于离去率时,平均等待队长和时间都很小,但当到达率逐渐接近离去率时,平均等待队长和时间以指数形式增长,最终将趋近于正无穷。(2) 平均等待队长和时间随离去率的变化曲线此处输入的到达率是横坐标的起点,取0.01,精度0.001,顾客数5000理论曲线仿真曲线该曲线基本就是(1)中曲线颠倒过来的产物。当离去率和到达率近似相同时,平均等待队长和时间都非常大,但当离去率逐渐远离到达率时,平均等待队长和时间将急剧减小,最终趋近于0。六、遇到的主要问题1、仿真结果出现重大错误(如平均队长出现负值)到达率始终要小于离去率的,不满足这一点的系统无法进入稳态,当然也就无法正确仿真。2、仿真结果和理论值有较大的偏差。这是本次实验我遇到的最为
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 淮阴工学院《建设监理》2022-2023学年第一学期期末试卷
- 淮阴工学院《工程流体力学》2021-2022学年第一学期期末试卷
- 金华十校2024年11月高三模拟考试(一模)生物试卷(含标准答案)
- 专用塑胶材料相关项目投资计划书范本
- 高压聚乙烯行业相关投资计划提议
- 聚醚砜PES相关行业投资方案
- 运动品牌抖音号品牌故事方案
- 分布式光伏电网接入方案
- 2024年无锡办理客运从业资格证版试题
- 2024年计算机辅助类工具软件项目规划申请报告模范
- 2024-2030年国内婴童用品行业深度分析及竞争格局与发展前景预测研究报告
- 粤教粤民版《劳动技术》四上 第二单元第3课《提篮》教学设计
- 办公楼室内装饰工程施工设计方案技术标范本
- 全球及中国玉米淀粉行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告(2024-2030)
- 部编版小学语文三年级上册基础知识试题含答案(全册)
- S7-1200PLC技术及应用 课件 项目17 步进电机控制
- 2024年中国老年糖尿病诊疗指南解读(2024年版)
- 《生物技术制药》课程介绍与教学大纲
- 第30课 家居收纳技巧 课件 2023-2024学年苏教版初中劳动技术七年级上册
- 2024年福建漳平闽投抽水蓄能有限公司招聘笔试冲刺题(带答案解析)
- 2024中国一汽校园招聘1000+岗位高频考题难、易错点模拟试题(共500题)附带答案详解
评论
0/150
提交评论