第四章: 信赖域方法
信赖域方法的思想来源于非线性最小二乘问题 . 正如前面所提到的, 信赖域方法与线搜索算法不同之处其一在于, 后者先产生搜索方向p k p_k p k , 再求一合适的步长α k \alpha_k α k , 迭代依照x k + 1 = x k + α k p k x_{k+1}=x_k+\alpha_kp_k x k + 1 = x k + α k p k 的形式进行; 而前者则同时选取搜索方向与步长 (或者说, 先划定步长的范围, 再选取搜索方向) . 迭代的方式为x k + 1 = x k + p k x_{k+1}=x_k+p_k x k + 1 = x k + p k (可以认为此时步长融于p k p_k p k 中) . 信赖域方法的大致想法可见第二章 . 其求解重心在于子问题min p ∈ R n m k ( p ) = f k + g k T p + 1 2 p T B k p , s . t . ∥ p ∥ ≤ Δ k . \min_{p\in\mathbb{R}^n}m_k(p)=f_k+g_k^Tp+\frac{1}{2}p^TB_kp,\quad\mathrm{s.t.}\Vert p\Vert\le\Delta_k. p ∈ R n min m k ( p ) = f k + g k T p + 2 1 p T B k p , s . t . ∥ p ∥ ≤ Δ k .
信赖域的大小对于每步的效果直观重要. 若信赖域过小, 则算法可能就会错过充分下降的机会; 若过大, 信赖域中模型m k m_k m k 的极小点可能就与目标函数f f f 的极小点相距甚远, 从而又得增大信赖域.
下面是线搜索算法与信赖域算法的一个图例.
图中, 椭圆虚线为建立的模型m k m_k m k 的等高线, 而圆形虚线为信赖域的边界. 从图中可以看到, 线搜索得到的函数值下降并不客观 (当然这可能与m k m_k m k 对f f f 的近似程度有关) , 而信赖域方法得到的下一迭代点则被牢牢地锁在信赖域中, 反而带来了较大的下降. 撇开m k m_k m k 不说, 信赖域方法的思想相较于线搜索更加懂得权衡. 拿人来说的话, 线搜索算法像是活力四射说话斩钉截铁的热血青年, 而信赖域算法则像是运筹帷幄决胜千里的沉稳老者 .
我们之前提到, 求解用信赖预算法求解无约束优化问题的关键, 在于求解一系列的子问题 (subproblem) . 若∥ B k − 1 g k ∥ ≤ Δ k \Vert B_k^{-1}g_k\Vert\le\Delta_k ∥ B k − 1 g k ∥ ≤ Δ k , 则可直接将m k m_k m k 的全局极小点作为p k p_k p k (若B k = ∇ 2 f k B_k=\nabla^2 f_k B k = ∇ 2 f k , 则就是牛顿法, 我们将其放在第4节讨论). 此时将p k p_k p k 称为满步. 自然我们无法保证这种情况发生, 不然也就没有后续讨论的必要了.
信赖域算法之框架
我们在每步迭代后都要对信赖域进行调整: 如果m k m_k m k 是f f f 在当前点的好的近似, 则增大信赖域; 反之, 则缩小信赖域. 并且若实在不行, 干脆不动弹 (x k + 1 = x k x_{k+1}=x_k x k + 1 = x k ) . 因此我们需要用一个参数来度量m k m_k m k 在x k x_k x k 处对f f f 的近似程度. 给定p k p_k p k , 定义比值ρ k = f ( x k ) − f ( x k + p k ) m k ( 0 ) − m k ( p k ) ; \rho_k=\frac{f(x_k)-f(x_k+p_k)}{m_k(0)-m_k(p_k)}; ρ k = m k ( 0 ) − m k ( p k ) f ( x k ) − f ( x k + p k ) ; 其中分子称为实际下降, 而分母称为预估下降. 注意到分母一定是非负的. 如此一来, ρ k \rho_k ρ k 就能够较好地反映m k m_k m k 在x k x_k x k 处对f f f 的近似程度: 若ρ k \rho_k ρ k 足够大甚至接近1, 则说明近似得较好, 应当进一步扩大信赖域; 若ρ k \rho_k ρ k 较小, 则说明近似得不好, 至少应当不扩大信赖域 (根据ρ k \rho_k ρ k 的大小判定是保持不变还是缩小) ; 若ρ k \rho_k ρ k 相当接近0甚至是负数时, 动一动信赖域的中心都看起来不是那么合理了 (x k + 1 = x k x_{k+1}=x_k x k + 1 = x k ).
信赖域的算法框架大致如下:
算法1 (信赖域算法)
给定Δ ^ > 0 , Δ 0 ∈ ( 0 , Δ ^ ) , η ∈ [ 0 , 1 4 ] \hat{\Delta}>0,\Delta_0\in(0,\hat{\Delta}),\eta\in\left[0,\frac{1}{4}\right] Δ ^ > 0 , Δ 0 ∈ ( 0 , Δ ^ ) , η ∈ [ 0 , 4 1 ] ;
for k = 0 , 1 , 2 , … , k=0,1,2,\ldots, k = 0 , 1 , 2 , … , 求 解 子 问 题 得 p k \quad\quad求解子问题得p_k 求 解 子 问 题 得 p k ;计 算 ρ k \quad\quad计算\rho_k 计 算 ρ k ;\quad\quad if ρ k < 1 4 \rho_k<\frac{1}{4} ρ k < 4 1 Δ k + 1 = 1 4 Δ k \quad\quad\quad\quad\Delta_{k+1}=\frac{1}{4}\Delta_k Δ k + 1 = 4 1 Δ k ;\quad\quad else\quad\quad\quad\quad if ρ k > 3 4 \rho_k>\frac{3}{4} ρ k > 4 3 and ∥ p k ∥ = Δ k \Vert p_k\Vert=\Delta_k ∥ p k ∥ = Δ k Δ k + 1 = min ( 2 Δ k , Δ ^ ) \quad\quad\quad\quad\quad\quad\Delta_{k+1}=\min(2\Delta_k,\hat{\Delta}) Δ k + 1 = min ( 2 Δ k , Δ ^ ) ;\quad\quad\quad\quad elseΔ k + 1 = Δ k \quad\quad\quad\quad\quad\quad\Delta_{k+1}=\Delta_k Δ k + 1 = Δ k ;\quad\quad if ρ k > η \rho_k>\eta ρ k > η x k + 1 = x k + p k \quad\quad\quad\quad x_{k+1}=x_k+p_k x k + 1 = x k + p k ;\quad\quad elsex k + 1 = x k \quad\quad\quad\quad x_{k+1}=x_k x k + 1 = x k ;
end (for) .
其中Δ ^ \hat{\Delta} Δ ^ 为步长上界. 注意信赖域半径增大仅当∥ p k ∥ \Vert p_k\Vert ∥ p k ∥ 达到边界. 若此次迭代步位于信赖域中, 则我们认为现在的Δ k \Delta_k Δ k 不会影响算法, 保持其不变.
从上述算法中我们可以看出:
信赖域的半径不会变的过大 (有上界Δ ^ \hat{\Delta} Δ ^ ) , 也不会变的过小 (由泰勒展开, 若函数有一定的光滑性, 则二次模型应当近似得越来越好);
信赖域方法较于线搜索有一定的优势: 后者可能求到极大点和鞍点, 而前者求到的一定是极小点.
我们顺便将求解子问题的关键定理给出, 后面将给出证明.
定理1 向量p ∗ p^* p ∗ 为信赖域子问题min p ∈ R n m ( p ) = f + g T p + 1 2 p T B p , s . t . ∥ p ∥ ≤ Δ \min_{p\in\mathbb{R}^n}m(p)=f+g^Tp+\frac{1}{2}p^TBp,\quad\mathrm{s.t.}\Vert p\Vert\le\Delta p ∈ R n min m ( p ) = f + g T p + 2 1 p T B p , s . t . ∥ p ∥ ≤ Δ 的全局解当且仅当p ∗ p^* p ∗ 可行且存在标量λ ≥ 0 \lambda\ge0 λ ≥ 0 使得下面的三个条件成立:( B + λ I ) p ∗ = − g , (B+\lambda I)p^*=-g, ( B + λ I ) p ∗ = − g , λ ( Δ − ∥ p ∗ ∥ ) = 0 , \lambda(\Delta-\Vert p^*\Vert)=0, λ ( Δ − ∥ p ∗ ∥ ) = 0 , ( B + λ I ) 半 正 定 . (B+\lambda I)半正定. ( B + λ I ) 半 正 定 . 其中第二个条件又称为互补条件. 此定理揭示了信赖域方法的优势: 就算B k B_k B k 是不定的, 我们仍然有子问题达到全局极小的充要条件. 相比之下, 其他方法往往至多有充分条件.
下面为本章架构: 第一节我们提出Cauchy点的概念, 并给出两种基于它的近似求解子问题的策略; 第二节证明全局收敛性; 第三节给出求子问题的迭代方法; 第四节讨论当B k B_k B k 恰好为∇ 2 f k \nabla^2f_k ∇ 2 f k 时的情形, 并考虑它的收敛性质.
1. 基于Cauchy点的算法
1.1 Cauchy点
Cauchy点在证明信赖域算法全局收敛性上的作用, 就如同Wolfe条件在线搜索算法上的作用. 信赖域算法无需精确搜索, 只需要每步迭代满足: 1) 迭代步在信赖域内; 2) 迭代步带来充分下降, 即可得到全局收敛性. 后者便是由Cauchy点保证. Cauchy点的计算基于对函数f f f 的一阶展开 , 事实上就是对一阶模型的极小化:p k s = arg min p ∈ R n f k + g k T p , s . t . ∥ p ∥ ≤ Δ k ; p_k^s=\arg\min_{p\in\mathbb{R}^n}f_k+g_k^Tp,\quad\mathrm{s.t.}\Vert p\Vert\le\Delta_k; p k s = arg p ∈ R n min f k + g k T p , s . t . ∥ p ∥ ≤ Δ k ; 再沿着p k s p_k^s p k s 最小化m k m_k m k , 得到步长τ k \tau_k τ k , τ k = arg min τ ≥ 0 m k ( τ p k s ) , s . t . ∥ τ p k s ∥ ≤ Δ k ; \tau_k=\arg\min_{\tau\ge0}m_k(\tau p_k^s),\quad\mathrm{s.t.}\Vert\tau p_k^s\Vert\le\Delta_k; τ k = arg τ ≥ 0 min m k ( τ p k s ) , s . t . ∥ τ p k s ∥ ≤ Δ k ; 置p k C = τ k p k s p_k^C=\tau_kp_k^s p k C = τ k p k s , 即为Cauchy点.
事实上, 可以很容易地得到Cauchy点的解析表示. 易知p k s = − Δ k ∥ g k ∥ g k . p_k^s=-\frac{\Delta_k}{\Vert g_k\Vert}g_k. p k s = − ∥ g k ∥ Δ k g k . 为了解析地得到τ k \tau_k τ k , 我们分g k T B k g k ≤ 0 g_k^TB_kg_k\le0 g k T B k g k ≤ 0 和g k T B k g k > 0 g_k^TB_kg_k>0 g k T B k g k > 0 两种情况讨论.
第一种情形, 只要g k ≠ 0 g_k\ne0 g k ̸ = 0 , m k ( τ p s s ) m_k(\tau p_s^s) m k ( τ p s s ) 就是随τ \tau τ 而单调递减的, 从而τ k = 1 \tau_k=1 τ k = 1 ;
第二种情形, m k ( τ p k s ) m_k(\tau p_k^s) m k ( τ p k s ) 是τ \tau τ 的凸函数, 从而要么取∥ g k ∥ 3 / ( Δ k g k T B k g k ) \Vert g_k\Vert^3/(\Delta_kg_k^TB_kg_k) ∥ g k ∥ 3 / ( Δ k g k T B k g k ) (此时为无约束下的最小点), 要么取1 (达到边界) .
从而有p k C = − τ k Δ k ∥ g k ∥ g k , p_k^C=-\tau_k\frac{\Delta_k}{\Vert g_k\Vert}g_k, p k C = − τ k ∥ g k ∥ Δ k g k , 其中τ k = { 1 若 g k T B k g k ≤ 0 ; min ( ∥ g k ∥ 3 / ( Δ k g k T B k g k ) , 1 ) o t h e r w i s e . \tau_k=\left\{\begin{array}{ll}1 & 若g_k^TB_kg_k\le0;\\\min(\Vert g_k\Vert^3/(\Delta_kg_k^TB_kg_k),1) & otherwise.\end{array}\right. τ k = { 1 min ( ∥ g k ∥ 3 / ( Δ k g k T B k g k ) , 1 ) 若 g k T B k g k ≤ 0 ; o t h e r w i s e . 事实上, Cauchy点的选取可以看做是最速下降法的一种特殊情形 : 同样是沿着负梯度方向搜索, 只是选取了特殊的步长 . Cauchy点的计算耗费很小, 至多涉及矩阵-向量乘积 . 此外, 更重要的是, Cauchy点还是判定全局收敛性的重要手段 : 只要p k p_k p k 带来的函数值下降不少于p k C p_k^C p k C , 则对应的信赖域算法就是全局收敛的 . 不过, 由第三章 中关于最速下降法的讨论, 即使使用精确线搜索, 其表现也可能不尽人意. 因此我们需要基于Cauchy点设计更好的算法.
由于Cauchy点几乎没有用到f f f 的二阶信息 , 因此设计的新算法应当将此纳入考虑. 同时, 新算法还应当具有一定的相容性 : 当B k B_k B k 正定且p k B = − B k − 1 g k p_k^B=-B_k^{-1}g_k p k B = − B k − 1 g k 满足∥ p k B ∥ ≤ Δ k \Vert p_k^B\Vert\le\Delta_k ∥ p k B ∥ ≤ Δ k 时, 应当走满步 (即与牛顿法相容) , 以期较快的收敛速度.
以下省去下标k k k , 并以p ∗ ( Δ ) p^*(\Delta) p ∗ ( Δ ) 表示解以强调其对Δ \Delta Δ 的依赖性.
1.2 折线算法 (The Dogleg Method)
折线算法可用于B B B 为正定的情形 (当然后面会提到, 折线算法亦可推广到不定的情形) . 算法的想法如下:
当∥ p B ∥ ≤ Δ \Vert p^B\Vert\le\Delta ∥ p B ∥ ≤ Δ 时, 显然应当有p ∗ ( Δ ) = p B p^*(\Delta)=p^B p ∗ ( Δ ) = p B ;
当∥ p B ∥ ≫ Δ \Vert p^B\Vert\gg\Delta ∥ p B ∥ ≫ Δ 时, 可认为 m m m 中的二次项对子问题的求解影响较小, 从而忽略二次项有p ∗ ( Δ ) ≈ − Δ g ∥ g ∥ . p^*(\Delta)\approx-\Delta\frac{g}{\Vert g\Vert}. p ∗ ( Δ ) ≈ − Δ ∥ g ∥ g . 而对于Δ \Delta Δ 的中间值, 可用插值处理.
折线算法是基于以上两点的近似算法, 它用两段折线近似p ∗ ( Δ ) p^*(\Delta) p ∗ ( Δ ) 的轨迹 . 第一条轨迹来源于上面的第2条, 即使用最速下降方向p U = − g T g g T B g g p^U=-\frac{g^Tg}{g^TBg}g p U = − g T B g g T g g (注意这里的系数是原本最速下降法的步长); 而第二条轨迹则将p U p^U p U 与p B p^B p B 相连. 如下图所示.
我们用p ~ ( τ ) , τ ∈ [ 0 , 2 ] \tilde{p}(\tau), \tau\in[0,2] p ~ ( τ ) , τ ∈ [ 0 , 2 ] 表示折线轨迹, 其严格的数学表达为p ~ ( τ ) = { τ p U , 0 ≤ τ ≤ 1 , p U + ( τ − 1 ) ( p B − p U ) , 1 ≤ τ ≤ 2. \tilde{p}(\tau)=\left\{\begin{array}{ll}\tau p^U, & 0\le\tau\le1,\\p^U+(\tau-1)(p^B-p^U), & 1\le\tau\le2.\end{array}\right. p ~ ( τ ) = { τ p U , p U + ( τ − 1 ) ( p B − p U ) , 0 ≤ τ ≤ 1 , 1 ≤ τ ≤ 2 . 根据折线算法得到的p p p 就是折线轨迹与信赖域边界的交点 (如果没有, 说明p B p^B p B 在信赖域中, 可直接选取p B p^B p B ) . 下面的定理证实了这一点.
定理2 设B B B 正定. 则
∥ p ~ ( τ ) ∥ \Vert \tilde{p}(\tau)\Vert ∥ p ~ ( τ ) ∥ 是τ \tau τ 的递增函数;
m ( p ~ ( τ ) ) m(\tilde{p}(\tau)) m ( p ~ ( τ ) ) 是τ \tau τ 的递减函数.
证明: 易知1, 2对τ ∈ [ 0 , 1 ] \tau\in[0,1] τ ∈ [ 0 , 1 ] 是成立的. 所以我们将讨论限制在τ ∈ [ 1 , 2 ] \tau\in[1,2] τ ∈ [ 1 , 2 ] 上. 对1, 定义h ( α ) = 1 2 ∥ p ~ ( 1 + α ) ∥ 2 = 1 2 ∥ p U + α ( p B − p U ) ∥ 2 = 1 2 ∥ p U ∥ 2 + α ( p U ) T ( p B − p U ) + 1 2 α 2 ∥ p B − p U ∥ 2 . \begin{aligned}h(\alpha)&=\frac{1}{2}\Vert\tilde{p}(1+\alpha)\Vert^2\\&=\frac{1}{2}\Vert p^U+\alpha(p^B-p^U)\Vert^2\\&=\frac{1}{2}\Vert p^U\Vert^2+\alpha(p^U)^T(p^B-p^U)+\frac{1}{2}\alpha^2\Vert p^B-p^U\Vert^2.\end{aligned} h ( α ) = 2 1 ∥ p ~ ( 1 + α ) ∥ 2 = 2 1 ∥ p U + α ( p B − p U ) ∥ 2 = 2 1 ∥ p U ∥ 2 + α ( p U ) T ( p B − p U ) + 2 1 α 2 ∥ p B − p U ∥ 2 . 因此只需证明h ′ ( α ) ≥ 0 , α ∈ ( 0 , 1 ) h'(\alpha)\ge0,\alpha\in(0,1) h ′ ( α ) ≥ 0 , α ∈ ( 0 , 1 ) . 直接计算可得h ′ ( α ) = − ( p U ) T ( p U − p B ) + α ∥ p U − p B ∥ 2 ≥ − ( p U ) T ( p U − p B ) = g T g g T B g g T ( − g T g g T B g g + B − 1 g ) = g T g g T B − 1 g g T B g [ 1 − ( g T g ) 2 ( g T B g ) ( g T B − 1 g ) ] . \begin{aligned}h'(\alpha)&=-(p^U)^T(p^U-p^B)+\alpha\Vert p^U-p^B\Vert^2\\&\ge-(p^U)^T(p^U-p^B)\\&=\frac{g^Tg}{g^TBg}g^T\left(-\frac{g^Tg}{g^TBg}g+B^{-1}g\right)\\&=g^Tg\frac{g^TB^{-1}g}{g^TBg}\left[1-\frac{(g^Tg)^2}{(g^TBg)(g^TB^{-1}g)}\right].\end{aligned} h ′ ( α ) = − ( p U ) T ( p U − p B ) + α ∥ p U − p B ∥ 2 ≥ − ( p U ) T ( p U − p B ) = g T B g g T g g T ( − g T B g g T g g + B − 1 g ) = g T g g T B g g T B − 1 g [ 1 − ( g T B g ) ( g T B − 1 g ) ( g T g ) 2 ] . 由Cauchy-Schwarz不等式,( g T g ) 2 = ( g T B 1 2 B − 1 2 g ) 2 ≤ ∥ B 1 2 g ∥ 2 ∥ B − 1 2 g ∥ 2 = ( g T B g ) ( g T B − 1 g ) , \begin{aligned}(g^Tg)^2&=\left(g^TB^{\frac{1}{2}}B^{-\frac{1}{2}}g\right)^2\\&\le\left\Vert B^{\frac{1}{2}}g\right\Vert^2\left\Vert B^{-\frac{1}{2}}g\right\Vert^2\\&=(g^TBg)(g^TB^{-1}g),\end{aligned} ( g T g ) 2 = ( g T B 2 1 B − 2 1 g ) 2 ≤ ∥ ∥ ∥ B 2 1 g ∥ ∥ ∥ 2 ∥ ∥ ∥ B − 2 1 g ∥ ∥ ∥ 2 = ( g T B g ) ( g T B − 1 g ) , 从而第1条得证.
对于第2条, 定义h ^ ( α ) = m ( p ~ ( 1 + α ) ) \hat{h}(\alpha)=m(\tilde{p}(1+\alpha)) h ^ ( α ) = m ( p ~ ( 1 + α ) ) 并证明h ^ ′ ( α ) ≤ 0 , α ∈ ( 0 , 1 ) \hat{h}'(\alpha)\le0,\alpha\in(0,1) h ^ ′ ( α ) ≤ 0 , α ∈ ( 0 , 1 ) . 直接计算可得h ^ ′ ( α ) = ( p B − p U ) T ( g + B p U ) + α ( p B − p U ) T B ( p B − p U ) ≤ ( p B − p U ) T ( g + B p U + B ( p B − p U ) ) = ( p B − p U ) T ( g + B p B ) = 0. \begin{aligned}\hat{h}'(\alpha)&=(p^B-p^U)^T(g+Bp^U)+\alpha(p^B-p^U)^TB(p^B-p^U)\\&\le(p^B-p^U)^T(g+Bp^U+B(p^B-p^U))\\&=(p^B-p^U)^T(g+Bp^B)=0.\end{aligned} h ^ ′ ( α ) = ( p B − p U ) T ( g + B p U ) + α ( p B − p U ) T B ( p B − p U ) ≤ ( p B − p U ) T ( g + B p U + B ( p B − p U ) ) = ( p B − p U ) T ( g + B p B ) = 0 .
此引理说明, 折线轨迹与信赖域边界至多只会交于一点. 当有交点产生时, 若∥ p U ∥ ≤ Δ \Vert p^U\Vert\le\Delta ∥ p U ∥ ≤ Δ , 则需要求解关于标量的二次方程∥ p U + ( τ − 1 ) ( p B − p U ) ∥ 2 = Δ 2 . \Vert p^U+(\tau-1)(p^B-p^U)\Vert^2=\Delta^2. ∥ p U + ( τ − 1 ) ( p B − p U ) ∥ 2 = Δ 2 .
下面说几点注记:
若将d ( Δ ) d(\Delta) d ( Δ ) 记作定理1中信赖域子问题的精确解, 则折线算法中的"折线"可以视作对d ( Δ ) d(\Delta) d ( Δ ) 的近似, 其中而这起点与终点重合, 且在起点处相切.
当Hessian矩阵∇ 2 f ( x k ) \nabla^2f(x_k) ∇ 2 f ( x k ) 可用且正定时, 可令B = ∇ 2 f ( x k ) B=\nabla^2f(x_k) B = ∇ 2 f ( x k ) , 从而得到牛顿折线算法与牛顿折线步. 否则我们可选取B B B 为Hessian的正定近似 (可见第三章 3.2.2小节的讨论) . 在接近满足二阶充分条件的解时, p B p^B p B 将被采纳, 从而算法可能达到与牛顿法相当的局部收敛速度 . 这点在后面会给出证明. 不过, 在牛顿折线算法中取修正的Hessian可能会以任一种形式影响∇ 2 f ( x k ) \nabla^2f(x_k) ∇ 2 f ( x k ) 的对角元, 从而破坏了信赖域算法的优势. 事实上, 信赖域算法有其自身对Hessian的修正. 由之前的定理1可知, 对于B k = ∇ 2 f ( x k ) B_k=\nabla^2f(x_k) B k = ∇ 2 f ( x k ) , 信赖域子问题的解为( ∇ 2 f ( x k ) + λ I ) − 1 g k (\nabla^2f(x_k)+\lambda I)^{-1}g_k ( ∇ 2 f ( x k ) + λ I ) − 1 g k , 其中λ \lambda λ 为使∇ 2 f ( x k ) + λ I \nabla^2f(x_k)+\lambda I ∇ 2 f ( x k ) + λ I 正定的实数, 其值依赖于信赖域半径Δ k \Delta_k Δ k . 我们给出: 对于凸函数 (即∇ 2 f ( x k ) \nabla^2f(x_k) ∇ 2 f ( x k ) 总是半正定的) , 牛顿折线算法是最实用的. 但对于一般的情形, 则需要应用下面提到的子空间算法.
折线算法也可以推广到B B B 不定的情形, 不过此时满步p B p^B p B 就不再是m m m 的最小点了.
1.3 二维子空间最小化 (Cont’d)
当B B B 正定, 折线算法可以扩展为在p B p^B p B 和p U p^U p U 张成的二维子空间中极小化. 于是子问题就变为min p m ( p ) = f + g T p + 1 2 p T B p , s . t . ∥ p ∥ ≤ Δ , p ∈ s p a n { g , B − 1 g } . \min_pm(p)=f+g^Tp+\frac{1}{2}p^TBp,\quad\mathrm{s.t.} \Vert p\Vert\le\Delta,\quad p\in\mathrm{span}\{g,B^{-1}g\}. p min m ( p ) = f + g T p + 2 1 p T B p , s . t . ∥ p ∥ ≤ Δ , p ∈ s p a n { g , B − 1 g } . 这是一个计算耗费不大的具有两个变量 (p p p 在子空间中的坐标) 的问题. 事实上经过一些代数操作, 此问题可约减为求一个四次多项式的根.
显然, Cauchy点p C p^C p C 显然包含在上述问题的可行域中, 所以此子问题的最优解将带来不少于Cauchy点的下降 (从而全局收敛) . 下面我们讨论对B B B 不定情形的处理.
当B B B 有负特征值时, 上述子问题中的二维子空间变为s p a n { g , ( B + α I ) − 1 g } , α ∈ ( − λ 1 , − 2 λ 1 ] , \mathrm{span}\{g,(B+\alpha I)^{-1}g\},\quad\alpha\in(-\lambda_1,-2\lambda_1], s p a n { g , ( B + α I ) − 1 g } , α ∈ ( − λ 1 , − 2 λ 1 ] , 其中λ 1 \lambda_1 λ 1 为B B B 的最小特征值 (α \alpha α 的选择要能保证B + α I B+\alpha I B + α I 正定, 且α \alpha α 选择的灵活性允许我们使用诸如Lanczos方法的算法计算它) . 当∥ ( B + α I ) − 1 g ∥ ≤ Δ \Vert (B+\alpha I)^{-1}g\Vert\le\Delta ∥ ( B + α I ) − 1 g ∥ ≤ Δ , 我们放弃在子空间中搜索而定义迭代步为p = − ( B + α I ) − 1 g + v , p=-(B+\alpha I)^{-1}g+v, p = − ( B + α I ) − 1 g + v , 其中v v v 为满足v T ( B + α I ) − 1 g ≤ 0 v^T(B+\alpha I)^{-1}g\le0 v T ( B + α I ) − 1 g ≤ 0 (这一条件保证∥ p ∥ ≥ ∥ ( B + α I ) − 1 g ∥ \Vert p\Vert\ge\Vert(B+\alpha I)^{-1}g\Vert ∥ p ∥ ≥ ∥ ( B + α I ) − 1 g ∥ ) 的向量. 当B B B 有0特征值而没有负特征值时, 我们就定义迭代步为Cauchy点p = p C p=p^C p = p C .
二维子空间最小化带来的函数值下降往往与精确解带来的下降很接近. 计算量主要在B B B 或B + α I B+\alpha I B + α I 的一次分解上, 而要求较为精确的解则需要两到三次这样的分解 .
2. 全局收敛性
2.1 Cauchy点的函数值下降
我们在之前曾多次强调, 只要迭代步带来的下降不少于Cauchy点, 则算法的全局收敛性将在一定程度上得到保证. 与线搜索Wolfe条件中的充分下降条件类似, 我们将证明折线方法、二维子空间最小化算法产生的p k p_k p k 有如下的下降估计:m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ g k ∥ ∥ B k ∥ ) , c 1 ∈ ( 0 , 1 ] . m_k(0)-m_k(p_k)\ge c_1\Vert g_k\Vert\min\left(\Delta_k,\frac{\Vert g_k\Vert}{\Vert B_k\Vert}\right),\quad c_1\in(0,1]. m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ B k ∥ ∥ g k ∥ ) , c 1 ∈ ( 0 , 1 ] . 特别地, 当Δ k \Delta_k Δ k 是上述中更小的那个, 则上述估计就与线搜索中的充分下降条件具有相同的形式, 即下降与梯度和步长成正比. 下面证明Cauchy点p k C p^C_k p k C 满足c 1 = 1 2 c_1=\frac{1}{2} c 1 = 2 1 的情形.
定理3 Cauchy点p k C p_k^C p k C 满足m k ( 0 ) − m k ( p k C ) ≥ 1 2 ∥ g k ∥ min ( Δ k , ∥ g k ∥ ∥ B k ∥ ) . m_k(0)-m_k(p_k^C)\ge\frac{1}{2}\Vert g_k\Vert\min\left(\Delta_k,\frac{\Vert g_k\Vert}{\Vert B_k\Vert}\right). m k ( 0 ) − m k ( p k C ) ≥ 2 1 ∥ g k ∥ min ( Δ k , ∥ B k ∥ ∥ g k ∥ ) .
证明: 为方便起见, 以下证明省去下标k k k . 与Cauchy点相同, 我们分两种情形讨论.
当g T B g ≤ 0 g^TBg\le0 g T B g ≤ 0 时, 我们有p C = − Δ g ∥ g ∥ p^C=-\Delta\frac{g}{\Vert g\Vert} p C = − Δ ∥ g ∥ g , 且m ( p C ) − m ( 0 ) = m ( − Δ g / ∥ g ∥ ) − f = − Δ ∥ g ∥ ∥ g ∥ 2 + 1 2 Δ 2 ∥ g ∥ 2 g T B g ≤ − Δ ∥ g ∥ ≤ − ∥ g ∥ min ( Δ , ∥ g ∥ ∥ B ∥ ) . \begin{aligned}m(p^C)-m(0)&=m(-\Delta g/\Vert g\Vert)-f\\&=-\frac{\Delta}{\Vert g\Vert}\Vert g\Vert^2+\frac{1}{2}\frac{\Delta^2}{\Vert g\Vert^2}g^TBg\\&\le-\Delta\Vert g\Vert\\&\le-\Vert g\Vert\min\left(\Delta,\frac{\Vert g\Vert}{\Vert B\Vert}\right).\end{aligned} m ( p C ) − m ( 0 ) = m ( − Δ g / ∥ g ∥ ) − f = − ∥ g ∥ Δ ∥ g ∥ 2 + 2 1 ∥ g ∥ 2 Δ 2 g T B g ≤ − Δ ∥ g ∥ ≤ − ∥ g ∥ min ( Δ , ∥ B ∥ ∥ g ∥ ) . 这就证明了不等式.
当g T B g > 0 g^TBg>0 g T B g > 0 时, Cauchy点的参数τ \tau τ 有两种选择.
当∥ g ∥ 3 Δ g T B g ≤ 1 \frac{\Vert g\Vert^3}{\Delta g^TBg}\le1 Δ g T B g ∥ g ∥ 3 ≤ 1 时, τ = ∥ g ∥ 3 Δ g T B g \tau=\frac{\Vert g\Vert^3}{\Delta g^TBg} τ = Δ g T B g ∥ g ∥ 3 , 从而m ( p C ) − m ( 0 ) = − ∥ g ∥ 4 g T B g + 1 2 g T B g ∥ g ∥ 4 ( g T B g ) 2 = − 1 2 ∥ g ∥ 4 g T B g ≤ − 1 2 ∥ g ∥ 4 ∥ B ∥ ∥ g ∥ 2 = − 1 2 ∥ g ∥ 2 ∥ B ∥ ≤ − 1 2 ∥ g ∥ min ( Δ , ∥ g ∥ ∥ B ∥ ) . \begin{aligned}m(p^C)-m(0)&=-\frac{\Vert g\Vert^4}{g^TBg}+\frac{1}{2}g^TBg\frac{\Vert g\Vert^4}{(g^TBg)^2}\\&=-\frac{1}{2}\frac{\Vert g\Vert^4}{g^TBg}\\&\le-\frac{1}{2}\frac{\Vert g\Vert^4}{\Vert B\Vert\Vert g\Vert^2}\\&=-\frac{1}{2}\frac{\Vert g\Vert^2}{\Vert B\Vert}\\&\le-\frac{1}{2}\Vert g\Vert\min\left(\Delta,\frac{\Vert g\Vert}{\Vert B\Vert}\right).\end{aligned} m ( p C ) − m ( 0 ) = − g T B g ∥ g ∥ 4 + 2 1 g T B g ( g T B g ) 2 ∥ g ∥ 4 = − 2 1 g T B g ∥ g ∥ 4 ≤ − 2 1 ∥ B ∥ ∥ g ∥ 2 ∥ g ∥ 4 = − 2 1 ∥ B ∥ ∥ g ∥ 2 ≤ − 2 1 ∥ g ∥ min ( Δ , ∥ B ∥ ∥ g ∥ ) . 此时也成立不等式.
当g T B g < ∥ g ∥ 3 Δ g^TBg<\frac{\Vert g\Vert^3}{\Delta} g T B g < Δ ∥ g ∥ 3 , τ = 1 \tau = 1 τ = 1 , 从而m ( p C ) − m ( 0 ) = − Δ ∥ g ∥ ∥ g ∥ 2 + 1 2 Δ 2 ∥ g ∥ 2 g T B g ≤ − Δ ∥ g ∥ + 1 2 Δ 2 ∥ g ∥ 2 ∥ g ∥ 3 Δ = − 1 2 Δ ∥ g ∥ ≤ − 1 2 ∥ g ∥ min ( Δ , ∥ g ∥ ∥ B ∥ ) . \begin{aligned}m(p^C)-m(0)&=-\frac{\Delta}{\Vert g\Vert}\Vert g\Vert^2+\frac{1}{2}\frac{\Delta^2}{\Vert g\Vert^2}g^TBg\\&\le-\Delta\Vert g\Vert+\frac{1}{2}\frac{\Delta^2}{\Vert g\Vert^2}\frac{\Vert g\Vert^3}{\Delta}\\&=-\frac{1}{2}\Delta\Vert g\Vert\\&\le-\frac{1}{2}\Vert g\Vert\min\left(\Delta,\frac{\Vert g\Vert}{\Vert B\Vert}\right).\end{aligned} m ( p C ) − m ( 0 ) = − ∥ g ∥ Δ ∥ g ∥ 2 + 2 1 ∥ g ∥ 2 Δ 2 g T B g ≤ − Δ ∥ g ∥ + 2 1 ∥ g ∥ 2 Δ 2 Δ ∥ g ∥ 3 = − 2 1 Δ ∥ g ∥ ≤ − 2 1 ∥ g ∥ min ( Δ , ∥ B ∥ ∥ g ∥ ) . 证毕.
为满足充分下降, p k p_k p k 只需带来Cauchy点下降的某一系数倍即可. 这就是下面的定理.
定理4 设p k : ∥ p k ∥ ≤ Δ k p_k: \Vert p_k\Vert\le\Delta_k p k : ∥ p k ∥ ≤ Δ k , 且m k ( 0 ) − m k ( p k ) ≥ c 2 ( m k ( 0 ) − m k ( p k C ) ) m_k(0)-m_k(p_k)\ge c_2(m_k(0)-m_k(p^C_k)) m k ( 0 ) − m k ( p k ) ≥ c 2 ( m k ( 0 ) − m k ( p k C ) ) . 于是p k p_k p k 对c 1 = c 2 / 2 c_1=c_2/2 c 1 = c 2 / 2 成立下降不等式. 特别地, 若p k p_k p k 为子问题的精确解p k ∗ p_k^* p k ∗ , 则它满足c 1 = 1 2 c_1=\frac{1}{2} c 1 = 2 1 .
证明: 证明是显然的. 由于∥ p k ∥ ≤ Δ k \Vert p_k\Vert\le\Delta_k ∥ p k ∥ ≤ Δ k , 所以由定理3即可得到证明.
注意折线算法和二维子空间最小化算法都满足c 1 = 1 / 2 c_1=1/2 c 1 = 1 / 2 的情形, 这是因为它们产生的p k p_k p k 都满足m k ( p k ) ≤ m k ( p k C ) m_k(p_k)\le m_k(p_k^C) m k ( p k ) ≤ m k ( p k C ) .
2.2 全局收敛性
信赖域算法的全局收敛性依赖于算法1中η \eta η 的选取. 若η = 0 \eta=0 η = 0 , 也就是说不论如何必定移动信赖域的中心 (x k + 1 = x k + p k x_{k+1}=x_k+p_k x k + 1 = x k + p k ), 则有弱全局收敛; 若η > 0 \eta>0 η > 0 , 则可以证明全局收敛性 .
为证明上述, 我们假设
Hessian近似B k B_k B k 范数一致有界;
f f f 在水平集S = { x ∣ f ( x ) ≤ f ( x 0 ) } S=\{x|f(x)\le f(x_0)\} S = { x ∣ f ( x ) ≤ f ( x 0 ) } 上下有界, 并定义S S S 的一个开邻域为S ( R 0 ) = { x ∣ ∥ x − y ∥ < R 0 , y ∈ S } , S(R_0)=\{x|\Vert x-y\Vert<R_0,y\in S\}, S ( R 0 ) = { x ∣ ∥ x − y ∥ < R 0 , y ∈ S } , 其中R 0 R_0 R 0 为正常数.
为增大定理的适用范围, 允许p k p_k p k 越过信赖域边界, 即对某个常数γ ≥ 1 \gamma\ge1 γ ≥ 1 有∥ p k ∥ ≤ γ Δ k . \Vert p_k\Vert\le\gamma\Delta_k. ∥ p k ∥ ≤ γ Δ k .
下面我们分别针对η = 0 \eta=0 η = 0 和η > 0 \eta>0 η > 0 的情形证明.
定理5 设算法1中η = 0 \eta=0 η = 0 . 假设存在常数β \beta β 使得∥ B k ∥ ≤ β , ∀ k \Vert B_k\Vert\le\beta,\forall k ∥ B k ∥ ≤ β , ∀ k , f f f 在水平集S S S 上下有界且在邻域S ( R 0 ) S(R_0) S ( R 0 ) 上Lipschitz连续可微. 算法产生的所有子问题的近似解p k p_k p k 满足m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ g k ∥ ∥ B k ∥ ) , c 1 ∈ ( 0 , 1 ] m_k(0)-m_k(p_k)\ge c_1\Vert g_k\Vert\min\left(\Delta_k,\frac{\Vert g_k\Vert}{\Vert B_k\Vert}\right), \quad c_1\in(0,1] m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ B k ∥ ∥ g k ∥ ) , c 1 ∈ ( 0 , 1 ] 和∥ p k ∥ ≤ γ Δ k , γ ≥ 1. \Vert p_k\Vert\le\gamma\Delta_k,\quad \gamma\ge1. ∥ p k ∥ ≤ γ Δ k , γ ≥ 1 . 则我们有弱全局收敛性lim inf k → ∞ ∥ g k ∥ = 0. \liminf_{k\to\infty}\Vert g_k\Vert=0. k → ∞ l i m i n f ∥ g k ∥ = 0 .
证明: 从ρ k \rho_k ρ k 的定义式我们有∣ ρ k − 1 ∣ = ∣ ( f ( x k ) − f ( x k + p k ) ) − ( m k ( 0 ) − m k ( p k ) ) m k ( 0 ) − m k ( p k ) ∣ = ∣ m k ( p k ) − f ( x k + p k ) m k ( 0 ) − m k ( p k ) ∣ . \begin{aligned}|\rho_k-1|&=\left|\frac{(f(x_k)-f(x_k+p_k))-(m_k(0)-m_k(p_k))}{m_k(0)-m_k(p_k)}\right|\\&=\left|\frac{m_k(p_k)-f(x_k+p_k)}{m_k(0)-m_k(p_k)}\right|.\end{aligned} ∣ ρ k − 1 ∣ = ∣ ∣ ∣ ∣ m k ( 0 ) − m k ( p k ) ( f ( x k ) − f ( x k + p k ) ) − ( m k ( 0 ) − m k ( p k ) ) ∣ ∣ ∣ ∣ = ∣ ∣ ∣ ∣ m k ( 0 ) − m k ( p k ) m k ( p k ) − f ( x k + p k ) ∣ ∣ ∣ ∣ . 由Taylor定理, 得f ( x k + p k ) = f ( x k ) + g ( x k ) T p k + ∫ 0 1 [ g ( x k + t p k ) − g ( x k ) ] T p k  d t , f(x_k+p_k)=f(x_k)+g(x_k)^Tp_k+\int_0^1[g(x_k+tp_k)-g(x_k)]^Tp_k\,\mathrm{d}t, f ( x k + p k ) = f ( x k ) + g ( x k ) T p k + ∫ 0 1 [ g ( x k + t p k ) − g ( x k ) ] T p k d t , 从而∣ m k ( p k ) − f ( x k + p k ) ∣ = ∣ 1 2 p k T B k p k − ∫ 0 1 [ g ( x k + t p k ) − g ( x k ) ] T p k  d t ∣ ≤ ( β / 2 ) ∥ p k ∥ 2 + β 1 ∥ p k ∥ 2 , \begin{aligned}|m_k(p_k)-f(x_k+p_k)|&=\left|\frac{1}{2}p_k^TB_kp_k-\int_0^1[g(x_k+tp_k)-g(x_k)]^Tp_k\,\mathrm{d}t\right|\\&\le(\beta/2)\Vert p_k\Vert^2+\beta_1\Vert p_k\Vert^2,\end{aligned} ∣ m k ( p k ) − f ( x k + p k ) ∣ = ∣ ∣ ∣ ∣ 2 1 p k T B k p k − ∫ 0 1 [ g ( x k + t p k ) − g ( x k ) ] T p k d t ∣ ∣ ∣ ∣ ≤ ( β / 2 ) ∥ p k ∥ 2 + β 1 ∥ p k ∥ 2 , 其中β 1 \beta_1 β 1 为g g g 的Lipschitz常数, 并假设∥ p k ∥ ≤ R 0 \Vert p_k\Vert\le R_0 ∥ p k ∥ ≤ R 0 以保证x k x_k x k 和x k + t p k x_k+tp_k x k + t p k 都在S ( R 0 ) S(R_0) S ( R 0 ) 中. 下面用反证法证明.
假设存在ϵ > 0 , K \epsilon>0, K ϵ > 0 , K , 使得∥ g k ∥ ≥ ϵ , k ≥ K . \Vert g_k\Vert\ge\epsilon,\quad k\ge K. ∥ g k ∥ ≥ ϵ , k ≥ K . 由充分下降, 我们有对于k ≥ K k\ge K k ≥ K , m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ g k ∥ ∥ B k ∥ ) ≥ c 1 ϵ min ( Δ k , ϵ β ) . m_k(0)-m_k(p_k)\ge c_1\Vert g_k\Vert\min\left(\Delta_k,\frac{\Vert g_k\Vert}{\Vert B_k\Vert}\right)\ge c_1\epsilon\min\left(\Delta_k,\frac{\epsilon}{\beta}\right). m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ B k ∥ ∥ g k ∥ ) ≥ c 1 ϵ min ( Δ k , β ϵ ) . 结合之前的不等式, 推出∣ ρ k − 1 ∣ ≤ γ 2 Δ k 2 ( β / 2 + β 1 ) c 1 ϵ min ( Δ k , ϵ / β ) . |\rho_k-1|\le\frac{\gamma^2\Delta_k^2(\beta/2+\beta_1)}{c_1\epsilon\min(\Delta_k,\epsilon/\beta)}. ∣ ρ k − 1 ∣ ≤ c 1 ϵ min ( Δ k , ϵ / β ) γ 2 Δ k 2 ( β / 2 + β 1 ) . 下面我们推导对于充分小的Δ k \Delta_k Δ k , 上面右端的一个上界, 即对于所有的Δ k ≤ Δ ˉ \Delta_k\le\bar{\Delta} Δ k ≤ Δ ˉ , 其中Δ ˉ \bar{\Delta} Δ ˉ 定义为Δ ˉ = min ( 1 2 c 1 ϵ γ 2 ( β / 2 + β 1 ) , R 0 γ ) . \bar{\Delta}=\min\left(\frac{1}{2}\frac{c_1\epsilon}{\gamma^2(\beta/2+\beta_1)},\frac{R_0}{\gamma}\right). Δ ˉ = min ( 2 1 γ 2 ( β / 2 + β 1 ) c 1 ϵ , γ R 0 ) . 注意其中的R 0 / γ R_0/\gamma R 0 / γ 是为了保证∥ p k ∥ ≤ γ Δ k ≤ γ Δ ˉ ≤ R 0 \Vert p_k\Vert\le\gamma\Delta_k\le\gamma\bar{\Delta}\le R_0 ∥ p k ∥ ≤ γ Δ k ≤ γ Δ ˉ ≤ R 0 ; 而由c 1 ≤ 1 , γ ≥ 1 c_1\le1,\gamma\ge1 c 1 ≤ 1 , γ ≥ 1 有Δ ˉ ≤ 1 2 c 1 ϵ γ 2 ( β / 2 + β 1 ) ≤ ϵ β \bar{\Delta}\le\frac{1}{2}\frac{c_1\epsilon}{\gamma^2(\beta/2+\beta_1)}\le\frac{\epsilon}{\beta} Δ ˉ ≤ 2 1 γ 2 ( β / 2 + β 1 ) c 1 ϵ ≤ β ϵ , 从而当Δ k ≤ Δ ˉ \Delta_k\le\bar{\Delta} Δ k ≤ Δ ˉ 时, 有min ( Δ k , ϵ / β ) = Δ k \min(\Delta_k,\epsilon/\beta)=\Delta_k min ( Δ k , ϵ / β ) = Δ k . 因此∣ ρ k − 1 ∣ ≤ γ 2 Δ k 2 ( β / 2 + β 1 ) c 1 ϵ Δ k = γ 2 Δ k ( β / 2 + β 1 ) c 1 ϵ ≤ γ 2 Δ ˉ ( β / 2 + β 1 ) c 1 ϵ ≤ 1 2 . |\rho_k-1|\le\frac{\gamma^2\Delta_k^2(\beta/2+\beta_1)}{c_1\epsilon\Delta_k}=\frac{\gamma^2\Delta_k(\beta/2+\beta_1)}{c_1\epsilon}\le\frac{\gamma^2\bar{\Delta}(\beta/2+\beta_1)}{c_1\epsilon}\le\frac{1}{2}. ∣ ρ k − 1 ∣ ≤ c 1 ϵ Δ k γ 2 Δ k 2 ( β / 2 + β 1 ) = c 1 ϵ γ 2 Δ k ( β / 2 + β 1 ) ≤ c 1 ϵ γ 2 Δ ˉ ( β / 2 + β 1 ) ≤ 2 1 . (从最终的结果简洁性也可以得出为什么Δ ˉ \bar{\Delta} Δ ˉ 的形式要取得那么复杂了, 而且这个简洁性也是必要的, 因为)从而ρ k ≥ 1 4 \rho_k\ge\frac{1}{4} ρ k ≥ 4 1 , 由算法1, 我们有: 只要Δ k \Delta_k Δ k 落在[ 0 , Δ ˉ ] [0,\bar{\Delta}] [ 0 , Δ ˉ ] 内, 就有Δ k + 1 ≥ Δ k \Delta_{k+1}\ge\Delta_k Δ k + 1 ≥ Δ k . 因此信赖域的缩减 (缩减因子为1 4 \frac{1}{4} 4 1 ) 只可能在Δ k ≥ Δ ˉ \Delta_k\ge\bar{\Delta} Δ k ≥ Δ ˉ 时, 也就是说, Δ k ≥ min ( Δ K , Δ ˉ / 4 ) , ∀ k ≥ K . \Delta_k\ge\min(\Delta_K,\bar{\Delta}/4),\quad \forall k\ge K. Δ k ≥ min ( Δ K , Δ ˉ / 4 ) , ∀ k ≥ K . 假设有无穷子列K \mathcal{K} K 使得ρ k ≥ 1 4 , k ∈ K \rho_k\ge\frac{1}{4},k\in\mathcal{K} ρ k ≥ 4 1 , k ∈ K . 那么对于k ∈ K , k ≥ K k\in\mathcal{K},k\ge K k ∈ K , k ≥ K , 我们有f ( x k ) − f ( x k + 1 ) = f ( x k ) + f ( x k + p k ) ≥ 1 4 [ m k ( 0 ) − m k ( p k ) ] ≥ 1 4 c 1 ϵ min ( Δ k , ϵ / β ) . \begin{aligned}f(x_k)-f(x_{k+1})&=f(x_k)+f(x_k+p_k)\\&\ge\frac{1}{4}[m_k(0)-m_k(p_k)]\\&\ge\frac{1}{4}c_1\epsilon\min(\Delta_k,\epsilon/\beta).\end{aligned} f ( x k ) − f ( x k + 1 ) = f ( x k ) + f ( x k + p k ) ≥ 4 1 [ m k ( 0 ) − m k ( p k ) ] ≥ 4 1 c 1 ϵ min ( Δ k , ϵ / β ) . 由于f f f 下有界, 因此从上面的不等式得到lim k ∈ K , k → ∞ Δ k = 0. \lim_{k\in\mathcal{K},k\to\infty}\Delta_k=0. k ∈ K , k → ∞ lim Δ k = 0 . 这与Δ k ≥ min ( Δ K , Δ ˉ / 4 ) \Delta_k\ge\min(\Delta_K,\bar{\Delta}/4) Δ k ≥ min ( Δ K , Δ ˉ / 4 ) 矛盾. 从而这样的无穷子列K \mathcal{K} K 不存在, 对于充分大k k k 我们必定有ρ k < 1 4 \rho_k<\frac{1}{4} ρ k < 4 1 . 此时Δ k \Delta_k Δ k 在每一步迭代后都会缩减成原来的1 4 \frac{1}{4} 4 1 , 从而也有lim k → ∞ Δ k = 0 \lim_{k\to\infty}\Delta_k=0 lim k → ∞ Δ k = 0 , 继续矛盾. 从而原假设不成立, 这就证出了弱全局收敛性.
定理6 设算法1中η ∈ ( 0 , 1 4 ) \eta\in(0,\frac{1}{4}) η ∈ ( 0 , 4 1 ) . 假设存在常数β \beta β 使得∥ B k ∥ ≤ β , ∀ k \Vert B_k\Vert\le\beta,\forall k ∥ B k ∥ ≤ β , ∀ k , f f f 在水平集S S S 上下有界且在邻域S ( R 0 ) S(R_0) S ( R 0 ) 上Lipschitz连续可微. 算法产生的所有子问题的近似解p k p_k p k 满足m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ g k ∥ ∥ B k ∥ ) , c 1 ∈ ( 0 , 1 ] m_k(0)-m_k(p_k)\ge c_1\Vert g_k\Vert\min\left(\Delta_k,\frac{\Vert g_k\Vert}{\Vert B_k\Vert}\right), \quad c_1\in(0,1] m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ B k ∥ ∥ g k ∥ ) , c 1 ∈ ( 0 , 1 ] 和∥ p k ∥ ≤ γ Δ k , γ ≥ 1. \Vert p_k\Vert\le\gamma\Delta_k,\quad \gamma\ge1. ∥ p k ∥ ≤ γ Δ k , γ ≥ 1 . 则我们有全局收敛性lim k → ∞ ∥ g k ∥ = 0. \lim_{k\to\infty}\Vert g_k\Vert=0. k → ∞ lim ∥ g k ∥ = 0 .
证明: 本定理的证明将用到上一个定理的结论. 考虑某一特定的m : g m ≠ 0 m:g_m\ne0 m : g m ̸ = 0 . 所以∥ g ( x ) − g m ∥ ≤ β 1 ∥ x − x m ∥ , ∀ x ∈ S ( R 0 ) . \Vert g(x)-g_m\Vert\le\beta_1\Vert x-x_m\Vert,\quad \forall x\in S(R_0). ∥ g ( x ) − g m ∥ ≤ β 1 ∥ x − x m ∥ , ∀ x ∈ S ( R 0 ) . 定义ϵ = 1 2 ∥ g m ∥ , R = min ( ϵ β 1 , R 0 ) . \epsilon=\frac{1}{2}\Vert g_m\Vert,\quad R=\min\left(\frac{\epsilon}{\beta_1},R_0\right). ϵ = 2 1 ∥ g m ∥ , R = min ( β 1 ϵ , R 0 ) . 注意B ( x m , R ) = { x ∣ ∥ x − x m ∥ ≤ R } ⊂ S ( R 0 ) , \mathcal{B}(x_m,R)=\{x|\Vert x-x_m\Vert\le R\}\subset S(R_0), B ( x m , R ) = { x ∣ ∥ x − x m ∥ ≤ R } ⊂ S ( R 0 ) , 所以g g g 在B ( x m , R ) \mathcal{B}(x_m,R) B ( x m , R ) 中依然有Lipschitz连续性. 从而x ∈ B ( x m , R ) ⇒ ∥ g ( x ) ∥ ≥ ∥ g m ∥ − ∥ g ( x ) − g m ∥ ≥ 1 2 ∥ g m ∥ = ϵ . x\in\mathcal{B}(x_m,R)\Rightarrow\Vert g(x)\Vert\ge\Vert g_m\Vert-\Vert g(x)-g_m\Vert\ge\frac{1}{2}\Vert g_m\Vert=\epsilon. x ∈ B ( x m , R ) ⇒ ∥ g ( x ) ∥ ≥ ∥ g m ∥ − ∥ g ( x ) − g m ∥ ≥ 2 1 ∥ g m ∥ = ϵ . 若整个序列{ x k } k ≥ m \{x_k\}_{k\ge m } { x k } k ≥ m 留在B ( x m , R ) \mathcal{B}(x_m,R) B ( x m , R ) 中, 我们就有∥ g k ∥ ≥ ϵ > 0 , k ≥ m \Vert g_k\Vert\ge\epsilon>0,k\ge m ∥ g k ∥ ≥ ϵ > 0 , k ≥ m . 利用定理5同样的推导, 我们知道这种情形是不可能的. 所以序列{ x k } k ≥ m \{x_k\}_{k\ge m} { x k } k ≥ m 必将离开B ( x m , R ) \mathcal{B}(x_m,R) B ( x m , R ) .
设l ≥ m l\ge m l ≥ m 为使x l + 1 x_{l+1} x l + 1 为x m x_m x m 后第一个离开B ( x m , R ) \mathcal{B}(x_m,R) B ( x m , R ) 的指标. 由于∥ g k ∥ ≥ ϵ , k = m , m + 1 , … , l \Vert g_k\Vert\ge\epsilon,k=m,m+1,\ldots,l ∥ g k ∥ ≥ ϵ , k = m , m + 1 , … , l , 从而f ( x m ) − f ( x l + 1 ) = ∑ k = m l f ( x k ) − f ( x k + 1 ) ≥ ∑ k = m , x k ≠ x k + 1 l η [ m k ( 0 ) − m k ( p k ) ] ≥ ∑ k = m , x k ≠ x k + 1 l η c 1 ϵ min ( Δ k , ϵ β ) . \begin{aligned}f(x_m)-f(x_{l+1})&=\sum_{k=m}^lf(x_k)-f(x_{k+1})\\&\ge\sum_{k=m,x_k\ne x_{k+1}}^l\eta[m_k(0)-m_k(p_k)]\\&\ge\sum_{k=m,x_k\ne x_{k+1}}^l\eta c_1\epsilon\min\left(\Delta_k,\frac{\epsilon}{\beta}\right).\end{aligned} f ( x m ) − f ( x l + 1 ) = k = m ∑ l f ( x k ) − f ( x k + 1 ) ≥ k = m , x k ̸ = x k + 1 ∑ l η [ m k ( 0 ) − m k ( p k ) ] ≥ k = m , x k ̸ = x k + 1 ∑ l η c 1 ϵ min ( Δ k , β ϵ ) . 若Δ k ≤ ϵ / β , k = m , m + 1 , … , l \Delta_k\le\epsilon/\beta,k=m,m+1,\ldots,l Δ k ≤ ϵ / β , k = m , m + 1 , … , l , 我们有f ( x m ) − f ( x l + 1 ) ≥ η c 1 ϵ ∑ k = m , x k ≠ x k + 1 l Δ k ≥ η c 1 ϵ R = η c 1 ϵ min ( ϵ β 1 , R 0 ) , f(x_m)-f(x_{l+1})\ge\eta c_1\epsilon\sum_{k=m,x_k\ne x_{k+1}}^l\Delta_k\ge\eta c_1\epsilon R=\eta c_1\epsilon\min\left(\frac{\epsilon}{\beta_1},R_0\right), f ( x m ) − f ( x l + 1 ) ≥ η c 1 ϵ k = m , x k ̸ = x k + 1 ∑ l Δ k ≥ η c 1 ϵ R = η c 1 ϵ min ( β 1 ϵ , R 0 ) , 其中第二个不等号是因为到了x l + 1 x_{l+1} x l + 1 跑出了B ( x m , R ) \mathcal{B}(x_m,R) B ( x m , R ) . 否则, Δ k > ϵ / β , \Delta_k>\epsilon/\beta, Δ k > ϵ / β , 对于某个k = m , m + 1 , … , l k=m,m+1,\ldots,l k = m , m + 1 , … , l , 所以f ( x m ) − f ( x l + 1 ) ≥ η c 1 ϵ ϵ β . f(x_m)-f(x_{l+1})\ge\eta c_1\epsilon\frac{\epsilon}{\beta}. f ( x m ) − f ( x l + 1 ) ≥ η c 1 ϵ β ϵ . 由于{ f ( x k ) } k = 0 ∞ \{f(x_k)\}_{k=0}^{\infty} { f ( x k ) } k = 0 ∞ 递减且下有界, 所以f ( x k ) ↓ f ∗ , f ∗ > − ∞ . f(x_k)\downarrow f^*, f^*>-\infty. f ( x k ) ↓ f ∗ , f ∗ > − ∞ . 因此, f ( x m ) − f ∗ ≥ f ( x m ) − f ( x l + 1 ) ≥ η c 1 ϵ min ( ϵ β , ϵ β 1 , R 0 ) = 1 2 η c 1 ∥ g m ∥ min ( ∥ g m ∥ 2 β , ∥ g m ∥ 2 β 1 , R 0 ) > 0. \begin{aligned}f(x_m)-f^*&\ge f(x_m)-f(x_{l+1})\\&\ge\eta c_1\epsilon\min\left(\frac{\epsilon}{\beta},\frac{\epsilon}{\beta_1},R_0\right)\\&=\frac{1}{2}\eta c_1\Vert g_m\Vert\min\left(\frac{\Vert g_m\Vert}{2\beta},\frac{\Vert g_m\Vert}{2\beta_1},R_0\right)>0.\end{aligned} f ( x m ) − f ∗ ≥ f ( x m ) − f ( x l + 1 ) ≥ η c 1 ϵ min ( β ϵ , β 1 ϵ , R 0 ) = 2 1 η c 1 ∥ g m ∥ min ( 2 β ∥ g m ∥ , 2 β 1 ∥ g m ∥ , R 0 ) > 0 . 由于f ( x m ) − f ∗ ↓ 0 f(x_m)-f^*\downarrow 0 f ( x m ) − f ∗ ↓ 0 , 所以必有lim m → ∞ g m = 0 \lim_{m\to\infty}g_m=0 lim m → ∞ g m = 0 , 证毕.
注意:
第二个定理中η \eta η 限定上界为1 4 \frac{1}{4} 4 1 是合理的 (事实上, 定理的证明中并没有用到1 4 \frac{1}{4} 4 1 这个数字, 而只用到了它是个正数) . 回想一下算法1中, 信赖域缩小当且仅当ρ k < 1 4 \rho_k<\frac{1}{4} ρ k < 4 1 . 如果η > 1 4 \eta>\frac{1}{4} η > 4 1 , 则可能出现这种情况: 缩小了信赖域却没有更新x k x_k x k . 倘若当前的B k B_k B k 对Hessian的近似不够好, 那么p k p_k p k 带来的下降将很有限. 若一直不更新x k x_k x k , 使得信赖域的中心保持不变, 则算法可能会陷于x k x_k x k 无法跳出.
这两个定理充分体现了信赖域算法的优越性 , 即, 即使B k B_k B k 是不定矩阵, 信赖域算法依然是全局收敛的 . 这主要是因为下降估计对于折线算法与二维子空间最小化算法总是成立的:m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ g k ∥ ∥ B k ∥ ) . m_k(0)-m_k(p_k)\ge c_1\Vert g_k\Vert\min\left(\Delta_k,\frac{\Vert g_k\Vert}{\Vert B_k\Vert}\right). m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ B k ∥ ∥ g k ∥ ) . (这其中的关键在于Cauchy点的下降估计 .)
3. 子问题的迭代求解
本节中主要利用定理1来刻画子问题的解. 前面第1节中讨论的方法, 毫无疑问是近似求解子问题的方法. 这种方法具有易于实施且全局收敛的性质. 但是, 当问题规模较小时, 我们不妨更加精确地求解子问题 . 本节所要描述的方法就是, 基于矩阵分解 (与折线算法与二维子空间最小化算法中的单次分解相比) 与牛顿法求根的方法. 最后我们还将给出定理1的证明.
定理1中给出, 子问题的解p p p 满足( B + λ I ) p = − g , (B+\lambda I)p=-g, ( B + λ I ) p = − g , λ ( ∥ p ∥ − Δ ) = 0 , \lambda(\Vert p\Vert-\Delta)=0, λ ( ∥ p ∥ − Δ ) = 0 , B + λ I 半 正 定 . B+\lambda I半正定. B + λ I 半 正 定 . 若λ = 0 \lambda=0 λ = 0 满足条件, 则无需讨论. 否则, 定义p ( λ ) = − ( B + λ I ) − 1 g , p(\lambda)=-(B+\lambda I)^{-1}g, p ( λ ) = − ( B + λ I ) − 1 g , 其中λ \lambda λ 充分大将使得B + λ I B+\lambda I B + λ I 正定. 我们意图求λ > 0 \lambda>0 λ > 0 使得∥ p ( λ ) ∥ = Δ . \Vert p(\lambda)\Vert=\Delta. ∥ p ( λ ) ∥ = Δ . 因此这一问题化为了一元方程求根的问题. 只是这样的问题还需要额外的变形, 从而更易操作. 设B B B 有特征值分解B = Q Λ Q T B=Q\Lambda Q^T B = Q Λ Q T , 其中Q Q Q 为正交矩阵, Λ = d i a g ( λ 1 , λ 2 , … , λ n ) , \Lambda=\mathrm{diag}(\lambda_1,\lambda_2,\ldots,\lambda_n), Λ = d i a g ( λ 1 , λ 2 , … , λ n ) , 且λ 1 ≤ λ 2 ≤ … ≤ λ n \lambda_1\le\lambda_2\le\ldots\le\lambda_n λ 1 ≤ λ 2 ≤ … ≤ λ n 为B B B 的特征值. 显然B + λ I = Q ( Λ + λ I ) Q T B+\lambda I=Q(\Lambda+\lambda I)Q^T B + λ I = Q ( Λ + λ I ) Q T , 从而对于λ ≠ λ j \lambda\ne\lambda_j λ ̸ = λ j , 我们有p ( λ ) = − Q ( Λ + λ I ) − 1 Q T g = − ∑ j = 1 n q j T g λ j + λ q j , p(\lambda)=-Q(\Lambda+\lambda I)^{-1}Q^Tg=-\sum_{j=1}^n\frac{q_j^Tg}{\lambda_j+\lambda}q_j, p ( λ ) = − Q ( Λ + λ I ) − 1 Q T g = − j = 1 ∑ n λ j + λ q j T g q j , 其中q j q_j q j 表示Q Q Q 的第j j j 列. 因此由Q Q Q 是正交矩阵, 得∥ p ( λ ) ∥ 2 = ∑ j = 1 n ( q j T g ) 2 ( λ j + λ ) 2 . \Vert p(\lambda)\Vert^2=\sum_{j=1}^n\frac{\left(q_j^Tg\right)^2}{(\lambda_j+\lambda)^2}. ∥ p ( λ ) ∥ 2 = j = 1 ∑ n ( λ j + λ ) 2 ( q j T g ) 2 . 这一表达式告诉我们: 若λ > − λ 1 \lambda>-\lambda_1 λ > − λ 1 , 则λ j + λ > 0 , ∀ j \lambda_j+\lambda>0,\forall j λ j + λ > 0 , ∀ j , 从而∥ p ( λ ) ∥ \Vert p(\lambda)\Vert ∥ p ( λ ) ∥ 在( − λ 1 , ∞ ) (-\lambda_1,\infty) ( − λ 1 , ∞ ) 上递减, 且lim λ → ∞ ∥ p ( λ ) ∥ = 0. \lim_{\lambda\to\infty}\Vert p(\lambda)\Vert=0. λ → ∞ lim ∥ p ( λ ) ∥ = 0 . 特别地, 当q j T g ≠ 0 q_j^Tg\ne0 q j T g ̸ = 0 时, 我们有lim λ → λ j ∥ p ( λ ) ∥ = ∞ . \lim_{\lambda\to\lambda_j}\Vert p(\lambda)\Vert=\infty. λ → λ j lim ∥ p ( λ ) ∥ = ∞ . 用图形表示更加直观.
图中显示, q 1 T g , q 2 T g , q 3 T g q_1^Tg,q_2^Tg,q_3^Tg q 1 T g , q 2 T g , q 3 T g 皆非零. 特别地, 如果有q 1 T g ≠ 0 q_1^Tg\ne0 q 1 T g ̸ = 0 , 则必存在唯一λ ∗ ∈ ( − λ 1 , ∞ ) \lambda^*\in(-\lambda_1,\infty) λ ∗ ∈ ( − λ 1 , ∞ ) , 使得∥ p ( λ ∗ ) ∥ = Δ \Vert p(\lambda^*)\Vert =\Delta ∥ p ( λ ∗ ) ∥ = Δ . 这样的λ ∗ \lambda^* λ ∗ 恰好也满足定理1给出的其他等式. 换做是小于− λ 1 -\lambda_1 − λ 1 的λ \lambda λ 就不再满足半正定的条件了.
3.1 简单情形
假设q 1 T g ≠ 0 q_1^Tg\ne0 q 1 T g ̸ = 0 , 这样只需考虑如何求∥ p ( λ ) ∥ − Δ \Vert p(\lambda)\Vert -\Delta ∥ p ( λ ) ∥ − Δ 在( − λ 1 , ∞ ) (-\lambda_1,\infty) ( − λ 1 , ∞ ) 上的根的问题. 首先, 若B B B 正定, 且∥ B − 1 g ∥ ≤ Δ \Vert B^{-1}g\Vert\le\Delta ∥ B − 1 g ∥ ≤ Δ , 则λ = 0 \lambda=0 λ = 0 恰好满足定理1, 此时就有λ ∗ = 0 \lambda^*=0 λ ∗ = 0 . 不然, 考虑ϕ ( λ ) = ∥ p ( λ ) ∥ − Δ = 0. \phi(\lambda)=\Vert p(\lambda)\Vert-\Delta=0. ϕ ( λ ) = ∥ p ( λ ) ∥ − Δ = 0 . 直接拿ϕ \phi ϕ 的原始形式代入牛顿法求根是不现实的 . 注意到, 当λ \lambda λ 大于但很接近− λ 1 -\lambda_1 − λ 1 时, 我们可用有理函数近似ϕ \phi ϕ , 即ϕ 1 ( λ ) ≈ C 1 λ + λ 1 + C 2 , \phi_1(\lambda)\approx\frac{C_1}{\lambda+\lambda_1}+C_2, ϕ 1 ( λ ) ≈ λ + λ 1 C 1 + C 2 , 其中C 1 , C 2 C_1,C_2 C 1 , C 2 为常数. 显然这一函数高度非线性 , 从而牛顿法并不可靠 (收敛很慢) . 不过如果考虑等价的方程ϕ 2 ( λ ) = 1 Δ − 1 ∥ p ( λ ) ∥ , \phi_2(\lambda)=\frac{1}{\Delta}-\frac{1}{\Vert p(\lambda)\Vert}, ϕ 2 ( λ ) = Δ 1 − ∥ p ( λ ) ∥ 1 , 则在 (非常接近) − λ 1 -\lambda_1 − λ 1 的右端, 有ϕ 2 ( λ ) ≈ 1 Δ − λ + λ 1 C 3 , \phi_2(\lambda)\approx\frac{1}{\Delta}-\frac{\lambda+\lambda_1}{C_3}, ϕ 2 ( λ ) ≈ Δ 1 − C 3 λ + λ 1 , 其中C 3 > 0 C_3>0 C 3 > 0 . 此时ϕ 2 \phi_2 ϕ 2 在− λ 1 -\lambda_1 − λ 1 附近接近线性 , 从而只要算法将保持λ > − λ 1 \lambda>-\lambda_1 λ > − λ 1 , 牛顿法将表现良好. 牛顿法求根的迭代公式为λ ( l + 1 ) = λ ( l ) − ϕ 2 ( λ ( l ) ) ϕ 2 ′ ( λ ( l ) ) . \lambda^{(l+1)}=\lambda^{(l)}-\frac{\phi_2(\lambda^{(l)})}{\phi_2'(\lambda^{(l)})}. λ ( l + 1 ) = λ ( l ) − ϕ 2 ′ ( λ ( l ) ) ϕ 2 ( λ ( l ) ) . 下面对这个公式作进一步处理. 设B + λ I B+\lambda I B + λ I 有分解B + λ I = R T R , B+\lambda I=R^TR, B + λ I = R T R , 则应有R T R p = − g R^TRp=-g R T R p = − g . 再令q q q 满足R T q = p R^Tq=p R T q = p . 则有∥ q ∥ 2 = ∥ R − T p ∥ 2 = p T R − 1 R − T p = p T ( B + λ I ) − 1 p = p T Q ( Λ + λ I ) − 1 Q T p = ∑ j = 1 n ( q j T p ) 2 λ + λ j = ∑ j = 1 n ( q j T ∑ k = 1 n q k T g λ + λ k q k ) 2 λ + λ j = ∑ j = 1 n ( q j T g ) 2 ( λ + λ j ) 3 . \begin{aligned}\Vert q\Vert^2&=\Vert R^{-T}p\Vert^2\\&=p^TR^{-1}R^{-T}p\\&=p^T(B+\lambda I)^{-1}p\\&=p^TQ(\Lambda+\lambda I)^{-1}Q^Tp\\&=\sum_{j=1}^n\frac{(q_j^Tp)^2}{\lambda+\lambda_j}\\&=\sum_{j=1}^n\frac{\left(q_j^T\sum_{k=1}^n\frac{q_k^Tg}{\lambda+\lambda_k}q_k\right)^2}{\lambda+\lambda_j}\\&=\sum_{j=1}^n\frac{(q_j^Tg)^2}{(\lambda+\lambda_j)^3}.\end{aligned} ∥ q ∥ 2 = ∥ R − T p ∥ 2 = p T R − 1 R − T p = p T ( B + λ I ) − 1 p = p T Q ( Λ + λ I ) − 1 Q T p = j = 1 ∑ n λ + λ j ( q j T p ) 2 = j = 1 ∑ n λ + λ j ( q j T ∑ k = 1 n λ + λ k q k T g q k ) 2 = j = 1 ∑ n ( λ + λ j ) 3 ( q j T g ) 2 . 再考虑ϕ 2 ′ ( λ ) \phi_2'(\lambda) ϕ 2 ′ ( λ ) 的形式:ϕ 2 ′ ( λ ) = ( 1 Δ − 1 ∥ p ∥ ) ′ = 1 ∥ p ∥ 2 d d λ ∥ p ∥ = 1 ∥ p ∥ 2 d d λ ( ∑ j = 1 n ( q j T g ) 2 ( λ + λ j ) 2 ) = 1 2 ∥ p ∥ 3 ∑ j = 1 n d d λ ( ( q j T g ) 2 ( λ + λ j ) 2 ) = − 1 ∥ p ∥ 3 ∑ j = 1 n ( q j T g ) 2 ( λ + λ j ) 3 = − ∥ q ∥ 2 ∥ p ∥ 3 . \begin{aligned}\phi_2'(\lambda)&=\left(\frac{1}{\Delta}-\frac{1}{\Vert p\Vert}\right)'\\&=\frac{1}{\Vert p\Vert^2}\frac{\mathrm{d}}{\mathrm{d}\lambda}\Vert p\Vert\\&=\frac{1}{\Vert p\Vert^2}\frac{\mathrm{d}}{\mathrm{d}\lambda}\left(\sqrt{\sum_{j=1}^n\frac{(q_j^Tg)^2}{(\lambda+\lambda_j)^2}}\right)\\&=\frac{1}{2\Vert p\Vert^3}\sum_{j=1}^n\frac{\mathrm{d}}{\mathrm{d}\lambda}\left(\frac{(q_j^Tg)^2}{(\lambda+\lambda_j)^2}\right)\\&=-\frac{1}{\Vert p\Vert^3}\sum_{j=1}^n\frac{(q_j^Tg)^2}{(\lambda+\lambda_j)^3}=-\frac{\Vert q\Vert^2}{\Vert p\Vert^3}.\end{aligned} ϕ 2 ′ ( λ ) = ( Δ 1 − ∥ p ∥ 1 ) ′ = ∥ p ∥ 2 1 d λ d ∥ p ∥ = ∥ p ∥ 2 1 d λ d ( j = 1 ∑ n ( λ + λ j ) 2 ( q j T g ) 2 ) = 2 ∥ p ∥ 3 1 j = 1 ∑ n d λ d ( ( λ + λ j ) 2 ( q j T g ) 2 ) = − ∥ p ∥ 3 1 j = 1 ∑ n ( λ + λ j ) 3 ( q j T g ) 2 = − ∥ p ∥ 3 ∥ q ∥ 2 . 因此牛顿法的迭代形式为λ ( l + 1 ) = λ ( l ) − ϕ 2 ( λ ( l ) ) ϕ 2 ′ ( λ ( l ) ) = λ ( l ) + ∥ p ∥ 3 ∥ q ∥ 2 ∥ p ∥ − Δ ∥ p ∥ Δ = λ ( l ) + ∥ p ∥ 2 ∥ q ∥ 2 ∥ p ∥ − Δ Δ . \begin{aligned}\lambda^{(l+1)}&=\lambda^{(l)}-\frac{\phi_2(\lambda^{(l)})}{\phi_2'(\lambda^{(l)})}\\&=\lambda^{(l)}+\frac{\Vert p\Vert^3}{\Vert q\Vert^2}\frac{\Vert p\Vert-\Delta}{\Vert p\Vert\Delta}\\&=\lambda^{(l)}+\frac{\Vert p\Vert^2}{\Vert q\Vert^2}\frac{\Vert p\Vert -\Delta}{\Delta}.\end{aligned} λ ( l + 1 ) = λ ( l ) − ϕ 2 ′ ( λ ( l ) ) ϕ 2 ( λ ( l ) ) = λ ( l ) + ∥ q ∥ 2 ∥ p ∥ 3 ∥ p ∥ Δ ∥ p ∥ − Δ = λ ( l ) + ∥ q ∥ 2 ∥ p ∥ 2 Δ ∥ p ∥ − Δ . 经整理, 得到如下较精确求信赖域子问题 (小规模) 的算法.
算法2 (信赖域子问题算法)
给定λ ( 0 ) , Δ > 0 \lambda^{(0)},\Delta>0 λ ( 0 ) , Δ > 0 ;
for l = 0 , 1 , 2 , … l=0,1,2,\ldots l = 0 , 1 , 2 , … 分 解 B + λ ( l ) I = R T R \quad\quad分解B+\lambda^{(l)}I=R^TR 分 解 B + λ ( l ) I = R T R ;求 解 R T R p l = − g , R T q l = p l \quad\quad求解R^TRp_l=-g,R^Tq_l=p_l 求 解 R T R p l = − g , R T q l = p l ;置 λ ( l + 1 ) = λ ( l ) + ∥ p l ∥ 2 ∥ q l ∥ 2 ∥ p l ∥ − Δ Δ \quad\quad置\lambda^{(l+1)}=\lambda^{(l)}+\frac{\Vert p_l\Vert^2}
{\Vert q_l\Vert^2}\frac{\Vert p_l\Vert -\Delta}{\Delta} 置 λ ( l + 1 ) = λ ( l ) + ∥ q l ∥ 2 ∥ p l ∥ 2 Δ ∥ p l ∥ − Δ ;
end (for)
注:
算法2中并非单纯地使用牛顿法求根 , 而是在其中穿插了矩阵分解, 这里用于分解的矩阵也来源于上一步迭代产生的新λ \lambda λ ;
算法2中必须增加一些保护措施以保证算法的实用性 : 例如, 当λ ( l ) < − λ 1 \lambda^{(l)}<-\lambda_1 λ ( l ) < − λ 1 时, Cholesky分解B + λ ( l ) I = R T R B+\lambda^{(l)}I=R^TR B + λ ( l ) I = R T R 不一定存在. 此时需要稍微改进算法.
算法2的主要计算量在于Cholesky分解. 此算法的实用版本并不等到λ \lambda λ 收敛成熟才终止迭代, 而是仅通过2~3次迭代获取λ \lambda λ 的大致估计 . 事实证明这样的求解效果也是不错的.
上述方法也适用于最小特征值λ 1 \lambda_1 λ 1 的代数重数大于1的情形, 即有0 > λ 1 = λ 2 = ⋯ 0>\lambda_1=\lambda_2=\cdots 0 > λ 1 = λ 2 = ⋯ , 且Q 1 T g ≠ 0 Q_1^Tg\ne0 Q 1 T g ̸ = 0 , 其中Q 1 Q_1 Q 1 的列张成λ 1 \lambda_1 λ 1 的特征子空间.
算法2的收敛性将在后文给出说明.
3.2 困难情形
当q 1 T g = 0 q_1^Tg=0 q 1 T g = 0 时, 极限lim λ → − λ 1 ∥ p ( λ ) ∥ = + ∞ \lim_{\lambda\to-\lambda_1}\Vert p(\lambda)\Vert=+\infty λ → − λ 1 lim ∥ p ( λ ) ∥ = + ∞ 就不一定成立了, 从而在( − λ 1 , ∞ ) (-\lambda_1, \infty) ( − λ 1 , ∞ ) 中不一定有∥ p ( λ ) ∥ = Δ \Vert p(\lambda)\Vert=\Delta ∥ p ( λ ) ∥ = Δ 的解 (如果有自然还可以用上面的简单情形的方法求解, 下面讨论没有) . 由定理1的刻画, 我们得出: λ = − λ 1 \lambda=-\lambda_1 λ = − λ 1 . 自然, 从之前的式子中直接去除λ j = λ 1 \lambda_j=\lambda_1 λ j = λ 1 的项, 置p = ∑ j : λ j ≠ λ 1 q j T g λ + λ j q j p=\sum_{j:\lambda_j\ne\lambda_1}\frac{q_j^Tg}{\lambda+\lambda_j}q_j p = j : λ j ̸ = λ 1 ∑ λ + λ j q j T g q j 是不够的. 注意到( B − λ 1 I ) (B-\lambda_1 I) ( B − λ 1 I ) 奇异, 从而存在z : ∥ z ∥ = 1 z:\Vert z\Vert=1 z : ∥ z ∥ = 1 使得( B − λ 1 I ) z = 0 (B-\lambda_1I)z=0 ( B − λ 1 I ) z = 0 . 事实上, z z z 为B B B 的对应于λ 1 \lambda_1 λ 1 的特征向量, 从而由Q Q Q 的正交性, 我们有q j T z = 0 , λ j ≠ λ 1 q_j^Tz=0,\lambda_j\ne\lambda_1 q j T z = 0 , λ j ̸ = λ 1 . 设p = ∑ j : λ j ≠ λ 1 q j T g λ + λ j q j + τ z , p=\sum_{j:\lambda_j\ne\lambda_1}\frac{q_j^Tg}{\lambda+\lambda_j}q_j+\tau z, p = j : λ j ̸ = λ 1 ∑ λ + λ j q j T g q j + τ z , 从而有∥ p ∥ 2 = ∑ j : λ j ≠ λ 1 ( q j T g ) 2 ( λ + λ j ) 2 + τ 2 . \Vert p\Vert^2=\sum_{j:\lambda_j\ne\lambda_1}\frac{\left(q_j^Tg\right)^2}{(\lambda+\lambda_j)^2}+\tau^2. ∥ p ∥ 2 = j : λ j ̸ = λ 1 ∑ ( λ + λ j ) 2 ( q j T g ) 2 + τ 2 . 因此选取τ \tau τ 使得∥ p ∥ = Δ \Vert p\Vert=\Delta ∥ p ∥ = Δ 即可. 可以验证这样的p p p 和λ = − λ 1 \lambda=-\lambda_1 λ = − λ 1 满足定理1的条件.
3.3 定理1的证明
引理 设m m m 为二次函数, 定义为m ( p ) = g T p + 1 2 p T B p , m(p)=g^Tp+\frac{1}{2}p^TBp, m ( p ) = g T p + 2 1 p T B p , 其中B B B 对称. 则有下面的几条成立.
m m m 有最小值当且仅当B B B 半正定且g g g 在B B B 的值域中. 若B B B 半正定, 则任何p : B p = − g p:Bp=-g p : B p = − g 都是m m m 的全局最小点.
m m m 有唯一全局最小点当且仅当B B B 正定.
证明:
我们分充分性和必要性证明.
充分性. 由于g g g 在B B B 的值域中, 所以有p p p 使得B p = − g Bp=-g B p = − g . 对于∀ w ∈ R n \forall w\in\mathbb{R}^n ∀ w ∈ R n , m ( p + w ) = g T ( p + w ) + 1 2 ( p + w ) T B ( p + w ) = ( g T p + 1 2 p T B p ) + g T w + ( B p ) T w + 1 2 w T B w = m ( p ) + 1 2 w T B w ≥ m ( p ) . \begin{aligned}m(p+w)&=g^T(p+w)+\frac{1}{2}(p+w)^TB(p+w)\\&=(g^Tp+\frac{1}{2}p^TBp)+g^Tw+(Bp)^Tw+\frac{1}{2}w^TBw\\&=m(p)+\frac{1}{2}w^TBw\\&\ge m(p).\end{aligned} m ( p + w ) = g T ( p + w ) + 2 1 ( p + w ) T B ( p + w ) = ( g T p + 2 1 p T B p ) + g T w + ( B p ) T w + 2 1 w T B w = m ( p ) + 2 1 w T B w ≥ m ( p ) .
必要性. 设p p p 为m m m 的极小点. 由于∇ m ( p ) = B p + g = 0 \nabla m(p)=Bp+g=0 ∇ m ( p ) = B p + g = 0 , 所以g g g 属于B B B 的值域. 同样由极小的二阶必要条件, 得∇ 2 m ( p ) = B \nabla^2m(p)=B ∇ 2 m ( p ) = B 是半正定矩阵.
充分性可由1的充分性中, w T B w > 0 , ∀ w ≠ 0 w^TBw>0,\forall w\ne0 w T B w > 0 , ∀ w ̸ = 0 得到; 必要性可用反证法证明. 假设B B B 仅半正定, 从而存在w ≠ 0 w\ne0 w ̸ = 0 使得B w = 0 Bw=0 B w = 0 . 此时m ( p ) = m ( p + w ) m(p)=m(p+w) m ( p ) = m ( p + w ) , 其中p p p 为m m m 的唯一全局极小点. 这与唯一性矛盾!
下面证明定理1. 重述如下:
定理1 向量p ∗ p^* p ∗ 为信赖域子问题min p ∈ R n m ( p ) = g T p + 1 2 p T B p , s . t . ∥ p ∥ ≤ Δ \min_{p\in\mathbb{R}^n}m(p)=g^Tp+\frac{1}{2}p^TBp,\quad\mathrm{s.t.}\Vert p\Vert\le\Delta p ∈ R n min m ( p ) = g T p + 2 1 p T B p , s . t . ∥ p ∥ ≤ Δ 的全局解当且仅当p ∗ p^* p ∗ 可行且存在标量λ ≥ 0 \lambda\ge0 λ ≥ 0 使得下面的三个条件成立:( B + λ I ) p ∗ = − g , (B+\lambda I)p^*=-g, ( B + λ I ) p ∗ = − g , λ ( Δ − ∥ p ∗ ∥ ) = 0 , \lambda(\Delta-\Vert p^*\Vert)=0, λ ( Δ − ∥ p ∗ ∥ ) = 0 , ( B + λ I ) 半 正 定 . (B+\lambda I)半正定. ( B + λ I ) 半 正 定 .
证明: 先证明充分性. 假设存在λ ≥ 0 \lambda\ge0 λ ≥ 0 使得上面的三个条件成立. 引理的1说明p ∗ p^* p ∗ 是二次函数m ^ ( p ) = g T p + 1 2 p T ( B + λ I ) p = m ( p ) + λ 2 p T p \hat{m}(p)=g^Tp+\frac{1}{2}p^T(B+\lambda I)p=m(p)+\frac{\lambda}{2}p^Tp m ^ ( p ) = g T p + 2 1 p T ( B + λ I ) p = m ( p ) + 2 λ p T p 的全局极小点. 由于m ^ ( p ) ≥ m ^ ( p ∗ ) , ∀ p \hat{m}(p)\ge\hat{m}(p^*),\forall p m ^ ( p ) ≥ m ^ ( p ∗ ) , ∀ p , 因此移项可得m ( p ) ≥ m ( p ∗ ) + λ 2 ( ( p ∗ ) T p ∗ − p T p ) . m(p)\ge m(p^*)+\frac{\lambda}{2}\left((p^*)^Tp^*-p^Tp\right). m ( p ) ≥ m ( p ∗ ) + 2 λ ( ( p ∗ ) T p ∗ − p T p ) . 由于λ ( Δ − ∥ p ∗ ∥ ) = 0 \lambda(\Delta-\Vert p^*\Vert)=0 λ ( Δ − ∥ p ∗ ∥ ) = 0 , 因此λ ( Δ 2 − ( p ∗ ) T p ∗ ) = 0 \lambda(\Delta^2-(p^*)^Tp^*)=0 λ ( Δ 2 − ( p ∗ ) T p ∗ ) = 0 , 从而m ( p ) ≥ m ( p ∗ ) + λ 2 ( Δ 2 − p T p ) . m(p)\ge m(p^*)+\frac{\lambda}{2}(\Delta^2-p^Tp). m ( p ) ≥ m ( p ∗ ) + 2 λ ( Δ 2 − p T p ) . 从λ ≥ 0 \lambda\ge0 λ ≥ 0 , 我们有m ( p ) ≥ m ( p ∗ ) , ∀ p : ∥ p ∥ ≤ Δ m(p)\ge m(p^*),\forall p:\Vert p\Vert\le\Delta m ( p ) ≥ m ( p ∗ ) , ∀ p : ∥ p ∥ ≤ Δ . 因此p ∗ p^* p ∗ 是m m m 的全局极小点.
再证明必要性. 假设p ∗ p^* p ∗ 为m m m 的全局极小点, 下证存在λ ≥ 0 \lambda\ge0 λ ≥ 0 满足三个条件.
若∥ p ∗ ∥ < Δ \Vert p^*\Vert<\Delta ∥ p ∗ ∥ < Δ , 则p ∗ p^* p ∗ 为m m m 的无约束全局极小点, 因此∇ m ( p ∗ ) = B p ∗ + g = 0 , ∇ 2 m ( p ∗ ) = B 半 正 定 , \nabla m(p^*)=Bp^*+g=0,\quad\nabla^2m(p^*)=B半正定, ∇ m ( p ∗ ) = B p ∗ + g = 0 , ∇ 2 m ( p ∗ ) = B 半 正 定 , 所以三个条件对λ = 0 \lambda=0 λ = 0 成立.
若∥ p ∗ ∥ = Δ \Vert p^*\Vert=\Delta ∥ p ∗ ∥ = Δ , 则第二个条件显然满足, 且p ∗ p^* p ∗ 同样为等式约束问题min m ( p ) s . t . ∥ p ∥ = Δ \min m(p)\quad\mathrm{s.t.}\Vert p\Vert=\Delta min m ( p ) s . t . ∥ p ∥ = Δ 的全局解. 由等式约束问题的最优性条件 (后面的章节会证明) , 定义Lagrange函数L ( p , λ ) = m ( p ) + λ 2 ( p T p − Δ 2 ) , \mathcal{L}(p,\lambda)=m(p)+\frac{\lambda}{2}(p^Tp-\Delta^2), L ( p , λ ) = m ( p ) + 2 λ ( p T p − Δ 2 ) , 存在λ \lambda λ 使得p ∗ p^* p ∗ 为L \mathcal{L} L 的稳定点. 置∇ p L ( p ∗ , λ ) \nabla_p\mathcal{L}(p^*,\lambda) ∇ p L ( p ∗ , λ ) 为0, 我们得到B p ∗ + g + λ p ∗ = 0 ⇒ ( B + λ I ) p ∗ = − g . Bp^*+g+\lambda p^*=0\Rightarrow (B+\lambda I)p^*=-g. B p ∗ + g + λ p ∗ = 0 ⇒ ( B + λ I ) p ∗ = − g . 若λ ≥ 0 \lambda\ge0 λ ≥ 0 , 则第一个条件就成立了. 我们放到后面说明, 先证明第三个条件. 由于m ( p ) ≥ m ( p ∗ ) , ∀ p : p T p = ( p ∗ ) T p ∗ = Δ 2 m(p)\ge m(p^*),\forall p:p^Tp=(p^*)^Tp^*=\Delta^2 m ( p ) ≥ m ( p ∗ ) , ∀ p : p T p = ( p ∗ ) T p ∗ = Δ 2 , 因此对于这样的p p p , 有m ( p ) ≥ m ( p ∗ ) + λ 2 ( ( p ∗ ) T p ∗ − p T p ) . m(p)\ge m(p^*)+\frac{\lambda}{2}\left((p^*)^Tp^*-p^Tp\right). m ( p ) ≥ m ( p ∗ ) + 2 λ ( ( p ∗ ) T p ∗ − p T p ) . 把( B + λ I ) p ∗ = − g (B+\lambda I)p^*=-g ( B + λ I ) p ∗ = − g 代入上式, 整理后可得1 2 ( p − p ∗ ) T ( B + λ I ) ( p − p ∗ ) ≥ 0. \frac{1}{2}(p-p^*)^T(B+\lambda I)(p-p^*)\ge0. 2 1 ( p − p ∗ ) T ( B + λ I ) ( p − p ∗ ) ≥ 0 . 由于方向集{ w : w = ± p − p ∗ ∥ p − p ∗ ∥ , p : ∥ p ∥ = Δ } \left\{w:w=\pm\frac{p-p^*}{\Vert p-p^*\Vert},p:\Vert p\Vert=\Delta\right\} { w : w = ± ∥ p − p ∗ ∥ p − p ∗ , p : ∥ p ∥ = Δ } 在单位球面上稠密, 因此第三个条件成立. 下面说明存在λ ≥ 0 \lambda\ge0 λ ≥ 0 . 由于第一、三个条件成立且由引理, 得p ∗ p^* p ∗ 最小化m ^ \hat{m} m ^ , 从而m ( p ) ≥ m ( p ∗ ) + λ 2 ( ( p ∗ ) T p ∗ − p T p ) , ∀ p : ∥ p ∥ ≤ Δ . m(p)\ge m(p^*)+\frac{\lambda}{2}\left((p^*)^Tp^*-p^Tp\right),\forall p:\Vert p\Vert\le\Delta. m ( p ) ≥ m ( p ∗ ) + 2 λ ( ( p ∗ ) T p ∗ − p T p ) , ∀ p : ∥ p ∥ ≤ Δ . 假设只有λ < 0 \lambda<0 λ < 0 满足条件一、三, 则从上式可得m ( p ) ≥ m ( p ∗ ) , ∀ p : ∥ p ∥ ≥ ∥ p ∗ ∥ = Δ . m(p)\ge m(p^*),\forall p:\Vert p\Vert\ge\Vert p^*\Vert=\Delta. m ( p ) ≥ m ( p ∗ ) , ∀ p : ∥ p ∥ ≥ ∥ p ∗ ∥ = Δ . 因为已知p ∗ p^* p ∗ 在∥ p ∥ ≤ Δ \Vert p\Vert\le\Delta ∥ p ∥ ≤ Δ 范围内最小化m m m , 从而p ∗ p^* p ∗ 为m m m 的无约束全局极小点. 从引理的1中得出, B p ∗ = − g , B 半 正 定 . Bp^*=-g,\quad B半正定. B p ∗ = − g , B 半 正 定 . 从而条件一、三由λ = 0 \lambda=0 λ = 0 满足, 这与假设矛盾. 从而得证.
3.4 基于非精确解算法的收敛性
适用于小规模问题的算法2的注记中提到, 实用版本的算法2并不等到序列{ λ i } \{\lambda_i\} { λ i } 收敛才终止迭代. 我们还可以在算法2中加入保护措施以满足定理5和定理6的条件. 具体地, 我们要求m ( 0 ) − m ( p ) ≥ c 1 ( m ( 0 ) − m ( p ∗ ) ) , m(0)-m(p)\ge c_1(m(0)-m(p^*)), m ( 0 ) − m ( p ) ≥ c 1 ( m ( 0 ) − m ( p ∗ ) ) , ∥ p ∥ ≤ γ Δ , \Vert p\Vert\le\gamma\Delta, ∥ p ∥ ≤ γ Δ , 其中p ∗ p^* p ∗ 为子问题的精确解, c 1 ∈ ( 0 , 1 ] , γ > 0 c_1\in(0,1], \gamma>0 c 1 ∈ ( 0 , 1 ] , γ > 0 . 其中第一个条件保证近似解为模型函数m m m 带来充分的下降 (最大下降的分数倍) . (注意这里并不需要知道p ∗ p^* p ∗ ; 有实用的停机准则可以推出条件一. ) 这里的条件与先前的条件的一个主要的不同在于, 前者更好地利用了m ( ⋅ ) m(\cdot) m ( ⋅ ) 的二阶信息. 我们可以举个例子: 假若g = 0 g=0 g = 0 , 而此时B B B 有负特征值, 也就是说当前的迭代点x k x_k x k 是个鞍点. 此时后者的右端就是0, 且算法终止. 而前者的右端为正数, 表明从当前点出发仍可能获得模型函数值的下降, 从而迫使算法移离x k x_k x k .
只有当二阶信息充分反映了函数f f f 的真实性态时, 才需要接近精确 (即充分使用二阶信息) 的算法. 这里我们只考虑信赖域牛顿算法, B = ∇ 2 f ( x ) B=\nabla^2f(x) B = ∇ 2 f ( x ) . 二阶信息使我们不仅能够判别稳定点, 还能得到函数在当前点周遭的性态. 下面的结论表明由非精确解算法产生的序列的聚点满足二阶必要条件 .
定理7 假设定理6的条件都成立, 另外f f f 在水平集S S S 上是二阶连续可微的. 设B k = ∇ 2 f ( x k ) , ∀ k B_k=\nabla^2f(x_k),\forall k B k = ∇ 2 f ( x k ) , ∀ k , 子问题的近似解p k p_k p k 满足m ( 0 ) − m ( p ) ≥ c 1 ( m ( 0 ) − m ( p ∗ ) ) , m(0)-m(p)\ge c_1(m(0)-m(p^*)), m ( 0 ) − m ( p ) ≥ c 1 ( m ( 0 ) − m ( p ∗ ) ) , ∥ p ∥ ≤ γ Δ , \Vert p\Vert\le\gamma\Delta, ∥ p ∥ ≤ γ Δ , 其中γ > 0 \gamma>0 γ > 0 . 于是有全局收敛:lim k → ∞ ∥ g k ∥ = 0. \lim_{k\to\infty}\Vert g_k\Vert=0. k → ∞ lim ∥ g k ∥ = 0 . 另外, 若水平集S S S 是紧集, 则算法要么终止于满足二阶必要条件的x k x_k x k , 要么序列{ x k } \{x_k\} { x k } 在S S S 中有满足二阶必要条件的聚点x ∗ x^* x ∗ .
4. 信赖域牛顿法的局部收敛性
前面已经提到信赖域牛顿法的全局收敛性, 下面来讨论其局部的收敛速度. 与牛顿法相关的算法要想要获得较快的收敛速度, 关键是在接近解的时候, 相关的限制不再对牛顿步起作用 . 具体地, 我们希望在靠近解的时候, 信赖域子问题的近似解老实地待在信赖域内部, 并愈来愈接近牛顿步. 满足后面这一性质的迭代步, 我们称之渐进相似于牛顿步 .
我们证明算法1 (产生渐进相似于牛顿步的迭代步) 的一般结论. 这一结论表明, 信赖域的约束最终变得不积极从而算法达到超线性收敛速度 .
定理8 设f f f 在x ∗ x^* x ∗ (此点满足二阶充分条件) 的一个邻域内二次Lipschitz连续可微. 假设序列{ x k } \{x_k\} { x k } 收敛于x ∗ x^* x ∗ , 且对于充分大的k k k , 信赖域牛顿法选取p k p_k p k 满足基于Cauchy点模型的下降条件, 且当∥ p k N ∥ ≤ 1 2 Δ k \Vert p_k^N\Vert\le\frac{1}{2}\Delta_k ∥ p k N ∥ ≤ 2 1 Δ k 时, p k p_k p k 渐进相似于牛顿步, 即∥ p k − p k N ∥ = o ( ∥ p k N ∥ ) . \Vert p_k-p_k^N\Vert=o(\Vert p_k^N\Vert). ∥ p k − p k N ∥ = o ( ∥ p k N ∥ ) . 则信赖域直径Δ k \Delta_k Δ k 对于充分大的k k k 将不再积极, 且序列{ x k } \{x_k\} { x k } 超线性收敛于x ∗ x^* x ∗ .
证明: 我们证明对于充分大的k k k , 总有∥ p k N ∥ < 1 2 Δ k \Vert p_k^N\Vert<\frac{1}{2}\Delta_k ∥ p k N ∥ < 2 1 Δ k , 从而信赖域的约束将不再积极 (∵ ∥ p k ∥ ≤ ∥ p k N ∥ + o ( ∥ p k N ∥ ) ≤ 2 ∥ p k N ∥ < Δ k \because \Vert p_k\Vert\le\Vert p_k^N\Vert+o(\Vert p_k^N\Vert)\le2\Vert p_k^N\Vert<\Delta_k ∵ ∥ p k ∥ ≤ ∥ p k N ∥ + o ( ∥ p k N ∥ ) ≤ 2 ∥ p k N ∥ < Δ k ) .
我们先对充分大的k k k 寻求预测下降m k ( 0 ) − m k ( p k ) m_k(0)-m_k(p_k) m k ( 0 ) − m k ( p k ) 的一个下界. 假设k k k 足够大使得o ( ∥ p k N ∥ ) o(\Vert p_k^N\Vert) o ( ∥ p k N ∥ ) 小于∥ p k N ∥ \Vert p_k^N\Vert ∥ p k N ∥ . 当∥ p k N ∥ < 1 2 Δ k \Vert p_k^N\Vert<\frac{1}{2}\Delta_k ∥ p k N ∥ < 2 1 Δ k 时, 有∥ p k ∥ ≤ ∥ p k N ∥ + o ( ∥ p k N ∥ ) ≤ 2 ∥ p k N ∥ \Vert p_k\Vert\le\Vert p_k^N\Vert+o(\Vert p_k^N\Vert)\le2\Vert p_k^N\Vert ∥ p k ∥ ≤ ∥ p k N ∥ + o ( ∥ p k N ∥ ) ≤ 2 ∥ p k N ∥ ; 而当∥ p k N ∥ ≥ 1 2 Δ k \Vert p_k^N\Vert\ge\frac{1}{2}\Delta_k ∥ p k N ∥ ≥ 2 1 Δ k 时, 有∥ p k ∥ ≤ Δ k ≤ 2 ∥ p k N ∥ \Vert p_k\Vert\le\Delta_k\le2\Vert p_k^N\Vert ∥ p k ∥ ≤ Δ k ≤ 2 ∥ p k N ∥ . 在两种情形下, 都有∥ p k ∥ ≤ 2 ∥ p k N ∥ ≤ 2 ∥ ∇ 2 f ( x k ) − 1 ∥ ∥ g k ∥ , \Vert p_k\Vert\le2\Vert p_k^N\Vert\le2\left\Vert\nabla^2f(x_k)^{-1}\right\Vert\Vert g_k\Vert, ∥ p k ∥ ≤ 2 ∥ p k N ∥ ≤ 2 ∥ ∥ ∇ 2 f ( x k ) − 1 ∥ ∥ ∥ g k ∥ , 所以∥ g k ∥ ≥ 1 2 ∥ p k ∥ / ∥ ∇ 2 f ( x k ) − 1 ∥ \Vert g_k\Vert\ge\frac{1}{2}\Vert p_k\Vert/\left\Vert\nabla^2f(x_k)^{-1}\right\Vert ∥ g k ∥ ≥ 2 1 ∥ p k ∥ / ∥ ∥ ∇ 2 f ( x k ) − 1 ∥ ∥ .从Cauchy下降, 我们可得m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ g k ∥ ∥ ∇ 2 f ( x k ) ∥ ) ≥ c 1 ∥ p k ∥ 2 ∥ ∇ 2 f ( x k ) − 1 ∥ min ( ∥ p k ∥ , ∥ p k ∥ 2 ∥ ∇ 2 f ( x k ) ∥ ∥ ∇ 2 f ( x k ) − 1 ∥ ) = c 1 ∥ p k ∥ 2 4 ∥ ∇ 2 f ( x k ) − 1 ∥ 2 ∥ ∇ 2 f ( x k ) ∥ . \begin{aligned}&m_k(0)-m_k(p_k)\\&\ge c_1\Vert g_k\Vert\min\left(\Delta_k,\frac{\Vert g_k\Vert}{\left\Vert\nabla^2f(x_k)\right\Vert}\right)\\&\ge c_1\frac{\Vert p_k\Vert}{2\left\Vert\nabla^2f(x_k)^{-1}\right\Vert}\min\left(\Vert p_k\Vert,\frac{\Vert p_k\Vert}{2\left\Vert\nabla^2f(x_k)\right\Vert\left\Vert\nabla^2f(x_k)^{-1}\right\Vert}\right)\\&=c_1\frac{\Vert p_k\Vert^2}{4\left\Vert\nabla^2f(x_k)^{-1}\right\Vert^2\left\Vert\nabla^2f(x_k)\right\Vert}.\end{aligned} m k ( 0 ) − m k ( p k ) ≥ c 1 ∥ g k ∥ min ( Δ k , ∥ ∇ 2 f ( x k ) ∥ ∥ g k ∥ ) ≥ c 1 2 ∥ ∇ 2 f ( x k ) − 1 ∥ ∥ p k ∥ min ( ∥ p k ∥ , 2 ∥ ∇ 2 f ( x k ) ∥ ∥ ∇ 2 f ( x k ) − 1 ∥ ∥ p k ∥ ) = c 1 4 ∥ ∇ 2 f ( x k ) − 1 ∥ 2 ∥ ∇ 2 f ( x k ) ∥ ∥ p k ∥ 2 . 从x k → x ∗ x_k\to x^* x k → x ∗ 、∇ 2 f ( x ) \nabla^2f(x) ∇ 2 f ( x ) 的连续性和∇ 2 f ( x ∗ ) \nabla^2f(x^*) ∇ 2 f ( x ∗ ) 的正定性, 在k k k 充分大, 我们有下面的界:c 1 4 ∥ ∇ 2 f ( x k ) − 1 ∥ 2 ∥ ∇ 2 f ( x k ) ∥ ≥ c 1 8 ∥ ∇ 2 f ( x ∗ ) − 1 ∥ 2 ∥ ∇ 2 f ( x ∗ ) ∥ ≜ c 3 , \frac{c_1}{4\left\Vert\nabla^2f(x_k)^{-1}\right\Vert^2\left\Vert\nabla^2f(x_k)\right\Vert}\ge\frac{c_1}{8\left\Vert\nabla^2f(x^*)^{-1}\right\Vert^2\left\Vert\nabla^2f(x^*)\right\Vert}\triangleq c_3, 4 ∥ ∇ 2 f ( x k ) − 1 ∥ 2 ∥ ∇ 2 f ( x k ) ∥ c 1 ≥ 8 ∥ ∇ 2 f ( x ∗ ) − 1 ∥ 2 ∥ ∇ 2 f ( x ∗ ) ∥ c 1 ≜ c 3 , 其中c 3 > 0 c_3>0 c 3 > 0 . 因此有m k ( 0 ) − m k ( p k ) ≥ c 3 ∥ p k ∥ 2 , k 充 分 大 . m_k(0)-m_k(p_k)\ge c_3\Vert p_k\Vert^2,\quad k充分大. m k ( 0 ) − m k ( p k ) ≥ c 3 ∥ p k ∥ 2 , k 充 分 大 . 由∇ 2 f ( x ) \nabla^2f(x) ∇ 2 f ( x ) 在x ∗ x^* x ∗ 附近的Lipschitz连续性, 再使用Taylor定理, 我们有∣ ( f ( x k ) − f ( x k + p k ) ) − ( m k ( 0 ) − m k ( p k ) ) ∣ = ∣ 1 2 p k T ∇ 2 f ( x k ) p k − 1 2 ∫ 0 1 p k T ∇ 2 f ( x k + t p k ) p k  d t ∣ ≤ L 4 ∥ p k ∥ 3 , \begin{aligned}&|(f(x_k)-f(x_k+p_k))-(m_k(0)-m_k(p_k))|\\&=\left|\frac{1}{2}p_k^T\nabla^2f(x_k)p_k-\frac{1}{2}\int_0^1p_k^T\nabla^2f(x_k+tp_k)p_k\,\mathrm{d}t\right|\\&\le\frac{L}{4}\Vert p_k\Vert^3,\end{aligned} ∣ ( f ( x k ) − f ( x k + p k ) ) − ( m k ( 0 ) − m k ( p k ) ) ∣ = ∣ ∣ ∣ ∣ 2 1 p k T ∇ 2 f ( x k ) p k − 2 1 ∫ 0 1 p k T ∇ 2 f ( x k + t p k ) p k d t ∣ ∣ ∣ ∣ ≤ 4 L ∥ p k ∥ 3 , 其中L > 0 L>0 L > 0 为∇ 2 f ( ⋅ ) \nabla^2f(\cdot) ∇ 2 f ( ⋅ ) 的Lipschitz常数. 因此, 由ρ k \rho_k ρ k 的定义, 对于充分大的k k k , 我们有∣ ρ k − 1 ∣ ≤ ∥ p k ∥ 3 ( L / 4 ) c 3 ∥ p k ∥ 2 = L 4 c 3 ∥ p k ∥ ≤ L 4 c 3 Δ k . |\rho_k-1|\le\frac{\Vert p_k\Vert^3(L/4)}{c_3\Vert p_k\Vert^2}=\frac{L}{4c_3}\Vert p_k\Vert\le\frac{L}{4c_3}\Delta_k. ∣ ρ k − 1 ∣ ≤ c 3 ∥ p k ∥ 2 ∥ p k ∥ 3 ( L / 4 ) = 4 c 3 L ∥ p k ∥ ≤ 4 c 3 L Δ k . 信赖域缩小仅当ρ k < 1 4 \rho_k<\frac{1}{4} ρ k < 4 1 , 从而由上式可知序列{ Δ k } \{\Delta_k\} { Δ k } 与0有一段距离 (可用反证) . 由于x k → x ∗ x_k\to x^* x k → x ∗ , 所以∥ p k N ∥ → 0 ⇒ ∥ p k ∥ → 0 \Vert p_k^N\Vert\to0\Rightarrow\Vert p_k\Vert\to0 ∥ p k N ∥ → 0 ⇒ ∥ p k ∥ → 0 . 因此k k k 充分大时, 信赖域约束将不再积极, ∥ p k N ∥ ≤ 1 2 Δ k \Vert p_k^N\Vert\le\frac{1}{2}\Delta_k ∥ p k N ∥ ≤ 2 1 Δ k 将总是成立.
下面证明超线性收敛. 由第三章 关于牛顿法的讨论, 我们有∥ x k + p k N − x ∗ ∥ = O ( ∥ x k − x ∗ ∥ ) , \Vert x_k+p_k^N-x^*\Vert=O(\Vert x_k-x^*\Vert), ∥ x k + p k N − x ∗ ∥ = O ( ∥ x k − x ∗ ∥ ) , 从而∥ p k N ∥ = O ( ∥ x k − x ∗ ∥ ) \Vert p_k^N\Vert=O(\Vert x_k-x^*\Vert) ∥ p k N ∥ = O ( ∥ x k − x ∗ ∥ ) . 因此, ∥ x k + p k − x ∗ ∥ ≤ ∥ x k + p k N − x ∗ ∥ + ∥ p k N − p k ∥ = O ( ∥ x k − x ∗ ∥ 2 ) + o ( ∥ p k N ∥ ) = o ( ∥ x k − x ∗ ∥ ) . \begin{aligned}&\Vert x_k+p_k-x^*\Vert\\&\le\Vert x_k+p_k^N-x^*\Vert+\Vert p_k^N-p_k\Vert=O(\Vert x_k-x^*\Vert^2)+o(\Vert p_k^N\Vert)=o(\Vert x_k-x^*\Vert).\end{aligned} ∥ x k + p k − x ∗ ∥ ≤ ∥ x k + p k N − x ∗ ∥ + ∥ p k N − p k ∥ = O ( ∥ x k − x ∗ ∥ 2 ) + o ( ∥ p k N ∥ ) = o ( ∥ x k − x ∗ ∥ ) . 证明完毕.
从牛顿法的讨论中立得: 若p k = p k N , k 充 分 大 p_k=p_k^N, k充分大 p k = p k N , k 充 分 大 , 则序列{ x k } \{x_k\} { x k } 二次收敛于x ∗ x^* x ∗ .在定理8的假设下, B k = ∇ 2 f ( x k ) B_k=\nabla^2f(x_k) B k = ∇ 2 f ( x k ) 时, 合理实施折线算法、子空间最小化算法和近似精确算法都将最终使用牛顿步作为迭代步, 从而达到二次收敛的速度 .
在折线算法和二维子空间最小化算法中, 牛顿步p k N p_k^N p k N 恰好就是p k p_k p k 的候选. 在定理8的条件下, p k N p_k^N p k N 在k k k 充分大时既然是无约束全局极小点, 自然也是有约束全局极小点, 因此p k = p k N p_k=p_k^N p k = p k N .
在近似精确算法中, 若在算法2实施前先确认p k N p_k^N p k N 是否为子问题的解, 最终也会有p k N p_k^N p k N .
5. 其他的加强版本
5.1 尺度变化
正如我们在第二章 中提到过的, 数据的尺度将影响算法的效率. 当f f f 尺度不均衡时, 使用圆形的信赖域就不那么合理了. 因此我们转向使用椭圆型的信赖域:∥ D p ∥ ≤ Δ , \Vert Dp\Vert\le\Delta, ∥ D p ∥ ≤ Δ , 其中Δ \Delta Δ 为对角元为正的对角阵, 从而由如下更改了尺度的信赖域子问题:min p ∈ R n m k ( p ) = f k + g k T p + 1 2 p T B k p , s . t . ∥ D p ∥ ≤ Δ k . \min_{p\in\mathbb{R}^n}m_k(p)=f_k+g_k^Tp+\frac{1}{2}p^TB_kp,\quad\mathrm{s.t.}\Vert Dp\Vert\le\Delta_k. p ∈ R n min m k ( p ) = f k + g k T p + 2 1 p T B k p , s . t . ∥ D p ∥ ≤ Δ k . 当f f f 对x x x 的第i i i 个分量较为敏感时, 设对应的对角元d i i d_{ii} d i i 为较大的数; 反之, 设为较小的数.
构造D D D 的信息可由二阶信息提供. 我们同样允许D D D 随着迭代而改变; 事实上大多数本章的结论同样适用, 只要每个d i i d_{ii} d i i 都保持在预设的区间[ d l o , d h i ] [d_{lo},d_{hi}] [ d l o , d h i ] 中, 其中0 < d l o < d h i < ∞ 0<d_{lo}<d_{hi}<\infty 0 < d l o < d h i < ∞ .
5.2 其他范数下的信赖域
信赖域亦可用除欧式范数以外的范数定义, 例如∥ p ∥ 1 ≤ Δ k , ∥ p ∥ ∞ ≤ Δ k , \Vert p\Vert_1\le\Delta_k,\quad \Vert p\Vert_{\infty}\le\Delta_k, ∥ p ∥ 1 ≤ Δ k , ∥ p ∥ ∞ ≤ Δ k , 或它们的尺度变换版本∥ D p ∥ 1 ≤ Δ k , ∥ D p ∥ ∞ ≤ Δ k . \Vert Dp\Vert_1\le\Delta_k,\quad \Vert Dp\Vert_{\infty}\le\Delta_k. ∥ D p ∥ 1 ≤ Δ k , ∥ D p ∥ ∞ ≤ Δ k . 这样的范数对于小中型无约束问题的求解没有明显的优势, 但它们在有约束的情景下可能会有大用处. 例如, 对于有界约束问题min x ∈ R n f ( x ) , s . t . x ≥ 0 , \min_{x\in\mathbb{R}^n}f(x),\quad\mathrm{s.t.}x\ge0, x ∈ R n min f ( x ) , s . t . x ≥ 0 , 相应的信赖域子问题为min p ∈ R n m k ( p ) = f k + g k T p + 1 2 p T B k p , s . t . x k + p ≥ 0 , ∥ p ∥ ≤ Δ k . \min_{p\in\mathbb{R}^n}m_k(p)=f_k+g_k^Tp+\frac{1}{2}p^TB_kp,\quad\mathrm{s.t.}x_k+p\ge0,\Vert p\Vert\le\Delta_k. p ∈ R n min m k ( p ) = f k + g k T p + 2 1 p T B k p , s . t . x k + p ≥ 0 , ∥ p ∥ ≤ Δ k . 当信赖域以欧式范数定义, 上述问题的可行域由球面和一个象限的交构成, 这样的形状显然是不太"好"的. 而当使用无穷范数时, 可行域可简单表述为x k + p ≥ 0 , p ≥ − Δ k e , p ≤ Δ k e , x_k+p\ge0,\quad p\ge-\Delta_k e,\quad p\le\Delta_k e, x k + p ≥ 0 , p ≥ − Δ k e , p ≤ Δ k e , 其中e e e 为全1向量. 因此可用有界约束二次规划简单计算.
对于大规模问题, B k B_k B k 的分解与计算就不太可取了, 而无穷范数同样会带来有界约束问题, 而这可能比原子问题要更好求解.