进化算法复习:IDE

首先先介绍传统的差分进化(DE)算法的变异操作
在这里插入图片描述
其中 x b ! = x r 1 ! = x r 2 x_b != x_{r1} != x_{r2} ,这三个变量均为种群中的任意一个个体。

IDE(Individual-dependent Differential Evolution) details

  • IDE提出了一种新的便以机制:fitness排名高的个体会配置更低的缩放因子F的来exploit他附近的promising区域,fitness排名低的个体则配置更高的缩放因子F来explore距离他更远的区域来寻找更好的solution
  • IDE提出一种基于排名的机制,在变异和交叉前首先对所有个体进行排序,更新公式为在这里插入图片描述
  • IDE在每次迭代前将个体分为两个集合S(superior)和I(inferior)(S中的fitness比I的小),IDE的变异公式为
    在这里插入图片描述
    在算法的前期 o = i o=i ,在算法的后期 o o 随机选取(在算法前期为了加强种群多样性,在算法后期为了加快收敛)。 b e t t e r better 从S中随机抽取。当o属于I的时候,可以用S的个体来引导个体去探索。怎么来定义算法前期和后期呢,使用一个阈值 g t g_t 来划分。连续T代,后代成功进入下一代的比例SR都小于SRT时,改变变异策略。从为了加大种群多样性到为了加快收敛速度。
  • 根据第一个公式中交叉率进行交叉

猜你喜欢

转载自blog.csdn.net/nickkissbaby_/article/details/89198107