排隊系統WITNESS建模與仿真

使用過程式建模方式,通過WITNESS軟體實現SQSS系統的建模和仿真

基本介紹

  • 中文名:排隊系統WITNESS建模與仿真
  • 外文名:Single Queue Single Serve,SQSS
  • 排隊系統:SQSS的Witness建模與仿真
  • 平均等待時間:最長等待時間
基本信息,其他信息,

基本信息

單佇列單服務台(Single Queue Single Serve,SQSS)排隊系統是排隊系統中最典型、最簡單的形式,以其作為案例,說明SQSS的Witness建模與仿真過程。
某理髮店只有一個理髮師。在正常工作的時間內,如果沒有顧客到達理髮店,則理髮師空閒;如果有顧客到達理髮店,則理髮師為顧客進行理髮服務。如果顧客到達理髮店時,理髮師正在為其他顧客服務,則新來的顧客在一旁排隊等候。
每個顧客到達理髮店的時間是隨機的,而理髮師為每個顧客進行理髮服務的時間也是隨機的,從而每個佇列中的顧客等候的時間也是隨機的,這是一個典型的離散事件系統的例子
建立仿真程式,統計該服務系統運行10000分鐘後:
(1)顧客的平均等待時間,最長等待時間;
(2)佇列的平均長度和最長長度;
(3)理髮師的忙率;
排隊系統WITNESS建模與仿真 - SQSS 系統分析

其他信息


(1)自變數假設
顧客到達時間間隔服從[2,8] 分鐘的均勻分布
理髮師為每位顧客服務的時間為[1,8]的均勻分布;
(2)因變數設定
由系統描述部分可以獲得,該系統的因變數為:
 顧客的平均等待時間,最長等待時間;
 佇列的平均長度和最長長度;
 服務員的忙閒程度;(考察業務量大小,以及一個服務員是否能夠滿足顧客的需求)
(3)事件例程分析
能夠引起系統狀態發生變化的事件有兩個:顧客到達E1和顧客離開E2
3.3 仿真程式設計
根據一般的程式設計結構進行設計
變數名 定義 數據類型 說明
minArrival

變數名及定義
minArrival 顧客到達間隔最短時間 Real 要比maxArrival小
MaxArrival 顧客到達間隔最長時間 Real
minService 服務時間最小值 Real 要比maxService小
maxService 服務時間最大值 Real
finishTime 仿真總時間 Real
simuClock 仿真時鐘 Real
queueLength 佇列長度 Int
serverStatus 理髮師當前狀態 Int 0,1變數
accQueueLength 記錄累積佇列長度 Real
eachQueueChangeTime 每次隊長變化的時間 Real 動態變數,記錄每次隊長變化的時間
eachQueueLength 佇列長度變化序列 Int 動態變數,每次變化後的佇列長度
inCustomer 總的進入顧客數 Int
INtime記錄每位顧客到達時間 Real 為動態變數,可以自動增加長度
lastServeTime 最後開始服務時間 Real 記錄理髮師最後一次開始理髮時間
num 程式處理循環變數 Int
outCustomer 離開系統的顧客數量 Int 服務結束離開系統的顧客數
seed 隨機數種子數 Int
startServeTime 記錄每次開始服務時間 Real 記錄理髮師對每位顧客的開始理髮時間
totalServeTime 理髮師總工作時間 Real
totalWaitTime 顧客總等待時間 Real
avgWaitTime 顧客平均等待時間 Real
maxWaitTime 顧客最長等待時間 Real
avgQueueLength 平均佇列長度 Real
maxQueueLength 最大佇列長度 Real
workRate 忙率 Real
子程式及函式名
子程式名 用途
SQSSMain() 仿真主程式(包含初始化參數語句)
timeUpdate() 時間(即:事件)更新子程式
arriveEvent() 事件1例程:顧客到達事件處理例程
finishServeEvent() 事件2例程:服務完畢事件處理例程
arriveInterval() 產生顧客到達時間間隔隨機變數
servingTime() 產生理髮服務時間隨機變數
report 報告子程式
3.4 設計的系統函式說明
令:A為動態變數,B為普通變數,說明動態變數的相關函式:
RecordRealValue (A,B):
將動態變數長度加1,同時將B的值賦給動態變數的最後一個元素;
maxdim (A,1) :
返回動態變數A的長度;

相關詞條

熱門詞條

聯絡我們