三、 最佳化演算法之使用
3.3 智慧型多目標基因演算法
IMOGA 在演化過程中基本上還是依循基因演算法的過程,但 是在評估函數方式不像 IGA 是直接將目標函數當成評估函數而作演 化判斷之根據,而是使用基於 Pareto 理論,使用通適化且不受尺度因 素影響的評估函數( Generalized Pareto-based Scale-Independent Fitness Function , GPSIFF)作為評估函數。
3.3.1 基於 Pareto 理論通適化且不因尺度影響之評估 函數
為了分辨出各染色體之間的優劣,本篇應用了基於 Pareto 理論 為基礎的記分方式以避免受到尺度因素的影響,並且對於被支配解和 未被支配解給於具有區分能力的適應函數值,用以取代傳統有失準確 性的排名法和距離方式,稱之 GPSIFF。
GPSIFF 使用類競爭式(Tournament-Like)的記分方式來評估 Pareto 解集中染色體個體 x 的適應值,GPSIFF 的數學式如下:
Score(x)= p−q+ c。 ( 40 ) 其中 p 表示在目前欲評估的解集中 x 所支配的個體數目,q 表示在目 前欲評估的解集中能夠把 x 支配的個體數目,c 是一個較大的正整數,
以保證求出的適應值為一正整數。通常以目前參與評估運算的所有個 體的數目作為正整數 c 的值。
GPSIFF 的優點如下:
(a)不需調整權重值:基於 Pareto 理論來評估解的好壞,沒有權 重加總法需決定權重值的困難,也不會受到人為主觀判斷的影響。(b) 不需考量尺度因素:由於各目標函數值的尺度適應值不盡相同,在權 重加總法中需考慮到尺度因素,以免使得權重設定失之準確。(c)以積 分方式有效辨識不同解的優劣程度:取代傳統排名法可能將不同的解 給予相同的排名,以及距離法有尺度因素影響的缺點,以精確的記分 評估解的優劣程度。
圖 4 支配與被支配關係示意圖
我們用圖 4 表示出在兩個目標中同時做最小化問題之說明,在 Pareto 解集中所有個體在雙目標軸的關係。我們以點 B 為例,點 B 之 f1 和 f2 同時都比點 A 小,所以點 A 被點 B 所支配;同理,點 C 與點 D 位 於點 B 之左下角,點 B 就被點 C 與點 D 所支配,所以點 B 將不會被 收在 Pareto 解集中。
圖 5 GPSIFF 之示意說明圖[46]
同樣的最小化問題,在圖 5 中點上的數字為適應值 c。以 A 為例,其 c =12,™ 是未被支配解 ˜ 是被支配解,p=3,q=2,所以適應值為 13。
3.3.2 演算法流程
智慧型多目標演算法之流程,其步驟詳細敘述如下:
步驟一:(初始化) 亂數產生起初使用的族群數量 Npop個染色體以 及兩個空的優秀基因集合,一個是 E;一個是 E’。
步驟二:(評估初始值) 計算族群裡全部染色體的兩項目標函數值,
並藉由 GPSIFF 分配每條染色體一個評估值。
步驟三:(更新優秀基因集合) 將未被支配(non-dominated)的染色 體同時丟入 E 和 E’,然後清空 E’。考量 E 中的所有染 色體,將被支配(dominated)的染色體移除。若 NE的數量 大於原本所設定數量則將從中亂數去除超過的部分。
步驟四:(挑選) 從族群裡用 binary tournament selection 挑選出 Npop-Nps個染色體,並從 E 中亂數挑選出 Nps個染色體形 成一組新的族群。其中 Nps=Npop×ps,若 Nps > NE,則令 Nps=NE。
步驟五:(重組) 藉由 Intelligent Gene Collector (IGC)運作從 Npop× pc選擇親代。每次 IGC 皆是由 OA 重組因子(副產物)找 出未被支配的染色體以及兩個子代加入至 E’。
步驟六:(突變) 根據 pm對整個族群進行突變機制
步驟七:(終止條件) 假設已滿足停止條件即可停止演算,反之回 到步驟二。