- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用于约束多目标优化题的双群体差分进化算法
用于约束多目标优化问题的双群体差分进化算法
孟红云1 张小华2 刘三阳1
(1.西安电子科技大学 应用数学系,西安,710071;
2.西安电子科技大学 智能信息处理研究所,西安,710071)
摘 要:首先给出一种改进的差分进化算法,然后提出一种基于双群体搜索机制的求解约束多目标优化问题的差分进化算法.该算法同时使用两个群体,其中一个用于保存搜索过程中找到的可行解,另一个用于记录在搜索过程中得到的部分具有某些优良特性的不可行解,避免了构造罚函数和直接删除不可行解.此外,将本文算法、NSGA-Ⅱ和SPEA的时间复杂度进行比较表明,NSGA-Ⅱ最优,本文算法与SPEA相当.对经典测试函数的仿真结果表明,与NSGA-Ⅱ相比较,本文算法在均匀性及逼近性方面均具有一定的优势.
关键字: 差分进化算法;约束优化问题;多目标优化问题;
中图分类号:TP18
1 引言
达尔文的自然选择机理和个体的学习能力推动进化算法的出现和发展,用进化算法求解优化问题已成为一个研究的热点[1-3].但目前研究最多的却是无约束优化问题.然而,在科学研究和工程实践中,许多实际问题最终都归结为求解一个带有约束条件的函数优化问题,因此研究基于进化算法求解约束优化问题是非常有必要的.不失一般性,以最小化问题为例,约束优化问题(Constrain Optimization Problem,) (1)为目标函数,称为约束条件,称为维决策向量.将满足所有约束条件的解空间称为(1)的可行域.特别的,当时,(1)为单目标优化问题;当时,(1)为多目标优化问题.为第个不等式约束,是第个等式约束.另一方面,对于等式约束可通过容许误差(也称容忍度)将它转化为两个不等式约束:
(2)
故在以后讨论问题时,仅考虑带不等式约束的优化问题.进一步,如果使得不等式约束,则称约束在处是积极的.在搜索空间中,满足约束条件的决策变量称为可行解,否则称为不可行解.
定义1(全局最优解)是的全局最优解,是指且不劣于可行域内任意解所对应的目标函数,表示为. 对于单目标优化问题,等价为,而对于多目标优化问题是指不存在,使得Pareto优于 .
目前,进化算法用于无约束优化问题的文献居多,与之比较,对约束优化问题的研究相对较少[4-6]。文[7]对当前基于进化算法的各种约束处理方法进行了较为详细的综述.对于约束优化问题的约束处理方法基本上分为两类:基于罚函数的约束处理技术和基于多目标优化技术的约束处理技术.由于罚函数法在使用中不需要约束函数和目标函数的解析性质,因此经常被应用于约束优化问题,但该类方法对罚因子有很强的依赖性,需要根据具体问题平衡罚函数与目标函数.为了避免复杂罚函数的构造,Verdegay等[8]将进化算法中的竞争选择用于约束处理,并在比较两个解的性能时提出了三个准则,但他的第三个准则—可行解优于不可行解—这一准则合理性不强 .然而该文的这一准则却为进化算法求解约束优化问题提供了新思路,获得了良好效果.
因为在现实中存在一大类约束优化问题,其最优解位于约束边界上或附近,对于这类问题,在最优解附近的不可行解的适应值很可能优于位于可行域内部的大部分可行解的适应值,因此无论从适应值本身还是从最优解的相对位置考虑,这样的不可行解对找到最优解都是很有帮助的,故如何有效利用搜索过程中的部分具有较好性质的不可行解是解决此类问题的难点之一.基于以上考虑,本文拟给出一种求解约束多目标优化问题的基于双群体机制的差分进化算法,并对文中算法的时间复杂度与NSGA-Ⅱ[9]和SPEA[10]进行比较,最后用实验仿真说明文中算法的可行性及有效性.
2 用于约束优化的双群体差分进化算法
2.1 差分进化算法
差分进化算法是一类简单而有效的进化算法,已被成功应用于求解无约束单目标和多目标优化问题 [11-14].该算法在整个运行过程中保持群体的规模不变,它也有类似于遗传算法的变异、交叉和选择等操作,其中变异操作定义如下:
(3)
其中,为从进化群体中随机选取的互不相同的三个个体,为位于区间中的参数.(3)式表示从种群中随机取出的两个个体的差,经参数放大或缩小后被加到第三个个体上,以构成新的个体.为了增加群体的多样性,交叉操作被引入差分进化算法,具体操作如下:
针对父代个体的每一分量,产生位于区间中的随机数,根据与参数的大小关系确定是否用替换,以得到新的个体,
其中.如果新个体优于父代个体,则用来替换,否则保持不变.在差分进化算法中,选择操作采取的是贪婪策略,即只有当产生的子代个体优于父代个体时才被保留,否则,父代个体被保留
文档评论(0)