参考资料:

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 学习笔记相关推荐

  1. 工程师的NIOS II学习笔记(转)

    来源:嵌入式在线 作者:山城棒棒儿军 发布时间:2009-09-22 12:29:31 Nios Development Board Reference Manual, Stratix II Edit ...

  2. 简单入门——深度学习笔记(Part II)

    更多深度文章,请关注:https://yq.aliyun.com/cloud 作者介绍:Deepak Shah Deepak Shah毕业于德克萨斯奥斯汀分校,徒步旅行爱好者,目前是深度学习\数据科学 ...

  3. B站台湾大学郭彦甫|MATLAB 学习笔记|09 图像处理II Image Processing

    MATLAB学习笔记(09 图像处理II Image Processing) 如果想获得更好浏览体验的朋友可以转到下面链接 09 1. 提出问题 题目:如何找出图片中的米粒,并且确定他们的大小? 老师 ...

  4. 多人网络游戏服务器开发基础学习笔记 II: 帧同步 | 游戏客户端预测原理分析 | FPS 游戏状态同步

    这篇是对书本 网络多人游戏架构与编程 的学习第二篇(第一篇:多人网络游戏服务器开发基础学习笔记 I:基本知识 | 游戏设计模式 | 网游服务器层次结构 | 游戏对象序列化 | 游戏 RPC 框架 | ...

  5. OpenGL 学习笔记 II:初始化 API,第一个黑窗,游戏循环和帧率,OpenGL 默认垂直同步,glfw 帧率

    前情提要: 上一篇: OpenGL 学习笔记 I:OpenGL glew glad glfw glut 的关系,OpenGL 状态机,现代操作系统的窗口管理器,OpenGL 窗口和上下文 OpenGL ...

  6. SilverLight学习笔记--Silverlight中WebRequest通讯

    本文我们学习如何使用WebRequest类实现客户端和服务器端的通讯.      本例处理过程:在客户端,我们在文本框中输入任意文本,然后用POST方法向服务器端传递信息,服务器端收到从客户端传来的信 ...

  7. [学习笔记]CDQ分治

    分治,考虑前一半对后一半的影响. (和一般分治不太相同的思想是,一般分治不分谁对谁的影响,跨mid的都要统计.(全局变量统计) 而CDQ貌似要落脚到前一半对后一半的影响上,也就是贡献在后一半统计,由前 ...

  8. CSS3秘笈第三版涵盖HTML5学习笔记6~8章

    第二部分----CSS实用技术 第6章,文本格式化 指定备用字体: font-family:Arial,Helvetica,sans-serif; 当访问者没有安装第一种字体时,浏览器会在列表中继续往 ...

  9. CososJS学习笔记(1) 环境配置(填坑版,让你少走弯路!)

    这段时间比较了国外的phaser.pixi.create等h5游戏框架以及国内的egret.cocosjs之后,最后还是决定使用cocosjs进行h5游戏的开发. 先简单地说一下个人的观点:首先pix ...

  10. 抽象代数学习笔记(5) 运算

    抽象代数学习笔记(5)运算 "运算"这个名词大家从小学就应该接触了,比如"四则运算"等等.不过在那个时候,运算一直是一个很模糊的概念,究竟什么是运算?我们接触的 ...

最新文章

  1. 禁止windows系统的自动运行功能
  2. NYOJ 767 因子和
  3. linux 查询替换文件内容吗,Linux 下查询文件的方法 替换文件内容
  4. gan怎么输入一维数据_时空序列预测模型GAN+LSTM
  5. HDU 3584 三维树状数组
  6. 面试官:你给我手写个RPC框架看看
  7. 20155238 2016-2017-2 《Java程序设计》第三周学习总结
  8. oracle impdp 39002,expdp/impdp ORA-39002ORA-39166 | 学步园
  9. centos7 Samba服务安装和配置
  10. Java:如何将多个JAR打包成单个可执行JAR(executable jar)
  11. 【笔记】uniapp APP运行到夜神模拟器
  12. 中断调用与子程序调用
  13. Markdown编辑器-初始模板参考
  14. Flutter CircularProgressIndicator进度指示器/Loading
  15. http url转义字符,特殊字符
  16. checkbox选中属性
  17. 可能是最优雅的分割线实现方式CSS实现
  18. 苹果换芯简史:芯片如何改变苹果的电脑产品线?
  19. HDU - 3003 - Pupu(快速幂)
  20. WPF开发学生信息管理系统【WPF+Prism+MAH+WebApi】(完)

热门文章

  1. c语言图形学画扇形代码,利用CSS绘制任意角度的扇形示例代码
  2. VMD/NAMD命令/规则
  3. Vissim83D动态仿真
  4. 数据挖掘十大经典算法之——CART 算法
  5. DeepLab语义分割
  6. keil_5.26 MDK版,汉化
  7. 入选31个细分领域丨通付盾荣登嘶吼安全产业研究院《2022网络安全产业图谱》
  8. 企业数据可视化实现2020用户留存分析
  9. 非常详细的hi3559A概念版用户手册
  10. HashMap底层详讲