本文主要是介绍基于混沌收敛因子和惯性权重的鲸鱼优化算法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 一、理论基础
- 1、鲸鱼优化算法
- 2、改进的鲸鱼优化算法
- (1)增强种群多样性的初始化策略
- (2)混沌收敛因子和惯性权重协同更新策略
- (3)多项式变异策略
- 二、仿真实验与结果分析
- 三、参考文献
一、理论基础
1、鲸鱼优化算法
请参考这里。
2、改进的鲸鱼优化算法
(1)增强种群多样性的初始化策略
采用随机方法产生初始种群不能保证初始种群较好地覆盖待优化问题的寻优空间,导致初始种群分布性较差,所以本文采用一种均匀化与随机化相结合的初始化方法。
假设种群规模为 N N N,解空间的维度为 d d d,解空间中各维变量 x j ( j ∈ [ 1 , d ] ) x_j(j\in[1,d]) xj(j∈[1,d])的寻优区间为 [ l j , u j ] [l_j,u_j] [lj,uj]。将区间 [ l j , u j ] [l_j,u_j] [lj,uj]均匀划分成 N N N个等长的子区间,初始个体在每一维上的取值需要首先通过随机选定子区间、然后在该子区间内产生随机值而获得。均匀划分后的各子区间有且仅有一次被选取的机会,这样可在最大程度上保证初始群体的多样性。具体流程如下。
(2)混沌收敛因子和惯性权重协同更新策略
在标准WOA算法中,收敛因子 a a a随迭代次数的增加从2线性减小到0,然而这种简单的参数调整策略不能完全体现实际的鲸鱼群体狩猎过程。因此,本文设计一种带混沌扰动的收敛因子非线性变化策略,混沌收敛因子更新公式为 a = 2 [ 1 − ( t t max ) 1 4 ] + 2 ∣ h t ∣ { 1 − ( t t max ) 2 − [ 1 − ( t t max ) 1 4 ] } (1) a=2\left[1-\left(\frac{t}{t_{\max}}\right)^{\frac14}\right]+2|h_t|\left\{1-\left(\frac{t}{t_{\max}}\right)^2-\left[1-\left(\frac{t}{t_{\max}}\right)^{\frac14}\right]\right\}\tag{1} a=2[1−(tmaxt)41]+2∣ht∣{1−(tmaxt)2−[1−(tmaxt)41]}(1)其中, h t = 1 − 2 ( h t − 1 ) 2 h_t=1-2\left(h_{t-1}\right)^2 ht=1−2(ht−1)2,且 h t ∈ [ 0 , 1 ] , h 0 ≠ 0.5 h_t\in[0,1],h_0\neq0.5 ht∈[0,1],h0=0.5。
收敛因子 a a a的衰减趋势如图1所示。在搜索前期,收敛因子整体较大,算法注重于全局寻优,但由于混沌扰动因素的存在,在某些寻优迭代中,收敛因子取值较小,算法进行局部寻优,可以提高收敛速度。在搜索后期,收敛因子整体较小,算法注重于局部寻优,同样由于混沌扰动,收敛因子在部分寻优迭代中取值较大,算法可在较大空间中寻优,有助于跳出局部最优。
为了进一步平衡算法的全局寻优和局部探索能力,本文引入了惯性权重策略 ,让其配合混沌收敛因子共同协调算法的全局寻优和局部开发能力。惯性权重更新公式为 w = w initial − ( w initial − w final ) sin ( π 2 ⋅ t t max ) (2) w=w_{\text{initial}}-(w_{\text{initial}}-w_{\text{final}})\sin\left(\frac\pi2\cdot\frac{t}{t_{\max}}\right)\tag{2} w=winitial−(winitial−wfinal)sin(2π⋅tmaxt)(2)其中, w initial w_{\text{initial}} winitial和 w final w_{\text{final}} wfinal分别为惯性权重 w w w的初始值和终止值,其取值分别为0.9和0.2。
加入惯性权重更新策略后,当前个体包围猎物时的位置更新公式以及螺旋式运动时的位置更新公式分别为 X ( t + 1 ) = w ⋅ X ∗ ( t ) − A ∣ C ⋅ X ∗ ( t ) − X ( t ) ∣ (3) X(t+1)=w\cdot X^*(t)-A\left|C\cdot X^*(t)-X(t)\right|\tag{3} X(t+1)=w⋅X∗(t)−A∣C⋅X∗(t)−X(t)∣(3) X ( t + 1 ) = w ⋅ X ∗ ( t ) + D ′ e b l cos ( 2 π l ) (4) X(t+1)=w\cdot X^*(t)+D'e^{bl}\cos(2\pi l)\tag{4} X(t+1)=w⋅X∗(t)+D′eblcos(2πl)(4)
(3)多项式变异策略
在标准鲸鱼优化算法的迭代后期,由于搜索策略的原因,种群中所有鲸鱼个体都会向最优个体聚集,导致种群多样性降低。如果此时最优个体为局部最优解,则算法将出现早熟收敛。为了防止出现这类问题,本文对当前最优鲸鱼位置引入了多项式变异,多项式变异算子形式如下 X i ′ = X i + δ i ( u i − l i ) (5) X_i'=X_i+\delta_i(u_i-l_i)\tag{5} Xi′=Xi+δi(ui−li)(5)其中, δ i = { ( 2 r i ) 1 / ( η + 1 ) r i < 0.5 1 − [ 2 ( 1 − r i ) ] 1 / ( η + 1 ) r i ≥ 0.5 (6) \delta_i=\begin{dcases}(2r_i)^{1/(\eta+1)}\quad\quad\quad\quad\quad\, r_i<0.5\\[2ex]1-\left[2(1-r_i)\right]^{1/(\eta+1)}\quad r_i\geq0.5\end{dcases}\tag{6} δi=⎩⎨⎧(2ri)1/(η+1)ri<0.51−[2(1−ri)]1/(η+1)ri≥0.5(6)式(5)~(6)中, u i u_i ui、 l i l_i li分别为变量 X i X_i Xi的上、下界; r i r_i ri为区间 [ 0 , 1 ] [0,1] [0,1]的随机数; η \eta η为变异分布指数,本文取值为30。
二、仿真实验与结果分析
将CWOA与WOA和IWOA[2]进行对比,以文献[1]中表1的30维的12个函数为例,实验设置种群规模为30,最大迭代次数为500,每种算法独立运算100次,结果显示如下:
函数:F1
WOA:最差值: 5.0552e-71, 最优值: 6.1844e-86, 平均值: 6.8793e-73, 标准差: 5.1233e-72, 秩和检验: 5.64e-39
IWOA:最差值: 3.5475e-113, 最优值: 3.8653e-128, 平均值: 6.8774e-115, 标准差: 4.4571e-114, 秩和检验: 5.64e-39
CWOA:最差值: 0, 最优值: 0, 平均值: 0, 标准差: 0, 秩和检验: NaN
函数:F2
WOA:最差值: 4.2265e-50, 最优值: 4.1969e-59, 平均值: 1.2205e-51, 标准差: 5.8304e-51, 秩和检验: 2.5621e-34
IWOA:最差值: 1.3079e-65, 最优值: 6.5135e-75, 平均值: 4.2263e-67, 标准差: 1.8921e-66, 秩和检验: 2.5621e-34
CWOA:最差值: 1.8783e-173, 最优值: 6.4264e-205, 平均值: 1.8783e-175, 标准差: 0, 秩和检验: 1
函数:F3
WOA:最差值: 90.4992, 最优值: 0.0091817, 平均值: 47.8724, 标准差: 28.7591, 秩和检验: 2.5621e-34
IWOA:最差值: 66.9236, 最优值: 0.00023752, 平均值: 22.1856, 标准差: 17.7885, 秩和检验: 2.5621e-34
CWOA:最差值: 9.1379e-175, 最优值: 5.5243e-196, 平均值: 1.7891e-176, 标准差: 0, 秩和检验: 1
函数:F4
WOA:最差值: 28.7528, 最优值: 26.8789, 平均值: 27.7583, 标准差: 0.43217, 秩和检验: 0.68953
IWOA:最差值: 28.891, 最优值: 3.6695, 平均值: 28.0532, 标准差: 4.1215, 秩和检验: 1.6116e-30
CWOA:最差值: 28.268, 最优值: 27.0873, 平均值: 27.7422, 标准差: 0.22632, 秩和检验: 1
函数:F5
WOA:最差值: 0.01963, 最优值: 5.0594e-05, 平均值: 0.0037346, 标准差: 0.0040676, 秩和检验: 8.2533e-32
IWOA:最差值: 0.0088257, 最优值: 6.7849e-05, 平均值: 0.0020315, 标准差: 0.0020893, 秩和检验: 4.5902e-29
CWOA:最差值: 0.00053376, 最优值: 8.5821e-09, 平均值: 0.00010664, 标准差: 0.0001123, 秩和检验: 1
函数:F6
WOA:最差值: 8.657, 最优值: 0, 平均值: 0.08657, 标准差: 0.8657, 秩和检验: 0.013271
IWOA:最差值: 5.6843e-14, 最优值: 0, 平均值: 1.7053e-15, 标准差: 9.7456e-15, 秩和检验: 0.082738
CWOA:最差值: 0, 最优值: 0, 平均值: 0, 标准差: 0, 秩和检验: NaN
函数:F7
WOA:最差值: 7.9936e-15, 最优值: 8.8818e-16, 平均值: 4.0856e-15, 标准差: 2.4994e-15, 秩和检验: 3.0982e-24
IWOA:最差值: 7.9936e-15, 最优值: 8.8818e-16, 平均值: 4.2277e-15, 标准差: 2.3041e-15, 秩和检验: 2.8564e-27
CWOA:最差值: 8.8818e-16, 最优值: 8.8818e-16, 平均值: 8.8818e-16, 标准差: 0, 秩和检验: NaN
函数:F8
WOA:最差值: 0.15504, 最优值: 0, 平均值: 0.0030291, 标准差: 0.018558, 秩和检验: 0.082748
IWOA:最差值: 1.0064, 最优值: 0, 平均值: 0.055566, 标准差: 0.22215, 秩和检验: 0.013273
CWOA:最差值: 0, 最优值: 0, 平均值: 0, 标准差: 0, 秩和检验: NaN
函数:F9
WOA:最差值: 2.3543e-103, 最优值: 1.0294e-142, 平均值: 2.6804e-105, 标准差: 2.3685e-104, 秩和检验: 5.64e-39
IWOA:最差值: 2.4773e-178, 最优值: 3.3018e-228, 平均值: 3.5105e-180, 标准差: 0, 秩和检验: 5.64e-39
CWOA:最差值: 0, 最优值: 0, 平均值: 0, 标准差: 0, 秩和检验: NaN
函数:F10
WOA:最差值: 3.7908e-65, 最优值: 2.4301e-82, 平均值: 4.5778e-67, 标准差: 3.8628e-66, 秩和检验: 5.64e-39
IWOA:最差值: 4.4858e-107, 最优值: 2.7888e-126, 平均值: 4.507e-109, 标准差: 4.4857e-108, 秩和检验: 5.64e-39
CWOA:最差值: 0, 最优值: 0, 平均值: 0, 标准差: 0, 秩和检验: NaN
函数:F11
WOA:最差值: 0.099295, 最优值: 0.0041727, 平均值: 0.023861, 标准差: 0.018302, 秩和检验: 0.69494
IWOA:最差值: 0.61227, 最优值: 0.034846, 平均值: 0.19255, 标准差: 0.12939, 秩和检验: 6.6809e-34
CWOA:最差值: 0.045748, 最优值: 0.0053462, 平均值: 0.0201, 标准差: 0.0083432, 秩和检验: 1
函数:F12
WOA:最差值: 1.233, 最优值: 0.096915, 平均值: 0.51947, 标准差: 0.24064, 秩和检验: 2.2364e-32
IWOA:最差值: 2.6685, 最优值: 0.36372, 平均值: 1.4356, 标准差: 0.52229, 秩和检验: 2.5621e-34
CWOA:最差值: 0.22319, 最优值: 0.046715, 平均值: 0.10708, 标准差: 0.038974, 秩和检验: 1
实验结果表明:CWOA在寻优精度、收敛速度和鲁棒性方面均有明显优势。
三、参考文献
[1] 邹浩, 李维刚, 李阳, 等. 基于混沌收敛因子和惯性权重的鲸鱼优化算法[J]. 武汉科技大学学报, 2022, 45(4): 304-313.
[2] 龙文, 蔡绍洪, 焦建军, 等. 求解大规模优化问题的改进鲸鱼优化算法[J]. 系统工程理论与实践, 2017, 37(11): 2983-2994.
这篇关于基于混沌收敛因子和惯性权重的鲸鱼优化算法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!