NSGA 和 NSGA-II 学习笔记
参考资料:
CSDN博客:https://blog.csdn.net/kiding_k/article/details/70147299?locationNum=13&fps=1
Cnblog:https://www.cnblogs.com/bnuvincent/p/5268786.html
基于遗传算法的多目标寻优策略的应用研究_李莉:http://kns.cnki.net/KCMS/detail/detail.aspx?dbcode=CMFD&dbname=CMFD2009&filename=2009014373.nh&uid=WEEvREcwSlJHSldRa1FhdkJkVWI3Y2JUZGpaT2lhOTJKRURJQldYRGplMD0=$9A4hF_YAuvQ5obgVAqNKPCYcEjKensW4ggI8Fm4gTkoUKaID8j8gFw!!&v=MzI3MTNKRWJQSVI4ZVgxTHV4WVM3RGgxVDNxVHJXTTFGckNVUkxLZll1ZHJGeTdoVTd6QlYxMjdGN081R3RMTHI=
CSDN博客:https://blog.csdn.net/u014119694/article/details/77248913?locationNum=6&fps=1
NSGA-II Python 3 参考代码:
https://github.com/haris989/NSGA-II/blob/master/NSGA%20II.py
一般多目标规划问题,都可以建模为寻找Pareto最优解的问题。
NSGA:非支配排序遗传算法(Non-dominated Sorting Genetic Algorithm)
种群分层:
Tips:此处存在重复对比情况,即X1 与 X2 进行了两次对比
虚拟适应度:目标函数值
共享小生境技术:
同一小生境内的种群,适应度互相减小。相似度高的、小生境内个体多的种群适应度减少程度更大。
通过这样的方式可以保证非支配层的每个个体拥有不同的适应度值。(这个没有懂)
NSGA-II:带精英策略的非支配排序遗传算法
快速非支配排序算法:
伪代码:
如图,D点被A和C点支配,所以D点的np为2,A点支配D和E,所以A点的Sp={D,E}。
该排序算法分级与NSGA中的结果不一样
拥挤度和拥挤度比较算子
密度估计:根据每一目标函数计算该点两侧的两个点的平均距离,该值作为以最近邻居作为顶点的长方体周长的估计(作为拥挤系数)。如下图,第i个解的拥挤系数为他周围长方体的长度(虚线表示)。
计算拥挤系数需要对每一目标函数进行排序。
每个非支配层的边界的个体拥挤度为无穷。
拥挤度有多种计算方式
1.直接计算长方体边长
2.需要除以....
拥挤度比较算子:
主程序:
精英策略:
NSGA-II 程序流程图
需要输入的变量是:规模N、迭代次数
NSGA 和 NSGA-II 学习笔记相关推荐
- 工程师的NIOS II学习笔记(转)
来源:嵌入式在线 作者:山城棒棒儿军 发布时间:2009-09-22 12:29:31 Nios Development Board Reference Manual, Stratix II Edit ...
- 简单入门——深度学习笔记(Part II)
更多深度文章,请关注:https://yq.aliyun.com/cloud 作者介绍:Deepak Shah Deepak Shah毕业于德克萨斯奥斯汀分校,徒步旅行爱好者,目前是深度学习\数据科学 ...
- B站台湾大学郭彦甫|MATLAB 学习笔记|09 图像处理II Image Processing
MATLAB学习笔记(09 图像处理II Image Processing) 如果想获得更好浏览体验的朋友可以转到下面链接 09 1. 提出问题 题目:如何找出图片中的米粒,并且确定他们的大小? 老师 ...
- 多人网络游戏服务器开发基础学习笔记 II: 帧同步 | 游戏客户端预测原理分析 | FPS 游戏状态同步
这篇是对书本 网络多人游戏架构与编程 的学习第二篇(第一篇:多人网络游戏服务器开发基础学习笔记 I:基本知识 | 游戏设计模式 | 网游服务器层次结构 | 游戏对象序列化 | 游戏 RPC 框架 | ...
- OpenGL 学习笔记 II:初始化 API,第一个黑窗,游戏循环和帧率,OpenGL 默认垂直同步,glfw 帧率
前情提要: 上一篇: OpenGL 学习笔记 I:OpenGL glew glad glfw glut 的关系,OpenGL 状态机,现代操作系统的窗口管理器,OpenGL 窗口和上下文 OpenGL ...
- SilverLight学习笔记--Silverlight中WebRequest通讯
本文我们学习如何使用WebRequest类实现客户端和服务器端的通讯. 本例处理过程:在客户端,我们在文本框中输入任意文本,然后用POST方法向服务器端传递信息,服务器端收到从客户端传来的信 ...
- [学习笔记]CDQ分治
分治,考虑前一半对后一半的影响. (和一般分治不太相同的思想是,一般分治不分谁对谁的影响,跨mid的都要统计.(全局变量统计) 而CDQ貌似要落脚到前一半对后一半的影响上,也就是贡献在后一半统计,由前 ...
- CSS3秘笈第三版涵盖HTML5学习笔记6~8章
第二部分----CSS实用技术 第6章,文本格式化 指定备用字体: font-family:Arial,Helvetica,sans-serif; 当访问者没有安装第一种字体时,浏览器会在列表中继续往 ...
- CososJS学习笔记(1) 环境配置(填坑版,让你少走弯路!)
这段时间比较了国外的phaser.pixi.create等h5游戏框架以及国内的egret.cocosjs之后,最后还是决定使用cocosjs进行h5游戏的开发. 先简单地说一下个人的观点:首先pix ...
- 抽象代数学习笔记(5) 运算
抽象代数学习笔记(5)运算 "运算"这个名词大家从小学就应该接触了,比如"四则运算"等等.不过在那个时候,运算一直是一个很模糊的概念,究竟什么是运算?我们接触的 ...
最新文章
- 禁止windows系统的自动运行功能
- NYOJ 767 因子和
- linux 查询替换文件内容吗,Linux 下查询文件的方法 替换文件内容
- gan怎么输入一维数据_时空序列预测模型GAN+LSTM
- HDU 3584 三维树状数组
- 面试官:你给我手写个RPC框架看看
- 20155238 2016-2017-2 《Java程序设计》第三周学习总结
- oracle impdp 39002,expdp/impdp ORA-39002ORA-39166 | 学步园
- centos7 Samba服务安装和配置
- Java:如何将多个JAR打包成单个可执行JAR(executable jar)
- 【笔记】uniapp APP运行到夜神模拟器
- 中断调用与子程序调用
- Markdown编辑器-初始模板参考
- Flutter CircularProgressIndicator进度指示器/Loading
- http url转义字符,特殊字符
- checkbox选中属性
- 可能是最优雅的分割线实现方式CSS实现
- 苹果换芯简史:芯片如何改变苹果的电脑产品线?
- HDU - 3003 - Pupu(快速幂)
- WPF开发学生信息管理系统【WPF+Prism+MAH+WebApi】(完)