欢迎来到天天文库
浏览记录
ID:21076732
大小:371.32 KB
页数:12页
时间:2018-10-19
《单服务台排队系统离散事件系统仿真实验》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、离散事件系统仿真实验一、实验目标通过单服务台排队系统的方针,理解和掌握对离散事件的仿真建模方法,以便对其他系统进行建模,并对其系统分析,应用到实际系统,对实际系统进行理论指导。二、实验原理1.排队系统的一般理论一•般的排队系统都有三个基本组成部分:(1)到达模式:指动态实体(顾客)按怎样的规律到达,描写实体到达的统计特性。通常假定顾客总体是无限的。(2)服务机构:指同一时刻有多少服务设备可以接纳动态实体,它们的服务需要多少时间。它也具有一定的分布特性。通常,假定系统的容量(包括正在服务的人数加上在等待线等待的人数)是无限的。(3)排队规则:指对下一个实体服务的选择原则。通用的排队规则包栝先进先
2、出(FIFO),后进先出(LIFO),随机服务(SIRO)等。2.对于离散系统有三种常用的仿真策略:事件调度法、活动扫描法、进程交互法。(1)事件调度法(EventScheduling):基本思想:离散事件系统中最基本的概念是事件,事件发生引起系统状态的变化,用事件的观点来分析真实系统。通过定义事件或每个事件发生系统状态的变化,按吋间顺序确定并执行每个事件发生时有关逻辑关系。(2)活动扫描法:基本思想:系统有成分组成,而成分又包含活动。活动的发生必须满足某些条件,且每一个主动成分均有一个相应的活动例程。仿真过程中,活动的发生吋间也作为条件之一,而且较之其他条件具有更高的优先权。(3)进程交互法
3、:基本思想:将模型中的主动成分历经系统所发生的事件及活动,按时间发生的顺序进行组合,从而形成进程表。系统仿真钟的推进采用两张进程表,一是当前事件表,二是将来事件表。3.本实验采用的单服务台模型(1)到达模式:顾客源是无限的,顾客单个到达,相互独立,一定时间的到达数服从指数分布(2)排队规则:单队,且对队列长度没有限制,先到先服务的FIFO规则。(3)服务机构:单服务台,各顾客的服务吋间相互独立,服从相同的指数分布。(4)到达吋间间隔和服务时间是相互独立的。1.事件调度法的仿真策略事件调度法的基本思想是:用事件的观点来分析真实系统,通过走义事件及每个事件发生对于系统状态的变化,按时间顺序确定并执
4、行每个事件发生时有关的逻辑关系。按这种策略建立模型时,所有事件均放在事件表中。模型中没有一个时间校制成分,该成分从事件表屮选择具有最早发生时间的事件,并将仿真钟修改到该事件发生的时间,再调用与该事件相应的事件处理模块,该事件处理完后返冋时间控制成分。这样,事件的选择与处理不断地进行,直到仿真终止的条件或程序事件产生为止。2.离散事件结果分析仿真运行方式可分为两大类:(1)终止型仿真:仿真的运行长度是事先确定的由于仿真运行时间度有限,系统的性能与运行长度有关,系统的初始状态对系统性能的影响是不能忽略的。为了消除由于初始状态对系统性能估计造成的影响,需要多次独立运行仿真模型。(2>稳态型仿真:这类
5、仿真研究仅运行一次,但运行长度却是足够LC仿真的目的是估计系统的稳态性能。三、理论分析根据排队论的知识我们知道,排队系统的分类是根据该系统屮的顾客到达模式、服务模式、服务员数量以及服务规则等因素决定的。1、顾客到达模式实体(临时实体)到达模式:顾客。实体到达模式是顾客到达模式,设到达时间间隔Ajg从均位=5min的指数分布f(A)=—e~A,^(A彡0)2、服务模式设服务员为每个顾客服务的时间为Sj,它也服从指数分布,均值为从/(5)(S^O)3、服务规则由于是单服务台系统,考虑系统顾客按单队排列,并按FIFO方式服务4、理论分析结果P=~Q=~^-在该系统中,设",则穂态时的平均等待队长为,
6、顾客的平均等待时间为7=—^—A—乂。5、系统模型否对顾客数1=1做记录置服务员为忙碌状态将顾客记录排入队列确定服务时间队列长度加1安排服务完成事件结來三、设计算法1、算法模型开始输入仿真人数计算第1个顾客的离开时间:i-2系统是否接纳第i个顾客?f标志位置0:i=i+l计算第i个顾客的等待时间、离开时间、标示位:i+1仿真时间是否越界?输出结果结束2、仿真设计算法(主要函数)利用指数分布间的关系,产生符合过程的顾客流,产生符合指数分布的随机变量作为每个顾客的服务时间:lnterval_Arrive=-log(rand(l,SimTotalB/Lambda;%到达时间间隔,结果与调用exprn
7、d(l/Lambda,m>函数产生的结果相同lnterval_Serve=-log(rand(l,SimTotal)}/Mu;%服务时间间隔t_Arrive⑴=lnterval_Arrive⑴;%顾客到达时间时间计算tWait=tLeave-tArrive;%各顾客的•:系统中的等待时间tQueue=tWait-IntervalServe;%各顾客在系统屮的排队时间由事件来触发仿真时钟的不断推进。
此文档下载收益归作者所有