Gpssworld模擬(二):並排排隊系統模擬

2023-04-10 21:00:52

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,a,sel1
sel1	transfer	both,b,sel2
sel2	transfer	both,c,out
out	terminate
a	seize	a1
	advance	15,6
	release	a1
	terminate
b	seize	b1
	advance	15,6
	release	b1
c	seize	c1
	advance	15,6
	release	c1
	terminate
	generate	60
	terminate	1
	start	100

第一問-all方法

	GENERATE	8,5
	RANSFER	ALL,ADDI,ADD4,4
ADD1	SEIZE	1
	ADVANCE	15,6
	RELEASE	1
	TERMINATE
ADD2	SEIZE	2
	ADVANCE	15,6
	RELEASE	2
	TERMINATE	ADD3
ADD3	SEIZE	3
	ADVANCE	15,6
	RELEASE	3
	TERMINATE	
ADD4	TERMINATE	GENERATE 6000
	TERMINATE	1
	START	1

第二問-both方法

que	storage	3	
	generate	8,5
	enter	que
	transfer	both,a,sel
sel	transfer	both,b,c
a	seize	a1
	advance	15,6
	release	a1
	leave	que
	terminate
b	seize	b1
	advance	15,6
	release	b1
	leave	que
	terminate
c	seize	c1
	advance	15,6
	release	c1
	leave	que
	terminate
	generate	60
	terminate	1
	start	100

3.12 顧客進人一個系統,要按序列經過兩個服務站。第一站上有三位服務員,其服務質量相同,服務時間為335±160秒。第二站上只有一位服務員,服務時間為110±75秒,顧客以每隔120±50秒到達一位。如果站上服務員全忙,則顧客在相應的佇列等待,要求按下列兩種情況分別建立GPSSWorld模型,執行24小時,統計顧客逗留在系統中的平均時間情況,第一,假定兩個佇列的空間不受限制;第二,第二站上佇列只有一個位置,以完成第一站服務的顧客發現第二站佇列位置被佔領時,不能離開第一站服務位置,即後面等待顧客不能進人第一站服務。

解:

FW1_BAR	STORAGE	3
	GENERATE	120,50
	QUEUE	Q_FW1
	ENTER	FW1_BAR
	DEPART	Q_FW1
	ADVANCE	335,160
	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