目录
1.摘要
混沌博弈优化算法(CGO)在最近才开始流行,但其有效的搜索能力在解决单目标优化问题上具有很大的潜力。由于CGO只能处理单目标问题,因此本研究提出的多目标混沌博弈优化算法(MOCGO)用于解决具有多个目标的问题。在MOCGO中,Pareto最优解被存储在一个固定大小的外部存档中,并且CGO中还增加了进行多目标优化所需的领导者选择机制。
2.多目标优化
多目标优化问题是指具有多个目标函数的优化问题:
M
i
n
i
m
i
z
e
:
F
(
x
⃗
)
=
f
1
(
x
⃗
)
,
f
2
(
x
⃗
)
,
.
.
.
,
f
o
(
x
⃗
)
,
S
u
b
j
e
c
t
t
o
:
g
i
(
x
⃗
)
≥
0
,
i
=
1
,
2
,
.
.
.
,
m
,
h
i
(
x
⃗
)
=
0
,
i
=
1
,
2
,
.
.
.
,
p
,
L
i
≤
x
i
≤
U
i
,
i
=
1
,
2
,
.
.
.
,
n
,
\mathrm{Minimize:~F}(\vec{x})=f_{1}(\vec{x}),f_{2}(\vec{x}),...,f_{o}(\vec{x}),\\\mathrm{Subject~to}:g_{i}(\vec{x})\geq0,i=1,2,...,m,\\h_{i}(\vec{x})=0, i=1,2, ...,p,\\L_{i}\leq x_{i}\leq U_{i}, i=1,2, ...,n,
Minimize: F(x)=f1(x),f2(x),...,fo(x),Subject to:gi(x)≥0,i=1,2,...,m,hi(x)=0,i=1,2,...,p,Li≤xi≤Ui,i=1,2,...,n,
在求解目标函数最大化的问题的时候, 解 X 优于解 Y 的条件是当且仅当 X ≻ Y X\succ Y X≻Y。当出现这种情形时, 我们便定义一个可行解在问题所给的目标函数中都表现出相等或者是更优的目标值, 同时该解在不止一个目标函数中显现出优于其他解, 这种情况下的可行解才是解的集合中最优。
学者们考虑在不失一般性的条件下, 对最大化问题的 Pareto 优势数学定义:
2.1 Pareto 支配
假设向量 x ⃗ = ( x 1 , x 2 , . . . , x k ) \vec{x}=(x_{1},x_{2},...,x_{k}) x=(x1,x2,...,xk)和 y → = ( y 1 , y 2 , . . . , y k ) {\overrightarrow{y}}=(y_{1},y_{2},...,y_{k}) y=(y1,y2,...,yk),称向量 x 支配向量 y( x ≻ y x\succ y x≻y)当且仅当:
∀ i ∈ { 1 , 2 , . . . , k } , [ f ( x i ) ≥ f ( y i ) ] ∩ [ ∃ i ∈ 1 , 2 , . . . , k : f ( x i ) ] \forall\mathrm{i}\in\{1,2,...,k\},[f(x_i)\geq f(y_i)]\cap[\exists i\in1,2,...,k:f(x_i)] ∀i∈{1,2,...,k},[f(xi)≥f(yi)]∩[∃i∈1,2,...,k:f(xi)]
2.2 Pareto最优
解
x
⃗
ϵ
X
\vec{x}\epsilon X
xϵX称为Pareto最优当且仅当:
∄
y
⃗
∈
X
∣
F
(
y
⃗
)
≻
F
(
x
⃗
)
\nexists\vec{y}\in X\mid F(\vec{y})\succ F(\vec{x})
∄y∈X∣F(y)≻F(x)
2.3 Pareto 最优集
Pareto 最优集是指包含问题所有非支配解的集合(Pareto最优解集合),数学表达式:
P
s
:
=
{
x
,
y
∈
X
∣
∃
F
(
y
)
>
F
(
x
)
}
P_{s}:=\{x,y\in X\mid\exists F(y)>F(x)\}
Ps:={x,y∈X∣∃F(y)>F(x)}
2.4 Pareto前沿
Pareto 前沿是指包含相应 Pareto 最优解的目标值的集合:
P
f
:
=
{
F
(
x
)
∣
x
∈
P
s
}
P_f:=\{F(x)|x\in P_s\}
Pf:={F(x)∣x∈Ps}
3.Multi-objective chaos game optimization(MOCGO)
3.1 单目标混沌博弈算法
3.2 多目标混沌博弈优化算法(MOCGO)
MOCGO的探索和开发阶段继承自CGO,增加了三种机制:
存档
一个固定大小的外部存档被集成到CGO中,用于保存迄今为止获得的非支配Pareto最优解。存档中保存的解的数量是有限的,存档的输出与迭代生成的非支配解进行比较。可能出现三种情况:
- 如果至少有一个存档中的解支配了新解,则无法将新解添加到存档中
- 如果新提出的解优于存档中至少一个现有解,则可以考虑将其纳入存档。在这种情况下,存档将能够包括新开发的解
- 如果新解和存档中的解都不具有支配性,则将新解添加到存档中
网格机制
网格机制用于增强存档中的非支配解,在存档已经满员的情况下,需要激活网格机制,以便重新组织目标空间的分段,并进行搜索以识别最拥挤的区域,从而可以从该区域删除一个解。为了提高最终近似的Pareto最优前沿的多样性,将新解放置在最不拥挤的区域。如果在超立方体中存在更多的潜在解,则其中一个解被删除的可能性更大。如果存档已满,首先找到最拥挤的区域,并有意从其中删除一个解。
领导者选择机制
领导者引导其他搜索个体向搜索空间中看似有很大机会提供解的区域前进,最终目标是获得接近全局最优的解。迄今为止最好的非支配解会被存档,领导者选择组件会选择其中一个非支配解,并将其放置在搜索空间中最不拥挤的区域中。对于每个超立方体,选择通过轮盘进行,概率如下:
P
i
=
c
N
i
P_i=\frac{c}{N_i}
Pi=Nic
在优化存档时,网格机制和领导者选择组件会保护其多样性。领导者选择组件通过轮盘的使用,也为从最拥挤的超立方体中选择领导者提供了较低的机会,避免MOCGO陷入局部最优。
伪代码
4.结果展示
5.参考文献
[1] Khodadadi N, Abualigah L, Al-Tashi Q, et al. Multi-objective chaos game optimization[J]. Neural Computing and Applications, 2023, 35(20): 14973-15004.