1、GPSS 基本模块分类(1) 与活动实体有关的模块A. 产生活动实体的模块 GENERATE A,B,C,D,E,F,G(分别为:到达间隔时间均值,到达间隔时间方差,第一个动态实体产生的时间,应产生动态实体的总数,优先级)注:必选 A 或 DB. 活动实体延时模块 ADVANCE A, B(延迟时间均值必选项,延迟时间方差可选项)C. 活动实体结束模块 TERMINATE A(离开系统的活动实体个数)D. 活动实体的转向模块 TRANSFER A,B,C,D 注意: A,B,C,D 之间不能有空格A 的转向方式:,逗号(即缺省)为无条件转向 B 域给出的地址小数 表示去 C 域的百分比,1-A
2、 为去 B 址的百分比, 通路是随机的。BOTH 先去 B 域地址, 不成就去 C 域地址,都不成就保留在原模块中。B 为域地址。(1) 活动实体参数的赋值语句 ASSIGN A,B,CA 为需要赋值或改变参数的参数号或参数名,A 域中的+,-号表示从原有参数中加上或减去 B。B 为需要赋给参数 A 或从参数 A 中加上或减去的数值。(1) 比较测试模块 TEST O A,B,CO 为辅助码,必选项. 必须是 E(等于),G(大于),GE(大于等于), L(小于),LE(小于等于),或 NE(不等于)。A,B 为要比较的内容,可以是名称 ,数字 ,字符串,SNA 或 SNA 的参数。C 是比较
3、结果为假时,活动实体要进入的模块号。(2) 逻辑开关设置语句 LOGIC O A (O 表示辅助码,A 为逻辑开关号)逻辑开关三种形式:LOGIC R A ;将第 A 号逻辑开关置 1LOGIC S A ;将第 A 号逻辑开关置 0LOGIC I A ;将第 A 号逻辑开关反转(3) 初始化语句(逻辑开关,矩阵实体 ) INITIAL A,B(B 缺省为 1)注:若只是初始化逻辑开关,则必须以 LS 开始模式,即 INITIAL LS$one ;初始化逻辑开关 one 为 1。当然也可初始化系统内其他保存值。多入口多设施(涉及到存储器)某有 2 个入口,2 台加油器的汽车加油站, 每个入口处加
4、油的汽车到达间隔时间都为均匀分布,均值为 100 秒,方差为 10 秒。 到达加油站后先排一个队等候,再随机去其中的一个加油器上加油, 加油服务时间也为均匀分布,均值为 80 秒,方差为 8 秒。加油后司机要去交费窗口排队等待交费,交费时间也为均匀分布,均值为 50 秒,方差为 30 秒。我们将等候加油的队列定为 1 号队列,等候交费的队列定为 2 号队列,将加油器为 1 号设施,定义为存储器, 收费员为 2 号设施。这些队列和设施的代号是用数字来表示的。LINE1 EQU 1LINE2 EQU 2FF2 EQU 2FF1 STORAGE 2 ;存储器的定义GENERATE 100,10 ;1
5、号入口汽车到达TRANSFER ,DONE ;无条件转换GENERATE 100,10 ;2号入口汽车到达DONE QUEUE LINE1 ;排队加油ENTER FF1,1 ;进入存储器,开始加油DEPART LINE1 ;离开队列一ADVANCE 80,8 ;服务时间LEAVE FF1,1 ;离开加油器QUEUE LINE2 ;排队交费:第二个队列SEIZE FF2 ;获取服务设施DEPART LINE2ADVANCE 50,30RELEASE FF2 TERMINATE 1 ;离开系统有一家小型超市,顾客以 3010 秒的时间间隔到达,超市准备了 50 个篮子,来到市场的顾客发现有空篮子,
6、就取一个进入,否则离去。超市内有三条巷道,经过观察,第一巷道顾客进入购货的概率为 60,凡是进去的则滞留 5 至 7 分钟(均匀分布) ,选购 3 至 5 件货物(均匀分布) ,第二巷道顾客进入购货的概率为 55,凡是进去的则滞留 8 至 12 分钟(均匀分布) ,选购 2 至 4 件货物(均匀分布) ,第三巷道顾客进入购货的概率为 50,凡是进去的则滞留 3 至 7 分钟(均匀分布) ,选购 0 至 4 件货物(均匀分布) 。购物后,选择两个付款台中队列最短的去付款,如没有购物则直接离去。服务员会将空篮子放回进门处,以便后来的顾客使用。假设:付款时间与购物的件数成正比,每件货物的平均服务时间
7、为6 秒。对该系统模拟 8 小时SIMULATEBASKET STORAGE 50GENERATE 30,10ASSIGN 1,0TRANSFER BOTH,IN,EXTIN ENTER BASKETTRANSFER 0.40,LAN1,NXT1LAN1 ADVANCE 360,60ASSIGN 1+,(3+RN13)NXT1 TRANSFER 0.45,LAN2,NXT2LAN2 ADVANCE 600,120ASSIGN 1+,(2+RN23)NXT2 TRANSFER 0.50,LAN3,NXT3LAN3 ADVANCE 300,120ASSIGN 1+,(RN35)NXT3 TEST
8、G P1,0,OUTTEST E Q1,Q2,GOQ2TRANSFER 0.5,GOQ1,GOQ2NXT4 TEST L Q1,Q2,GOQ2GOQ1 QUEUE 1SEIZE 1ADVANCE (6#P1)RELEASE 1DEPART 1TRANSFER ,OUTGOQ2 QUEUE 2SEIZE 2ADVANCE (6#P1)RELEASE 2DEPART 2OUT LEAVE BASKETEXT TERMINATEGENERATE 3600TERMINATE 1START 8 (1 )一个零件加工过程,零件以 205 分的速率到达,到达后先由机床 A 加工,加工时间为 165 分,然后
9、再由机床 B 加工,加工时间为 1510 分,最后通过一个检验员检验,检验需要 102 分,其中 5的零件加工不合格,需要重新加工。试仿真 40 小时和生产 2000个合格零件,估算机床的平均利用率。试仿真 40 小时SIMULATEGENERATE 20,5AAA QUEUE 1SEIZE 1DEPART 1ADVANCE 16,5RELEASE 1QUEUE 2SEIZE 2DEPART 2ADVANCE 15,10RELEASE 2QUEUE 3SEIZE 3DEPART 3ADVANCE 10,2RELEASE 3TRANSFER 0.05,BBB,AAABBB TERMINATEGE
10、NERATE 60TERMINATE 1START 40生产 2000 个合格产品SIMULATEGENERATE 20,5AAA QUEUE 1SEIZE 1DEPART 1ADVANCE 16,5RELEASE 1QUEUE 2SEIZE 2DEPART 2ADVANCE 15,10RELEASE 2QUEUE 3SEIZE 3DEPART 3ADVANCE 10,2RELEASE 3TRANSFER 0.05,BBB,AAABBB TERMINATE 1START 2000(2 )一个售后服务电话系统有 20 部电话,服务请求电话以 2015 秒的速率到达,当电话占用时服务请求者过 64
11、 分钟重拨,每个电话持续 54 分钟,仿真 24 小时,估算完成一个服务电话的平均时间。若系统的初始条件是:仿真开始时,已有 12 部电话正在服务,剩余服务时间为 43 分钟。SIMULATESTR STORAGE 20GENERATE 20,15QUEUE 1TRANSFER BOTH,ACC,AGNACC ENTER STRADVANCE 300,240LEAVE STRDEPART 1TERMINATE AGN ADVANCE 360,240TRANSFER BOTH,ACC,AGNGENERATE ,12ENTER STR,1ADVANCE 240,180LEAVE STRTERMIN
12、ATE GENERATE 3600TERMINATE 1START 24A、 B、C 是三个汽车清洗店,汽车以 85 分钟到达。服务以每 1510 分钟完成一辆,每个清洗店同时只能清洗一辆汽车。顾客喜欢 A 超过喜欢 B,喜欢 B 超过喜欢 C。(1 )若喜欢的清洗店忙的话,则选择空的清洗店,否则离开。仿真 100 小时,估算三家汽车清洗店的利用率。(2 )若:没有空的清洗店,则要排队等待,在又如何?SIMULATEGENERATE 8,5TEST E (F1#F2#F3),0TRANSFER BOTH,NXTA,ADD1NXTA SEIZE 1ADVANCE 15,10RELEASE 1TE
13、RMINATEADD1 TRANSFER BOTH,NXTB,NXTCNXTB SEIZE 2ADVANCE 15,10RELEASE 2TERMINATE NXTC SEIZE 3ADVANCE 15,10RELEASE 3TERMINATE GENERATE 60TERMINATE 1START 100 1-2 学生到食堂就餐,以 52 秒的速率到达,食堂有三餐厅,一个供应中餐,一个供应面食和糕点,一个供应西餐。有 70的学生吃中餐,有 20的学生吃面食和糕点,有 10的学生吃西餐。营业员的服务时间为 62 秒。分别仿真 1000 个学生和仿真 1 小时,模拟这三个餐厅的就餐情况?若服务时
14、间不同,中餐为 63,面食和糕点为 103 分,西餐为125,则又如何?SIMULATEGENERATE 5,2QUEUE 1TRANSFER .7,ELSE,ZCZC SEIZE 1DEPART 1ADVANCE 6,2RELEASE 1TERMINATE 1ELSE TRANSFER .66,XC,MGXC SEIZE 2DEPART 1ADVANCE 6,2RELEASE 2TERMINATE 1MG SEIZE 3DEPART 1ADVANCE 6,2RELEASE 3TERMINATE 1START 1000END仿真一小时:GENERATE 60TERMINATE 1START 1
15、1-4 某火车站有两个大厅,大厅 1 旅客以每 52 秒到达一个,大厅 2 旅客以每 83 秒到达一个,步行到大厅 1 需要 205 秒,步行到大厅 2 需要 255 秒,两个大厅均可走向托运的行李处,两个大厅到达行李托运处需 103 秒,有 30的人需要托运行李。服务时间为3010 秒。仿真 1000 个旅客。SIMULATEGENERATE 5,2ADVANCE 20,5TRANSEFER .3,LK,ADDLK TERMINATE 1GENERATE 8,3ADVANCE 25,5TRANSEFER .3,LK,ADDADD ADVANCE 10,3QUEUE 1SEIZE 1DEPAR
16、T 1ADVANCE 30,10RELEASE 1TERMINATE 1START 1000END1-6 理发馆中只有一个理发师,顾客以 14+6 分钟速率到达,理发师以 10+4 分钟速率为顾客理发,营业时间为上午 8: 00 至 12:00,下午 12:30 至 4:00. 一般情况,12:00 至12: 30 吃自带点心,作为中饭。如 12:00 时有顾客正在理发,则理完再吃。12:00 时正在等待的顾客或吃饭期间到来的顾客则继续排队等待。不论何种情况,理发师吃饭时间均为 30 分钟。控制运行时间为营业一天。为了简单起见,下午 4:30 到,不管一切情况结束服务。SIMULATEGENE
17、RATE 14,6QUEUE 1SEIZE 1DEPART 1ADVANCE 16,4TEST_GE C$1,240,XXTEST_LE C$1,270,XXADVANCE 30XX RELEASE 1TERMINATEGENERATE 510TERMINATE 1START 1END1-5 医院住院部有 20 各床位,接待普通和急诊病人,普通病人每人 4+1 小时到达一位,急诊病人每 8+4 小时到达一位,病人住院时间为 52+4 小时,急诊病人到达后,如果没有空床,则立即离去,到别的医院就诊。为了让急诊病人住上院,院方规定,普通病人要求住院时,必须能保证有两张空床留给可能来的急诊病人时,才
18、能立即住院。否则,就得排队等待。控制运行 30 天SIMULATE1 STORAGE 20GENERATE 4,1QUEUE 1TEST_L S$1,18ENTER 1DEPART 1ADVANCE 52,4LEAVE 1TERMINATEGENERATE 8,4TEST_L S$1,20,LKENTER 1ADVANCE 52,4LEAVE 1TERMINATELK TERMINATEGENERATE 720TERMINATE 1START 1END1-9 A、B、C 是三个汽车清洗店,汽车以 85 分钟到达。服务以每 156 分钟完成一辆,每个清洗店同时只能清洗一辆汽车。顾客喜欢 A 超过
19、喜欢 B,喜欢 B 超过喜欢 C。若所选的清洗店忙的话,则选择空的清洗店,否则离开。仿真 100 小时,估算三家汽车清洗店的利用率。若:没有空的清洗店,则要排队等待,在又如何?SIMULATE1 VARIABLE F$1*F$2*F$3 GENERATE 8,5QUEUE 1 TEST_E V$1,0TRANSFER BOTH,A,ADD1A SEIZE 1DEPART 1ADVANCE 15,6RELEASE 1TERMINATEADD1 TRANSFER BOTH,B,CB SEIZE 2DEPART 1ADVANCE 15,6RELEASE 2TERMINATEC SEIZE 3DEPA
20、RT 1ADVANCE 15,6RELEASE 3TERMINATEGENERATE 60TERMINATE 1START 100END1-11 一个仓库共存放了 2000 吨货物,货物以三种规模出库,少量( 10 吨) ,中等(20 吨) ,大量(50 吨) ,分别以 105 分,15 分,3010 分的速率出库。如果没有货位达到的情况下,一个仓库能维持供货多少时间?SIMULATE1 STORAGE 2000GENERATE 10,5ASSIGN 1,10TEST_GE R$1,P$1,ADDTRANSFER,ADD1GENERATE 15ASSIGN 1,20TRANSFER ,ADD1GENERATE 30,10ASSIGN 1,50ADD1 ENTER 1,P$1LEAVE 1,0TERMINATEADD TERMINATE 1START 1END