首先给出书上的证明过程:
下面的3.6和3.7分别是Wolfe条件和强Wolfe条件:
引理的内容就是:
- 函数连续可微
- p_k是在x点处的一个下降的方向,这里也就是说当x增大一点的时候,f 的值是减小的
- f 沿着x_k+\alpha * p_k的这个方向是下有界的
- 0<c_1<c_2<1
那么就会存在一个区间满足,也就是存在一些 满足Wolfe条件和强Wolfe条件。
证明的大致思路就是由于当时, 下有界,而 下无界,所以在他们的第一个交点处一定有等式3.8成立;因此当 时,也就有Wolfe条件的第一式;此外,由于中值定理,又有3.9式成立,与3.8结合保证了Wolfe条件的第二式;
参考下面这篇知乎文章大致解释一下Wolfe条件:
(41 封私信 / 14 条消息) 如何理解最优化搜索中的Wolfe准则? - 知乎 (zhihu.com)
条件的第一项 3.6a 的思路就是 :我要选出比小的 的那些 。这里保证了的一个主要目的就是,我还是希望我的下一步一定是保证函数值下降而不是上升的。
条件的第二式 3.6b的思路就是:我还希望下一个迭代点x_k+1的斜率要比现在的x_k点处的斜率要大(因为是负值,其实视觉上看上去因该是,找到不那么倾斜的地方),就比如现在是-2,下一个迭代点处的斜率应该是-1而不是-3从而保证-1 > -2。这里的意思就是,如果下一个地方还是比较"斜"的地方,那么就以为着还有很大的下降空间,但我要是找到了一个没那么"斜"的地方,似乎就很接近目标点了。
这里可能没能一眼看出来的地方就是3.6b其实就是一个导数: