本发明涉及遗传算法领域,尤其涉及一种带精英策略的非支配排序的遗传算法改方法。

背景技术:

NSGA2算法是Srinivas和Deb于2000年在NSGA算法的基础上提出的,它比NSGA算法更加优越:它采用了快速非支配排序算法,计算复杂度比NSGA算法大大的降低;采用了拥挤度和拥挤度比较算子,代替了需要指定的共享半径share Q,并在快速排序后的同级比较中作为胜出标准,使准Pareto域中的个体能扩展到整个Pareto域,并均匀分布,保持了种群的多样性;引入了精英策略,扩大了采样空间,防止最佳个体丢失。

但NSGA2采用的SBX(Simulated Binary Crossover)交叉算子和多项式变异的变异算子,搜索功能上相对较弱,收敛性不足,不能保持种群多样性,容易出现局部最优和进化过程不稳定的情况。

技术实现要素:

针对上述现有技术中的不足,本发明提供一种带精英策略的非支配排序的遗传算法改方法,可改善NSGA2算法的搜索功能较弱,收敛性不足,容易出现局部最优和进化过程不稳定的情况。

为了实现上述目的,本发明提供一种带精英策略的非支配排序的遗传算法改方法,包括步骤:

S1:利用Matlab软件将一算数交叉算子替代一NSGA2遗传算法的SBX交叉算子;

S2:利用Matlab软件将一基于质心的变异算子替代所述NSGA2遗传算法的多项式变异形式的变异算子;

S3:利用Matlab软件对所述NSGA2遗传算法的一扰动向量权重λ进行改进。

优选地,所述算数交叉算子的表达式为:

其中,α表示第一算数交叉算子参数,β表示第二算数交叉算子参数,且α+β=1;α,β∈[-1,2];表示选中的父代种群中的个体;表示父代种群中的个体;t表示迭代次数。

优选地,所述基于质心的变异算子的表达式为:

其中,γ表示最佳个体的影响权重,γ∈[0,1];Xbest(t)表示父代的最佳个体;λ表示扰动向量权重;M表示扰动向量空间的大小,M等于种群中除了i这个个体以外的其他个体总数之和;表示从父代随机选取的除了Xbest(t)以外的剩余个体;i表示种群中的一个体;Xnew(t+1)表示变异后新的第t+1子代个体;Xi(t)表示第t代种群中的个体;j表示种群中除了i这个个体以外的个体;a表示种群中除了i这个个体以外的一第一个体;b表示种群中除了i这个个体以外的一第二个体。

优选地,所述父代的最佳个体Xbest(t)满足公式:

其中,N表示从第t代种群中随机抽取的变异个体总数;fi(t)表示为对应的Xi个体的适应度值;Xi(t)表示第t代种群的第i个体。

优选地,所述S3步骤中,通过一公式(4)对所述扰动向量权重λ进行改进:

其中,k表示扰动随机数,k=rand(0,1)。

本发明由于采用了以上技术方案,使其具有以下有益效果:

本发明在原有的NSGA2算法基础上,在通过Matlab引入改进的算数交叉算子、基于质心的变异算子和改进的扰动向量权重,改善了现有NSGA2算法的搜索功能较弱,收敛性不足,以及容易出现局部最优和进化过程不稳定的情况。

附图说明

图1为本发明实施例的带精英策略的非支配排序的遗传算法改方法的流程图;

图2为NSGA2遗传算法在ZDT1测试算法上的曲线图;

图3为通过本发明实施例的带精英策略的非支配排序的遗传算法改方法改进后的遗传算法在ZDT1测试算法上的曲线图;

图4为NSGA2遗传算法在ZDT2测试算法上的曲线图;

图5为通过本发明实施例的带精英策略的非支配排序的遗传算法改方法改进后的遗传算法在ZDT2测试算法上的曲线图;

图6为NSGA2遗传算法在ZDT3测试算法上的曲线图;

图7为通过本发明实施例的带精英策略的非支配排序的遗传算法改方法改进后的遗传算法在ZDT3测试算法上的曲线图。

具体实施方式

下面根据附图1,给出本发明的较佳实施例,并予以详细描述,使能更好地理解本发明的功能、特点。

请参阅图1,本发明实施例的一种带精英策略的非支配排序的遗传算法改方法,包括步骤:

S1:利用Matlab软件将一算数交叉算子替代一NSGA2遗传算法的SBX交叉算子;

其中,算数交叉算子的表达式为:

其中,α表示第一算数交叉算子参数,β表示第二算数交叉算子参数,且α+β=1;α,β∈[-1,2];表示选中的父代种群中的个体;表示父代种群中的个体;t表示迭代次数。

NSGA2中采用的是SBX(Simulated Binary Crossover)交叉算子。SBX交叉算子模拟二进制交叉的过程,对实数编码的父代个体进行交叉操作,即交换两个父代个体位于给定随机交叉点两侧的部份。但是使用SBX交叉过程中搜索能力较弱,无法保证种群的多样性。本发明的一种带精英策略的非支配排序的遗传算法改方法,将算术交叉算子代入到Matlab软件中替换原有算子,并增加约束范围。

S2:利用Matlab软件将一基于质心的变异算子替代NSGA2遗传算法的多项式变异形式的变异算子;

优选地,基于质心的变异算子的表达式为:

其中,γ表示最佳个体的影响权重,γ∈[0,1],例如可取γ=0.5;Xbest(t)表示父代的最佳个体;λ表示扰动向量权重;M表示扰动向量空间的大小,M等于种群中除了i这个个体以外的其他个体总数之和;表示从父代随机选取的除了Xbest(t)以外的剩余个体;i表示种群中的一个体;Xnew(t+1)表示变异后新的第t+1子代个体;Xi(t)表示第t代种群中的个体;j表示种群中除了i这个个体以外的个体;a表示种群中除了i这个个体以外的一第一个体;b表示种群中除了i这个个体以外的一第二个体。

公式(2)的等式右边的第一项和第二项构成了差分向量,第三项为差分进化算法的扰动向量。扰动向量的作用是使种群发生随机变异。

本实施例中,Xbest(t)的选择引入质心理论的思想,父代的最佳个体Xbest(t)满足公式:

其中,N表示从第t代种群中随机抽取的变异个体总数;fi(t)表示为对应的Xi个体的适应度值;Xi(t)表示第t代种群的第i个体。

在遗传算法中,变异算子是作为背景算子提出。在算法中引入变异算子,其局部随机搜索性能会有所增强,向最优解收敛的速度会加快并可以保证解群的多样性。所以进化算法的收敛性、稳定性、全局搜索能力等在很大的程度上要依赖于变异环节的性能。差分进化算法(Differential Evolution,DE)是一种全局优化算法,基于群体的启发式搜索,它是由Storn等人在1995年提出,具有记忆个体最优解以及受控参数少的特点。差分进化算法与传统的进化算法相比,前者引入一种特殊的变异算子,能对被选中个体的进化方向产生扰动,对寻找最优解有一定优势。在NSGA2算法中,其采取多项式变异形式的变异算子,在变异程序过程中时有一定概率的情况下得到的解会超出约束条件。发生这种情况时,多项式变异操作会采用取端点值的方法来进行数据处理,但弊端是会减小种群的多样性,收敛早熟。

S3:利用Matlab软件对NSGA2遗传算法的一扰动向量权重λ进行改进。

本实施例中,λ的选取具有一定随机性,本发明中随机扰动借鉴多项式变异,具体通过一公式(4)对扰动向量权重λ进行改进:

其中,k表示扰动随机数,k=rand(0,1)。

本发明实施例的一种带精英策略的非支配排序的遗传算法改方法,引入了一种基于质心理论的变异算子,同时改进了算法的交叉算子和扰动向量权重。

请参阅图2~图7,图中f1表示的是选取的函数值X1,f2表示的是适应度函数Y;同时将本发明实施例的一种带精英策略的非支配排序的遗传算法改方法标记为INSGA2,与现有的NSGA2算法在ZDT1、ZDT2以及ZDT3测试函数上进行实验比对,对比结果请参阅表1,试验结果表明改进的算法具有更好的收敛性能和分布性能,同时具有更快的收敛速度。

表1、INSGA2与NSGA2在ZDT1、ZDT2以及ZDT3测试函数上的测试对比表

以上结合附图实施例对本发明进行了详细说明,本领域中普通技术人员可根据上述说明对本发明做出种种变化例。因而,实施例中的某些细节不应构成对本发明的限定,本发明将以所附权利要求书界定的范围作为本发明的保护范围。

matlab 非支配排序,带精英策略的非支配排序的遗传算法改方法与流程相关推荐

  1. 快速谱峭度matlab,一种基于快速谱峭度分析的泵潜在空化故障检测方法与流程

    本发明属于信号处理领域,尤其涉及一种基于快速谱峭度分析泵的实时状态并且检测其潜在空化故障的方法. 背景技术: 高性能离心泵在当今社会上广泛应用和需求巨大.由于工作在高压高速等复杂条件下,离心泵的空化故 ...

  2. matlab计算潮差程序,一种基于FVCOM模型的可视化潮汐潮流预报方法与流程

    本发明涉及潮汐预报技术领域,特别是涉及一种基于FVCOM模型的可视化潮汐潮流预报方法. 背景技术: 潮汐预报对一定海区在未来一定时间内的潮汐涨落情况进行的推算和预报.预报内容包括逐日的高潮和低潮高度及 ...

  3. group lasso matlab,一种利用肠道微生物菌群评价生猪个体蛋白营养状态的方法与流程...

    本发明涉及一种评价生猪个体蛋白营养状态的方法,特别涉及一种利用肠道微生物菌群评价生猪个体蛋白营养状态的方法. 背景技术: 近年来,饲料原料的紧缺,人畜争粮状况加剧:超过营养需求的饲料供应也会加重畜禽养 ...

  4. matlab模式识别提取特征向量,一种基于小波特征向量提取的手机检测方法与流程...

    本发明涉及到手机检测领域,尤其涉及到一种基于小波特征向量提取的手机检测方法. 背景技术: 随着保密要求的不断提高,很多场合严禁携带手机.录音笔.录像机等电子产品,亟需一种设备可以检测出该类电子产品.目 ...

  5. matlab体素化,一种三维激光点云数据快速体素化处理方法与流程

    本发明涉及一种三维激光点云数据快速体素化处理方法. 背景技术: 目前,三维激光扫描系统快速发展,由于研究的需要,往往需要把不具有空间长度信息的点数据转为具有三维空间信息的立方体,如何使用软件进行快速. ...

  6. 单载波频域均衡matlab,一种用于单载波频域均衡信道的低复杂度均衡方法与流程...

    本发明属于通信领域,具体是一种用于单载波频域均衡信道的低复杂度均衡方法. 背景技术: 在时变信道中,由于多径影响导致了严重的码间干扰(ISI),使得信号在传输过程中出现严重失真.因此需要采用均衡器来消 ...

  7. 电磁诱导透明matlab程序,一种实现类电磁诱导透明效应的超材料及方法与流程

    本发明涉及光电技术领域,具体涉及一种实现类电磁诱导透明效应的超材料及方法. 背景技术: 电磁诱导透明(eit)描述的是在宽吸收曲线中产生的尖锐透射窗口的一种实验现象,这种现象伴随着光的色散特性的改变, ...

  8. matlab最小二乘 弹性网络,基于弹性SCAD罚函数的回声状态网络时间序列预测方法与流程...

    本发明涉及信息技术领域,具体地说是一种基于弹性SCAD罚函数的回声状态网络时间序列预测方法. 背景技术: 回声状态神经网络是一种新型的递归神经网络学习方法.其通过引入一个随机生成.且保持不变的,称作为 ...

  9. matlab 零速检测,一种基于车辆零速检测的惯性导航误差修正方法与流程

    本发明涉及车载导航与定位领域,尤其是涉及一种基于车辆零速检测的惯性导航误差修正方法. 背景技术: 惯性导航系统(inertialnavigationsystem,ins)能根据惯性传感器(陀螺仪.加速 ...

  10. matlab 野值剔除,一种基于多项式拟和的野值剔除方法与流程

    本发明涉及一种基于多项式拟和的野值剔除方法,适用于通信. 导航等测控系统领域. 背景技术: 在通信.导航等测量数据中往往包含了大量的严重偏离被测量真 值的数据点,这些异常数据就称为野值.尽管野值数量较 ...

最新文章

  1. 英特尔高通网上打嘴仗,可看起来更像是夸自己
  2. SQLServer数据库的备份/恢复的3中策略实例
  3. 数据库中间件MyCAT源码分析:调试环境搭建
  4. 吴恩达 coursera AI 专项五第三课(上)总结+作业答案
  5. Android版本演进中的兼容性问题
  6. 错误录入 算法_如何使用验证错误率确定算法输出之间的关系
  7. 【英语学习】【WOTD】resurrection 释义/词源/示例
  8. Centos6.9 minmal 安装
  9. 自定义StartIO
  10. RTOS原理与实现10:互斥信号量实现
  11. Android Studio生成函数注释
  12. c语言实验报告1华科,华科操作系统实验报告
  13. opencv——convertTo
  14. react 学习与使用记录
  15. 学习笔记(1):Linux操作系统入门培训_Linux/Unix基础培训教程视频课程-01.Linux入门培训之_软硬件平台介绍...
  16. 半导体芯片行业的运作模式(IDM/Fabless/Foundry模式)
  17. 1999年秋浙江省计算机等级考试二级c 编程题,2004年秋浙江省计算机等级考试二级C 编程题(2) (C++代码)...
  18. 【掘金运营套路揭露】真心被掘金的套路....
  19. phpcms修改了配置文件之后出现Warning: date() expects parameter 2 to be long..错误
  20. Apache网页优化(网页压缩、网页缓存、隐藏版本、配置防盗链)

热门文章

  1. Git-删除文件后找回
  2. 让人眼前一亮的小众PC浏览器
  3. 麻省理工成立计算机学院,麻省理工学院宣布10亿美元成立新计算机学院
  4. 王者荣耀苹果微信哪个服务器最强,王者荣耀:国服最高战力!这三个英雄最高战力比拼ios微信区完胜...
  5. 现代公司制度的法理学基础 (贾登勋 王勇)
  6. 什么是数字化的马太效应
  7. Python代码编辑器jupyter的使用
  8. 医疗行业做好百度竞价的五大技巧
  9. 毕业设计 STM32单片机的智能公路收费站系统 - 物联网
  10. Windows10下自定义桌面快捷方式图标--以Spyder为例