DE与传统的进化算法相比,利用随机选择的不同个体生成的比例差分矢量对当前代个体进行扰动,因此无需单独使用概率分布来生成个体。存在类似于进化算法的计算步骤,包括变异、交叉和选择三种操作。
首先在整个搜索空间随机生成N个初始种群个体
rand(0,1)是[0,1]上服从均匀分布的随机数。
1 变异操作
变异个体由下式产生
xp1,xp2,xp3为当前种群中随机选择的三个不相同参数矢量,并且p1≠p1≠p3≠i,F为[0,1]自己的缩放比例因子。变异操作相当于其中两个Xp2和Xp3的缩放差异信息,加在另一个未产生变异的的参数Xp1之上就会形成变异信息。
2交叉操作
交叉操作可以增加种群的多样性,操作如下:
给定的CR∈[0,1]为交叉概率,作为阈值使能随机选取变异个体hij和目标个体xij(父代解)中的基因(决策变量)组成新个体。
CR为取值[0,1]之间的交叉概率,rand(0,1)是[0,1]上均匀分布的随机数,用于确定至少有一维分量来自目标个体Xi
3选择操作
由评价函数对向量vi(g +1)和向量xi(g)进行比较
因此,通过这种机制可以保证子代种群中至少不比当前个体差,从而使种群的平均性能提高,并达到最优解。
差分进化算法(DE)
最新推荐文章于 2024-01-13 11:05:22 发布
差分进化算法是一种进化计算技术,它通过随机选择个体生成比例差分矢量进行变异,结合交叉和选择操作来优化种群。在初始阶段,随机生成种群,然后进行变异操作,利用两个个体的差值信息加到第三个个体上。交叉操作依据交叉概率随机选取基因组合,而选择操作则确保子代至少不劣于当前个体,从而逐步提升种群性能,寻找最优解。
摘要由CSDN通过智能技术生成