背景
碼頭管理中進(jìn)口箱選位一直是一個難題,特別是對于堆場面積小的碼頭而言,翻箱率居高不下會導(dǎo)致企業(yè)資源浪費(fèi),作業(yè)效率下降。今天,小編帶您一起看看上海浦東國際集裝箱碼頭有限公司是如何從箱位堆放上入手,優(yōu)化進(jìn)口箱選位算法,實(shí)現(xiàn)降低翻箱率(箱操作數(shù)/總操作數(shù))的。
堆場管理現(xiàn)狀
1.1進(jìn)口重箱作業(yè)特點(diǎn)
上海浦東國際集裝箱碼頭有限公司是上海港最早經(jīng)營集裝箱的碼頭,公司航線多,船舶小,船期密度大,箱區(qū)安排緊張。雖然部分進(jìn)口箱采用大票集中堆放,總體上可以降低部分翻箱率,但大部分進(jìn)口箱位置的選擇,主要采用大計(jì)劃方式,隨機(jī)堆放。用戶前來提箱的時候,并沒有一定的規(guī)律,也屬于隨機(jī)提取。鑒于這些情況,公司原有進(jìn)口堆場選位算法并沒有發(fā)揮太大作用。因此,我們考慮到對進(jìn)口箱的選位進(jìn)行優(yōu)化。
1.2進(jìn)口重箱選位問題
根據(jù)進(jìn)口箱具體情況,我們確定研究的問題:在貝位已知的前提下,貝位內(nèi)每個箱子的進(jìn)場時間和天數(shù)是已確定,但提箱時間未知??梢悦枋鰹椋航o定一個貝位,當(dāng)前貝位上有一定數(shù)量的已知進(jìn)場天數(shù)的集裝箱,要進(jìn)來一個已知進(jìn)場時間的新的集裝箱,位置上已有集裝箱和將要進(jìn)入的集裝箱,提離的時間都不確定。
對此,我們設(shè)計(jì)一個評分函數(shù),對即將進(jìn)入研究貝位的箱子以及它周邊的箱子進(jìn)行評分,根據(jù)評分情況,利用啟發(fā)式算法,為每個進(jìn)場的箱子選擇一個最為合適的位置,降低翻箱率。
數(shù)據(jù)分析
2.1數(shù)據(jù)采集分析
要分析堆場上集裝箱位置變化的信息,先要獲取有代表性的數(shù)據(jù),然后利用數(shù)據(jù)分析器進(jìn)行擴(kuò)展模擬。我們選取箱量較高的12月份箱動態(tài)信息數(shù)據(jù),作為分析的初始數(shù)據(jù)依據(jù)。數(shù)據(jù)信息包含了集裝箱的初始計(jì)劃選擇位置、實(shí)際落箱位置、非進(jìn)出(裝船或提箱)位置變化動態(tài)。問題可以轉(zhuǎn)化為:已知后續(xù)所有集裝箱進(jìn)場的序列和具體時間,以及所有集裝箱的出場序列和具體時間,現(xiàn)需要安排操作,在假設(shè)未知出場序列的前提下,模擬每一個集裝箱進(jìn)場并且進(jìn)行位置選擇,模擬每一個集裝箱在場翻箱操作,統(tǒng)計(jì)最終的移動數(shù)量。
首先對進(jìn)口卸船提箱時間進(jìn)行分析,對其規(guī)律進(jìn)行探尋。我們建立一個單獨(dú)的數(shù)據(jù)分析器,這個分析器可以完成以下模擬任務(wù),使得其能夠?qū)π畔⑦M(jìn)行分析。
(1)模擬到任意一個時刻進(jìn)行暫停,且能夠獲得此時的在場箱位置列表、狀態(tài)列表,以及此時的后續(xù)任務(wù)。此外,模擬在場箱動態(tài)信息數(shù)據(jù)中的每一個動作,并且在動作執(zhí)行時,進(jìn)行數(shù)據(jù)的統(tǒng)計(jì)和記錄。該部分模擬的意義在于,可以對所有動作截取任意時長進(jìn)行統(tǒng)計(jì),即對相關(guān)整體數(shù)據(jù)進(jìn)行統(tǒng)計(jì)和分析。
(2)截取某一個貝位,能夠?qū)υ撠愇粌?nèi)的所有相關(guān)操作進(jìn)行統(tǒng)計(jì)和分析,即可以獲得一系列僅針對該貝位內(nèi)操作的分析,且該分析過程獨(dú)立于整體模擬,并且有極高效率支持多組數(shù)據(jù)模擬和分析。該部分模擬的意義在于,可以單獨(dú)研究每個貝位上的具體情況,截取數(shù)據(jù)并且進(jìn)行模擬。
2.2評分機(jī)制引入
對整體數(shù)據(jù)的進(jìn)口箱提箱天數(shù)進(jìn)行分析,進(jìn)口箱提箱天數(shù)和百分比見表1。其中第一行代表該箱在堆場中的天數(shù),第二行表示在堆場中等待該天數(shù)的箱的提箱占總數(shù)的百分比,第三行表示在該天數(shù)下,占剩余的百分比數(shù)值。
從統(tǒng)計(jì)可以看出,平均堆存天數(shù)約為4.5天。9天以上的集裝箱分布較為分散,因此我們將提箱時間大于等于9天的箱全部進(jìn)行合并統(tǒng)計(jì),其總量在4%左右,和第一天較為接近。2-6天為進(jìn)口重箱主要提箱時間,該部分合計(jì)約有79%。箱子在場時間越長,則在后一天被提走的概率都會被增加。而我們看到其主要集中在3-5天的分布,其連續(xù)三天加起來接近53.61%,因此我們考慮當(dāng)堆存天數(shù)相差3天以上會出現(xiàn)大概率的翻箱。
此外,我們對箱量達(dá)到100自然箱的船舶進(jìn)行了進(jìn)口箱提離場地的時間分布統(tǒng)計(jì)分析,船舶進(jìn)口箱提離堆場的時間分布表見表2。
由于進(jìn)口提箱沒有預(yù)約機(jī)制,客戶辦理時間隨機(jī)而無序,實(shí)際提箱時間差別較大。由此可以看出,直接按照“船到來的日期”進(jìn)行選位,是不可行的。因此,我們考慮引入評分機(jī)制,進(jìn)行選位的優(yōu)化。
2.3進(jìn)口重箱堆存算法優(yōu)化設(shè)想
為了降低進(jìn)口箱的提箱翻箱率,我們必須對進(jìn)口箱進(jìn)入場地貝位前進(jìn)行優(yōu)化位置的優(yōu)化選擇。由于受堆場的限制和船舶效率的要求,且進(jìn)口箱選位一直采用大計(jì)劃的方式,如果采用對選位算法做過多過細(xì)的選位規(guī)則的方法,算法改進(jìn)的效果并不大。通過前期數(shù)據(jù)分析,我們發(fā)現(xiàn)在輪胎吊堆場中,進(jìn)口箱選位和翻箱選位當(dāng)前仍有很大的優(yōu)化空間。因此,我們考慮不去修改橋邊手持機(jī)改變原有的選位信息,而是在橋邊指定了具體的箱區(qū)、貝位之后,在輪胎吊RPS端進(jìn)行指定貝位選位的優(yōu)化建議。
具體情況就是,貝位已知,貝位內(nèi)每個箱子的進(jìn)場時間確定,但是提箱時間未知,我們設(shè)想是否有一種在已知進(jìn)口卸船的預(yù)計(jì)提箱時間的前提下,結(jié)果較優(yōu)的堆疊算法。該算法主要思路:假定預(yù)計(jì)提箱時間不同,那么在選位和翻箱過程中,在同樣的空間下,我們優(yōu)先選擇預(yù)計(jì)剩余堆存天數(shù)大于當(dāng)前箱的位置進(jìn)行堆疊。
選位算法實(shí)現(xiàn)方法
算法根據(jù)當(dāng)前堆存高度、當(dāng)前堆存天數(shù),來對進(jìn)口箱在單個貝位的堆疊策略和翻箱策略進(jìn)行修改并且優(yōu)化。
3.1算法設(shè)計(jì)
對于任意一個進(jìn)口箱的堆疊,我們可以將其分為多種具體情況。針對不同情況設(shè)計(jì)相關(guān)的具體策略。具體策略的生成,我們直接進(jìn)行條件假設(shè),即以下三個條件:
(1)新進(jìn)入堆場的集裝箱,根據(jù)上面的統(tǒng)計(jì)概率,在壓到進(jìn)場天數(shù)大于此集裝箱的箱上時,容易造成翻箱,因此應(yīng)當(dāng)盡量避免此情況;
(2)在已有堆存天數(shù)較多的集裝箱進(jìn)行翻箱時,如果沒有空列,由于該箱被提走的概率較高,那么放在盡可能高的位置,可以為其它箱的后續(xù)堆疊節(jié)約空間;
(3)如果兩個集裝箱的在場天數(shù)差距在3天以上時,其被提走的概率相差較大,因此可以近似認(rèn)為堆存較久的集裝箱會被先提走。
在根據(jù)統(tǒng)計(jì)結(jié)果形成的以上假設(shè)條件下,我們設(shè)計(jì)相應(yīng)的評分函數(shù)和基礎(chǔ)公式,并且在此公式基礎(chǔ)上進(jìn)行數(shù)值驗(yàn)證和結(jié)果計(jì)算。后面關(guān)于時間的計(jì)算,全部采用最小單位為“天”的單位。
對此,首先定義三個變量。
定義1:接近時間T1(x):針對即將要堆疊的排T進(jìn)行計(jì)算。如果該列存在某個進(jìn)場時間在該箱之前的箱子,T1(x)為“當(dāng)前時間-要移動的箱的進(jìn)場時間”,即“當(dāng)前移動的箱子在場了幾天”,如果不存在則T1(x)取10。
定義2:接近時間T2(x):針對即將要堆疊的排T進(jìn)行計(jì)算。如果該列存在某個進(jìn)場時間在該箱之前的箱子,T2(x)為“當(dāng)前時間-要移動的箱的進(jìn)場時間”,即“當(dāng)前移動的箱子在場了幾天”,如果不存在則T2(x)取3。如果T2(x)>3,那么令T2(x)取3。
定義3:當(dāng)前高度H:同樣針對即將堆疊的排T進(jìn)行計(jì)算,即當(dāng)前排的高度。
在此基礎(chǔ)上,我們使用兩個分?jǐn)?shù)計(jì)算公式來進(jìn)行判斷,兩個公式總計(jì)有5個參數(shù),分別是常數(shù)C,H的系數(shù)D和D1,T(x)的系數(shù)K和K1。公式中我們假設(shè)這些變量滿足線性模型。
當(dāng)列T存在某個集裝箱,其進(jìn)場時間大于要進(jìn)入這一列的箱x時,使用公式(1),否則使用公式(2)。使用兩個公式是因?yàn)?,如果該列?nèi)沒有在場時間在此箱之前的,那么說明該箱大概率不會引起翻箱,就不算作翻箱數(shù);而使用公式(2),意味著該箱很大概率會引起翻箱,則在此情況下參數(shù)應(yīng)該單獨(dú)進(jìn)行設(shè)定。
對該貝位逐列進(jìn)行F(x)值計(jì)算,選擇F(x)最大且和起始列不同的一列作為該箱所翻到的列。
3.2算法實(shí)現(xiàn)
以圖例說明公式使用情況如下。
堆疊列T內(nèi)所有箱進(jìn)場時間均在當(dāng)前移動箱之后示意圖見圖1。箱子上的數(shù)字代表該箱的進(jìn)場日期。進(jìn)場的集裝箱日期為1,意味著該列其它集裝箱的進(jìn)場日期都在此箱之后,因此使用公式(1),其T1(x)=10,令C=40,D=-1,K=2,由此可得F(x) =40 - 1* 4+ 2 * 10 = 56。
堆疊列T內(nèi)部分箱進(jìn)場時間均在當(dāng)前移動箱之后見圖2。圖2中則是該列中有在此箱后,也有在此箱前進(jìn)場的集裝箱,因此仍然使用公式(1),其T1(x)=1,令C=40,D= -1, K=2,則此處F(x)=40-1*4+2*1= 38。
堆疊列T內(nèi)所有箱進(jìn)場時間均在當(dāng)前移動箱進(jìn)場時間之前示意圖見圖3。圖3中則是滿足T2(x)的計(jì)算條件,該列的所有進(jìn)場時間都小于該箱,因此使用公式(2),其T2(x)=1,令D1=1,K1= -2 ,則其F(x) =1*4 + (-2) *2 = 0。
根據(jù)公式(1)和(2),按照圖例中所給出的情況,設(shè)計(jì)相關(guān)源代碼,進(jìn)行試驗(yàn)分析和驗(yàn)證。
試驗(yàn)驗(yàn)證
4.1 試驗(yàn)數(shù)據(jù)準(zhǔn)備
為了進(jìn)行批量的測試和結(jié)果對比,我們使用分析器進(jìn)行數(shù)據(jù)提取和生成,以突出代表的24箱區(qū)12貝位作為40尺貝位試驗(yàn)數(shù)據(jù),44箱區(qū)21貝位作為20尺貝位試驗(yàn)數(shù)據(jù)。
數(shù)據(jù)生成的方法如下:對整個貝位上的所有操作進(jìn)行數(shù)據(jù)截取,保留所有的進(jìn)箱、提箱、翻箱操作來進(jìn)行數(shù)據(jù)生成。由于實(shí)際進(jìn)箱滿足假設(shè),因此我們生成了足夠多組數(shù)據(jù)(1000組)來進(jìn)行實(shí)驗(yàn)和對比。每一組數(shù)據(jù)中,我們保留該箱的實(shí)際進(jìn)場時間,之后根據(jù)統(tǒng)計(jì)的提箱天數(shù)概率,來為該箱隨機(jī)添加提箱日期,這樣生成出的數(shù)據(jù)就符合統(tǒng)計(jì)的概率分布,可以在多組實(shí)驗(yàn)的情況下與原始翻箱操作數(shù)結(jié)果進(jìn)行對比。
4.2 評價指標(biāo)和參數(shù)調(diào)整
分別針對每種不同數(shù)據(jù),進(jìn)行相應(yīng)實(shí)驗(yàn)結(jié)果研究和對比,以及進(jìn)行參數(shù)決定。
首先對公式中的C值進(jìn)行研究。暫時固定K值和D值為初始設(shè)計(jì)的(D=1,K = -2,D1 = -1,K1 = 2)的條件下,進(jìn)行C值的求解。取C=-1 作為參數(shù)C的取值。
在固定C值前提下,隨著K和D值變化求翻箱率。此處我們K1和D1仍然取-1和2。
參數(shù)K和D求解表格見表3。根據(jù)表3中的數(shù)據(jù)結(jié)果,我們可以得出,原始參數(shù)設(shè)置的D=1,K=-2是合理的。在此基礎(chǔ)上,我們進(jìn)行K1和D1的求解。
參數(shù)K1和D1求解表格見表4。根據(jù)表4可知,對于K1和D1的取值分別在D1=-3,K1=2時達(dá)到最優(yōu)。因此,在進(jìn)行為期一月的進(jìn)箱數(shù)據(jù)模擬時,其翻箱率在取D=1,K=-2,D1=-3,K1=2的時候會獲得最優(yōu)結(jié)果。
4.3 實(shí)驗(yàn)結(jié)果總結(jié)
此外,我們對原有數(shù)據(jù)進(jìn)行修改,即對進(jìn)箱假設(shè)條件進(jìn)行更改。例如24箱區(qū)12貝位生成的進(jìn)箱數(shù)據(jù),假設(shè)的進(jìn)箱時間是固定的,但是我們在這里假設(shè)其分布的更加均勻后觀察其實(shí)驗(yàn)結(jié)果,均勻分布下的翻箱率見表5。
其中“2412”代表24箱區(qū)12貝位使用調(diào)整后的參數(shù)的結(jié)果,“2412改”代表24箱區(qū)12貝位使用修改生成概率的數(shù)據(jù)后的結(jié)果,“2412實(shí)際”代表實(shí)際翻箱率,而“全箱區(qū)”代表全場翻箱率?!?412改”和“4421改”比起實(shí)際結(jié)果,均有較小幅度的翻箱數(shù)百分比上升。
對實(shí)際數(shù)據(jù)結(jié)果分析過程中,發(fā)現(xiàn)有一些較大的結(jié)果出現(xiàn),說明該算法的應(yīng)用范圍可能僅適用于確定進(jìn)箱分布下的情況。從上表看,對于“4421”貝位情況,其翻箱率優(yōu)化值較低,而對于“2412”其實(shí)際優(yōu)化值較高。因此,對于不同的分布假設(shè),仍需要參數(shù)調(diào)整。
在此研究基礎(chǔ)上的下一步的工作方向,主要分為兩個部分:一是進(jìn)行更多的數(shù)據(jù)測試和對比。本文中的數(shù)據(jù)量可以擴(kuò)展到多個代表貝位,時間跨度可以使用多個月的數(shù)據(jù)。二是對相關(guān)參數(shù)設(shè)計(jì)進(jìn)行優(yōu)化。在本文中的相關(guān)參數(shù)是根據(jù)經(jīng)驗(yàn)直接確定的,因此可能會有其他一些有影響的參數(shù)也可以加入到?jīng)Q策公式中,使結(jié)果更優(yōu)。