• 沒有找到結果。

第五章 範例說明與數值測試

5.1 範例說明

5.1.3 建立排程(LPT 派工法)

經過三個方法求取ki及 B 後,除了共同週期法已經給定排程 [1, 2,3, 4,5, 6, 7,8,9,10]

q 及設定TTCC,其於兩者要將ki及 B 轉換為 TVLS 模式中的排程與週期T ,故將所有產品以ki由小到大排序,其中相同ki之產品 則按實際生產時間RTPTi由大到小排序,成為派工清單,依序填入各基期,

最後將所有基期之排程整併為一條排程序列,得到 TVLS 模式中排程 q ,而 週期Tmax

 

kiB

將結果連同共同週期法整合呈現如下表 5.6,CC 表示共同週期法,GA 表 示基因演算法,JP 表示接合點搜尋法。其中 CC 排程長度為 10 個產品,週期 長度為 21.274 天;GA 排程長度為 26 個產品,週期長度 93.035 天;JP 排程 長度為 51 個產品,週期長度為 170.541 天。

獲得以上資訊之後,即可以代入求解 TVLS。

5.1.4 求解 TVLS 模式

求解 TVLS 模式時,為了呈現(1)對 T 搜尋,及(2)改善排程的效果,將分 別比較三種情況:

1. 直接使用排程及週期求解 TVLS 模式 2. 在固定排程下求解對 T 搜尋的 TVLS 模式

3. 使用鄰域搜尋法改善排程並求解對 T 搜尋的 TVLS 模式 並以同一情況下的共同週期法作為基準,比較改善之比例。

表 5.6-三種方法之排程及週期結果

方法 排程q 週期T

CC [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 21.274 GA [2, 7, 9, 3, 1, 2, 4, 5, 8, 6, 2, 7, 10, 2, 4, 2, 7, 9, 3, 1, 2, 4, 2, 7, 2, 4] 93.035 (天)

JP [2, 7, 9, 3, 6, 2, 4, 1, 5, 10, 2, 7, 8, 2, 4, 2, 7, 9, 3, 2, 4, 1, 2, 7, 2, 4, 2, 7, 9, 3, 6, 2, 4, 1, 5, 10, 2, 7, 2, 4, 2, 7, 9, 3, 2, 4, 1, 2, 7, 2, 4]

170.541(天)

情況一:直接使用排程及週期求解 TVLS 模式

在求解 TVLS 模式時,本研究使用 Matlab 的目標式最小化搜尋功能:

fmincon,在變數數量給定之下,該搜尋功能有能力處理限制式為線性或非線性、

目標式為線性或非線性的數學問題,而本研究再給定排程及週期下的 TVLS 問 題,屬於一種限制式為線性、目標式為非線性的數學問題。

在此介紹本研究使用到的 fmincon 搜尋功能,功能輸入如下:

x= fmincon(@(x) objective_fun(x,input),x0,A,B,Aeq,Beq,LB,UB,nonlcon,option)

x:功能求解之自變數,以本題目而言是生產時間與閒置時間,若排程序列 有 l 個,則自變數因有 2l 個。

@(x) objective_fun(x,input):目標式,由於本研究變數較多,建議另設一 function 檔案儲存目標式。檔名後面的括號填入目標式的輸入參數,除 了自變數 x 外,還需填入其他輸入參數,如生產率、需求率等,最後再 目標式前方用@(x)將求解自變數標示出來。

x0:自變數初始值,Matlab 將逐步修改此初始值直至將問題最佳化。

A 及 B:A 及 B 要滿足 A x ≤ B,即線性小於等於限制式,B 為右手值,若 無則設[ ]。

Aeq 及 Beq:Aeq 及 Beq 要滿足 Aeq x = Beq,即線性等於限制式,Beq 為右 手值,若無則設[ ]。

LB:自變數下界,若無則設[ ]。本研究因為生產時間與閒置時間皆必須為 大於 0 的數,故填入對應變數數量的全 0 矩陣。

UB:自變數上界,若無則設[ ]。

nonlcon:非線性限制式,本研究限制式皆為線性,故填入[ ]。

option:使用者可以對程式加入額外的指示,主要為設定程式求解時的額外 資訊 optiset 所使用,一般常見有以下種:

1. Algorithm:選擇演算法,預測為’trust-region-reflective’,還可以選 擇’active set’、’interior-point’等。本研究採用 interior-point 演算法。

2. Display:顯示求解資訊,’off’為不顯示、’iter’按遞迴數顯示、

{‘final’}只顯示運算結果、’notify’目標式未收斂時顯示運算結果。

3. MaxIter:輸入正整數,可設定最大運算遞迴數。

4. TolFun:輸入正數,可設定目標式誤差容忍值,本研究設為103。 5. TolX:輸入正數,可設定自變數誤差容忍值。

輸入方法如:option=optiset(‘Algorithm’,’active set’, ‘MaxIter’,40)。

按照以上之說明,將目標式及限制式放入對應的資訊格後,即可以用此功

表 5.9-接合點搜尋法結果代入 TVLS 模式求解(情況一)

TVLS(GA) TVLS(JP)

TVLS(CC) 0.127% 0.128%

TVLS(GA) 0.001%

註: 0.127=(VLS(GA)之目標值-TVLS(CC)之目標值)/TVLS(CC)之目標值

情況二:在固定排程下求解對 T 搜尋的 TVLS 模式

表 5.12-基因演算法結果代入 TVLS-search-T 模式求解(情況二)

但接合點搜尋法之結果代入 TVLS-search-T 時發生較意外的情況,誤差值設

表 5.13-接合點搜尋法結果代入 TVLS 模式求解(情況二) (下半)

情況三:使用鄰域搜尋法改善排程並求解對 T 搜尋的 TVLS 模式

比較結果如表 5.13 所示,NS-TVLS-search-T (CC)表示以共同週期法參數求 出之排程代入鄰域搜尋法改善排程、求解對 T 搜尋的 TVLS 模式,其他項目以

NS-TVLS-search-T (CC) [9,1,2,4,5,6,7,8,3,10] 21.258 (天)

相關文件