第三章 研究方法
3.2 基因演算法
3.2.2 染色體解讀
本研究所研究的問題為雙廠跨廠之生產規劃排程問題,每廠各有三站,而如圖 3. 3 所示的ㄧ條精簡的染色體,要如何代表此研究的問題?經由染色體設計與編碼後,我們 將此條精簡的染色體解讀成三條染色體,如圖 3. 3 所示,此三條染色體分別代表第一站、
第二站及第三站,涵義則為每個工件都必須依序經過此三站做加工。
圖 3. 3 三站染色體解讀
接下來,以下小節將分成兩部份解讀,一部份為加工途程,另一部份則為加工順序。
1.加工途程解讀
經由染色體作三站的解讀後,尚未知每個工件在哪ㄧ廠加工,以下則是為了平衡兩 廠產能負荷,而做的途程指派(Route Assignment),亦即指派每個工件在每一站的哪一廠 加工,且能使得兩廠的廠能負荷能夠平衡。以下則是本研究為了平衡兩廠產能負荷所做 的途程指派。
符號解釋:
( ) ( )
步驟一:M=1 代入公式(1),得到Min TP -TPa1 b1 = ( ) ( )
第一站 第二站 第三站 EDD 排序(Early Due Date)來初步決定每廠每站的加工順序,亦即交期越早之工件排至越 前面加工。步驟二~步驟五是依據步驟一的結果細部調整加工順序,主要目的是利用貪
婪法合併相同工件族之工件,以減少整備時間,並同時能兼顧交期限制。以下則做詳細 的介紹。
符號解釋:
t :第 t 次合併
S :第 t 次合併之t CV s S :整體最佳解 *
演算步驟:
步驟一:各廠各站分別依據 EDD 排序,並代入適合度函數計算出CV = Ss t=0 (S*= St=0),
到步驟二。
步驟二:以第一站的排序為主,依排序考慮各工件,並往前尋找同廠且相同、相近但不 相鄰之工件族工件往前合併,到步驟三。若每個工件已考慮過合併,則到步驟 五。
步驟三:第二站及第三站在同一廠找到與第一站合併的工件相同之工件則往前合併,若 某一站(第二站或第三站)沒有同時找到此兩個工件則此站可省略合併,到步驟 四。
步驟四:將三站皆合併好的排序,代入適合度函數計算出CV =Ss t+1(望小),若 St+1<S*, 則 S*被 St+1取代(S*= St+1),並利用此次合併的排序繼續考慮下個工件的合併,
回到步驟二;反之,若 St+1≥ S*,則不合併,並利用此次合併前的排序繼續考慮 下個工件的合併,回到步驟二。
步驟五:停止。最後的排序即為經由群組演算法的最佳排序,而 S*則為經由群組演算法 後的CV 。 s
釋例:
假設一條染色體經由加工途程解讀後之染色體排序,形成如圖 3. 7,圖中A 代表 Am
廠第 m 站的工件排序(m =1, 2, 3);B 代表 B 廠第 m 站的工件排序(m =1, 2, 3),表 3. 2m 為各工件交期及工件族之相關資訊(Ji:工件,Di:交期,Fi:工件族)。
圖 3. 7 染色體經加工途程解讀後的染色體排序-(1)
表 3. 2 各工件交期及工件族之相關資訊-(1)
Ji J1 J2 J3 J4 J5 J6 J7 J8 J9 J10
Di 2 2 3 4 5 6 6 7 8 9
Fi f1 f2 f1 f2 f1 f2 f3 f1 f2 f3
步驟一:各廠各站分別依據 EDD 排序(圖 3. 8),並代入適合度函數計算出CV (假設算s 出 St=0=3,而 S*=3),到步驟二。
圖 3. 8 EDD 排序後的染色體解讀-(1)
步驟二:以第一站的排序為主,依排序考慮各工件(J3、J4、J5…),考慮到 J5 時,往前 尋找到同廠(A 廠)且相同、相近但不相鄰之工件族工件為 J3,並往前合併(如圖 3. 9),到步驟三。
步驟三:第二站在同一廠(A 廠)找到與第一站合併的工件相同之工件(J5、J3)則往前合 併,第三站在同一廠(A 廠)沒有同時找到此兩個工件(J5 沒有找到)則此站可省略
合併(如圖 3. 9),到步驟四。
步驟二:以第一站的排序為主,依排序考慮下個工件(J1、J2、J6、J8…),考慮到 J8 時,
往前尋找到同廠(B 廠)且相同、相近但不相鄰之工件族工件為 J1,並往前合併(如 圖 3. 11),到步驟三。
步驟三:第二站在同一廠(B 廠)沒有同時找到此兩個工件(J8 沒有找到)則此站可省略合
步驟一:各廠各站分別依據 EDD 排序,到步驟二。
步驟二:決定工件族間(Among Family)的排序,各廠各站分別將每個工件族第一次出現 順序的先後做為工件族間的排序,到步驟三。
步驟三:各廠各站分別依據工件族間的序,依序將相同工件族的工件排入,來決定各工 件族內(Within Family)的順序,此排序即為家族式派工後的最佳排序。
釋例:
假設一條染色體經由加工途程解讀後之染色體排序,形成如圖 3. 12,圖中A 代表m A 廠第m 站的工件排序(m =1, 2, 3);B 代表 B 廠第 m 站的工件排序(m =1, 2, 3),表 3. 3m 為各工件交期及工件族之相關資訊(Ji:工件,Di:交期,Fi:工件族)。
圖 3. 12 染色體經加工途程解讀後的染色體排序-(2)
表 3. 3 各工件交期及工件族之相關資訊-(2)
Ji J1 J2 J3 J4 J5 J6 J7 J8 J9 J10
Di 2 2 3 4 5 6 6 7 8 9
Fi f1 f2 f1 f2 f1 f2 f3 f1 f2 f3
步驟一:各廠各站分別依據 EDD 排序(如圖 3. 13),到步驟二。
圖 3. 13 EDD 排序後的染色體解讀-(2)
步驟二:各廠各站分別將每個工件族第一次出現順序的先後做為工件族間的排序,如 A1 第一次出現的工件族為 f1,接著為 f2、f3,故工件族間的排序為 f1Æf2Æf3,
並以此類推其他各廠各站(如圖 3. 14),到步驟三。
圖 3. 14 工件族間的排序
步驟三:各廠各站分別依據工件族間的序,依序將相同工件族的工件排入,來決定各工 件族內(Within Family)的順序,如 A1 工件族間的序為 f1Æf2Æf3(圖 3. 14),A1 中 f1 的工件依序有 J3、J5;f2 的工件依序有 J4、J9;f3 的工件有 J7,故 A1 依 據家族式派工後的順序為 J3ÆJ5ÆJ4ÆJ9ÆJ7,以此類推其他各廠各站,最後 的排序即為家族式派工後的最佳排序(如圖 3. 15)。
圖 3. 15 家族式派工後的最佳排序