MM1排隊(duì)系統(tǒng)仿真matlab實(shí)驗(yàn)報(bào)告材料_第1頁(yè)
MM1排隊(duì)系統(tǒng)仿真matlab實(shí)驗(yàn)報(bào)告材料_第2頁(yè)
MM1排隊(duì)系統(tǒng)仿真matlab實(shí)驗(yàn)報(bào)告材料_第3頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、M/M/1排隊(duì)系統(tǒng)實(shí)驗(yàn)報(bào)告一、實(shí)驗(yàn)?zāi)康谋敬螌?shí)驗(yàn)要現(xiàn)M/M/1單窗口無(wú)限排隊(duì)系統(tǒng)的系統(tǒng)仿真,利用事件調(diào)度法實(shí)現(xiàn) 離散事件系統(tǒng)仿真,并統(tǒng)計(jì)平均隊(duì)列長(zhǎng)度以及平均等待時(shí)間等值, 以與理論分析 結(jié)果進(jìn)行對(duì)比。二、實(shí)驗(yàn)原理根據(jù)排隊(duì)論的知識(shí)我們知道,排隊(duì)系統(tǒng)的分類是根據(jù)該系統(tǒng)中的顧客到達(dá)模 式、服務(wù)模式、服務(wù)員數(shù)量以及服務(wù)規(guī)則等因素決定的。1、顧客到達(dá)模式設(shè)到達(dá)過(guò)程是一個(gè)參數(shù)為的Poisson過(guò)程,則長(zhǎng)度為t的時(shí)間到達(dá)k個(gè)呼叫的概率 服從Poisson分布,即Pk(t)k t k! e k 0,1,2,,其中 >0為常數(shù),表示了平均到達(dá)率或 Poisson呼叫流的強(qiáng)度。2、服務(wù)模式即其分布函數(shù)為設(shè)每個(gè)

2、呼叫的持續(xù)時(shí)間為i,服從參數(shù)為的負(fù)指數(shù)分布,PX t 1 e t,t 03、服務(wù)規(guī)則先進(jìn)先服務(wù)的規(guī)則(FIFO)4、理論分析結(jié)果在該M/M/1系統(tǒng)中,設(shè)Q -,則穩(wěn)態(tài)時(shí)的平均等待隊(duì)長(zhǎng)為1 ,顧客的T 平均等待時(shí)間為三、實(shí)驗(yàn)容M/M/1排隊(duì)系統(tǒng):實(shí)現(xiàn)了當(dāng)顧客到達(dá)分布服從負(fù)指數(shù)分布,系統(tǒng)服務(wù)時(shí)間也服 從負(fù)指數(shù)分布,單服務(wù)臺(tái)系統(tǒng),單隊(duì)排隊(duì),按FIFO方式服務(wù)。四、采用的語(yǔ)言MatLab語(yǔ)言 源代碼: clear;clc;%M/M/1排隊(duì)系統(tǒng)仿真SimTotal=i nput('請(qǐng)輸入仿真顧客總數(shù)SimTotal='); %仿真顧客總數(shù);Lambda=0.4; % 到達(dá)率 Lambda

3、;Mu=0.9;% 服務(wù)率 Mu;t_Arrive=zeros(1,SimTotal);t_Leave=zeros(1,SimTotal);ArriveNum=zeros(1,SimTotal);LeaveNum=zeros(1,SimTotal);In terval_Arrive=-log(ra nd(1,SimTotal)/Lambda;%到達(dá)時(shí)間間隔In terval_Serve=-log(ra nd(1,SimTotal)/Mu;%服務(wù)時(shí)間t_Arrive(1)=I nterval_Arrive(1);%顧客到達(dá)時(shí)間ArriveNum(1)=1;for i=2:SimTotalt_Ar

4、rive(i)=t_Arrive(i-1)+In terval_Arrive(i);ArriveNum(i)=i;endt_Leave(1)=t_Arrive(1)+I nterval_Serve(1);%顧客離開(kāi)時(shí)間LeaveNum(1)=1;for i=2:SimTotalif t_Leave(i-1)<t_Arrive(i)t_Leave(i)=t_Arrive(i)+I nterval_Serve(i);elset_Leave(i)=t_Leave(i-1)+In terval_Serve(i);endLeaveNum(i)=i;endt_Wait=t_Leave-t_Arriv

5、e; %各顧客在系統(tǒng)中的等待時(shí)間t_Wait_avg=mea n( t_Wait);t_Queue=t_Wait-I nterval_Serve;%各顧客在系統(tǒng)中的排隊(duì)時(shí)間t_Queue_avg=mea n( t_Queue);Timepoi nt=t_Arrive,t_Leave;% 系統(tǒng)中顧客數(shù)隨時(shí)間的變化Timepo in t=sort(Timepo in t);ArriveFlag=zeros(size(Timepo in t);%到達(dá)時(shí)間標(biāo)志CusNum=zeros(size(Timepoi nt);temp=2;CusNum(1)=1;for i=2:le ngth(Timepoi

6、 nt)if (temp<=le ngth(t_Arrive)&&( Timepoi nt(i)=t_Arrive(temp)CusNum(i)=CusNum(i-1)+1;temp=temp+1;ArriveFlag(i)=1;elseCusNum(i)=CusNum(i-1)-1;endend%系統(tǒng)中平均顧客數(shù)計(jì)算Time_ in terva匸zeros(size(Timepo in t);Time_in terval(1)=t_Arrive(1);for i=2:le ngth(Timepoi nt)Time_i nterval(i)=Timepoi nt(i)-T

7、imepoi nt(i-1);endCusNumromStart=0 CusNum;CusNum_avg=sum(CusNum_fromStart.*Timen terval 0 )/Timepo in t(e nd);QueLe ngth=zeros(size(CusNum);for i=1:le ngth(CusNum)if CusNum(i)>=2QueLe ngth(i)=CusNum(i)-1;elseQueLe ngth(i)=0;endend系統(tǒng)平均等待隊(duì)QueLe ngth_avg=sum(O QueLe ngth.*Time_i nterval 0 )/Timepoi

8、nt(e nd);%長(zhǎng)%仿真圖figure(1);set(1,'positio n',0,0,1000,700);subplot(2,2,1);ti tle('各顧客到達(dá)時(shí)間和離去時(shí)間);stairs(0 ArriveNum,0 t_Arrive,'b');hold on;stairs(0 LeaveNum,O t_Leave,'y');legend('到達(dá)時(shí)間,離去時(shí)間');hold off;subplot(2,2,2);stairs(Timepo in t,CusNum,'b')ti tle('

9、系統(tǒng)等待隊(duì)長(zhǎng)分布');xlabel('時(shí)間');ylabel('隊(duì)長(zhǎng)');subplot(2,2,3);ti tle('各顧客在系統(tǒng)中的排隊(duì)時(shí)間和等待時(shí)間');stairs(0 ArriveNum,0 t_Queue,'b');hold on;stairs(0 LeaveNum,O t_Wait,'y');hold off;legend('排隊(duì)時(shí)間,等待時(shí)間');% 方真值與理論值比較disp('理論平均等待時(shí)間 t_Wait_avg=' ,n um2str(1/(Mu-La

10、mbda);disp('理論平均排隊(duì)時(shí)間 t_Wait_avg=', num2str(Lambda/(Mu*(Mu-Lambda);disp('理論系統(tǒng)中平均顧客數(shù)=',num2str(Lambda/(Mu-Lambda);disp('理論系統(tǒng)中平均等待隊(duì)長(zhǎng)=',num2str(Lambda*Lambda/(Mu*(Mu-Lambda);disp('仿真平均等待時(shí)間 t_Wait_avg=' ,n um2str(t_Wait_avg)disp('仿真平均排隊(duì)時(shí)間 t_Queue_avg=' ,n um2str(t_

11、Queue_avg)disp('仿真系統(tǒng)中平均顧客數(shù)=',n um2str(CusNum_avg);disp('仿真系統(tǒng)中平均等待隊(duì)長(zhǎng)=',num2str(QueLe ngth_avg);五、數(shù)據(jù)結(jié)構(gòu)1. 仿真設(shè)計(jì)算法(主要函數(shù))利用負(fù)指數(shù)分布與泊松過(guò)程的關(guān)系,產(chǎn)生符合泊松過(guò)程的顧客流,產(chǎn)生符合負(fù)指數(shù)分布的隨機(jī)變量作為每個(gè)顧客的服務(wù)時(shí)間:In terval_Arrive=-log(ra nd(1,SimTotal)/Lambda;%到達(dá)時(shí)間間隔,結(jié)果與調(diào)用exprnd(1/Lambda,m)函數(shù)產(chǎn)生的結(jié)果相同In terval_Serve=-log(ra nd(

12、1,SimTotal)/Mu;%服務(wù)時(shí)間間隔t_Arrive(1)=l nterval_Arrive(1);%顧客到達(dá)時(shí)間時(shí)間計(jì)算t_Wait=t_Leave-t_Arrive;%各顧客在系統(tǒng)中的等待時(shí)間t_Queue=t_Wait-I nterval_Serve;%各顧客在系統(tǒng)中的排隊(duì)時(shí)間由事件來(lái)觸發(fā)仿真時(shí)鐘的不斷推進(jìn)。每發(fā)生一次事件,記錄下兩次事件間隔的時(shí)間以及在該時(shí)間段排隊(duì)的人數(shù):Timepoi nt=t_Arrive,t_Leave;%系統(tǒng)中顧客數(shù)變化CusNum=zeros(size(Timepoi nt);CusNum_avg=sum(CusNum_fromStart.*Time_

13、i nterval 0 )/Timepoi nt(e nd); %系統(tǒng)中平均顧客數(shù)計(jì)算一一QueLe ngth_avg=sum(0 QueLe ngth.*Time_i nterval0 )/Timepoi nt(e nd);%系統(tǒng)平均等待隊(duì)長(zhǎng)一2. 算法的流程圖六、仿真結(jié)果分析顧客的平均等待時(shí)間與顧客的平均等待隊(duì)長(zhǎng),計(jì)算其方差如下:仿真顧客總數(shù)=10000012345平均值方差平均等待時(shí)間2.0231.99711.99451.99612.00432.0030.000556360平均排隊(duì)時(shí)間0.911470.88650.882930.884040.894950.891980.000563657

14、平均顧客數(shù)0.81010.798460.793340.799580.804330.801160.000160911平均等待隊(duì)長(zhǎng)0.3650.354440.35120.354120.359150.356780.000116873678910理論值平均等待時(shí)間1.97382.00541.99111.99091.99272平均排隊(duì)時(shí)間0.866120.890680.88320.875270.885030.88889中平均顧客數(shù)0.785450.80370.797970.791660.800240.8平均等待隊(duì)長(zhǎng)0.344650.356950.353950.348040.355420.35556仿真顧

15、客總數(shù)=100000012345平均值方差平均等待時(shí)間2.00291.99751.99432.00192.01152.001620.000169888平均排隊(duì)時(shí)間0.892090.886240.884940.8910.898730.89060.000119522平均顧客數(shù)0.801570.799550.797630.800130.805310.800840.000032986 1平均等待隊(duì)長(zhǎng)0.357020.354740.353940.356120.359820.356330.000020940 678910理論值平均等待時(shí)間1.99911.99081.99652.00161.9962平均排隊(duì)

16、時(shí)間0.886230.881110.88490.889870.886520.88889平均顧客數(shù)0.798240.796210.798650.799430.797550.8平均等待隊(duì)長(zhǎng)0.353870.352390.353990.355410.354240.35556從上表可以看出,通過(guò)這種模型和方法仿真的結(jié)果和理論值十分接近,增加 仿真顧客數(shù)時(shí),可以得到更理想的結(jié)果。但由于變量定義的限制,在仿真時(shí)顧客 總數(shù)超過(guò)1,500,000時(shí)會(huì)溢出。證明使此靜態(tài)仿真的思想對(duì)排隊(duì)系統(tǒng)進(jìn)行仿真是 切實(shí)可行的。實(shí)驗(yàn)結(jié)果截圖如下(SimTotal分別為100、1000、10000、100000):(仿真顧客總數(shù)

17、為100000和1000000時(shí),其圖像與10000的區(qū)別很小)Command Window請(qǐng)輸入仿頁(yè)顧客總數(shù)SimTot al=l 00000 請(qǐng)輸 AtfiMlSSimlotalslOCOOOC鋰論平均等待時(shí)間t_wait_avg=2 理論平均持隊(duì)時(shí)®t_Wait_avg=0. 8SS89 理論累統(tǒng)中平均除喜對(duì)理論系蟀中平均等待PA=Q. 35556仿翼平均等待時(shí)|St_WaLt_avg-2. 0027 仿専平均腳EPA時(shí)同t-Queum.avg=0 39572 仿臺(tái)豕顋中平均ltft=O.E0 449 仿真系銃中平均等待疏悵詢.5932仕I理祗年的髯待時(shí)問(wèn)t_Wait_avg=2理論平均排隊(duì)時(shí)lt_Wait_avE=Q. SSSS9 理論系絨中平均傾客數(shù)=0.8 理論系統(tǒng)中平均等待陸忻丸.3555S 仿臺(tái)平均等律時(shí)間t_Wait_avg=2. 0027 帛真年均排嘰時(shí)間t_Queve_avg=Q. 39Q8S仿臺(tái)系毓中平均顧客數(shù)=0.80114仿真系績(jī)中平均等待隊(duì)長(zhǎng)=山35639A»l七、遇到的問(wèn)題及解決方法1. 在算法設(shè)計(jì)階段對(duì)計(jì)算平均隊(duì)長(zhǎng)時(shí)對(duì)應(yīng)的時(shí)間段不夠清楚, 重新畫(huà)出狀態(tài) 轉(zhuǎn)移圖后,引入變量Timepoint用來(lái)返回按時(shí)間排序的到達(dá)和離開(kāi)的時(shí)間點(diǎn)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論