进化计算中基于分类的预处理代理模型

问题提出

代理模型的构造较复杂,作者希望构造一个更为简单的廉价(cheap)的代理模型来评估子集的质量。

因此作者提出了一个叫做CPS(classification based preselection)算法。

预选择(preselection

在进化算法中,预选择是一种分类问题。准确地说,是将子代解作为外部数据集进行二分类,分为promising和unpromissing的解。

CPS的主要步骤

  • ① 根据父代解更新外部种群,给外部种群加上标签
  • ②构造基于KNN的预分类器
  • 根据构造的分类器,预测子代候选解标签(代理模型的核心)
  • ④根据预测标签选择子代解

数据准备 (Data Preparation)

初始化:算法一开始先建立一个外部种群,置空。外部种群随着迭代而更新(同时外部种群可以当做archive,最终的大小  小于5*N)

迭代过程:真实评价当前父代每个每个个体,加入外部种群。对外部种群非支配排序。P+包含了外部种群前一半大小的作为非支配解 ,标记为+1。P-包含了外部种群后一半大小的作为被支配解,标记为-1。

分类模型 (Classification Model)

K是一个KNN的K,为一个奇数。Xi是第k近的特征向量,C是外部种群特征向量标签。

当新产生一个子代解时,我们,可以在不做真实评价时,利用这种分类模型给子代解打上标签。

子代选择( Offspring Selection)

每一个父代解将会生成M个子代解,在这M个子代解中,只评价其中的一部分,将会大大降低计算消耗。

策略嵌入算法流程图

实验结果(IGD评价)

参考文献:Zhang J, Zhou A, Tang K, et al. Preselection via classification: A case study on evolutionary multiobjective optimization[J]. Information Sciences, 2018, 465: 388-403.

一条评论

留下评论

您的邮箱地址不会被公开。 必填项已用 * 标注