• 沒有找到結果。

第二章 文獻探討

2.2 族群式搜尋法

在族群式搜尋法方面也有許多合併式演算法。Ishibuchi 和 Murata [25] 首次將

混合基因演算法(hybrid genetic algorithm)使用於解決多目標最佳化問題。他們

將variable weights(VW)方法 [26] 用於提出的 multi-objective genetic local search

(IM-MOGLS)演算法中:隨機生成一組權重,用於親代選擇中,並透過此權重

控制子代(offspring)的區域搜尋方向。除此之外,在基因搜尋(genetic search)

過程中也將非凌越解集合的一部分最佳解放回族群中,作為保留精英的策略。

Ishibuchi 等人 [27] 驗證基因搜尋與區域搜尋之間平衡的重要性;除此之外,將

IM-MOGLS 演算法改良,在區域搜尋階段挑選出較佳的解,並只針對這些解進行

區域搜尋,同時使用機率對搜尋進行控制,以減少區域搜尋的運算負擔。

Chang 等人 [28] 提出 gradual-priority weighting(GPW)方法,其特色為在目

標空間中均勻地生成許多權重,即在搜尋過程中,族群朝著同一個搜尋方向前進,

而此方向在每一代(generation)皆不同,藉此讓搜尋剛開始朝向某個目標,而逐

漸轉為向另一個目標靠近。除此之外,將 GPW 方法套用至混合基因演算法中,

11

提出 GPWGA 演算法並與 VW 方法比較;實驗結果顯示,平均而言 GPWGA 演

算法可在較短的運算時間內找到較多非凌越解。

Chang 等人 [29] 結合 SPGA 演算法 [30] 與 mining gene structure(MGS),

提出 MGSPGA 演算法。在 MGSPGA 演算法中,將族群切割成數個子族群

(sub-population),該子族群透過分享相同的權重而有相同的搜尋方向,而最後

數個子族群會重新結合為一個新的族群;除此之外,藉由加入由 MGS 產生的人

工染色體(artificial chromosome)加速族群的收斂。

Rajendran 和 Ziegler [31] 將蟻群最佳化演算法(ant colony optimization

algorithm)用於求解多目標定序流線型工廠排程問題,使用 20 種根據不同參數與

JIBIS、JIBSS 兩種改善機制組合而成的 MOACA 演算法求得一條柏拉圖前緣。其

特 色 為 在 目 標 空 間 中 設 置 多 組 搜 尋 方 向 , 針 對 每 個 方 向 不 斷 更 新 費 洛 蒙

(pheromone),並由費洛蒙訊息建構出新的解。

Chang 等人 [32] 將 MOEA/D 演算法用於解決 MOPFSP,為了得到較佳的結

果,在兩個目標的定序流線型工廠排程問題中,其分解方法採用線性加權法將原

本問題切割為許多子問題;同時,為了維持多樣性,在搜尋過程中的最多只能取

代一個鄰近解。Alhindi 和 Zhang [33] 將 MOEA/D 演算法與禁忌搜尋方法結合,

提出 MOEA/D-TS 演算法。其特色為利用 Jin 等人 [34] 提出的兩種區塊特性

(block property)結合禁忌搜尋以避免子問題陷入區域最佳解。

12

2.2.2 柏拉圖凌越式演算法

Arroyo 和 Armentano [35] 提出 MOGLS 演算法,記作 A-MOGLS。其特色是

利用 NSGA-II 演算法中的非凌越排序(non-dominated sorting)與密集度距離

(crowding distance)計算族群中所有個體的適應值(fitness values),以便在親代

選擇中使用輪盤法(roulette wheel method);除此之外,使用 IM-MOGLS 演算法

中的保留精英策略,在基因搜尋中把一部分精英放入族群中;同時,每經過固定

代數,將子代中非凌越解的部分取出進行區域搜尋,並保留非凌越解放回子代

中。

Pasupathy 等人 [36] 提出 PGA-ALS 演算法,他們也結合 NSGA-II 演算法,

利用非凌越排序方法作為優先選擇依據,對於排序相同的個體,則以密集度距離

作為次要選擇依據;除此之外,族群初始化的部分加入四個由 NEH 策略與

Rajendran 策略生成的初始解,並使用 JIBIS、OSSBIS、JIBSS 改善機制改良;同

時,在決定下一代族群的部分,其中一半由親代(parents)與子代透過非凌越排

序與密集度距離挑選取出,另外一半則從剩餘個體隨機挑選。

Yandra 和 Tamura [37] 加入異構程序(heterogeneous procedure),提出 hMGA

演算法,改善利用NSGA-II 演算法在多目標定序流線型工廠排程問題上可能會過

早收斂的問題。同樣也將親代與子代進行非凌越排序與計算密集度距離;然而,

在決定下一代族群之前,先透過異構程序,將重複的個體去除。

Cheng 等人 [38] 將 PESA-II [39] 與 NSGA-II 兩種演算法結合,提出一種混

13

合式基因演算法,利用PESA-II 演算法中區域式(region-based)的選擇機制降低

親代選擇的競爭壓力,並使用NSGA-II 演算法中非凌越排序的概念評估區域的適

應值。

Lin 和 Ying [8] 提出 BMSA 演算法,其特色為將模擬退火法與多重登山法

(multi-start hill climbing strategy)結合,是一種族群式搜尋法。利用多個初始解

改善單一解在模擬退火法搜尋過程中可能陷入區域最佳解的缺點,當搜尋過程中

某個個體凌越其它所有個體時,則更新其它個體的起點;透過這個方法,他們發

現了更多柏拉圖最佳解。

Li 和 Li [40] 提出 MOLSD 演算法,為基於 MOMAD [41] 演算法的改良方法,

MOMAD 演算法的特色為設置許多權重決定搜尋方向,並針對每個方向先進行擾

動(perturbation),接著進行區域搜尋,同時透過 PLS 搜尋法將非凌越解集合中

的每個解改良,而MOLSD 演算法交換擾動與區域搜尋的順序;除此之外,將非

凌越解集合中挑選出精英(elitism),對於一般解與精英解進行不同強度的擾動,

同時加入重新啟動機制避免搜尋陷於區域最佳解,並且在PLS 搜尋法中使用強度

較強的擾動方式搜尋鄰近解(neighborhood solutions)。

除了合併演算法與柏拉圖凌越式演算法,還有一些演算法將兩種方法結合。

Li 和 Wang [42] 提出一種混合基因演算法,結合 quantum-inspired GA(QGA)與

permutation-based GA(PGA)兩種方法。QGA 方法透過線性加權法計算個體適

應值,而PGA 透過非凌越排序計算個體適應值;實驗結果顯示,將 QGA 與 PGA

14

兩種方法結合比只使用PGA 方法有更好的效能。

Chiang 等人 [9] 提出 NNMA 演算法。NNMA 演算法是一種與 NSGA-II 結合

的文化基因演算法(memetic algorithm),搭配一種基於 NEH 策略的區域搜尋,

其區域搜尋方法與 IG 的拆解、組合階段相似,差異之處在於除了保留非凌越解

的方法,還提出隨機選擇優先目標(random objective)、分散式線性加權法(linear

weighted sum with distributed weights)兩種保留策略。

15

線性加權法(linear weighted sum)、Tchebycheff、penalty-based boundary intersection

(PBI)三種 [5]。而在過往文獻中,用來求解多目標定序流線型工廠排程問題的

相關文件