Gpssworld仿真(二):并排排队系统模拟

4.3 某一个加油站能够配给三个级别的燃油:①家庭取暖用的燃油;②轻工业用的燃油;③运输用的燃油。每一级别的燃油都有一个对应的油泵。订单中燃油的数量在3000加仑和5000加仑中变化,每次增加10加仑,是均匀分布。这个站点最多能容纳12辆车。来加油站装油的汽车到达的平均时间间隔是18分钟(服从指数分布),仿真加油站5天的运营情况,假设车辆加满油所需的时间由以下因素决定:
(1)油泵效率(对①②③这三种油分别为每1000加仑需要6,5和7分钟)。
(2)订单的大小。
(3)开始加油时站点已容纳的车辆数量(每一辆车需要额外的30秒)。
(4)两分钟的准备和安装时间。

解:

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分钟

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
posted @ 2023-04-10 20:28  孤飞  阅读(485)  评论(0编辑  收藏  举报