Armijo-Goldstein准则与Wolfe-Powell准则是不精确的一维搜索的两大准则。

之所以要遵循这些准则是为了能使算法收敛(求最优解)。即要使我们的不精确的一维搜索的步长满足一定的规则,使之后的求最优解的过程不至于因为步长过大或者过小而不收敛。

Armijo-Goldstein准则

Armijo-Goldstein准则的核心思想有两个:①目标函数值应该有足够的下降;②一维搜索的步长α不应该太小。

我们来看看Armijo-Goldstein准则的数学表达式:

其中, 0<ρ<12

1)为什么要规定 ρ∈(0,0.5) 这个条件?其实可以证明:如果没有这个条件的话,将影响算法的超线性收敛性。具体的证明过程,大家可以参考袁亚湘写的《最优化理论与方法》一书,我没有仔细看,我觉得对初学者,不用去管它。
(2)第1个不等式的左边式子的泰勒展开式为:
f(xkkdk)=f(xk)+αkgkTdk+o(αk)
去掉高阶无穷小,剩下的部分为: f(xk)+αkgkTdk
而第一个不等式右边与之只差一个系数 ρ
我们已知了 gkTdk<0 (这是 dk 为下降方向的充要条件),并且 ρ∈(0,0.5) ,因此,1式右边仍然是一个比 f(xk) 小的数,即:
f(xk)+αkρgkTdk<f(xk)
也就是说函数值是下降的(下降是最优化的目标)。
(3)由于 ρ∈(0,0.5) 且 gkTdk<0 ( dk 是一个下降方向的充要条件),故第2个式子右边比第1个式子右边要小,即:
αk(1−ρ)gkTdkkρgkTdk<0
如果步长 α 太小的话,会导致这个不等式接近于不成立的边缘。因此,式2就保证了 α 不能太小。

我还要把很多书中都用来描述Armijo-Goldstein准则的一幅图搬出来说明一下

横坐标是 α ,纵坐标是 f ,表示在 xk,dk 均为常量、 α 为自变量变化的情况下,目标函数值随之变化的情况。
之所以说 xk,dk 均为常量,是因为在一维搜索中,在某一个确定的点 xk 上,搜索方向 dk 确定后,我们只需要找到一个合适的步长 α 就可以了。
当 x 为常量, α 为自变量时, f(x+αd) 可能是非线性函数(例如目标函数为 y=x2 时)。因此图中是一条曲线。
右上角的 f(xk+αdk) 并不是表示一个特定点的值,而是表示这条曲线是以 α 为自变量、 xk,dk 为常量的函数图形。
当 α=0 时,函数值为 f(xk) ,如图中左上方所示。水平的那条虚线是函数值为 f(xk) 的基线,用于与其他函数值对比。
f(xk)+αkρgkTdk 那条线在 f(xk) 下方(前面已经分析过了,因为 gkTdk<0 ), f(xk)+αk(1−ρ)gkTdk 又在 f(xk)+αkρgkTdk 的下方(前面也已经分析过了),所以Armijo-Goldstein准则可能会把极小值点(可接受的区间)判断在区间bc内。显而易见,区间bc是有可能把极小值排除在外的(极小值在区间ed内)。
所以,为了解决这个问题,Wolfe-Powell准则应运而生。

Wolfe-Powell准则

Wolfe-Powell准则也有两个数学表达式,其中,第一个表达式与Armijo-Goldstein准则的第1个式子相同,第二个表达式为

这个式子已经不是关于函数值的了,而是关于梯度的。
此式的几何解释为:可接受点处的切线斜率≥初始斜率的 σ 倍。
上面的图已经标出了 σgTkdk 那条线(即 e 点处的切线),而初始点( α=0 的点)处的切线是比 e 点处的切线要“斜”的,由于 σ∈(ρ,1) ,使得 e 点处的切线变得“不那么斜”了——不知道这种极为通俗而不够严谨的说法,是否有助于你理解。
这样做的结果就是,我们将极小值包含在了可接受的区间内( e 点右边的区间)。

Wolfe-Powell准则到这里还没有结束!在某些书中,你会看到用另一个所谓的“更强的条件”来代替(3)式,即:

这个式子和(3)式相比,就是左边加了一个绝对值符号,右边换了一下正负号(因为 gTkdk<0 ,所以 −σgTkdk>0 )。
这样做的结果就是:可接受的区间被限制在了 [b,d] 内,如图:

图中红线即为极小值被“夹击”的生动演示。


转自   https://www.codelast.com/

转载于:https://www.cnblogs.com/yifdu25/p/8093725.html

Armijo-Goldstein准则与Wolfe-Powell准则相关推荐

  1. The Armijo Goldstein line search scheme

    最近在slep包的基础上改写lasso算法,其优化问题代码块中,提到了The Armijo Goldstein line search scheme.就我目前所查到的资料,做一个分享. line se ...

  2. CSS页面重构“鑫三无准则”之“无图片”准则——张鑫旭

    一.再说关于"鑫三无准则" "鑫三无准则"这个概念貌似最早是在去年的去年一篇名叫"关于Google圆角高光高宽自适应按钮及其拓展"的文章中提 ...

  3. mysql分表准则_Mysql分表准则_MySQL

    bitsCN.com Mysql分表准则 Mysql分表准则 在大量使用mysql时,数据量大.高访问时,为了提高性能需要分表处理,简介下mysql分表的标准,后续会继续补充 环境: 业务类型:OLT ...

  4. 通信原理学习笔记6-4:数字解调——抽样判决的译码准则(最大后验概率准则MAP、最大似然准则ML、最小二乘/最小平方准则LS、最小距离准则)

    判决译码 在无ISI时,任意位置nnn上的一个符号InI_nIn​,经过AWGN信道.匹配滤波器.采样后,得到符号YnY_{n}Yn​Yn=In+nnY_{n}=I_{n}+n_{n}Yn​=In​+ ...

  5. 中国企业会计准则和国际财务报告准则趋同

    ⒈中国会计准则与国际财务报告准则的接轨. ⑴从形式上来说,中国新会计准则的格式.概念.术语都基本与国际财务报告准则一致. ⑵在结构和内容方面,中国新会计准则体系也基本实现了与国际财务报告准则的趋同.体 ...

  6. java实现格拉布斯准则_格拉布斯准则(java代码)

    package rule; import java.util.HashMap; import java.util.List; import java.util.Map; //格拉布斯准则 public ...

  7. matlab实现拉依达准则,拉依达准则matalb程序

    页数:2 中图分类:O212 正文语种:CHI 关键词:数据分析;甑别值;拉依达准则;肖维勒准则;格拉布斯准则 摘要:对测量数据进行分析,是为了及时发现错误,防止错误,数据...... 原始信号 中值 ...

  8. 页面重构“鑫三无准则” 之“无宽度”准则

    by zhangxinxu from http://www.zhangxinxu.com 本文地址:http://www.zhangxinxu.com/wordpress/?p=1152 一.关于&q ...

  9. [css] 页面重构“鑫三无准则” 之“无宽度”准则

    原创文章,转载请注明来自张鑫旭-鑫空间-鑫生活[http://www.zhangxinxu.com] 本文地址:http://www.zhangxinxu.com/wordpress/?p=1152 ...

  10. [DIP]客观保真度准则与主观保真度准则

    根据解码图象对原始被压缩图象的保真程度,图象压缩的方法可分成两大类:信息保存型和信息损失型.信息保存型在压缩和解压缩过程中没有信息损失,最后得到的解码图象与原始图象一样.信息损失型常能取得较高的压缩率 ...

最新文章

  1. console.log()的兼容性
  2. 王者荣耀在线服务器,王者荣耀实时对战服务器Photon之PUN介绍
  3. linux系列服务总结之四:SAMBA共享设置完整介绍
  4. SAP Spartacus里的product carousel控件的实现cx-product-carousel
  5. java ee cdi_Java EE CDI ConversationScoped示例
  6. oc51--循环retain
  7. 如何应对软件项目的投标答辩
  8. mysql导入查询失败_mysql数据库中的查询失败
  9. 将视图状态存入数据库(3)
  10. android取消内存限制吗,Android 内存限制
  11. Linux命令解释之cp
  12. Windows MongoDB安装配置
  13. Qt 动图 播放png阵列 避免使用gif导致失真
  14. 与孩子一起学编程--Ubuntu环境下
  15. 吉珠计算机专业插本学校,2015年吉珠与北理珠的专插本考生必看:招生专业数据统计...
  16. Unity 5.4 公开测试版发布:增强的视觉效果,更佳的性能表现
  17. 新冠病毒研究进展:维生素D或许能挽救新冠患者
  18. 导览讲解 | 二维码语音讲解有什么优势?
  19. html字体设置font-family
  20. libxml2剖析(3):使用教程

热门文章

  1. error: (-215:Assertion failed) src.checkVector(2, CV_32F) = = 4 dst.checkVector(2, CV_32F) == 4
  2. 【Java】 8.7 使用红-黄-红色渐变来绘制一个填充矩形
  3. 关于周杰伦的歌曲的启发
  4. 毕业旅行下 徒步穿越腾格里沙漠
  5. R语言 编写自定义函数
  6. 从FragmentPagerAdapter看Fragment 生命周期
  7. 数量技术宅·安徽财经大学 线上策略分享会
  8. 做c4d计算机配置,震惊!现在玩转C4D的电脑配置只要4000多就可以了!
  9. 清华大学计算机系哪个专业就业前景最好,清华大学有哪些专业最好就业?很多人都不知道!...
  10. 清华大学计算机与科学分数线,清华大学各地录取情况及调档线一览