An Improved Differential Evolution Algorithm for Unconstrained Optimization Problems (用于无约束优化问题改进的差分进化算法 )

1.算法背景及策略:

传统差分演化(DE)算法具有过早收敛的倾向。 本算法提出了一种基于动态变异算子和反对学习策略的改进型DE。 这些机制可以扩大搜索范围,有助于平衡DE的探索和开发。

2.算法步骤:

(1)初始化随机生成种群,执行经典DE算法中的变异,交叉,选择操作

(2)动态变异算子:

高斯分布和柯西分布是随机变量的主要分布函数。当n趋于无穷大时,t分布趋于高斯分布。当n为1时,t分布变化为Cauchy分布。 T分布和柯西分布将平衡算法中的探索和利用。

构建以下变异算子:

Xji(t)=Xji(t)+1kρ,Xji(t)=Xji(t)+1kη,k=2dj+i=1NPD(G(t)Xi(t))NP

其中dj是第j维间隔的长度,DGtXit是全局最优位置和第i个个体位置的欧几里德距离。 i=1NPD(G(t)Xi(t))表示群体聚集水平,显然变异算子是动态的,随机选择三个个体适应性较差,经过变异算子更新,可以保持种群多样性,深入发展搜索区域,避免陷入局部最优。

(3)反向学习:

反向学习(OBL)经常被应用于许多最优算法。 OBL的主要思想是计算和评估可行解及其相反方向解。 选择更好的解决方案进入下一代。

XI=(x1i,x2i,,xNDi)是搜索区域中的一个可行解,其中xj[aj,bj],则反向点可以定义如下

x¯ji=aj+bjxji.

Xi=(x1i,x2i,,xNDi)是种群中的一个个体,Xi=(x1i,x2i,,xNDi)是这个个体的优化值,反向解定义如下:

xji=k(daj+dbj)xji,

k是随机数,[daj,dbj]是第j维搜索区域的动态边界,daj=min(xij),dbj=max(xij).

如果反向解超过搜索区域:xji=rand(aj,bj)  if  xji<aj  or  xji>bj,

An Improved Differential Evolution Algorithm for Unconstrained Optimization Problems

(3)结论:1997年以来,提出了许多新的提出的DE算法。然而,其中大多数集中在选择适当的控制参数。 在本算法中提出了两种不同的方法来平衡DE算法的探索和利用。 动态变异算子和基于对立的学习与DE结合。实验执行效果比DE要好。

相关文章: