• 沒有找到結果。

第三章 以基因演算法解傳輸整合步進機排序

3.7 本研究方法之特色

此節將介紹本研究與過去文獻所使用的染色體之比較,在兩種染色體皆為結合基 因演算法與家族式派工的設計概念下,試圖比較此兩染色體之優劣。以下將會介紹過 去文獻的染色體設計解讀方法,以及交配與突變方式。

3.7.1 染色體設計與解讀方法

在過去文獻中,有使用基因演算法排序 Job Family 和 Job 的研究(Wilson et al., 2004;

Franca et al., 2005; Lin et al., 2009),皆是在染色體上多設計了 Job Family 的排列,其後 再加上原本 Job 之排列,本研究將此設計方法稱為 GA-FT(Traditional Family-based GA),舉例來說,假設現在有 10 個 Job,3 個 Job Family(與圖 3.3 之情境相同),GA-FT

26

的方法是在 Job 之排序前加上 Job Family 之排序,其後再排序 Job 之順序。

如圖 3.15 所示,F2、F3 以及 F1 為 Job Family 之順序,也就是說,必須先加工完 為 F2 家族的 Job 後才可再加工為 F3 家族的 Job,最後才可加工為 F1 家族的 Job。而 在 Job Family 1 內 Job 的加工順序為 Job2、Job3 及 Job1,在 Job Family 2 內 Job 的加 工順序為 Job4、Job5 及 Job6,在 Job Family 3 內 Job 的加工順序為 Job8、Job7、Job10 以及 Job9,故依照過去文獻的排序後可以得到 Job 的加工順序為 Job4、Job5、Job6、

Job8、Job7、Job10、Job9 、Job2、Job3 及 Job1。

圖 3.15 過去文獻的染色體設計 the Job Family

Sequence of the Job in Job Family 1

Sequence of the Job in Job Family 2

Sequence of the Job in Job Family 3

Family、M 個 Jobs,本研究所設計的染色體只會有 M 階層的解空間,而過去的染色體 則會有(N+M)階層個解空間,也就是說,當 Job Family 的個數越多時,會使得以往 的染色體設計更複雜,但由於本研究的染色體在設計時即減去此憂慮,讓 Job Family 的數目不會影響到染色體的長度。

3.7.2 染色體交配與突變方式

GA-FT 染色體交配與突變的方式較為複雜,由於 GA-FT 將 Job Family 的排序加 入染色體中,而每個 Job 也都必須依照 Job Family 1、Job Family 2,以及 Job Family 3 的順序排入,故染色體交配與突變的方式會較為繁瑣。 the Job Family

Sequence of the Job in Job Family 1

Sequence of the Job in Job Family 2

Sequence of the Job in Job Family 3

Cut point Cut point Cut point Cut point

P1

C2 C1

P2

28

以 C1 單點交配的方式為例,如圖 3.16 所示,GA-FT 將一條染色體視為 4 條染色 體,分別為 Job Family 染色體、Job Family 1 染色體、Job Family 2 染色體,及 Job Family 3 染色體,Job Family 染色體只能跟 Job Family 染色體交配;Job Family 1 染色體只能 跟 Job Family 1 染色體交配;Job Family 2 染色體只能跟 Job Family 2 染色體交配;Job Family 3 染色體只能跟 Job Family 3 染色體交配,故 GA-FT 的染色體必須要交配 4 次。

而 GA-FT 染色體的突變原理亦與交配原理相同,將染色體依照 Job Family 與 Job Family 1、2、3 分別突變,即可得到新的子代。

總結以上論述,GA-F 與 GA-FT 染色體交配突變的差異為,GA-F 的染色體視為 一條,故每次交配突變時只需進行一次,而 GA-FT 的染色體視為(1+Job Family 數 量)條染色體,故每次交配突變時,則需要進行(1+Job Family 數量)次,比 GA-F 更為繁瑣與複雜。

相關文件