Page 157 - 《软件学报》2021年第12期
P. 157
孙哲人 等:面向多目标优化的多样性代理辅助进化算法 3821
公式(13)中的 p 是一个系数,本文实验取 p=2. ( s ss− ˆˆ ˆ , ,...,s ˆ ) 是所有目标上不确定性组成的向量,其中,f 1 对
,
3
m
2
1
应的不确定性 ˆ s 取负.
1
对 X a 或 X ia 的筛选见算法 5,其主要目的是根据现有真实评估过的解来删除一些希望渺茫的解,从而提高最
终选出的解的质量.
其中,X ia 为不存在活跃的邻居参考向量的解,即 x∈X ia 周围不存在真实评估的解.一方面,考虑到 x 周围没有
真实评估的解,需要尽量保留 x 以探索其附近;另一方面,保留过差的 x 对模型和种群都没有任何改善,因此,这里
*
用种群 P 中所有的解来计算一个大体范围来筛选 X ia .这里把 d(Xr,z )的最大值作为阈值 d th 筛选解 X ia ,删除
*
*
*
d(x,z )>d th 的 x.其中,d(Xr,z )为集合 Xr 中每一个解到理想点 z 的距离.
X a 为存在活跃的邻居参考向量的解,即 x∈X a 周围存在真实评估的解.这里按照其邻居参考向量的最小相关
解排序后的下四分位筛选 X a ,阈值为
d = d a ⎡ ⎢ 0.25 | a d× |⎤ ⎥ .
th
下四分位是描述整体样本前一半的平均指标,即保留与邻居参考向量上的最小相关解相比较好的 x,这样
对 x 周围有较大的改善.
2.6 训练集更新
训练集 A 在每次迭代后都会进行更新,以保存多样性较好的解,以提高模型拟合的精度;同时,删除价值不大
的解以减少建模时间.本文实验设置训练集 A 大小下限为 11d−1,更新过程见算法 6.
*
为了能够利用选择算子选出的解,步骤 1 从解集 X 中选出一个 d(x,z )最小的解加入训练集 A.步骤 2 计算所
有参考向量在种群 P 中的最小相关解集,并解加入训练集 A.这样就可以得到多样性较好的的训练集,并且随着
算法的迭代,样本会越来越靠近真实 PF,从而帮助 Kriging 模型较好地拟合真实 PF 附近的空间.步骤 4、步骤 5
从相关解最少的参考向量的相关解中选出最好的解加入训练集 A.这是为了补充训练样本,防止训练样本过少
而导致模型准确度下降.
算法 6. 训练集更新 Update.
输入:P:种群 P;
W:参考向量集;
X:解集;
输出:A:训练集 A.
*
1. 选出 d(x,z )最小的 x∈X 加入 A;
2. Xr=MCS(P); //计算 P 的最小相关解集,见算法 2;
3. 把 Xr 加入 A;
4. P′=P−A;
5. while |A|<11d−1 do
6. 找到在 P′上相关解最少的 w;
7. 把 w 的最小的相关解加入 A;
8. 在 P′中删除此解;
9. end
3 实 验
由于使用原昂贵问题评估需要花费大量的时间,若采用真实的昂贵问题,那么对比实验将会花费巨量的时
间,实验的时间花费将会令人难以接受.因此,我们限制测试问题的真实评估次数来模拟解决昂贵多目标优化问
题的场景,即测试问题只会被有限次地用于评估解.
本文实验通过在大规模 2 目标和 3 目标优化问题上的对比实验来证明 DSAEA 的有效性.目前提出的基于
Kriging 模型且性能较好的代理辅助进化算法有 ParEGO,MOEA/D-EGO,K-RVEA,SMS-EGO.其中,由于 SMS-