Single- and Multiobjective Evolutionary Optimization Assisted by Gaussian Random Field Metamodels
1.摘要
本文详细提出并分析了一种基于进化算法(EA),该算法利用到局部高斯随机场元模型(GRFM)的高效搜索方法。 它可以显著降低评估次数,从而减少评估代价。 GRFM的作用是利用先前评估中记录的信息来预测新候选解决方案的目标函数值。
GRFM选择每一代有前途的成员,只对他们进行精确、昂贵的评价。 广泛地利用预测的不确定性信息来筛选候选解,使得可以显著降低单目标和多目标EA的计算成本。最后本文通过实验验证了算法的性能
2.介绍
本文的亮点GRFM是 Gaussian random field metamodels 的缩写。有的地方也可叫高斯过程,高斯模型。它实际上是基于贝叶斯优化思想的优化算法,关于贝叶斯优化和高斯模型的介绍可参考我的另外两篇博客:贝叶斯优化方法和应用综述和高维设计空间中多目标优化的智能采样框架
3.GRFM
这部分讲了GRFM的详细内容,讲的比较大概,不好懂,用的都是数学公式,建议读者看上面的我另外两篇博客及其他渠道学习,我在这做个简单的总结。
GRFM可以通过已经真实评估过的采样点建立一个模型,该模型可以对新的还没评估过的点进行预测,返回预测值和预测的不确定性(具体用方差来体现不确定性)。
需要一提的是建立GRFM代理模型的时间复杂度是
O
(
N
m
3
d
+
m
2
d
)
O(Nm^3d+m^2d)
O(Nm3d+m2d),预测一个点需要的时间复杂度是
O
(
m
2
)
O(m^2)
O(m2),其中m表示已经真实评估过的采样点 数,d表示目标空间的维度,N表示需要调整代理模型参数的数量。我们常常需要预测多个点(设为n),则获得一个想真实采样的点的时间为
O
(
n
m
2
)
O(nm^2)
O(nm2)。
所以建模使用的真实采样点数决定了时间复杂度。所以我们建模时使用的采样点我们可能只使用一部分真实评估过的点,这样一种策略我们称之为局部代理模型。这有篇文献有探讨相关问题:使用蒙特卡罗树搜索学习搜索空间分区的黑盒优化
4.代理模型辅助优化方法
代理模型辅助优化方法有如下2种类型:
- 模型在预处理阶段进行训练,优化算法基于代理模型搜索最优解。然后在 对最优解进行评估,如此反复。贝叶斯全局优化就基于此方法。
- 每一代代理模型和真实评估工具都是合作进行的,对于种群个体的评估并不完全依赖于代理模型,只是用它加速搜索。在高维搜索空间里,单个高斯模型难以准确预测整个空间,所以我们会切换到局部代理模型
A.单目标下优化方法
我们简单设计期望改进值为:
其中
f
m
i
n
fmin
fmin表示当前所有评估过的点的最小值。y是预测值。如果我们不使用置信的信息的话,一种简单的方式是只使用均值,即:
而为了利用到不确定性,预测值y的计算我们可以使用LCB(lower confidence bound)方法。
式子左边即为y值,右边分别为,均值,控制参数,方差。
本文建议参数w设置为2,这个在Metamodel-assisted evolution strategies有详细描述。
有些地方为了去除掉w参数,有采样两种办法。一种方法是使用probability of improvement (PoI).细节在文献Evolution strategies assisted by gaussian processes with improved preselection criterion,这里简单介绍下。
下面式子计算的是概率密度函数:
下面式子计算的是标准正态函数累积的函数值
f
m
i
n
fmin
fmin代表当前真实评估过的最小值。于是改进的可能性被定义为:
另一种方法是使用expected improvement (ExI),细节在文献Effificient global optimization of expensive black-box
functions,这里简单给出定义。
在这我们再做下简单的总结。
Mean Value (MI):只考虑期望均值,不考虑置信大小
Lower Confidence Bound (LCB):简单使用到置信大小,使用到一个参数w控制置信的使用情况,通常w=2是个不错的选择
Probability of Improvement (PoI):通过改进的概率的累积得到期望改进
Expected Improvement (ExI):也是通过改进的质量大小的累积得到期望改进
B.带约束的和多目标的优化问题
①带约束的优化问题
对于这类问题我们的通常做法是为每个输出建立一个代理模型进行预测。
如果我们继续使用MI方法,那么我们会使用下式计算:
上面式子表示,当ng个约束都
≤
\leq
≤ 0时,即x为可行解时,计算期望改进值,否则MI的值为0
PI方法将会变成下面的计算公式:
其中,PDFx(y)是概率密度函数,Hf是由下式定义的超体积区域。
最后如果输入变量独立,我们用下式计算即可,
式中右边第一个式子代表目标函数支配区域的积分结果,第二个代表后面约束的结果。s(x)表示标准差。
EI计算方法如下:
fmin为当前具有最小目标值的可行解,具体计算公式为:
LCB方法变为:
上式表示,当预测的ng个约束值都
≤
\leq
≤ 0时,即x为可行解时,计算期望改进值,计算方式为均值减去w*标准差。
随着w的设定不同最后能确保的置信概率也不同,下图为具体关系式子,下下图表示了随w的变化,置信概率
P
α
P\alpha
Pα的变化。
可以看到当w>2时,不管有几个约束条件,置信概率
P
α
P\alpha
Pα都很高。所以我们通常设定为
w
≥
w\geq
w≥ 2。
②多目标的优化问题
类似约束处理方法,我们也对每个目标进行预测,不同的是我们会用到一个多目标下的指标Hypervolume(HV),简单介绍可以看我的另一篇博客多目标优化中常用的绩效指标(Performance Indicator)(最全概括)。
对于一个新解x,EI改进的条件是当且仅当x不被原种群的任何一个点支配,因为这样x才能加入pareto前沿,从而可以改进EI。
于是我们的改进策略计算可以定义为下式:
对于多目标优化中的大多数实际问题,很容易找到求解空间的粗略限制。 然而,通常很难先验地规范受限的解空间。 因此,改进措施可能偏向于改进目标之一,即有多个目标,然而会偏向于改进其中几个。所以我们需要好好处理这问题。
MI和LCB方法,我们会用预测值代替真实值,然后进行非支配排序处理。
PI方法我们会直接计算积分PDF(y):
这里的积分区域是预测值y支配原Pareto集合围起来的区域,计算得到的是新解x可以改进的概率,为了考虑改进的大小,我们使用下面的EI。
EI的计算:
这里的I(y)在上面的式子中定义了。
我们可以使用简单的蒙特卡罗积分(一种分段数值积分法)计算:
这时的误差定义为下式:
这里的
S
2
S^2
S2定义为:
当约束加入多目标优化后,PI和EI分别可用下式计算:
5.实验
略