IGWO:一种改进灰狼优化算法用于解决工程问题

1.摘要
本文提出了一种改进的灰狼优化算法(IGWO),其用于解决全局优化和工程设计问题。IGWO通过采用一种名为基于维度学习的狩猎(DLH)的搜索策略,对传统灰狼优化算法(GWO)进行了改进,有效地解决了原算法中存在的种群多样性不足、探索与开发之间的不平衡以及过早收敛的问题。
2. 灰狼优化算法GWO
3. 改进策略
维度狩猎学习DLH
基于维度狩猎学习(DLH)搜索策略是针对灰狼优化(GWO)算法的改进,DLH引入了狼的个体狩猎行为,通过增加狼与其邻居之间的交互,以及引入种群中随机选取的其他个体狼,从而增强了算法的探索能力和保持种群多样性的能力。通过欧几里得距离计算出狼
X
i
(
t
)
X_i(t)
Xi(t)与候选个体的半径:
R
i
(
t
)
=
∥
X
i
(
t
)
−
X
i
−
G
W
O
(
t
+
1
)
∥
R_i(t)=\|X_i(t)-X_{i-GWO}(t+1)\|
Ri(t)=∥Xi(t)−Xi−GWO(t+1)∥
X
i
(
t
)
X_i(t)
Xi(t)的邻域表述为:
N
i
(
t
)
=
{
X
j
(
t
)
∣
D
i
(
X
i
(
t
)
,
X
j
(
t
)
)
⩽
R
i
(
t
)
,
X
j
(
t
)
∈
P
o
p
}
N_i(t)=\left\{X_j(t)|D_i\big(X_i(t),X_j(t)\big){\leqslant}R_i(t),X_j(t)\in Pop \right\}
Ni(t)={Xj(t)∣Di(Xi(t),Xj(t))⩽Ri(t),Xj(t)∈Pop}
在邻域中随机选择的一个邻居个体进行更新:
X
i
−
D
L
H
,
d
(
t
+
1
)
=
X
i
,
d
(
t
)
+
r
a
n
d
×
(
X
n
,
d
(
t
)
−
X
r
,
d
(
t
)
)
X_{i-DLH,d}(t+1)=X_{i,d}(t)+rand\times(X_{n,d}(t)-X_{r,d}(t))
Xi−DLH,d(t+1)=Xi,d(t)+rand×(Xn,d(t)−Xr,d(t))
radius = pdist2(Positions, X_GWO, 'euclidean'); % Equation (10)
dist_Position = squareform(pdist(Positions));
r1 = randperm(N,N);
for t=1:N
neighbor(t,:) = (dist_Position(t,:)<=radius(t,t));
[~,Idx] = find(neighbor(t,:)==1); % Equation (11)
random_Idx_neighbor = randi(size(Idx,2),1,dim);
for d=1:dim
X_DLH(t,d) = Positions(t,d) + rand .*(Positions(Idx(random_Idx_neighbor(d)),d)...
- Positions(r1(t),d)); % Equation (12)
end
X_DLH(t,:) = boundConstraint(X_DLH(t,:), Positions(t,:), lu);
Fit_DLH(t) = fobj(X_DLH(t,:));
end
流程图

伪代码

4.结果展示
CEC2005




5.参考文献
[1] Nadimi-Shahraki M H, Taghian S, Mirjalili S. An improved grey wolf optimizer for solving engineering problems[J]. Expert Systems with Applications, 2021, 166: 113917.
6.代码获取
更多推荐

所有评论(0)