Page 45 - 2023年第54卷第3期
P. 45
含一组优化问题的潜在解。在迭代过程中,根据优化函数计算每个解的适宜度,以个体和全体适宜度
极值为基准,不断更新全体粒子信息,进而搜索整个状态空间,最终使得适应度值最小,即找到优化
问题的全局最优解。
在传统 PSO算法的基础上,本文从粒子速度更新公式和变异扰动两个方面进行了改进:
1)粒子速度更新公式的改进。传统 PSO算法粒子速度更新公式如式(1)所示,本文在粒子速度更
新过程中保留了原本的搜索方法,同时引入了与全体最优粒子对应的 BP神经网络权值和阈值,将
IPSO算法和 BP神经网络的梯度下降法相结合,如式(2)所示。本文以 BP神经网络的输出误差作为适
宜度函数,在粒子速度计算过程中,将适宜度最优(即误差最小)的 BP神经网络权值和阈值导出,形
成与 IPSO算法粒子相同的数据编码格式,加入粒子速度计算过程。并通过动态系数 η依据计算进度
调整 IPSO算法与梯度下降法计算结果所占比例。
k
k
k + 1
k
k
k
v = v+ cr(P - x) + cr(P - x) (1)
ij ij 1 1 ij ij 2 2 gj ij
k
k
k + 1
k
k
k
v = (1 - η )[v+ cr(P - x) + cr(P - x)] + η V BPbest (2)
i j
ij
i j
i j
g j
i j
1 1
2 2
k
η = (3)
2K
式中:v为粒子速度;x为粒子位置;i为第 i个粒子,j为粒子的维度;k为当前的迭代次数;c、c
1 2
为学习因子;r、r为(0,1)内的随机数;P和 P 分别为个体和全体粒子适宜度极值;K为最大迭代
ij
gj
2
1
次数;V BPbest 为对应全体最优适宜度粒子的 BP神经网络的权值和阈值。
本文同时引入了惯性权重和动态学习因子,对粒子速度更新算法进行了改进。惯性权重采用陈博
文等 [21] 基于 Logistic回归曲线提出的衰减策略,将惯性权重变化分为下降、上升、再下降三个部分。
可在迭代计算初期提高粒子的广域搜索能力和收敛效率,中期随着权重转折上升而扩大搜索空间和寻
优能力,后期依靠局部搜索获得高精度解。非线性自适应改变的学习因子在算法初期提高个体极值的
权重,后期提高了全体极值的权重。本文采用了仝秋娟等 [22] 提出的学习因子异步变化规则,能够始终
保持 c和 c之和为 4。改进后的 IPSO算法粒子速度和位置更新公式如下:
1
2
k
k
k + 1
k
k
k
v = (1 - η )[ ω v+ cr(P - x) + cr(P - x)] + η V BPbest (4)
k + 1 {
ij
i j
i j
i j
g j
i j
1 1
2 2
k
k + 1
x = x+ v
ij
ij
ij
- -
- 2 k( ω max ω min ) ω max ω min
ω = + + ω max (5)
12
K - ( k - 6 )
1 + e K
f - f f - f
c= 2 + ave ,c= 2 - ave (6)
1
2
f - f f - f
ave min ave min
= 0;f为
式中:ω为惯性权重;ω max 、ω min 分别为最大惯性权重和最小惯性权重,本文 ω max = 0.8,ω min
该粒子本次迭代的适宜度值,f 和 f 分别为全体适宜度的平均值和最小值。
min
ave
2)粒子的变异扰动。为了提高粒子种群多样性,进一步扩大搜索空间,本文引入了变异扰动。在
粒子每次更新后,根据该粒子前 2次适宜度值变化趋势计算变异概率 p,若前 2次适宜度值变化幅度
均小于 5%,则增大变异概率。引入变异扰动有利于在迭代后期扩大搜索空间,跳出局部极值。根据
黄璇等 [23] 向 PSO算法引入的变异操作,本文设置的粒子速度变异公式和变异概率为:
ij
ij
min
x= { x+ (x- x )(1 - k?K)a,a>0.5 (7)
ij
x- (x- x )(1 - k?K)a,a ≤0.5
ij ij max
{ [(p+ p) - (p- p)cos( π k?K)],β <0.05
1
1
0
0
k
p= (8)
[(p+ p) - (p- p)cos( π k?K)]?2,β≥0.05
0
1
0
1
式中:x 、x 分别为粒子位置的最小和最大值;p、p为初始和最终概率,本文 p= 0.05 ,p= 0.35 ;
min max 0 1 0 1
β 为该粒子前 2次适宜度值变化幅度;a为(0,1)内的随机数。
( 3)IPSO - BP神经网络。本文 IPSO - BP神经网络算法流程如图 5所示,其具体实现步骤如下:①根
据实验数据构建含沙水体中目标鱼类死亡率的数据集,并进行归一化处理;②将数据集导入 IPSO - BP
— 2 9 5 —