蔡 蕓,秦 悅,張 煜
(1.武漢科技大學(xué) 機(jī)械自動(dòng)化學(xué)院,湖北 武漢 430081;2.武漢理工大學(xué) 物流工程學(xué)院,湖北 武漢 430063)
集裝箱碼頭物流系統(tǒng)是指在一定的集裝箱碼頭空間里,由集裝箱、船、裝卸搬運(yùn)機(jī)械、泊位、堆場和道路等若干相互聯(lián)系、相互制約的動(dòng)態(tài)要素構(gòu)成的有機(jī)整體,該系統(tǒng)是典型的離散事件動(dòng)態(tài)系統(tǒng)。隨著仿真建模理論的發(fā)展和港口信息管理技術(shù)的提高,集裝箱碼頭物流系統(tǒng)的規(guī)劃設(shè)計(jì)者和營運(yùn)管理決策者常使用排隊(duì)論[1]、Petri網(wǎng)[2]、Agent技術(shù)[3]、虛擬現(xiàn)實(shí)技術(shù)[4]等仿真建模方法,輔助他們做出更加合理的設(shè)計(jì)和決策。
離散事件系統(tǒng)規(guī)范是一種描述離散事件形式化的方法,是一種正式的建模和仿真結(jié)構(gòu),針對(duì)離散事件系統(tǒng)的形式化描述體系,它將每個(gè)子系統(tǒng)看作一個(gè)具有內(nèi)部獨(dú)立結(jié)構(gòu)和輸入輸出接口的模塊,這些模塊通過連接關(guān)系組合成為更大的模塊,從而形成規(guī)范化、層次化、模塊化的描述,以提高仿真速度,縮短仿真時(shí)間[5-6]。
DEVS在軍事[7]、社會(huì)事件[8]、工業(yè)[9]等領(lǐng)域都有廣泛應(yīng)用,但在集裝箱碼頭物流系統(tǒng)中的運(yùn)用還是空白。因?yàn)椴捎肈EVS描述的模型層次清晰且規(guī)范,所以本文以集裝箱碼頭物流系統(tǒng)為對(duì)象,采用DEVS的建模方法,分析并描述了集裝箱碼頭物流系統(tǒng)的耦合模型和原子模型,并將其轉(zhuǎn)化為em-Plant軟件中的仿真模型,進(jìn)行仿真實(shí)驗(yàn),借以驗(yàn)證其可靠性,并為集裝箱碼頭作業(yè)系統(tǒng)的規(guī)劃設(shè)計(jì)和運(yùn)營管理提供技術(shù)手段。
DEVS模型有兩種:DEVS原子模型(Atomic DEVS)和DEVS耦合模型(Coupled DEVS)。原子模型描述了離散事件系統(tǒng)的自治行為,包括系統(tǒng)狀態(tài)轉(zhuǎn)換、外部輸入事件響應(yīng)和系統(tǒng)輸出等;它們可以通過連接形成耦合模型,從而形成層次化的結(jié)構(gòu);耦合模型中包含多種成員,每個(gè)成員既可以是原子模型,也可以是耦合模型[10]。
DEVS原子模型描述如下式所示:
其中:X:外部輸入事件集合;Y:輸出集合;S:系統(tǒng)狀態(tài)集合;ta:S→R0,+∞是時(shí)間推進(jìn)函數(shù)。ta(s)表示在沒有外部事件到達(dá)時(shí)系統(tǒng)狀態(tài)保持為s的時(shí)間,特別地ta(s)=+∞的狀態(tài)稱為靜止的,如無外部事件到達(dá),系統(tǒng)將一直停留在該狀態(tài);ta(s)=0的狀態(tài)稱為瞬時(shí)的,瞬時(shí)狀態(tài)表達(dá)了不消耗時(shí)間的即時(shí)運(yùn)算,即在該狀態(tài)執(zhí)行時(shí),仿真時(shí)鐘不推進(jìn);δext:Q×S→S,是外部狀態(tài)轉(zhuǎn)移函數(shù),當(dāng)有外部輸入事件時(shí)觸發(fā),Q={(s,e)|s∈S,0≤e≤ta(s)},e是當(dāng)前狀態(tài)s的已持續(xù)時(shí)間,(s,e)表示總狀態(tài);δint:S→S,是內(nèi)部狀態(tài)轉(zhuǎn)移函數(shù),如無外部事件到達(dá),系統(tǒng)經(jīng)過ta(s)時(shí)間后,狀態(tài)s將轉(zhuǎn)移到δint(s),同時(shí)將e置0;λ:S→Y,是輸出函數(shù)。
DEVS耦合模型描述如下式所示:
其中,self是耦合模型本身,Xself是外部輸入事件集合,Yself是輸出事件集合;D是耦合模型組成成員的名字集(self?D);{Mi}是耦合模型的成員集,{Mi∣i∈D}且Mi是DEVS原子模型;Ii表示受成員i(i∈D∪{self})影響的成員集,所有受影響的成員集為{Ii∣i∈D∪{self}};Zi,j表示成員i的輸出到成員j(j∈Ii)的輸入轉(zhuǎn)換,輸出輸入轉(zhuǎn)換集為{Zi,j∣i∈D∪{self},j∈Ii},且 Zself,j:Xself→Xj,j∈D;Zi,self:Yi→Yself,i∈D;Zi,j:Yi→Yj,i,j∈D。{Ii},{Zi,j}描述了耦合模型的耦合結(jié)構(gòu);select是選擇函數(shù),當(dāng)耦合模型中幾個(gè)成員同時(shí)發(fā)生狀態(tài)轉(zhuǎn)移時(shí),需要用select函數(shù)來選擇其中一個(gè)成員的轉(zhuǎn)移作為耦合模型的狀態(tài)轉(zhuǎn)移。
集裝箱碼頭物流系統(tǒng)的仿真實(shí)體主要包括船、控制中心、泊位、岸邊集裝箱起重機(jī)(岸橋)、集裝箱拖掛車(集卡)、輪胎式龍門起重機(jī)(場橋)、堆場等實(shí)體。其功能如下:船負(fù)責(zé)將集裝箱運(yùn)達(dá)和運(yùn)離碼頭;控制中心是整個(gè)集裝箱碼頭物流系統(tǒng)的樞紐,負(fù)責(zé)接受信息和下達(dá)調(diào)度指令等;泊位供船??浚话稑蜇?fù)責(zé)為船裝卸集裝箱;集卡承擔(dān)集裝箱從碼頭前沿至堆場、堆場內(nèi)箱區(qū)間的水平運(yùn)輸;場橋承擔(dān)集裝箱在堆場的裝卸和堆碼作業(yè);堆場是集裝箱在碼頭內(nèi)堆存的場地。本文采用自頂向下的建模方式,先分析了各實(shí)體間的相互關(guān)系,構(gòu)建了系統(tǒng)耦合模型,然后將系統(tǒng)實(shí)體描述為原子模型。
圖1 集裝箱碼頭物流系統(tǒng)耦合模型結(jié)構(gòu)
圖1為集裝箱碼頭物流系統(tǒng)耦合模型示意圖。圖中圓圈代表耦合模型成員,包括berth(泊位)、ship(船)、quay(岸橋)、truck(集卡)、fbridge(場橋)、yard(堆場)、core(控制中心)等原子模型。箭頭表示外界與耦合模型間的關(guān)系以及原子模型間的耦合關(guān)系(即各原子模型間的輸入、輸出端口的關(guān)系),箭頭上的字符表示原子模型的輸入、輸出端口,其含義如以下實(shí)例所示,i_shipb表示泊位從船接受信息變量的輸入端口,其中i表示輸入端口,ship表示船,b是泊位berth的縮寫,o_berthc表示泊位向控制中心傳遞信息的輸出端口,其中o表示輸出端口,berth表示泊位,c是控制中心core的縮寫,其余輸入輸出端口表達(dá)方式同理。另外,耦合模型通過core的i_core端口輸入外部事件(船及其箱體信息);通過core的o_core端口輸出船數(shù)量、吞吐量和設(shè)備利用率等統(tǒng)計(jì)信息。
由于篇幅所限,本文只給出場橋原子模型(fbridge)的集合描述(如圖2所示),并將集裝箱裝和卸動(dòng)作統(tǒng)一描述。耦合模型中的主要成員岸橋、船、集卡的原子模型僅給出圖示(如圖3-圖5所示)。
圖2 場橋原子模型結(jié)構(gòu)
圖3 岸橋原子模型結(jié)構(gòu)
圖4 船原子模型結(jié)構(gòu)
圖5 集卡原子模型結(jié)構(gòu)
(1)模型初始化
①產(chǎn)生耦合模型輸入端口所需船及其箱信息,并由core的i_core輸入端口獲取。
②berth、quay、truck、fbridge分別通過o_berthc、o_quayc、o_truckc、o_fbridgec向core遞交當(dāng)前狀態(tài)(是否閑置或是否故障)。
(2)模型執(zhí)行
對(duì)于進(jìn)口箱:
①船到港,ship及時(shí)通過o_shipc輸出端口向core的i_shipc傳遞請(qǐng)求服務(wù)。
②core根據(jù)生產(chǎn)作業(yè)情況,通過o_cores輸出端口向ship的i_cores輸入端口傳遞信息,為其指定泊位,通過o_coreq、o_coret、o_coref輸 出 端 口 向 quay、truck、fbridge 的 i_coreq、i_coret、i_coref輸入端口下達(dá)該船的裝卸任務(wù),調(diào)度裝卸作業(yè)線上的岸橋、集卡、場橋。
③quay根據(jù)core的調(diào)度信息,移動(dòng)到作業(yè)位置,ship通過o_shipq輸出端口向quay的輸入端口i_shipq發(fā)送箱信息,quay通過o_quayt輸出端口向truck的輸入端口i_quayt提供岸橋位置信息,集卡到岸橋處裝箱。
④truck從岸橋處裝箱并獲得箱信息,運(yùn)往堆場,通過o_truckf輸出端口,向fbridge的輸入端口i_truckf傳遞箱信息和提出卸箱請(qǐng)求,等待場橋卸載;
⑤fbridge根據(jù)core的調(diào)度指令,到達(dá)指定堆區(qū),等待集卡卸箱請(qǐng)求,如果有請(qǐng)求就為集卡服務(wù),卸箱后,通過o_fbridgey輸出端口向yard的輸入端口i_fbridgey傳遞箱信息。
⑥yard根據(jù)fbridge提供的箱輸入信息,通過o_yardc輸出端口向core的輸入端口i_yardc傳遞進(jìn)口箱的堆存信息。
對(duì)于出口箱:
①yard根據(jù)core提供的集裝箱裝船信息,通過o_yardf輸出端口向fbridge的輸入端口i_yardf提供集裝箱裝船信息。
②fbridge根據(jù)core提供的調(diào)度信息,移動(dòng)到堆場等待裝箱。fbridge通過o_fbridget輸出端口向truck的輸入端口i_fbridget提供場橋位置信息。
③truck根據(jù)fbridge提供的場橋信息,到場橋處排隊(duì)等待裝箱,裝箱后由場橋的輸出端口o_fbridget獲得箱信息,到岸橋下等待卸箱,通過o_truckq輸出端口向quay的輸入端口i_truckq傳遞集裝箱信息和集卡卸箱請(qǐng)求。
④卸箱后,quay根據(jù)truck提供信息,通過o_quays輸出端口向ship的輸入端口i_quays提供上船的出口箱信息。
⑤ship判斷是否完成裝出口箱,完成后由ship的o_shipc向core端口的i_shipc端口發(fā)出作業(yè)完成信息,core根據(jù)該信息向ship的輸入端口i_cores發(fā)出離泊命令。
(3)模型輸出。core通過o_core輸出端口向耦合模型輸出端口提供船的到離港時(shí)間、進(jìn)出口箱量和設(shè)備利用率等統(tǒng)計(jì)信息,仿真結(jié)束。
為了研究以上DEVS模型描述集裝箱碼頭生產(chǎn)作業(yè)的可靠性,本文將其在em-Plant仿真軟件中進(jìn)行轉(zhuǎn)化,并建立了某集裝箱碼頭系統(tǒng)裝卸作業(yè)模型。該集裝箱碼頭干線海船泊位數(shù)目為4個(gè),支線江駁泊位數(shù)目為2個(gè)。岸邊集裝箱裝卸橋總數(shù)目為14臺(tái)(其中海船泊位岸橋?yàn)?2臺(tái),江船泊位岸橋?yàn)?臺(tái)),輪胎式龍門起重機(jī)總數(shù)目為48臺(tái),集卡總數(shù)目為72臺(tái)。
根據(jù)該港口調(diào)研數(shù)據(jù),仿真模型輸入?yún)?shù)如下:船到港時(shí)間滿足負(fù)指數(shù)分布f(t)=1-exp(-t/β),t>0,β>0,船到港的平均時(shí)間間隔,海船β=4.37h,江船β=1.24h。另外,到港船型和裝卸箱量等信息滿足經(jīng)驗(yàn)分布。堆場場橋作業(yè)時(shí)間為2min/TEU,海船岸橋的作業(yè)時(shí)間為2.4min/TEU,江駁岸橋作業(yè)時(shí)間為2.9min/TEU;場橋作業(yè)時(shí)間為2.14min/TEU。集卡行駛速度為6m/s,泊位數(shù)目為4個(gè),12臺(tái)海船岸橋,2臺(tái)江駁岸橋,海船岸橋集卡配比(即每臺(tái)岸橋配備幾輛集卡)是1:6,駁船岸橋集卡配比是1:5。
在仿真時(shí),參照碼頭布局設(shè)計(jì)方案,江駁泊位的工作時(shí)間設(shè)置為每年280天,而海船每年工作天數(shù)為325天。經(jīng)過多次對(duì)模型的仿真運(yùn)行,得出表1所示結(jié)果。由于調(diào)研獲得的是9個(gè)月的生產(chǎn)數(shù)據(jù),故生產(chǎn)數(shù)據(jù)的實(shí)到船數(shù)量未知,以2004年1月至9月的實(shí)際吞吐量1986361TEU,推算該碼頭年吞吐量為2648481TEU。
把仿真結(jié)果和實(shí)際情況相比較,實(shí)際泊位平均利用率為63.8%;岸橋平均利用率為41.1%。而仿真結(jié)果中年吞吐量為2461040TEU;泊位平均利用率為53.4%;岸橋平均利用率是47.4%。這個(gè)差異可能是由于碼頭實(shí)際是每年工作日為365天,每天工作24h,沒有船到港時(shí)則對(duì)設(shè)備進(jìn)行檢修,另外人為的設(shè)備調(diào)度比仿真模型靈活,而仿真獲得的結(jié)果是按碼頭設(shè)計(jì)生產(chǎn)工作日325天所得到的,因此總的來說,仿真結(jié)果和實(shí)際情況相對(duì)還是比較符合的。這就說明建立的DEVS模型可以正確描述集裝箱碼頭的裝卸生產(chǎn)過程。
表1 仿真輸出數(shù)據(jù)和生產(chǎn)數(shù)據(jù)統(tǒng)計(jì)值
本文率先使用DEVS方法分析并描述了集裝箱碼頭物流系統(tǒng),在此基礎(chǔ)上利用em-Plant軟件構(gòu)建了其仿真模型,并進(jìn)行了仿真實(shí)驗(yàn),得到了較為合理的仿真結(jié)果。由于本文構(gòu)建的仿真模型針對(duì)的只是岸橋、集卡、場橋資源配比固定的作業(yè)線生產(chǎn)模式,為此今后還需要進(jìn)一步研究非固定作業(yè)線模式的DEVS模型。
[1]靳志宏,邱波,趙芳.集裝箱碼頭泊位資源動(dòng)態(tài)配置優(yōu)化[J].中國航海,2011,(3):89-92.
[2]張海霖.基于R-OPN的集裝箱碼頭物流系統(tǒng)建模與分析[J].上海交通大學(xué)學(xué)報(bào),2007,41(2):231-237.
[3]李斌,閆新慶,胡家香.基于哈佛結(jié)構(gòu)和群集智能的集裝箱碼頭物流系統(tǒng)建模優(yōu)化[J].江蘇科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2011,25(3):282-287.
[4]張煜,王少梅.虛擬集裝箱碼頭及其建模技術(shù)[J].港口裝卸,2008,(1):16-19.
[5]Zeigler B P,Praehofer H,Kim T G.Theory of modeling and simulation:Integrating discrete event and continuous complex dynamic system[M].San Diego,CA:Academic Press,2000.
[6]Schroeder M,Wagner G.Vivid agents:theory,architecture,and applications[J].Journal for Applied Artificial Intelligence,2000,14(7):645-676.
[7]李雪飛,孫永侃,熊正祥.基于DEVS的艦艇作戰(zhàn)模擬訓(xùn)練操作行為建模[J].兵工自動(dòng)化,2013,32(9):4-8.
[8]曹琦,何中市,余磊.基于DEVS/CD++的搶險(xiǎn)救災(zāi)物資保障仿真建模研究[J].計(jì)算機(jī)應(yīng)用,2008,28(11):2967-2969.
[9]鄭麗鈺.基于DEVS的石化多層次物流模型建模和仿真研究[D].杭州:浙江大學(xué),2008.
[10]唐俊,張明清,劉建峰.離散事件系統(tǒng)規(guī)范DEVS研究[J].計(jì)算機(jī)仿真,2004,21(6):62-64,59.