目录
- 1.背景
- 2.算法原理
- 2.1算法思想
- 2.2算法过程
- 3.结果展示
- 4.参考文献
- 5.代码获取
1.背景
2024年,SO Oladejo受到麋鹿群的繁殖过程启发,提出了麋鹿群优化算法(Elk herd optimizer, EHO)。
2.算法原理
2.1算法思想
EHO灵感来自麋鹿群的繁殖过程,主要分为发情季节和产犊季节。
2.2算法过程
发情季节
在发情期,根据发情期公鹿率(Br)来划分家族。总家族数计算为B = |Br × EHS|。根据它们的适应度值从EH中选出公鹿,数目为B的最优适应度的鹿被认为是公鹿:
B
=
arg
min
j
∈
(
1
,
2
,
…
,
B
)
f
(
x
j
)
(1)
\mathcal{B}=\arg\min_{j\in(1,2,\ldots,B)}f(x^j)\tag{1}
B=argj∈(1,2,…,B)minf(xj)(1)
在B集合中的公鹿随后会争斗以创建家族。为了将后宫分配给B中的每个公鹿,使用轮盘赌选择法,其中后宫根据其适应度值与总适应度值的比例分配给各自的公鹿:
p
j
=
f
(
x
j
)
∑
k
=
1
B
f
(
x
k
)
(2)
p_j=\frac{f(x^j)}{\sum_{k=1}^Bf(x^k)}\tag{2}
pj=∑k=1Bf(xk)f(xj)(2)
产犊季节
在产犊季节,每个家族的小鹿主要根据其父亲和母亲的属性繁殖。如果小鹿与家族种父亲具有相同指数:
x
i
j
(
t
+
1
)
=
x
i
j
(
t
)
+
α
⋅
(
x
i
k
(
t
)
−
x
i
j
(
t
)
)
(3)
x_{i}^{j}(t+1)=x_{i}^{j}(t)+\alpha\cdot(x_{i}^{k}(t)-x_{i}^{j}(t))\tag{3}
xij(t+1)=xij(t)+α⋅(xik(t)−xij(t))(3)
其中, α是继承属性的比率,α 的较高值会增加随机元素参与新小牛的可能性,这反过来又增强了多样性。如果小鹿与家族母亲具有相同指数:
x
i
j
(
t
+
1
)
=
x
i
j
(
t
)
+
β
(
x
i
h
j
(
t
)
−
x
i
j
(
t
)
)
+
γ
(
x
i
r
(
t
)
−
x
i
j
(
t
)
)
(4)
x_i^j(t+1)=x_i^j(t)+\beta(x_i^{h_j}(t)-x_i^j(t))+\gamma(x_i^r(t)-x_i^j(t))\tag{4}
xij(t+1)=xij(t)+β(xihj(t)−xij(t))+γ(xir(t)−xij(t))(4)
选择季节
所有家族合并成一个矩阵EHtemp,EHtemp中的麋鹿将根据它们的适应度值按升序排序。
流程图
伪代码
3.结果展示
论文结果展示
4.参考文献
[1] Al-Betar M A, Awadallah M A, Braik M S, et al. Elk herd optimizer: a novel nature-inspired metaheuristic algorithm[J]. Artificial Intelligence Review, 2024, 57(3): 48.