1.摘要
本文提出了一种新的求解约束优化问题的进化算法——进化匹配算法(Evolutionary Mating Algorithm, EMA),EMA采用Hardy-Weinberg均衡中的随机交配概念和交叉指数来产生新的后代。同时该算法还考虑了环境因素(即捕食者的存在)的影响,并将其作为一种探索机制。
2.进化交配算法(EMA)
2.1 交配和后代的选择
交配的选择过程是随机进行的。在这里,交配过程假设是基于采用概率或机会进行性选择:
I
m
a
t
e
s
=
I
s
e
x
_
r
a
t
i
o
+
[
∗
I
m
a
t
e
s
(
t
)
−
∗
I
m
a
t
e
s
(
k
)
]
I_{\mathrm{mates}}=I_{\mathrm{sex\_ratio}}+\left[^*I_{\mathrm{mates}(t)}-^*I_{\mathrm{mates}(k)}\right]
Imates=Isex_ratio+[∗Imates(t)−∗Imates(k)]
*Imates(t) 和 *Imates(k) 表示因时间和空间上的女性可用性变化而产生的性选择机会的加权值。Imates 被用来描述由性别比例的季节性变化、配偶的时间及空间可用性产生的选择机会,这些都会影响到交配成功的总体变异。在该算法中,将这两个分量进行了修改,将雄性和雌性的性选择机会作为雄性和雌性的适合度方差:
I
mates
=
1
+
[
v
a
r
(
X
m
,
∗
T
)
−
v
a
r
(
X
f
,
∗
T
)
]
I_\text{mates}=1+\left[\mathrm{var}(X_{m,*}^T)-\mathrm{var}(X_{f,*}^T)\right]
Imates=1+[var(Xm,∗T)−var(Xf,∗T)]
为了产生新的子代,使用Hardy-Weinberg原理:
X
c
h
i
l
d
T
=
{
p
.
∗
X
m
,
∗
T
+
q
.
∗
x
f
,
∗
T
f
o
r
I
m
a
t
e
s
≥
0
p
.
∗
X
f
,
∗
T
+
q
.
∗
x
m
,
∗
T
f
o
r
I
m
a
t
e
s
<
0
\left.X_{\mathrm{child}}^T=\left\{\begin{matrix}p.*X_{m,*}^T+q.*x_{f,*}^T&\mathrm{for}&I_{\mathrm{mates}}\geq0\\p.*X_{f,*}^T+q.*x_{m,*}^T&\mathrm{for}&I_{\mathrm{mates}}<0\end{matrix}\right.\right.
XchildT={p.∗Xm,∗T+q.∗xf,∗Tp.∗Xf,∗T+q.∗xm,∗TforforImates≥0Imates<0
此外,所产生子代的维度也可能受到初始化过程中以及每次迭代中存储的当前最佳解决方案的影响:
X
c
h
i
l
d
T
+
1
=
K
.
∗
X
c
h
i
l
d
,
j
T
+
X
j
b
e
s
t
.
∗
(
1
−
K
)
.
X_{\mathrm{child}}^{T+1}=K.*X_{\mathrm{child},j}^{T}+X_{j}^{\mathrm{best}}.*(1-K).
XchildT+1=K.∗Xchild,jT+Xjbest.∗(1−K).
在EMA中,遇到捕食者的概率r需要根据所要解决的优化问题进行调整:
X
c
h
i
l
d
T
+
1
=
r
a
n
d
(
1
,
d
)
.
∗
X
j
b
e
s
t
X_{\mathrm{child}}^{T+1}=\mathrm{~rand}(1,d).*X_{j}^{\mathrm{best}}
XchildT+1= rand(1,d).∗Xjbest
伪代码
3.结果展示
4.参考文献
[1] Sulaiman M H, Mustaffa Z, Saari M M, et al. Evolutionary mating algorithm[J]. Neural Computing and Applications, 2023, 35(1): 487-516.