今天为各位讲解改进鲸鱼优化算法(Improved Whale Optimization Algorithm,IWOA),近两年关于鲸鱼优化算法(WOA)的论文比较多,对WOA算法改进的研究也是层出不穷,今天这篇推文主要针对无约束连续优化问题,提出应用WOA算法求解的改进思路。如果想了解标准WOA算法,可以在优化算法 | 鲸鱼优化算法这篇推文中进行学习,当然,我们也会在本篇推文中对标准WOA算法做一个简短的回顾。
目录
1.标准WOA算法
WOA是模仿自然界中鲸鱼捕食行为的新型群体智能优化算法,而鲸鱼的捕食行为主要分为3类:1)包围猎物;2)发泡网攻击;3)搜索捕食。接下来分别对上述3类捕食行为用数学公式进行表示。
1.1 包围猎物
假设在
d
d
d维空间中,当前最佳鲸鱼个体的
X
∗
X^*
X∗位置为
(
X
1
∗
,
X
2
∗
,
⋯
,
X
d
∗
)
\left(X_1^*, X_2^*, \cdots, X_d^*\right)
(X1∗,X2∗,⋯,Xd∗),鲸鱼个体的位置
X
j
X^j
Xj为
(
X
1
j
,
X
2
j
,
⋯
,
X
d
j
)
\left(X_1^j, X_2^j, \cdots, X_d^j\right)
(X1j,X2j,⋯,Xdj)。则鲸鱼个体
X
j
X^j
Xj在最佳鲸鱼个体
X
∗
X^*
X∗的影响下的下一个位置的计算公式如下
X
j
−
n
e
w
(
X
1
j
−
n
e
w
,
X
2
j
−
n
e
w
,
⋯
,
X
d
j
−
n
e
w
)
X^{j_{-} n e w}\left(X_1^{j_{-} n e w}, X_2^{j_{-} n e w}, \cdots, X_d^{j_{-} n e w}\right)
Xj−new(X1j−new,X2j−new,⋯,Xdj−new):
X
k
j
−
n
e
w
=
X
k
∗
−
A
1
⋅
D
k
(
1
)
D
k
=
∣
C
1
⋅
X
k
∗
−
X
k
j
∣
(
2
)
C
1
=
2
r
2
(
3
)
A
1
=
2
a
⋅
r
1
−
a
(
4
)
\begin{gathered} X_k^{j_{-} n e w}=X_k^*-A_1 \cdot D_k \quad(1)\\ D_k=\left|C_1 \cdot X_k^*-X_k^j\right| \quad(2)\\ C_1=2 r_2 \quad(3)\\ A_1=2 a \cdot r_1-a \quad(4) \end{gathered}
Xkj−new=Xk∗−A1⋅Dk(1)Dk=∣
∣C1⋅Xk∗−Xkj∣
∣(2)C1=2r2(3)A1=2a⋅r1−a(4)
其中
X
k
j
−
n
e
w
X_k^{j_{-} n e w}
Xkj−new表示空间坐标的
X
j
−
n
e
w
X^{j_{-} n e w}
Xj−new第个分
k
k
k量。计算公
D
k
D_k
Dk式中的表示求绝
∣
∣
|\quad |
∣∣对值的含义。是
a
a
a随着迭代次数的增加,从2至0线性递减。
r
1
r_1
r1和
r
2
r_2
r2中都是0至1之间的随机数。
1.2 发泡网攻击
发泡网攻击是座头鲸特有的吐气泡捕食行为,为了模拟这种捕食行为,现分别设计两种数学模型表达上述捕食行为。假设在 d d d维空间中,当前最佳鲸鱼个体 X ∗ X^* X∗的位置为 ( X 1 ∗ , X 2 ∗ , ⋯ , X d ∗ ) \left(X_1^*, X_2^*, \cdots, X_d^*\right) (X1∗,X2∗,⋯,Xd∗),鲸鱼个体 X j X^j Xj的位置为 ( X 1 j , X 2 j , ⋯ , X d j ) \left(X_1^j, X_2^j, \cdots, X_d^j\right) (X1j,X2j,⋯,Xdj)。
a)收缩包围。这种捕食行为与上述包围猎物行为的数学模型几乎完全相同,区别之处在于 A 1 A_1 A1的取值范围。因为收缩包围的含义为将当前位置的鲸鱼个体向当前最佳位置的鲸鱼个体靠近,所以 A 1 A_1 A1的取值范围由原来的 [ − a , a ] [-a,a] [−a,a]调整为 [ − 1 , 1 ] [-1,1] [−1,1],其它公式保持不变。
b)螺旋式位置更新。当前鲸鱼个体以螺旋式的方式向当前最佳鲸鱼个体靠近。
X
k
j
−
new
=
X
k
∗
+
D
k
⋅
e
b
l
⋅
cos
(
2
π
l
)
(
5
)
D
k
=
∣
X
k
∗
−
X
k
j
∣
(
6
)
\begin{gathered} X_k^{j_{-} \text {new }}=X_k^*+D_k \cdot e^{b l} \cdot \cos (2 \pi l) \quad (5)\\ D_k=\left|X_k^*-X_k^j\right| \quad(6) \end{gathered}
Xkj−new =Xk∗+Dk⋅ebl⋅cos(2πl)(5)Dk=∣
∣Xk∗−Xkj∣
∣(6)
其中
b
b
b为对数螺旋形状常数,
l
l
l为
−
1
∼
1
-1 \sim 1
−1∼1之间的随机数。
座头鲸在围捕猎物时,不仅收缩包围圈,而且以螺旋形式向猎物游走,因此各以50%的概率选择收缩包围圈,或是选择以螺旋形式向猎物游走,数学模型如下:
X
k
j
−
new
=
{
X
k
∗
−
A
1
⋅
D
k
p
<
0.5
X
k
∗
+
D
k
⋅
e
b
l
⋅
cos
(
2
π
l
)
p
≥
0.5
(
7
)
X_k^{j_{-} \text {new }}=\left\{\begin{array}{cc} X_k^*-A_1 \cdot D_k & p<0.5 \\ X_k^*+D_k \cdot e^{b l} \cdot \cos (2 \pi l) & p \geq 0.5 \end{array}\right. \quad(7)
Xkj−new ={Xk∗−A1⋅DkXk∗+Dk⋅ebl⋅cos(2πl)p<0.5p≥0.5(7)
1.3 搜索捕食
在收缩包围的捕食行为的数学模型中 A 1 A_1 A1的取值范围限制为 [ − 1 , 1 ] [-1,1] [−1,1],但是当 A 1 A_1 A1的取值不在 [ − 1 , 1 ] [-1,1] [−1,1]时,这时当前鲸鱼个体可能不会向当前最佳鲸鱼个体靠近,而是从当前鲸鱼群体中随机选择一条鲸鱼个体靠近,这就是搜索捕食的思想。
搜索捕食虽然可能会使当前鲸鱼个体偏离目标猎物,但是会增强鲸鱼群体的全局搜索能力。假设在
d
d
d维空间中,当前鲸鱼群体中随机一个鲸鱼个体
X
r
a
n
d
X^{rand}
Xrand的位置为
(
X
1
rand
,
X
2
rand
,
⋯
,
X
d
rand
)
\left(X_1^{\text {rand }}, X_2^{\text {rand }}, \cdots, X_d^{\text {rand }}\right)
(X1rand ,X2rand ,⋯,Xdrand ),鲸鱼个体
X
j
X^j
Xj的位置为
(
X
1
j
,
X
2
j
,
⋯
,
X
d
j
)
\left(X_1^j, X_2^j, \cdots, X_d^j\right)
(X1j,X2j,⋯,Xdj),则搜索捕食行为的数学模型如下:
X
k
j
−
n
e
w
=
X
k
rand
−
A
1
⋅
D
k
(
8
)
D
k
=
∣
C
1
⋅
X
k
rand
−
X
k
j
∣
(
9
)
C
1
=
2
r
2
(
10
)
(
10
)
A
1
=
2
a
⋅
r
1
−
a
(
11
)
\begin{gathered} X_k^{j_{-} n e w}=X_k^{\text {rand }}-A_1 \cdot D_k \quad(8) \\ D_k=\left|C_1 \cdot X_k^{\text {rand }}-X_k^j\right| \quad(9)\\ C_1=2 r_2(10) \quad(10)\\ A_1=2 a \cdot r_1-a \quad(11) \end{gathered}
Xkj−new=Xkrand −A1⋅Dk(8)Dk=∣
∣C1⋅Xkrand −Xkj∣
∣(9)C1=2r2(10)(10)A1=2a⋅r1−a(11)
2.改进WOA算法创新点
2.1 自适应参数
2.1.1 启发式概率 p 1 p_1 p1
为了平衡标准WOA全局搜索和局部搜索能力,启发式概率
p
1
p_1
p1计算公式如下:
p
1
=
{
0.7
t
<
0.5
∗
maxIter
0.4
t
≥
0.5
∗
maxIter
(
12
)
p_{1}=\left\{\begin{array}{ll} 0.7 & t<0.5 * \text { maxIter } \\ 0.4 & t \geq 0.5 * \text { maxIter } \end{array}\right. \quad (12)
p1={0.70.4t<0.5∗ maxIter t≥0.5∗ maxIter (12)
其中
t
t
t为当前迭代次数,
m
a
x
I
t
e
r
maxIter
maxIter为最大迭代次数。
2.1.2 自适应惯性权重 ω \omega ω
在迭代过程中,将鲸鱼个体的适应度$ f(i) 按升序排序,然后分成两半分别求平均适应度 按升序排序,然后分成两半分别求平均适应度 按升序排序,然后分成两半分别求平均适应度 f_{avg1} 和 和 和 f_{avg2} ,其中 ,其中 ,其中f_{avg1}<f_{avg2} ,将当前鲸鱼个体的适应度分与 ,将当前鲸鱼个体的适应度分与 ,将当前鲸鱼个体的适应度分与 f_{avg1} 和 和 和 f_{avg2}$比较,将惯性权重分类如下:
(1)$ f(i)<f_{avg2}$
ω \omega ω取值为 ( 0.8 , 1.2 ) (0.8,1.2) (0.8,1.2)之间的随机数。
(2) f ( i ) ≥ f a v g 2 f(i) \geq f_{avg2} f(i)≥favg2
ω \omega ω以50%的概率取为 ( 0.3 , 0.6 ) (0.3,0.6) (0.3,0.6)或 ( 1.3 , 1.6 ) (1.3,1.6) (1.3,1.6)之间的随机数。
(3)$ f_{avg1}<f(i)<f_{avg2}$
ω \omega ω取值为1。
2.1.3 线性控制参数 l l l
l = ( a 2 − 1 ) × rand + 1 − 2 × t maxIter ( 13 ) a 2 = − 1 − t maxIter ( 14 ) \begin{array}{l} l=\left(a_{2}-1\right) \times \text { rand }+1-2 \times \frac{t}{\text { maxIter }} \quad (13)\\ a_{2}=-1-\frac{t}{\text { maxIter }} \quad (14) \end{array} l=(a2−1)× rand +1−2× maxIter t(13)a2=−1− maxIter t(14)
2.2 全局搜索方法
2.2.1 L e ˊ vy \text { Lévy } Leˊvy 飞行策略
采用
L
e
ˊ
vy
\text { Lévy }
Leˊvy 飞行策略可以增强算法的全局搜索能力。鲸鱼个体
X
i
X^i
Xi采用
L
e
ˊ
vy
\text { Lévy }
Leˊvy 飞行策略更新位置的公式如下:
X
new
i
=
X
i
+
A
1
×
0.01
×
step
⊕
(
X
i
−
C
1
×
X
rand
)
(
15
)
X_{\text {new }}^{i}=X^{i}+A_{1} \times 0.01 \times \text { step } \oplus\left(X^{i}-C_{1} \times X^{\text {rand }}\right) \quad(15)
Xnew i=Xi+A1×0.01× step ⊕(Xi−C1×Xrand )(15)
其中
X
new
i
X_{\text {new }}^{i}
Xnew i为鲸鱼个体
X
i
X^i
Xi更新后的位置,
A
1
A_1
A1和
C
1
C_1
C1的含义同公式(1)中的
A
1
A_1
A1和
C
1
C_1
C1,
⊕
\oplus
⊕表示点乘,
X
rand
X^{\text {rand }}
Xrand 表示当前种群中随机选择的鲸鱼个体,
s
t
e
p
step
step表示随机步长,由Mantegna方法产生,公式如下。
step
=
u
∣
v
∣
1
/
β
(
16
)
\operatorname{step}=\frac{u}{|v|^{1 / \beta}} \quad(16)
step=∣v∣1/βu(16)
其中
u
(
u
1
,
u
2
,
⋯
,
u
d
)
u\left(u_{1}, u_{2}, \cdots, u_{d}\right)
u(u1,u2,⋯,ud)和
v
(
v
1
,
v
2
,
⋯
,
v
d
)
v\left(v_{1}, v_{2}, \cdots, v_{d}\right)
v(v1,v2,⋯,vd)为
d
d
d维空间向量,且有
β
=
1.5
\beta=1.5
β=1.5,
u
u
u和v$的每个分量均服从如下正太分布。
u
∼
N
(
0
,
σ
u
2
)
,
v
∼
N
(
0
,
σ
v
2
)
(
17
)
σ
u
∼
(
Γ
(
1
+
β
)
⋅
sin
(
π
⋅
β
2
)
Γ
(
1
+
β
2
)
⋅
β
⋅
2
β
−
1
2
)
1
β
,
σ
v
=
1
(
18
)
\begin{array}{r} u \sim N\left(0, \sigma_{u}^{2}\right), v \sim N\left(0, \sigma_{v}^{2}\right)\quad(17) \\ \sigma_{u} \sim\left(\frac{\Gamma(1+\beta) \cdot \sin \left(\pi \cdot \frac{\beta}{2}\right)}{\Gamma\left(\frac{1+\beta}{2}\right) \cdot \beta \cdot 2^{\frac{\beta-1}{2}}}\right)^{\frac{1}{\beta}}, \sigma_{v}=1 \quad(18) \end{array}
u∼N(0,σu2),v∼N(0,σv2)(17)σu∼(Γ(21+β)⋅β⋅22β−1Γ(1+β)⋅sin(π⋅2β))β1,σv=1(18)
2.2.2 初级知识获取-共享算法
将鲸鱼个体的适应度按升序排序,排序结果如下:
X
best
,
⋯
,
X
i
−
1
,
X
i
,
X
i
+
1
,
⋯
,
X
worst
X^{\text {best }}, \cdots, X^{i-1}, X^{i}, X^{i+1}, \cdots, X^{\text {worst }}
Xbest ,⋯,Xi−1,Xi,Xi+1,⋯,Xworst
初级知识获取-共享算法更新个体方法如下:
X
new
i
=
{
X
i
+
k
f
×
[
(
X
i
−
1
−
X
i
+
1
)
+
(
X
r
−
X
i
)
]
f
(
X
i
)
>
f
(
X
r
)
X
i
+
k
f
×
[
(
X
i
−
1
−
X
i
+
1
)
+
(
X
i
−
X
r
)
]
f
(
X
i
)
≤
f
(
X
r
)
(
19
)
X_{\text {new }}^{i}=\left\{\begin{array}{ll} X^{i}+k_{f} \times\left[\left(X^{i-1}-X^{i+1}\right)+\left(X^{r}-X^{i}\right)\right] & f\left(X^{i}\right)>f\left(X^{r}\right) \\ X^{i}+k_{f} \times\left[\left(X^{i-1}-X^{i+1}\right)+\left(X^{i}-X^{r}\right)\right] & f\left(X^{i}\right) \leq f\left(X^{r}\right) \end{array}\right. \quad(19)
Xnew i={Xi+kf×[(Xi−1−Xi+1)+(Xr−Xi)]Xi+kf×[(Xi−1−Xi+1)+(Xi−Xr)]f(Xi)>f(Xr)f(Xi)≤f(Xr)(19)
其中
X
i
X^i
Xi为待更新个体,
X
new
i
X_{\text {new }}^{i}
Xnew i为更新后的个体,
X
r
X^r
Xr为随机选择的个体,
k
f
k_f
kf为知识因素参数,取值为0.5。
2.2.3 模拟退火策略
在更新中种群中的个体时,以一定概率接受劣质个体。概率计算公式如下:
P
=
e
−
(
f
(
X
j
−
n
e
w
)
−
f
(
X
j
)
)
/
f
(
X
j
)
T
(
20
)
P=e^{-\frac{\left(f\left(X^{j_{-} n e w}\right)-f\left(X^{j}\right)\right) / f\left(X^{j}\right)}{T}} \quad(20)
P=e−T(f(Xj−new)−f(Xj))/f(Xj)(20)
其中
T
T
T为当前迭代次数时的温度。
2.3 局部搜索方法
2.3.1 修正螺旋位置更新方法
将鲸鱼个体的适应度按升序排序,排序结果为:
X
1
,
⋯
,
X
i
−
1
,
X
i
,
X
i
+
1
,
⋯
,
X
popSize
X^{1}, \cdots, X^{i-1}, X^{i}, X^{i+1}, \cdots, X^{\text {popSize }}
X1,⋯,Xi−1,Xi,Xi+1,⋯,XpopSize
根据适应度值将鲸鱼个体划分为3类:最佳个体类、中等个体类、最差个体类,且这3类集合中的鲸鱼个体数目分为
0.05
∗
p
o
p
S
i
z
e
0.05*popSize
0.05∗popSize、
0.9
∗
p
o
p
S
i
z
e
0.9*popSize
0.9∗popSize和
0.05
∗
p
o
p
S
i
z
e
0.05*popSize
0.05∗popSize。最佳个体类、中等个体类和最差个体类中的鲸鱼个体分别用
X
p
−
b
e
s
t
X^{p_{-} b e s t}
Xp−best、
X
m
X^{m}
Xm和
X
p
−
w
o
r
s
t
X^{p_{-} worst}
Xp−worst表示。
X
k
j
+
1
=
X
k
p
−
best
+
D
k
⋅
e
b
l
⋅
cos
(
2
π
l
)
(
21
)
D
k
=
X
k
p
−
best
−
X
k
p
−
worst
+
∣
X
k
m
−
X
k
j
∣
(
22
)
\begin{array}{l} X_{k}^{j+1}=X_{k}^{p_{-} \text {best }}+D_{k} \cdot e^{b l} \cdot \cos (2 \pi l) \quad(21)\\ D_{k}=X_{k}^{p_{-} \text {best }}-X_{k}^{p_{-} \text {worst }}+\left|X_{k}^{m}-X_{k}^{j}\right| \quad(22) \end{array}
Xkj+1=Xkp−best +Dk⋅ebl⋅cos(2πl)(21)Dk=Xkp−best −Xkp−worst +∣
∣Xkm−Xkj∣
∣(22)
2.3.2 二次插值法
采用二次差值法对个体
X
i
X^{i}
Xi的更新公式如下:
X
d
i
=
0.5
×
[
(
X
d
i
)
2
−
(
X
d
r
)
2
]
×
f
(
X
∗
)
+
[
(
X
d
r
)
2
−
(
X
d
∗
)
2
]
×
f
(
X
i
)
+
[
(
X
d
∗
)
2
−
(
X
d
i
)
2
]
×
f
(
X
r
)
(
X
d
i
−
X
d
r
)
×
f
(
X
∗
)
+
(
X
d
r
−
X
d
∗
)
×
f
(
X
i
)
+
(
X
d
∗
−
X
d
i
)
×
f
(
X
r
)
(
23
)
X_{d}^{i}=0.5 \times \frac{\left[\left(X_{d}^{i}\right)^{2}-\left(X_{d}^{r}\right)^{2}\right] \times f\left(X^{*}\right)+\left[\left(X_{d}^{r}\right)^{2}-\left(X_{d}^{*}\right)^{2}\right] \times f\left(X^{i}\right)+\left[\left(X_{d}^{*}\right)^{2}-\left(X_{d}^{i}\right)^{2}\right] \times f\left(X^{r}\right)}{\left(X_{d}^{i}-X_{d}^{r}\right) \times f\left(X^{*}\right)+\left(X_{d}^{r}-X_{d}^{*}\right) \times f\left(X^{i}\right)+\left(X_{d}^{*}-X_{d}^{i}\right) \times f\left(X^{r}\right)} \quad(23)
Xdi=0.5×(Xdi−Xdr)×f(X∗)+(Xdr−Xd∗)×f(Xi)+(Xd∗−Xdi)×f(Xr)[(Xdi)2−(Xdr)2]×f(X∗)+[(Xdr)2−(Xd∗)2]×f(Xi)+[(Xd∗)2−(Xdi)2]×f(Xr)(23)
其中
X
r
X^{r}
Xr为当前种群中随机选择的个体,
X
∗
X^{*}
X∗为当前全局最佳个体。
3.改进WOA算法流程图
4.改进WOA算法实例验证
在介绍IWOA算法前,先展示一下IWOA求解以下无约束连续优化问题的性能。当将变量个数为10时,即 D = 10 D=10 D=10时,变量下界设为-100,变量上界设为100,种群规模设为200,迭代次数设为1000,各个测试函数的求解结果如下:
(1)Bent Cigar Function
f
1
(
x
)
=
x
1
2
+
1
0
6
∑
i
=
2
D
x
i
2
f_{1}(\mathbf{x})=x_{1}^{2}+10^{6} \sum_{i=2}^{D} x_{i}^{2}
f1(x)=x12+106i=2∑Dxi2
求解过程如下图所示:
最优值接近0,最优解位置如下所示:
(2)Rastrigin’s Function
f
2
(
x
)
=
∑
i
=
1
D
(
x
i
2
−
10
cos
(
2
π
x
i
)
+
10
)
f_{2}(x)=\sum_{i=1}^{D}\left(x_{i}^{2}-10 \cos \left(2 \pi x_{i}\right)+10\right)
f2(x)=i=1∑D(xi2−10cos(2πxi)+10)
求解过程如下图所示:
最优值接近0,最优解位置如下所示:
(3)High Conditioned Elliptic Function
f
3
(
x
)
=
∑
i
=
1
D
(
1
0
6
)
i
−
1
D
−
1
x
i
2
f_{3}(x)=\sum_{i=1}^{D}\left(10^{6}\right)^{\frac{i-1}{D-1}} x_{i}^{2}
f3(x)=i=1∑D(106)D−1i−1xi2
求解过程如下图所示:
最优值接近0,最优解位置如下所示:
(4)HGBat Function
f
4
(
x
)
=
∣
(
∑
i
=
1
D
x
i
2
)
2
−
(
∑
i
=
1
D
x
i
)
2
∣
1
/
2
+
(
0.5
∑
i
=
1
D
x
i
2
+
∑
i
=
1
D
x
i
)
/
D
+
0.5
f_{4}(\mathbf{x})=\left|\left(\sum_{i=1}^{D} x_{i}^{2}\right)^{2}-\left(\sum_{i=1}^{D} x_{i}\right)^{2}\right|^{1 / 2}+\left(0.5 \sum_{i=1}^{D} x_{i}^{2}+\sum_{i=1}^{D} x_{i}\right) / D+0.5
f4(x)=∣
∣(i=1∑Dxi2)2−(i=1∑Dxi)2∣
∣1/2+(0.5i=1∑Dxi2+i=1∑Dxi)/D+0.5
求解过程如下图所示:
最优值接近0.5,最优解位置如下所示:
(5)Rosenbrock’s Function
f
5
(
x
)
=
∑
i
=
1
D
−
1
(
100
(
x
i
2
−
x
i
+
1
)
2
+
(
x
i
−
1
)
2
)
f_{5}(\mathbf{x})=\sum_{i=1}^{D-1}\left(100\left(x_{i}^{2}-x_{i+1}\right)^{2}+\left(x_{i}-1\right)^{2}\right)
f5(x)=i=1∑D−1(100(xi2−xi+1)2+(xi−1)2)
求解过程如下图所示:
最优值为0,最优解位置如下所示:
(6)Griewank’s Function
f
6
(
x
)
=
∑
i
=
1
D
x
i
2
4000
−
∏
i
=
1
D
cos
(
x
i
i
)
+
1
f_{6}(\mathbf{x})=\sum_{i=1}^{D} \frac{x_{i}^{2}}{4000}-\prod_{i=1}^{D} \cos \left(\frac{x_{i}}{\sqrt{i}}\right)+1
f6(x)=i=1∑D4000xi2−i=1∏Dcos(ixi)+1
求解过程如下图所示:
最优值接近0,最优解位置如下所示:
(7)Ackley’s Function
f
7
(
x
)
=
−
20
exp
(
−
0.2
1
D
∑
i
=
1
D
x
i
2
)
−
exp
(
1
D
∑
i
=
1
D
cos
(
2
π
x
i
)
)
+
20
+
e
f_{7}(\mathbf{x})=-20 \exp \left(-0.2 \sqrt{\frac{1}{D} \sum_{i=1}^{D} x_{i}^{2}}\right)-\exp \left(\frac{1}{D} \sum_{i=1}^{D} \cos \left(2 \pi x_{i}\right)\right)+20+\mathrm{e}
f7(x)=−20exp⎝
⎛−0.2D1i=1∑Dxi2⎠
⎞−exp(D1i=1∑Dcos(2πxi))+20+e
求解过程如下图所示:
最优值接近0,最优解位置如下所示:
(8)Happycat Function
f
8
(
x
)
=
∣
∑
i
=
1
D
x
i
2
−
D
∣
1
/
4
+
(
0.5
∑
i
=
1
D
x
i
2
+
∑
i
=
1
D
x
i
)
/
D
+
0.5
f_{8}(\mathbf{x})=\left|\sum_{i=1}^{D} x_{i}^{2}-D\right|^{1 / 4}+\left(0.5 \sum_{i=1}^{D} x_{i}^{2}+\sum_{i=1}^{D} x_{i}\right) / D+0.5
f8(x)=∣
∣i=1∑Dxi2−D∣
∣1/4+(0.5i=1∑Dxi2+i=1∑Dxi)/D+0.5
求解过程如下图所示:
最优值接近0.039,最优解位置如下所示:
(9)Discus Function
f
9
(
x
)
=
1
0
6
x
1
2
+
∑
i
=
2
D
x
i
2
f_{9}(\mathbf{x})=10^{6} x_{1}^{2}+\sum_{i=2}^{D} x_{i}^{2}
f9(x)=106x12+i=2∑Dxi2
求解过程如下图所示:
最优值接近0,最优解位置如下所示:
参考文献
[1] Sun Y, Wang X, Chen Y, et al. A modified whale optimization algorithm for large-scale global optimization problems[J]. Expert Systems with Applications, 2018, 114: 563-577.
[2] 褚鼎立, 陈红, 王旭光. 基于自适应权重和模拟退火的鲸鱼优化算法[J]. 电子学报, 2019, 47(5): 992-999.
[3] Mohamed A W, Hadi A A, Mohamed A K, et al. Evaluating the performance of adaptive GainingSharing knowledge based algorithm on CEC 2020 benchmark problems[C]//2020 IEEE Congress on Evolutionary Computation (CEC). IEEE, 2020: 1-8.
[4] Lin X, Yu X, Li W. A heuristic whale optimization algorithm with niching strategy for global multi-dimensional engineering optimization[J]. Computers & Industrial Engineering, 2022, 171: 108361.
OK,今天就到这里啦,各位可点击下方图片留言,下方图书为作者撰写书籍,助力各位快速入门智能优化算法。
双11期间,京东等各平台购书优惠力度大,科技图书满100减50,各位还在等什么,赶快下单吧。
咱们下期再见
近期你可能错过了的好文章
新书上架 | 《MATLAB智能优化算法:从写代码到算法思想》
遗传算法(GA)求解带时间窗的车辆路径(VRPTW)问题MATLAB代码
粒子群优化算法(PSO)求解带时间窗的车辆路径问题(VRPTW)MATLAB代码
知乎 | bilibili | CSDN:随心390