第三章 PDPTW 轉換 SPDP
3.2 SPDP 問題規模精簡策略
出現的路段,以及時間窗分割後所產生的部份不可能被服務的子作業刪除,
減少SPDP 問題決策變數數量,與演算過程中可能出現的無效運算步驟。
此作業階段請注意!矩陣是用嚴謹離開時間限制法計算所得,若為了 使轉換所得的 SPDP 問題規模較小,而使用較大的時間窗分割參數值(δ),
以致於子作業的時間窗偏大,將可能造成原問題最佳解不存在(因為增加了 過多的車輛閒置時間),或是 SPDP 最佳解品質劣於原 PDPTW 最佳解。因 此,如何兼顧 SPDP 問題規模與最佳解品質,是該轉換作業績效的重要關鍵 之一,適合的時間窗分割參數值(δ)請參考後續 3.4.2 小節中的測試結果。
原則 5 :車輛離開與回到場站時必須為空車
車輛從場站出發後所到達的第一個作業點,必定是收貨作業 點,而回到場站前的最後一個作業點,必定是卸貨作業點。因此子 作業旅行成本矩陣中必定不存在路段 Xui,0,
∀
u=1,2,…,n;與路段 X0,vj,∀
v=n+1,n+2,…,2n。表 3.4 中儲存格內編號為 5 的區塊,皆 是違反原則5 的路段決策變數。綜上所述,我們可以確保存在於子作業旅行成本矩陣中的路段,被同一 車量連續服務時,路段上所連結的各個子作業所對應的作業點的服務時窗、
收卸貨服務順序、車容量限制、以及同一作業點中的子作業僅能選其中一項 服務一次等的限制條件,都能被滿足。
子作業旅行成本矩陣中違反原則 3、原則 4 與原則 5 的路段刪除後,我 們檢視矩陣中每個子作業間的聯結關係,發現由於部分路段決策變數的刪 除,造成部分子作業點僅能與場站相連結,更甚者甚至無法與其他任何一個 子作業點或場站相連結,因此再設計原則 6、原則 7 與原則 8,進一步反覆 刪除更多的決策變數。
原則 6 :若僅有場站可到達的子作業必為收貨作業,且該作業能直接到達的 卸貨作業,必為其相對應的卸貨作業
若某一子作業僅可由場站直接到達服務,該子作業必定屬於收 貨子作業,且若沒有其他任何一個子作業服務完成後可接著服務該 收貨子作業時,完成該收貨子作業後可接著服務的卸貨子作業,必 定僅有與其相對應的卸貨作業所分割出的所有卸貨子作業。因此子 作業旅行成本矩陣中可進ㄧ步將該收貨子作業與其他卸貨子作業間 的單向旅行路段 ( 0->收->卸 ) 刪除。表 3.4 中儲存格內編號有 6 的區塊,皆是違反原則6 的路段決策變數。
原則 7 :若某一卸貨作業僅能直接回到場站,可到達該作業的收貨作業必為 其相對應的收貨作業
原則7 與原則 6 相呼應,若某一子作業完成後只能回到場站,
且不存在任何收貨或卸貨子作業可以繼續服務時,該子作業必定屬
於卸貨子作業,而且在該卸貨子作業之前可以服務的收貨子作業,
必定僅有與其相對應的收貨作業所分割出的子作業,因此,子作業 旅行成本矩陣中可以將其他收貨子作業與該卸貨子作業間相連結的 單向旅行路段 ( 收->卸->0 ) 刪除。表 3.4 中儲存格內編號有 7 的 區塊,皆是違反原則7 的路段決策變數。
表3.4 SPDP 子作業旅行成本矩陣中路段決策變數刪除示意圖
J
0J
10J
11J
12J
13J
20J
21J
22J
23J
30J
31J
32J
33J
40J
41J
42J
43J
44J
45J
46J
47J
48J
0 5 5 5 5 5 5 5 5 5 5 5 5 5J
10 5 1 1 1 1 6 6 6 6,7 6,7 6,7 6,7 6,7 6J
11 5 1 1 1 1 7 7 7 7 7J
12 5 1 1 1 1 7 7 7 7 7J
13 5 1 1 1 1 7 7 7 7 7J
20 5 1 1 1 1J
21 5 1 1 1 1J
22 5 1 1 1 1J
23 5 1 1 1 1J
30 3 3 3 3 1 1 1 1J
31 3 3 3 3 1 1 1 1J
32 3 3 3 3 1 1 1 1J
33 3 3 3 3 1 1 1 1J
40 3 3 3 3 1 1 1 1 1 1 1 1 1J
41 3 3 3 3 1 1 1 1 1 1 1 1 1J
42 3 3 3 3 1 1 1 1 1 1 1 1 1J
43 3 3 3 3 1 1 1 1 1 1 1 1 1J
44 3 3 3 3 1 1 1 1 1 1 1 1 1J
45 3 3 3 3 1 1 1 1 1 1 1 1 1J
46 3 3 3 3 1 1 1 1 1 1 1 1 1J
47 3 3 3 3 1 1 1 1 1 1 1 1 1J
48 3 3 3 3 1 1 1 1 1 1 1 1 1表3.5 SPDP 子作業旅行成本矩陣中路段決策變數刪除結果
J
0J
10J
11J
12J
13J
20J
21J
22J
23J
30J
31J
32J
33J
40J
41J
42J
43J
44J
45J
46J
47J
48J
0 - 60 - - - 60 - - - --J
10 - - - - - 120 - - - - 240 - - - - --J
11 - - - - - - 120 - - - - 240 - - - - --J
12 - - - - - - - 120 - - - - 240 - - - - --J
13 - - - - - - - - 120 - - - - - - 360J
20 - - - - - - - 180 - - - 300-J
21 - - - - - - - 180 - - - - 300-J
22 - - - - - - - - - 300J
23 - - - - - - - - --J
30 210 - - - - - - 180-J
31 210 - - - - - - 180-J
32 210 - - - - - - 180-J
33 210 - - - - - - - - 180J
40 330 - - - - - - 180 - - --J
41 330 - - - - - - 180 - - --J
42 330 - - - - - - 180 - - - --J
43 330 - - - - - --J
44 330 - - - - - --J
45 330 - - - - - --J
46 330 - - - - - --J
47 330 - - - - - --J
48 - - - - - - - - --原則 8 :子作業應符合流量守恆定理
子作業旅行成本矩陣中違反原則3、原則 4、原則 5、原則 6、
與原則 7 的路段皆被刪除後的結果如表 3.5 所示,我們發現部分子 作業亦隨之出現「路徑中斷」的現象,文中後續稱之為無用子作 業。當車輛行至無用子作業後,將無法從該無用子作業直接前進至 任何其他的子作業,也無法回到場站,例如表 3.5 中的子作業 J23
與 J48;或者是車輛無法從其他任何的子作業或場站行駛至無用子 作業,例如表 3.5 中的子作業 J11、J12、J13、J30、J40、J41、J42、J43
與J44。
無用子作業不符合流量守恆定理,不可能存在於可行解中,可 被歸類為無效的決策變數,當然可以從問題中刪除,同時也可將所 有與無效子作業相連的路段從子作業旅行成本矩陣中刪除。刪除後 的子作業旅行成本矩陣如圖 3.3(a)所示。由於又有部份路段被刪除 掉,所以也可能有新的無用子作業再次出現,如圖3.3(a)中的 J21、 J22 與 J45,因此需反覆確認與執行刪除作業,直到子作業旅行成本 矩陣中確定沒有無用子作業為止,如圖3.3(c)。
未利用問題模式精簡策略處理之子作業旅行成本矩陣(表 3.3)中的子作 業決策變數共計22 個,路段決策變數 47 個,而經過問題精簡策略處理後的 子作業旅行成本矩陣如圖 3.3(c)所示,子作業決策變數共計 7 個,路段決策 變數 12 個,決策變數明顯減少,其中子作業決策變數減少 68.2%,路段決 策變數減少 74.5%,且路段決策變數甚至較原問題還要更少(PDPTW 範例例 題如表3.1 所示,路段決策變數共計 20 個)。
值得注意的是,問題模式精簡策略僅針對任兩個子作業被車輛單獨且 連續服務時應滿足的限制條件進行判斷,並未考慮服務不連續的子作業間的 關係,因此求解 SPDP 問題時,仍須考慮各個不連續服務的子作業間的收、
卸貨順序關係、累積車容量限制與一組作業必須由同一車輛服務等的限制條 件,但較原問題規模而言,總決策變數數量與限制式數量皆已大幅減少。
圖3.3 SPDP 子作業旅行成本矩陣中子作業決策變數刪除示意圖