NSGA算法

您所在的位置:网站首页 nsga3算法原理 NSGA算法

NSGA算法

2023-10-18 20:42| 来源: 网络整理| 查看: 265

1.相关概念 1.1 最优解 对于双目标优化问题,当目标一和目标二是确定的最优解且在同一x取值时,称为最优解。 在这里插入图片描述 1.2 帕累托最优解 现实中,双目标取得最优解的概率很小很小,绝大部分的两天目标不会在同一x处取得,当处于在两个目标的最优之间时,这个解称为帕累托最优解,帕累托最优解是一个可以接受的质量比较好的解,但并不是一个最优解。一般而言,帕累托最优解都有多个。 在这里插入图片描述 1.3 帕累托最优前沿 帕累托最优解对应的目标函数值即为帕累托最优前沿 在这里插入图片描述 2. NSGA Ⅱ算法 Non-dominated Sorting Genetic Algorithm,快速非支配排序遗传算法。 2.1 支配概念 如果解a的目标优于解b的目标,即称解a支配解b,如果所有解中,没有比解a更优的解,则称解a为非支配解。 2.2 快速非支配排序算法步骤

设所有解的集合为S,现从中找出非支配解集合,记为F1令S=S-F1,从S中再找出非支配解集合,记为F2重复第二步,直到S为空集 将每次找出的非支配解进行排序如下:{F1,F2,…,Fn}。在途中画出Fi集合中对应点,并连线,则构成了n个pareto曲面,分别编号为Non-dominated Front 1,Non-dominated Front 2… 以上述表格中数据为例:F1={A,B,D,F}, F2={C,E,D}, F3={H,I} 画出相应图形 在这里插入图片描述 2.3 同一前沿面上解的比较:拥挤度(crowding distances) 拥挤度即解与相邻两个解在目标函数上的距离差之和,即下图的虚线矩形的长和宽之和。 拥挤度越小,解越重要,确定解的适应度大小首先应确定前沿面,如果在同一前沿面,再计算拥挤度进行判断。 在这里插入图片描述 2.4 NSGAⅡ算法选择过程 在这里插入图片描述 2.5 NSGA Ⅱ算法整体流程 在这里插入图片描述 NSGA Ⅱ算法其他步骤与传统遗传算法没有区别,整体思想一样,都是染色体不断突变后经过选择挑选出最优方案。而NSGA Ⅱ计算结果最后可能有一大群解,只需选择非支配排序第一且拥挤度为0的作为帕累托最优解即可。

3.参考文献 1.https://my.oschina.net/u/4518192/blog/4796828 2.https://blog.csdn.net/qq_40434430/article/details/82876572 3.https://zhuanlan.zhihu.com/p/54691447 4.https://www.pianshen.com/article/26571800545/ 5.https://blog.csdn.net/royce_feng/article/details/80310530



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3