• 沒有找到結果。

第三章 強化親代選擇機制之平行化演算法 ESP-NSGA-III

3.2 改進親代選擇機制

在 NSGA-III 中,隨機選擇兩個個體後再使用競爭法來選擇親代,但此方法 對於族群分布中,個體數量多的區域較為有利,因為各個個體被選擇到的機率是 相同的,而個體數量多的區域,表示該區域的個體數量佔總族群數量的比重較重,

因此該區域有個體被選擇到的機率相對於其他區域高。

25

3.2.1 基於參考點的階層式親代選擇機制 (MS-RPU)

為了改善上述的隨機選取機制,我們融合 NSGA-III 中超平面與參考點的概 念至新版親代選擇機制中。首先,為了確保各參考點所代表的區域被選擇的機率 均為相等,給予各參考點相同的選取機率,也就是 1/H,在選擇完參考點後再去 選擇此參考點投影點集中的個體,重複一次之後使用競爭法選擇較優的個體。

此機制流程如下:

(1) 隨機選取一個參考點。

(2) 隨機選取 (1) 所挑選之參考點之投影點集中一個個體。

(3) 重複步驟 (2) 一次後,使用競爭法比較所選取的兩個個體之優劣,較好 的個體則被選為親代。

在此機制中,與原版的選擇機制相異,族群中的個體被選擇到的機率不為相 等,以期讓各參考點所代表的區域皆有相同機率參與繁殖。

我們將此機制稱為 Reference Point with Uniform probability Mating Selection,

簡稱為 MS-RPU。

3.2.2 基於參考點的階層式親代選擇機制改進版 (MS-RPW)

為了加強族群的分散度,我們改進 3.2.1 中所提到的親代選擇機制。假設在 經過交配後所產生的子代,其在目標空間上的分布,會與親代相近,因此,當一 區域的個體數量較其他區域少時,我們應該加強此區域參與繁殖的機會。

26

與 3.2.1 所提到的方法相同,此改進版同為一階層式的選取方式,先選擇完 參考點,再選取此參考點的投影點集中的個體。而為了加強個體數量較少的區域 被選擇到的機率,我們使用輪盤法,給予欠乏值高的參考點較大的被選取機率,

再依據此機率選擇參考點,之後則再隨機選取該參考點之投影點集中的個體。

此機制流程如下:

(1) 使用輪盤法給予欠乏值高的參考點較大的被選取機率。

(2) 依照 (1) 所制定之機率選取一個參考點。

(3) 隨機選取 (2) 所挑選之參考點之投影點集中一個個體。

(4) 重複步驟 (3) 一次後,使用競爭法比較所選取的兩個個體之優劣,較好 的個體則被選為親代。

我們將此機制稱為 Reference Point with roulette Wheel Mating Selection,簡 稱為 MS-RPW。

3.2.3 強化劣勢參考點之親代選擇機制 (MS-WS)

在 3.2.1 與 3.2.2 的機制中,我們使用各參考點的投影點集中之個體數量來 判斷各區域的分散程度,但當族群演化至一定代數時,族群的分散程度漸趨均勻,

各投影點集的個體數事實上並不會有所差異,此時該機制就會退化成原本 NSGA-III 的隨機選取機制,因此,我們需要使用其他的方法來判斷各區域間的 優劣程度。

27

NSGA-III 使用 ASF 做為評判個體是否靠近該參考點方向的依據,因此我 們使用此機制來評斷各參考點所代表區域之個體分布相較於整個族群的好壞。首 先,計算各參考點的投影點集中之個體在該參考點方向上的 ASF 值,並選取最 小值來代表該參考點,若有投影點集中並無存在任何個體,則此參考點之最小

ASF 值以 0 做代表。接著將各參考點的最小 ASF 值相加後取平均數,得到

ave_ASF,若某個參考點的最小 ASF 值大於此平均值,我們則視此區域的個體 分布較整體族群差,需要優先改善,因此我們將只會選擇這些較差區域中的個體 做為親代,透過密集地交配來強化這些區域的發展。

此機制流程如下:

(1) 計算各參考點投影點集中的個體與其參考點方向之 ASF 值。

(2) 將所有參考點的最小 ASF 值加總平均。

(3) 各參考點之最小 ASF 值若大於 (2) 所計算的平均值,則視為較差的參 考點。

(4) 隨機選擇一個 (3) 所分類出的較差參考點,再隨機選擇該投影點集中的 一個個體。

(5) 重複 (4) 一次,再使用競爭法選出親代。

我們將此機制稱為 Weak region-based Mating Selection,簡稱為 MS-WS。

28

3.2.4 鄰居親代選擇機制 (MS-NB)

Ishibuchi 等人 [25] 提出,將目標空間中較為相近的個體互相交配,能夠加 強演算法的搜尋能力;在 NSGA-III 中,原本的親代隨機選取機制並不能保證兩 親代在目標空間中距離的遠近,因此我們嘗試在 NSGA-III 加入親代鄰居選擇的 概念。

在鄰居親代選擇機制裡,第一個親代的選擇方式沒有嚴格限定,可使用原本

NSGA-III 的隨機選擇機制,或是 3.2.1~3.2.3 中所提出的任何方法。而在選完第 一個親代之後,為了能讓此個體能與目標空間中相近的個體做交配,我們選取此 個體所屬的參考點在目標空間中與其歐幾里得距離最近的另外 T 個參考點的投 影點集中之個體做為可能的交配對象,與 3.2.1 中的方法相同,隨機選取此 T 個 參考點之一,再隨機選擇該參考點之投影點集中的個體做為第二個親代。

此 鄰 居 選 取 機 制 可 保 證 兩 親 代 個 體 在 目 標 空 間 中 的 距 離 相 近 , 但 在

NSGA-III 中使用此機制時,有可能發生選完第一個親代後,其鄰近的 T 個參 考點之投影點集中皆無個體的狀況,此時我們則回歸原本選取第一個親代的機制,

來選擇第二個親代個體。

此機制流程如下:

(1) 不限方法選擇第一個親代。

(2) 隨機挑選第一個親代所屬參考點之最近的 T 個參考點之一。

(3) 隨機選擇 (2) 所選取參考點的投影點集中一個個體做為第二個親代。

29

我們稱此機制為 Neighborhood-Based Mating Selection,簡稱為 MS-NB。

3.2.1~3.2.3 中各方法與鄰居親代選擇機制並無衝突,可以合併使用,我們將 會在第四章的實驗中一併測試各種組合間的求解效能。