【轉】帶約束的多目標優化進化算法綜述


帶約束的多目標優化進化算法綜述

覺得有用的話,歡迎一起討論相互學習~

我的微博我的github我的B站

————————————————
版權聲明:本文為CSDN博主「街燈下的哥斯拉」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/a1920993165/article/details/111239813

約束優化進化算法綜述

1.摘要

約束優化進化算法主要研究如何利用進化計算方法求解約束優化問題,是進化計算領城的一個重要研究課題.約束優化問題求解存在約束區域離散、等式約束、非線性約束等挑戰,其問題的本質是,如何處理可行解與不可行解的關系才能使得算法更高效.首先介紹了約束優化問題的定義;然后,系統地分析了目前存在的約束優化方法;同時,基於約束處理機制,將這些方法分為罰函數法、可行性法則、隨機排序法、ᴈ-約束處理法、多目標優化法、混合法等 6 類,並從約束處理方法的角度對約束優化進化算法的最新研究進展進行綜述;最后,指出約束優化進化算法需進一步研究的方向與關鍵問題.

2.介紹

  1. 罰函數法通過添加懲罰因子的方式將約束優化問題轉化為無約束優化問題,是最為傳統的約束處理方法之一,該類方法的不足在於懲罰參數的選取比較困難
  2. 可行性法則是 Deb 提出的一種約束處理方法,其將可行解和不可行解分離處理,並且可行解的適應度函數值優於不可行解的適應度函數值,因此,該方法使得不可行解難以進入種群,這樣就使得該方法在求解最優解位於可行域邊界上的約束優化問題時可能存在問題
  3. 隨機排序法采用冒泡排序的方法來處理約束優化問題;
  4. ᴈ-約束處理法通過設定ᴈ值將約束划分為不同的區間,個體之間的比較在不同的約束區間內采用不同的處理方法,該方法是對可行性法則的擴展,它以犧牲時間為前提,對搜索空間進行充分搜索
  5. 多目標優化法根據將約束優化問題轉換為多目標優化問題,並采用多目標優化技術來處理問題,然而,沒有引入偏好的多目標優化方法可能並不像人們所想象的那樣高效
  6. 混合法求解約束優化問題是近年來研究的熱點,該方法通過將不同的約束處理機制相結合的方法來處理約束優化問題.

3.約束處理方法詳細介紹

3.1罰函數法

靜態罰函數

  1. Constrained optimization via genetic algorithms. Simulation Trans. of the Society for Modeling & Simulation International----1994,該方法將約束違反的程度分為多個等級,不同等級采用不同的懲罰系數 ,約束違反程度越大,則違反等級越高,對應的懲罰力度也就越大.分級處理機制相對單一數值法更為合理,但該方法需要一定的先驗信息來確定各等級的懲罰系數值,另外還產生了較多需要調節的參數.這類方法實現相對簡單且多用於求解簡單的約束優化問題,不足之處在於它的通用性,因為它對每一類問題,都需要進行懲罰系數的反復實驗,尋找到合適的懲罰系數.

動態罰函數

  1. On the use of non-stationary penalty functions to solve nonlinear constrained optimization problems with GA’s----1994,該方法不需要設定懲罰系數值,但其他參數仍需要設定.與靜態罰函數法相比,雖然動態罰函數法在性能方面上更具優越性,但是找到理想的懲罰系數動態變化規律(初始化懲罰系數的選取)仍然是一個棘手的問題

死亡罰函數

  1. Problem-Independent handling of constraints by use of metric penalty functions----1996,拒絕不可行解

退火罰函數法

  1. Evolutionary optimization of constrained problems----1994,懲罰系數隨着溫度的降低而不斷增加

隔離遺傳算法

  1. A segregated genetic algorithm for constrained structural optimization----1995,通過兩個不同的懲罰系數來對群體中的個體進行評價,其旨在於在過大和過小的懲罰系數之間達到平衡

協同罰函數法

  1. Use of a self-adaptive penalty approach for engineering optimization problems----2000,包括兩個群體,第 1 個群體
    中個體表示問題的解,第 2 個群體的個體為懲罰系數的集合,利用它來計算第 1 個群體中個體的適應度值
  2. An effective co-evolutionary differential evolution for constrained optimization----2006,包括兩個群體,第 1 個群體中個體表示問題的解,第 2 個群體的個體為懲罰系數的集合,利用它來計算第 1 個群體中個體的適應度值

自適應罰函數

  1. New results using adaptive segregational constraint handling----2002,采用進化策略作為搜索框架,為保持種群中可行解與不可行解的平衡,始終允許在種群中保留不可行個體以增強全局搜索能力,算法根據種群中可行解在整個種群中所占的比例來動態調整懲罰系數
  2. Self-Adaptive fitness formulation for constrained optimization----2003,一種自適應適應值表示法,該方法將懲罰分為兩個階段進行,都是通過提取種群中的邊界個體的信息來確定懲罰強度
  3. A genetic algorithm for solving multi-constrained function optimization problems based on KS function----2007,一種遺傳算法求解多約束優化問題,它利用 KS 函數的融合特征將多個約束條件融合成一個約束條件,從而減少了靜態罰函數法中懲罰系數數量過多的問題和避免了約束條件權重分配問題
  4. A rough penalty genetic algorithm for constrained optimization----2013,一個高效的遺傳算法
  5. Adaptive penalty and barrier function based on fuzzy logic----2015,一個高效的遺傳算法
  6. A rough penalty genetic algorithm for constrained optimization. Information Sciences----2013,一種自適應懲罰函數的方法,該方法采用當前種群中可行解的比例來自適應地控制懲罰的強度.與其他方法不同的是:該方法除了引入距離項(把種群中的個體映射到二維坐標系內的點,而該點到坐標原點的距離)之外,還為了找到最佳不可行解,對不可行解采用雙懲罰.該方法旨在於先挖掘出種群中具有較好質量的不可行解,然后再引導種群向可行域或者最優解逼近
  7. Variants of an adaptive penalty scheme for steady-state genetic algorithms in engineering optimization. Engineering Computations----2015,一種自適應懲罰函數方法,並將其和穩態遺傳算法相結合,用於解決工程優化問題.該方法為每個約束條件分配各自的懲罰系數,這樣來實現約束條件之間的平衡.在進化的過程中,該方法根據種群狀態信息(比如種群中是否存在可行解和每個約束的違反程度)自適應地決定每個約束條件的懲罰系數的變化
  8. A modified covariance matrix adaptation evolution strategy with adaptive penalty function and restart for constrained optimization----2014,一種自適應罰函數法,並將其與改進的自適應協方差矩陣進化策略(CMA-ES)結合起來,得到了一個新的約束優化算法.在自適應罰函數法中,懲罰系數隨着每一代群體中全部不可行個體的約束違反信息的變化而變化
  9. A CMA-ES-Based 2-Stage memetic framework for solving constrained optimization problems----2014,一種兩階段的文化基因框架:第 1 階段將約束優化問題變成無約束優化問題進行處理,其目標是為局部搜索階段找到好的初始個體,為了實現這個目標,采用自適應懲罰 CMA-ES 作為全局搜索策略;第 2 階段使用局部搜索策略(比如單形法)來進一步改善解的質量,其目標是為了找到全局最優解.該方法用於解決規模大的約束優化問題具有很好的優化效果.
  10. Mukherjee S. A fuzzy rule-based penalty function approach for constrained evolutionary optimization----2014,一種模糊懲罰法(fuzzy rule-based penalty function approach,簡稱 FRSP),並將該模糊懲罰法與差分進化算法結合,用來解決約束優化問題,它具有兩個懲罰項,其中:第 1 項懲罰采用了基於條件法則的 Mamdani 模糊推理系統,該模型事先掌握了自適應函數所有必需的條件(作為條件庫),然后通過模糊邏輯控制(FLC),將個體的約束違反程度、目標函數和種群中可行解的比例作為模糊輸入,經過模糊推理過程后,最終得到模糊輸出量,即懲罰值;第 2 項懲罰項是根據種群中可行解所占百分比來動態地平衡目標函數和約束條件
  11. Constraint Handling in Multiobjective Evolutionary Optimization----2008,跟蹤當前人口中可行解決方案的百分比,以確定要添加的懲罰金額。 一小部分可行的個人導致更大的懲罰,而更大的百分比產生一個小的懲罰因素。 該技術能夠從可行和不可行的解中平衡信息。

3.2可行性法則

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

3.3隨機排序法

在這里插入圖片描述

3.4ᴈ約束處理法

在這里插入圖片描述

3.5多目標優化法

  1. Constrained optimization by multi-objective genetic algorithm----1997,提出了 COMOGA(constrained optimization by multi-objective genetic algorithm)算法,在該算法中,約束優化問題被視作約束滿足問題或無約束優化問題來處理.當約束優化問題被視為約束滿足問題時,目標函數被忽略,此時,個體之間的比較由 Pareto 排序決定,Pareto 排序基於約束違反來定義.當約束優化問題被視為無約束優化問題時,約束條件被忽略,此時,個體之間的比較由目標函數決定.
  2. Treating constraints as objectives for single-objective evolutionary optimization----2000,基於向量評估遺傳算法求解約束優化問題.將種群分成相等規模的子種群,每個子群對應一個約束條件,其中,某個子群體將目標函數作為適應度函數來評價個體,其余的子群體將相應的單個約束條件作為適應度函數來評價個體,其目的在於:每個子群體試圖找到對應約束條件的可行解,通過聯合所有的子種群,該方法找到所有約束條件下的可行解.該算法的主要缺陷在於:子群體的個數會隨着約束條件的個數呈線性增加;另外,如何確定子群體的合理規模有待進一步研究.
  3. A generic framework for constrained optimization using genetic algorithms----2005,提出了一種包含兩個階段的通用框架來處理約束問題:第 1 階段,當種群里沒有可行解時,該方法僅使用約束違反程度選擇個體;當種群中出現可行解時(第 2 階段),原來的約束優化問題轉化為一個雙目標優化問題,其中,一個目標是原來的目標函數,而另外一個目標則是約束違反程度,之后,再使用 Pareto 排序的方法來選擇個體.
  4. Multi-Objective optimization and hybrid evolutionary algorithm to solve constrained optimization problems. IEEE Trans. on Systems, Man, and Cybernetics----2007,提出了一種 HCOEA(hybrid onstrained optimization evolutionary algorithm)算法,在該算法中,將約束問題轉化為雙目標優化問題,采用帶小生境操作的遺傳算法框架,並基於非支配解的概念進行解之間的替換,但只有子代個體在支配父代個體時,才以概率 1替換父代個體.同時,算法除了引入類似於 MOEA中不可行解的存儲和替換機制外,還引入一種聚類分割和多個父代交叉的局部搜索技術,根據搜索空間中各個個體之間的相互距離,將種群聚類為 M 個子種群,各子種群通過內部交叉產生新個體,進而組合新種群.
  5. A multiobjective differential evolution algorithm for constrained optimization----2008,提出了一種多目標差分進化算法,該算法引入正交設計法用於種群的初始化以及基於正交的交叉算子來提高算法的局部搜索能力,並采用差分進化作為搜索機制.在該算法中,比較父代個體和子代個體時先優考慮約束條件.如果子代個體 Pareto 支配父代個體,則立即用子代個體取代父代個體.如果兩個比較個體在約束條件上存在非支配關系,則再考慮目標函數和約束違約度,被支配的父代個體則立即被子代個體取代.之 后,將非劣的子代個體與父代個體組成一個混合群體,然后選取其中的非劣個體進入下一代.
  6. Constrained optimization evolutionary algorithms----2009,對該類算法進行了系統的分析與論述
  7. Multiobjective optimization algorithm for solving constrained single objective problems----2010,提出了一種 sp-MODE(the multiobjective differential evolution algorithm with spherical pruning)法來解決高約束優化問題,該方法基於雙重選擇策略.在每一次迭代,首先從種群§中隨機選擇 N 個個體組成的子群體通過 DE 進化產生子代群體(Pn)后,然后利用 Pareto 排序的方法從聯合群體(Pn ∪D)中找出所有的非劣個體,最后采用球形修剪技術從非劣解集中篩選出每個球形網格內具有較小約束違反程度的非劣個體(D).同時,球形裁剪技術維持了種群的多樣性.當產生一個新的個體時,Pareto 占優用於比較該個體與其父代個體的優劣
  8. Performance of infeasibility empowered memetic algorithm for CEC 2010 constrained optimization problems----2010,針對很多約束優化問題的最優解位於可行域邊界的特點,提出了 IDEA ( infeasibility driven evolutionary algorithm) 法.在該方法中,約束優化問題被轉化為兩個目標的多目標優化問題來處理:第 1個目標為原目標函數 f(x);另外一個目標為基於種群成員之間的個體相對約束違約度 ( 根據每個約束條件的違反程度,將種群中的每個個體從低到高進行排序;同時,約束違反度越低的個體分配的等級越高 (可行個體對應的等級為 0) ,個體相對約束違約度是所有約束條件上對應等級的總和) .在進化的過程,IDEA 首先根據個體的可行性將種群划分成兩個群體(可行解集和不可行解集),並分別對該兩個群體使用 Pareto 排序過程的方法來定義個體的等級,然后再按一定比例 u(用戶定義),分別從兩個群體中選擇個體組成下一代種群.
  9. Combining multiobjective optimization with differential evolution to solve constrained optimization problems----2012,提出 CMODE(combining multiobjective optimization with differential evolution)算法,該算法將多目標優化策略與差分進化算法結合來處理約束問題.CMODE 首先從種群中隨機選擇 n 個個體組成的群體經過差分進化的變異、交叉操作產生子代群體,然后從子代群體找出全部的非劣個體;接着,隨機替換父代群體中的任意一個被支配個體(如果該劣於個體存在).此外,該方法采用一種不可行解存檔和替換機制,將每一代種群中好的不可行解存檔起來,用於在后續進化中隨機地替換種群中的個體.一方面,該機制保證了種群的多樣性,使算法不會過早收斂到某些可行的局部最優;另一方面,該機制有利於對邊界區域進行局部搜索.
  10. A dynamic hybrid framework for constrained evolutionary optimization----2012,用來求解約束問題.DyHF 根據當前種群中可行解的比例自發地實行全局搜索模型或者局部搜索模型.局部搜索模型首先將種群通過聚類方法划分成多個群體,然后分別從每個子代群體中找出所有的非劣個體,最后選擇一個非劣個體隨機地替換其父代群體中一個劣於個體(如果該個體存在),使種群從不同方向迫近可行域.全局搜索模型是從整個種群的角度利用 Pareto 優劣關系比較個體,選擇父代個體和子代個體中的優勝者.
  11. Biased multiobjective optimization for constrained single-objective evolutionary optimization----2014,提出了一種有偏支配的約束處理技術,使用該有偏支配進行個體的比較.假設第 k 個目標函數 fk(x)是偏向的目標函數(有偏目標函數),有偏支配的定義
  12. A dual-population differential evolution with coevolution for constrained optimization----2014,提出了一種雙種群協同進化差分算法,它把原來的約束問題轉變成一個雙目標優化問題,其 中,第 1 個目標是目標函數,第 2 個目標是約束違約度.在進化過程中,為了分別對待這兩個目標,整個種群根據個體的可行性被划分成兩個子群體,每個子群體優化對應的目標.同時,該文還引用了一種信息共享機制促進兩個子群體之間搜索信息的相互交流,旨在讓不可行個體變成可行個體並尋找到最優解.

3.6混合法

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述
在這里插入圖片描述

4.亟待解決的問題

雖然約束優化進化算法已經取得了一定的成果,但是仍有很多問題需要解決,主要是:
(1) 等式約束處理
目前,約束優化進化算法對於等式約束優化問題的約束效果並不令人滿意,難以收斂算法最優解.目前主要采用動態縮小閾值值來提高算法的收斂性能,但面對非線性等式約束、離散等式約束等問題,依然具有較大的挑戰.
(2) 離散約束優化問題
在該類約束優化問題中,問題的可行區域是離散的,這使得算法容易陷入某個可行區域中的最優解,難以獲得全局最優解.如何使得搜索能穿梭於各個可行區域間,是該問題的主要挑戰.多種群、分布估計可能是解決該
問題的可行方案之一.
(3) 約束條件與優化目標之間的不平衡
約束優化不僅要求所得解的質量,同時要求滿足約束條件.對於有些情況,如過分強調滿足約束條件,將有可能導致搜索偏離性能好的區域;相反,如果過分強調解的質量,則有可能導致搜索空間偏離可行域.因此,如何根據問題的先驗信息和從搜索過程中得到的知識來有效協調約束與目標之間的不平衡非常重要.
(4) 可行解與不可行解的分別對待
約束優化問題相對於普通約束優化問題,其本質區別在於如何對待不可行解攜帶的信息.在早期的研究中,對該問題的研究取得了較大的進展,但近年來對該基本問題並沒有取得實質性的進展.這主要是由於近年來進化算法的搜索效率得到了快速的發展,彌補了約束處理的不足.模糊理論、粗糙理論、ᴈ約束處理等技術可能是該問題的研究方向.
(5) 普適的約束處理技術
目前,不同的約束處理技術對應不同的隨機搜索技術有着不同的搜索效率.無免費的午餐定理告訴我們,沒有任何算法能對所有問題都高效.但我們能不能設計一種對大多數類別算法都高效的約束處理機制?這將會是未來研究的方向之一.
(6) 自適應約束處理技術
正如前面所說,不同的約束處理技術對應不同的隨機搜索技術有着不同的搜索效率.設計一種針對不同的搜索狀態而采用不同的約束處理機制,自適應地選擇不同的約束處理技術可能是可行的方案之一.另外,超啟發式框架也具有一定的可行性.

5.總結

本文對受約束的多目標問題研究現狀進行了詳細總結,並重點分析了6大類約束處理方法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM