第四章 MTVRPTW之演算法架構設計
4.2 鄰域改善模組
4.2.2 交換改善模組
本研究採用的交換改善模組可分為:(1) 路線內改善模組與(2) 路線間改善 模組,以下分別介紹路線內 Or-opt、路線間 1-0 exch 及 1-1 exch 模組。
1. Or-opt
可適用於途程內的客戶所在位置交換的改善方式(其概念如圖 4.10 所示),
以單點 m 為主,也有可能是連續兩點(m,n)或連續三點(m,n,o),本研究以單點插 入為主,找出同一途程中客戶 m 的 h 個鄰近客戶點 p,並判斷插入客戶 p 與客戶 q 之間是否改善目標函數,若是,則將客戶 m 插入到客戶 p 與客戶 q 之間,其成 本改善值公式之計算公式為:l(m;p,q)=(
C
mn +C
mo +C
pq)−(C
no+C
pm +C
qm), 其中,節點 m 插入其他兩點(p,q)的位置,係選擇插入後的成本改善值最大的位 置,且成本必須大於零,才有改善的效益,Or-opt 交換流程圖如下圖 4.11 所示。圖 4.10 Or-opt 示意圖 Depot
m p
Depot
m p
q q
n
o
n
o
圖 4.11 Or-opt 交換流程圖 Reduction 後的更新解
對所有路線[K]
k=1
檢查 k<=K
對路線 k 中的所有點 [M](除了起點與終點 外), m=1
檢查 m<=M
將點 m 插入本路線;插入位 置為距離成本改善最大的 優先,且改善成本值>0
檢查是否符合容量與時窗限 制,且場站與場站不相鄰的
原則
插入且更新路線
尋找下一點,m=m
尋找下一節 點,m=m+1 尋找下一
路線,
k=k+1
停止且更新起始解 是
否
是
是 否
否
2. 1-0 節點交換法
圖 4.12 說明(1-0)交換法之概念。令圖 4.12(a)為 MTVRPTW 解之中的兩條路 線,若將路線 A 的節點 m 插入到路線 B 的節點 p 與 q 之間,除了路線 B 仍滿足 車輛容量限制外,m 及 q 之後的各點亦滿足時窗限制,則成為圖 4.12(b)的兩條 新路線,將可改善總路線成本。節點交換法成本改善值之計算公式為:l(m;
p,q)=(
C
lm +C
mn −C
ln)+(C
pq−C
pm −C
mp),節點 p 與 q 為連續點對。其中,節點 m 插入兩節點(p,q)的位置,係選擇插入後的成本首先改善值的位置,且成本必 須大於零,才有改善的效益,其 1-0 節點交換流程圖如下圖 4.13 所示。圖 4.12 1-0 節點交換法的解題概念 n
p q
r l
m
depot
n
p
q r l
m A
B A B
depot
(a) (b)
圖 4.13 1-0 節點交換流程圖 Or-opt 交換後的解
對所有路線[K]
k=1
檢查 k<=K
對路線 k 中的所有點 [M](除了起點與終點 外), m=1
檢查 m<=M
將點 m 插入其他路線;插入 位置為距離成本最小的優 先,且改善成本值>0
檢查是否符合容量與時窗限 制,且場站與場站不相鄰的
原則
插入且更新路線
尋找下一點,m=m+1 尋找下一
路線,
k=k+1
停止且更新起始解 是
否
是 否
否
是
3. 1-1
節點交換法圖 4.14 為 1-1 交換法之概念。令圖 4.14(a)為 MTVRPTW 解之中的兩條路線,
若將路線 A 的節點 m 與路線 B 的節點 q 交換,且路線 A 與路線 B 仍能滿足車輛容 量限制與時間窗限制,則成為圖 4.14(b)的兩條新路線,將可改善路線成本。節 點 交 換 改 善 值 之 計 算 公 式 為 : l(m ; q)=
) (
)
(
C
lq +C
nq+C
mp +C
mr −C
ml +C
mn+C
qp+C
qr ,其中 m 點與 q 點進行交換。對現 有解之兩條路線,按照上述 1-1 節點交換的方式,依序交換不同路線的節點,並 檢查交換後的成本改善值是否大於零;若是,則予以交換;否則維持原解,繼續 檢查下一組節點,直到可能交換的節點都檢查完畢且沒有改善為止。1-1 節點交 換流程如圖 4.15 所示。圖 4.14 1-1 節點交換流程圖
depot depot
q m
l n p r
m q
l n p r
(a) (b)
A B A B
圖 4.15 1-1 節點交換流程圖 1-0 exch 交換後的解
對所有路線[K]
k=1
檢查 k<=K
對路線 k 中的所有點 [M](除了起點與終點 外), m=1
檢查 m<=M
將點 m 與其他路線點 n 進行 交換;交換準則為距離成本 最小的優先,且改善成本值
>0
檢查是否符合容量與時窗限 制,且場站與場站不相鄰的
原則
插入且更新路線
尋找下一點,m=m+1 尋找下一
路線,
k=k+1
停止且更新起始解 是
否
是 否
否
是