• 沒有找到結果。

2.3 文獻回顧小結

Lee et al.[2]提出之以 GRASP 演算法求解動態連續船席調配問題,為求解動 態連續船席調配問題中較新的研究,且注意到時空圖中若大船接著小船到達,在 hole 中可能有可停靠的位置。如下圖 2-9,若船 1、2、3 之 ETA 為 0,船 4 之 ETA 為 a4,船 5 之 ETA 為 a5,則過去之方法無法注意到圖中最左邊兩個可能停 靠位置。

圖 2-9 產生 Hole 之可能情況,資料來源: Lee, D.H., Chen, J.H., & Cao, J.X. (2010)

就 Lee et al.[2]以 GRASP 求解結果顯示,由於 GRASP_2 搜尋深度較深,考 慮了還沒排進時空圖裡的所有的船的可能停靠位置,所以可以求得較 GRASP_1 佳的解,但在大規模的計算,計算時間會甚至會超過 GRASP_1 的兩倍,所以 Lee, D.H. et al (2010)提出,在問題屬於小規模 5、10 艘船時,可以使用 GRASP_2 求 解,但問題屬於大規模時 GRASP_1 較能同時符合時間效率及解品質的要求。

回顧以上文獻,由於船席調配資訊系統應用在較大規模的求解較有意義,故 本研究針對 Lee et al.[2]中實用性較高的 GRASP_1 進行改良,期望改良之演算法 維持相當於 GRASP_1 的解品質,縮短期運算時間,或是在相同的運算速度下,

得到更好的求解結果。

24

改良式 GRASP 演算法求解 DBAPC 第三章

3.1 步驟改良構想

研究以上 GRASP 演算法後,3.1 節提出之改良步驟構想分別為以較好的起 點開始求解以及避免增加機會成本,分述改善步驟及理由如下。

3.1.1 以較好的起點開始求解

Lee et al.[2]的測詴題庫以每艘船之 ETA 符合 U (0,20)的均等分配方式產生,

此情況在十艘船以上即為相當擁擠之情形,本研究提出假設先將船隻依大小分組,

並讓每組內之船隻長度相加後盡量接近碼頭長度,再開始進行船席調配,則能將 空間做最大的利用,如下圖 3-5。

圖 3-1 船隻分組示意圖

則具體作法步驟如下:

1. 將船隻長度由大到小排序得到一序列 list。

2. 取出 list 中最大值之元素 max(list)放進集合 set 中,並從 list 中刪除 max(list)。

3. 搜尋 list 中每個元素,尋找符合長度≦10-sum(set)條件的值放入集合中,每 當有元素加入 set 中,即更新 sum(set)。

25

inference 1 cost 16408.13 execution time 45.56 inference 2 cost 16404.9 execution time 45.08 inference 3 cost 13686.16 execution time 40.99

由測詴結果發現 inference 3 不論是求解時間或是求解品質均較其他插入順序 為佳,所以預計改良之演算法,以 inference 3 之插入順序開始求解。

26

3.1.2 避免增加機會成本

由於 3.1.1 提出的概念以及研究範圍皆不遵守先到先服務原則,所以可能產 生如下圖 3-1 的情況。

圖 3-2 船 j 之機會成本示意圖(1)

上圖 3-1 之 k1~6 為船 j 之可行的停靠位置,以 k1~3 來說,在目標式裡的成 本均相同,所以在 2.2.1.1 中之以輪盤法選擇時的機率是相等的,若最後選擇為 K2,則如下圖 3-2,可能使得下一個要停靠的船失去了一個可停靠且成本相較為 低的位置。

圖 3-3 船 j 之機會成本示意圖(2)

但若經由輪盤法選擇後的位置為 k1,則可留給接下來停靠進來的船較大的空 間,保留最大的機會給後來停進來的船,如下圖 3-3。

27

圖 3-4 船 j 之機會成本示意圖(3)

依以上推論可以得知雖然 K2~3 以目標式求得的成本相同,但選擇 K2 的機 會成本卻比選擇 K1、K3 為大,所以本研究提出之改良步驟之一為將時空圖上所 有可能停靠位置中,X 值相同的停靠位置為三個以上時,將 Y 值為最高或最低 的兩個停靠位置保留,刪除 Y 值界於前述兩個停靠位置之前的其他停靠位置,

若相同 X 值的可能停靠位置僅為一個或兩個,則直接保留,以圖 3-4 來說,需刪 除掉 K2。

圖 3-5 船 j 之機會成本示意圖(4)

28

相關文件