基于虚拟适应度和Pareto解集分层的改进优化算法制造技术

技术编号:18713569 阅读:14 留言:0更新日期:2018-08-21 23:05
本发明专利技术公开了一种基于虚拟适应度和Pareto解集分层的改进优化算法,其特征按如下步骤进行:步骤1、算法初始化;步骤2、根据Pareto支配关系更新萤火虫位置;步骤3、更新萤火虫亮度;步骤4、更新和维护外部档案;步骤5、输出最优解。本发明专利技术在萤火虫初始化阶段以及更新位置和亮度阶段引入Pareto解集分层方法以及虚拟适应度的概念,一方面降低了非劣解排序计算的复杂度,提高了运行速度,另一方面使得准Pareto域中的个体能均匀地扩展到整个Pareto域,保证不丢失最佳个体,避免结果不陷入局部最优。

Improved optimization algorithm based on virtual fitness and Pareto solution set

The invention discloses an improved optimization algorithm based on virtual fitness and Pareto decomposition hierarchy, which is characterized by following steps: step 1, algorithm initialization; step 2, updating firefly position according to Pareto domination; step 3, updating firefly brightness; step 4, updating and maintaining external files; step 5, output. The optimal solution. The invention introduces the Pareto disaggregation hierarchical method and the concept of virtual fitness in the initialization stage, the update position and brightness stage of the firefly. On the one hand, it reduces the complexity of non-inferior solution sorting calculation, improves the running speed, on the other hand, it makes the individuals in the quasi-Pareto domain extend evenly to the whole Pareto domain, and guarantees the whole Pareto domain. Do not lose the best individual, avoid the result not getting into the local optimum.

【技术实现步骤摘要】
基于虚拟适应度和Pareto解集分层的改进优化算法
本专利技术涉及多目标优化算法领域,具体的说是一种基于虚拟适应度和Pareto解集分层的改进优化算法。
技术介绍
在大多数工程和科学领域内,很多问题都是多目标优化问题,即存在多个彼此冲突的目标,用什么方法可以获取这类问题的最优解,一直备受学术界和工程界关注。多目标优化与单目标优化不同,多目标优化的问题里,大多数情况下,某目标的改善可能引起其他目标性能的降低,同时使多个目标均达到最优是不可能的,只能在各目标之间进行协调权衡和折中处理,使所有目标函数尽可能达到最优,而且问题的最优解往往由许多的Pareto最优解组成。萤火虫算法(FA)是目前比较新颖的一种群智能优化算法,该算法通过萤火虫个体之间的相互吸引达到寻优目的,与其他的群智能优化算法相比,萤火虫算法具有概念简单,流程清晰,需要调整的参数较少,鲁棒性较好的特点,并且具有较好的寻优精度和收敛速度。现有的萤火虫多目标优化算法的研究工作还处于初级阶段,还有许多领域需要探索,关于多目标萤火虫算法外部档案的更新和维护中还在使用比较初级的方法:对于非劣解集中的每个非劣解Ns,如果Ns被档案成员支配,则拒绝该非劣解加入外部档案;如果Ns不被档案成员支配,则将Ns加入外部档案中;如果Ns支配了档案中的其他解,则移除档案中被支配的解。在维护外部档案的过程中,往往通过限定外部档案的容量大小或者采用自适应网格法评估个体领域密度,采用自适应网格法评估密度需要把搜索空间划分成若干个表格,依次判断每个网格的所有个体数目,当Ns加入外部档案后,如果Ns在已有网格的内部,则选择非劣解最多的网格,从该网格中随机删除一个解,如果Ns在已有网格的外部,则重新划分网格。然而上述方法仍然存在如下缺陷:⑴采用上述的外部档案更新方法,每次迭代中,对于每个Ns都需要计算一次,判断是否加入外部档案;每次Ns加入外部档案后,需要对外部档案的所有个体重新判断支配关系。大大增加了计算量,增加算法设计的复杂度。⑵在外部档案的维护中,往往只通过限定外部档案的容量大小或者采用自适应网格法评估密度。只通过限定外部档案的容量大小会导致准Pareto域中的个体不能扩展到整个Pareto域,也不能均匀分布在Pareto域,可能会导致最佳个体的丢失。采用自适应网格法评估密度则大大增加了计算量,并且也不能使得外部档案中的解均匀分布在Pareto域。
技术实现思路
本专利技术为了克服现有技术存在的不足之处,提出了一种基于虚拟适应度和Pareto解集分层的改进优化算法,以期能够使得在外部档案更新过程中,减少计算量,简化算法;并且在外部档案的维护中,可以使得准Pareto域中的个体能均匀扩展到整个Pareto域,扩大采样空间,防止最佳个体丢失,提高算法的运算速度和鲁棒性。为了解决上述问题,本专利技术采用的技术方案是:本专利技术一种基于虚拟适应度和Pareto解集分层的改进优化算法的特点是将虚拟适应度和Pareto解集分层用于改进萤火虫算法,并按如下步骤进行:步骤1、算法初始化,包括设定算法参数、初始化萤火虫位置、初始化萤火虫亮度、对初始化后的种群进行非支配排序;步骤2、根据Pareto支配关系更新萤火虫位置;步骤3、更新萤火虫亮度;步骤4、更新和维护外部档案;步骤5、输出最优解。本专利技术所述的基于虚拟适应度和Pareto解集分层的改进优化算法的特点也在于:所述步骤1是按如下过程进行:I.设定算法参数;II.初始化萤火虫位置;III.根据萤火虫位置计算目标函数值,即萤火虫亮度;IV.对初始化的萤火虫种群进行Pareto解集分层和计算虚拟适应度;其过程在于:首先,让所有的萤火虫都相互比较,判断萤火虫i是否支配萤火虫j,如果i支配j,则将i所代表的位置序号记录到j的支配解集中,直至全部比较结束。然后,统计各个萤火虫的支配解集中元素数目,其中支配解集为空的萤火虫代表目前最优解,将所有的目前最优解放入rank为1的解集中,并且在原来萤火虫种群中剔除目前最优解;在按照上述过程让所有的萤火虫重新相互比较,直至所有种群都全部分层。最后,同一rank等级下计算拥挤距离,即虚拟适应度;个体i的拥挤距离是目标空间上与i相邻的2个体i+1和i-1之间的距离,其计算步骤为:①对同一rank等级下的个体初始化距离,令L[i]d=0(其中L[i]d表示任意个体i的拥挤距离)。②对于同层个体按第m个目标函数值升序排列。③使得排序边缘的个体具有选择优势,给定一个大数,令L[0]d=L[end]d=inf。④对排序中间的个体,求取拥挤距离,即式中,L[i+1]m为第i+1个体的第m目标函数值,和分别为集合中第m目标函数值的最大值和最小值。⑤对不同的目标函数,重复步骤②~④的操作,得到拥挤距离L[i]d,通过优先选择拥挤距离较大的个体,使得结果在目标空间比较均匀分布,以维持群体多样性。本专利技术所述的基于虚拟适应度和Pareto解集分层的改进优化算法的特点也在于:所述步骤2是按如下过程进行:I.首先建立萤火虫i的绝对亮度Ii,即i位置的萤火虫的目标函数值,并且为了方便,本专利技术采用极小值模型,所有对原有的算法概念进行修改:绝对亮度大的萤火虫向绝对亮度小的萤火虫移动。II.计算萤火虫i到萤火虫j的笛卡尔距离,即III.计算萤火虫i对萤火虫j的吸引力,假设萤火虫i和j之间的吸引力与笛卡尔距离成比例,即式中,β0为最大吸引力,即在光源处(r=0)萤火虫的吸引力,由开始的初始化确定数值。IV.根据Pareto支配关系更新萤火虫位置,Pareto支配关系有如下定义:具体方法为:对应种群中任意两只萤火虫i和j,基于Pareto支配的概念,判断萤火虫之间的Pareto支配关系。如果萤火虫i支配萤火虫j,则i代表的解更为优秀,j会被i吸引按照下面公式(5)更新位置,不被任何其他萤火虫吸引的萤火虫代表了该种群的Pareto非劣解,它们随机移动。在位置更新公式中,本专利技术采用变步长与定步长结合的方式,在萤火虫距离较小时,采用变步长,减小随机项,限制算法自主探索能力,让吸引力在萤火虫位置更新过程中占主导作用;在萤火虫距离较大时采用定步长,限制随机项,防止算法不收敛。式中α为常数,由设定算法参数时确定,一般可以取α∈[0,1]。V.检查得到的新的位置所代表的的新解是否在限制范围内,如果解不在,需要对解修正。本专利技术所述的基于虚拟适应度和Pareto解集分层的改进优化算法的特点也在于:所述步骤4是按如下过程进行:I.对更新过的萤火虫种群按照步骤1中的Pareto解集分层方法和计算虚拟适应度的方法重新对萤火虫种群进行Pareto解集分层和计算同一等级下的虚拟适应度。II.建立和维护外部档案,有如下过程:①限定外部档案的个体规模,设定外部档案最大容量为N,即非劣解的个数最多为N,防止因为非劣解规模过大导致计算代价过大。②对于进行了Pareto解集分层和计算虚拟适应度萤火虫种群,按照rank等级由小到大放入外部档案,并且可能会出现有一个等级的个体无法全部放入外部档案。③针对这个等级的全部个体,按照所计算的虚拟适应度,由大到小逐次放入外部档案,直至外部档案达到最大容量。III.继续循环,逐次迭代,按照上述所有步骤依次更新外部档案。与已有技术相比,本专利技术的有益效果体现在:本文档来自技高网
...

【技术保护点】
1.一种基于虚拟适应度和Pareto解集分层的改进优化算法,其特征是,在传统多目标萤火虫算法中引入了虚拟适应度的概念和Pareto解集分层方法,并按如下步骤进行:步骤1、算法初始化,包括设定算法参数、初始化萤火虫位置、初始化萤火虫亮度、对初始化后的种群进行非支配排序;步骤2、根据Pareto支配关系更新萤火虫位置;步骤3、更新萤火虫亮度;步骤4、更新和维护外部档案;步骤5、输出最优解。

【技术特征摘要】
1.一种基于虚拟适应度和Pareto解集分层的改进优化算法,其特征是,在传统多目标萤火虫算法中引入了虚拟适应度的概念和Pareto解集分层方法,并按如下步骤进行:步骤1、算法初始化,包括设定算法参数、初始化萤火虫位置、初始化萤火虫亮度、对初始化后的种群进行非支配排序;步骤2、根据Pareto支配关系更新萤火虫位置;步骤3、更新萤火虫亮度;步骤4、更新和维护外部档案;步骤5、输出最优解。2.根据权利要求1所述的基于虚拟适应度和Pareto解集分层的改进优化算法,其特征是,步骤1按如下过程进行:I.设定算法参数;II.初始化萤火虫位置;III.根据萤火虫位置计算目标函数值,即萤火虫亮度;IV.对初始化的萤火虫种群进行Pareto解集分层和计算虚拟适应度;其过程在于:首先,让所有的萤火虫都相互比较,判断萤火虫i是否支配萤火虫j,如果i支配j,则将i所代表的位置序号记录到j的支配解集中,直至全部比较结束;然后,统计各个萤火虫的支配解集中元素数目,其中支配解集为空的萤火虫代表目前最优解,将所有的目前最优解放入rank为1的解集中,并且在原来萤火虫种群中剔除目前最优解;再按照上述过程让所有的萤火虫重新相互比较,直至所有种群都全部分层;最后,同一rank等级下计算拥挤距离,即虚拟适应度;个体i的拥挤距离是目标空间上与i相邻的2个体i+1和i-1之间的距离,其计算步骤为:①对同一rank等级下的个体初始化距离,令L[i]d=0(其中L[i]d表示任意个体i的拥挤距离);②对于同层个体按第m个目标函数值升序排列;③使得排序边缘的个体具有选择优势,给定一个大数,令L[0]d=L[end]d=inf;④对排序中间的个体,求取拥挤距离,即式中,L[i+1]m为第i+1个体的第m目标函数值,和分别为集合中第m目标函数值的最大值和最小值;⑤对不同的目标函数,重复步骤②~④的操作,得到拥挤距离L[i]d,通过优先选择拥挤距离较大的个体,使得结果在目标空间比较均匀分布,以维持群体多样性。3.根据权利要求1所述的基于虚拟适应度和Pareto解集分层的改进优化算法,其特征是,步骤2按如下过程进行:I.首先建立萤火虫i的绝...

【专利技术属性】
技术研发人员:刘海涛许伦张潮
申请(专利权)人:南京工程学院
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1