数值优化(Numerical Optimization)学习系列-无梯度优化(Derivative-Free Optimization)

概述

在实际应用中,有些目标函数的梯度不容易计算,即使使用有限差分等近似算法,也会因为噪声的存在导致结果不精确。无梯度优化算法(DFO-Derivative-Free Optimization)可以在不计算梯度的情况下进行问题的最优化,主要有两类思路,一是根据目标函数的样本进行拟合,对拟合函数进行最优化;二是用一些启发式算法。
1. 有限差分和误差
2. 基于模型近似的方法
3. 坐标和模式搜索方法
4. 其他DFO方法
5. 总结

有限差分和误差

有限差分方法在某些情况下可能会有一定的误差,例如如果函数值需要通过随机试验进行模拟,此时会引入人为误差或者仪器误差。
因此对问题进行建模时,将误差引入目标函数中,然后利用有限差分和梯度相关算法进行优化。

f(x)=h(x)+ϕ(x)
其中函数h表示某平滑函数, ϕ 表示误差分布函数,该函数可以和参数x有关也可以无关。

对误差进行建模后,然后利用中心有限差分方法,进行梯度的计算

fxif(x+ϵei)f(xϵei)2ϵ

噪声水平(Noise Level)定义为:
在x附近噪声最大值。 η(x;ϕ)=sup||zx||ϵ|ϕ(z)|

此时使用有限差分方法,近似误差来源于固有误差和噪声误差

基于模型的方法

主要思路是,在第k步迭代时,基于该点进行模型近似,通过采样推导出模型中的参数,基于该模型进行最优化计算。

二次模型近似

在第k步迭代时,构建一个二次模型进行近似

mk(xk+p)=c+gTp+12pTGp
,其中g和G分别表示函数f的一阶和二阶梯度。
由于该模型参数c、g和G都是未知的,因此需要1+n+(n+1)n/2=(n+1)(n+2)/2个未知数需要计算。
所以基于点Xk需要采样这么多个点进行未知数计算。
样本 Y=y1,y2...yq ,假设该集合中的点值都比x_k大。根据拟合等式
  • 6
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值