EDA365电子论坛网

标题: NSGA-Ⅱ算法Matlab实现(测试函数为ZDT1) [打印本页]

作者: thinkfunny    时间: 2020-11-2 15:01
标题: NSGA-Ⅱ算法Matlab实现(测试函数为ZDT1)
为了能随时了解Matlab主要操作及思想。
* Z/ e, G/ x, @. u  Y2 K/ d! D' K/ f1 p, n, M, r+ k! |7 C2 x" c1 e
故本文贴上NSGA-Ⅱ算法Matlab实现(测试函数为ZDT1)。7 U/ X0 M4 X1 O" p6 A
. _) q& N! S( \' f6 [8 C
感谢郭伟学长提供的代码。
* {: L+ R1 T+ h; b
, u; [; v+ o- e/ \* T代码所有权归郭伟学长。+ P, P$ ]6 s% H& F- \9 h8 W
& S; V9 F+ ^  R  t+ d
NSGA-Ⅱ就是在第一代非支配排序遗传算法的基础上改进而来,其改进主要是针对如上所述的三个方面:5 K' W- `# E, b3 l6 r8 s0 k
①提出了快速非支配排序算法,一方面降低了计算的复杂度,另一方面它将父代种群跟子代种群进行合并,使得下一代的种群从双倍的空间中进行选取,从而保留了最为优秀的所有个体;
  s) Z" O2 W* C2 B②引进精英策略,保证某些优良的种群个体在进化过程中不会被丢弃,从而提高了优化结果的精度;
' `# t* r" L: ^6 u* m③采用拥挤度和拥挤度比较算子,不但克服了NSGA中需要人为指定共享参数的缺陷,而且将其作为种群中个体间的比较标准,使得准Pareto域中的个体能均匀地扩展到整个Pareto域,保证了种群的多样性。
; Y# K+ y4 X' e( e% D, }
7 ]0 h: ]* g8 v9 V4 n: \Matlab实现:
, f, X; Y$ i# ]; q( A% `2 T
2 z  Y* ?- u8 [% X' R: m+ s         
作者: regngfpcb    时间: 2020-11-2 16:33
NSGA-Ⅱ算法Matlab实现(测试函数为ZDT1)




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2