国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法

這篇具有很好參考價(jià)值的文章主要介紹了[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

筆者最近在學(xué)習(xí)有關(guān)多目標(biāo)優(yōu)化的內(nèi)容,并對(duì)內(nèi)容進(jìn)行一些整理。這篇文章算是筆者的一篇個(gè)人學(xué)習(xí)筆記,也希望能對(duì)他人提供一定的幫助,若有不足之處,也歡迎指正和建議。

注:本文中所舉例子均為最小化問(wèn)題。

一.多目標(biāo)優(yōu)化的基本概念

?(1)? 多目標(biāo)優(yōu)化問(wèn)題(Multiobjective optimization problem,MOP)

? ? ? ? ? ?一個(gè)多目標(biāo)優(yōu)化問(wèn)題可以用下面的數(shù)學(xué)形式來(lái)表述:

????????????????????????????????[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法

? ? ? ? ? 其中,x為決策向量,所在空間稱為決策空間;F(x)為目標(biāo)向量,所在空間稱為目標(biāo)空間,由m個(gè)目標(biāo)函數(shù)組成,在多目標(biāo)優(yōu)化中,m一般為2或3,相對(duì)應(yīng)的,單目標(biāo)優(yōu)化的m=1.

(2)? ?支配(Dominance)?

? ? ? ? ?對(duì)于兩個(gè)解x與y,若對(duì)于任意i=1,2,...,m,均有fi(x)<=fi(y),且存在i,使fi(x)<fi(y),?則稱x支配y,記為。

? ? ? ? ?簡(jiǎn)單記憶方法:全部小于等于,至少1個(gè)小于。

?(3)? ?Pareto最優(yōu)

? ? ? ? ?Pareto最優(yōu)原為經(jīng)濟(jì)學(xué)中的一個(gè)概念,在多目標(biāo)優(yōu)化中,由于對(duì)于不同目標(biāo)的優(yōu)化通常是互相矛盾的,故引入該概念。在多目標(biāo)優(yōu)化中,若對(duì)于解x*,當(dāng)且僅當(dāng)x*不被任何其他解支配,稱x*為Pareto最優(yōu)解,由所有Pareto最優(yōu)解構(gòu)成的集合,稱為Pareto集(Pareto Set),記為PS。相對(duì)應(yīng)的,PS中所有解在目標(biāo)空間中對(duì)應(yīng)的目標(biāo)函數(shù)值的集合稱為Pareto前沿(Pareto Front),記為PF。

? ? ? (注意,Pareto最優(yōu)的概念僅是說(shuō)該解不被其他解支配,并不是說(shuō)該解可以支配其他所有解。)

二.NSGA-II

(1) NSGA-II簡(jiǎn)介

? ? ? ? NSGA-II,全稱為Non-dominated Sorting Genetic Algorithm-II,即非支配排序遺傳算法,是一種基于支配的多目標(biāo)優(yōu)化算法。從其全稱我們可以看出,NSGA-II本質(zhì)上是一種遺傳算法,其選擇、交叉、變異算子均與遺傳算法相同。那么,NSGA-II相較于普通的GA,有什么不同呢?筆者認(rèn)為,NSGA-II主要多了兩個(gè)部分,其一就是其算法名中提到的,非支配排序其二則是擁擠距離的定義以及基于其的精英保留策略。下面,我們就分開(kāi)來(lái)介紹下這兩個(gè)部分。

?(2) 非支配排序

? ? ? ? ? ? ? ? ? ? ? ??[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法

? ? ? ?非支配排序的原理可以用這幅圖來(lái)進(jìn)行解釋,如圖,對(duì)于一整個(gè)種群,首先選出當(dāng)前的Pareto最優(yōu)解,記為支配等級(jí)1;將支配等級(jí)1中的解排除后,再?gòu)氖S喾N群中選出Pareto最優(yōu)解,記為支配等級(jí)2;以此類(lèi)推,直到整個(gè)種群被分級(jí)完畢。在各支配等級(jí)中,每個(gè)解和當(dāng)前等級(jí)中的其他任意解均互不支配,支配等級(jí)較前(數(shù)字較?。┑慕庵渲涞燃?jí)較后(數(shù)字較大)的解。這就是非支配排序。

? ? ? ?在實(shí)際操作過(guò)程中,由于發(fā)現(xiàn)最初的非支配排序流程時(shí)間復(fù)雜度較高,為,其中M為目標(biāo)數(shù)目,N為種群大小。因此,本文提出了一種快速非支配排序方法,將時(shí)間復(fù)雜度從降為了。其流程如下:

? ? ? 1.對(duì)于種群P中的所有個(gè)體p,統(tǒng)計(jì)支配其的解的個(gè)數(shù)和其支配的個(gè)體的集合。統(tǒng)計(jì)結(jié)束后,將當(dāng)前的個(gè)體全部加入集合中,并計(jì)其支配等級(jí)為1。

? ? ??2.??

? ? ? ? ? ? ? ??

? ? ? ? ? ? ? ? ? ? ?令(相當(dāng)于消除支配等級(jí)1的解對(duì)其的支配,即相當(dāng)于將支配等級(jí)1的個(gè)體“移出”當(dāng)前種群)。

? ? ? ? ? ? ? ? ? ? ??if?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(將q加入F2中)

? ? ? ? ? ? ? ? ? ? ? end

? ? ? ? ? ? ? end

? ? ? ? end

? ?3.對(duì)中的個(gè)體,計(jì)其支配等級(jí)為2,并重復(fù)2中的操作,以此類(lèi)推,直到整個(gè)種群排序完畢。

(3)? 擁擠距離

? ? ? ? ?除了非支配排序外,NSGA-II還定義了擁擠距離的概念,我們同樣用圖來(lái)進(jìn)行解釋:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法

? ? ? ?如圖,對(duì)于二目標(biāo)問(wèn)題,對(duì)于當(dāng)前的解i(圖中黑點(diǎn)i),擁擠距離定義為其相鄰解i-1和i+1所形成的四邊形的周長(zhǎng),注意,在作圖時(shí),這個(gè)四邊形中不應(yīng)包含除i外的其他解。由此可見(jiàn),對(duì)于一個(gè)解,其擁擠距離越大,這個(gè)解周?chē)驮较∈?,選取這樣的解,對(duì)于保持種群的多樣性有益。對(duì)于邊界解(圖中黑點(diǎn)0和l),我們計(jì)其擁擠距離為無(wú)窮。

(4) NSGA-II流程

? ? ? ? 有了快速非支配排序和擁擠距離的概念,我們接下來(lái)就可以闡述NSGA-II的工作流程.

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法

? ? ? ?如圖是NSGA-II的簡(jiǎn)要流程,首先,對(duì)于當(dāng)前種群,我們使用遺傳算法的選擇、交叉、變異算子,產(chǎn)生與其個(gè)體數(shù)目相同的子代,將和合并,記為,并對(duì)進(jìn)行快速非支配排序,注意,此時(shí)的個(gè)體數(shù)目為2N(,各為N)。

? ? ? ?非支配排序完后,根據(jù)支配等級(jí)順序,依次將各等級(jí)個(gè)體加入下一種群[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法中,直至當(dāng)前等級(jí)個(gè)體不能全部放入為止。如圖中,F(xiàn)1、F2個(gè)體可以全部放入[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法,而F3不能全部放入。

? ? ? ?此時(shí),對(duì)當(dāng)前等級(jí)個(gè)體(圖中為F3)按照擁擠距離進(jìn)行排序,并將擁擠距離較大的個(gè)體依次加入下一種群[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法中,直到[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法填滿為止(個(gè)體數(shù)達(dá)到N)。此時(shí),將剩余的解全部淘汰。接下來(lái)的流程依次類(lèi)推,直到達(dá)到終止條件為止。

? ? ? ?通過(guò)對(duì)NSGA-II流程的闡述,我們可以看到,NSGA-II首先會(huì)將支配等級(jí)較前的個(gè)體加入當(dāng)前種群,這是算法對(duì)收斂性的保證;此外,NSGA-II還會(huì)對(duì)最后一層個(gè)體按照擁擠距離排序,優(yōu)先選擇擁擠距離較大的個(gè)體,即邊界解和密度較稀疏的個(gè)體會(huì)被優(yōu)先保留,這體現(xiàn)了算法對(duì)多樣性的保證。因此,NSGA-II算法可以同時(shí)做到對(duì)收斂性和多樣性的保證。

(5) NSGA-II的優(yōu)點(diǎn)與缺點(diǎn)

? ? ? ? NSGA-II的優(yōu)點(diǎn)正如上文提到,由于注意對(duì)邊界解的保留,所以其在解決一些極凸或極凹問(wèn)題時(shí)會(huì)較優(yōu)優(yōu)勢(shì),可以保留較多的邊界解。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法

? ? ? ? ? 如圖為NSGA-II對(duì)于極凸PF面的處理,可以看到,使用NSGA-II可以保留較多的邊界解。

? ? ? ? ? NSGA-II的缺點(diǎn)同樣很明顯,前文也有提到,NSGA-II是一種基于支配的多目標(biāo)優(yōu)化算法。而根據(jù)支配的定義,我們可以看到,當(dāng)多目標(biāo)優(yōu)化問(wèn)題的維度越大時(shí),我們?cè)诫y找到這種支配關(guān)系,甚至可能無(wú)法找到,從而使整個(gè)種群都互不支配,這樣,基于支配的算法就失去了意義。因此,NSGA-II,以及其他基于支配的多目標(biāo)優(yōu)化算法,都不適合解決高維多目標(biāo)優(yōu)化問(wèn)題(一般我們認(rèn)為m>3即為高維問(wèn)題),或者又稱為Many-Objective Problem(MaOP)。

參考文獻(xiàn):

????????K. Deb, A. Pratap, S. Agarwal and T. Meyarivan, "A fast and elitist multiobjective genetic algorithm: NSGA-II," in IEEE Transactions on Evolutionary Computation, vol. 6, no. 2, pp. 182-197, April 2002, doi: 10.1109/4235.996017.

????????H. Li, Q. Zhang and J. Deng, "Biased Multiobjective Optimization and Decomposition Algorithm," in IEEE Transactions on Cybernetics, vol. 47, no. 1, pp. 52-66, Jan. 2017, doi: 10.1109/TCYB.2015.2507366.

????????Wang, Z., Li, Q., Yang, Q.?et al.?The dilemma between eliminating dominance-resistant solutions and preserving boundary solutions of extremely convex Pareto fronts.?Complex Intell. Syst.?(2021). https://doi.org/10.1007/s40747-021-00543-2

特別感謝:

????????遺傳算法之NSGA-Ⅱ原理分析和代碼解讀 - 知乎

????????????????文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-404492.html

到了這里,關(guān)于[多目標(biāo)優(yōu)化算法]1.NSGA-II——非支配排序遺傳算法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Python 第三代非支配排序遺傳算法(NSGA-III)求解多目標(biāo)高次函數(shù)的帕累托前沿

    Python 第三代非支配排序遺傳算法(NSGA-III)求解多目標(biāo)高次函數(shù)的帕累托前沿

    文章目錄 ????????我前面有博客介紹了第二代非支配排序遺傳算法(NSGA-II)求解多目標(biāo)高次函數(shù)的帕累托前沿的代碼,本篇博客則是介紹NSGA-III求解多目標(biāo)高次函數(shù)的帕累托前沿。 ????????研究的模型為:min(y1=,x[-10,10]), min(y2=,x[-10,10])。?即求解兩個(gè)目標(biāo)函數(shù)最小值的問(wèn)題

    2024年02月06日
    瀏覽(19)
  • 多目標(biāo)優(yōu)化NSGA-II的實(shí)現(xiàn)(MATLAB完整代碼)

    多目標(biāo)優(yōu)化NSGA-II的實(shí)現(xiàn)(MATLAB完整代碼)

    由于歷史原因,沒(méi)有整理好完整的代碼,所以在【多目標(biāo)優(yōu)化NSGA-II的實(shí)現(xiàn)和測(cè)試(MATLAB實(shí)現(xiàn))】中只放了部分代碼。 現(xiàn)在已經(jīng)整理好了代碼,此部分的代碼測(cè)試內(nèi)容為:ZDT1、ZDT2、ZDT3、ZDT4、ZDT6。 目錄 主要內(nèi)容 代碼模塊 其他內(nèi)容 運(yùn)行注意事項(xiàng) ?代碼 nsga2_test nsga2_main get_

    2024年02月05日
    瀏覽(27)
  • 【水光互補(bǔ)優(yōu)化調(diào)度】基于非支配排序遺傳算法的多目標(biāo)水光互補(bǔ)優(yōu)化調(diào)度(Matlab代碼實(shí)現(xiàn))

    【水光互補(bǔ)優(yōu)化調(diào)度】基于非支配排序遺傳算法的多目標(biāo)水光互補(bǔ)優(yōu)化調(diào)度(Matlab代碼實(shí)現(xiàn))

    ???????? 歡迎來(lái)到本博客 ???????? ??博主優(yōu)勢(shì): ?????? 博客內(nèi)容盡量做到思維縝密,邏輯清晰,為了方便讀者。 ?? 座右銘: 行百里者,半于九十。 ?????? 本文目錄如下: ?????? 目錄 ??1 概述 1.1 水光互補(bǔ) 1.2 水光互補(bǔ)模型——目標(biāo)函數(shù)和約束條件

    2024年02月01日
    瀏覽(48)
  • NSGA-II算法實(shí)戰(zhàn)(附MATLAB源碼)

    NSGA-II算法實(shí)戰(zhàn)(附MATLAB源碼)

    1、NSGA-II算法原理 NSGA-II算法全稱非支配排序遺傳算法II(Non-dominated Sorting Genetic Algorithm II, NSGA-II)。該算法是由?NSGA?改進(jìn)而來(lái)的,用于解決復(fù)雜的、多目標(biāo)優(yōu)化問(wèn)題。NSGA-II在NSGA的基礎(chǔ)上引入了非支配排序、擁擠度、擁擠度比較算子和精英策略。下面將詳細(xì)介紹非支配排

    2024年02月13日
    瀏覽(17)
  • 多目標(biāo)優(yōu)化算法:基于非支配排序的魚(yú)鷹優(yōu)化算法(NSOOA)MATLAB

    多目標(biāo)優(yōu)化算法:基于非支配排序的魚(yú)鷹優(yōu)化算法(NSOOA)MATLAB

    魚(yú)鷹優(yōu)化算法(Osprey?optimization?algorithm,OOA)由Mohammad Dehghani 和 Pavel Trojovsky于2023年提出,其模擬魚(yú)鷹的捕食行為。具有尋優(yōu)能力強(qiáng)、收斂速度快等特點(diǎn)。 魚(yú)鷹優(yōu)化算法的流程如下: 1. 初始化:設(shè)定算法參數(shù),包括魚(yú)鷹數(shù)量、迭代次數(shù)、搜索空間等。 2. 階段一:定位和捕魚(yú)

    2024年01月19日
    瀏覽(22)
  • NSGA-II改進(jìn)之種群初始化

    NSGA-II改進(jìn)之種群初始化

    原NSGA-II的算法在初始化種群的時(shí)候采用的是隨機(jī)生成。隨機(jī)代表著不確定,且隨機(jī)生成的種群在整個(gè)空間上表現(xiàn)為不均勻;為消除隨機(jī)初始化帶來(lái)的不確定,和種群在空間上分布不均勻問(wèn)題,由此引出新的初始化種群方式:佳點(diǎn)集生成種群 注:種群的初始化結(jié)果是否對(duì)種群

    2023年04月08日
    瀏覽(19)
  • NSGA-II改進(jìn)之非均勻變異

    NSGA-II改進(jìn)之非均勻變異

    ? 在進(jìn)化算法中,多項(xiàng)式的變異方式,變異算子的作用與進(jìn)化代數(shù)是沒(méi)有關(guān)系的,所以當(dāng)算法演化到一定代數(shù)的時(shí)候,算法會(huì)缺乏局部搜索能力。為了將變異算子的作用與代數(shù)關(guān)聯(lián)起來(lái),使得算法可以在前期變異的范圍會(huì)較大,隨著演化代數(shù)的增加,變異范圍越來(lái)越小,增加

    2024年02月11日
    瀏覽(17)
  • 五種多目標(biāo)優(yōu)化算法(NSWOA、MOJS、MOAHA、MOPSO、NSGA2)性能對(duì)比(提供MATLAB代碼)

    五種多目標(biāo)優(yōu)化算法(NSWOA、MOJS、MOAHA、MOPSO、NSGA2)性能對(duì)比(提供MATLAB代碼)

    1.1NSWOA 1.2MOJS 1.3MOAHA 1.4MOPSO 1.5NSGA2 為了測(cè)試5種算法的性能將其求解9個(gè)多目標(biāo)測(cè)試函數(shù)(zdt1、zdt2 、zdt3、 zdt4、 zdt6 、Schaffer、?Kursawe 、Viennet2、 Viennet3),其中Viennet2 與Viennet3的目標(biāo)為3,其余測(cè)試函數(shù)的目標(biāo)為2,并采用6種評(píng)價(jià)指標(biāo)(IGD、GD、HV、Coverage、Spread、Spacing)進(jìn)行評(píng)

    2024年02月22日
    瀏覽(27)
  • 基于遺傳算法的多目標(biāo)優(yōu)化進(jìn)行0-1規(guī)劃

    基于遺傳算法的多目標(biāo)優(yōu)化進(jìn)行0-1規(guī)劃

    第一次寫(xiě)博客不知道從哪里下手, 之所以想開(kāi)始博客寫(xiě)作一方面是想記錄自己寫(xiě)過(guò)的代碼,另一方面也分享一下自己在編程的時(shí)候遇到的問(wèn)題,也希望可以幫助到各位。 之所以做基于遺傳算法的多目標(biāo)優(yōu)化進(jìn)行0-1規(guī)劃,是因?yàn)樵谧鰯?shù)學(xué)建模2021年C題的時(shí)候遇到了一個(gè)規(guī)劃題,

    2024年02月07日
    瀏覽(21)
  • 模擬退火算法與遺傳算法求解多目標(biāo)優(yōu)化問(wèn)題的算法實(shí)現(xiàn)(數(shù)學(xué)建模)

    模擬退火算法與遺傳算法求解多目標(biāo)優(yōu)化問(wèn)題的算法實(shí)現(xiàn)(數(shù)學(xué)建模)

    模擬退火算法是一種全局優(yōu)化算法,解決的問(wèn)題通常是找到一個(gè)最小化(或最大化)某個(gè)函數(shù)的全局最優(yōu)解。它通過(guò)模擬物理退火的過(guò)程來(lái)搜索解空間,在開(kāi)始時(shí)以一定的溫度隨機(jī)生成初始解,然后一步步降低溫度,同時(shí)在當(dāng)前解的周?chē)S機(jī)搜索新的解,并根據(jù)一定概率接受

    2024年02月02日
    瀏覽(27)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包