• 沒有找到結果。

中 華 大 學

N/A
N/A
Protected

Academic year: 2022

Share "中 華 大 學"

Copied!
58
0
0

加載中.... (立即查看全文)

全文

(1)

中 華 大 學 碩 士 論 文

題目:多場站多車種車輛路線問題之巨集啟發式演算 法研究

A Threshold Accepting Meta-heuristic For Solving Heterogenous Multi-Depot Vehicle Routing Problem

系 所 別:運輸科技與物流管理學系碩士班 學號姓名:王 暢 湘 M 0 9 3 1 4 0 0 6 指導教授:卓 裕 仁 博 士

中 華 民 國 九十五 年 七 月

(2)
(3)
(4)
(5)

多場站多車種車輛路線問題之巨集啟發式演算法研究

學生:王暢湘 指導教授:卓裕仁博士

摘 要

本研究針對多車多場站種車輛路線問題(Multi-Depot and Heterogeneous Fleet Vehicle Routing Problem, MDHVRP) 之 巨 集 啟 發 式 解 法 進 行 探 討 。 HMDVRP 可定義為:給予一個網路,包含 M 個場站與 N 個顧客,各場站皆有 K 種車輛可以使用且數量不限;在滿足各車種容量限制與路線最大距離等限制 下,求出一組車輛路線使得車輛使用成本與路線行駛成本之總和達到極小化。

門檻接受法(Threshold Accepting, TA)為一巨集啟發式方法,為 1990 年德國學者 Dueck 及 Scheuer 所提出,其由模擬鍛鍊法(Simulated Annealing, SA)改良而 來,屬於門檻型演算法(Threshold Algorithm)的一種。近年來應用於求解最佳化 問題具有不錯成效。

本研究之 TA_HMDVRP 的巨集啟發式求解方法。共分成三個模組:起始 解構建模組、鄰域搜尋模組設計、門檻接受模組。其中起始解建構方式主要應 用「先分群再排程(Cluster First, Route Second)」的概念來設計,分成以下二 個步驟,(1) 顧客分群:依據各顧客點與各場站之相對位置,將顧客指派給距 其最近的場站。(2) 路線構建:以最大容量與最小容量的 2 車種為基礎,利用 最遠起點之鄰近點法(Farthest-start Nearest Neighbor Method),分別構建各場站 的車輛起始路線。在鄰域搜尋模組部分,應用 2-Opt、Or-Opt、路線間節點交換、

場站間節點交換,以及路線分解(大車換小車)等方法,進行起始解的改善,

再配合門檻接受模組來進行改善。本研究設計了兩種門檻數列遞減的方式:等 比遞減數列、等差遞減數列。

本研究以 C#語言將上述提出的啟發式解法撰寫成電腦程式,並採用 Salhi 等人所使用的多車種轉換公式,將加拿大配送管理研究中心(CRCDM)共 25 個 多場站車輛路線問題(Multi-Depot Vehicle Routing Problem, MDVRP)標竿例題 轉修改成多場站多車種車輛路線問題的例題,並進行解題績效測試與分析。測 試結果再起始解產生方面,以最大車容量所構建之起始解表現較好,再經由鄰 域搜尋模組與門檻接受模組改善後,最小車容量構建之起始解,部分例題路線 數雖較使用最大車容量構建之起始解少,但路線成本仍然較高,整體仍以最大 車容量構建起始解再經由等比遞減數列之門檻接受模組改善後,表現最佳。

關鍵詞:多車種多場站車輛路線問題、門檻接受法、巨集啟發式解法

(6)

A Threshold Accepting Meta-heuristics for Solving Heterogeneous Multi-depot Vehicle Routing Problem

Student: Chang-hsiang Wang Advisor: Dr. Yuh-Jen Cho

Abstract

The Heterogeneous Multi-Depot Vehicle Routing Problem (HMDVRP) is an extent of the classical Vehicle Routing Problem. HMDVRP can be defined as follows. Given a network includes M depots, N customers and K kinds of trucks in each depot with unlimited numbers, as well as subjected to vehicle capacity and maximum routing distance, HMDVRP aims to decide a set of routs that contributes the minimum sum of vehicle cost and traveling distance.

In this research, we develop a Threshold Accepting (TA) meta-heuristic, originally proposed by Dueck and Scheuer (1993), named as TA_HMDVRP, to solve the HMDVRP. TA_HMDVRP is based on the combination of Threshold Accepting (TA) and traditional Neighborhood Search heuristics. There are three modules: initial solution construction (ISC), local search (LS), and threshold accepting (TA) in the TA_HMDVRP framework. In ISC module, a two-stage approach that first assigns customers to the nearest depot and then utilizes the Farthest-start Nearest Neighbor (FNN) method to arrange routes of each depot.

Moreover, two kinds of vehicle, the biggest truck and the smallest truck, are optionally selected to construct routes while executing FNN. Five exchange heuristics: 2-opt, Or-opt, Node Insert (Inter-route and Inter-depot), Node Exchange (Inter-route and Inter-depot), and Vehicle Exchange, are proposed in LS Module.

Finally, both the geometric and the arithmetic descent threshold series are adopted in the TA module.

Due to the lack of HMDVRP instances, we transfer the MDVRP benchmark instances to a bank of twenty-five HMDVRP test instances, which is used to identify the performance of TA_HMDVRP. In the first experiment of testing ISC module, FNN with the biggest truck performs well than FNN with the smallest truck. In the second experiment, the average result after executing LS and TA modules to improve the initial solution is significantly good. The results of numerical experiments imply that Threshold Accepting meta-heuristic can be a potential procedure to solve the complicate HMDVRP.

keywords: Heterogeneous Multi-depot Vehicle Routing Problem (HMDVRP), Threshold Accepting (TA), Meta-Heuristic.

(7)

誌 謝

隨著鳳陽花開的季節來臨,象徵著兩年的研究所生涯即將畫下句點。在本 人求學期間,最要感謝的是恩師 卓裕仁博士,從大學時代跟著老師做專題到 研究所論文的完成,不論是課業或待人處事上,給予暢湘殷切的指導與諄諄教 誨,使我獲益良多。倘若沒有老師這般不厭其煩的叮嚀及指導,我便無法一步 步地將這篇論文順利完成,在此謹呈上最誠摯的謝意。

此外,論文口試期間承蒙中華大學 張靖教授、開南大學 黃銘崇教授,

百忙之中撥冗悉心審閱論文,並提供諸多寶貴意見與指正,使本論文更臻充實 完善,方能匡正研究上的疏失,使本文得以更加完備,謹此表達深忱的感激。

在研究求學期間,感謝研究所同窗們的幫忙與協助。感謝佑旌、耘翠、雅 雯同門的互相幫忙,也感謝詩淳、惠筑、文基同研究室的好夥伴們,當然不能 忘記樓下的益豪、人敬、智浩、眉君、勝弦、佳鴻、任由、宗樺、文菊、浩宗、

振越等人在研究期間所給予的支持與鼓勵。還有許多其他的學長、學姊、學弟、

學妹族繁不及備載,最後要感謝我的女朋友佩鈺,因為有你們,讓暢湘的研究 所生活多采多姿!

最後感謝我的家人,在我的求學路上一路支持我,謝謝父母的養育之恩及 經濟上的支援,因為有你們的陪伴與支持,讓我能心無旁鶩專心於論文的研究 與撰寫,於此表達無限的感謝!

謹以此篇論文獻給曾經幫助過我的師長及親朋好友!

王暢湘 謹識於中華運管所 中華民國 95 年 7 月

(8)

目 錄

摘 要...i

Abstract ...ii

誌 謝... iii

目 錄...iv

圖目錄...vi

表目錄...vii

第一章 緒論...1

1.1 研究動機與目的... 1

1.2 研究範圍與內容... 1

1.3 研究步驟與流程... 2

第二章 文獻回顧...5

2.1 多場站車輛路線問題(MDVRP)... 5

2.1.1 MDVRP 的定義 ... 5

2.1.2 MDVRP 之文獻回顧 ... 6

2.2 多車種車輛路線問題(HVRP) ... 9

2.2.1 HVRP 問題定義 ... 9

2.2.2 HVRP 之文獻回顧 ... 10

2.3 多車種多場站車輛路線問題(HMDVRP) ... 12

2.3.1 HMDVRP 之文獻回顧... 12

2.4 車輛路線啟發式演算法探討... 13

2.4.1 傳統啟發式演算法... 13

2.4.2 門檻接受演算法... 15

第三章 TA_HMDVRP 之求解方法架構與模組設計 ...18

3.1 求解方法架構... 18

3.2 起始解構建模組設計... 19

3.3 鄰域搜尋模組設計... 20

3.4 門檻接受模組設計... 23

3.4.1 TA 架構設計... 23

3.4.2 TA 控制參數... 23

第四章 例題測試與結果分析...25

4.1 例題產生與實驗設計... 25

4.1.1 例題產生... 25

4.1.2 實驗設計... 26

4.2 測試結果分析... 26

4.2.1 實驗一:起始解測試比較... 26

4.2.2 實驗二:鄰域搜尋模組之求解績效測試... 27

4.2.3 實驗三:門檻接受模組之求解績效測試... 30

(9)

第五章 結論與建議...33

5.1 結論... 33

5.2 建議... 33

參考文獻...35

附錄 A 門檻接受模組求解詳細表...37

附錄 B 部份測試例題路線圖 ...43

附錄 C HMDVRP 之數學模式 ...46

(10)

圖目錄

圖 1.1 研究流程圖... 3

圖 2.1 TA 與 SA 接受法則差異比較圖... 16

圖 3.1 TA_HMDVRP 之求解方法架構圖... 18

圖 3.2 最遠鄰近點法示意圖... 19

圖 3.3 2-opt 交換法示意圖 ... 20

圖 3.4 Or-opt(p=1,2,3)交換法示意圖 ... 21

圖 3.5 1-0 節點交換法示意圖 ... 22

圖 3.6 1-1 節點交換法示意圖 ... 22

圖 3.7 TA 執行架構圖... 23

(11)

表目錄

表 1.1 HMDVRP 與 VRP 之問題特性比較... 2

表 2.1 MDVRP 相關文獻比較表 ... 8

表 2.2 各種擾動改善程序之功能與意義... 11

表 2.3 多車種車輛路線問題相關文獻彙整表... 12

表 2.4 常見的傳統啟發式解法整理表... 14

表 2.5 TA 之控制參數... 16

表 3.1 等比遞減參數設定表... 24

表 3.2 等差遞減參數設定表... 24

表 4.1 測試例題基本設定... 25

表 4.2 起始解測試比較表... 27

表 4.3 鄰域搜尋模組績效測試表... 28

表 4.4 鄰域搜尋模組與起始解構建模組之績效比較表... 29

表 4.5 等比門檻接受模組求解績效表(平均值) ... 30

表 4.6 等差門檻接受模組求解績效表(平均值) ... 31

表 4.7 等比門檻接受模組與鄰域搜尋模組求解績效比較表... 31

表 4.8 等差門檻接受模組與鄰域搜尋模組求解績效比較表... 31

表 4.9 等比門檻接受模組執行回合數(K)表 ... 32

(12)

第一章 緒論

1.1 研究動機與目的

隨著全球經濟持續地不景氣,已經正式宣告進入「微利時代」。由於目前整 體市場規模幾乎達到飽和,在此情形下想要有可觀幅度的向上成長是相當困難 的事,或許企業可用降價來進行促銷而使得銷售量上升,但整體總產值可能只 有極微幅的成長,甚至零成長。當企業無法再從產品銷售方面獲得更多利潤時,

降低營運成本已成為不可避免的課題,在眾多成本中物流成本具有相當大的改 善空間,而又以運輸成本佔物流成本的比例最大;以美國為例,2002 年美國物 流管理協會年會論文集中提到,全美企業平均總物流成本佔其營收比例約為百 分之八,可知比例十分之大,而物流成本中,運輸部份約佔百分之四十二,可 以清楚發現運輸配送系統對於物流系統的重要程度。企業若能有效地增加其運 輸配送效率,使物流成本下降,便可使企業更具有競爭力。

各行各業都致力於降低物流成本,其中貨物運輸業對於其物流運輸配送改 善的需求更為迫切,而大多數都為多場站且車隊規模都過於龐大,造成營運成 本的增加。在現實生活中的應用課題可能為某一地區中有幾個物流配送中心及 數個顧客服務點,而物流配送中心內有數種形式的服務顧客點車輛,以考慮單 一場站、單一車種、固定容量的車隊與從單一場站出發的傳統車輛路線問題 (Vehicle Routing Problem, VRP) 或加入多場站考量的多場站車輛路線問題 (Multi-Depot Vehicle Routing Problem, MDVRP)進行求解仍有其不足之處,故針 對多車種多場站車輛路線規劃排程有其探討的必要性。

因此本研究將對多車種多場站車輛路線問題(Heterogeneous Multi-Depot Vehicle Routing Problem, HMDVRP)進行探討,以其找出數學模式、最適多車種 車隊規劃及行駛路線。由於 HMDVRP 為 NP-hard 問題,不易求出問題之最佳 解;且隨著顧客點增加,路線的組合數也增加,求解時間也以指數成長,進一 步造成問題求解的難度提高,換言之,若顧客點數增加越多則求解時間越耗時;

為同時兼顧求解品質與求解速度,啟發式方法(Heuristics)以及巨集啟發式演算 法(Meta-Heuristics)為目前文獻中最常見之求解方法,因此本研究將針對巨集啟 發式演算法發展一套求解績效良好且時間合理的演算法,以期提高 HMDVRP 的求解績效。

1.2 研究範圍與內容

本研究的範圍以多車種多場站車輛路線問題為主,與一般傳統 VRP 差異為 HMDVRP 不僅將多場站納入考慮且由於調度靈活性的考量多車種的特性也應 運而生,如表 1.1 所示,上述這 2 個特性使 HMDVRP 更為貼近實務,但也因 此使得問題求解的複雜度提高,例如多場站顧客點的分配及多車種車輛的指派 選擇。

(13)

表 1.1 HMDVRP 與 VRP 之問題特性比較

問題特性 HMDVRP VRP

設施資源 多場站、多車種、車輛容量限 制、最大距離/時間限制

單場站、單一車種、車輛容量 限制、最大距離/時間限制 顧客需求 固定需求且已知、不可分割 固定需求且已知、不可分割 節點服務 流量守恆、僅考慮送貨/收貨、

避免子迴路

流量守恆、僅考慮送貨/收貨、

避免子迴路 網路結構 無方向性、滿足歐氏

(Euclidian)三角不等式

無方向性、滿足歐氏

(Euclidian)三角不等式 最佳化目

車輛使用總成本最小 路線成本總和最小

路線成本總和最小

資料來源:【2】及本研究整理 多車種多場站車輛路線問題屬於 NP-hard 的問題,實際上多以啟發式演算 法進行求解此類高複雜度的組合最佳化問題(Combinatorial Problem);而近年 來,受到人工智慧思潮的影響,許多所謂「巨集啟發式演算法」(Meta-heuristics) 因應而生,例如:門檻接受法(Threshold Accepting )、禁制搜尋法(Tabu Search)、

蟻群最佳化演算法(Ant Colony Optimization)等,大大地改善了啟發式演算法的 求解績效。

因此本研究將針對多車種多場站特性進行探討,以了解其問題特性,再根 據現有的多場站車輛路線與多車種車輛路線問題模式,提出本研究之 HMDVRP 模式,及發展一套適合之巨集啟發式演算法,並修改例題使之符合本研究所需,

藉由實驗設計與例題測試以評估所提出演算法績效。

1.3 研究步驟與流程

本研究的主要目的為針對 HMDVRP 問題發展一套巨集啟發式解法,並透 過 C#程式語言的撰寫來執行演算法的求解,最後並利用國際標竿題庫來進行測 試並分析各種方法之解題績效。

本論文的研究流程如圖 1.1 所示,其各執行步驟簡要說明如下:

(14)

圖 1.1 研究流程圖 一、多車種多場站車輛路線問題之問題界定

本研究將針對 HMDVRP 來進行探討,並界定此問題之各項型態。

二、文獻蒐集與回顧

蒐集 MDVRP、HVRP 與 HMDVRP 問題之相關啟發式演算法的文獻,

以了解目前 HMDVRP 解法的概念、技巧與應用,並將文獻中所使用之研 究方法作為本研究參考之重點,藉此協助本研究之啟發式解法的開發。

三、測試例題蒐集與建立

由於多車種多場站車輛路線問題並無標竿測試例題,故本研究選取國 際 標 竿 (Benchmark) 測 試 例 題 題 庫 【 20 】 (http://www.hec.ca/chairedistributique/data/)中 MDVRP 之例題,並利用 Salhi 等人【19】其數學模式轉成 HMDVRPTW 例題,以此為基礎設計多車種多 場站車輛路線問題的測試例題。

四、巨集啟發式演算法設計

結合「先分群再排程」的起始解產生方式與「門檻接受法」的巨集啟 發式演算法,應用於求解多車種多場站車輛路線問題。

五、電腦程式撰寫

多車種多車輛路線問題之問題界定

文獻蒐集與回顧

實驗設計與參數設定 巨集啟發式演算法設計

碩士論文撰寫 電腦程式撰寫

例題測試與績效結果分析

測試例題蒐集與建立

(15)

利用 C# 撰寫程式所設計的巨集啟發式演算法。

六、實驗設計與參數設定

進行績效測試之實驗設計,設定執行方式與控制參數的範圍。

七、例題測試與績效結果分析

以自行設計之例題進行解題績效測試,評估其解題績效,並將所得出 之結果加以整理並分析。

(16)

第二章 文獻回顧

本章針對多場站車輛路線問題與多車種車輛路線問題的相關文獻進行回 顧,並探討車輛路線問題啟發式演算法探討以供求解演算法的設計參考。

2.1 多場站車輛路線問題(MDVRP)

2.1.1 MDVRP 的定義

MDVRP 為 VRP 的延伸問題,考慮多個場站,場站及顧客位置已知。每個 場站均有多輛車且無容量限制,場站車輛數無限制,每台車輛有容量限制,並 且為單一車種,當車輛出發服務各顧客點時不違反最大距離(或時間)以及其車 容量限制,每輛車行駛一條路線且僅指派一次,遵守流量守恆,最後車輛回到 出發之場站。每個被服務的顧客點均有已知且固定之需求,並且不可分割(一顧 客點由一台車輛服務)。路網結構無方向性,並滿足歐基里德(Euclidian)三角 不等式。

有許多文獻皆提出 MDVRP 之數學規劃模式,本研究主要引用 Bodin 等人

【14】所定義的 MDVRP 模式如下:

∑ ∑ ∑

= = = n i

n j

NV v

v ij ij

x c Minimize:

1 1 1

(2.1) subject to

(

j m ,...,n

)

x

n

i NV

v v

ij 1 1

1 1

+

=

∑∑

=

= = (2.2)

(

i m ,...,n

)

x

n

j NV

v v

ij 1 1

1 1

+

=

∑∑

=

= = (2.3)

(

v ,...,NV; p m ,...,n

)

x x

n

j v pj n

i v

ip 0 1 1

1 1

+

=

=

=

= = (2.4)

(

v ,...,NV

)

K x

d v

n

i

n

j v ij

i 1

1 1

=

⎟⎟≤

⎜⎜ ⎞

∑ ∑

= = (2.5)

(

v ,...,NV

)

T x t x

t ijv v

n

i n

j ij n

j v ij n

i

i 1

1 1

1 1

=

+

∑∑

= = = = (2.6)

(

v ,... NV

)

x

m

i n

m j

v

ij 1 1 ,

1 1

=

∑ ∑

= = + (2.7)

(

v ,... NV

)

x

m

p n

m i

v

ip 1 1 ,

1 1

=

∑ ∑

= = + (2.8)

(17)

) v

; n j i n

x n y

yij + ⋅ ijv ≤ −1 (m+1≤ ≠ ≤

(2.9) 0

1 or

0 ≥

= ij

v

ij ,y

x (2.10)

式中,相關參數與變數說明於下:

N:節點集合,共有 n 個節點,其中 1~m 為場站,m+1~n 為顧客。

m:場站數。

NV:車輛數。

Kv:車輛 v 的容量。

Tv:車輛 v 的最長路線時間。

di:顧客 i 的需求量。

ti:服務顧客節點 i 時所需的時間。

tij:在節線(i, j)的行駛時間。

cij:車輛從節點 i 至節點 j 之運輸成本。

⎩⎨

=⎧

否則

行駛至節點 由節點

車輛 , 0

j i

v ,

v 1 xij

yi:每個迴路中顧客節點 i 被服務之順序編號。

其中式(2.1)為目標式,目的在使總運輸成本最小化;式(2.2)與式(2.3)限制 除場站外每個節點只能由一輛車服務一次;式(2.4)限制除場站外,服務及離開 此節點的車輛必須為同一輛;式(2.5)為車容量限制,車輛所服務的節點需求量 不能超過車容量;式(2.6)為車輛服務時間限制,車輛的服務時間與行駛時間總 合不得超過時間限制;式(2.7)與式(2.8)表示每部車輛只能被使用一次;式(2.9) 為破除子迴路(Subtour breaking)限制式;式(2.10)為雙元整數變數限制式及非負 限制式。

2.1.2 MDVRP 之文獻回顧

Sumichrast 等人【17】主要是利用下限法來放鬆整數變數限制,使求解過 程較為容易。此篇文獻中多場站排程問題是指有 τ 輛卡車的車隊從 σ 個供給 點運送 ρ 種未加工原料至 π 個工廠(場站)。重點為將一完整車輛路線分拆三 種不同節線所組成,其三種節線為 1.從工廠(包含場站)到供給點,可拆為 2 種、

2.從供給點到工廠及 3.從工廠返回場站,建構起始路線部份則利用啟發式節省 法產生初始路線並利用路線內與路線間交換法進行改善,在成本建算方面為三 種節線各自分開計算,最後再加總以求得路線總成本。經由 4 種類型共 90 題例 題的計算過後,啟發式演算法的計算時間均低於 1 秒,而下限法僅在類型 1 計 算時間低於 1 秒(0.8 秒),其餘在 15.6-67.8 秒。在問題規模為小、中時兩者間解 優劣的差距為 5%,在問題規模為大時則增加到 8%;這是由於求解績效與類型 4 問題僅有 20%有可行整數解。

Renaud 等人【13】提出以 Tabu search 求解 MDVRP 之研究。進行起始解 建構後其將求解架構分成三大步驟,分別為快速改善步驟(Fast improvement)、

(18)

強化步驟(Intensification)、多樣化步驟(Diversification)。在快速改善步驟中的鄰 域搜尋又分為場站間、場站內、以及三條路線交換等三階段。在快速改善步驟 (Fast improvement)完成階段性的搜尋之後就會對現有解作更新,以達到快速之 目的,不同於一般 Tabu search 在對現有解的鄰域做完搜尋後才對現有解進行更 新的動作。而強化步驟(Intensification)、多樣化步驟(Diversification)在測試之後 發現其效果有限,且花費之時間大於快速改善步驟(Fast improvement),若顧及 解題時間下,可忽略後兩步驟。

Giosa 等人【11】主要是使用「先分群再排程」的方法,針對多場站車輛 路線問題探討不同指派演算法。其焦點放在顧客的指派的部分,依分群概念分 成三大類,第一類為急迫指派(Assignment through urgencies),當中有三種不同 分群準則:平行指派(Parallel assignment)、簡易指派(Simplified assignment)、掃 描指派(Sweep assignment);第二類為循序指派(Cyclic assignment);第三類則為 分群指派(Assignment by cluster),共分為係數繁衍(Coefficient propagation)、三 準則分群(Three criteria clustering)兩種方式。最後並使用 Arcview3.0 GIS 平台來 建構並顯示,最後測試其解題效果。在探討多場站車輛路線問題時,其先求得 各場站所需要服務的點(即指派問題,將顧客指派給場站或是場站指派給顧 客),之後再利用啟發式節省法建構起始路線並利用 2-opt 演算法來改善解的品 質。以平行指派為基準與其他 5 種演算法進行例題測試比較,發現循序指派的 求解績效較其他 5 種演算法差,計算時間則以 3 準則指派法耗費最久時間,但 其結果為最佳。總合來看,群集指派法效果最好,急迫指派法次之,最差者為 循序指派法。在問題規模小時(顧客少於 100 點)所花之時間各法皆差不多(<1 秒)。

高崇明【2】利用門檻接受法對多場站車輛路線問題進行求解,所提出的 TA_MDVRP 可分成四個模組:起始解構建模組(ISC Modules)、可行解調整模 組(FS Modules)、鄰域搜尋模組設計(NS Modules)、門檻接受模組(TA Modules)。

其中起始解建構方式主要分為兩種,一為單階段起始解法,直接建構路線,建 構方式又分為平行與循序;另一為兩階段起始解法,先進行分群,後建構路線。

單 階 段 及 兩 階 段 兩 者 皆 設 計 有 的 八 種 不 同 的 建 構 準 則 , 並 針 對 配 送 時 限 (Duration)的限制設計可行解調整模組,配合鄰域搜尋模組、門檻接受模組來求 解 21 題標竿例題。測試結果以兩階段起始解法穩定性及準確姓略優於單階段起 始解法,單階段平行法在起始門檻值(T0)>0.5 時有超越兩階段起始解法的趨 勢。21 題標竿例題當中,平均誤差達 0.57%,並有四題突破目前文獻最佳解之 結果。MDVRP 相關文獻之求解方法之比較整理,如表 2.1 所示。

Polacek 等人【16】的目標為提出一個變動鄰域搜尋(VNS)的演算法,且用 於求解具 有時間窗的多場站車輛途程問題(MDVRPTW)。主要有 2 個貢獻:首 先就理論上的觀點而言,此為第一篇將 VNS 應用於 MDVRPTW 且有討論數個 VNS 的假設;再來是就問題目的的觀點而言,計算結果顯示此方法在解的品質 和計算時間方面與現有的禁制搜尋法(TS)有競爭性,且 VNS 有良好的求解績效

(19)

於計算時間,尤其是在大型例題中。

變動鄰域搜尋是由 Mladenovi´c 跟 Hansen 於 1997 年應用於求解組合最佳 化問題。以下是基本 VNS 的步驟,

初始化:選擇鄰域的集合NK

(

K =1,...,Kmax

)

,此集合在搜尋中會用到,找 出起始解x並選定停止規則,重複下列步驟直至達到停止規則:

1. 將K設為1

2. 重複下列步驟直至K = Kmax

a. 鄰域變更,隨機從x的第k個鄰域中產生一個x′

b. 區域搜尋,將x′設為初始解並應用區域搜尋;當達到區域最佳解時 將其標誌為x ′′

c. 移動與否,如果區域最佳解x ′′比之前解好則將x替換為x ′′,並持續 這個N1鄰域搜尋;否則將集合K更新為K+1

Lim 等人【6】認為在過去文獻中大多有一個重要卻又不合理的假設:各場 站車輛數不限制,因此提出多場站固定車輛配送途程問題(multi-depot vehicle routing problem with fixed distribution of vehicles, MDVRPFD),重點在對各場站 車輛數進行限制,主要目的為求解車輛總旅行距離最短。利用兩階段方法(先分 群後排程)及單階段方法求解。兩階段方法在小型例題上有良好的求解績效,但 隨著顧客數及場站數增加則求解績效隨著變差,在大型例題上更為顯著,這是 由於兩階段方法中更多的錯誤指派導致更多的品質差的路徑。此研究所提出的 單階段方法,在 7 題小型例題中有 2 題超越以知最佳解,6 題中型例題中有 2 題超越,9 題大型例題則全部超越,在小、中型例題中未超越的也相差不多。

表 2.1 MDVRP 相關文獻比較表

年代 作者 使用方法

1972 Wren and Holliday (W-H) 節省法 1972 Cassidy and Bennett 與(W-H)相似 1972 Tillman and Cain (T-C) 節省法(距離模式修改) 1976 Gillett and Johnson 先分群再於各場站掃描 1977 Golden, Magnanti and Nguyen 邊界顧客與修改節省法 1983 Ball, Golden, Assad and Bodin 節省法概念與

先排程後分群方法

1987 Perl 與(T-C)類似,修改距離

模式與節省值 1988 Laporte, Nobert Taillefer 混合整數線性模式與線

性鬆弛

1992 Klot, Gal and Harpaz 結合現性規劃與啟發式 演算法

1992 Min, Current and Schilling 精確解法結合啟發式演 算法

(20)

表 2.1 MDVRP 相關文獻比較表(續)

年代 作者 使用方法

1993 Chao, Golden and Wasil 複 合 啟 發 式 解 法 ( 利 用 不可行性)

1995 Sumichrast and Markham 下限法與節省法 1996 Renaud, Laporte and Boctor 禁制搜尋法 2002 Giosa, Tansini and Viera 先分群再排程與節省法 2004 Michael Polacek, Richard F. Hartl

and Karl Doerner 變動鄰域搜尋

2005 高崇明 門檻接受法

2005 Andrew Lim and Fan Wang 兩階段及單階段方法 資料來源:【19】及本研究整理

2.2 多車種車輛路線問題(HVRP)

2.2.1 HVRP 問題定義

與 MDVRP 同為 VRP 的延伸問題,僅考量單一場站,顧客集合的位置與需 求為已知。場站有多輛車且無容量限制,車輛種類數目為已知,每台車輛有容 量限制,可為多車種,每種車的車輛數無限制,當車輛出發服務各顧客點時不 違反最大距離(或時間)以及其車容量限制,每輛車行駛一條路線且僅指派一 次,遵守流量守恆,最後車輛回到出發之場站。每個被服務的顧客點均有已知 且固定之需求,並且不可分割(一顧客點由一台車輛服務)。路網結構無方向性,

並滿足歐基里德(Euclidian)三角不等式。

有許多文獻皆提出 HVRP 之數學規劃模式,本研究主要引用 Golden 等人

【8】所定義的 HVRP 模式如下:

Minimze

∑∑ ∑∑∑

= = =

= =

+

T

k N

i N

j

k ij ij T

k N

j

k oj

k X C X

C

1 0 0

1 1

. (2.10)

to

subject X j N

T

k N

i k

ij = ∀ ∈

∑∑

= =

1

0 0

(2.11) T

k N j X

X

N

i

N

j k hj k

ih − = ∀ ∈ ∀ ∈

∑ ∑

= =

0

0 0

(2.12)

0 =0

r (2.13)

(

q Q

)

X Q i N j N

r r

K

k

k ijk k

j i

j − ≥ + ⋅

− ∀ ∈ + ∀ ∈

=

, 0

1

(2.14) N

j X Q r

T

k N

i

k ij k

j

∑∑

⋅ ∀ ∈

=1 =0

(2.15)

{ }

i j N k T

Xijk∈ 0,1∀, ∈ ,∀ ∈ (2.16) 式中,相關參數與變數說明於下:

(21)

k

XijXijk=1,表示車種 k 行經節線(i,j),否則Xijk=0 r i 節點 i 的流量變數,用以避免子迴路的產生

N 所有顧客節點的集合,N =

{

1,2,...,N,

}

,N 為顧客總數;節點 0 為場

T 車種的集合,T =

{

1,2,...,T,

}

,表示共有 T 種車可用,T 為車種總數 C ij 節線(i,j)的行駛成本(或距離)

C 車種 k 的車輛使用成本,k C1<C2 <...<CT qj 顧客 j 之需求量

Qk 車種 k 的負載容量,k =1,...,TQ1 <Q2 <...<QT

其中式(2.10)為目標函數;式(2.11)限制每個顧客點只能被一輛車服務一 次;式(2.12)限制各節點的流量守恆,保證進出該點為同一輛車;式(2.13)至式 (2.15)為避免子迴路(Sub-tour Breaking)限制式,其中式(2.15)亦保證車輛 不會超載;式(2.16)為雙元整數限制式。

2.2.2 HVRP 之文獻回顧

Renaud 等人【12】利用掃描演算法求解多車種車輛路線問題,文中有 2 個 前提:已知車輛型式中車輛的混合選擇及所選車隊的排程,其車輛路線集合為 由 1 至 2 台車輛服務的路線所構成。此文章所使用之演算法共含下列 5 項子步 驟:排序(Order),單瓣路線構建(1-Petal),雙瓣路線購建 (2-Petals),花瓣選擇 (Petals Selection)與改善(Improve)。使用掃描法產生初始解,後利用路線內與路 線間交換法進行改善。與 20 題標竿測試例題(Golden et al. 1984)進行比較,得 知標準模式與最佳已知解的誤差為 0.49%,平均計算時間為 179 秒。一共產生 7 個最佳已知解,其中更新 3 個為新最佳已知解。在簡易模式方面與最佳已知 解的誤差為 0.63%,平均計算時間為 154 秒。

Filip Ghetsens & Bruce Golden【9】針對多車種車輛路線問題,將其定義為 FSCVRP(The fleet size and composition vehicle routing problem)問題。作者結合 下限法(lower bound procedure)提出一個新的兩階段啟發式(two-stage heuristic) 的方法求解,將距離場站較遠的點優先指派給容量較大的車輛,但此方法只適 用在規模較小的問題。本研究目的為求固定成本(添置車輛所增加的成本)與路 線成本最小,並利用例題做測試,結果較優近 1%。

Salhi 等人【18】將多車種車輛路線問題定義為 VFMVRC,即 Vehicle Fleet Mix Vehicle Routing Composition Problem 。 其 提 出 的 擾 動 法 (Perturbation Procedures)可算是一種兩階段之鄰域搜尋法;該法先任選單一車種產生 VRP 路 線,再以配對法將 VRP 路線修正為可行的起始解,然後藉由七種複雜的擾動模

(22)

組進行車種間與路線間之交換改善,SRP 共有七個擾動改善程序:Reduction、

Reallocation、Combining、Sharing、Swapping、Relax/Combine 及 Relax/Share,

其功能與意義如下表所示。

表 2.2 各種擾動改善程序之功能與意義

擾動改善程序 功能與意義

Reduction 將某條路線上的顧客全部打散,然後分別插入到其他路線內 Reallocation 將某條路線上的部份顧客插入到其他路線內

Combining 將兩條路線合併成一條路線

Sharing 將某條路線拆成幾條使用較小車輛的路線 Swapping 交換兩條路線上的部份顧客

Relax/Combine 合併兩條路線後,再將新路線上的部份顧客插入到其他路線內 Relax/Share 拆散某條路線後,再將新路線上的部份顧客插入到其他路線內 資料來源:【18】

張祖明【4】將多車種車輛路線問題定義為 FSMVRP,即 Fleet Size and Mixed Vehicle Routing Problem。其使用 Bruce Gloden 的(MGT+OrOPT)與 Salhi & Rand 的擾動法做結合,發展出創新的啟發式解法:MGORSR 與 MGSROR 兩種。主 要分為三階段求解,第一階段均以 MGT(巨網切割法)求解起始解,第二與第三 階段則分別採用不同之先後順序執行改良後的 OrOPT 交換法與修正後的 Salhi

& Rand 擾動法。並與文獻上的測試題庫做比較,此兩種新啟發式方法,分別得 到與現有最佳解之平均誤差為 1.04%與 0.73%。

殷得成【3】利用禁制搜尋法(Tabu Search)求解多車種車輛路線問題,在路 線構建階段是以實際機會節省法加上路線形狀參數 λ 做為求取起始解的方 式,在路線改善階段則以禁制搜尋法為求解架構,並利用(1,0)與(1,1)交換法進 行改善。此演算法所求得的解中,有 5 題優於目前最佳解,2 題與目前最佳解 相同,但這 7 題皆為節點數小於 30 的題目,對於節點數大於 50 的題目所得之 結果則略差。此外作者提出在路線構建階段所求得之起始解對於最後的結果有 相當大之影響,需多加注意。

卓 裕 仁 【 1 】 提 出 「 包 容 性 深 廣 度 搜 尋 ( Generic Intensification and Diversification Search, GIDS)」的巨集演算法以應用在求解 HVRP 問題,其中多 起始解構建(MIC)包含「加權起始(Weighted Initialization, WI)」與「鄰域搜 尋(Neighborhood Search, NS)」兩個模組,深度包容搜尋(GSI)設計了 G1 與 G2 兩個包容搜尋(Generic Search)模組,廣度擾動搜尋(PSD)則僅有「成本 擾動(Cost Perturbation, CP)」模組。

(23)

表 2.3 多車種車輛路線問題相關文獻彙整表

年代 作者 使用方法

1986 Filip Ghetsens & Bruce Golden【19】 下限法 兩階段啟發式 1993 Salhi & Rand 擾動法

1994 張祖明 (MGT+OrOPT)(Bruce Gloden) 擾動法(Salhi & Rand)

1998 殷得成 節省法與禁制搜尋法

2001 卓裕仁 GIDS

2002 Renaud & Boctor 掃描法

資料來源:本研究整理

2.3 多車種多場站車輛路線問題(HMDVRP)

2.3.1 HMDVRP 之文獻回顧

Salhi 等人【19】提出一個多場站多車種的車輛路線問題(multi-depot vehicle fleet mix, MDVFM),考量多車種及不同車輛單位成本的情形,目的為同時構建 一組車輛路線且在最小總成本的情況下決定量的組合,作者利用結合區域搜尋 與複合啟發式演算法的多層級複合啟發式搜尋的架構,提出 p-level 複合啟發式 演算法反覆產生起始解及改善,並配合 Multi-RPERT(多重路線擾動)理論進行 求解,再求解成本時將機會成本選擇/插入法則與最小插入成本納入計算。與標 竿例題(共 26 題:顧客數目為 50 至 360,2~9 個場站,5 種不同的車容量)進行 測試比較,結果雖然較標竿例題為差(1%)但僅需花費 5%~10%的計算時間便可 求解出來,且 26 個測試結果中找出 7 個新的最佳解。此外,為了縮短計算時間,

在改善的模組中加入縮減測試(reduction test),可分為兩種,一種為在各場站內 另一種為在各場站間。

由於 HMDVRP 並無國際標竿例題可測試,因此 Salhi 等人【19】利用一數 學式子對車容量進行修改,將 MDVRO 例題中單一車種取代為多車種,數學式 如下列式子所示:

+

= k Q

CAPk (0.4 0.2 )

(2.17) k

VCk =0.7+0.1

(2.18) 5

, 4 , 3 , 2 , 1 10

70+ =

= k k

VFk

(2.19) 其中:CAP=期望容量

VC=運行成本 VF =固定成本

(24)

如此便可產生 5 種不同車容量之車種,假設有 5 種車輛 A、B、C、D、E,

初始容量 Q=100,車輛 C 為編號 k=3 時則表示期望容量為 100,運行成本=1,

固定成本=100,其餘以此類推。依照此換算方式將 MDVRP 之例題轉變為 HMDVRP 之例題以進行測試。

2.4 車輛路線啟發式演算法探討

發展時間約自 80 年代開始,由於電腦計算能力在近年來突飛猛進,致使車 輛路線問題求解方法朝向更有效率的解題工具前進。本階段的研究主要是在於 人工智慧型啟發式解法的發展,一方面是借重專家系統(expert system)的建 立,輔助不同問題個案建議最適合之求解方法,另一方面則是改變傳統局部搜 尋方法,建立智慧型的搜尋法(generic search method)等,著名的方法有:禁 制搜尋法(tabu search)、模擬鍛鍊法(simulated annealing)、門檻接受法(threshold accepting)、基因演算法(Genetic algorithm)及螞蟻演算法(Ant Clony Optimization) 等。

2.4.1 傳統啟發式演算法

Bodin 等人【11】將眾多車輛路線問題分類如下:

一、先分群再排程(cluster first-route second)

二、先排程再分群(route first-cluster second)

三、節省、插入(savings、insertion)

四、交換改善(improvement exchange)

五、數學規劃基礎(mathematical-programming based)

六、人機互動(interactive optimization)

七、最佳解方法(exact procedure)。

前六種可以歸屬於啟發式解法,在可接受時間內可以求得不錯的近似解,

啟發式解法在實務應用上具有相當之優勢。

一般所謂的「傳統啟發式解法」,在分類上屬於第一代啟發式解法,運用建 構起始解並進行改善等原則,設計出簡單易執行的啟發式解法,優點為運算架 構簡單,缺點為求解精確度不高且易陷入局部最佳的狀況。相關解法整理如表 2.4。

(25)

表 2.4 常見的傳統啟發式解法整理表

用途 啟發式解法 概述

鄰近點法

鄰近點法由場站出發,尋找最近未被服務之顧客加 入路線,成為路線內第一點。之後即從所在之顧客 點出發,尋找最近且未被服務之顧客點。依序將走 訪過之顧客點加入路線直到車輛容量已滿或是達 成其他限制因素而返回場站。依上述規則建構路線 直到所有顧客被服務為止。

先分群 在排程

首先將有的節點分成數個群組,之後再針對各個群 組設其最經濟之路線。

先排程 再分群

此方法首先將所有節點建立一個 TSP 路線(通常為 不可行解),再依限制條件分割成數個子路線(可行) 進行求解。

節省法

節省法對於實際情形的一些限制條件能夠輕易的 加入模式中因此在實務上最常被應用。假設每個顧 客皆有一條路線直接服務,然後藉由逐步合併路線 的方式來構建可行解;路線合併的依據在於合併後 所能產生之路線成本節省值,節省值愈大者將優先 考慮合併,但仍不得違反車輛之容量限制。依據節 省法運作之不同可分成循序節省法和平行節省法。

掃描法

屬於先分群再排程之方式,利用及座標來表示需求 點的區位,然後取任一需求點為起點,以其角度為 零度依順時鐘(或逆時鐘方向)以車輛容量為限制 條件進行服務區域之分割。在藉由 TSP 演算法進 行需求點排序。

建構起始解

插入法

插入法係從一條簡單的路線開始,逐步加入新的顧 客點以產生可行解;插入的準則在於插入顧客點後 所增加的路線成本愈小愈好,且須滿足車輛容量限 制。評估插入成本有許多不同的準則,例如:最近 插入(Nearest Insertion)、最遠插入(Farthest Insertion)、最省插入(Cheapest Insertion)、最快插 入(Quick Insertion)、任意插入(Random Insertion)

等。

(26)

表 2.4 常見的傳統啟發式解法整理表(續)

用途 啟發式解法 概述

K-opt 交換法

以任一起始解為現解,交換同路線中 k 條不相鄰 節線之銜接方式以產生可行的鄰解(鄰域搜 尋),若其中存在有優於現解之鄰解,則移動至 該鄰解(新的現解),重複上述鄰域搜尋的動作,

直到所有鄰解皆無法優於現解為止。k-Opt 在每 次移動後,必須重新檢查現解之所有可行交換型 態,以確定是否有更佳的鄰解存在;k 值愈大,

可行的交換型態愈多,但其複雜度為 O(nk),因 此使用上以 k=2 或 3 最為普遍。

Or-opt 交換法

為一種簡化的 3-Opt 節線交換法,該方法在每次 執行鄰域搜尋的迴圈當中,係陸續將某二段節線

(p=3)、一段節線(p=2)及一個節點(p=1)自 路線中抽出,然後將其插入該路線的其他節線之 間,檢查插入後的結果是否能維持可行並獲得改 善,再決定接受改善效果最好的位置進行插入。

改善起始解

路線間節點交 換

當解的型態具有多條路線時(例如:VRP、

VRPTW 等),可應用路線間的節點交換法來進行 成本改善。對於任兩條路線相互交換其部分節 點,檢查交換後的結果是否能維持可行並獲得改 善,然後決定接受某種交換以獲得較佳的路線。

節點交換的形式很多,例如:1 點對 0 點、1 點 對 1 點、1 點對 2 點等等。

資料來源:【2】及本研究整理

2.4.2 門檻接受演算法

門檻接受法(Threshold Accepting Algorithm, TA)為德國學者 Dueck 及 Scheuer 在 1990 年所提出,其解題架構由模擬鍛鍊法(Simulated Annealing, SA)

改良而來,屬於門檻型演算法(Threshold Algorithm)的一種。相較於 SA 以隨機 性接受劣解的法則,TA 是以設立一個最低門檻接受值(確定性)作為接受較劣解 的判斷準則,雖然精確度較差,但由於不需要計算其接受機率,在交互次數多 時可節省計算之時間,因此執行速度可優於 SA,且其接受法則只要鄰解與現 解的差距在門檻值以下就接受,其執行方式更為簡單,圖 3.2 表示 SA 與 TA 接 受法則之差異。TA 已被應用於許多最佳化問題,如:工作排班問題(Job Scheduling Problem)、旅行推銷員問題(Travelling Salesman Problem, TSP),及 一般化資源限制之計畫排程問題等,且皆有不錯的績效。

(27)

TA SA

接受機率 1

0

門檻值(T) 暫劣解的差值

實線表示 TA 虛線表示 SA

0

圖 2.1 TA 與 SA 接受法則差異比較圖

韓復華等人【5】探討比較五種巨集啟發式解法:門檻接受法(Threshold Accepting, TA)、大洪水法(Great Deluge Algorithm, GDA)、紀錄更新法

(Record-to-Record Travel, RRT)、成本擾動法(Noising Method, NM),以及搜 尋空間平滑法(Search Space Smoothing, SSS),在其研究結果中顯示 TA 執行速 度快,且指出 TA 可做為 VRP 實務應用上的有效解題工具,亦及 TA 同時也具 有應用於其他類型的 VRP 問題的潛力。

TA 控制參數如表 2.5 所示。其中,控制參數係用以產生接受門檻之常數;

參數更新則說明接受門檻或參數之更新方式;停止法則規範演算法停止搜尋之 標準。

表 2.5 TA 之控制參數

方法 TA

控制參數 起始門檻比率(T0)、門檻數列長度(K)

參數更新 k → Tk+1

停止法則 完成 K 次迴圈

TA 法之控制參數包括:起始門檻比率(T0)及門檻值數列長度(K)。此 外,為避免 TA 發生無法收斂的情形,門檻值數列通常為遞減型態;圖 2.3 顯示 門檻數列遞減型態。

K Tk

k

(a) 直線遞減 (b) 梯形遞減 (c) 等比遞減

1 K

Tk

k

1 K

Tk

k 1

圖 2.2 三種門檻數列遞減型態

(28)

門檻數列長度是指在執行時門檻數列之中有多少門檻值,門檻數列長度與 起始門檻的設定和數列遞減形態的設定有關,數列長度的設定會影響計算時間 和求解之精確度。一般而言,起始門檻設定比率越高,也會設定較長等門檻數 列,使其計算時能逐漸降低成本。

(29)

第三章 TA_HMDVRP 之求解方法架構與模組設計

本章將針對多車種多場站車輛路線問題,建構巨集啟發式演算法求解測試 例題,使用最遠臨近點法構建起始解,接著利用路線內節線交換(Intra-route arc exchange)與路線間節點交換(Inter-route node exchange)來改善起始解,最後用門 檻接受法使之能跳脫區域最佳解。

3.1 求解方法架構

本研究以傳統鄰域搜尋方法結合門檻接受法(Threshold Accepting, TA),來 構建 HMDVRP 之巨集啟發式解法,並以將其命名為 TA_HMDVRP。之所以選 用 TA 作為求解方法,是由於 TA 在使用上採用確定性的接受法則,且有不須 記憶、穩定、執行方式簡單、速度快之優點,且 TA 有可接受劣解的機制,使 得在鄰域搜尋過程中能夠有機率跳脫出區域最佳解的可能,進而能找到全域最 佳解。

TA_HMDVRP 之求解方法架構如圖 3.1 所示。此求解方法架構可分為三個 求解方法,第一個是起始解構建方法(Initial Solution Construction Method, ISC Method),第二個是傳統鄰域搜尋法(Local Search Method, LS Method);第三個 則為門檻接受法(Threshold Accepting Method, TA Method)。

圖 3.1 TA_HMDVRP 之求解方法架構圖 門檻接受法

傳統鄰域搜尋法

結束 起始解構建法

停止法則 是

(30)

3.2 起始解構建模組設計

本研究在起始解構建模組設計方面,採用的是兩階段方法;也就是先分群 後排程(cluster-first/route-second)的方法,在分群方面使用的是最近場站指派,

排程部分則是使用最遠鄰近點法。

一、最近場站指派

先計算所有顧客點至各個場站的距離矩陣,然後將顧客指派給距其最 近的場站。完成指派後,各個場站及被指派給該場站的顧客點即成為一個 獨立的車輛路線問題(VRP),並個別以下列的最遠鄰近點法進行路線構建。

二、最遠鄰近點法

最遠鄰近點法先比較各顧客點到場站之距離,挑選與場站距離最大的 顧客點作為新路線的起始點,連接場站與該起始點,然後即從此點開始尋 找其最鄰近點;當路線累積的顧客需求量達到車輛容量限制時則返回場 站,再構建一條新的路線;否則,繼續尋找下一個鄰近點已構建路線。最 遠鄰近點法的概念如圖 3.2 所示。依上述步驟循序建構路線,直到所有顧 客皆已排入路線當中,停止。

圖 3.2 最遠鄰近點法示意圖

在構建起始解這部份會考量以最大車容量及最小車容量兩種方式產生 起始解,在接續的傳統鄰域搜尋法與門檻接受法會納入大車換小車、小車 換大車的多車種的交換。

兩階段建構路線解法,主要是因為將原本多場站題目簡化為各場站之 單純 VRP 問題,所以使用最遠鄰近點作考量,因其在建構路線時,會以較 宏觀的角度考量,對之後的鄰域搜尋有較大的幫助。

場站

顧客點 1 顧客點 2

顧客點 3

(31)

3.3 鄰域搜尋模組設計

在兩種起始解皆構建完成後,利用 2-opt、Or-opt、1-0、1-1 等鄰域搜尋交 換法,降低路線總成本與減少路線數,在 1-0、1-1 部分納入大車換小車、小車 換大車的多車種交換的考量,使車輛使用成本降低。

一、2-opt 交換法

2-opt 交換法的交換策略採用「首先改善」策略。圖 3.3 說明 2-opt 交 換法之解題概念。圖 3.3 (A)為一起始路線,將(1,3)和(2,4)兩條節線刪去,

重新連結(1,2)和(3,4),並將(3,2)反轉成(2,3),成為圖 3.3 (B)。2-opt 的概念 在於對任一路線依上圖方式交換路線上不相鄰的節線,然後檢查交換後的 解是否優於交換前的解。若優於之前的解則更新;若無,則維持原解。接 著繼續交換其他節線,直到可能交換的節線都檢查完畢為止,若一條路線 僅有一顧客點則不適用 2-opt 交換法,當路線有方向性時須維持其反轉後 之方向性與原來路線相同。

(A) (B)

1 2

4 3 0

1 2

4 3 0

圖 3.3 2-opt 交換法示意圖 二、Or-opt 交換法

該 方 法 在 每 次 執 行 鄰 域 搜 尋 的 迴 圈 當 中 , 係 陸 續 將 某 二 段 節 線

(p=3)、一段節線(p=2)及一個節點(p=1)自路線中抽出,然後將其插 入該路線的其他節線之間,如圖 3.4 所示,接著檢查交換後的解是否優於 交換前的解。若優於之前的解則更新;若無,則維持原解。接著繼續交換 其他節線,直到可能交換的節線都檢查完畢為止。Or-opt 交換法因在計算 時不須對任何節線作反轉,因此其提高了執行的效率,且也有可能將 2-opt 無法改善的部份進行改善。圖 3.4(A)為一起始路線,將(1,5)、(5,2)和(3,4) 三條節線刪去,重新連結(1,2)、(3,5)和(5,4),成為圖 3.4(B)。圖 3.4(C)與圖 3.4(D)為 p=2 交換示意圖,而圖 3.4(E)與圖 3.4(F)為 p=3 交換示意圖。

(32)

1 2

4 3

0 5

1 2

4 3

0 5

(A) (B)

1 2

4 3

0 5

1 2

4 3 6 0

(E) (F)

7 5

6 7

1 2

4 3

0 5

1 2

4 3

0 5

6 6

(C) (D)

(p=1)

(p=2)

(p=3)

圖 3.4 Or-opt(p=1,2,3)交換法示意圖 三、1-0 節點交換法

圖 3.5 說明 1-0 交換法之解題概念。圖 3.5(A)為同場站之內的 1-0 交換,

圖 3.5(B)為不同場站之內的 1-0 交換。其交換法陸續將一個節點自路線中 抽出,然後將其插入其他路線的其他節線之間。然後檢查交換後的解是否 在不超過容量以及其他限制式的情形下優於交換前的解。若優於之前的解 則更新;若無,則維持原解。1-0 節點交換法中多車種可藉由大、小車之 間的交換減少路線數以及降低路線成本與車輛使用成本。

四、1-1 節點交換法

圖 3.6 說明 1-1 交換法之解題概念。圖 3.6(A)為同場站之內的 1-1 交換,

圖 3.6(B)為不同場站之內的 1-1 交換。其交換法將任兩條路線將一個節點 自路線中抽出,互換插入之位置。然後檢查交換後的解是否在不超過容量 以及其他限制式的情形下優於交換前的解。若優於之前的解則更新;若無,

則維持原解。1-1 節點交換法中路線成本及車輛使用成本可藉由多車種的 大、小車交換而降低。

(33)

1

D0 2

3

5

4

6 7

8

1

D0 2

3

5

4

6 7

8

D1 1

D0 2

3

5

4

6 7

8

1

D0 2

3

5

4

6 7

8

D1

(A)

(B)

圖 3.5 1-0 節點交換法示意圖

1

D0 2

3

4 5

6

(A)

(B)

1

D0 2

3

4 5

6

1

D0 2

3

4 5

6

1

D0 2

3

4 5

6

D1 D1

圖 3.6 1-1 節點交換法示意圖

(34)

3.4 門檻接受模組設計

本研究在門檻接受模組,以前述之鄰域交換模組為核心工具,在控制參數 方面,包括起始門檻值(T0)、門檻數列長度(K)及門檻數列收斂型態。門檻數列 在門檻數列長度(K)期間,自起始門檻值(T0)逐漸收斂到 0,本研究門檻數列收 斂型態採用等比遞減門檻數列。

3.4.1 TA 架構設計

TA 執行架構如圖 3.7 所示,TA 的門檻接受法則在上述 2.4.2 節有提到。當 要執行 TA 時必須先設定起始門檻值與門檻數列,接著按照 TA 的接受法則決 定是否更新現有解。當鄰域搜尋時有找到新的可行解,必須判斷此可行解與現 有解之差值是否在門檻值之下,若是在門檻值之下則接受交換並更新暫優解,

否就繼續執行。執行區域搜尋法時,執行所設計之鄰域搜尋模組,直到所有門 檻值皆執行完畢。執行完後將最後解設定為目前最佳解。

圖 3.7 TA 執行架構圖 3.4.2 TA 控制參數

在鄰域搜尋模組的交換法方面使用 2-opt、Or-opt、1-0、1-1 等路線間路線 內交換法,門檻遞減比例(R)則為 0.8、0.9、0.99、0.999,門檻數列收斂型態則 有等差遞減與等比遞減。

在起始門檻值(T0)、執行回合數(K)、每次遞減值(Th)與門檻遞減比例(R) 的參數方面,可據以構成一系列的門檻值{Tk},首先將 T0 設為鄰域搜尋模組 所求得的解,其更新公式如下所示:

一、等比遞減 TA:

開始

起始門檻值與 門檻數列長度設定

鄰域搜尋模組

更新門檻值

有無達到 停止法則

更新解與成本

結束

(35)

( )

R for k K T

T1= 0* k =1~ (3.1)

其中式(3.1)為等比遞減的收斂公式,表 3.1 則為等比遞減的相關參數 設定。

表 3.1 等比遞減參數設定表

項目 設定範圍

門檻遞減比率(R) R=0.8、0.9、0.99、0.999

門檻數列收斂型態 等比遞減

停止值(S) T0/200、T0/500、T0/1000、T0/2000、1

停止法則 T1 小於 S

二、等差遞減 TA:

K k

for k

T

Th= 0/ =1~ (3.2)

Th T

T1= 0− (3.3)

式(3.2)為等差遞減每次所減少的值,式(3.3)為等差遞減的收斂公式,

表 3.2 則為等遞減的相關參數設定。

表 3.2 等差遞減參數設定表

項目 設定範圍

門檻遞減值 Th

門檻數列收斂型態 等差遞減

執行回合數(K) K=100、200、500、1000、2000、4000、6000、8000

停止法則 K 次執行完畢

(36)

第四章 例題測試與結果分析

4.1 例題產生與實驗設計

4.1.1 例題產生

本研究藉由全球資訊網路連線到國際標竿(Benchmark)測試例題題庫【20】

(http://www.hec.ca/chairedistributique/data/)中搜尋 MDVRP 例題,並從中下載了 25 個例題來進行測試。本研究所使用之例題(p01~p15) 與 Salhi 等人【19】的 研究中所使用的例題是一樣的。而例題 pr01~pr10 於學生研究時期並未收集到 相關求解之文獻,因此以 TA_HMDVRP 方法求解出之結果可供參考。測試例 題之基本設定如表 4.1 所示,由於無 HMDVRP 之標竿例題,應此在已知最佳 解的部份(p01-p15)將採用 Salhi 等人【19】的測試結果;在所有例題中,p01~p15 座標為整數,而 pr01-pr10 座標為小數點。

表 4.1 測試例題基本設定

題號 場站數 顧客數 容量 已知最佳解

p01 4 50 80 1526.7

p02 4 50 160 992.8

p03 5 75 140 1611.1

p04 2 100 100 2361.9

p05 2 100 200 1498.4

p06 3 100 100 2277.5

p07 4 100 100 2297.1

p08 2 249 500 6718.6

p09 3 249 500 6211.4

p10 4 249 500 6018.7

p11 5 249 500 6030.8

p12 2 80 60 2108.2

p13 4 160 60 4116.2

p14 6 240 60 6217.0

p15 9 360 60 9184.6

pr01 4 48 200 NA pr02 4 96 195 NA pr03 4 144 190 NA pr04 4 192 185 NA pr05 4 240 180 NA pr06 4 288 185 NA pr07 6 72 200 NA pr08 6 144 190 NA

(37)

表 4.1 測試例題基本設定(續)

題號 場站數 顧客數 容量 已知最佳解

pr09 6 216 180 NA pr10 6 288 170 NA 註:NA (not available)。

由於缺乏 HMDVRP 之國際標竿例題,因此從將 MDVRP 國際題庫中挑選 25 題例題進行修改並測試,其中未考慮總旅行時間限制及顧客服務時間,且各 場站並未限制其使用車輛數。

例題修改部分,參考 Salhi 等人【19】所使用之公式進行修改,將 MDVRP 例題轉變為 HMDVRP 例題,公式如下(4.1)、(4.2)所示:

( )

4.1

) 2 . 0 4 . 0 (

+

= k Q

CAPk

( )

4.2

5 , 4 , 3 , 2 , 1 10

70+ =

= k k

VFk

其中:Q =該例題之原本車容量 CAP=期望容量

VF =固定成本

以例題 1 為例,車容量為 80,則可將其多車種車容量改為 48、64、80、96、

112,車輛固定成本為 80、90、100、110、120,其他例題以此類推;利用此方 式將所蒐集之 25 題 MDVRP 例題改為 HMDVRP 例題。

4.1.2 實驗設計

本研究針對所使用的模組,進行測試之實驗設計。整個測試過程可分成以 下三個實驗。

(一) 實驗一:起始解測試比較。首先利用起始解構建模組搭配分別各例題之最 大車、最小車容量產生起始解,進行測試並探討其績效。

(二) 實驗二:鄰域搜尋模組之求解績效測試。針對實驗一所產生的 2 組起始解,

使用 2-opt+Or-opt+1-1+1-0 交換法各自進行路線改善,並記錄其測試與改 善結果。

(三) 實驗三:門檻接受模組之求解績效測試。將實驗二所測得的改善解利用門 檻接受法,使之有機會跳出區域最佳解,進而尋找更佳的解,在門檻值變 動部分有設定不同的數值進行測試,最後紀錄並探討其測試績效。

4.2 測試結果分析

4.2.1 實驗一:起始解測試比較

在此實驗中利用最遠鄰近點法搭配最大車容量及最小車容量分別構建 2 種 起始解並進行績效比較,如表 4.2 所示。

(38)

表 4.2 起始解測試比較表

起始解總成本 路線數

構建車種 最小車 最大車 最小車 最大車

p01 2473.791 1847.957 20 9

p02 1531.996 1288.141 10 5

p03 2385.259 2062.689 18 10 p04 3842.681 2664.472 26 11

p05 2363.438 1801.503 13 6

p06 3534.812 2576.409 27 12 p07 3559.636 2668.237 27 12 p08 11203.24 8057.224 42 19 p09 10544.21 7817.626 42 20 p10 9996.101 7316.803 43 20 p11 9882.058 7461.261 44 20

p12 3347.939 2699.509 12 6

p13 6695.878 5399.018 24 12 p14 10043.82 8098.527 36 18 p15 15065.72 12147.79 54 27 pr01 1886.631 1518.925 8 4 pr02 2980.386 2604.756 13 6 pr03 4558.455 3549.345 18 8 pr04 5243.289 4521.709 24 13 pr05 6468.295 5107.2 33 15 pr06 7546.856 5757.465 38 17

pr07 2314.73 2151.848 10 6

pr08 4140.678 3723.673 20 11 pr09 5933.628 4769.649 30 14 pr10 7917.194 6243.902 42 20 實驗一中 25 題例題測試結果以使用最大車構建之路線績效較好,路線數也 較少;反之使用最小車構建之路線,受限於車容量最少導致路線跟路線總成本 較高。

4.2.2 實驗二:鄰域搜尋模組之求解績效測試

在此實驗中,主要為利用鄰域搜尋及大車換小車、車換大車之多車種的交 換降低路線數及總路線成本,並與起始解進行績效與路線數評比,其結果如表 4.3、4.4 所示。

(39)

表 4.3 鄰域搜尋模組績效測試表

起始解+鄰域搜尋總成本 路線數

構建車種 最小車 最大車 最小車 最大車

p01 1596.57 1523.278 10 9

p02 1157.405 1037.531 7 5

p03 1956.321 1636.434 14 9

p04 2369.615 2302.939 13 11

p05 1646.9 1468.947 9 6

p06 2517.64 2231.449 16 12

p07 2571.73 2219.011 17 12

p08 6907.863 6376.975 24 18 p09 7102.293 6135.86 29 20 p10 6967.054 5942.553 29 20

p11 7027.698 6031.62 31 20

p12 2485.146 2228.967 10 6

p13 4452.937 4393.575 17 12 p14 6387.416 6326.215 24 18 p15 9528.798 9336.581 38 27 pr01 1577.261 1308.947 7 4 pr02 2588.483 2064.683 12 6 pr03 3550.932 2824.801 16 8 pr04 4396.558 3693.922 22 13 pr05 4803.075 4169.891 24 15 pr06 5049.453 4770.256 23 17 pr07 1944.078 1728.266 9 6 pr08 3349.608 2889.122 17 11 pr09 4320.099 3841.102 21 14 pr10 5748.508 5206.938 28 20

(40)

表 4.4 鄰域搜尋模組與起始解構建模組之績效比較表

總成本(改善%) 路線數(改善)

構建車種 最小車 最大車 最小車 最大車

p01 54.94% 21.31% -10 0

p02 32.36% 24.15% -3 0

p03 21.93% 26.05% -4 -1

p04 62.16% 15.70% -13 0

p05 43.51% 22.64% -4 0

p06 40.40% 15.46% -11 0

p07 38.41% 20.24% -10 0

p08 62.18% 26.35% -18 -1

p09 48.46% 27.41% -13 0

p10 43.48% 23.13% -14 0

p11 40.62% 23.70% -13 0

p12 34.72% 21.11% -2 0

p13 50.37% 22.88% -7 0

p14 57.24% 28.02% -12 0

p15 58.11% 30.11% -16 0

pr01 19.61% 16.04% -1 0

pr02 15.14% 26.16% -1 0

pr03 28.37% 25.65% -2 0

pr04 19.26% 22.41% -2 0

pr05 34.67% 22.48% -9 0

pr06 49.46% 20.70% -15 0

pr07 19.07% 24.51% -1 0

pr08 23.62% 28.89% -3 0

pr09 37.35% 24.17% -9 0

pr10 37.73% 19.92% -14 0

平均值 38.93% 23.17%

實驗二中,實驗一的測試結果在經由鄰域搜尋模組改善過後,最大車構建 之起始解有平均 23.17%的總路線成本改善,最小車構建之起始解有平均 38.93%

的總路線成本改善,且路線數有顯著降低,可明顯發現由最小車容量所構建之 起始解的路線數有顯著的減少,這是由於 1-0、1-1 以及小車換大車之多車種交 換發生了功用。

參考文獻

Outline

相關文件

The function f (m, n) is introduced as the minimum number of lolis required in a loli field problem. We also obtained a detailed specific result of some numbers and the upper bound of

Students are provided with opportunities to learn and develop the skills, strategies and confidence needed to participate in Guided and Independent Reading as well as the

How would this task help students see how to adjust their learning practices in order to improve?..

The Hilbert space of an orbifold field theory [6] is decomposed into twisted sectors H g , that are labelled by the conjugacy classes [g] of the orbifold group, in our case

Due to rising prices in winter clothing and footwear, as well as increasing housing rent and expenses of house maintenance, indices of Clothing and footwear; and Rent and

Attributable to increasing rent of housing and expenses of house maintenance, rising prices in summer clothing and footwear, as well as fresh vegetables, the indices of Clothing

n Another important usage is when reserving network resources as part of a SIP session establishment... Integration of SIP Signaling and Resource

In the work of Qian and Sejnowski a window of 13 secondary structure predictions is used as input to a fully connected structure-structure network with 40 hidden units.. Thus,