群智能优化算法-MEWOA
摘要:鲸鱼优化算法(WOA)收敛速度慢,容易陷入局部最优。 针对这些问题,本文提出了一种基于多种群进化(MEWOA)的WOA变体。 首先,根据个体的适应度将个体划分为三个大小相等的子种群:探索子种群、开发子种群和适度子种群。 其次,利用不同的机制分配每个子种群的移动策略。 探索性子种群和开发性子种群分别进行全局搜索和局部搜索,而适度子种群随机搜索或开发搜索空间。 最后,我们引入了一种新的种群进化策略来帮助MEWOA提高全局寻优能力,避免局部最优。
Whale optimization algorithm
座头鲸的捕食行为启发了WOA(Mirjalili&Lewis,2016)。它们的捕食行为包括包围猎物、泡网攻击法和寻找猎物三个阶段。
包围猎物
鲸鱼通过公式(4)更新自己的位置,接近最好的鲸鱼捕捉食物。
D = ∣ C ⋅ X ∗ ( t ) − X ( t ) ∣ (1) D = \left| {C \cdot {X^*}(t) - X(t)} \right| \tag{1} D=∣C⋅X∗(t)−X(t)∣(1)
A = 2 a ⋅ r a − a (2) A = 2a \cdot {r_a} - a \tag{2} A=2a⋅ra−a(2)
C = 2 ⋅ r b (3) C = 2 \cdot {r_b} \tag{3} C=2⋅rb(3)
X ( t + 1 ) = X ∗ ( t ) − A ⋅ D (4) X(t + 1) = {X^*}(t) - A \cdot D \tag{4} X(t+1)=X∗(t)−A⋅D(4)
其中,t为当前迭代次数,X*(t)为最佳鲸鱼的位置向量,X(t)为位置向量需要更新的鲸鱼。A和C是系数向量,其中 r a {r_a} ra和 r b {r_b} rb是[0,1]之间的两个随机向量,向量A与迭代次数成正比,从2线性下降到0。
泡网攻击法
WOA的泡网攻击方法如公式(6)。
D ′ = ∣ X ∗ ( t ) − X ( t ) ∣ (5) {D^\prime } = \left| {
{X^*}(t) - X(t)} \right| \tag{5} D′=∣X∗(t)−X(t)∣(5)
X ( t + 1 ) = D ′ ⋅ e b l ⋅ cos ( 2 π l ) + X ∗ (