正在加载图片...
·712· 智能系统学报 第12卷 x:(t)对应的反向解,其中 N(t))。[a(t),b(t)]为精英群体所构造的区间, xi(t)=k(a;(t)+b(t))-x(t) (6) 当反向解越过边界[a(t),b,(t)]时,可以用下列方 式中:a(t)=min(x,(t)),b(t)=max(x(t)为当前 式进行重置: 搜索区域的最小值和最大值,其随着迭代的改变, xi=a,(t),x写<a,(t) (8) 而发生变化;i∈[1,n]J∈[1,D];n是种群大小; xi=b(t),xi>b(t) D是解空间的维数:k是介于0~1的随机数。 2.3差分演化变异策略 2.2精英反向学习 在FA中,群体中的最优个体x✉引导群体向最 反向解的引入,可以扩大算法的搜索区域,但 优方向移动,如果x陷人局部最优,群体的移动终 对那些原解适应度值大于反向解适应度值的个体, 止,即收敛到局部最优,则群体无法到达全局最优。 对其进行反向区域的搜索,浪费时间,则应加强其 因此,本文为了求得全局最优解,引入差分变异策 领域搜索。而对原解适应度值小于反向解适应度 略,对x进行变异操作,使其陷入局部最优的概率 值的个体,对其进行反向区域的搜素价值要高于其 减小。 领域的开发价值。因此,本文将原解适应度值小于 本文要对最优个体进行变异操作,使其跳出局 反向解适应度值的个体作为研究对象,求其反向 部最优的概率增大,因此选择“DE/best/1”作为变 解,既可以扩大搜素区域,也能有效避免盲目搜索 异操作,公式为 带来的时间浪费。 Cg=xe,+F·(xn1J-xa2) (9) 同时,本文为了提高算法的收敛速度,首先在当前 式中:x,为最优个体的第j维;F是缩放系数;n1、 解所构造的空间中,求所有当前解的反向解:然后,通 n2是[1,n]上两个互不相同的随机整数,代表不同 过比较适应度值,选出那些原解适应度值大于反向解 个体的下标;j是维度:c是变异后的值。 适应度值的个体组成精英群体:最后,在精英群体构造 将变异后的个体和父代个体进行如下交叉 的新的搜索空间上,再求原解适应度值小于反向解适 操作: 应度值的个体的反向解。如果算法能收敛到全局最优 Ci' rand[0,1]≤CR或者j=rand(1,D) 解,则精英群体所形成的搜索区间必将收敛到最优解 .j' 其他 所在的区域,这样充分利用了精英群体的有效信息, (10) 在精英群体所构成的动态定义区间上生成反向解,引 式中:x为新生成个体的第j维;rand[0,1]是 导搜索向最优解靠近。 [0,1]的随机数:CR是交叉概率;rand(1,D)是[1, 定义3精英(elite)。设x,(t)=(xa,x2,…, D]的一个随机整数;参数F、CR分别设为1和0.1。 xD)是第1次迭代的一个解,其反向解为x(t), 2.4自适应步长 f(x)为目标函数。当f(x,(t)≥f八x:(t))时,称 在原始萤火虫算法FA中,步长因子α在每次 x,(t)为第t次迭代的精英个体,记为N,(t);当 迭代时保持不变。但是当α取较大的值时,增强了 f八x:(t))<f八x(t))时,称x,(t)为第t次迭代的普 算法的全局搜索能力,降低了算法的收敛速度和搜 索的精度:当α取较小的值时,有利于算法的局部 通个体,记为Q(t)。若精英群体的规模为p(1< p≤n,n为解的总个数)时,则p个精英个体可表示 搜索,提高了搜索精度和算法的收敛速度。在算法 为{N(t),N2(t),…,Nn(t)}C{x(t),x2(t),…, 迭代前期,较大的α有利于算法的全局搜索:在后 期,较小的α显得更有利。因此本文对α采用动态 x(t)}。 递减的方式,计算公式为 定义4精英反向解(elite opposite solution)i。 t 设x为普通个体x:在j维上的值,则其反向解可定 T- 10 义为 a,1=a·(T),t=1,2,…,T(11) xi(t)=k(a;(t)+b(t))-x(t) (7)》 式中t为迭代次数。 式中:k是介于0~l的随机数;a(t)=min(V,(t), 2.5E0FA算法描述 N2(t),…,N(t));b(t)=max(N(t),N2(t),…, EOFA算法流程如下。xi(t)对应的反向解,其中 x ∗ ij (t) = k(aj(t) + bj(t)) - xij(t) (6) 式中: a(t) = min(xij(t)),b(t) = max(xij(t)) 为当前 搜索区域的最小值和最大值,其随着迭代的改变, 而发生变化; i ∈ [1,n],j ∈ [1,D];n 是种群大小; D 是解空间的维数;k 是介于 0~1 的随机数。 2.2 精英反向学习 反向解的引入,可以扩大算法的搜索区域,但 对那些原解适应度值大于反向解适应度值的个体, 对其进行反向区域的搜索,浪费时间,则应加强其 领域搜索。 而对原解适应度值小于反向解适应度 值的个体,对其进行反向区域的搜素价值要高于其 领域的开发价值。 因此,本文将原解适应度值小于 反向解适应度值的个体作为研究对象,求其反向 解,既可以扩大搜素区域,也能有效避免盲目搜索 带来的时间浪费。 同时,本文为了提高算法的收敛速度,首先在当前 解所构造的空间中,求所有当前解的反向解;然后,通 过比较适应度值,选出那些原解适应度值大于反向解 适应度值的个体组成精英群体;最后,在精英群体构造 的新的搜索空间上,再求原解适应度值小于反向解适 应度值的个体的反向解。 如果算法能收敛到全局最优 解,则精英群体所形成的搜索区间必将收敛到最优解 所在的区域[16] ,这样充分利用了精英群体的有效信息, 在精英群体所构成的动态定义区间上生成反向解,引 导搜索向最优解靠近。 定义 3 精英( elite)。 设 xi(t) = (xi1 ,xi2 ,…, xiD) 是第 t 次迭代的一个解,其反向解为 x ∗ i (t), f(x) 为目标函数。 当 f(xi(t)) ≥ f(x ∗ i (t)) 时,称 xi(t) 为第 t 次迭代的精英个体, 记为 Ni(t) ; 当 f(xi(t)) < f(x ∗ i (t)) 时,称 xt(t) 为第 t 次迭代的普 通个体,记为 Qi(t)。 若精英群体的规模为 p(1 < p ≤n,n 为解的总个数) 时,则 p 个精英个体可表示 为 {N1(t),N2(t),…,Np(t)} ⊆ {x1(t),x2(t),…, xn(t)}。 定义 4 精英反向解(elite opposite solution) [18] 。 设 xij 为普通个体 xi 在 j 维上的值,则其反向解可定 义为 x ∗ ij (t) = k(aj(t) + bj(t)) - xij(t) (7) 式中:k 是介于 0 ~ 1 的随机数; aj(t) = min(N1j(t), N2j(t),…,Npj(t));bj(t) = max(N1j(t),N2j(t),…, Npj(t))。 [aj(t),bj(t)] 为精英群体所构造的区间, 当反向解越过边界 [aj(t),bj(t)] 时,可以用下列方 式进行重置: x ∗ ij = aj(t), x ∗ ij < aj(t) x ∗ ij = bj(t), x ∗ ij > bj(t) { (8) 2.3 差分演化变异策略 在 FA 中,群体中的最优个体 xbest引导群体向最 优方向移动,如果 xbest 陷入局部最优,群体的移动终 止,即收敛到局部最优,则群体无法到达全局最优。 因此,本文为了求得全局最优解,引入差分变异策 略,对 xbest 进行变异操作,使其陷入局部最优的概率 减小。 本文要对最优个体进行变异操作,使其跳出局 部最优的概率增大,因此选择“DE / best / 1” 作为变 异操作,公式为 cij = xbest, j + F· xn1 ,j - xn2 ,j ( ) (9) 式中: xbest,j 为最优个体的第 j 维; F 是缩放系数; n1 、 n2 是 [1,n] 上两个互不相同的随机整数,代表不同 个体的下标; j 是维度;cij是变异后的值。 将变异后的个体和父代个体进行如下交叉 操作: x - best, j = cij, rand[0,1] ≤ CR 或者 j = rand(1,D) xbest, j, 其他 { (10) 式中:x - best,j 为新生成个体的第 j 维; rand[0,1] 是 [0,1]的随机数;CR 是交叉概率;rand(1,D)是[1, D]的一个随机整数;参数 F、CR 分别设为 1 和 0.1。 2.4 自适应步长 在原始萤火虫算法 FA 中,步长因子 α 在每次 迭代时保持不变。 但是当 α 取较大的值时,增强了 算法的全局搜索能力,降低了算法的收敛速度和搜 索的精度;当 α 取较小的值时,有利于算法的局部 搜索,提高了搜索精度和算法的收敛速度。 在算法 迭代前期,较大的 α 有利于算法的全局搜索;在后 期,较小的 α 显得更有利。 因此本文对 α 采用动态 递减的方式,计算公式为 αt+1 = αt·( T - t 10 T ), t = 1,2,…,T (11) 式中 t 为迭代次数。 2.5 EOFA 算法描述 EOFA 算法流程如下。 ·712· 智 能 系 统 学 报 第 12 卷
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有