
發布
注冊
/
登錄NSGA-II遺傳算法
關注創建者:匿名 創建時間:2026-01-04

NSGA-II遺傳算法的實例教程
求解多目標問題目前常見的算法有帕累托差分進化算法(Pareto-based differential evolution,PDE)、多目標差分進化算法(multi-objective differential evolution,MODEA)、多目標粒子群優化算法(multi-objective particle swarm optimization,MOPSO)及多目標遺傳算法(multi-objective genetic algorithm,MOGA)等。MOGA的優勢在于其搜索范圍不受限制,能動態地優化多個目標,能夠協調目標函數之間的關系,確定最優解集,使目標函數盡可能達到一個相對大(小)的值。非支配排序遺傳算法(non-dominated sorting genetic algorithm,NSGA)是一種基于Pareto最優概念的遺傳算法,該算法有利于決策者根據不同偏好進行決策。NSGA-II則是一種在NSGA的基礎上進行改進的帶有精英策略的算法,有效提高了算法的運算速度和魯棒性,并保證了非劣最優解的均勻分布。Gu等分析了電池儲能系統的布置和容量選擇與配電網功率損耗、線路電壓以及電壓波動之間的關系,使用改進的NSGA-II算法實現配電網功率損耗、電壓波動以及電池儲能系統容量最小的目標。陳楚昭等針對太陽能光伏系統,以負載損失概率和能源成本最小為目標,引用了NSGA-II算法進行求解。
因此,為解決現有研究在需要權衡多個均衡指標時選取均衡閾值缺乏理論基礎的問題,本工作提出基于NSGA-II遺傳算法對多個均衡指標進行優化,并在不同工況對所提方法的有效性進行驗證。本工作的主要創新點如下。
展開 多目標優化之非支配排序遺傳算法(NSGA-II) ¥39.99
非支配排序遺傳算法NSGA (Non-dominated Sorting Genetic Algorithms)是由Srinivas和Deb于1995年提出的。這是一種基于Pareto最優概念的遺傳算法,它是眾多的多目標優化遺傳算法中體現Goldberg思想最直接的方法。該算法就是在基本遺傳算法的基礎上,對選擇再生方法進行改進:將每個個體按照它們的支配與非支配關系進行分層,再做選擇操作,從而使得該算法在多目標優化方面得到非常滿意的結果。
2000年,他們又提出NSGA的改進算法—帶精英策略的非支配排序遺傳算法(NSGA-II)。 NSGA-II改進了原來算法的不足之處,提高了算法的運算速度和魯棒性,并保證了非劣最優解的均勻分布。因而,NSGA-II比NSGA更具優越性。
NSGA-II的三大優點分別是引入了非支配排序、提出擁擠度和擁擠度比較算子以及引入精英策略等。非支配排序利用Pareto最優解的概念將種群中的個體進行分級,非支配狀態越高的個體層級越靠前,從而能夠挑選出個體中較為優異的,使其有較大機會進入下一迭代。擁擠度只適用于同一支配層級的個體之間的比較,通過對每個個體的每個目標函數進行計算擁擠度,進而得出每個個體的擁擠度,通過擁擠度比較個體的優異程度。精英策略是把當前種群和通過選擇、交叉和變異產生的子種群合并,共同競爭產生下一種群,保證具有較好特性的個體能夠保留在種群中,提高了種群的多樣性和計算效率。
以下是NSGA-II算法的Matlab代碼,需要的可以嘗試下載。
展開 詳細介紹了iSIGHT中的多目標遺傳算法NSGA-II
1. A Fast and Elitist Multiobjective Genetic Algorithm:NSGA-II
2. An efficient constraint handling method for genetic algorithms
下載解壓縮
NSGA-II.part1.rar
詳細介紹了iSIGHT中的多目標遺傳算法NSGA-II
1. A Fast and Elitist Multiobjective Genetic Algorithm:NSGA-II
2. An efficient constraint handling method for genetic algorithms
下載解壓縮
NSGA-II.part1.rar
NSGA-II.part2.rar
NSGA-II.part3.rar
NSGA-II.part4.rar
NSGA-II.part5.rar
展開 第三代非支配遺傳算法是針對高維多目標優化計算代價大,難以挑選Pareto解的情況而開發的,基本流程與NSGA-II相似,但選擇個體的方法加入了基于參考點的方法,能夠有效降低計算代價。
NSGA-III 首先定義一組參考點。然后隨機生成含有 N 個個體的初始種群,其中 N 是種群大小。接下來,算法進行迭代直至終止條件滿足。在第 t 代,算法在當前種群 Pt的基礎上,通過交叉和變異產生子代種群 Qt。Pt和 Qt的大小均為 N。因此,兩個種群 Pt和 Qt合并會形成種群大小為 2N 的新的種群 Rt=Pt∪Qt。
為了從種群 Rt中選擇最好的 N 個解進入下一代,首先利用基于Pareto支配的非支配排序將 Rt分為若干不同的非支配層(F1,F2等等)。然后,算法構建一個新的種群St,構建方法是從 F1開始,逐次將各非支配層的解加入到 St,直至 St的大小等于 N,或首次大于 N。假設最后可以接受的非支配層是 L層,那么在 L+ 1 層以及之后的那些解就被丟棄掉了,且 St\ FL中的解已經確定被選擇作為 Pt+1中的解。Pt+1中余下的個體需要從 FL中選取,選擇的依據是要使種群在目標空間中具有理想的多樣性。
比如你的N設置為100,那么Pt大小為100,Qt是Pt交叉和變異后的個體,Qt的數目也是100,那么Rt=Pt∪Qt,Rt數目是兩百,現在只要從這兩百中選100個個體進行下一輪迭代。
那么怎么從這兩百個選一百個呢?NSGA的思想首先是把所有解進行分非支配排序,假設問題為最小化問題,那么目標值越小越好,若個體A三個目標值是(2,3,5),B的三個目標是(4,3,5),C的三個目標是(3,3,4),那么個體A和C放入F1層,其等級為1,F2層是B,等級為2,以此類推。
展開 
NSGA-II遺傳算法的相關專題、標簽、搜索
NSGA-II遺傳算法的最新內容
(3)根據NSGA-II遺傳算法的特點,將NSGA-II遺傳算法應用到鋰電池均衡系統的設計,形成了一套需要權衡多個均衡指標時,選取合適的均衡閾值的計算框架。
圖5 各因素與電磁閥延遲響應相關性
4 電磁閥響應延遲多目標優化
4.1 NSGA-II遺傳算法
NSGA-II是一種精英策略非支配排序遺傳算法,在NSGA的基礎上加上了精英策略、密度值估計策略和快速非支配排序策略。
第三代非支配遺傳算法是針對高維多目標優化計算代價大,難以挑選Pareto解的情況而開發的,基本流程與NSGA-II相似,但選擇個體的方法加入了基于參考點的方法,能夠有效降低計算代價。
NSGA-III 首先定義一組參考點。然后隨機生成含有 N 個個體的初始種群,其中 N 是種群大小。接下來,算法進行迭代直至終止條件滿足。在第 t 代,算法在當前種群 Pt的基礎上,通過交叉和變異產生子代種群
2000年,他們又提出NSGA的改進算法—帶精英策略的非支配排序遺傳算法(NSGA-II)。 NSGA-II改進了原來算法的不足之處,提高了算法的運算速度和魯棒性,并保證了非劣最優解的均勻分布。因而,NSGA-II比NSGA更具優越性。
NSGA-II的三大優點分別是引入了非支配排序、提出擁擠度和擁擠度比較算子以及引入精英策略等。
詳細介紹了iSIGHT中的多目標遺傳算法NSGA-II
1. A Fast and Elitist Multiobjective Genetic Algorithm:NSGA-II
2.
詳細介紹了iSIGHT中的多目標遺傳算法NSGA-II
1. A Fast and Elitist Multiobjective Genetic Algorithm:NSGA-II
2. An efficient constraint handling method for genetic algorithms
下載解壓縮
NSGA-II.part1.rar