• 沒有找到結果。

第二章 文獻探討

2.2 生產排程與物流配送問題之探討

2.2.2 車輛途程

近年來車輛途程相關問題之研究相當多,而所謂的車輛途程問題,簡單 來說就是用來決定配送車輛行駛之路線。配送車輛由工廠或物流配送中心出 發,依循特定之路線經過各配送點或客戶端,最後回到配送中心,以致於所 有的配送點均被服務過一次,且此路線必須能使業者所考量之目標函數(如 距離、成本、時間等)最小。以下是探討以巨集式啟發式演算法求解車輛途 程之相關文獻的整理:

在許多車輛途程相關之文獻中,基因演算法是最常被使用的一種啟發式 演算法,例如 Blanton [11]運用基因演算法針對車輛途程問題中的車輛容量限 制加以研究;Thangiah et al.[51]先使用掃瞄法把顧客分群,再利用基因演算法 把鄰近群的顧客互相交換,以達降低成本的需求;Malmborg[31]也利用基因 演算法求解具時窗性車輛途程問題;Potvin et al.[38]使用基因演算法針對後式 拖運的車輛途程問題作深入研究;Salhi et al.[47]則使用分群式基因演算法研 究多倉庫(multi-depot)情況下的車輛途程問題;Potvin et al. [39] 結合基因演算 法及類神經網路來求解最小化車輛途程問題的總成本;Barrie 與 Ayechew[9]

將基因演算法加入鄰近搜尋法,求解車輛途程問題的求解時間與品質最小 化,並將結果與塔布搜尋法及模擬退火法相比較,結果顯示基因演算法為較 適合求解車輛途程問題的巨集式啟發式演算法;Hwang [25]改良式基因演算 法求解多場站車輛途程最小化運送成本問題,且將研究結果與國際題庫相比 較 , 顯 示 此 一 改 良 式 基 因 演 算 法 於 求 解 車 輛 途 程 問 題 有 極 佳 的 潛 力 。 Goldberg[20]等學者應用基因演算法求解生產排程問題時,設計新的交配運算 子粗略位置交配 (Partially Mapped Crossover;PMX),並同時解決旅行推銷員 的問題,有相當顯著的結果。

塔布搜尋法也是許多文獻所選擇的一種巨集式啟發式演算法,例如 Osman [34]結合模擬退火法與塔布搜尋法求解車輛途程問題,以大家所熟知

的Tailard[50]與Rochat[44]例題當作評估績效指標,顯示結合兩種演算法所衍 生之新型態演算法優於單單使用模擬退火法,而Gendreau[18] 、Rego與 Roucairol[42]以及Barbarosoglu與Ozgur[8]皆以[50,44]作為標竿學習,分別以塔 布搜尋法與平行塔布搜尋法來求解車輛途程問題,也有相當不錯的結果;另 外,Hiquebran et al.[32]也以[50,44]為基礎,結合改良式模擬退火法以分群為 首,路線為輔(class-first rout-second)的方法來求解車輛途程問題;而Badeau et al.[10]、Brandao[12]、Duhamel et al. [14]、Golden et al. [37]等先後皆以改良式 之塔布搜尋法求解具上限單邊時窗性車輛途程問題,也都獲得不錯的成果。

其他相關文獻如Russell [46]討論具時窗性車輛途程問題的混合啟發式 (hybrid heuristics)的發展,針對路線的部分改良,以降低車子數量,效果比之 前已提出之方法佳;王生德[1]運用巨集啟發式解法求解具時窗性車輛途程問 題,並提出六種改良式的鄰點法分別構建不同的起始解,結果證明,他所提 出之改良式鄰點法比傳統鄰點法具較佳的解題能力。

2.3 整合生產排程與物流配送兩階段

所謂生產排程與物流配送兩階段問題是指將顧客所下訂的訂單先經由工 廠的機台加工後,再經由配送車輛送至顧客手中才算是完成工作。由於此問 題是在近年來才漸受重視,故其相關文獻並不多,以下為針對生產排程與物 流配送兩階段問題之相關文獻。

Maggu 與 Das [32]探討兩台機器在沒有任何緩衝空間限制且有足夠的 配送車輛可將在第一台機器完工的半成品直接且立即地送往第二台機器繼續 加工情況下的流程式生產最大完工時間問題,並以擴展 Johnson's rule[29]當 作例題,以解決其問題;Maggu et al.[33]以與 Maggu 與 Das [32]相同的問題,

加上一條必須直接連續不可被打斷地完成相同工作的限制,也以相同方法來 解決此問題;Kise[29]也是探討與 Maggu 與 Das [32]相同的問題,但限制一

次只能夠運送一個訂單,證明此問題就算是每個訂單都是獨立的運送時間,

也是一個 NP-Hard 問題;Potts[50]和 Hall 與 Shmoys[21]皆考慮以產品到達時 間及配送時間不相同的單機排程問題,其假設在有充足配送車輛的條件下,

只要有任一訂單被加工完成即立刻送至顧客手中,且以啟發式求解法及誤差 界限分析法來求解此問題;Lee 與 Chen[13]探討在不同的生產排程的情況 下,兩種訂單配送問題。第一種是當生產形式為流程式生產時,其前一階段 訂單加工完成後,如何將其運送至下一階段繼續加工;第二種是當訂單所有 加工完成後,如何將成品運送至顧客手中,且將單次運送的車子容量及運送 時間也納入考量之中;Hall 與 Potts[22]應用動態規劃求解 Lee 與 Chen[13]

之整合供應鏈整體成本最小化問題,其證明整合供應鏈中生產排程與物流配 送此兩階段至少可降低為整合前成本之百分之二十,甚至有可能高達百分之 百。Garcia 與 Lozano[16]同樣探討將訂單加工完後的成品立即送至顧客手中,

但其在運送過程中加入了時窗的限制,並以塔布搜尋法來求解此問題,以達 到最大利潤。

2.4 結論

包含生產排程以及物流配送的經營形式已漸被企業應用,而由上述鮮少 的相關文獻得知,雖然有少許學者探討此方面之問題,但尚未有人將現今已 被業界所廣泛應用的非等效平行機台的生產方式,以及車輛途程問題加以整 合,並以一有效且能在較短時間內求得最適解的演算法應用在此兩階段問題 上,因此本研究將深入探討包含非等效平行機台及車輛途程兩階段生產排程 與物流配送問題,並以基因演算法來求得系統最小總成本最適解。

第三章 研究方法

由於整合供應鏈之各階段並不是ㄧ件簡單的工作,必須要考慮許多方面 的問題以及相關限制,故在定義供應鏈各階段最小化總成本之假設條件時,

必須要考慮所使用之演算法是否符合,再加上求解整合供應鏈問題的複雜程 度並非傳統的混整數規劃方法可解,故本研究運用能符合各種不同型態問題 的基因演算法來求解整合供應鏈總成本最小化問題。本章主要是說明本研究 之問題假設以及運用基因演算法求解整合供應鏈中生產排程與物流配送兩階 段總成本最小化之步驟。

3.1 問題描述

本研究主要探討整合供應鏈中的生產排程與物流配送兩階段問題,以非 等效平行機台模擬生產製造階段及車輛途的問題模擬物流配送階段,探討將 系統中 n 筆訂單 Oi,經由 m 台非等效平行機台 Mk中任一機台加工,其中 Oi 於 Mk之加工時間為pik。Oi加工完畢後經由 r 台配送車輛 Rj中的一台車輛配 送到顧客 Di手中,如此一來訂單才算真正完工。其中 Oi從工廠 D0送至顧客 Da之配送時間為dioa;從顧客 Da配送至顧客 Db之配送時間為diab,且每一訂 單皆依據其重要性而增設權重 wi。本問題之目標函數為 Min i

N

i

i c

w ×

=1

,其 中 wj表示 Oi之權重;而 cj 為 Oi之總完工時間,亦即送達至顧客手中的時間。

本研究問題之假設如下:

(1) 機台間沒有閒置時間(表示全部訂單一開始都可以被加工),沒有整備時 間。

(2) 所有的車輛與行駛速度皆相同。

(3) 一輛車只運送一次。

(4) 所有訂單的加工時間與顧客所在位置為已知。

(5) 每部機器一次只能加工一筆訂單。

(6) 訂單為不可分割,且在同一機台上加工 (7) 一個顧客只下一筆訂單。

(8) 不考慮有重工及當機的情況。

(9) 運送過程無特定方向。

(10) 任意三個顧客所在位置不在一條直線上。

3.2 演算法之設計

由於非等效平行機台的生產排程與車輛途程問題皆屬 NP-HARD 問題,

在整合此兩階段時,其計算時間及繁複程度會隨著問題規模大小呈指數成 長。在此情況下若採取簡單基因演算法來求解此問題時,編碼會過於冗長而 可能導致計算時間過長或無法獲得最適解的困境。故本研究設計一具多層染 色體的基因演算法,運用兩層式的染色體表現方法,將訂單及車輛的資訊存 放至染色體中,以增加搜尋空間,並利用基因演算法的平行多點搜尋的特性,

增加搜尋之效率。

3.2.1 兩層式染色體編碼方式

在兩層式的染色體編碼的表現模式中,第一層染色體存放生產排程的資 訊,以建立一訂單與機器加工順序的對應矩陣;第二層染色體存放車輛途程 的資訊,以客戶之所在位置,以建立一配送車輛資訊矩陣。在基因演算法的 編碼過程中,一般皆採用最簡單的二進位的編碼方式。但當染色體長度過長 時,則會有字串過長的困擾,再加上排程所著重的是加工順序,故本研究將 以順序編碼方式,將訂單加工及需求點配送的順序編碼為 1、2、3、4、…等,

來解決字串過於冗長的問題,且第一層染色體與第二層染色體的關係為一對

一或多對一,取決於配送車輛的數量及客戶之所在位置。其中以 0 為加工機 台間之分隔點以及配送車輛之分隔點。第一層染色體長度為訂單數加機台數 減一;第二層染色體長度為訂單數加配送車輛數減一。以下為 10 筆訂單、2 台機器、2 輛車輛之兩層染色體編碼示意圖,如圖 3.1 所示:

圖 3.1 兩層染色體編碼示意圖 3.2.2 起始解設定

理論上當產生的起始解品質越好時,應越容易找到最佳解。但事實上,

基因演算法為一種多點的平行搜尋法,若採用隨機方式產生起始解,只要所 產生之親代數足夠,對於尋求最適解並不會有太大的影響,且基因演算法所 需要之親代數有一定的數量,例如當染色體長度為50時,則至少要有200個以 上的起始解才有足夠的選擇空間,因此若採用啟發式解法來產生起始解,則 必須要使用200種啟發式演算法,那麼光在產生起始解這一部分就會花非常長

基因演算法為一種多點的平行搜尋法,若採用隨機方式產生起始解,只要所 產生之親代數足夠,對於尋求最適解並不會有太大的影響,且基因演算法所 需要之親代數有一定的數量,例如當染色體長度為50時,則至少要有200個以 上的起始解才有足夠的選擇空間,因此若採用啟發式解法來產生起始解,則 必須要使用200種啟發式演算法,那麼光在產生起始解這一部分就會花非常長

相關文件