找回密码
 注册
关于网站域名变更的通知
查看: 578|回复: 1
打印 上一主题 下一主题

NSGA-II多目标遗传算法概述

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-9-9 18:45 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 pulbieup 于 2020-9-9 18:47 编辑 1 K6 [  ?1 D4 C+ w7 X8 P
; K/ s( N1 r* @0 ~6 E5 w/ J% A6 x
什么是NSGA-II
Non dominated sorting genetic algorithm -II% B6 ?8 ?/ @5 R# e6 F
NSGA-Ⅱ是目前最流行的多目标遗传算法之一,它降低了非劣排序遗传算法的复杂性,具有运行速度快,解集的收敛性好的优点,成为其他多目标优化算法性能的基准。" W( v; J' F" V& y
NSGA-Ⅱ就是在第一代非支配排序遗传算法的基础上改进而来,其改进主要是针对如上所述的三个方面:( W( e5 K+ v: Z( ~9 d8 U
①提出了快速非支配排序算法,一方面降低了计算的复杂度,另一方面它将父代种群跟子代种群进行合并,使得下一代的种群从双倍的空间中进行选取,从而保留了最为优秀的所有个体;/ e# m- Y4 Z; c5 A
②引进精英策略,保证某些优良的种群个体在进化过程中不会被丢弃,从而提高了优化结果的精度;
3 ^0 d% ^) h# N" C" N3 i③采用拥挤度和拥挤度比较算子,不但克服了NSGA中需要人为指定共享参数的缺陷,而且将其作为种群中个体间的比较标准,使得准Pareto域中的个体能均匀地扩展到整个Pareto域,保证了种群的多样性。
算法目的:针对当前M个个体,选取N个个体(M>N)。
& K2 \1 t5 k* z$ hNSGA-II关键算法(步骤)% |$ B) U3 @$ I3 v+ l: o: {
1.先对M个个体求pareto解。然后得到F1,F2……等这些pareto的集合。0 u. L9 m/ _  o$ y8 u# J; J
2.把F1的所有个体全部放入N,若N没满,继续放F2,直到有Fk不能全部放入已经放入F1、F2、…、F(k-1)的N(空间)。此时对Fk进行求解。
* |9 u- _4 t/ s( X% T3.对于Fk中的个体,求出Fk中的每个个体的拥挤距离Lk(crowding distance),在fk中按照Lk递减排序,放入N中,直到N满。
NSGA-II关键子程序算法
4 D9 ]$ l$ l- T0 W$ W+ r0 g* d0 s) A7 C0 Q" q1. 快速非支配排序算法
; M6 y3 g5 C% @  m* p3 n多目标优化问题的关键在于求取Pareto最优解集。NSGA-II快速非支配排序是依据个体的非劣解水平对种群M进行分层得到Fi,作用是使得解靠近pareto最优解。这是一个循环的适应值分级过程,首先找出群体中的非支配解集,记为F1,将其所有个体赋予非支配序irank=1(其中irank是个体i的非支配序值),并从整个群体M中除去,然后继续找出余下群体中的非支配解集,记为F2,F2中的个体被赋予irank=2,如此进行下去,知道整个种群被分层,Fi层中的非支配序值相同。# d& d  `8 s+ `7 m
2.个体拥挤距离
+ p; \4 L" s  U  h在同一层Fk中需要进行选择性排序,按照个体拥挤距离(crowding distance)大小排序。个体拥挤距离是Fk上与i相邻的个体i+1和i-1之间的距离,其计算步骤为:
  M: `! V. G1 }4 M) Z3 z5 N  r①对同层的个体距离初始化,令Ld=0(表示任意个体i的拥挤距离)。
" m. B! Q) s1 J: z; [  m4 `②对同层的个体按照第m个目标函数值升序排列。; h. `2 c7 p, N9 z- U1 X0 {
③对于处在排序边缘上的个体要给予其选择优势。1 T+ r9 @4 p1 h; {0 W
④对于排序中间的个体,求拥挤距离:
(其中:L[i+1]m为第i+1个体的第m目标函数值fmax,fmin分别为集合中第m目标函数的最大和最小值。)* G  k) Z/ L5 Y: Q, ?* }5 `
⑤对于不同的目标函数,重复②到④的步骤,得到个体i的拥挤距离Ld,有限选择拥挤距离较大的个体,可以是计算结果在目标空间均匀地分布,维持群体的多样性。
) x) e6 z  ]6 ^! t3.精英策略选择算法6 l* b- @- W9 m5 q1 m" I) [  U
保持父代中优良个体直接进入子代,防止Pareto最优解丢失。4 z8 z1 R5 w6 A  g# q. S7 K7 C" y
选择指标对父代Ci和子代Di合成的种群Ri进行优选,组成新父代Ci+1.
# Y( q# ?) F6 `先淘汰父代中方案检验标志不可行的方案,接着按照非支配序值irank从低到高将整层种群依次放入Ci+1,直到放入某一层Fk超过N的限制,最后,依据拥挤距离大小填充Ci+1直到种群数量为N。
注释:2 K, k! m6 b/ s# `& U7 _% b4 u
多目标规划中,由于存在目标之间的冲突和无法比较的现象,一个解在某个目标上是最好的,在其他的目标上可能比较差。Pareto 在1986 年提出多目标的解不受支配解(Non-dominated set)的概念。其定义为:假设任何二解S1 及S2 对所有目标而言,S1均优于S2,则我们称S1 支配S2,若S1 的解没有被其他解所支配,则S1 称为非支配解(不受支配解),也称Pareto解。这些非支配解的集合即所谓的Pareto Front。所有坐落在Pareto front 中的所有解皆不受Pareto Front 之外的解(以及Pareto Front 曲线以内的其它解)所支配,因此这些非支配解较其他解而言拥有最少的目标冲突,可提供决策者一个较佳的选择空间。在某个非支配解的基础上改进任何目标函数的同时,必然会削弱至少一个其他目标函数。

该用户从未签到

2#
发表于 2020-9-9 18:59 | 只看该作者
NSGA-II多目标遗传算法概述
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-23 22:44 , Processed in 0.078125 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表