黃雅楠
【摘要】首先,本文介紹了經(jīng)典的兩個(gè)服務(wù)員的并聯(lián)系統(tǒng);其次,通過對排隊(duì)規(guī)則的改變,更新該系統(tǒng)并給出算法;最后,用R軟件對系統(tǒng)進(jìn)行模擬.
【關(guān)鍵詞】排隊(duì)論;并聯(lián)系統(tǒng);R軟件模擬
一、引言
排隊(duì)是人們?nèi)粘I钪薪?jīng)常遇到的現(xiàn)象.排隊(duì)論,又稱隨機(jī)服務(wù)系統(tǒng),是通過對服務(wù)對象到來和服務(wù)時(shí)間的統(tǒng)計(jì)研究,得出一些數(shù)量指標(biāo)的統(tǒng)計(jì)規(guī)律,根據(jù)這些規(guī)律來改進(jìn)并優(yōu)化服務(wù)系統(tǒng)的結(jié)構(gòu).由于排隊(duì)論的應(yīng)用越來越廣泛,排隊(duì)規(guī)則和服務(wù)機(jī)構(gòu)也變得愈之復(fù)雜,解析方法已無法求解,而隨著計(jì)算機(jī)技術(shù)的發(fā)展,計(jì)算機(jī)模擬成為求解排隊(duì)系統(tǒng)并分析系統(tǒng)性能的一種有效的方法.
二、排隊(duì)系統(tǒng)理論
一個(gè)排隊(duì)系統(tǒng)有四個(gè)基本要素:輸入過程、排隊(duì)規(guī)則、服務(wù)時(shí)間和服務(wù)系統(tǒng).
輸入過程,是描述顧客來源及顧客是按照怎樣的規(guī)律到達(dá)排隊(duì)系統(tǒng),它包括顧客總體數(shù)、顧客到達(dá)類型、相繼顧客到達(dá)的間隔時(shí)間服從怎樣的分布,分布參數(shù)是什么.排隊(duì)規(guī)則,是指服務(wù)是否允許排隊(duì),顧客是否愿意等待,在排隊(duì)等待的情況下,服務(wù)的順序是怎樣的.服務(wù)時(shí)間,是指服務(wù)員對顧客服務(wù)所消耗的時(shí)間,是一個(gè)隨機(jī)變量,它們相互之間獨(dú)立同分布.服務(wù)機(jī)構(gòu),即服務(wù)臺(tái)的數(shù)目.
三、模型分析
考慮兩個(gè)服務(wù)員的模型,顧客按照非齊次的Possion過程到來.若兩個(gè)服務(wù)員1,2都是忙的,則來到的顧客進(jìn)入排隊(duì)等候的隊(duì)伍,設(shè)每個(gè)服務(wù)員都有其自己的排隊(duì),一個(gè)來到者加入最短的隊(duì)伍.當(dāng)來到者發(fā)現(xiàn)兩個(gè)隊(duì)伍一樣長(或兩個(gè)服務(wù)員前都是空的)時(shí),就來到服務(wù)員1前.當(dāng)顧客接受完一個(gè)服務(wù)員的服務(wù)后將自動(dòng)離開此系統(tǒng).每個(gè)顧客接受服務(wù)員i的服務(wù)時(shí)間有分布函數(shù)Gi,i=1,2.
我們要模擬上述模型來分析每個(gè)顧客花費(fèi)在這個(gè)系統(tǒng)中的總時(shí)間和每個(gè)服務(wù)員服務(wù)的顧客數(shù).由于有兩個(gè)服務(wù)員,故顧客不必按照來時(shí)的順序離開,要知道哪一個(gè)顧客將離開此系統(tǒng)就要根據(jù)服務(wù)的完成情況來確定,故我們必須了解哪些顧客是在該服務(wù)系統(tǒng)中.當(dāng)顧客到達(dá)時(shí),我們對其進(jìn)行編號,第一個(gè)到達(dá)的顧客編號為1,下一個(gè)編號為2,等等.假設(shè)顧客i和j正在接受服務(wù),其中i
為了分析此系統(tǒng),我們引入下述變量.
1.時(shí)間變量:(1)當(dāng)前時(shí)間t;(2)規(guī)定計(jì)時(shí)從0開始t0;(3)顧客到達(dá)時(shí)間tA;(4)顧客花在系統(tǒng)中的平均時(shí)間TT;(5)離開服務(wù)員1,2的時(shí)間t1,t2.2.系統(tǒng)狀態(tài)變量:S1,S2.3.計(jì)數(shù)變量:(1)接受S1,S2服務(wù)顧客數(shù)統(tǒng)計(jì)c1,c2;(2)S1,S2中接受服務(wù)顧客序列號i1,i2;(3)到達(dá)人數(shù)N;(4)系統(tǒng)中的人數(shù)n.4.輸出變量:(1)在S1中接受服務(wù)顧客所占比重c1_percent;(2)離開S1,S2的時(shí)間及最后一個(gè)顧客離開的時(shí)間D1,D2,D.
四、算法
設(shè)yi是分布Gi,i=1,2的隨機(jī)變量.模擬算法如下:
第一步:初始步,令t=t0=tA=0,c1=c2=0,n=N=0,i1=i2=0,TT=0,
D1=D2=0,c1_percent=0,wq=99 999,t1=t2=wq,輸出結(jié)果.
第二步:當(dāng)?shù)竭_(dá)時(shí)間及離開服務(wù)員的時(shí)間有限,若tA是t1,t2,tA中最小的,則將tA賦給t,到達(dá)人數(shù)N遞增,賦予tA一個(gè)分布,進(jìn)行第三步;若t1是t1,t2,tA中最小的,則將t1賦給t,接受S1服務(wù)的顧客c1遞增,進(jìn)行第四步;若t2是t1,t2,tA中最小的,則將t2賦給t,接受S2服務(wù)的顧客c2遞增,進(jìn)行第五步.
第三步:有顧客到達(dá)的情況,若人數(shù)n=0,則n=n+1,i1=N,令y1為指數(shù)分布,且t1=t+y1;若人數(shù)n=1且第i1個(gè)顧客數(shù)大于0,則n=n+1,i1=N,令y2為另一指數(shù)分布,且t2=t+y2;若人數(shù)n=1且第i2個(gè)顧指數(shù)大于0,令n=n+1,i1=N,令y1為指數(shù)分布,且t1=t+y1;若人數(shù)n>1,令n=n+1,表明S1,S2都有人在接受服務(wù),只能等待,需更新系統(tǒng)人數(shù);若顧客數(shù)到達(dá)上限,則不再接受顧客.
第四步:有顧客離開S1的情況,若人數(shù)n=1,則令n=n-1,i1=i2=0,把t1賦給D1,令t1為無窮大;若人數(shù)n=2,則令n=n-1,i1=0,令t1為無窮大;若人數(shù)n>2,則令n=n-1,i1=max{i1,i2}+1,令y1為指數(shù)分布,且t1=t+y1.
第五步:有顧客離開S2的情況,若人數(shù)n=1,則令n=n-1,i1=i2=0,把t2賦給D1,令t2為無窮大;若人數(shù)n=2,則令n=n-1,i2=0,令t2為無窮大;若人數(shù)n>2,則令n=n-1,i2=max{i1,i2}+1,令y2為另一指數(shù)分布,且t2=t+y2.
第六步:輸出數(shù)據(jù),S1服務(wù)的顧客占總顧客數(shù)的百分比和顧客在系統(tǒng)中平均等待的時(shí)間.
五、具體算例及結(jié)果展示
假設(shè)服務(wù)員1是速率為4的指數(shù)分布,服務(wù)員2是速率為3的指數(shù)分布,顧客以速率為6的Possion過程到來.試求1 000個(gè)顧客花費(fèi)在系統(tǒng)中的平均時(shí)間及這1 000個(gè)來到者中由服務(wù)員1服務(wù)所占的比例.10 000及100 000個(gè)顧客呢?
用R軟件模擬的結(jié)果如下表所示.
1 000個(gè)顧客10 000個(gè)顧客100 000個(gè)顧客
花費(fèi)時(shí)間0.561 000 00.575 900 00.574 040
所占比例0.160 479 80.144 944 40.142 786
六、結(jié)束語
由上述過程可以看出,通過運(yùn)用計(jì)算機(jī)對排隊(duì)系統(tǒng)進(jìn)行模擬,可以考察系統(tǒng)狀態(tài)的動(dòng)態(tài)行為和特征.通過大量的多次試驗(yàn),獲得更加有益的排隊(duì)規(guī)則,可降低試驗(yàn)成本,提高系統(tǒng)可靠性.
【參考文獻(xiàn)】
[1]肖枝紅,朱強(qiáng).統(tǒng)計(jì)模擬及其R實(shí)現(xiàn)[M].武漢:武漢大學(xué)出版社,2010.
[2]王勇.排隊(duì)管理系統(tǒng)在銀行管理中的應(yīng)用[J].黑龍江大學(xué)自然科學(xué)學(xué)報(bào),2006(2):157-162.