4.3 某一个加油站能够配给三个级别的燃油:①家庭取暖用的燃油;②轻工业用的燃油;③运输用的燃油。每一级别的燃油都有一个对应的油泵。订单中燃油的数量在3000加仑和5000加仑中变化,每次增加10加仑,是均匀分布。这个站点最多能容纳12辆车。来加油站装油的汽车到达的平均时间间隔是18分钟(服从指数分布),仿真加油站5天的运营情况,假设车辆加满油所需的时间由以下因素决定:
(1)油泵效率(对①②③这三种油分别为每1000加仑需要6,5和7分钟)。
(2)订单的大小。
(3)开始加油时站点已容纳的车辆数量(每一辆车需要额外的30秒)。
(4)两分钟的准备和安装时间。
解:文章来源:https://www.toymoban.com/news/detail-409814.html
Station STORAGE 12
VCT FUNCTION RN1,D3 ;RN1作为自变量返回一个0~1的小数
.333,6/.667,5/1,7 ;等概率进入3种油泵处加油
GENERATE (EXPONENTIAL(1,0,18))
QUEUE q_gas
ENTER Station
ADVANCE ((3000+RN1@201#10)#FN$VCT/1000+0.5#S$Station+2) ;
LEAVE Station
DEPART q_gas
TERMINATE
GENERATE 60
TERMINATE 1
START 120 ;24h*5d
解析:
ADVANCE中分别表示4个因素:
(3000+RN1@201#10)#FN$VCT/1000
:订单的大小;油泵效率
0.5#S$Station
:每一辆车需要额外的30秒
2
:两分钟的准备和安装时间
指数分布函数:
自定义函数:
离散值函数:
SNA码:
运算符:
3.7 A、B、C是三个汽车清洗店,汽车以8±5分钟到达。服务以每15±6分钟完成一辆,每个清洗店同时只能清洗一辆汽车。顾客喜欢A超过喜欢B,喜欢B超过喜欢C。若喜欢的清洗店忙的话,则选择空的清洗店,否则离开,若到达和离开事件同时发生时优先处理离开事件。仿真100小时,估算三家汽车清洗店的利用率。若没有空的清洗店,则要排队等待,又将如何?(提示:对于第二问可以在第一问的基础上增加一个容量为3的存储器来实现)
解:
第一问-both方法
generate 8,5
transfer both,adda,sel1
adda seize a_1
advance 15,6
release a_1
terminate
sel1 transfer both,addb,sel2
addb seize b_1
advance 15,6
release b_1
terminate
sel2 transfer both,addc,out
addc seize c_1
advance 15,6
release c_1
terminate
out terminate
generate 60
terminate 1
start 100
第一问-all方法
GENERATE 8,5
TRANSFER ALL,ADD1,ADD4,4
ADD1 SEIZE 1
ADVANCE 15,6
RELEASE 1
TERMINATE
ADD2 SEIZE 2
ADVANCE 15,6
RELEASE 2
TERMINATE
ADD3 SEIZE 3
ADVANCE 15,6
RELEASE 3
TERMINATE
ADD4 TERMINATE
GENERATE 6000
TERMINATE 1
START 1
第一问-select方法
GENERATE 8,5
SELECT NU 1,1,3,,,OUT ;按顺序选择是空闲的理发师,否则离开
SEIZE P1
ADVANCE 15,6
RELEASE P1
OUT TERMINATE
GENERATE 60
TERMINATE 1
START 100
根据仿真结果UTIL.得到三家汽车清洗店的利用率分别为77.5%、67.0%、38.2%
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
1 309 0.775 15.051 1 859 0 0 0 0
2 263 0.670 15.280 1 861 0 0 0 0
3 152 0.382 15.074 1 860 0 0 0 0
第二问-both方法
que storage 3
generate 8,5
enter que
transfer both,a,sel
sel transfer both,b,c
a seize a_1
advance 15,6
release a_1
leave que
terminate
b seize b_1
advance 15,6
release b_1
leave que
terminate
c seize c_1
advance 15,6
release c_1
leave que
terminate
generate 60
terminate 1
start 100
根据仿真结果UTIL.得到三家汽车清洗店的利用率分别为79.1%,67.6%,39.9%
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
A_1 318 0.791 14.922 1 848 0 0 0 0
B_1 267 0.676 15.183 1 847 0 0 0 0
C_1 163 0.399 14.702 1 0 0 0 0 0
第二问-select方法
GENERATE 8,5
;TEST NE (E1+F2+F3),3 ;先测试理发师是否空间,没有空闲则排队等待。所以测试1、2、3的SNA码F时,返回设施的状态,占用为1,如果三个加起来不等于3,则代表有空闲的。
TEST E (F1#F2#F3),0 ;这个方法也可以。SELECT是无条件进入模块,所以需要增加一个条件测试语句。
SELECT NU 1,1,3,,,LK ;选择1-3号设施中有空的,存在参数1中
SEIZE Pl ;P为返回活动实体所携带的参数值,无论是1、2、3都是走服务的流程
ADVANCE 15,6
RELEASE Pl
LK TERMINATE ;不空闲贝则离开
GENERATE 100
TERMINATE 1
START 60
3.12 顾客进人一个系统,要按序列经过两个服务站。第一站上有三位服务员,其服务质量相同,服务时间为335±160秒。第二站上只有一位服务员,服务时间为110±75秒,顾客以每隔120±50秒到达一位。如果站上服务员全忙,则顾客在相应的队列等待,要求按下列两种情况分别建立GPSSWorld模型,运行24小时,统计顾客逗留在系统中的平均时间情况,第一,假定两个队列的空间不受限制;第二,第二站上队列只有一个位置,已完成第一站服务的顾客发现第二站队列位置被占领时,不能离开第一站服务位置,即后面等待顾客不能进入第一站服务。
解:
FW1_BAR STORAGE 3
GENERATE 120,50
QUEUE Q_FW1
ENTER FW1_BAR
ADVANCE 335,160
DEPART Q_FW1
LEAVE FW1_BAR
QUEUE Q_FW2
SEIZE S_FW2
DEPART Q_FW2
ADVANCE 110,75
RELEASE S_FW2
TERMINATE
GENERATE 60
TERMINATE 1
START 24
根据仿真结果,顾客逗留在系统中的平均时间为Q_FW1、Q_FW2和S_FW2的AVE. TIME
之和113.306+307.785+59.708=480.799分钟文章来源地址https://www.toymoban.com/news/detail-409814.html
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
S_FW2 7 0.551 113.306 1 26 0 0 0 1
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
Q_FW1 4 4 12 0 2.565 307.785 307.785 0
Q_FW2 2 1 8 3 0.332 59.708 95.533 0
STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY
FW1_BAR 3 0 0 3 11 1 2.267 0.756 0 1
到了这里,关于Gpssworld仿真(二):并排排队系统模拟的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!