• 沒有找到結果。

模組建構說明

在文檔中 TFT-LCD製程重工決策之研究 (頁 51-57)

第四章 建構基因演算法之決策選擇模組

4.2 模組建構說明

4.2.1 參數編碼(representation)

使用基因演算法必須先將所要求解的參數編成碼,以染色體的基因來表示,

染色體的基因可為二元(binary)、整數(integer)、實數或是混合整數與實數。在本 研 究 中 , 染 色 體 的 基 因 即 為 各 檢 測 站 所 能 選 取 的 重 工 決 策 門 檻 值 (h 值 , ),也就是採用整數形式的編碼,而染色體的長度為所有檢測站的個數。

舉例說明編碼方式,假定 Array 製程有 2 個檢測站(以 A1、A2 表示),CF 製程有 5 個檢測站(以 F1~F5 表示),則染色體的編碼如圖 4.1:

N h

≤ 1

A1的 h 值

A2的 h 值

F1的 h 值

F2的 h 值

F3的 h 值

F4的 h 值

F5的 h 值

圖 4.1 染色體編碼釋例

由於必須滿足一檢測站的 h 值必須大於或等於其後檢測站的 h 值這個條件,

所以就 Array 製程而言,A1 的 h 值須大於等於 A2 的 h 值,CF 製程以此類推。

所以染色體上基因的編碼皆必須滿足此條件,才視為一合理之染色體。

若 A1 所設定的 h 值為 8、A2 所設定的 h 值為 7、F1 所設定的 h 值為 6、F2 所設定的 h 值為 5、F3 所設定的 h 值為 4、F4 所設定的 h 值為 3、F4 所設定的 h 值為 2,則染色體的表示如下:

8 7 6 5 4 3 2 圖 4.2 舉例說明染色體編碼

4.2.2 初始化母體(initialization)

本研究採用隨機方式產生一初始母體,母體大小設定為 100 個染色體,每個 染色體的編碼方式如 4.2.1 的說明方式。

4.2.3 適應函數(fitness function)

每個染色體可經由適應函數計算出一個適應值,以適應值的優劣來判斷染色 體的好壞,所以本研究將適應函數設定為產品的總利潤,使適應函數越大的染色 體,即為較佳的檢測站重工決策組合。

4.2.4 複製(reproduction)

利用取出放回的隨機抽樣,從母體中一次選取兩個染色體,比較其對應適應 函數值的優劣,較佳者即複製一染色體至交配池中,以進行下一步驟的交配及突 變[19],進行完比較後的兩個染色體,再放回母體中,重複上述取出放回的隨機 抽樣動作。由於本研究所設定的母體大小為 100,所以在複製階段,必須重複進 行 100 次的取出放回隨機抽樣,產生 100 組經由比較過後的較佳染色體,複製並

放置交配池中。

4.2.5 交配(crossover)

利用取出放回的隨機抽樣,從交配池中選取兩個染色體進行交配動作,交配 完的染色體再放回交配池中,重複上述的隨機抽樣動作,經交配完的新染色體組 合即為子代的染色體,之後再進行突變動作。而本研究所採取的交配方式為單點 交配,亦即隨機選取一交配點,兩個染色體在交配點之後的基因皆對調,圖 4.3 舉例說明,染色體 A 與染色體 B 進行交配,若隨機選取的交配點第 4 個基因,

假定交配後的染色體為 A’及 B’,則交配過程若如下:

6 4 5 3 2 1 1 染色體 A

5 4 8 5 5 2 1 染色體 B

5 4 8 3 2 1 1 染色體 B’

6 4 5 5 5 2 1 染色體 A’

進行交配

若隨機選取此點 為交配點

圖 4.3 舉例說明單點交配

交配並不是每次皆會成功,需依據交配率的設定來決定期望成功次數,交配 次數乘以交配率,才是成功交配的期望次數,舉例說明,今欲交配 100 次,若交

配率設定為 0.7,則成功交配的期望次數為 100×0.7=70 次。通常交配率的設定大 致在 0.5~1.0 之間,本研究設定為 0.7。若染色體經由交配後,產生不合理之染色 體,則視為交配不成功。

4.2.6 突變(mutation)

突變過程為隨機抽取子代中任一染色體,並且隨機選取其中一基因作為突變 點,針對該基因進行突變,將該基因原本的值隨機轉變為其他值,圖 4.4 舉例說 明,假定基因的編碼只有 1、2、3 三種可能情形,若染色體 C 進行突變,隨機 選取的突變點為第 4 個基因,突變後的染色體 C’,則突變過程如下:

若此點為突變點

突變的過程受突變率的設定所控制,突變的基因期望個數為子代中所有的基 因總數乘以突變率,舉例說明,假定子代有 100 個染色體,每個染色體有 6 個基 因,突變率為 0.1,則突變的基因期望個數為 100×6×0.1=60 個,也就是將有 60 個基因會發生突變。若染色體經由突變後,產生不合理之染色體,則視為突變不 成功。

2 1 3 1 3 1 2 染色體 C

進行突變

2 1 3 2 or 3 3 1 2 染色體 C

圖 4.4 舉例說明突變過程

4.2.7 終止條件

母代經由複製、交配、突變的過程後,稱為完成一個世代(generation),而最 後一個突變步驟完成所產生的新子代,即為下一個世代開始的母代,在進行複 製、交配、突變的動作。每一個世代適應函數值最佳的染色體(本研究中為檢測 站重工決策組合),為該世代的最佳解,通常會設定一終止條件,以決定基因演 算法的停止時點,終止條件的設定並沒有固定的規則,可依據問題特性,自行訂 定合理的終止條件,而最常見的終止條件為:若某一世代的最佳解所對應的適應 函數值,在連續數個世代皆無法產生比該世代更佳的適應函數值,也就是接下來 的數個世代皆無法繼續改進(一般稱為收斂),則運算停止。

4.2.8 種子(seed)

完成上述所有過程,產生一組經由數個世代運算收斂而得的一最佳解後,即 完成一個 seed 的運算,也就是一次基因演算法的運算,但由於基因演算法未必 能求得整體最佳解,所以必須利用多次 seed 的運算,比較各個 seed 運算所求得 的最佳解,取出一最佳者,才是整個演算流程的最終解。

4.2.9 控制參數設定

在整個演算流程中,許多過程都會受到控制參數的設定影響,控制參數的設 定也是影響運算收斂速度的一項因素,而經由本研究試誤的結果,最終設定控制 參數如下:

‹ 母代大小:100

‹ 交配率:0.7

‹ 突變率:0.1

‹ 終止條件:若一世代的最佳解,連續 300 個世代未被改進,即終止運算。

‹ Seed 數:30

交配過程

複製過程

突變過程

計算適應函數值

完成 1 個 Seed 運算

重複 30 個 Seed 運算

取 30 個 Seed 中最佳者,

即為本研究最佳決策。

圖 4.5 本研究基因演算法流程 否

是否滿足終止條件 隨機產生初始母代

在文檔中 TFT-LCD製程重工決策之研究 (頁 51-57)

相關文件