收藏 分享(赏)

第3讲GPSS初级.ppt

上传人:kpmy5893 文档编号:8464589 上传时间:2019-06-29 格式:PPT 页数:69 大小:373KB
下载 相关 举报
第3讲GPSS初级.ppt_第1页
第1页 / 共69页
第3讲GPSS初级.ppt_第2页
第2页 / 共69页
第3讲GPSS初级.ppt_第3页
第3页 / 共69页
第3讲GPSS初级.ppt_第4页
第4页 / 共69页
第3讲GPSS初级.ppt_第5页
第5页 / 共69页
点击查看更多>>
资源描述

1、1,第3讲 GPSS 初级,GPSS发展简史: 1961年美国国际商业机器公司 (IBM公司)的G.戈登等人发表进程型仿真语言第一个文本,称为 GPSS (被人称作戈登仿真器) 。它只有20多个模块,在IBM的704,709和7090计算机上实现。此后相继发表了GPSS和 GPSS 等文本。1967年IBM公司提出 GPSS/360,有48个模块。运用于IBM360计算机。1975年形成的新文本 GPSS ,有52个模块,并可用 HELP 模块调用 FORTRAN 等高级语言的各种功能的子程序。然后有 GPSS/X, GPSS/66, GPSS/1100, GPSS/F, 80年代推出 GPS

2、S/H, 而后又有 GPSS/PC。 我们上课应用的是 GPSS World. 是由密尼特曼软件公司( Minuteman Sofeware ) 开发的. 它将原来的 DOS 界面升级为 Windows 界面.( 有需要的同学可去官网 http:/ 下载免费的学生版做学习用。 ),2,3.1 离散事件系统的基本要素,实体、属性、事件、活动、进程、模拟钟 实体:指系统所研究的对象,研究目的相关的人、设备、设施等。又分为临时实体和永久性实体。(教材1 P114 ,有时也称为活动实体和资源实体。)临时实体:凡是在系统模拟期间流经系统、在仿真结束时已经离开系统的实体称为临时实体。 永久实体:凡是在系统

3、模拟期间自始至终停留在系统中的实体称为永久实体。,3,属性:实体所有的特性称为实体的属性事件: 事件有两类系统事件:是引起系统状态变化的行为,此类事件是系统所固有的,是系统状态变化的主要驱动力程序事件:是所谓的程序事件 ,并非系统所固有的,而是根据需要设定的,4,活动:事件与事件之间的过程被称为活动。 事件是系统状态转变的起因,而活动则是系统状态转移的标志。进程:有序的事件与活动组成的过程。进程描述了其中的事件、活动的相互逻辑关系和时序关系。事件、活动、进程三个概念之间的关系,5,模拟钟(模拟时间),模拟模型中用来记录模拟当前时刻的变量叫做模拟钟。(在仿真模型中也称为仿真钟) 为了实现对系统的

4、动态模拟,必须跟踪模拟过程中时间的推进,同时也必须给模型一个从某一时刻推进到下一时刻的时间推进机制。这就首先需要记录模型中的系统时间 模拟钟所记录的时间,和我们运行模型所耗费的计算机运行时间没有必然的相关关系。模拟钟代表我们所要模拟的系统的时间,而模拟运行时间和模型的规模与复杂程度以及计算机性能有关。 模拟钟是用于表示模拟时间变化的时间标识。 模拟钟的推进有两种经典的方法: 固定步长推进法(等步长法) 变步长推进法(或称为下一事件推进法,事件步长法)。,6,(1)固定步长推进法确定一个固定的增量,以此增量逐步推进模拟钟。每推进一个增量,就在被推进的时刻观察有无事件发生。如没有事件发生则继续以相

5、同的增量推进模拟钟;如果有事件发生测根据事件类型进入事件处理程序,对事件发生后的状态变化进行相应处理,然后再推进模拟钟。 如果恰好在推进的增量中间时刻有事件发生,一般采取简化的方法,把该事件假定为是在增量推进的时刻发生的。,7,(2)变步长推进法 变步长推进法,即事先没有确定时钟推进步长,而是根据随机事件的发生而进行随机步长的推进,推进的步长为最后已发生事件与下一事件之间的时间间隔。 由于离散事件系统的状态多数是随时间离散变化的,在模拟时不需要考虑那些没有发生状态变化的时段。因此,这种变步长的推进方法,其节奏性与系统状态变化更加吻合。(在我们这门课的学习中所涉及的模型,都属于变步长推进法),8

6、,离散事件模拟模型的组成与构造 (1)系统状态:某特定时刻,用来描述系统的一组必要的状态变量; (2)模拟钟:提供当前模拟时刻的变量; (3)事件列表:列出当前或下一时刻将要发生的各种类型的事件; (4)统计计数器:一组用来记录系统运行的统计信息的变量; (5)初始化程序:在系统时间为0时,用来初始化仿真模型的子程序; (6)时间推进程序:用来推进时间的子程序,它根据事件列表确定下一时刻要发生的事件,并将系统时钟推进到要发生这一事件的时刻; (7)事件发生程序:用来更新系统状态的子程序,当某类型的特定事件发生后,根据该事件的类型,进行相应的系统状态更新; (8)随机观测生成程序库:是一组用来根

7、据概率分布产生随机观测值的子程序; (9)报告生成器:用来计算由某种方法对系统运行绩效进行的评估结果,并在模拟结束时生成模拟报告; (10)主程序:用来唤醒时间推进子程序来确定下一发生事件,然后将控制转向相应的事件程序,并对系统状态进行相应的更新,主程序还可能检查模拟的终止并在模拟结束时激活报告生成器。,9,3.2 GPSS 模拟例题讲解,下面先从一个简单的例子出发,对GPSS的建模过程进行一个总体概略的介绍。随后将详细介绍 GPSS 的运行环境、界面和模块体系结构,并对GPSS的建模观点进行评述,最后再以一个研究示例说明GPSS在实际研究中的应用。例3.1 假设顾客去理发店理发。店里只有一个

8、理发员JOE,顾客排队等着,前一个理完发,后一个就可以去理。设顾客平均18分钟来一个,不过有士6分钟的偏差,也就是说在12分钟到24分钟之内,即12,13,24分钟都等可能有顾客到来。理发员理发时间是16土4分钟。( 教材2 P203 例9-1 )求解: 窗口的平均排队长度顾客的平均等待时间,10,例3.1: 只有一个理发师的理发店模型 (单窗口排队系统框图式和图解式模型),到达,服 务,离 开,空闲,?,排 队,到达,排队,服务,离开,服务台,11,解: 平均排队长度 = 排队面积求和/模拟时间 平均等待时间 = 各顾客等待时间求和/模拟的顾客数假设: 顾客到达间隔时间 A1, A2, A3

9、, .顾客的服务时间 S1, S2, S3, .因此, 对于单窗口排队系统,模拟之前应已知: 1.每个顾客的到达时间间隔 A1,A2,A3,(一般是随机数) 2.每个顾客的服务时间 S1,S2,S3,(一般是随机数) 3.模拟的顾客数 (模拟长度, 及 START 语句中的参数) 4.模拟的初始条件Ai, Si 怎么能知道?- 需要进行输入数据的分析,12,A1,A2,A3,S1,S2,S3,A4,1,Q,T,A5,S4,A6,A7,S5,2,3,服务台空闲,1,2,3,5,4,6,7,8,12,第二顾客的 等待时间,第三顾客的 等待时间,例3.1单窗口排队系统 (M/M/1)模拟过程,13,

10、以本例题为例,模拟模型中常见的术语如下,1) 系统变量: 描述系统特征的各种指标或性能, 常随时间变 化。2) 参数: 表征各种系统变量的值。即某一时间点上系统变量的某一特定值 3) 系统的状态: 某个指定时刻, 所有系统变量的集合。 4) 事件: 导致系统状态发生变化的过程。不引起系统状态变化的过程不称为事件。在本例中,顾客到达,离开都是事件 5) 实体: 本例中,顾客即为活动实体/临时实体,理发师为永久实体/资源实体。 6) 模拟时钟: 模拟模型中表示时间的变量,本例中的系统变量:1.理发师状态,忙或闲,可用0,1表示2.排队长度3.各顾客到达时间4.各顾客服务时间5.模拟钟时间,14,下

11、面是一个进程 ( 左边是程序, 右边是说明 )SIMULATE ; GPSS WORD 版本时,可以去掉 GENERATE 18,6 ; 顾客在(18, 6)分钟的时间间隔到来 QUEUE LINE ;顾客排入名为 LINE的队中 SEIZE JOE ;如果JOE闲,找他理发,否则停在队中 DEPART LINE ;离队 ADVANCE 16,4 ;理发花了(164)分钟 RELEASE JOE ;理发完毕离开 TERMINATE 1 ;顾客离开系统 START 25 ;模拟25位顾客 END ; GPSS WORD 版本时,可以去掉,15,首先,在每个GPSS程序的开始,有一个控制语句:SI

12、MULATE ,它表示一个模拟过程的开始,同样,在整个程序的最后,有一个END控制语句,与SIMULATE相对应,表示模拟过程的结束。注意: 这是 GPSS/H 及其以前的版本的语法要求. GPSS/H 是在DOS系统下运行的 GPSS版本。在 GPSS WORD 版本时, 语法上去掉了 SIMULATE 和 END .这个进程说明从 GENERATE 所产生的顾客进入理发店,找 JOE 理发,理完后离开理发店。JOE开始时是闲的。有人找 JOE 理发,如果他是闲的,他就为顾客理发;如果他是忙的,就让顾客排入队列 LINE中。当JOE为顾客理完发,他就变闲。因为 GENERATE 的功能是源源

13、不断地产生顾客,当JOE变闲时,在 LINE 排头的顾客就周而复始地让 JOE为他服务。其具体过程如下:,16,模拟开始时,GPSS处理器产生一个到达间隔时间T1,在T1个时间单位之后,GENERATE 程序块将建立第一个动态实体(即第一个需要理发的顾客),并立即进入下一个程序块,即 QUEUE LINE 程序块,也就是说排队等候理发师。当动态实体离开 GENERATE 程序块时,GPSS处理器将产生第二个到达间隔时间 T2,然后在 T2 个时间单位之后,GPSS处理器将在 GENERATE 程序块中建立第二个动态实体,并立即进入 QUEUE LINE程序块。建立过程以这样的方式继续下去。动态

14、实体一离开 GENERATE 程序块,就立即进入 QUEUE LINE 程序块,当一个动态实体进入 QUEUE 程序块时,GPSS 处理器 就记录下它进入了某一具体的队,并记录下开始等待的时间。在模拟中,动态实体排的队可以多于一个,每个队须有各自不同的名字,LINE 即是这样的一个名字。不过无论给定的名字是什么,GPSS 处理器将认定其为1号队。当动态实体进入 QUEUE LINE 程序块以后,它立即准备进入下一个程序块,即 SEIZE JOE 程序块。在现实中,一个到达的顾客希望能尽快理发,如果他到达时 JOE 有空,他将马上开始理发。但是,如果他到达时JOE正忙于给另一位顾客理发,他只能等

15、待,相当于排入一个队列中,直到上一位顾客理完发。,17,在现实中,JOE在某一时间内仅能为一位顾客服务,即他要么是闲着,要么是忙着,而忙的时候只能属于一位顾客。而当另一个动态实体希望进入 SEIZE JOE 程序块时,必须具备的前提条件是 JOE 正在闲着,否则的话,该实体只能是先在队列中排着,直到 JOE 由忙变闲为止。如果有更多的实体到达,它们一样也得排在队列依次等待。当 JOE 变闲时,由队头的实体先利用资源,这样就使 JOE 又由闲变忙,而队中的其他实体被暂时阻止进入而继续等待。这样,就可以模拟一个先来先服务的队列。动态实体通过 SEIZE JOE 程序块后立即进入 DEPART LI

16、NE 程序块。当一个动态实体进入这个 DEPART 程序时,GPSS处理器记录下它已离开符号名为 LINE 的队,并记下它结束等待状态的时间。根据每个动态实体开始等待和结束等待的时间,GPSS处理器可以计算队中每个动态实体的等待时间。在通过 DEPART LLINE 程序块以后,动态实体进入 ADVACE 16,4 程序块,即我们例中的真正理发阶段。一个 ADVANCE 程序块使 GPSS处理器能够在允许动态实体推移到下一个程序块之前保持某一时间周期。用这样的方法模拟一个顾客理发所用去的时间。当一个动态实体进入 ADVANCE 程序块时,GPSS处理器产生一段占有时间,这段时间是在12到20个

17、时间单位内随机出现的,即相当于从12,13, ,19,20中等可能地选择其中任意一个时间。,18,当动态实体离开 ADVANCE 程序块时,它马上进入 RELEASE JOE 程序块。这个程序块和 SEIZE JOE 是相对应的,当动态实体通过RELEASE 程序块时,设备 JOE 的状态由“忙”变为“闲”,即意味着排在队 LINE 首部的实体可以进入 SEIZE JOE 程序块了。在动态实体通过 REALEASE JOE 程序块后,它进入 TERMINATE 程序块,它可以终止程序运行。 TERMINATE 语句后跟的数字表示一次有几个实体离开系统。在程序中的 START 25 语句,表示本

18、过程将要产生 25 个理发人,即当有25个活动实体经过 TERMINATE 模块后,模拟立刻终止。 START与 TERMINATE 一起配合控制走过系统流程的实体数目. 注意: GENERATE 语句开始运行后就不停按要求产生实体,进入系统.TERMNATE 语句每运行一次就按语句后的数字要求将几个实体放出系统. START 语句是控制及统计语句. 它规定一共模拟多少. 如果说规定的数目与 TERMNATE 统计的离开系统的实体数目一致, 系统就停止.,19,3.2 GPSS 语言的基本模块,管理系统内设备及人的分类:1. 活动(流动)实体 系统中移动的人, 设备等2. 资源实体设施 系统中

19、固定的人, 设备等存储器 可存储动态实体的仓库, 如物料场, 煤仓等逻辑开关 只具有两种工作状态的开关型设备队列 需排队等候之处3. 统计实体表 各类统计表,20,基本模块的分类:,1. 与活动(流动)实体有关的模块 如 GENERATE; TERMINATE; ADVANCE 等2. 与设施有关的模块如 SEIZE; RELEASE 等3. 与队列有关的模块如 QUEUE; DEPART 等4. 与存储器有关的模块如 ENTER; LEAVE 等5. 与逻辑开关有关的模块6. 其他 ,21,地址 操作码 数据场 ;注解,地址即语句号,最多由五个字母, 数字组成, 必须由字母打头. 从第一列开

20、始. 必要时才用上述4个部分中,一,三,四不是必须的, 二是必须的,但一般均有二,三部分.,操作码即模块或语句名称,反应语句的基本功能和模拟过程,由多个数据组成, 各数据间用逗号分开,语句注释,可有可无,GPSS 语言的基本格式 (教材2 P98 章6.2 ),22,1. GENERATE 产生活动实体的模块,格式: GENERATE A, B, C, D, EA 到达间隔时间均值B 到达间隔时间方差, 缺省为零C 第一个动态实体产生的时间D 应产生动态实体的总数,缺省为无限制,但在模拟过程中,如果模拟没有停止,而GENERATE不能产生实体,这时系统会报错并暂停. E 被产生动态实体的优先级

21、,缺省为0例:GENERATE 5, 3, 25 在第25 时间单位产生第一个活动实体GENERATE 5, 2, , ,15 优先级为 15GENERATE 18, 4, , 25 共产生 25 个活动实体,23,2. TERMINATE 活动实体消失模块,格式: TERMINATE AA 离开系统的活动实体的个数例:TERMINATE 1TERMINATE 10TERMINATE 活动实体离开,但不统计,24,3. ADVANCE 活动实体延时模块,格式: ADVANCE A, BA 延迟时间均值, 必选项B 延迟时间方差,可选项例: ADVANCE 18, 6ADVANCE 25,25,

22、4. SEIZE 活动实体获得设施控制权的模块,格式: SEIZE A A 活动实体所要控制的设施号或名称例: SEIZE 2SEIZE JON,26,5.RELEASE 活动实体释放(离开)设施的模块,格式: RELEASE AA 被释放(离开)设施的号或名称例:RELEASE 1RELEAE JON,27,6. QUEUE 活动实体排队的模块,格式: QUEUE A, BA 活动实体所要排的队号或名称B 活动实体排队后, 队长所增加的量.缺省时为 1例:QUEUE 2QUEUE LINEQUEUE 3, 15,28,7.DEPART 活动实体离开队列的模块,格式: DEPART A, B

23、A 活动实体所在的队列号或名称 B 活动实体离开队列后, 队长减少的量, 缺省时为 1.例:DEPART 2DEPART LINEDEPART 3, 15,29,8. START 控制模拟状态的模块,格式: START A, B, C, D A 使模拟终止的动态实体计数 B 打印控制操作数. NP 为不打印. 此操作数必须是NP或空. 缺省为空. C 未使用. 用以保持与老版本的兼容性. D 输出链控制数. 1表示在标准输出报告中输出CEC和FEC. 但这个属性可在Edit/Settings/Reports中设定.,30,例题 sample1 (理发师模型 教材2 P99 6.2.2 ),GE

24、NERATE 18,6 ;顾客在(18, 6)分钟的时间间隔到来 QUEUE LINE ;顾客排入名为 LINE的队中 SEIZE JOE ;如果JOE闲,找他理发,否则停在队中 DEPART LINE ;离队 ADVANCE 16,4 ;理发花了(16, 4)分钟 RELEASE JOE ;理发完毕离开 TERMINATE 1 ;顾客离开系统 START 25 ;模拟25个顾客,31,例题 sample1 的输出报告,LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY1 GENERATE 25 0 02 QUEUE 25 0 03 SEI

25、ZE 25 0 04 DEPART 25 0 05 ADVANCE 25 0 06 RELEASE 25 0 07 TERMINATE 25 0 0FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAYJOE 25 0.860 16.057 1 0 0 0 0 0QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRYLINE 1 0 25 14 0.080 1.499 3.407 0,32,分析例题sample1 的输出报告,从输出报告可知

26、: 1. 理发师的利用率 86.5% 2. 每位顾客的平均理发时间 16.057 分钟 3. 每位顾客的平均等待时间 1.499 分钟. 其中有14为顾客没有等待,进入系统后直接接受理发师的服务. 有11位顾客等了会才接受服务. 这11位顾客的平均等待时间为3.407分钟. 1.499 * 25 =37.4753.407 * 11 =37.477条件 顾客在(18, 6)分钟的时间间隔到来 理发花了(16, 4)分钟,33,分析例题 sample1,如果我们交换条件, 将 “顾客在(18, 6)分钟的时间间隔到来” 和“理发花了(16, 4)分钟” 交换成 “顾客在(16, 4)分钟的时间间隔

27、到来”“理发花了(18, 6)分钟” 再次运行程序 观察结果会怎样?会发现理发师的利用率比上次模拟有所提高,原因呢?,34,例 Sample2 串联排队系统,某个只有一台加油器的汽车加油站, 加油的汽车到达间隔时间为均匀分布,均值为100秒,方差为 10秒。 到达加油站后先排队等候,再加油, 加油服务时间也为均匀分布,均值为80秒,方差为 8秒。加油后司机要去交费窗口排队等待交费,交费时间也为均匀分布,均值为50秒,方差为 30秒。我们将等候加油的队列定为1号队列,等候交费的队列定为2号队列,将加油器为1号设施,收费员为2号设施。这些队列和设施的代号是用数字来表示的。,35,程序清单如下:,L

28、INE EQU 1 ;定义1号队列的名称 L2 EQU 2 ;定义2号队列的名称 FF1 EQU 1 ;定义1号设施的名称 FF2 EQU 2 ;定义2号设施的名称GENERATE 100,10QUEUE LINE ;排1号队列SEIZE FF1 ;占用1号设施DEPART LINEADVANCE 80,8RELEASE FF1QUEUE L2 ;排2号队列SEIZE FF2 ;占用2号设施DEPART L2ADVANCE 50,30RELEASE FF2TERMINATE 1,36,9. EQU 定义变量的模块语句,格式: NAME EQU XNAME 变量名,必选项X 变量值,37,例sa

29、mple3 双入口单队列系统,某具有二个入口的加油站,二个入口可同时进车, 但只站一队等候, 其他条件如sample2所描述,应如何编制程序? 问题描述如下:某个具有2个入口,但只有一台加油器的汽车加油站, 每个入口处加油的汽车到达间隔时间为均匀分布,均值为100秒,方差为 10秒。 到达加油站后先排队等候,再加油, 加油服务时间也为均匀分布,均值为80秒,方差为 8秒。 在这个程序中我们又引入了新的问题,即出现了2个 GENERATE 模块。,38,程序清单如下:,LINE EQU 1 ; 定义变量LINE的值为1FF1 EQU 1 ; 定义变量FF1的值为1GENERATE 100,10

30、;第1个入口QUEUE LINESEIZE FF1DEPART LINEADVANCE 80,8RELEASE FF1TERMINATE 1GENERATE 100,10 ;第2个入口QUEUE LINESEIZE FF1DEPART LINEADVANCE 80,8RELEASE FF1TERMINATE 1,39,思考题:在上面的程序,我们观察到,2段程序一模一样,有什么方法可将程序简化?,40,10.TRANSFER 活动实体的转向模块,格式: TRANSFER A,B,C,D 注意: A,B,C,D 之间不能有空格A 转向方式, 有9种情况。(1) , 逗号(即缺省)为无条件转向 B

31、域给出的地址。(2)小数 表示去 C 域的百分比,1-A 为去 B 址的百分比, 通路是随机的。 (3)BOTH 先企图进入 B 域地址, 不成就去 C 域地址, 两个地址都不通,就保留在此模块中。(4)ALL 模. 在此模式下,语句会从B地址开始进行尝试,如果不行,就尝试增加D量的下一地址,直到C地址结束.(5)Pick 随机模式. 在此模式下,语句会在B,C地址间随机挑选一个地址转向.随机数可在Edit / Settings 的 Random Numbers 页面的TRANSFER Blocks 选项中指定 B ,C 与 A 有关的参数 D 在ALL模式下,地址由B增加到C的增加量。缺省为

32、1 。可选项。,41,利用TRANSFER模块语句简化Sample3程序,LINE EQU 1 FF1 EQU 1GENERATE 100,10 ;入口1TRANSFER ,DONE ; 转到队列 LINEGENERATE 100,10 ;入口2 DONE QUEUE LINESEIZE FF1DEPART LINEADVANCE 80,8RELEASE FF1TERMINATE 1,42,例sample4 双入口串联排队系统,某个有2个入口但只有一台加油器的汽车加油站, 每个入口处加油的汽车到达间隔时间都为均匀分布,均值为100秒,方差为 10秒。 到达加油站后先排队等候,再加油, 加油服务

33、时间也为均匀分布,均值为80秒,方差为 8秒。加油后司机要去交费窗口排队等待交费,交费时间也为均匀分布,均值为50秒,方差为 30秒。我们将等候加油的队列定为1号队列,等候交费的队列定为2号队列,将加油器为1号设施,收费员为2号设施。这些队列和设施的代号是用数字来表示的。,43,程序清单如下:,LINE1 EQU 1 ;定义1号队列的名称 LINE2 EQU 2 ;定义2号队列的名称 FF1 EQU 1 ;定义1号设施的名称 FF2 EQU 2 ;定义2号设施的名称GENERATE 100,10 ;入口1TRANSFER ,DONE ;无条件转入加油队列GENERATE 100,10 ;入口2

34、 DONE QUEUE LINE1 ;排1号队列SEIZE FF1 ;占用1号设施DEPART LINE1ADVANCE 80,8RELEASE FF1QUEUE LINE2 ;排2号队列SEIZE FF2 ;占用2号设施DEPART LINE2ADVANCE 50,30RELEASE FF2TERMINATE 1,44,课堂练习 Example1: 双入口串联排队系统,某个有2个入口但只有一台加油器的汽车加油站, 每个入口处加油的汽车到达间隔时间都为均匀分布,入口1均值为100秒,方差为 10秒;入口2,均值为80秒,方差为20秒。 汽车到达加油站后先排队等候,再加油, 加油服务时间也为均匀

35、分布,均值为60秒,方差为10秒。加油后司机要去交费窗口排队等待交费,交费时间也为均匀分布,均值为50秒,方差为40秒。请编程模拟,求平均排队时间(排队加油时间,排队缴费时间),加油器的利用率。提示: 将等候加油的队列定为1号队列,等候交费的队列定为2号队列,将加油器为1号设施,收费员为2号设施。这些队列和设施的代号是用数字来表示的。,45,Example 程序清单如下:,LINE1 EQU 1 ;定义1号队列的名称,加油队列 LINE2 EQU 2 ;定义2号队列的名称,缴费队列 FF1 EQU 1 ;定义1号设施的名称,加油器 FF2 EQU 2 ;定义2号设施的名称,缴费窗口GENERA

36、TE 100,10 ;入口1TRANSFER ,DONE ;无条件转到 加油队列GENERATE 80,20 ;入口2 DONE QUEUE LINE ;排1号队列SEIZE FF1 ;占用1号设施DEPART LINEADVANCE 60,10RELEASE FF1QUEUE L2 ;排2号队列SEIZE FF2 ;占用2号设施DEPART L2ADVANCE 50,40RELEASE FF2TERMINATE 1 ;离开系统,46,例Sample5 简单并联排队系统,某只有一个入口,但有2台加油器的汽车加油站, 加油的汽车到达间隔时间都为均匀分布,均值为100秒,方差为 10秒。 到达加油

37、站后先排一个队等候,再随机去其中的一个加油器上加油, 加油服务时间也为均匀分布,均值为80秒,方差为 8秒。(交费环节略),47,程序清单:,GENERATE 100,10 ;汽车到达QUEUE LINE ;排队TRANSFER BOTH, FF1, FF2 ;任意去1,2号加油器FF1 SEIZE 1 ;1号加油器DEPART LINEADVANCE 80,8RELEASE 1TERMINATE 1FF2 SEIZE 2 ;2号加油器DEPART LINEADVANCE 80,8RELEASE 2TERMINATE 1,48,例Sample6 双入口简单并联排队系统,某有2个入口,2台加油器

38、的汽车加油站, 每个入口处加油的汽车到达间隔时间都为均匀分布,均值为100秒,方差为 10秒。 到达加油站后先排一个队等候,再随机去其中的一个加油器上加油, 加油服务时间也为均匀分布,均值为80秒,方差为 8秒。加油后离开系统(交费环节略)。我们将2个加油器分别设为F11,F12号设施。,49,程序清单:,GENERATE 100,10 ;1入口处汽车到达TRANSFER , DONE ;转去排加油的队列GENERATE 100,10 ;2入口处汽车到达 DONE QUEUE LINE ;排加油队列TRANSFER BOTH, FF11, FF12 ;任意去1,2号加油器 FF11 SEIZE

39、 1 ;1号加油器DEPART LINEADVANCE 80,8RELEASE 1TERMINATE 1FF12 SEIZE 2 ;2号加油器DEPART LINEADVANCE 80,8RELEASE 2TERMINATE 1,50,例Sample7 简单并联+串联排队系统,某有1个入口,2台加油器,一个交费窗口的汽车加油站, 加油的汽车到达间隔时间都为均匀分布,均值为100秒,方差为 10秒。 到达加油站后先排一个队等候,再随机去其中的一个加油器上加油, 加油服务时间也为均匀分布,均值为80秒,方差为 8秒。加油后司机要去交费窗口排队等待交费,交费时间也为均匀分布,均值为50秒,方差为 3

40、0秒。我们将等候加油的队列定为1号队列,等候交费的队列定为2号队列,将2个加油器分别设为1(定义名称为FF11),2 (定义名称为FF12)号设施,收费员为3(定义名称为FF2)号设施。这些队列和设施的代号是用数字来表示的。,51,LINE1 EQU 1 LINE2 EQU 2GENERATE 100,10 ;汽车到达QUEUE LINE1 ;排队加油TRANSFER BOTH, FF11, FF12 ;任意去1,2号加油器FF11 SEIZE 1 ;1号加油器DEPART LINE1 ADVANCE 80,8RELEASE 1TRANSFER ,FF2 ;转去交费FF12 SEIZE 2 ;

41、2号加油器DEPART LINE1ADVANCE 80,8RELEASE 2 FF2 QUEUE LINE2 ;排队交费SEIZE 3DEPART LINE2ADVANCE 50,30RELEASE LINE2 TERMINATE 1 ;离开系统,52,思考题:观察Sample7的运行结果,发现在设施中没有标号为2(即第2个加油器)的运行记录, 为什么?FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY1 101 0.794 79.395 1 101 0 0 0 03 100 0.487 49.135 1 0

42、 0 0 0 0分析: 如果将汽车到达的间隔数据修改为 ( 50, 5) , 结果又会怎样?,53,例Sample8 双入口简单并联+串联排队系统,某有2个入口,2台加油器的汽车加油站, 每个入口处加油的汽车到达间隔时间都为均匀分布,均值为100秒,方差为 10秒。 到达加油站后先排一个队等候,再随机去其中的一个加油器上加油, 加油服务时间也为均匀分布,均值为80秒,方差为 8秒。加油后司机要去交费窗口排队等待交费,交费时间也为均匀分布,均值为50秒,方差为 30秒。我们将等候加油的队列定为1号队列,等候交费的队列定为2号队列,将加油器设为1号设施(分别为FF11,FF12),收费员为2号设施

43、。这些队列和设施的代号是用数字来表示的。,54,LINE1 EQU 1 LINE2 EQU 2GENERATE 100,10 ;1号入口汽车到达TRANSFER ,DONEGENERATE 100,10 ;2号入口汽车到达DONE QUEUE LINE1 ;排队加油TRANSFER BOTH, FF11, FF12 ;任意去1,2号加油器FF11 SEIZE 1 ;1号加油器DEPART LINE1 ADVANCE 80,8RELEASE 1TRANSFER ,FF2FF12 SEIZE 2 ;2号加油器DEPART LINE1ADVANCE 80,8RELEASE 2 FF2 QUEUE LINE2 ;排队交费SEIZE 3DEPART LINE2ADVANCE 50,30RELEASE 3 TERMINATE 1 ;离开系统,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报