沈陽,黃誠,宓為建
(1.上海海事大學(xué) a.物流科學(xué)與工程研究院; b.集裝箱供應(yīng)鏈技術(shù)教育部工程研究中心,上海 201306;2.上海港城危險(xiǎn)品物流有限公司,上海 201306)
危險(xiǎn)貨物作為石油化工、新材料、精細(xì)化工及高端制造業(yè)必備原材料,近年來其種類及流通不斷增加,港口危險(xiǎn)貨物運(yùn)輸量和存儲(chǔ)量逐年上升。危險(xiǎn)貨物集裝箱(簡稱危貨箱)作為港口危險(xiǎn)貨物運(yùn)輸堆存的載體,其在碼頭堆場中的占比逐漸增大,危貨箱堆場設(shè)計(jì)堆存能力固定與堆存需求增長之間的不平衡關(guān)系日益突出。一旦危貨箱堆場缺乏安全科學(xué)的堆存空間分配策略,理化性質(zhì)相抵觸的危貨箱過于集中,就容易導(dǎo)致各類安全事故的發(fā)生,而且由事故引發(fā)的連鎖反應(yīng)和次生災(zāi)害還可能造成更加嚴(yán)重的后果,嚴(yán)重危害人身、財(cái)產(chǎn)和環(huán)境安全。天津港“8·12”爆炸事故即因危貨箱堆場堆存策略不合理而導(dǎo)致箱內(nèi)的硝化棉自燃引發(fā)的連環(huán)爆炸。因此,如何在保證安全性前提下,通過優(yōu)化堆存空間分配策略提高危貨箱堆場利用率是當(dāng)前亟待解決的問題。
目前國內(nèi)外學(xué)者針對(duì)傳統(tǒng)集裝箱堆場堆存空間分配問題做了大量的研究工作。CHANG等針對(duì)鐵水聯(lián)運(yùn)集裝箱碼頭,建立了兩階段堆存空間分配模型,第一階段引入了一種基于啟發(fā)式的模擬退火算法,第二階段設(shè)計(jì)了一種基于滾動(dòng)優(yōu)化方法的新啟發(fā)式算法。ZENG等以堆場集卡、起重機(jī)的運(yùn)營成本與船舶的延誤成本之和最小為優(yōu)化目標(biāo),設(shè)計(jì)了一種啟發(fā)式算法。CHEN等指出出口集裝箱堆存空間分配可分為兩個(gè)階段,第一階段采用混合整數(shù)規(guī)劃模型求解貝位,第二階段采用混合序列疊加算法求解具體堆存空間。嚴(yán)南南等針對(duì)集裝箱堆場空間利用率不高的問題,利用數(shù)學(xué)規(guī)劃方法對(duì)堆場堆存空間進(jìn)行建模和求解。白治江等在兼顧岸橋和場橋負(fù)載的前提下,建立堆存空間分配的線性整數(shù)規(guī)劃模型,并用滾動(dòng)規(guī)劃的方法解決堆場堆存空間分配問題。隨著人工智能技術(shù)的日趨成熟和廣泛應(yīng)用,各種人工智能算法被應(yīng)用于碼頭集裝箱作業(yè)研究中。楊曉斌等提出利用蒙特卡洛樹搜索算法求解新裝卸工藝下陸域集疏運(yùn)堆場堆存空間分配模型。XIA等運(yùn)用具有優(yōu)先經(jīng)驗(yàn)回放的雙深度學(xué)習(xí)網(wǎng)絡(luò)來求解集裝箱碼頭的裝船排序決策問題。SHEN等利用深度學(xué)習(xí)網(wǎng)絡(luò)來解決船舶配載規(guī)劃問題,突破了利用在線搜索算法求解時(shí)的效率瓶頸。黃子釗等設(shè)計(jì)了基于強(qiáng)化學(xué)習(xí)的超啟發(fā)式方法求解自動(dòng)化碼頭出口箱箱位分配優(yōu)化模型。
綜上可知:在研究目標(biāo)上,大部分研究均從經(jīng)濟(jì)效益角度(翻箱率、已用堆存空間占比、機(jī)械效率等)分析集裝箱堆場堆存空間分配問題或港口其他業(yè)務(wù),卻鮮有從安全角度對(duì)危貨箱堆場堆存空間分配問題進(jìn)行分析;在研究方法上,大部分研究需要分階段進(jìn)行建模求解,或者僅研究單箱區(qū)、單貝位堆存空間分配,雖然降低了計(jì)算復(fù)雜度,但在實(shí)際應(yīng)用上具有局限性。本文深入分析危貨箱堆場安全堆存空間分配問題,并針對(duì)危貨箱的理化性質(zhì)、箱型結(jié)構(gòu)、滅火方式、堆放位置等風(fēng)險(xiǎn)因素,提出基于安全堆存規(guī)范的危貨箱堆場安全堆存空間分配模型,并采用優(yōu)勢(shì)演員-評(píng)論家(advantage actor-critic, A2C)算法進(jìn)行求解。
根據(jù)國際海事組織制定的《國際海運(yùn)危險(xiǎn)貨物規(guī)則》和國家標(biāo)準(zhǔn)《危險(xiǎn)貨物分類和品名編號(hào)》(GB 6944—2012)規(guī)定,危險(xiǎn)貨物按理化性質(zhì)可分成9大類20小項(xiàng),分別具有易燃、易爆、腐蝕、毒害以及放射性等危險(xiǎn)特性,每種類別的危險(xiǎn)貨物對(duì)人員及環(huán)境都會(huì)造成一定影響。危貨箱堆場中的危險(xiǎn)貨物種類繁多且堆存緊湊,相互之間極易發(fā)生理化反應(yīng)。如圖1所示,將易燃貨物與氧化性貨物堆存在一起極易發(fā)生大規(guī)?;馂?zāi),有燃燒和爆炸危害的強(qiáng)酸和強(qiáng)堿應(yīng)該分散堆存,毒性貨物與易燃易爆貨物更需要保持一定的安全隔離距離,以免發(fā)生火災(zāi)爆炸等事故導(dǎo)致毒性物質(zhì)的泄漏。
圖1 危貨箱堆場安全堆存空間分配示意圖
影響危貨箱堆存的風(fēng)險(xiǎn)因素主要有以下幾種:(1)不同危險(xiǎn)特性的危貨箱之間需滿足一定的隔離要求,防止危貨箱之間接觸導(dǎo)致災(zāi)害發(fā)生;(2)同一類危險(xiǎn)貨物中危險(xiǎn)物質(zhì)成分占比不同,危險(xiǎn)特性亦不同;(3)為降低危貨箱因操作失誤造成碰撞、跌落的影響,對(duì)不同類別的危貨箱堆存位置(層高、列位)有著嚴(yán)格要求;(4)濕度、風(fēng)速、風(fēng)向等氣候條件會(huì)影響危貨箱的堆存風(fēng)險(xiǎn)以及港口處理災(zāi)害事故的應(yīng)急響應(yīng)能力;(5)不同箱型危貨箱的不當(dāng)堆疊會(huì)導(dǎo)致危貨箱擠壓破損。
人工制定危貨箱堆存策略一般僅憑借經(jīng)驗(yàn),往往無法全面、定量考慮上述所有風(fēng)險(xiǎn)因素的影響,導(dǎo)致堆存風(fēng)險(xiǎn)、次生災(zāi)害風(fēng)險(xiǎn)均處于較高水平。為提高堆存安全性,只能擴(kuò)大不同類別危貨箱之間的隔離距離,這造成了堆存空間的極大浪費(fèi),從而使得危貨箱的堆存率遠(yuǎn)低于普貨箱的堆存率。
危貨箱安全堆存規(guī)范的制定,旨在降低危貨箱的堆存風(fēng)險(xiǎn)以及提高事故發(fā)生后的應(yīng)急響應(yīng)能力,以獲得滿足以下安全約束的最優(yōu)堆存空間分配策略。具體堆存規(guī)范如下:
(1)安全隔離規(guī)范。遵循《國際海運(yùn)危險(xiǎn)貨物規(guī)則》中的危貨箱安全隔離表的相關(guān)規(guī)定,不相容的危貨箱應(yīng)分開堆存,確保滿足規(guī)定的最小安全隔離距離;滅火方式相抵觸的危貨箱,應(yīng)分區(qū)域隔離堆放,以防止對(duì)火災(zāi)事故進(jìn)行施救時(shí)造成更嚴(yán)重的次生災(zāi)害。
(2)重大危險(xiǎn)源臨界量規(guī)范。危貨箱堆場中的每個(gè)箱區(qū)均可看作是一個(gè)儲(chǔ)存單元,為使每個(gè)箱區(qū)均保持較高的安全性,應(yīng)將每個(gè)箱區(qū)的重大危險(xiǎn)源等級(jí)均控制在第4級(jí),即重大危險(xiǎn)源分級(jí)指標(biāo)小于10。
(3)危貨箱層高堆存規(guī)范。易燃易爆危貨箱最高只允許堆存2層,其他危貨箱不超過3層,以防止出現(xiàn)火災(zāi)、泄漏等安全事故時(shí)無法進(jìn)行及時(shí)有效的應(yīng)急處置。
(4)潮濕環(huán)境堆存規(guī)范。裝有遇潮濕易產(chǎn)生易燃?xì)怏w的第4.3項(xiàng)貨物,應(yīng)放置在箱區(qū)最上層,以保證通風(fēng)需求。
(5)堆疊規(guī)范。液化天然氣罐式集裝箱應(yīng)分離放置,不得疊放;與其他種類危貨箱疊放時(shí),必須放置于最上層。無底梁罐式集裝箱因其承壓能力較差,與通用集裝箱(箱內(nèi)應(yīng)為非易燃易爆危險(xiǎn)貨物)疊放時(shí),應(yīng)被放置到最上層,且無底梁罐式集裝箱相互不得疊放。
(6)罐式集裝箱與車道堆存規(guī)范。罐式集裝箱不應(yīng)堆放在近車道的首列箱位。罐式集裝箱通常用于儲(chǔ)存具有易燃易爆性、腐蝕性或者毒性的液體或氣體,而近車道箱位相對(duì)于其他箱位而言,更容易被行駛轉(zhuǎn)向中的車輛碰撞。
參數(shù):為危貨箱堆場箱區(qū)集合,∈;為箱區(qū)貝位集合,∈;為貝位中列位集合,∈;為貝位中層高集合,∈;為在場箱集合,∈;為計(jì)劃進(jìn)場箱集合,,′∈;為非最底層的層高集合;為箱區(qū)的重大危險(xiǎn)源分級(jí)指標(biāo);為第級(jí)重大危險(xiǎn)源分級(jí)指標(biāo)臨界值;為箱區(qū)初始堆存占用的箱位數(shù);為箱區(qū)的最大箱位數(shù);為箱區(qū)第貝第列第層的箱位與在場箱之間的實(shí)際距離;′′′′為箱區(qū)第貝第列第層的箱位與箱區(qū)′第′貝第′列第′層的箱位之間的實(shí)際距離;為安全隔離表規(guī)定的進(jìn)場箱與在場箱之間的安全隔離距離;′為安全隔離表規(guī)定的進(jìn)場箱與進(jìn)場箱′之間的安全隔離距離;為滅火方式相抵觸情境下進(jìn)場箱與在場箱之間的安全隔離距離;′為滅火方式相抵觸情境下進(jìn)場箱與進(jìn)場箱′之間的安全隔離距離;為進(jìn)場箱與在場箱之間的最小安全隔離距離,=max(,);′為進(jìn)場箱與進(jìn)場箱′之間的最小安全隔離距離,′=max(′,′);為箱區(qū)的剩余安全堆存空間因數(shù),用于估計(jì)箱區(qū)剩余堆存空間中安全堆存空間占比,∈[0,1]。
決策變量:,為0-1變量,如果進(jìn)場箱被分配到箱區(qū)第貝第列第層則取值為1,否則為0。
(1)
(2)
由此可得目標(biāo)函數(shù)和如下,其中:,′∈;,′∈;∈;,′∈;,′∈;,′∈。
(3)
(||||+||)
(4)
下述表達(dá)式中除特殊說明外,有:,′∈;,′∈;∈;,′∈;,′∈;,′∈。
(5)
(6)
(7)
(8)
′,≠′
(9)
(10)
(11)
(12)
(13)
(14)
(15)
′,≠′
(16)
(17)
(18)
式(5)表示一個(gè)進(jìn)場箱僅占用一個(gè)箱位;式(6)表示一個(gè)箱位只能堆存一個(gè)進(jìn)場箱;式(7)表示箱位分配要滿足非懸空約束;式(8)和(9)分別表示進(jìn)場箱與在場箱、進(jìn)場箱之間需滿足安全隔離表規(guī)定的安全隔離距離約束;式(10)表示待分配危貨箱需滿足所在箱區(qū)的重大危險(xiǎn)源臨界量約束,重大危險(xiǎn)源等級(jí)設(shè)為第4級(jí)(安全性最高);式(11)和(12)分別表示易燃易爆危貨箱及非易燃易爆危貨箱的層高約束;式(13)表示第4.3項(xiàng)危險(xiǎn)貨物的潮濕環(huán)境約束;式(14)表示液化天然氣罐式集裝箱的堆疊堆存約束;式(15)和(16)分別表示滅火方式相抵觸的進(jìn)場箱與在場箱、進(jìn)場箱之間均需滿足一定的安全隔離距離約束;式(17)表示無底梁罐式集裝箱堆疊堆存約束;式(18)表示罐式集裝箱與車道的堆存約束。
A2C算法是一種基于策略的強(qiáng)化學(xué)習(xí)算法,它將每次空間分配后安全堆存空間利用率和安全指數(shù)的增量作為環(huán)境反饋的獎(jiǎng)勵(lì),以累計(jì)獎(jiǎng)勵(lì)最大為目標(biāo)智能選擇分配動(dòng)作。該算法包括兩個(gè)模型網(wǎng)絡(luò),Actor 表示策略模型網(wǎng)絡(luò),Critic 表示價(jià)值模型網(wǎng)絡(luò),通過Actor直接輸出策略函數(shù),通過Critic對(duì)輸出動(dòng)作進(jìn)行評(píng)價(jià)。該算法能夠高效地求解危貨箱堆場安全堆存空間分配這類有著大規(guī)模離散動(dòng)作空間的優(yōu)化問題,避免了需要計(jì)算所有動(dòng)作值的復(fù)雜性。同時(shí),該算法引入并行訓(xùn)練機(jī)制,利用多線程并行獨(dú)立訓(xùn)練,能消除數(shù)據(jù)的相關(guān)性,提高神經(jīng)網(wǎng)絡(luò)的收斂速度和收斂穩(wěn)定性。
為達(dá)到安全堆存空間利用率和安全指數(shù)同時(shí)優(yōu)化的目標(biāo),將危貨箱堆場環(huán)境建模為交互環(huán)境,將危貨箱堆場安全堆存空間分配問題轉(zhuǎn)化為智能體與環(huán)境的交互問題,利用Actor和Critic的反復(fù)訓(xùn)練和學(xué)習(xí),達(dá)到最大獎(jiǎng)勵(lì)。算法架構(gòu)見圖2。將堆場堆存狀態(tài)輸入Actor后,得到相應(yīng)的堆存空間分配動(dòng)作、獎(jiǎng)勵(lì)和下一時(shí)間步的狀態(tài)+1。Critic通過值評(píng)價(jià)動(dòng)作的好壞,并利用計(jì)算出的時(shí)間差分誤差更新Actor參數(shù)。A2C算法利用優(yōu)勢(shì)函數(shù)取代Critic中的長期回報(bào),使得網(wǎng)絡(luò)參數(shù)在梯度更新時(shí)有更低的方差。同時(shí),A2C算法具有多線程并行訓(xùn)練機(jī)制,工人線程網(wǎng)絡(luò)是全局網(wǎng)絡(luò)的預(yù)處理子網(wǎng)絡(luò),全局網(wǎng)絡(luò)通過整合所有工人線程網(wǎng)絡(luò)學(xué)習(xí)到的經(jīng)驗(yàn)(神經(jīng)網(wǎng)絡(luò)參數(shù)),用于最終堆存空間分配動(dòng)作決策。算法訓(xùn)練時(shí)并行創(chuàng)建多個(gè)工人線程網(wǎng)絡(luò);工人線程網(wǎng)絡(luò)首先從全局網(wǎng)絡(luò)中同步已有經(jīng)驗(yàn);每個(gè)工人線程網(wǎng)絡(luò)進(jìn)行獨(dú)立采樣學(xué)習(xí),得到堆存空間分配歷史經(jīng)驗(yàn);在所有工人線程網(wǎng)絡(luò)都計(jì)算出對(duì)應(yīng)的損失函數(shù)后,將梯度上傳給采集器;采集器匯總所有梯度求平均,并將平均梯度同步更新給全局網(wǎng)絡(luò)進(jìn)行網(wǎng)絡(luò)參數(shù)更新,從而極大地提高神經(jīng)網(wǎng)絡(luò)訓(xùn)練學(xué)習(xí)的速度。
圖2 A2C算法架構(gòu)
構(gòu)建馬爾科夫決策過程(Markov decision process,MDP):
(1)狀態(tài)。在時(shí)間步的狀態(tài)包含在場箱堆存狀態(tài)和進(jìn)場箱狀態(tài)。
(2)動(dòng)作。在時(shí)間步,進(jìn)場箱待分配空間時(shí),將環(huán)境狀態(tài)經(jīng)過預(yù)處理后輸入到Actor,Actor會(huì)輸出一個(gè)動(dòng)作作為進(jìn)場箱的最優(yōu)堆存空間分配動(dòng)作,即在當(dāng)前堆場堆存狀態(tài)下某個(gè)進(jìn)場箱應(yīng)分配到哪個(gè)箱位(決策變量),表達(dá)式如下:
=,∈
其中:為被分配到的有效堆存空間,即有效箱位;為有效箱位集合。
危貨箱堆場每個(gè)箱位均對(duì)應(yīng)一個(gè)分配動(dòng)作,若堆場堆存空間(即箱位)有2 000個(gè),日進(jìn)場箱量為150個(gè),則理論動(dòng)作空間大小(決策變量范圍)為2 000(≈10)??梢钥闯?,如不對(duì)動(dòng)作進(jìn)行約束剪枝,算法的計(jì)算復(fù)雜度極大。
(3)獎(jiǎng)勵(lì)。將目標(biāo)函數(shù)(式(3)和(4))轉(zhuǎn)化為MDP的表述,即優(yōu)化目標(biāo)為時(shí)間段內(nèi)的累計(jì)安全堆存空間利用率和安全指數(shù),其中={|∈[0,]}。在時(shí)間步的安全堆存空間利用率1和安全指數(shù)2可表示為
式中:為在時(shí)間步分配的危貨箱;、和分別為所在箱區(qū)的最大箱位量、已占用箱位數(shù)以及剩余安全堆存空間因數(shù);為在時(shí)間步的在場箱集合。
對(duì)這兩個(gè)目標(biāo)進(jìn)行歸一化處理及加權(quán)處理后,得到優(yōu)化目標(biāo):
=1+2
其中:、分別為1和2的權(quán)重,其取值根據(jù)實(shí)際堆存過程中對(duì)兩個(gè)目標(biāo)的重視程度決定;、分別為指標(biāo)的歸一化參數(shù)。
將優(yōu)化目標(biāo)的增量Δ作為獎(jiǎng)勵(lì)判定的依據(jù):
=Δ=--1
若Δ為正,則說明堆存空間分配動(dòng)作給智能體帶來了更高的指標(biāo)收益,此時(shí)給予獎(jiǎng)勵(lì);若Δ為負(fù),則說明堆存空間分配動(dòng)作帶來了負(fù)面效果,此時(shí)給予懲罰。
A2C網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)一步設(shè)計(jì)如下:
(1)輸入狀態(tài)空間重構(gòu)。堆場三維空間比圍棋棋盤格二維空間多了一個(gè)垂直方向的維度,即堆存層高,因此將堆場每一層的危貨箱堆存空間狀態(tài)按實(shí)際空間坐標(biāo)位置處理為一個(gè)圖像張量,并且通過對(duì)圖像張量的補(bǔ)零操作處理非集裝箱堆存空間(例如箱區(qū)間的車道等)狀態(tài)。假定危貨箱堆場的層高限制為層,則堆場堆存空間狀態(tài)可以被處理成+1個(gè)圖像張量,其中前個(gè)圖像張量分別表征在時(shí)間步的每一層危貨箱堆存空間狀態(tài),第+1個(gè)圖像張量表征在時(shí)間步的進(jìn)場箱狀態(tài)。
(2)動(dòng)作約束。在強(qiáng)化學(xué)習(xí)算法中,對(duì)于不可行(不符合約束條件)動(dòng)作通常可以通過制定相應(yīng)的懲罰函數(shù)去抑制,但堆存空間分配問題中動(dòng)作空間很大(數(shù)千至數(shù)萬個(gè)可選動(dòng)作),大量無意義的分配動(dòng)作參與計(jì)算會(huì)使得訓(xùn)練迭代的代價(jià)很大。因此,算法將不可行動(dòng)作通過掩碼(Mask)進(jìn)行屏蔽,從而實(shí)現(xiàn)對(duì)動(dòng)作空間的剪枝,使得其迭代速度更快且更容易收斂。
Actor動(dòng)作約束流程如下:①將危貨箱堆存空間狀態(tài)和進(jìn)場箱狀態(tài)輸入到卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN),經(jīng)過CNN的卷積、激活及全連接后得到Actor的輸出,即安全堆存空間分配動(dòng)作的值向量=(,,…,-1,);②根據(jù)模型約束條件生成分配動(dòng)作掩碼向量,將向量中可行動(dòng)作對(duì)應(yīng)的值設(shè)為1,不可行動(dòng)作(如違反隔離關(guān)系、超高堆存等的動(dòng)作)對(duì)應(yīng)的值設(shè)為0,假定=(1,0,…,0,1);③通過與數(shù)乘計(jì)算,將不可行動(dòng)作的值屏蔽,得到新的值向量,′=(,0,…,0,);④采用Softmax策略獲得堆存空間分配動(dòng)作概率分布函數(shù),并依照動(dòng)作概率選擇對(duì)應(yīng)動(dòng)作執(zhí)行。動(dòng)作約束過程可用下式表示:
(|;)=Softmax(′)
式中:(|;)為堆存空間分配動(dòng)作概率分布函數(shù),表示在狀態(tài)下全部動(dòng)作的概率分布;為Actor參數(shù)。
(3)網(wǎng)絡(luò)訓(xùn)練和更新。A2C算法結(jié)合了演員-評(píng)論家(actor-critic,AC)算法與優(yōu)勢(shì)函數(shù)。Actor使用策略函數(shù)(,)來輸出動(dòng)作概率并選擇動(dòng)作。AC算法的策略函數(shù)的目標(biāo)是最大化獎(jiǎng)勵(lì),策略梯度可表示為
?()=(?log(|;)(,))
其中:()表示目標(biāo)函數(shù);策略函數(shù)(|;)用一個(gè)神經(jīng)網(wǎng)絡(luò)來近似表示在狀態(tài)下選擇動(dòng)作的概率;價(jià)值函數(shù)(,)表示在狀態(tài)下選擇動(dòng)作的未來累計(jì)獎(jiǎng)勵(lì)期望。
AC算法的策略梯度中的函數(shù)需要在交互中不斷學(xué)習(xí)去逼近真實(shí)值,這意味著梯度更新過程會(huì)出現(xiàn)噪聲,即高方差,從而導(dǎo)致學(xué)習(xí)速率減緩。為解決這一問題,A2C算法采用獎(jiǎng)勵(lì)減去基線函數(shù)的方式學(xué)習(xí)策略函數(shù)。定義優(yōu)勢(shì)函數(shù)(評(píng)價(jià)當(dāng)前狀態(tài)動(dòng)作值函數(shù)相對(duì)于平均值的優(yōu)勢(shì))為
(,)=(,)-()
式中:()為狀態(tài)值函數(shù)。
A2C算法的策略梯度為
?()=(?log(|;)(,))
Actor參數(shù)的更新公式如下:
←+?log(|;)((,)-())
式中:為Actor本地梯度更新學(xué)習(xí)率。
在實(shí)際應(yīng)用中,為簡化A2C算法,可對(duì)(,)進(jìn)行估計(jì):
(,)≈+(+1)
式中:為環(huán)境獎(jiǎng)勵(lì)回報(bào)值;為用于計(jì)算累計(jì)獎(jiǎng)勵(lì)值的折扣因子。
根據(jù)時(shí)間差分誤差的定義,時(shí)間差分誤差即為優(yōu)勢(shì)函數(shù)(,)的無偏估計(jì)。因此,Critic參數(shù)的梯度可采用均方誤差作為損失函數(shù)進(jìn)行更新,損失函數(shù)為
實(shí)驗(yàn)所使用的進(jìn)場箱數(shù)據(jù)為上港集團(tuán)危貨箱堆場的真實(shí)業(yè)務(wù)數(shù)據(jù)。該危貨箱堆場面積約12萬m,危貨箱年吞吐能力約20萬TEU,核準(zhǔn)可堆存箱量4 600 TEU。如表1所示,該數(shù)據(jù)集按危險(xiǎn)貨物類別可劃分為8大類19小項(xiàng)(除第7類放射性物質(zhì)),共有10萬條自然箱數(shù)據(jù),其中第3類易燃液體、第8類腐蝕品、第9類雜項(xiàng)危險(xiǎn)品由于應(yīng)用廣泛,樣本占比分別達(dá)到39.22%、12.85%和21.19%,而第1類爆炸品因監(jiān)管要求直裝直取,因此樣本占比僅為0.86%。
表1 進(jìn)場箱訓(xùn)練數(shù)據(jù)
基于上港集團(tuán)危貨箱堆場布局進(jìn)行設(shè)置,詳細(xì)布局見圖3。危貨箱區(qū)數(shù)量||=57,單個(gè)箱區(qū)規(guī)模(貝×列×堆)從3×4×3到29×5×3不等,最大堆存層高=3。假定危貨箱隨機(jī)到達(dá),初始危貨箱空間分布也隨機(jī)生成。本文采用PyTorch+gym實(shí)現(xiàn)A2C算法。訓(xùn)練過程使用Softmax策略表示策略函數(shù),采用Adam算法作為梯度優(yōu)化器,Actor和Critic本地梯度更新學(xué)習(xí)率分別為=0.001,=0.001,熵系數(shù)=0.01, 折扣因子=0.95。A2C算法使用兩個(gè)CNN模型逼近策略函數(shù)(|)和狀態(tài)值函數(shù)();每個(gè)網(wǎng)絡(luò)模型共有5層,其中有3個(gè)卷積層和2個(gè)全連接層;為避免丟失在場箱信息,不設(shè)池化層對(duì)特征進(jìn)行壓縮。輸入狀態(tài)空間層數(shù)3(最大堆存層高為3)以及1個(gè)圖像張量。
圖3 實(shí)驗(yàn)堆場危貨箱區(qū)平面布局
4.3.1 性能分析
為驗(yàn)證本文算法的性能,設(shè)計(jì)10組實(shí)驗(yàn),見表2,其中:第1~8組分別選取一類危貨箱,每組箱量分別為50;第9組為每類危貨箱數(shù)量均為10的小規(guī)模算例;第10組為每類危貨箱數(shù)量均為40的大規(guī)模算例。
表2 10組實(shí)驗(yàn)中各類危貨箱的自然箱量
利用A2C算法求解的危貨箱堆場安全堆存空間分配結(jié)果見表3。從表3可知:本文算法分配結(jié)果總體表現(xiàn)較好,安全堆存空間利用率和安全指數(shù)的優(yōu)化結(jié)果均超過人工水平;由于第3類易燃液體、第8類腐蝕品和第9類雜項(xiàng)危險(xiǎn)品事故風(fēng)險(xiǎn)較低,綜合優(yōu)化效果最好;由于第1類爆炸品、第6類毒性物質(zhì)與其他類別危險(xiǎn)貨物在理化性質(zhì)上存在較大的不相容性,并且事故危害較大,所以綜合優(yōu)化效果較差;由于樣本及計(jì)算復(fù)雜性影響,對(duì)大規(guī)模算例的優(yōu)化結(jié)果要略劣于對(duì)小規(guī)模算例的優(yōu)化結(jié)果,但綜合優(yōu)化效果亦超過人工水平,具備實(shí)際應(yīng)用價(jià)值。
表3 分配結(jié)果對(duì)比
4.3.2 算法對(duì)比分析
由于危貨箱堆場堆存空間分配模型計(jì)算規(guī)模巨大、約束較多,往往難以通過最優(yōu)化方法找到最優(yōu)解。因此,本節(jié)采用模擬退火(simulated annealing, SA)算法和遺傳算法(genetic algorithm, GA)這兩種傳統(tǒng)智能算法與A2C算法進(jìn)行對(duì)比分析,驗(yàn)證本文算法的綜合性能。SA算法主要參數(shù)設(shè)置:初始溫度500 ℃,終止溫度1×10℃,溫度衰減系數(shù)0.98,每個(gè)溫度迭代次數(shù)100。GA主要參數(shù)設(shè)置:交叉概率0.8,變異概率0.05,迭代次數(shù)500。
圖4為在樣本規(guī)模為50的算例中,不同已用堆存空間占比下各算法的目標(biāo)優(yōu)化結(jié)果。本文算法中安全堆存空間利用率和安全指數(shù)的權(quán)重均為 0.5,即重要程度相等。根據(jù)圖4的實(shí)驗(yàn)結(jié)果可以得出:本文采用的A2C算法能夠獲得較優(yōu)的安全堆存空間分配策略,在不同已用堆存空間占比下其安全堆存空間利用率和安全指數(shù)均超過SA算法和GA的。當(dāng)已用堆存空間占比超過50%時(shí),本文算法性能優(yōu)越,不僅能滿足日益增長的危貨箱堆存需求,還能有效降低堆存風(fēng)險(xiǎn)。在已用堆存空間占比為90%時(shí),在剩余空間中所有算法均難以獲取更多的安全堆存空間。同時(shí),隨著已用堆存空間占比的增加,可用堆存空間逐漸減少,各類算法及人工分配的性能均出現(xiàn)不同幅度的下降,但本文算法下降幅度最低,說明本文算法在不同環(huán)境狀態(tài)下穩(wěn)定性良好。
a)安全堆存空間利用率
4.3.3 收斂性分析
圖5為本文A2C算法的收斂曲線,縱坐標(biāo)為每次迭代訓(xùn)練時(shí)得到的平滑獎(jiǎng)勵(lì)。由于剛開始時(shí)-貪婪策略的探索概率較大,安全堆存空間分配經(jīng)常出現(xiàn)較大的失誤,所以安全風(fēng)險(xiǎn)升高。隨著算法的不斷學(xué)習(xí),當(dāng)?shù)螖?shù)超過100 000次后,安全堆存空間分配策略逐漸改善,并最終收斂獲得最優(yōu)解。
圖5 A2C算法的收斂曲線
本文針對(duì)基于安全堆存規(guī)范的危貨箱堆場安全堆存空間分配問題進(jìn)行研究,以安全堆存空間利用率和安全指數(shù)作為優(yōu)化目標(biāo),構(gòu)建了多目標(biāo)優(yōu)化模型,并設(shè)計(jì)A2C算法進(jìn)行求解。通過對(duì)不同規(guī)模算例的分析,驗(yàn)證了本文算法能夠充分考慮危貨箱的理化性質(zhì)、箱型結(jié)構(gòu)、滅火方式等風(fēng)險(xiǎn)因素,保證了不同工況下均能獲得超越人工水平的空間分配策略,使得港口危貨箱的堆存安全性及堆場利用率得到顯著提高。同時(shí),在性能表現(xiàn)上亦優(yōu)于其他傳統(tǒng)智能算法。該方法不僅能夠有效降低港口危貨箱的堆存風(fēng)險(xiǎn),提高危貨箱災(zāi)害應(yīng)急響應(yīng)能力以及減少次生災(zāi)害的影響,還能夠滿足港口危貨箱吞吐量持續(xù)增長的需求,對(duì)港口物流行業(yè)解決危貨箱安全堆存問題具有借鑒意義。