doi:10.6342/NTU201701607
國立臺灣大學工學院工業工程學研究所 碩士論文
Graduate Institute of Industrial Engineering College of Engineering
National Taiwan University Master Thesis
時窗限制下單一共用財調配問題 Time-Windowed Tool Relocation Problem
of Public Tool Sharing System 金龍
Lung Chin
指導教授:楊烽正 博士 Advisor: Feng-Cheng Yang, Ph.D.
中華民國 106 年 7 月
July 2017
doi:10.6342/NTU201701607
doi:10.6342/NTU201701607
i
致謝
回首二年碩士生涯,即便求學過程艱辛,但沿途有不同的老師教導以及同學、
家人的陪伴才得以克服種種困難。其中最感謝的莫過於指導我二年的楊烽正老師,
老師在這二年中交給我二個重要的概念,一個是學技術的人沒有形容詞,另一個是 在論文寫作上應著重概念上的傳遞而非過多的描述而使他人誤解原意。而老師在 學術上一絲不苟的態度也使我的論文得以完成,真的非常感謝老師。
此外,也很感謝口試當天特地請假的昭瑜和一大早坐高鐵上來的佳陽,因為有 你們的協助,我們的口試才得以順利進行。最後在這二年的生活中最照顧我的莫過 於父母親及黃嫆,如果一路上沒有你們的支持及鼓勵,我沒辦法無後顧之憂地完成 學業,一切榮耀屬於你們。
金龍 謹謝 2017 年夏 台大總圖
doi:10.6342/NTU201701607
ii
中文摘要
本研究首先定義時窗限制下單一共用財調配問題,再提出一具遺傳演算優化 的共用財調配規劃系統,期望有效減少共用財服務系統中未滿足的服務。在已知各 站點共用財的數量變化率下,研擬不同情境下站點的未滿足量求算方式。同時推導 模擬卡車繞行各站時,各站點未滿足量的計算方法,及共用財真實調配數的設定法。
本研究除了提出貪婪式的經驗求解法外,也使用遺傳演算法求解問題,並依問題的 特 性 提 出 專 用 的 急 迫 性 及 距 離 考 量 的 啟 發 式 交 配 法(Imminence & Distance Considered Crossover)及突變法提升遺傳演算的求解效能及品質。再將本研究的問 題應用在單車共用系統並測試範例,結果顯示本研究提示的優化演算法能使卡車 在給定的時窗限制內,有效改善單車共用系統的未滿足量。另一方面在測試不同染 色體交配法的效能下,結果顯示採用本研究研擬的急迫性及距離考量的啟發式交 配及突變法明顯優於泛用型的,也較貪婪式的經驗求解法求得更佳的繞行調配解。
關鍵字:共享經濟、遺傳演算法、公共自行車系統
doi:10.6342/NTU201701607
iii
Abstract
This paper defines Time-Windowed Tool Relocation Problem of Public Tool Sharing System and uses genetic algorithm to construct a public tool rebalancing planning system.
With this planning system we expect to reduce unfulfilled amount in public tool sharing system. We also discuss kinds of equation to calculate unfulfilled amount in different situation with public tool increasing/decreasing rate known. Besides, we simulate truck routing service station to calculate unfulfilled amount and determine pickup and delivery amount in service stations. Our research propose not only a greedy heuristic method but also genetic algorithm to solve this problem. By observing characteristic of this problem, we propose Imminence & Distance Considered crossover and mutation method to improve planning system performance. After applying this problem to bike sharing system and testing several benchmarks, the conclusion shows that our research can reduce unfulfilled amount in bike sharing system in timed windowed by rebalancing public tool effectively. Last but not least, Imminence & Distance Considered crossover and mutation method also has a better performance than canonical and greedy heuristic method.
Keywords: Sharing Economic, Genetic Algorithm, Bike Sharing
doi:10.6342/NTU201701607
iv
目錄
致謝 ... i
中文摘要 ... ii
Abstract ... iii
圖目錄 ... vii
表目錄 ... viii
1. 緒論 ... 1
1.1 研究背景與動機 ... 1
1.2 研究目的 ... 2
1.3 研究方法 ... 2
2. 文獻探討 ... 4
2.1 一般取卸貨問題 ... 4
2.2 PDP 與 PDPTW 問題 ... 5
2.3 Open VRP 問題 ... 5
2.4 VRPSD 問題 ... 5
2.5 卸貨後回程取貨車輛途程問題 ... 5
2.6 混合取卸貨車輛途程問題 ... 5
2.7 同步取卸貨車輛途程問題 ... 6
2.8 1-PDTSP 問題 ... 6
2.9 共用單車服務系統營運相關問題 ... 7
2.10 遺傳演算法 ... 8
2.11 小結 ... 11
3. 時窗限制下單一共用財調配問題及遺傳演算求解法 ... 12
doi:10.6342/NTU201701607
v
3.1 時窗限制下單一共用財調配問題 (Time-Windowed Tool Relocation Problem
of a Public Tool Sharing System) ... 12
3.1.1 問題描述與假設 ... 12
3.2 TWTRP 問題的貪婪式經驗求解法 ... 27
3.3 TWTRP 問題模式的遺傳演算求解法 ... 28
3.3.1 繞行途程段及調配數量段的染色體編碼 ... 29
3.3.2 染色體的適應值 ... 29
3.3.3 遺傳演算的母體初始化 ... 29
3.3.4 繞行途程段的交配及突變運算 ... 30
3.3.5 調配量段的基因交配及突變法 ... 34
3.3.6 小結 ... 36
4.時窗限制下單一共用財調配問題的應用及求解測試 ... 37
4.1 單車調配標竿問題 ... 37
4.2 單車調配優化問題求解系統 ... 43
4.3 範例測試及效能分析 ... 47
4.3.1 單車共用系統的 TWTRP 範例測試與效能分析 ... 47
4.3.2 不同情境範例測試與分析 ... 54
4.3.3 小結 ... 56
5.結論與未來研究建議 ... 57
5.1 結論 ... 57
5.2 未來研究建議 ... 57
參考文獻 ... 59
doi:10.6342/NTU201701607
vi
附錄一 ... 61
Ubike262M 標竿問題 ... 61
附錄二 ... 68
Ubike262A 標竿問題 ... 68
附錄三 ... 76
Ubike262N 標竿問題 ... 76
附錄四 ... 84
Ubike372M 標竿問題 ... 84
附錄五 ... 94
Ubike372A 標竿問題 ... 94
附錄六 ... 105
Ubike372N 標竿問題 ... 105
附錄七 ... 116
CityBike217M 標竿問題 ... 116
附錄八 ... 122
CityBike217A 標竿問題 ... 122
附錄九 ... 129
CityBike217N 標竿問題 ... 129
Harversine 公式 ... 135
doi:10.6342/NTU201701607
vii
圖目錄
圖 1-1 研究流程 ... 3
圖 3-1 未派車時共用財服務系統的未滿足量計算情況 ... 14
圖 3-2
r
i<0
的站點在不同情境下的未滿足量計算 ... 18圖 3-2
r
i<0
的站點在不同情境下的未滿足量計算(續) ... 19圖 3-3
r
i0
的站點的共用財減少率r
i 大於調配添加速度1/
... 20圖 3-4
r
i>0
的站點在不同情境下的未滿足量計算情況 ... 21圖 3-4
r
i>0
的站點在不同情境下的未滿足量計算情況(續) ... 22圖 3-5
r
i>0
的站點的共用財增加率r
i 大於調配速度1/
... 23圖 3-6 問題求解架構 ... 28
圖 3-7 位置為基交配法 ... 31
圖 3-8 順序為基交配法 ... 32
圖 4-1 捷運科技大樓站二個整天的單車數變化折線圖 ... 38
圖 4-2 標竿問題檔案格式 ... 39
圖 4-3 台北市單車共享系統站點分布 ... 40
圖 4-4 新北市單車共享系統站點分布 ... 41
圖 4-5 高雄市單車共享系統站點分布 ... 42
圖 4-6 求解系統人機介面 ... 44
圖 4-7 TWTRP Generation 分頁 ... 45
doi:10.6342/NTU201701607
viii
圖 4-8 So Far The Best Routing Result 分頁 ... 46
圖 4-9 Routing Path 分頁 ... 46
圖 4-10 調配數量段不同的交配法求得的未滿足量比較 ... 48
圖 4-11 卡車途程段不同演算法未滿足量比較 ... 50
表目錄
表 3-1 模型參數 ... 26表 4-1 台北市 Ubike 標竿問題分析 ... 40
表 4-2 新北市 Ubike 標竿問題分析 ... 42
表 4-3 高雄市 City bike 標竿問題分析 ... 43
表 4-4 調配數量段不同交配法效能比較測試使用的遺傳演算參數設定 47 表 4-5 Ubike262A 途程段使用 PBX 交配法搭配調配數量段不同交配法 未滿足量求解結果比較 ... 48
表 4-6 卡車途程段不同交配法效能比較測試時使用的演算法參數設定 49 表 4-7 Ubike262A 卡車途程段不同演算法未滿足量比較 ... 50
表 4-8 系統急迫性與未滿足量改善百分比關係測試結果 ... 51
表 4-9 三個都市三個時段求解結果 ... 53
表 4-10 二種卡車容量 =
C 14 及 32 下各標竿問題求解結果比較 ... 54
表 4-11 Ubike262A 初始單車數配置方式不同的求解結果比較 ... 56
doi:10.6342/NTU201701607
1
1. 緒論
隨著共享經濟興起,出現了提供共用單車、汽機車、及電池等共用財服務系統。
大型都市中對於這些共用財工具的使用日益提升,然各服務站點間借還數量不平 衡的問題叢生。最常見的情況是顧客需要共用財時面臨無共用財可使用,以及需要 歸還共用財時沒有儲位可以歸還。現今做法是當缺少共用財或儲位時,營運商耗用 資源使用交通工具及人力在站點間進行共用財調配。繞行調配造成服務成本增加,
同時也因調配不當使得需借用或歸還共用財的顧客未獲滿足而放棄。因此本研究 假定在一時間區段內共用財服務系統的供需率固定不變,且在此時段內須決定執 行共用財調配的卡車繞行路線及各服務站點調配共用財數量,以降低服務未滿足 的情況。本研究即在定義此調配問題並提出求解方案。本章說明本研究的背景、目 的、研究方法和流程。首先說明本研究提出問題的相關背景,並說明期望達到目的。
最後簡述本研究的進行步驟與流程。
1.1 研究背景與動機
隨著共用財服務系統的擴增與廣泛使用,雖然帶給大眾許多便利,但也萌生許 多問題。例如:各個服務站點因為共用財容量規劃不當、地點型態不同、或場域受 限等因素,造成共用財供需不平衡。營運商往往需要派遣人力及交通設備繞行各站 點取走多餘的或補給缺乏的共用財。若營運商能全面性地考量系統中所有卡車的 路徑以及調配共用財數量的組合,將能有效地在繞行時完成更多的調配,減少流失 的顧客。若能有效地降低流失的顧客,將增加在共用財服務系統中從事消費的顧客 人數,創造更多的收益。
本研究定義上述的問題成一新型問題並命名為時窗限制下單一共用財調配問 題。此問題存在於有站點容量限制、共用財增減率已知、卡車容量有限的單一共用 財服務系統。問題起因於共用財服務系統中站點供需不平衡。一般而言,在上下班 時間或是例假日會因為顧客對共用財需求增加,使得某些站點共用財供需不平衡,
導致顧客面臨無共用財可租借,或無儲位可歸還的服務未滿足情況。對於此問題,
文獻Alvarez-Valdes et al. (2016)指出須做好三種層面規劃:(1)Strategy Level:營運
doi:10.6342/NTU201701607
2
前先決定好哪些地方要設服務站點、(2)Tactic Level:決定整個共用財服務系統的 共用財數量、及(3)Operation Level:發展有系統的調配方式以解決各站點間供需不 均的問題。本研究所要探討的問題屬於 Operation Level 層面,所欲解決的問題是 尋找一個有系統的做法使卡車在時窗限制內有效繞行及調配以提升服務品質。
1.2 研究目的
本研究目的是在實際運轉狀況下對共用財服務系統定義卡車繞行調配問題並 發展求解的經驗及遺傳演算法。同時並開發求解卡車繞行的共用財動態調配系統。
本研究目的如下:
(1) 探討實際服務系統應用情況,包含站點容量、卡車容量、及時窗下需求率固定 等因素,建立時窗限制下單一共用財調配問題模型。
(2) 研習遺傳演算法的求解概念與技術,利用其高應用性開發適合求解本問題的 求解系統。並嘗試研擬本問題專用的遺傳演算改善演化效能提升求解品質。
(3) 以台北市、新北市、及高雄市單車共用服務系統為測試範例。研習其系統架構 建立標竿問題。開發能切合實際服務系統作業的模擬卡車繞行演算法,減少服 務系統的未滿足情況。蒐集實際單車共用服務系統中不同時段的借還單車數 據,制定標竿問題。進行範例測試,驗證本研究發展的求解機制效能和可行性。
(4) 歸納求解方法的優劣並整理求解績效,提出對於此問題的建議及後續發展。
1.3 研究方法
本研究承襲 Holland (1975) 提出遺傳演算法(Genetic Algorithm, GA)的演化概 念為基礎,提出專為求解時窗限制下單一共用財調配問題的系統。由於本研究問題 是新定義的問題,過往並無文獻提及此問題,因此首先進行取卸貨問題的文獻蒐集,
再整理單車共用服務系統相關營運問題的文獻。設計本問題專用的遺傳演算求解 系統,更進一步針對遺傳演算法不足之處採用本研究提出的啟發式交配及突變法 加強求解品質。再以C#程式語言開發此問題的優化求解系統,並蒐集實際範例進 行測試。分析與比較測試結果,最後將本研究整合並提出後續研究建議。本研究流 程如圖1-1 所示。
doi:10.6342/NTU201701607
3 圖 1-1 研究流程
構思研究主題
收集與研讀相關文獻
建構與設計求解問題模式
撰寫與開發求解系統
進行求解系統的實例驗證
是否達到預 期求解績效
否
是 撰寫論文
開始
結束
doi:10.6342/NTU201701607
4
2. 文獻探討
本研究所提出的時窗限制下單一共用財調配問題是新定義的問題。因此本章 將先介紹一般化取卸貨問題(The General Pickup and Delivery Problem, GPDP),並探 討相關文獻如:取卸貨問題(Pickup and Delivery Problem, PDP)、開放式車輛途程問 題(Open VRP)、隨機需求車輛路線問題(Vehicle Routing Problem With Stochastic Demand,VRPSD)、具時窗限制的取貨問題(Pickup and Delivery Problem with Time Windows, PDPTW)、卸貨後回程取貨車輛途程問題(Delivery-first, Pickup-second VRPPD)、混合取卸貨車輛途程問題(Mixed Pickups and Delivery VRP)、同步取卸貨 車輛途程問題(Simultaneous Pickups and Delivery VRP)、及單一貨品取卸貨問題 (One Commodity Pickup and Delivery Problem)的定義與數學規劃模式中限制式間的 差異,分析歸納問題的內涵和求解方法。此外,為將本研究問題應用在共享單車系 統中,本研究也將探討共享單車營運上的相關文獻,並介紹遺傳演算法的基礎理論 和求解步驟。
2.1 一般取卸貨問題
沿用Parragh, Doerner, and Hartl (2008)等學者對取卸貨問題的定義,顧客搬運 需求可分為取貨作業與卸貨作業。車隊在不違反車容量限制下,繞行顧客滿足所有 需求。現實世界中,貨運車隊的路線規劃可以用一般化取卸貨問題描述。一般化取 卸貨問題可由配送方式分為二大類型:車輛裝載貨物從倉儲中心出發後,前往所有 貨運點完成卸貨,再到取貨點完成取貨後回到中心,此種將貨物從中心至中心配送 方式的問題稱為回程取貨車輛途程問題(Vehicle Routing Problems with Backhauls, VRPB)。空車從倉儲中心出發,前往取貨點收取貨物,再將貨物運送到指定的卸貨 點,這種將貨物向顧客收取後送到指定顧客手中的問題稱為取卸貨車輛途程問題 (Vehicle Routing Problems with Pickup and Delivery, VRPPD)。
取卸貨車輛途程問題可以再依照貨物有無配對來區分。若運送的貨物皆相同,
即從取貨點收取的貨物可以配送到任一卸貨點,此問題稱為取卸貨點間無配對之 取卸貨問題(Pickup and Delivery Vehicle Routing Problem, PDVRP)。另一類貨物有 配對的問題中,運送的不是貨物而是人的話,此問題稱為召撥問題(Dial-A-Ride
doi:10.6342/NTU201701607
5
Problem, DARP),而貨物因種類不同而配對時,此問題簡稱為取卸貨問題(Pickup and Delivery Problem, PDP)。
2.2 PDP 與 PDPTW 問題
在PDP 問題中,兩顧客的需求是一組配對的取卸貨作業。須先到取貨點收取 貨物後繞行到卸貨點卸貨。而取貨(Pickup)與卸貨(Delivery)服務可以交錯進行,只 要不違反車輛的貨物容量限制即可。相對來說,PDPTW 比 PDP 多了作業點的服務 時窗限制,即需要在某一特定的時間點內到達貨運點。
2.3 Open VRP 問題
Open VRP 問題和一般的 VRP 問題最大的差異就在於他並不要求每一輛卡車 最後都要回到倉儲中心。Open VRP 取卸貨是具有順序性的,除此之外 Open VRP 問題中有二個目標式分別為極小化總繞行距離以及極小化卡車使用數,此種問題 多建立在公司沒有自己的車隊上,例如:校車接送學生,Li, Golden, and Wasil (2007) 探討的是Fixed fleet of heterogeneous vehicles,也有其他文獻探討 Homogeneous fleet of vehicle。Cao and Lai (2010)則是假設需求是模糊要求(fuzzy demands)。
2.4 VRPSD 問題
隨機車輛途程問題與常態的車輛途程問題不同處是隨機問題中的某個參數是 隨機變數;不是已知且值固定。關於隨機車輛途程問題的求解方法,亦有學者設計 出解法程序以使得解決確定型車輛途程問題之演算法可用於解決隨機車輛途程問 題上。
2.5 卸貨後回程取貨車輛途程問題
將需求點區分為卸貨(Linehaul)與回程取貨(Backhaul)二類。貨車載滿送件貨品 從倉儲中心出發,服務完所有的卸貨後再進行回程取貨,回程取貨之貨品須完全送 回倉儲中心。因此屬於有多輛貨車的TSPDB 問題。
2.6 混合取卸貨車輛途程問題
同上面問題,顧客分為卸貨及取貨二類。貨車載滿送件貨品從倉儲中心出發,
doi:10.6342/NTU201701607
6
運滿取貨物品而回到貨物站。與上述問題不同的是在貨車允許的載貨量限制下,不 用服務完所有的卸貨即可取貨。
2.7 同步取卸貨車輛途程問題
取貨與卸貨有可能在同一個貨運點發生,例如:羊奶廠商可送羊奶至各戶人家,
並回收空瓶。貨車載滿送件貨品從倉儲中心出發,運滿取貨物品再回到中心。
2.8 1-PDTSP 問題
One-Commodity Pickup-and-Delivery Traveling Salesman Problem 由 Hernández- Pérez and Salazar-González (2003)等人提出,本節將描述問題並說明此問題的基本 假設及過往求解方法。
在一個有向圖 G=(V,A) 中,V 是顧客集合V={
v ,v ...,v 。其中
1 2 n}v 代表倉儲中心,
1 而其他的則代表顧客。每個顧客v
i V有非零需求q
i,若 >0q
i 代表顧客 i 欲寄送貨 物需由卡車取走後運輸;否則是收貨的需求。假設倉儲中心可以容納所有顧客寄送 或供給顧客需要的貨物數量, 因此v 可被視為一個需求是
1 1=-
ni 2 iq
q
的客戶。每一 條有向弧arc i j
( , )A i j V
( , )是一個非負成本c
ij或已知的距離d
ij。一台具有載貨 量限制 C 的卡車從倉儲中心出發後須拜訪每一個顧客再回到中心,而 1-PDTSP 的 目標式是極小化繞行成本。1-PDTSP 問題基本假設如下: (1)貨車從倉儲中心出發後 必再返回中心;(2)每個顧客都要被服務到且僅能服務一次;(3)顧客區分為取、卸 貨二種,且其間不具先後順序;(4)貨車有載貨量上限;(5)各顧客的貨物體積均相 同且為同一貨物;(6)倉儲中心僅有一個,且具有無限的儲位及貨物;(7)每個顧客 的需求量均為已知(deterministic demands)。過往文獻對於 1-PDTSP 的求解方法有 Hernández-Pérez and Salazar-González (2003)所提出的 Branch-and-Cut 方法。除了一般傳統上的做法外,也有各式啟發式 求解方法,例如Zhao, Li, Sun, and Mei (2009)使用遺傳演算法來求解、Dib, Manier, Moalic, and Caminada (2017)則以遺傳演算法搭配 VNS 求解 1-PDTSP 問題。
doi:10.6342/NTU201701607
7
2.9 共用單車服務系統營運相關問題
本研究將以1-PDTSP 為基礎建構適用於本問題的模型,並以共用單車服務系 統為實例作為此問題的應用。因此本節將探討共用單車調配問題相關文獻。根據 Alvarez-Valdes et al. (2016)等人的研究,單車共用系統營運有三個層面,分別是:
Strategy Level、Tactic Level、及 Operation Level。本節先說明服務系統的單車變化 相關文獻,再介紹和分析與本研究相關的Strategy Level 和 Operation Level 的文獻。
共用單車服務系統單車變化:
Vogel, Greiser, and Mattfeld (2011)依據一個禮拜不同的時段探討顧客使用共用 單車的行為。他們統計分析當地營運商所提供的借還單車數據,再依據借還單車的 比例將各站點分群。研究指出站點周圍的設施(如:火車站、辦公大樓等)決定了顧 客對站點的取卸行為及數量需求。除此之外,他們使用二年的營運資料搭配Geo BI 方法得出站點單車的借還並非完全隨機,而是有跡可循。例如:在平日上下班時段 服務站點的借還數量幾乎都處於高峰狀態;然而假日則是下午五時處於高使用的 狀態。研究結果指出站點的單車增減率會受顧客的行為及站點周遭設施的影響,且 顧客使用共用單車的時間不會超過一個小時。平均使用時間是15 分鐘;至於某些 站點突然出現大量借還單車的原因則多是觀光客造成。此文獻是使用資料庫以及 統計方法對營運商的歷史資料作分析,再歸納顧客行為會造成站點的單車增減。
共用單車系統規劃:
Frade and Ribeiro (2015)以政府的立場提出一單車系統規劃模型,並以政府的 預算為限制,求解服務站點設置位置、站點最大和最小容量、站點數量以及服務系 統總單車數,以極大化站點可涵蓋的顧客範圍。他們已將研究成果應用於站點設置 及服務系統規模設定。此問題除了最大化涵蓋區域問題(The maximal covering location problem)的特性外,也加入政府預算及在期限內回收投資成本的限制條件。
此研究先將都市依照行政區域劃分為不同的區域,以「最大化涵蓋區域問題」為基 礎提出一混整數線性規劃數學模型求解。在政府預算限制內,依一天中該行政區域 的顧客人數規劃各自設站點的位置,期望使站點涵蓋的顧客範圍最大化。此文獻提 出的數學模型可應用於設置站點位置上的規劃,但模型假設一天開始及結束時各 站點的單車數都要相同,且未詳盡考量顧客遇到無單車租借及儲位歸還的營運情
doi:10.6342/NTU201701607
8
況。因此他們提出的問題是以符合政府的預算限制以及涵蓋顧客的範圍來決定站 點設置的位子。
Operation Level:
在單車調配問題中,過去的學者分別提出靜態與動態單車調配。首先靜態調配 問題(Static Bike Rebalancing)是在單車服務系統結束營業後,系統內各站點內單車 數不再受到需求改變時,營運商依據歷史資料利用卡車配置各站點最適的單車初 始數量,此種情形稱之為「隔夜調配」,過往文獻如Erdoğan, Battarra, and Wolfler Calvo (2015)、Chemla, Meunier, and Calvo (2013)等皆是在解決此問題。然而僅進行 一次調配會降低系統的服務品質而影響顧客的使用意願,因此衍生出動態調配問 題(Dynamic Bike Rebalancing),也就是在營運期間當站點調配需求發生時,卡車也 依照站點的單車數同步調整站內單車數,再前往需要調配的站點。Dell'Amico, Hadjicostantinou, Iori, and Novellani (2014)即是在解決此一問題。
Alvarez-Valdes et al. (2016) 等 人 根 據 One Commodity Pickup and Delivery Problem 提出一極小化單車共用服務系統中的未滿足需求量(Unsatisfied Demand) 的問題模型。他們使用營運商過往的歷史資料,並區分平日與假日,再預估一天中 每一個服務站點每一個小時顧客對共用單車和儲位的需求量。得到各站點預估的 未滿足需求量後,再求解各站點最適單車初始數量。此外,他們也以最小成本流量 問題(Minimum Cost Flow Problem)為基礎求解卡車路徑規劃,以提供卡車繞行及取 卸單車數建議。藉此觀察卡車透過路線導引後對於系統運轉狀況的影響。然而此求 解法不適用在大型問題中,且假設站點的單車需求固定不變,較無法反映現實情形。
有別於過往文獻探討的單一貨物卡車取卸路徑規劃問題,本研究研擬能應用 在共用財服務系統的時窗限制下單一共用財調配問題,在時窗、站點容量、共用財 增減率、及卡車容量限制下,安排一台卡車繞行站點調配共用財,以最小化系統的 未滿足量(Unfulfilled Amount),給予卡車最佳的路徑導引及調配數量。
2.10 遺傳演算法
遺傳演算法由Holland 提出,模仿達爾文主張的「適者生存、優勝劣汰」的生 物演化原理,所規劃的最佳化求解程序。自然界生物為了適應當下環境,需不斷的
doi:10.6342/NTU201701607
9
演化提高生存能力。適應力高的生物較不易被環境淘汰因而有較大的機會存留下 來,反之則易被淘汰。而遺傳演算法的優化問題求解過程即模仿自然界生物的演化 特性,以母體(population)架構為演化基礎,透過個體染色體間的交配(crossover)、
突變(mutation)、和篩選(selection)步驟逐步朝優演化。遺傳演算法至今已廣為應用 於求解各類優化問題,如裝箱問題、旅行推銷員等問題。
遺傳演算法的母體由多條染色體(chromosome)構成,染色體則由一序列的基因 (gene)組成。通常一條染色體代表優化問題中的一個解,基因值會依問題特性而定 義成不同的形態,常見型態有二元數值、實數、整數、和符號等。遺傳演算法將優 化問題的解編碼(encoding)成適合的染色體型態後,反覆對這群染色體進行交配和 突變演化使染色體中基因組成產生變化,並以篩選改善保留適應值高的染色體。使 用遺傳演算法求解優化問題的主要作業有:將問題的解編碼成染色體、設定染色體 母體大小(population size)、定義染色體的適應函數、設定交配和突變運算方式和子 代篩選方法、設定演算法中的參數值包括交配率(crossover rate)、突變率(mutation rate)、和停止條件(stop criterion)。
遺傳演算法應用在最佳化求解問題的流程是先設定母體大小、演算法參數、以 及染色體編碼方式。接著產生母體大小個數的染色體並初始化,計算各染色體的適 應值(fitness value)。反覆執行依設定的交配率和突變率進行染色體交配和突變運算,
並計算適應值以從中篩選出適應值高的染色體進入下一代次的母體演化直到符合 停止條件為止。以下說明遺傳演算法的主要演算方法與內容。
(1) 基因編碼
將優化問題的解編碼成遺傳演算中可以演化的染色體,即將問題的決策變數 轉換成染色體的基因值。編碼方式必須根據問題特性選擇適合的編碼方式,並搭配 染色體解碼(decoding)方式,將染色體解碼成優化問題的解。
本研究遺傳演算中的染色體編碼方式採用二段整數編碼。第一段是整數排列 編碼,作法是將繞行站點索引依序存入基因值中,則染色體中的基因值順序即代表 站點繞行順序。而另一段是整數編碼,依給定的卡車容量決定基因值的上下界範圍,
使染色體在限制範圍內演化。
doi:10.6342/NTU201701607
10
(2) 母體初始化
首先決定母體大小。染色體數目多寡影響演算法的求解效益。當數目太小,難 以達到廣泛搜尋效果,容易陷入區域最佳解;反之則會耗費過多的求解時間,降低 求解效率。而母體初始化的方式常以亂數產生或依啟發式程序產生。
(3) 適應值計算
藉由計算適應值衡量染色體的優劣,而適應值也代表染色體存活率,即被挑選 進入下一代次演化的機率。適應值以大者為優,而當優化問題目標值望小時,需將 問題的目標值反向轉換成望大的適應值。常見的作法是將問題目標值取倒數或是 利用正值大數減去目標值作為適應值。而本研究為最小化問題,採用將問題的目標 值取倒數作為適應值。
(4) 交配運算
染色體交配運算以隨機方式從母體中選取兩親代作為交配對象,依交配方式 交換親代染色體中部份基因值,產生兩條新的子代染色體。交配運算目的是透過親 代染色體中的部份基因值產生變異,即針對親代染色體的組合解進行搜尋,期望子 代組合出具有更高適應值的染色體。而交配後產生的子代也可能較親代適應值差,
但透過篩選法會淘汰適應值差的染色體。遺傳演算法透過代次的演化,優良的子代 將能產生更好的子代,使演算法朝優演化。
常見的排序型整數交配法(Permutation Encoding)有部份相應交配法(Partial Mapped Crossover, PMX)、順序對應交配法(Order Crossover, OX)、循環對應交配法 (Cycle Crossover, CX)、順序為基交配法(Order Based Crossover)、和位置為基交配 法(Position Based Crossover) Goldberg (1989); Syswerda (1989) 。而常見的實數交配 法則有單點、雙點、多點、及均勻交配等。
(5) 突變運算
染色體突變運算以隨機方式從母體中選取一親代作為突變對象,依突變方式 變換親代中的部份基因值,產生一條新的子代染色體。突變運算的目的是導引染色 體搜尋鄰近解。當遺傳演算因交配失敗陷入區域最佳解時須靠突變跳脫。
doi:10.6342/NTU201701607
11
常見的整數突變法有反轉法(Inversion)、插入法(Insertion)、交換法(Reciprocal Exchange)、和取代法(Displacement)Gen and Cheng (1997)。而常見的實數突變法為 內插法。
(6) 篩選方法
遺傳演算法以染色體適應值評量存活率。篩選法以適應值高低選出母體大小 個 數 的 染 色 體 進 入 下 一 世 代 演 化 。 常 見 的 篩 選 法 有 隨 機(stochastic) 、 確 定 (deterministic)、和混合(mixed) Gen and Cheng (1997); Goldberg (1989)三種篩選法。
最常使用的隨機篩選法是Holland 提出的輪盤式篩選法(roulette wheel selection),即 適應值大小決定染色體在輪盤上所佔區域,再隨機射飛鏢選取;是一種比例式機率 隨機篩選法。確定型選擇法直接選取適應值高者。混合型選擇法則結合確定和隨機 法。典型的是Goldberg 提出的對戰挑選(tournament selection),此方法反覆隨機選 取數個染色體中最佳者進入下一代,直到選出足夠的染色體則停止。
2.11 小結
本節說明與本研究相關的文獻及演算求解方法,其中與本研究最相關的是 1- PDTSP。本研究和 1-PDTSP 假設不同之處有:(1)卡車僅能在一定的時窗限制內做服 務,若到時限卡車立即停止,故並無規定每個站點都一定要被服務到,且卡車也不 需要返回倉儲中心,和(2)假設站點的共用財隨著時間呈線性增減。此外,本研究也 歸納近年來單車營運的相關文獻,並將本問題歸納為Operation Level 層面的問題。
doi:10.6342/NTU201701607
12
3. 時窗限制下單一共用財調配問題及遺傳演算求解法
本章說明本研究定義的時窗限制下單一共用財(tool)調配問題。首先說明問題 和假設,並定義問題解評估用的「未滿足量」(unfulfilled amount)。詳細探討不同情 境下服務站點的未滿足量計算方式後,再提出求解此問題的遺傳演算模式及演算 程序。
3.1 時窗限制下單一共用財調配問題 (Time-Windowed Tool Relocation Problem of a Public Tool Sharing System)
在共用財服務系統中顧客會遇到需要共用財時無法借用,以及需要歸還時無 儲位歸還等服務未滿足的情形。本節將定義此問題並提出相關假設。
3.1.1 問題描述與假設
本問題源於世界各地現有的共用財服務系統,例如:現在許多國家和城市設置 的單車共用系統、電動車電池共用系統、小客車共用系統等。在這些共用財服務系 統中,顧客可由任一個服務站點借用及歸還共用財。服務用的共用財在某時間點只 能提供給一個顧客使用,必須歸回服務站點後再由其他顧客借用。因此每個共用財 有三種狀態存在:(1)未被顧客借出存放在服務站點、(2)被顧客租借使用中、及(3) 由卡車調配轉運中。整個共用財服務系統配置一定數量的服務站點,且每個服務站 點配置一定數量的共用財儲放空間。初始已配置若干共用財供顧客借用。每個儲放 空間僅能存放一個共用財。通常共用財服務站點會依使用密集度高低散在地理平 面上不同地點。顧客密集度高的區域會有較多的服務站點;相對地,低者站點較少。
當某一站點的共用財數量不是 0 時,顧客才得以借用。同樣地當站點沒有空閒儲 放空間,則無法歸還共用財。當站點有共用財時,擬借用的顧客才得借出共用財,
否則本研究假設顧客會立即離開,而未借得共用財的顧客數計入「未滿足量」
(Unfulfilled Amount)中。使用完共用財後,顧客可選任一站點歸還,當站點有空閒 的儲放空間就可以成功歸還。否則本研究假設顧客立即離開,未能完成歸還的顧客 數也計入未滿足量中。在現實生活中,如果站點無共用財可借,顧客可能會排隊等 候歸還共用財的顧客,依序借用他們歸還的共用財。同樣的如果顧客無法歸還共用 財時,可能排隊等候來租借的顧客們取走共用財空出儲放空間。然而等候線的模擬 及等待成本計算複雜,本研究使用未滿足量來概括計算無法即時租借和歸還共用
doi:10.6342/NTU201701607
13
財的顧客數。當一個顧客在某站點無法即時租借和歸還共用財時,就計入未滿足量。
本問題假設服務站點的「共用財增減率」在給定的時窗內已知且固定。系統營 運者須在給定的時窗內以具有容量限制的卡車在站點間繞行調配共用財。在極小 化未滿足量的目標下設定卡車初始上載共用財量、規劃站點繞行順序,以及設定行 經各站點的共用財轉置數量。因此本問題也可以被歸類為時窗限制下複雜的單一 卡車單一貨物取卸問題。
本問題假設共用財服務系統設有n個服務站點,令
i
是站點的索引值;i
的範 圍由1 至n,站點集合為S 1 2 , , ,n
。服務系統中有一個倉儲中心,且有一台卡 車從中心出發到各站點調配共用財。倉儲中心視為一個站點,索引值是0,則集合
0,1, ,
{0}S
n
S
是包含中心的所有站點集合。每個站點位置的經緯度座標是( , x y
i i), i S ;
則站點i
與j
間的路徑長d
ij可用幾何方式或地理資訊系統計算。通常 幾 何方 式用 Euclidean distanced
i , j (x
ix )
j 2(y
iy )
j 2 或 Manhattan distancei , j i j i j
d
x
x
y
y
計算。相對地,不同的地圖服務系統如Google map, Bing map 均可用來計算地理上的實際距離。令
c 是站點
ii
安設的共用財儲位數i , S r
i是站點i
共用財數量的增減率。注意 在此c
i是非零正整數,c
i 0 , c
i Z
,而r
i是實數r
i R
,在給定時限T
下,假設每 一個站點在時窗[0, ]T 內的共用財增減率固定不變(線性遞增或遞減)。令 ( ) l t 是時間
i 點 t 時,站點i
的共用財數量,則:
0 , 0i i i
l t
l r t
,t T
1式中
l
i0是站點i
在t 的初始共用財數量。從物理限制上來看 ( )
0l t 的值介於 0 和
ic
i 間;然而為了評估在時窗內的系統服務品質, ( )l t 超出值域外的數量計為站
ii
的未 滿足量。令U 是未派車進行調配的未滿足量,則:
00 0
1 ,
n i i
U
u
2doi:10.6342/NTU201701607
14
0
, if 0
, else if 0, otherwise
i i
i i i i i
l T l T
u l T c l T c
。
3圖3-1 顯示未派車進行調配時未滿足量的各種計算情況。各種標竿問題的
U
0 都可在給定服務站點的初始共用財數量及增減率下計算得知。因此U 是未派車進
0 行調配共用財與派車後降低未滿足量的成效比較標竿。圖 3-1 未派車時共用財服務系統的未滿足量計算情況
0
l
i T l
i
i ii
l T c
u
0 c
iT
Tool LevelTime (b)
Tool Level
0
l
i T l
i0 0
u
ic
iT
Time (c)0
l
i T
l
iu
i0 l
i T c
iT
Tool LevelTime
(a)
doi:10.6342/NTU201701607
15
本研究假設調配共用財的卡車一定從倉儲中心出發且能運送的數量有一上限
C 。因此當卡車在繞行站點時,能轉置的共用財數量會受到容量 C 限制。此外也假
設卡車的車速是v且繞行時車速固定。再者假設取卸一共用財花費時間是 。當卡 車繞行站點進行共用財調配時,在時間點 t 車上的共用財數量是
t
。共用財數量 會在到站和離站後增加或減少,但車上的共用財數量 t
的值域範圍保持為 t C
0 。
卡 車 繞 行 站 點 的 順 序 和 調 配 共 用 財 數 量 是 本 問 題 的 解 。 一 個 可 行 解
,
X
H Q
包含卡車的繞行站點途程和站點調配共用財數量。卡車繞行途程是一 個站點排序的繞行序列H
h
1h
2h
n
, hj S j , 1, 2, , n
,卡車會依此順序走訪
站點。注意在此
h
j是卡車第j
個繞行的站點。我們限制每個站點最多走訪一次。因 此 在 時窗 限 制下 ,H
中排 列 在後 面 的站 點 可能 不 會 繞 到 。 另 一 方面 ,陣列 q q q q
n
Q
0 1 2
,q
i , Z i S
是包含倉儲中心所有站點調配共用財數量。 >0q
i 代 表卡車卸下共用財給站點;因此站點的共用財將會增加;相反地 <0q
i ,取走站點的 共用財上載到卡車轉置他站,因此站點的共用財將會減少。注意在此q
i是卡車到達 站點i
調配共用財的預計數量。卡車在站點 i 真正可以調配的共用財數量須依卡車 途程H
逐站繞行才能確定。如果站點i
在時窗限制T
之內未被卡車走訪過,則站點i
的真實取卸共用財數量是 0。假設卡車在時間t
i時抵達站點i
,q~
i是卡車在站點i
的共用財真實調配數量,且設卡車在t
i 時結束調配離開站點。當卡車在t
i抵達站點i
時,共用財數量可以公式
1 求算當時的推算數量l
i t
。推算數量可能超過值域下 界0 和上界c
i,意味有借用或歸還服務未滿足。此時立即以低於0 及高於c
i的量結 算未滿足量再設定為0 或c
i的真實數量。令卡車抵達站點i
時的真實共用財數量是l
i,則
0, if 0 , else if
, otherwise
i i
i i i i i
i i
l t
l c l t c
l t
。
4對於預計調配
q
i的卡車來說,真實調配數量q
i是依據站點的容量c 、卡車容量 C 、
idoi:10.6342/NTU201701607
16
站點真實共用財數
l
i、和卡車上的共用財數量 t
i
在不違反物理現象下設定。在i
0
q
添加共用財的情況下,卡車卸給站點的共用財數量受到車上的共用財數量和 站點剩餘儲放空間限制。相反的,在q
i0
的情況下,取走站點共用財的數量受到 卡車上剩餘儲位數及站點共用財數量的限制。因此真實調配數量
min , , , if 0
min , , , otherwise
i i i i i
i
i i i
q t c l q
q
q C t l
。
5確定真實調配數量後,卡車即在
t
i時開始調配站點的共用財,耗用q
i
時間,直到時間 = +
t t q
i i i 時離開站點並前往下一站。在調配期間,假設站點共用財的原
增減率r
i仍維持不變。但因增加了調配變化率 1/
的影響使整體的增減率改變。在調配結束後,站點共用財的增減率恢復到原本的
r
i。計算一組解
X
的未滿足量時,須模擬卡車繞行及調配流程。每走訪一個站點,演算程序會計算卡車到站時間、推算站點的共用財數量、結算未滿足量、更新站點 真實共用財數量、設定真實調配量、計算離開時間點、和設定離開時的共用財數量。
模擬站點的共用財調配後,時間便推移至卡車離開的時間
t
i,更新站點和卡車上的 共用財數量前往下一個站點。演算過程到達時窗限制時,即時間T
時,卡車可能正 在前往下一個站點的路上,或是正在執行調配作業。本研究假設到達時窗限制後,卡車不需要返回倉儲中心,且服務完一個站點後,卡車旋即前往下一站點。
本研究定義的問題名稱是Time-Windowed Tool Relocation Problem of a public tool sharing system,簡稱 TWTRP。屬於單目標優化問題,求解目標是在時窗
0,T下極小化未滿足量
ni 1 iU X
u ,
(6)0
, if , otherwise
T
i i i
i i
u u t T
u u
。
(7)
卡車繞行過站點
i
的未滿足量u
i包含二個部分。第一個是卡車到站時立即結算的部doi:10.6342/NTU201701607
17
分
u
i。第二個是到達時窗限制時,站點經調配後造成的未滿足量u
Ti 。第一個部分 的未滿足量由卡車到達站點時間t
i推算,即
, if 0 , else if 0, otherwise
i i i i
i i i i i i i
l t l t
u l t c l t c
。 (8)
第二部分的未滿足量是以到達時窗限制時站點
i
的共用財數量l
iT 計算,即T
, if i 0
, else if 0, otherwise
T i
T T T
i i i i i
l l
u l c l c
。 (9)
站點在時間
T
的共用財數量l
iT是以調配後的共用財數量l
i 及原增減率r
i推算,
T
i i i i
l
l
r T
t
, (10) 式中調配結束時間
min ,
i i i
t t q
T 。
(11) 調配後的共用財數量l
i 與原增減率和真實調配數q
i相關。l
i 是由t
i時站點的真實共 用財數量加上調配時間內,由調配共用財速率1/
和站點固定的增減率r
i結合所造 成的共用財增減量,即
sgn
/
i i i i i i
l
l r
q t
t
, (12)式中
l
i及q~
i分別由公式(4)及(5)求得。當 >0q
i 時額外的增減率是 1+
;反之是 -1
。 圖3-2 列出了站點的增減率r
i是負值時,計算未滿足量的五種情境。在情境(a) 站點的未滿足量不論是在卡車抵達時的u
i還是到達時窗限制時的u
Ti 都不是 0。情 境(b)是卡車完成調配服務後,到時限時沒有任何未滿足量產生。情境(c)顯示卡車 抵達站點時沒有未滿足量。但卡車完成調配後到時限時有未滿足量產生。情境(d) 闡釋了到達時限T
時卡車仍在進行共用財調配。情境(e)卡車調配前後站點都沒有doi:10.6342/NTU201701607
18
任何的未滿足量產生。
圖 3-2
r
i<0
的站點在不同情境下的未滿足量計算0
l
i
ii
t
l u
iTc
iT
Tool LevelTime
(a)
t
it
i
i
q
~u
i0
i
l
l
iT
l
i0
l
i
ii
t l c
iT
Tool LevelTime
(b)
t
it
i
i
q
~u
i Tl
i0
i
l
l
i0
T
u
i0
l
ic
iT
Tool LevelTime
(c)
t
it
i
i
q
~0
i
u
T
l
il
il
iT
u
i i 0u
doi:10.6342/NTU201701607
19
圖 3-2
r
i<0
的站點在不同情境下的未滿足量計算(續)前述的圖例顯示調配時共用財增加率1/
大於原減少率r
i,因此調配期間的數 量變化線斜率大於0。圖 3-3 顯示當r
i 大於調配添加率1/
時,調配後站點的共用 財數量l
i 仍是負值。此情況下,公式(12)的 r
isgn q ~
i/
仍是負值。儘管如此只要 有調配共用財,均能緩和站點未滿足量的增加。0
l
i
i it l c
iTime
(d)
t
iT t
i
i
q
~u
i T ii
l
l
0
i
l
0
T
u
iTool Level
0
l
ic
iT
Tool LevelTime
(e)
t
it
i
i
q
~T
l
il
il
iu
iT 0i 0
u
doi:10.6342/NTU201701607
20
圖 3-3
r
i0
的站點的共用財減少率r
i 大於調配添加速度1/
相對地,共用財數量增加型的站點即 (
r
i 0)的共用財變化及未滿足量計算如 圖 3-4 所示。在情境(a)站點的未滿足量不論是在卡車抵達站點時結算的u
i 還是到 達時限結算的u
iT都不是0。情境(b)卡車抵達站點時,結算未滿足量不是 0,但調配 後沒有任何未滿足量產生。情境(c)的卡車抵達站點時沒有未滿足量,但調配後有 未滿足量產生。情境(d)顯示到達時限 T 時卡車仍在進行共用財調配。情境(e)的站 點在卡車抵達時及調配後的未滿足量都是0。0
l
i
i it
l u
Tic
iT
ToolLevel
Time
t
it
i
i
q~
u
i 0
i
l
l
iT
l
i(a)
0
li
li T
ui
ci
T Tool
Level
Time
ti t i
i q~
i 0 u
i
i il t l
T
li
0
i
u
(b)
doi:10.6342/NTU201701607
21
圖 3-4
r
i>0
的站點在不同情境下的未滿足量計算情況0
l
i
ii
t
l
Tu
ic
iT
Tool LevelTime
(a)
t
it
iq
i u
ii i
l
c
l
iT
l
i(b)
0
l
i
i it l
c
iT
Tool LevelTime
t
it
iq
i u
iT
l
ii i
l
c
l
iu
iT 00
l
ic
iT
Tool LevelTime
(c)
t
it
i0
i
u
T
l
il
il
iT
u
iq
i
doi:10.6342/NTU201701607
22
圖 3-4
r
i>0
的站點在不同情境下的未滿足量計算情況(續)上述的情境是取走共用財的調配率1/
比增加率r
i大,因此調配期間共用財的 數量變化線段斜率是負值,有效防止數量超過上限。否則,共用財數量可能超出站 點的容量限制。圖3-5 所示即是共用財增加率r
i 大於移出共用財的調配率1/
時的 情境。調配過程變化線斜率仍為正值,調配結束時共用財數量l
i 依舊超出站點的容 量限制。此時公式(12)的變化率 r
isgn q ~
i/
仍大於0。儘管如此,有調配取走共 用財數,均能緩和站點滿塞現象,降低未滿足量。0
l
i
i it l
c
iTime
(d)
t
iT t
i q
i
u
iT i
i
l
l
i i
l c
0
T
u
iTool Level
0
l
ic
iT
Tool LevelTime (e)
t
it
iq
i
0
i
u
T
l
il
il
i0
T