赞
踩
混沌序列初始化
在处理复杂的优化问题时,原始蜣螂算法采用随机生成种群的方法进行种群初始化,可能会导致种群多样性低、种群分布不均匀和快速收敛到局部最优解等问题。 Tent 混沌映射可以生成均匀遍布解空间和相关性较强的初始种群:
x
i
+
1
=
{
x
k
/
α
,
0
<
x
k
≤
α
(
1
−
x
k
)
/
(
1
−
α
)
,
α
<
x
k
≤
1
(1)
x_{i+1}=
针对原始蜣螂算法四种动作行为的分配比例不均匀,且每个个体只能进行一种动作行为,可能会导致对解空间的搜索不充分或收敛速度慢的问题。
基于种群相似性的蜣螂动作变异策略
为了使每个蜣螂都能执行四种动作行为,本文用迭代次数模拟时间变化,每隔 M 次迭代进行一次蜣螂的动作变异,将当前动作行为变异为下一种行为策略。利用余弦相似度来衡量种群相似性:
D
i
v
e
r
=
1
N
∑
i
=
1
N
∑
j
=
1
d
x
i
,
j
(
t
)
x
g
l
b
e
s
t
,
j
(
t
)
∑
j
=
1
d
x
i
,
j
2
(
t
)
∑
j
=
1
d
x
g
l
b
e
s
t
,
j
2
(
t
)
(2)
Diver =\frac{1}{N}\sum_{i=1}^{N}\frac{\sum_{j=1}^{d}x_{i,j}(t)x_{\mathrm{glb}est ,j}(t)}{\sqrt{\sum_{j=1}^{d}x_{i,j}^{2}(t)}\sqrt{\sum_{j=1}^{d}x_{\mathrm{glb}est ,j}^{2}(t)}}\tag{2}
Diver=N1i=1∑N∑j=1dxi,j2(t)
∑j=1dxglbest,j2(t)
∑j=1dxi,j(t)xglbest,j(t)(2)
当 Diver 大于 0.5 时,种群多样性过低,可能会陷入局部最优,而滚球蜣螂和觅食蜣螂的数量决定了算法对解空间的探索能力和收敛速度。因此将执行繁殖和觅食行为的个体变异为执行滚球行为的个体,增强算法的全局搜索能力以增强物种多样性,找到新的最佳个体或达到变异个体迭代阈值Tmax 后将变异个体重新恢复为原来的行为个体继续搜索。
反向学习策略
由于繁殖和偷窃行为的全局搜索能力会随着迭代次数的增加而下降,而反向学习策略的思想主要是通过生成当前可行解的反向解,并将反向解与原解进行适应度比较选出更好的解,利用反向学习策略增强繁殖和偷窃行为的全局搜索能力:
x
r
t
=
l
b
+
u
b
−
r
a
n
d
(
)
×
x
i
t
(3)
x_r^t=lb+ub-rand()\times x_i^t\tag{3}
xrt=lb+ub−rand()×xit(3)
伪代码
CEC2017
UAV路径规划
[1] 远翔宇,杨风暴,杨童瑶.基于自适应蜣螂算法的无人机三维路径规划方法[J].无线电工程,2024,54(04):928-936.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。