目录
- 1.背景
- 2.算法原理
- 2.1算法思想
- 2.2算法过程
- 3.结果展示
- 4.参考文献
1.背景
2016年,Mirjalili 等人受到宇宙膨胀理论启发,提出了多元宇宙优化算法(Multi-verse Optimization, MVO)。
2.算法原理
2.1算法思想
MVO基于宇宙膨胀的原理,利用白洞和黑洞的不同膨胀率,模拟了宇宙中粒子通过虫洞从白洞向黑洞位置转移的过程。MVO有以下规则:
- 膨胀率越高,产生白洞的概率越高
- 膨胀率越高,产生黑洞的概率越低
- 膨胀率较高的宇宙倾向于通过白洞发送物体。
- 膨胀率较低的宇宙倾向于通过黑洞接收更多物体
- 所有宇宙中的物体可能通过虫洞朝着最佳宇宙进行随机移动,而不受膨胀率的影响
2.2算法过程
多元宇宙:
每一行可以看作一个宇宙,行向量上每一维看作黑洞。
U
=
[
x
1
1
x
1
2
…
x
1
d
x
2
1
x
2
2
…
x
2
d
⋮
⋮
⋮
⋮
x
n
1
x
n
2
…
x
n
d
]
U=\begin{bmatrix}x_1^1&x_1^2&\dots&x_1^d\\x_2^1&x_2^2&\dots&x_2^d\\\vdots&\vdots&\vdots&\vdots\\x_n^1&x_n^2&\dots&x_n^d\end{bmatrix}
U=
x11x21⋮xn1x12x22⋮xn2……⋮…x1dx2d⋮xnd
x
i
j
=
{
x
k
j
r
1
<
N
I
(
U
i
)
x
i
j
r
1
≥
N
I
(
U
i
)
\left.x_i^j=\left\{\begin{array}{cc}x_k^j&r1<NI(Ui)\\x_i^j&r1\geq NI(Ui)\end{array}\right.\right.
xij={xkjxijr1<NI(Ui)r1≥NI(Ui)
其中,NI为宇宙膨胀率。
黑洞位置更新:
x
i
j
=
{
{
X
j
+
T
D
R
×
(
(
u
b
j
−
l
b
j
)
×
r
4
+
l
b
j
)
r
3
<
0.5
X
j
−
T
D
R
×
(
(
u
b
j
−
l
b
j
)
×
r
4
+
l
b
j
)
r
3
≥
0.5
x
i
j
r
2
≥
W
E
P
x_i^j=\begin{cases}\begin{cases}X_j+\mathrm{TDR}\times\left(\left(ub_j-lb_j\right)\times r4+lb_j\right)&r3<0.5\\X_j-\mathrm{TDR}\times\left(\left(ub_j-lb_j\right)\times r4+lb_j\right)&r3\ge0.5\\x_i^j&r2\ge\mathrm{WEP}\end{cases}\\\end{cases}
xij=⎩
⎨
⎧⎩
⎨
⎧Xj+TDR×((ubj−lbj)×r4+lbj)Xj−TDR×((ubj−lbj)×r4+lbj)xijr3<0.5r3≥0.5r2≥WEP
其中,TDR为旅行距离率:
T
D
R
=
1
−
l
1
/
p
L
1
/
p
\mathrm{TDR}=1-\frac{l^{1/p}}{L^{1/p}}
TDR=1−L1/pl1/p
虫洞存在率:
W
E
P
=
min
+
l
×
(
max
−
min
L
)
\mathrm{WEP}=\min+l\times\left(\frac{\max-\min}L\right)
WEP=min+l×(Lmax−min)
3.结果展示
4.参考文献
[1] Mirjalili S, Mirjalili S M, Hatamlou A. Multi-verse optimizer: a nature-inspired algorithm for global optimization[J]. Neural Computing and Applications, 2016, 27: 495-513.