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-
   152   153   154   155   156   157   158   159   160   161   162