AT-MFEA–解决异构多任务优化问题
title:Affine Transformation-Enhanced Multifactorial Optimization for Heterogeneous Problems
author:Xiaoming Xue , Kai Zhang, Kay Chen Tan, Liang Feng , Jian Wang, Guodong Chen, Xinggang Zhao, Liming Zhang, and Jun Yao.
journal:IEEE TRANSACTIONS ON CYBERNETICS(TCYB)
DOI: https://doi.org/10.1109/TCYB.2020.3036393.
code:https://github.com/intLyc/MTO-Platform/tree/master/MTO/Algorithms/Multi-task/Multi-population/AT-MFEA
1.主要贡献:
1)提出了一种新的秩损失函数,来获取任务间映射。
2)利用渐进式高斯表示模型,推导出了仿射变换的封闭解,以弥合不同任务间的差距。
2.问题提出:
现有的映射方法首先根据适应度值对解进行排序。然后,使用排序的成对解中提取的训练样本来学习任务间映射。然而,这种成对学习存在一个严重的问题,称为混沌匹配。也就是说,我们需要的到的映射关系应该是如下图(b)中所示的情形,而实际上出现最多的是下图(a)所示的情形。因为 f ( x ) f(x) f(x)对于不同的 x x x可能存在相同的值,只考虑秩相关性时就会出现映射交叉的情况。
解决混沌匹配的一种简单而有效的方式是,不仅要考虑秩相关性,还要考虑拓扑一致性。
![image-20240305195446787](https://i-blog.csdnimg.cn/blog_migrate/5c3b5c91e9b39e71f8f14e6ba9fdcc78.png)
3.AT-MFEA:
1)秩损失函数:
φ
∗
=
min
φ
∈
Φ
∫
x
∣
∣
R
[
f
s
(
x
)
]
−
R
[
f
t
(
φ
(
x
)
)
]
∣
∣
2
φ^∗ = \min_{φ∈\Phi }\displaystyle \int_x || R[f^s(x)] − R[f^t(φ(x))] ||^2
φ∗=φ∈Φmin∫x∣∣R[fs(x)]−R[ft(φ(x))]∣∣2
其中,
ϕ
\phi
ϕ表示能够将解从源域映射到目标域的转换操作,
Φ
\Phi
Φ表示完整的映射空间,
R
R
R表示将原始适应度景观转换为基于秩的景观的秩操作,
f
s
(
⋅
)
f^s(·)
fs(⋅)和
f
t
(
⋅
)
f^t(·)
ft(⋅)分别表示源任务和目标任务的目标函数。由于上式中存在积分操作,直接求解是不可行的,因此,使用代理模型来替代,则秩损失函数改进如下:
φ
∗
=
min
φ
∈
Φ
∫
x
∣
∣
R
[
f
^
s
(
x
)
]
−
R
[
f
^
t
(
φ
(
x
)
)
]
∣
∣
2
φ^∗ = \min_{φ∈\Phi }\displaystyle \int_x || R[\hat f^s(x)] − R[\hat f^t(φ(x))] ||^2
φ∗=φ∈Φmin∫x∣∣R[f^s(x)]−R[f^t(φ(x))]∣∣2
其中,
f
^
s
(
⋅
)
\hat f_s(·)
f^s(⋅)和
f
^
t
(
⋅
)
\hat f_t(·)
f^t(⋅)分别表示源任务和目标任务的表示模型。
2)渐进式高斯表示模型:
p
^
t
p
(
x
)
∼
N
(
μ
^
,
σ
^
2
)
,
μ
^
=
(
μ
^
1
,
μ
^
2
,
.
.
.
,
μ
^
n
)
,
σ
^
2
=
(
σ
^
1
2
,
σ
^
2
2
,
.
.
.
,
σ
^
n
2
)
\hat p^p_t (x) ∼ N (\hat μ, \hat σ^2),\hat μ = (\hat μ_1,\hat μ_2,...,\hat μ_n),\hat σ^2 = (\hat σ^2_1 , \hat σ^2_2 ,..., \hat σ^2_n )
p^tp(x)∼N(μ^,σ^2),μ^=(μ^1,μ^2,...,μ^n),σ^2=(σ^12,σ^22,...,σ^n2)
其中,
μ
^
j
=
(
1
−
α
)
1
N
∑
k
=
1
t
α
t
−
k
∑
i
=
1
N
x
i
j
k
σ
^
j
2
=
(
1
−
α
)
1
N
−
1
∑
k
=
1
t
α
t
−
k
∑
i
=
1
N
(
x
i
j
k
−
μ
j
k
)
2
.
\hat μ_j = (1 − α) \frac1N\sum^t_{k=1} α^{t−k} \sum^N_{i=1} x^k_{ij}\\ \hat σ^2_j = (1 − α) \frac1 {N − 1}\sum^ t _{k=1} α^{t−k} \sum^N_{i=1} (x^k_{ij} − μ^k_j)^2.
μ^j=(1−α)N1k=1∑tαt−ki=1∑Nxijkσ^j2=(1−α)N−11k=1∑tαt−ki=1∑N(xijk−μjk)2.
根据上述表示模型,秩损失函数可以表示如下:
φ
∗
=
min
φ
∈
Φ
∫
x
∣
∣
R
[
p
s
(
x
)
]
−
R
[
p
t
(
φ
(
x
)
)
]
∣
∣
2
φ^∗ = \min_{φ∈\Phi}\int_x|| R[p^s(x)] − R[p^t(φ(x))] ||^2
φ∗=φ∈Φmin∫x∣∣R[ps(x)]−R[pt(φ(x))]∣∣2
其中,
p
s
(
⋅
)
p^s(·)
ps(⋅)和
p
t
(
⋅
)
p^t(·)
pt(⋅)分别表示源任务和目标任务的高斯渐进表示模型。
3)源-目标域的仿射变换:
此处的映射包含线性和非线性映射,本文只考虑线性映射,则仿射变换可以表示如下:
x
~
=
φ
a
(
x
;
θ
)
=
x
A
+
b
\tilde x = φ_a(x; θ) = xA + b
x~=φa(x;θ)=xA+b
x
~
1
×
n
\tilde x_{1×n}
x~1×n表示目标域的转移解,
φ
a
(
⋅
)
φ_a(·)
φa(⋅)表示仿射变换,
x
1
×
n
x_{1×n}
x1×n是源域的解,
θ
=
[
a
,
b
]
θ=[a,b]
θ=[a,b]表示仿射变换的参数,
A
n
×
n
A_{n×n}
An×n是一个收缩转换,和
b
1
×
n
b_{1×n}
b1×n表示一个平移转换。
解得仿射变换的参数如下:
{
A
=
L
s
L
t
−
1
b
=
μ
t
−
μ
s
A
.
\begin{cases} A = L_sL^{−1}_t \\ b = μ_t − μ_sA. \end{cases}
{A=LsLt−1b=μt−μsA.
其中,
L
s
L_s
Ls和
L
t
L_t
Lt分别表示对源和目标逆协方差矩阵的Cholesky分解得到的下三角矩阵,
μ
t
\mu_t
μt和
μ
s
\mu_s
μs分别表示源和目标域的均值。
4)算法实现:
AT-MFEA通过使用如下算法(基于映射的任务间交叉)替换MFEA中的任务间交叉实现的。基于映射的任务间交叉包括四步:
首先,构建表示模型(渐进式高斯表示模型);其次,学习任务间映射(参数 A i j , b i j A_{ij},b_{ij} Aij,bij和 A j i , b j i A_{ji},b_{ji} Aji,bji);接着,将解 x i , x j x_i,x_j xi,xj变换为 x i ′ , x j ′ x'_i,x'_j xi′,xj′;最后,分别对 x i ′ , x j x'_i,x_j xi′,xj和 x i , x j ′ x_i,x'_j xi,xj′使用交叉算子
![image-20240305205605502](https://i-blog.csdnimg.cn/blog_migrate/f8049233dcb65f682feb041ab7a193a9.png)
4.思考
1)在多任务优化中,异构问题不仅包含最优解距离较远,也包含决策变量维度不一致等。AT-MFEA在前一个问题上可以得到很好的效果,但却未能考虑后者。
2)正如文章中所说的那样,可以考虑使用更复杂的表示模型以及高学习能力的转换。
3)推广到多目标优化也会引入一些新的问题,如秩相关性的问题,单目标可以直接使用目标值排序,而多目标存在多组目标值,,EMEA中提出随机选择一个目标值来进行排序,具体可见EMEA–多任务优化的另一种范式:显式多任务优化-CSDN博客。