一种基于并行协同演化的高维多目标优化算法的制作方法

文档序号:15230377发布日期:2018-08-21 19:20阅读:379来源:国知局

本发明涉及智能优化算法领域,更具体地,涉及一种基于并行协同演化的高维多目标优化算法。



背景技术:

在现实世界中,许多问题可以表示成多目标优化问题(mop),即具有两个或者以上优化目标的问题。多目标优化问题和单目标优化问题具有本质上的区别。在单目标优化问题中最优解唯一的,但是对于多目标优化问题,由于目标之间相互冲突,所以它存在一组最优解。进化算法(ea)非常适用于解决多目标问题,因为运行它一次就能够得到一组比较好近似解。在过去十多年中,许多基于帕累托占优的进化被提出来并在低维多目标问题(两维或三维)取得了良好的效果。但是现实生活中,很多问题的目标个数超过3,即高维多目标优化问题(maop),这些传统的多目标进化算法的优化效果降低。因此,高维多目标优化进化算法是当前多目标优化领域的热点之一。近年来,针对高维多目标优化问题,许多新算法被提出来。

当前所提出的高维多目标进化算法主要分为以下几类:

1)基于帕累托占优的方法。该类方法主要是通过改变帕累托占优关系或者采用新的多样性维持机制来增强选择压力,从而改进传统基于帕累托占优的进化算法,进而解决高维多目标优化问题;

2)基于分解的方法。该类方法主要通过聚合函数来将高维多目标优化问题分解为一系列单目标优化子问题,然后再同时优化这些单目标优化子问题;

3)基于指标的方法。该类方法主要是通过定义一个特殊的指标,然后利用该指标来引导演化过程,从而解决高维多目标优化问题。



技术实现要素:

本发明提供一种基于并行协同演化的高维多目标优化算法,该算法平衡了高维多目标优化问题求解的收敛性和多样性。

为了达到上述技术效果,本发明的技术方案如下:

一种基于并行协同演化的高维多目标优化算法,包括以下步骤:

s1:设定目标个数m,最大评估次数mfe,初始化搜索一组解的初始种群p1且种群大小为n1,初始化寻找极值点的初始种群p2且种群大小为n2;

s2:生成一组方向向量w={w1,w2,…,w2m}来引导种群来寻找极值点;

s3:从p1中随机选出个体x1,然后从p1,p2两个种群随机选择一个种群,再从该种群中随机选出个体x2,对个体x1和x2进行交叉产生两个子代个体o1和o2,重复次产生子种群q1;

s4:从p2中随机选出个体y1,然后从p1,p2两个种群随机选择一个种群,再从该种群中随机选出个体y2,对个体y1和y2进行交叉产生两个子代个体q1和q2,重复次产生子种群q2;

s5:将种群p1,q1和q2进行合并,得到新种群r1,然后使用基于帕累托占优的环境选择策略从合并种群r1中选出个n1个体,得到种群a1,令p1=a1;

s6:将种群p2,q1和q2进行合并,得到新种群r2,然后,基于切比雪夫方程,计算种群r2中的每个个体的适应值,再根据适应值从小到大地对种群r2中的个体进行排序,最后,选择从r2中选出前n2个个体,得到种群a2,令p2=a2;

s7:复步骤s3-s8直到评估次数达到mfe,输出种群p1。

进一步地,所述步骤s2中生成方向向量w的过程是:

进一步地,所述步骤s6中计算个体的适应值rank(x)的过程是:

其中,x是种群的个体,fj(x)是个体x在第j个目标的值,是第i个权重方向wi的第j个分量;

rank(x)=min{index1(x),index2(x),…,index2m(x)}

其中x是种群的个体,indexi(x)为根据asfi值从小到大对种群r2中的个体进行排序后个体x的下标。

与现有技术相比,本发明技术方案的有益效果是:

本发明针对高维多目标优化问题求解的本质需求,即收敛性和分布性,维持两个种群,两者协同演化。其中,一个种群执行集中部分区域搜索以寻找pareto前沿上的极端点,而另一个种群优化整个高维多目标优化问题,企图获得具有良好收敛性和多样性的解。本发明的方法可以明显地改善基于帕累托的多目标进化算法在高维多目标优化问题的性能,很好地平衡了收敛性和多样性。

附图说明

图1为本发明方法的工作框架示意图;

图2为本发明的流程图。

具体实施方式

附图仅用于示例性说明,不能理解为对本专利的限制;

为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;

对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。

下面结合附图和实施例对本发明的技术方案做进一步的说明。

实施例1

如图1-2所示,一种基于并行协同演化的高维多目标优化算法,包括以下过程:

s1:设定目标个数m,最大评估次数mfe,初始化搜索一组兼顾收敛性与多样性的解的初始种群p1且种群大小为n1,初始化寻找极值点的初始种群p2且种群大小为n2;

s2:生成一组方向向量w={w1,w2,…,w2m}来引导种群来寻找极值点;

s3:从p1中随机选出个体x1,然后从p1,p2两个种群随机选择一个种群,再从该种群中随机选出个体x2,最后对个体x1和x2进行交叉产生两个子代个体o1和o2,重复次产生子种群q1;

s4:从p2中随机选出个体y1,然后从p1,p2两个种群随机选择一个种群,再从该种群中随机选出个体y2,最后对个体y1和y2进行交叉产生两个子代个体q1和q2,重复次产生子种群q2;

s5:将种群p1,q1和q2进行合并,得到新种群r1,然后直接使用基于帕累托占优的环境选择策略从合并种群r1中选出个n1个体,得到种群a1,令p1=a1;

s6:将种群p2,q1和q2进行合并,得到新种群r2,然后,基于切比雪夫方程,计算种群r2中的每个个体的适应值,再根据适应值从小到大地对种群r2中的个体进行排序。最后,选择从r2中选出前n2个个体,得到种群a2,令p2=a2;

s7:遍历每个目标fm,分别从种群p1和p2中选出在该目标fm上取值最小的两个个体x1和x2,如果fm(x1)>fm(x2),那么令x1=x2,再次遍历每个目标fm,分别从种群p1和p2中选出在该目标fm上取值最大的两个个体y1和y2,如果fm(y1)<fm(y2),那么令y1=y2。

s8:重复步骤s3-s8直到评估次数达到mfe,输出种群p1。

本实施例中,将传统算法spea2嵌入到框架中,并选取四个经典的无约束非线性高维多目标优化算例dtlz1,dtlz2,dtlz3,和dtlz4来说明本发明的实施步骤。

具体的求解步骤如下:

步骤1:目标个数设置为m=5,8,10,最大评估次数设置为mfe=400000,初始化搜索一组兼顾收敛性与多样性的解的初始种群p1且种群大小为n1=200,初始化寻找极值点的初始种群p2且种群大小为n2=100。

步骤2:生成一组方向向量w={w1,w2,…,w2m}来引导种群来寻找极值点。其中方向向量公式如下:

步骤3:从p1中随机选出个体x1,然后从p1,p2两个种群随机选择一个种群,再从该种群中随机选出个体x2,最后对个体x1和x2进行交叉产生两个子代个体o1和o2,重复次产生子种群q1。

步骤4:从p2中随机选出个体y1,然后从p1,p2两个种群随机选择一个种群,再从该种群中随机选出个体y2,最后对个体y1和y2进行交叉产生两个子代个体q1和q2,重复次产生子种群q2。

步骤5:将种群p1,q1和q2进行合并,得到新种群r1。然后直接使用spea2的环境选择策略从合并种群r1中选出个n1个体,得到种群a1,令p1=a1。

步骤6:将种群p2,q1和q2进行合并,得到新种群r2。然后,基于切比雪夫方程,计算种群r2中的每个个体的适应值,再根据适应值从小到大地对种群r2中的个体进行排序。最后,选择从r2中选出前n2个个体,得到种群a2,令p2=a2。

切比雪夫方程如下:

其中,x是种群的个体,fj(x)是个体x在第j个目标的值,是第i个权重方向wi的第j个分量;

适应值计算过程如下:

rank(x)=min{index1(x),index2(x),…,index2m(x)}

其中,indexi(x)为根据asfi值从小到大对种群r2中的个体进行排序后个体x的下标。

步骤7:遍历每个目标fm,分别从种群p1和p2中选出在该目标fm上取值最小的两个个体x1和x2,如果fm(x1)>fm(x2),那么令x1=x2。再次遍历每个目标fm,分别从种群p1和p2中选出在该目标fm上取值最大的两个个体y1和y2,如果fm(y1)<fm(y2),那么令y1=y2。

步骤8:如果没达到评估次数达到mfe,则返回步骤3,否则输出种群p1。

在本实施例中,为了说明本发明对经典多目标优化算法的优势,选取经典算法spea2作为比较算法,每种算法对各算例重复运行30次,计算每次运行结果的igd指标,取其平均值作为评价标准,优化结果如表1所示:

表1优化结果

通过本实施例的测试结果可以看出,本发明的框架可以改善基于帕累托占优的多目标进化算法在高维多目标优化问题的性能,证明了本发明的可行性和优越性。

相同或相似的标号对应相同或相似的部件;

附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;

显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1