赞
踩
NSGA-II原文: A fast and elitist multiobjective genetic algorithm: NSGA-II
NSGA-II作者实验室:Kalyanmoy Deb, Koenig Endowed Chair Professor
pymoo库:实验室创建的python第三方库,实现了各种多目标优化算法pymoo: Multi-objective Optimization in Python
geatpy2库:Geatpy是一个高性能实用型进化算法工具箱,提供许多已实现的进化算法中各项重要操作的库函数,利用“定义问题类 + 调用算法模板”的模式来进行进化优化,可用于求解单目标优化、多目标优化、复杂约束优化、组合优化、混合编码进化优化等 Geatpy
1) NSGA有以下问题
NSGA-II是对NSGA的优化:
对解集进行pareto前沿分级,成Rank1、Rank2…
快速非支配排序将总时间复杂度降到了O(MN2)
空间复杂度O(N2)。
np:支配数,支配解p的解数量
SP:被支配集合,解p支配的解集合
Fi:第i层Pareto前沿
以下图片描述不太理解:
几何角度理解拥挤距离:
以两个目标函数为例,下图中黑点和白点分别为两个非支配前沿
对于解i,从与i在同一非支配前沿中选择与解i最相近的两个点i-1和i+1为顶点组成一个长方形(cuboid)
拥挤距离即为长方形周长
在计算完每个解的拥挤距离后,从一定程度上来说,某个解的拥挤距离越小,这个解被其他解拥挤的程度越高。
elitism 精英保留策略:核心思想是把群体在进化过程中迄今出现的最好个体不进行遗传操作而直接复制到下一代中,理论上证明了具有精英保留的标准遗传算法是全局收敛的
tournament selection 联赛选择算法:每次从种群中取一定数量(n)的个体(放回抽样),选择其中适应度较好的进入子代种群
https://blog.csdn.net/weixin_45526117/article/details/128507020
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。