第四章: 信赖域方法
文章目录
信赖域方法的 思想来源于非线性最小二乘问题. 正如前面所提到的, 信赖域方法与线搜索算法不同之处其一在于, 后者先产生搜索方向 p k p_k pk, 再求一合适的步长 α k \alpha_k αk, 迭代依照 x k + 1 = x k + α k p k x_{k+1}=x_k+\alpha_kp_k xk+1=xk+αkpk的形式进行; 而前者则 同时选取搜索方向与步长 (或者说, 先划定步长的范围, 再选取搜索方向) . 迭代的方式为 x k + 1 = x k + p k x_{k+1}=x_k+p_k xk+1=xk+pk (可以认为此时步长融于 p k p_k pk中) . 信赖域方法的大致想法可见 第二章. 其求解重心在于子问题 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∈Rnminmk(p)=fk+gkTp+21pTBkp,s.t.∥p∥≤Δk.
信赖域的大小对于每步的效果直观重要. 若信赖域过小, 则算法可能就会错过充分下降的机会; 若过大, 信赖域中模型 m k m_k mk的极小点可能就与目标函数 f f f的极小点相距甚远, 从而又得增大信赖域.
下面是线搜索算法与信赖域算法的一个图例.
![信赖域与线搜索的一个比较](https://i-blog.csdnimg.cn/blog_migrate/3aedd2e0cebd7a7953183afd9cb5d316.jpeg)
图中, 椭圆虚线为建立的模型
m
k
m_k
mk的等高线, 而圆形虚线为信赖域的边界. 从图中可以看到, 线搜索得到的函数值下降并不客观 (当然这可能与
m
k
m_k
mk对
f
f
f的近似程度有关) , 而信赖域方法得到的下一迭代点则被牢牢地锁在信赖域中, 反而带来了较大的下降. 撇开
m
k
m_k
mk不说, 信赖域方法的思想相较于线搜索更加懂得权衡. 拿人来说的话, 线搜索算法像是活力四射说话斩钉截铁的热血青年, 而信赖域算法则像是运筹帷幄决胜千里的沉稳老者.
我们之前提到, 求解用信赖预算法求解无约束优化问题的关键, 在于求解一系列的子问题 (subproblem) . 若
∥
B
k
−
1
g
k
∥
≤
Δ
k
\Vert B_k^{-1}g_k\Vert\le\Delta_k
∥Bk−1gk∥≤Δk, 则可直接将
m
k
m_k
mk的全局极小点作为
p
k
p_k
pk (若
B
k
=
∇
2
f
k
B_k=\nabla^2 f_k
Bk=∇2fk, 则就是牛顿法, 我们将其放在第4节讨论). 此时将
p
k
p_k
pk称为满步. 自然我们无法保证这种情况发生, 不然也就没有后续讨论的必要了.
信赖域算法之框架
我们在每步迭代后都要对信赖域进行调整: 如果
m
k
m_k
mk是
f
f
f在当前点的好的近似, 则增大信赖域; 反之, 则缩小信赖域. 并且若实在不行, 干脆不动弹 (
x
k
+
1
=
x
k
x_{k+1}=x_k
xk+1=xk) . 因此我们需要用一个参数来度量
m
k
m_k
mk在
x
k
x_k
xk处对
f
f
f的近似程度. 给定
p
k
p_k
pk, 定义比值
ρ
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=mk(0)−mk(pk)f(xk)−f(xk+pk); 其中分子称为实际下降, 而分母称为预估下降. 注意到分母一定是非负的. 如此一来,
ρ
k
\rho_k
ρk就能够较好地反映
m
k
m_k
mk在
x
k
x_k
xk处对
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
xk+1=xk).
信赖域的算法框架大致如下:
算法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,41];
for
k
=
0
,
1
,
2
,
…
,
k=0,1,2,\ldots,
k=0,1,2,…,
求
解
子
问
题
得
p
k
\quad\quad求解子问题得p_k
求解子问题得pk;
计
算
ρ
k
\quad\quad计算\rho_k
计算ρk;
\quad\quad
if
ρ
k
<
1
4
\rho_k<\frac{1}{4}
ρk<41
Δ
k
+
1
=
1
4
Δ
k
\quad\quad\quad\quad\Delta_{k+1}=\frac{1}{4}\Delta_k
Δk+1=41Δk;
\quad\quad
else
\quad\quad\quad\quad
if
ρ
k
>
3
4
\rho_k>\frac{3}{4}
ρk>43 and
∥
p
k
∥
=
Δ
k
\Vert p_k\Vert=\Delta_k
∥pk∥=Δ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
xk+1=xk+pk;
\quad\quad
else
x
k
+
1
=
x
k
\quad\quad\quad\quad x_{k+1}=x_k
xk+1=xk;
end (for) .
其中
Δ
^
\hat{\Delta}
Δ^为步长上界. 注意信赖域半径增大仅当
∥
p
k
∥
\Vert p_k\Vert
∥pk∥达到边界. 若此次迭代步位于信赖域中, 则我们认为现在的
Δ
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∈Rnminm(p)=f+gTp+21pTBp,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 Bk是不定的, 我们仍然有子问题达到全局极小的充要条件. 相比之下, 其他方法往往至多有充分条件.
下面为本章架构: 第一节我们提出Cauchy点的概念, 并给出两种基于它的近似求解子问题的策略; 第二节证明全局收敛性; 第三节给出求子问题的迭代方法; 第四节讨论当 B k B_k Bk恰好为 ∇ 2 f k \nabla^2f_k ∇2fk时的情形, 并考虑它的收敛性质.
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;
pks=argp∈Rnminfk+gkTp,s.t.∥p∥≤Δk;再沿着
p
k
s
p_k^s
pks最小化
m
k
m_k
mk, 得到步长
τ
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τ≥0minmk(τpks),s.t.∥τpks∥≤Δk;置
p
k
C
=
τ
k
p
k
s
p_k^C=\tau_kp_k^s
pkC=τkpks, 即为Cauchy点.
事实上, 可以很容易地得到Cauchy点的解析表示. 易知
p
k
s
=
−
Δ
k
∥
g
k
∥
g
k
.
p_k^s=-\frac{\Delta_k}{\Vert g_k\Vert}g_k.
pks=−∥gk∥Δkgk.为了解析地得到
τ
k
\tau_k
τk, 我们分
g
k
T
B
k
g
k
≤
0
g_k^TB_kg_k\le0
gkTBkgk≤0和
g
k
T
B
k
g
k
>
0
g_k^TB_kg_k>0
gkTBkgk>0两种情况讨论.
- 第一种情形, 只要 g k ≠ 0 g_k\ne0 gk̸=0, m k ( τ p s s ) m_k(\tau p_s^s) mk(τpss)就是随 τ \tau τ而单调递减的, 从而 τ k = 1 \tau_k=1 τk=1;
- 第二种情形, m k ( τ p k s ) m_k(\tau p_k^s) mk(τpks)是 τ \tau τ的凸函数, 从而要么取 ∥ g k ∥ 3 / ( Δ k g k T B k g k ) \Vert g_k\Vert^3/(\Delta_kg_k^TB_kg_k) ∥gk∥3/(ΔkgkTBkgk)(此时为无约束下的最小点), 要么取1 (达到边界) .
从而有
p
k
C
=
−
τ
k
Δ
k
∥
g
k
∥
g
k
,
p_k^C=-\tau_k\frac{\Delta_k}{\Vert g_k\Vert}g_k,
pkC=−τk∥gk∥Δkgk, 其中
τ
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={1min(∥gk∥3/(ΔkgkTBkgk),1)若gkTBkgk≤0;otherwise.事实上, Cauchy点的选取可以看做是最速下降法的一种特殊情形: 同样是沿着负梯度方向搜索, 只是选取了特殊的步长. Cauchy点的计算耗费很小, 至多涉及矩阵-向量乘积. 此外, 更重要的是, Cauchy点还是判定全局收敛性的重要手段: 只要
p
k
p_k
pk带来的函数值下降不少于
p
k
C
p_k^C
pkC, 则对应的信赖域算法就是全局收敛的. 不过, 由第三章中关于最速下降法的讨论, 即使使用精确线搜索, 其表现也可能不尽人意. 因此我们需要基于Cauchy点设计更好的算法.
由于Cauchy点几乎没有用到
f
f
f的二阶信息, 因此设计的新算法应当将此纳入考虑. 同时, 新算法还应当具有一定的相容性: 当
B
k
B_k
Bk正定且
p
k
B
=
−
B
k
−
1
g
k
p_k^B=-B_k^{-1}g_k
pkB=−Bk−1gk满足
∥
p
k
B
∥
≤
Δ
k
\Vert p_k^B\Vert\le\Delta_k
∥pkB∥≤Δ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 ∥pB∥≤Δ时, 显然应当有 p ∗ ( Δ ) = p B p^*(\Delta)=p^B p∗(Δ)=pB;
- 当 ∥ p B ∥ ≫ Δ \Vert p^B\Vert\gg\Delta ∥pB∥≫Δ时, 可认为 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
pU=−gTBggTgg(注意这里的系数是原本最速下降法的步长); 而第二条轨迹则将
p
U
p^U
pU与
p
B
p^B
pB相连. 如下图所示.
我们用 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~(τ)={τpU,pU+(τ−1)(pB−pU),0≤τ≤1,1≤τ≤2.根据折线算法得到的 p p p就是折线轨迹与信赖域边界的交点 (如果没有, 说明 p B p^B pB在信赖域中, 可直接选取 p B p^B pB) . 下面的定理证实了这一点.
定理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(α)=21∥p~(1+α)∥2=21∥pU+α(pB−pU)∥2=21∥pU∥2+α(pU)T(pB−pU)+21α2∥pB−pU∥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′(α)=−(pU)T(pU−pB)+α∥pU−pB∥2≥−(pU)T(pU−pB)=gTBggTggT(−gTBggTgg+B−1g)=gTggTBggTB−1g[1−(gTBg)(gTB−1g)(gTg)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}
(gTg)2=(gTB21B−21g)2≤∥∥∥B21g∥∥∥2∥∥∥B−21g∥∥∥2=(gTBg)(gTB−1g),从而第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^′(α)=(pB−pU)T(g+BpU)+α(pB−pU)TB(pB−pU)≤(pB−pU)T(g+BpU+B(pB−pU))=(pB−pU)T(g+BpB)=0.
此引理说明, 折线轨迹与信赖域边界至多只会交于一点. 当有交点产生时, 若 ∥ p U ∥ ≤ Δ \Vert p^U\Vert\le\Delta ∥pU∥≤Δ, 则需要求解关于标量的二次方程 ∥ p U + ( τ − 1 ) ( p B − p U ) ∥ 2 = Δ 2 . \Vert p^U+(\tau-1)(p^B-p^U)\Vert^2=\Delta^2. ∥pU+(τ−1)(pB−pU)∥2=Δ2.
下面说几点注记:
- 若将 d ( Δ ) d(\Delta) d(Δ)记作定理1中信赖域子问题的精确解, 则折线算法中的"折线"可以视作对 d ( Δ ) d(\Delta) d(Δ)的近似, 其中而这起点与终点重合, 且在起点处相切.
- 当Hessian矩阵 ∇ 2 f ( x k ) \nabla^2f(x_k) ∇2f(xk)可用且正定时, 可令 B = ∇ 2 f ( x k ) B=\nabla^2f(x_k) B=∇2f(xk), 从而得到牛顿折线算法与牛顿折线步. 否则我们可选取 B B B为Hessian的正定近似 (可见第三章3.2.2小节的讨论) . 在接近满足二阶充分条件的解时, p B p^B pB将被采纳, 从而算法可能达到与牛顿法相当的局部收敛速度. 这点在后面会给出证明. 不过, 在牛顿折线算法中取修正的Hessian可能会以任一种形式影响 ∇ 2 f ( x k ) \nabla^2f(x_k) ∇2f(xk)的对角元, 从而破坏了信赖域算法的优势. 事实上, 信赖域算法有其自身对Hessian的修正. 由之前的定理1可知, 对于 B k = ∇ 2 f ( x k ) B_k=\nabla^2f(x_k) Bk=∇2f(xk), 信赖域子问题的解为 ( ∇ 2 f ( x k ) + λ I ) − 1 g k (\nabla^2f(x_k)+\lambda I)^{-1}g_k (∇2f(xk)+λI)−1gk, 其中 λ \lambda λ为使 ∇ 2 f ( x k ) + λ I \nabla^2f(x_k)+\lambda I ∇2f(xk)+λI正定的实数, 其值依赖于信赖域半径 Δ k \Delta_k Δk. 我们给出: 对于凸函数 (即 ∇ 2 f ( x k ) \nabla^2f(x_k) ∇2f(xk)总是半正定的) , 牛顿折线算法是最实用的. 但对于一般的情形, 则需要应用下面提到的子空间算法.
- 折线算法也可以推广到 B B B不定的情形, 不过此时满步 p B p^B pB就不再是 m m m的最小点了.
1.3 二维子空间最小化 (Cont’d)
当
B
B
B正定, 折线算法可以扩展为在
p
B
p^B
pB和
p
U
p^U
pU张成的二维子空间中极小化. 于是子问题就变为
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\}.
pminm(p)=f+gTp+21pTBp,s.t.∥p∥≤Δ,p∈span{g,B−1g}.这是一个计算耗费不大的具有两个变量 (
p
p
p在子空间中的坐标) 的问题. 事实上经过一些代数操作, 此问题可约减为求一个四次多项式的根.
显然, Cauchy点
p
C
p^C
pC显然包含在上述问题的可行域中, 所以此子问题的最优解将带来不少于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],
span{g,(B+αI)−1g},α∈(−λ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)−1g∥≤Δ, 我们放弃在子空间中搜索而定义迭代步为
p
=
−
(
B
+
α
I
)
−
1
g
+
v
,
p=-(B+\alpha I)^{-1}g+v,
p=−(B+αI)−1g+v,其中
v
v
v为满足
v
T
(
B
+
α
I
)
−
1
g
≤
0
v^T(B+\alpha I)^{-1}g\le0
vT(B+αI)−1g≤0 (这一条件保证
∥
p
∥
≥
∥
(
B
+
α
I
)
−
1
g
∥
\Vert p\Vert\ge\Vert(B+\alpha I)^{-1}g\Vert
∥p∥≥∥(B+αI)−1g∥) 的向量. 当
B
B
B有0特征值而没有负特征值时, 我们就定义迭代步为Cauchy点
p
=
p
C
p=p^C
p=pC.
二维子空间最小化带来的函数值下降往往与精确解带来的下降很接近. 计算量主要在
B
B
B或
B
+
α
I
B+\alpha I
B+αI的一次分解上, 而要求较为精确的解则需要两到三次这样的分解.
2. 全局收敛性
2.1 Cauchy点的函数值下降
我们在之前曾多次强调, 只要迭代步带来的下降不少于Cauchy点, 则算法的全局收敛性将在一定程度上得到保证. 与线搜索Wolfe条件中的充分下降条件类似, 我们将证明折线方法、二维子空间最小化算法产生的 p k p_k pk有如下的下降估计: 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]. mk(0)−mk(pk)≥c1∥gk∥min(Δk,∥Bk∥∥gk∥),c1∈(0,1].特别地, 当 Δ k \Delta_k Δk是上述中更小的那个, 则上述估计就与线搜索中的充分下降条件具有相同的形式, 即下降与梯度和步长成正比. 下面证明Cauchy点 p k C p^C_k pkC满足 c 1 = 1 2 c_1=\frac{1}{2} c1=21的情形.
定理3 Cauchy点
p
k
C
p_k^C
pkC满足
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).
mk(0)−mk(pkC)≥21∥gk∥min(Δk,∥Bk∥∥gk∥).
证明: 为方便起见, 以下证明省去下标
k
k
k. 与Cauchy点相同, 我们分两种情形讨论.
当
g
T
B
g
≤
0
g^TBg\le0
gTBg≤0时, 我们有
p
C
=
−
Δ
g
∥
g
∥
p^C=-\Delta\frac{g}{\Vert g\Vert}
pC=−Δ∥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(pC)−m(0)=m(−Δg/∥g∥)−f=−∥g∥Δ∥g∥2+21∥g∥2Δ2gTBg≤−Δ∥g∥≤−∥g∥min(Δ,∥B∥∥g∥).这就证明了不等式.
当
g
T
B
g
>
0
g^TBg>0
gTBg>0时, Cauchy点的参数
τ
\tau
τ有两种选择.
当
∥
g
∥
3
Δ
g
T
B
g
≤
1
\frac{\Vert g\Vert^3}{\Delta g^TBg}\le1
ΔgTBg∥g∥3≤1时,
τ
=
∥
g
∥
3
Δ
g
T
B
g
\tau=\frac{\Vert g\Vert^3}{\Delta g^TBg}
τ=ΔgTBg∥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(pC)−m(0)=−gTBg∥g∥4+21gTBg(gTBg)2∥g∥4=−21gTBg∥g∥4≤−21∥B∥∥g∥2∥g∥4=−21∥B∥∥g∥2≤−21∥g∥min(Δ,∥B∥∥g∥).此时也成立不等式.
当
g
T
B
g
<
∥
g
∥
3
Δ
g^TBg<\frac{\Vert g\Vert^3}{\Delta}
gTBg<Δ∥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(pC)−m(0)=−∥g∥Δ∥g∥2+21∥g∥2Δ2gTBg≤−Δ∥g∥+21∥g∥2Δ2Δ∥g∥3=−21Δ∥g∥≤−21∥g∥min(Δ,∥B∥∥g∥).证毕.
为满足充分下降, p k p_k pk只需带来Cauchy点下降的某一系数倍即可. 这就是下面的定理.
定理4 设
p
k
:
∥
p
k
∥
≤
Δ
k
p_k: \Vert p_k\Vert\le\Delta_k
pk:∥pk∥≤Δ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))
mk(0)−mk(pk)≥c2(mk(0)−mk(pkC)). 于是
p
k
p_k
pk对
c
1
=
c
2
/
2
c_1=c_2/2
c1=c2/2成立下降不等式. 特别地, 若
p
k
p_k
pk为子问题的精确解
p
k
∗
p_k^*
pk∗, 则它满足
c
1
=
1
2
c_1=\frac{1}{2}
c1=21.
证明: 证明是显然的. 由于
∥
p
k
∥
≤
Δ
k
\Vert p_k\Vert\le\Delta_k
∥pk∥≤Δk, 所以由定理3即可得到证明.
注意折线算法和二维子空间最小化算法都满足 c 1 = 1 / 2 c_1=1/2 c1=1/2的情形, 这是因为它们产生的 p k p_k pk都满足 m k ( p k ) ≤ m k ( p k C ) m_k(p_k)\le m_k(p_k^C) mk(pk)≤mk(pkC).
2.2 全局收敛性
信赖域算法的全局收敛性依赖于算法1中
η
\eta
η的选取. 若
η
=
0
\eta=0
η=0, 也就是说不论如何必定移动信赖域的中心 (
x
k
+
1
=
x
k
+
p
k
x_{k+1}=x_k+p_k
xk+1=xk+pk), 则有弱全局收敛; 若
η
>
0
\eta>0
η>0, 则可以证明全局收敛性.
为证明上述, 我们假设
- Hessian近似 B k B_k Bk范数一致有界;
- f f f在水平集 S = { x ∣ f ( x ) ≤ f ( x 0 ) } S=\{x|f(x)\le f(x_0)\} S={x∣f(x)≤f(x0)}上下有界, 并定义 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(R0)={x∣∥x−y∥<R0,y∈S},其中 R 0 R_0 R0为正常数.
- 为增大定理的适用范围, 允许 p k p_k pk越过信赖域边界, 即对某个常数 γ ≥ 1 \gamma\ge1 γ≥1有 ∥ p k ∥ ≤ γ Δ k . \Vert p_k\Vert\le\gamma\Delta_k. ∥pk∥≤γΔ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
∥Bk∥≤β,∀k,
f
f
f在水平集
S
S
S上下有界且在邻域
S
(
R
0
)
S(R_0)
S(R0)上Lipschitz连续可微. 算法产生的所有子问题的近似解
p
k
p_k
pk满足
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]
mk(0)−mk(pk)≥c1∥gk∥min(Δk,∥Bk∥∥gk∥),c1∈(0,1]和
∥
p
k
∥
≤
γ
Δ
k
,
γ
≥
1.
\Vert p_k\Vert\le\gamma\Delta_k,\quad \gamma\ge1.
∥pk∥≤γΔk,γ≥1. 则我们有弱全局收敛性
lim inf
k
→
∞
∥
g
k
∥
=
0.
\liminf_{k\to\infty}\Vert g_k\Vert=0.
k→∞liminf∥gk∥=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∣=∣∣∣∣mk(0)−mk(pk)(f(xk)−f(xk+pk))−(mk(0)−mk(pk))∣∣∣∣=∣∣∣∣mk(0)−mk(pk)mk(pk)−f(xk+pk)∣∣∣∣.由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(xk+pk)=f(xk)+g(xk)Tpk+∫01[g(xk+tpk)−g(xk)]Tpkdt,从而
∣
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}
∣mk(pk)−f(xk+pk)∣=∣∣∣∣21pkTBkpk−∫01[g(xk+tpk)−g(xk)]Tpkdt∣∣∣∣≤(β/2)∥pk∥2+β1∥pk∥2,其中
β
1
\beta_1
β1为
g
g
g的Lipschitz常数, 并假设
∥
p
k
∥
≤
R
0
\Vert p_k\Vert\le R_0
∥pk∥≤R0以保证
x
k
x_k
xk和
x
k
+
t
p
k
x_k+tp_k
xk+tpk都在
S
(
R
0
)
S(R_0)
S(R0)中. 下面用反证法证明.
假设存在
ϵ
>
0
,
K
\epsilon>0, K
ϵ>0,K, 使得
∥
g
k
∥
≥
ϵ
,
k
≥
K
.
\Vert g_k\Vert\ge\epsilon,\quad k\ge K.
∥gk∥≥ϵ,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).
mk(0)−mk(pk)≥c1∥gk∥min(Δk,∥Bk∥∥gk∥)≥c1ϵ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∣≤c1ϵmin(Δk,ϵ/β)γ2Δk2(β/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(21γ2(β/2+β1)c1ϵ,γR0).注意其中的
R
0
/
γ
R_0/\gamma
R0/γ是为了保证
∥
p
k
∥
≤
γ
Δ
k
≤
γ
Δ
ˉ
≤
R
0
\Vert p_k\Vert\le\gamma\Delta_k\le\gamma\bar{\Delta}\le R_0
∥pk∥≤γΔk≤γΔˉ≤R0; 而由
c
1
≤
1
,
γ
≥
1
c_1\le1,\gamma\ge1
c1≤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}
Δˉ≤21γ2(β/2+β1)c1ϵ≤βϵ, 从而当
Δ
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∣≤c1ϵΔkγ2Δk2(β/2+β1)=c1ϵγ2Δk(β/2+β1)≤c1ϵγ2Δˉ(β/2+β1)≤21.(从最终的结果简洁性也可以得出为什么
Δ
ˉ
\bar{\Delta}
Δˉ的形式要取得那么复杂了, 而且这个简洁性也是必要的, 因为)从而
ρ
k
≥
1
4
\rho_k\ge\frac{1}{4}
ρk≥41, 由算法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}
41) 只可能在
Δ
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≥41,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(xk)−f(xk+1)=f(xk)+f(xk+pk)≥41[mk(0)−mk(pk)]≥41c1ϵ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<41. 此时
Δ
k
\Delta_k
Δk在每一步迭代后都会缩减成原来的
1
4
\frac{1}{4}
41, 从而也有
lim
k
→
∞
Δ
k
=
0
\lim_{k\to\infty}\Delta_k=0
limk→∞Δk=0, 继续矛盾. 从而原假设不成立, 这就证出了弱全局收敛性.
定理6 设算法1中
η
∈
(
0
,
1
4
)
\eta\in(0,\frac{1}{4})
η∈(0,41). 假设存在常数
β
\beta
β使得
∥
B
k
∥
≤
β
,
∀
k
\Vert B_k\Vert\le\beta,\forall k
∥Bk∥≤β,∀k,
f
f
f在水平集
S
S
S上下有界且在邻域
S
(
R
0
)
S(R_0)
S(R0)上Lipschitz连续可微. 算法产生的所有子问题的近似解
p
k
p_k
pk满足
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]
mk(0)−mk(pk)≥c1∥gk∥min(Δk,∥Bk∥∥gk∥),c1∈(0,1]和
∥
p
k
∥
≤
γ
Δ
k
,
γ
≥
1.
\Vert p_k\Vert\le\gamma\Delta_k,\quad \gamma\ge1.
∥pk∥≤γΔk,γ≥1. 则我们有全局收敛性
lim
k
→
∞
∥
g
k
∥
=
0.
\lim_{k\to\infty}\Vert g_k\Vert=0.
k→∞lim∥gk∥=0.
证明: 本定理的证明将用到上一个定理的结论. 考虑某一特定的
m
:
g
m
≠
0
m:g_m\ne0
m:gm̸=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)−gm∥≤β1∥x−xm∥,∀x∈S(R0).定义
ϵ
=
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).
ϵ=21∥gm∥,R=min(β1ϵ,R0).注意
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(xm,R)={x∣∥x−xm∥≤R}⊂S(R0),所以
g
g
g在
B
(
x
m
,
R
)
\mathcal{B}(x_m,R)
B(xm,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(xm,R)⇒∥g(x)∥≥∥gm∥−∥g(x)−gm∥≥21∥gm∥=ϵ.若整个序列
{
x
k
}
k
≥
m
\{x_k\}_{k\ge m }
{xk}k≥m留在
B
(
x
m
,
R
)
\mathcal{B}(x_m,R)
B(xm,R)中, 我们就有
∥
g
k
∥
≥
ϵ
>
0
,
k
≥
m
\Vert g_k\Vert\ge\epsilon>0,k\ge m
∥gk∥≥ϵ>0,k≥m. 利用定理5同样的推导, 我们知道这种情形是不可能的. 所以序列
{
x
k
}
k
≥
m
\{x_k\}_{k\ge m}
{xk}k≥m必将离开
B
(
x
m
,
R
)
\mathcal{B}(x_m,R)
B(xm,R).
设
l
≥
m
l\ge m
l≥m为使
x
l
+
1
x_{l+1}
xl+1为
x
m
x_m
xm后第一个离开
B
(
x
m
,
R
)
\mathcal{B}(x_m,R)
B(xm,R)的指标. 由于
∥
g
k
∥
≥
ϵ
,
k
=
m
,
m
+
1
,
…
,
l
\Vert g_k\Vert\ge\epsilon,k=m,m+1,\ldots,l
∥gk∥≥ϵ,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(xm)−f(xl+1)=k=m∑lf(xk)−f(xk+1)≥k=m,xk̸=xk+1∑lη[mk(0)−mk(pk)]≥k=m,xk̸=xk+1∑lηc1ϵ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(xm)−f(xl+1)≥ηc1ϵk=m,xk̸=xk+1∑lΔk≥ηc1ϵR=ηc1ϵmin(β1ϵ,R0),其中第二个不等号是因为到了
x
l
+
1
x_{l+1}
xl+1跑出了
B
(
x
m
,
R
)
\mathcal{B}(x_m,R)
B(xm,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(xm)−f(xl+1)≥ηc1ϵβϵ.由于
{
f
(
x
k
)
}
k
=
0
∞
\{f(x_k)\}_{k=0}^{\infty}
{f(xk)}k=0∞递减且下有界, 所以
f
(
x
k
)
↓
f
∗
,
f
∗
>
−
∞
.
f(x_k)\downarrow f^*, f^*>-\infty.
f(xk)↓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(xm)−f∗≥f(xm)−f(xl+1)≥ηc1ϵmin(βϵ,β1ϵ,R0)=21ηc1∥gm∥min(2β∥gm∥,2β1∥gm∥,R0)>0.由于
f
(
x
m
)
−
f
∗
↓
0
f(x_m)-f^*\downarrow 0
f(xm)−f∗↓0, 所以必有
lim
m
→
∞
g
m
=
0
\lim_{m\to\infty}g_m=0
limm→∞gm=0, 证毕.
注意:
- 第二个定理中 η \eta η限定上界为 1 4 \frac{1}{4} 41是合理的 (事实上, 定理的证明中并没有用到 1 4 \frac{1}{4} 41这个数字, 而只用到了它是个正数) . 回想一下算法1中, 信赖域缩小当且仅当 ρ k < 1 4 \rho_k<\frac{1}{4} ρk<41. 如果 η > 1 4 \eta>\frac{1}{4} η>41, 则可能出现这种情况: 缩小了信赖域却没有更新 x k x_k xk. 倘若当前的 B k B_k Bk对Hessian的近似不够好, 那么 p k p_k pk带来的下降将很有限. 若一直不更新 x k x_k xk, 使得信赖域的中心保持不变, 则算法可能会陷于 x k x_k xk无法跳出.
- 这两个定理充分体现了信赖域算法的优越性, 即, 即使 B k B_k Bk是不定矩阵, 信赖域算法依然是全局收敛的. 这主要是因为下降估计对于折线算法与二维子空间最小化算法总是成立的: 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). mk(0)−mk(pk)≥c1∥gk∥min(Δk,∥Bk∥∥gk∥).(这其中的关键在于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)−1g,其中
λ
\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ΛQT, 其中
Q
Q
Q为正交矩阵,
Λ
=
d
i
a
g
(
λ
1
,
λ
2
,
…
,
λ
n
)
,
\Lambda=\mathrm{diag}(\lambda_1,\lambda_2,\ldots,\lambda_n),
Λ=diag(λ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)QT, 从而对于
λ
≠
λ
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)−1QTg=−j=1∑nλj+λqjTgqj,其中
q
j
q_j
qj表示
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(qjTg)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
qjTg̸=0时, 我们有
lim
λ
→
λ
j
∥
p
(
λ
)
∥
=
∞
.
\lim_{\lambda\to\lambda_j}\Vert p(\lambda)\Vert=\infty.
λ→λjlim∥p(λ)∥=∞.用图形表示更加直观.
图中显示, q 1 T g , q 2 T g , q 3 T g q_1^Tg,q_2^Tg,q_3^Tg q1Tg,q2Tg,q3Tg皆非零. 特别地, 如果有 q 1 T g ≠ 0 q_1^Tg\ne0 q1Tg̸=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 q1Tg̸=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−1g∥≤Δ, 则 λ = 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(λ)≈λ+λ1C1+C2,其中 C 1 , C 2 C_1,C_2 C1,C2为常数. 显然这一函数高度非线性, 从而牛顿法并不可靠 (收敛很慢) . 不过如果考虑等价的方程 ϕ 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−C3λ+λ1,其中 C 3 > 0 C_3>0 C3>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=RTR,则应有 R T R p = − g R^TRp=-g RTRp=−g. 再令 q q q满足 R T q = p R^Tq=p RTq=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−Tp∥2=pTR−1R−Tp=pT(B+λI)−1p=pTQ(Λ+λI)−1QTp=j=1∑nλ+λj(qjTp)2=j=1∑nλ+λj(qjT∑k=1nλ+λkqkTgqk)2=j=1∑n(λ+λj)3(qjTg)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∥21dλd∥p∥=∥p∥21dλd(j=1∑n(λ+λj)2(qjTg)2)=2∥p∥31j=1∑ndλd((λ+λj)2(qjTg)2)=−∥p∥31j=1∑n(λ+λj)3(qjTg)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=RTR;
求
解
R
T
R
p
l
=
−
g
,
R
T
q
l
=
p
l
\quad\quad求解R^TRp_l=-g,R^Tq_l=p_l
求解RTRpl=−g,RTql=pl;
置
λ
(
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)+∥ql∥2∥pl∥2Δ∥pl∥−Δ;
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=RTR不一定存在. 此时需要稍微改进算法.
- 算法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 Q1Tg̸=0, 其中 Q 1 Q_1 Q1的列张成 λ 1 \lambda_1 λ1的特征子空间.
- 算法2的收敛性将在后文给出说明.
3.2 困难情形
当 q 1 T g = 0 q_1^Tg=0 q1Tg=0时, 极限 lim λ → − λ 1 ∥ p ( λ ) ∥ = + ∞ \lim_{\lambda\to-\lambda_1}\Vert p(\lambda)\Vert=+\infty λ→−λ1lim∥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∑λ+λjqjTgqj是不够的. 注意到 ( B − λ 1 I ) (B-\lambda_1 I) (B−λ1I)奇异, 从而存在 z : ∥ z ∥ = 1 z:\Vert z\Vert=1 z:∥z∥=1使得 ( B − λ 1 I ) z = 0 (B-\lambda_1I)z=0 (B−λ1I)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 qjTz=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∑λ+λjqjTgqj+τ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(qjTg)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)=gTp+21pTBp,其中 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:Bp=−g都是 m m m的全局最小点.
- m m m有唯一全局最小点当且仅当 B B B正定.
证明:
- 我们分充分性和必要性证明.
- 充分性. 由于 g g g在 B B B的值域中, 所以有 p p p使得 B p = − g Bp=-g Bp=−g. 对于 ∀ w ∈ R n \forall w\in\mathbb{R}^n ∀w∈Rn, 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)=gT(p+w)+21(p+w)TB(p+w)=(gTp+21pTBp)+gTw+(Bp)Tw+21wTBw=m(p)+21wTBw≥m(p).
- 必要性. 设 p p p为 m m m的极小点. 由于 ∇ m ( p ) = B p + g = 0 \nabla m(p)=Bp+g=0 ∇m(p)=Bp+g=0, 所以 g g g属于 B B B的值域. 同样由极小的二阶必要条件, 得 ∇ 2 m ( p ) = B \nabla^2m(p)=B ∇2m(p)=B是半正定矩阵.
- 充分性可由1的充分性中, w T B w > 0 , ∀ w ≠ 0 w^TBw>0,\forall w\ne0 wTBw>0,∀w̸=0得到; 必要性可用反证法证明. 假设 B B B仅半正定, 从而存在 w ≠ 0 w\ne0 w̸=0使得 B w = 0 Bw=0 Bw=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∈Rnminm(p)=gTp+21pTBp,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)=gTp+21pT(B+λI)p=m(p)+2λpTp的全局极小点. 由于
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∗)Tp∗−pTp).由于
λ
(
Δ
−
∥
p
∗
∥
)
=
0
\lambda(\Delta-\Vert p^*\Vert)=0
λ(Δ−∥p∗∥)=0, 因此
λ
(
Δ
2
−
(
p
∗
)
T
p
∗
)
=
0
\lambda(\Delta^2-(p^*)^Tp^*)=0
λ(Δ2−(p∗)Tp∗)=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−pTp).从
λ
≥
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∗)=Bp∗+g=0,∇2m(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 minm(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λ(pTp−Δ2),存在 λ \lambda λ使得 p ∗ p^* p∗为 L \mathcal{L} L的稳定点. 置 ∇ p L ( p ∗ , λ ) \nabla_p\mathcal{L}(p^*,\lambda) ∇pL(p∗,λ)为0, 我们得到 B p ∗ + g + λ p ∗ = 0 ⇒ ( B + λ I ) p ∗ = − g . Bp^*+g+\lambda p^*=0\Rightarrow (B+\lambda I)p^*=-g. Bp∗+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:pTp=(p∗)Tp∗=Δ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∗)Tp∗−pTp).把 ( 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. 21(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∗)Tp∗−pTp),∀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半正定. Bp∗=−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)≥c1(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
c1∈(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
xk是个鞍点. 此时后者的右端就是0, 且算法终止. 而前者的右端为正数, 表明从当前点出发仍可能获得模型函数值的下降, 从而迫使算法移离
x
k
x_k
xk.
只有当二阶信息充分反映了函数
f
f
f的真实性态时, 才需要接近精确 (即充分使用二阶信息) 的算法. 这里我们只考虑信赖域牛顿算法,
B
=
∇
2
f
(
x
)
B=\nabla^2f(x)
B=∇2f(x). 二阶信息使我们不仅能够判别稳定点, 还能得到函数在当前点周遭的性态. 下面的结论表明由非精确解算法产生的序列的聚点满足二阶必要条件.
定理7 假设定理6的条件都成立, 另外 f f f在水平集 S S S上是二阶连续可微的. 设 B k = ∇ 2 f ( x k ) , ∀ k B_k=\nabla^2f(x_k),\forall k Bk=∇2f(xk),∀k, 子问题的近似解 p k p_k pk满足 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)≥c1(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∥gk∥=0.另外, 若水平集 S S S是紧集, 则算法要么终止于满足二阶必要条件的 x k x_k xk, 要么序列 { x k } \{x_k\} {xk}在 S S S中有满足二阶必要条件的聚点 x ∗ x^* x∗.
4. 信赖域牛顿法的局部收敛性
前面已经提到信赖域牛顿法的全局收敛性, 下面来讨论其局部的收敛速度. 与牛顿法相关的算法要想要获得较快的收敛速度, 关键是在接近解的时候, 相关的限制不再对牛顿步起作用. 具体地, 我们希望在靠近解的时候, 信赖域子问题的近似解老实地待在信赖域内部, 并愈来愈接近牛顿步. 满足后面这一性质的迭代步, 我们称之渐进相似于牛顿步.
我们证明算法1 (产生渐进相似于牛顿步的迭代步) 的一般结论. 这一结论表明, 信赖域的约束最终变得不积极从而算法达到超线性收敛速度.
定理8 设 f f f在 x ∗ x^* x∗ (此点满足二阶充分条件) 的一个邻域内二次Lipschitz连续可微. 假设序列 { x k } \{x_k\} {xk}收敛于 x ∗ x^* x∗, 且对于充分大的 k k k, 信赖域牛顿法选取 p k p_k pk满足基于Cauchy点模型的下降条件, 且当 ∥ p k N ∥ ≤ 1 2 Δ k \Vert p_k^N\Vert\le\frac{1}{2}\Delta_k ∥pkN∥≤21Δk时, p k p_k pk渐进相似于牛顿步, 即 ∥ p k − p k N ∥ = o ( ∥ p k N ∥ ) . \Vert p_k-p_k^N\Vert=o(\Vert p_k^N\Vert). ∥pk−pkN∥=o(∥pkN∥).则信赖域直径 Δ k \Delta_k Δk对于充分大的 k k k将不再积极, 且序列 { x k } \{x_k\} {xk}超线性收敛于 x ∗ x^* x∗.
证明: 我们证明对于充分大的
k
k
k, 总有
∥
p
k
N
∥
<
1
2
Δ
k
\Vert p_k^N\Vert<\frac{1}{2}\Delta_k
∥pkN∥<21Δ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
∵∥pk∥≤∥pkN∥+o(∥pkN∥)≤2∥pkN∥<Δk) .
我们先对充分大的
k
k
k寻求预测下降
m
k
(
0
)
−
m
k
(
p
k
)
m_k(0)-m_k(p_k)
mk(0)−mk(pk)的一个下界. 假设
k
k
k足够大使得
o
(
∥
p
k
N
∥
)
o(\Vert p_k^N\Vert)
o(∥pkN∥)小于
∥
p
k
N
∥
\Vert p_k^N\Vert
∥pkN∥. 当
∥
p
k
N
∥
<
1
2
Δ
k
\Vert p_k^N\Vert<\frac{1}{2}\Delta_k
∥pkN∥<21Δ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
∥pk∥≤∥pkN∥+o(∥pkN∥)≤2∥pkN∥; 而当
∥
p
k
N
∥
≥
1
2
Δ
k
\Vert p_k^N\Vert\ge\frac{1}{2}\Delta_k
∥pkN∥≥21Δk时, 有
∥
p
k
∥
≤
Δ
k
≤
2
∥
p
k
N
∥
\Vert p_k\Vert\le\Delta_k\le2\Vert p_k^N\Vert
∥pk∥≤Δk≤2∥pkN∥. 在两种情形下, 都有
∥
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,
∥pk∥≤2∥pkN∥≤2∥∥∇2f(xk)−1∥∥∥gk∥,所以
∥
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
∥gk∥≥21∥pk∥/∥∥∇2f(xk)−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}
mk(0)−mk(pk)≥c1∥gk∥min(Δk,∥∇2f(xk)∥∥gk∥)≥c12∥∇2f(xk)−1∥∥pk∥min(∥pk∥,2∥∇2f(xk)∥∥∇2f(xk)−1∥∥pk∥)=c14∥∇2f(xk)−1∥2∥∇2f(xk)∥∥pk∥2.从
x
k
→
x
∗
x_k\to x^*
xk→x∗、
∇
2
f
(
x
)
\nabla^2f(x)
∇2f(x)的连续性和
∇
2
f
(
x
∗
)
\nabla^2f(x^*)
∇2f(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∥∇2f(xk)−1∥2∥∇2f(xk)∥c1≥8∥∇2f(x∗)−1∥2∥∇2f(x∗)∥c1≜c3,其中
c
3
>
0
c_3>0
c3>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充分大.
mk(0)−mk(pk)≥c3∥pk∥2,k充分大.由
∇
2
f
(
x
)
\nabla^2f(x)
∇2f(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(xk)−f(xk+pk))−(mk(0)−mk(pk))∣=∣∣∣∣21pkT∇2f(xk)pk−21∫01pkT∇2f(xk+tpk)pkdt∣∣∣∣≤4L∥pk∥3,其中
L
>
0
L>0
L>0为
∇
2
f
(
⋅
)
\nabla^2f(\cdot)
∇2f(⋅)的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∣≤c3∥pk∥2∥pk∥3(L/4)=4c3L∥pk∥≤4c3LΔk.信赖域缩小仅当
ρ
k
<
1
4
\rho_k<\frac{1}{4}
ρk<41, 从而由上式可知序列
{
Δ
k
}
\{\Delta_k\}
{Δk}与0有一段距离 (可用反证) . 由于
x
k
→
x
∗
x_k\to x^*
xk→x∗, 所以
∥
p
k
N
∥
→
0
⇒
∥
p
k
∥
→
0
\Vert p_k^N\Vert\to0\Rightarrow\Vert p_k\Vert\to0
∥pkN∥→0⇒∥pk∥→0. 因此
k
k
k充分大时, 信赖域约束将不再积极,
∥
p
k
N
∥
≤
1
2
Δ
k
\Vert p_k^N\Vert\le\frac{1}{2}\Delta_k
∥pkN∥≤21Δ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),
∥xk+pkN−x∗∥=O(∥xk−x∗∥),从而
∥
p
k
N
∥
=
O
(
∥
x
k
−
x
∗
∥
)
\Vert p_k^N\Vert=O(\Vert x_k-x^*\Vert)
∥pkN∥=O(∥xk−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}
∥xk+pk−x∗∥≤∥xk+pkN−x∗∥+∥pkN−pk∥=O(∥xk−x∗∥2)+o(∥pkN∥)=o(∥xk−x∗∥).证明完毕.
从牛顿法的讨论中立得: 若
p
k
=
p
k
N
,
k
充
分
大
p_k=p_k^N, k充分大
pk=pkN,k充分大, 则序列
{
x
k
}
\{x_k\}
{xk}二次收敛于
x
∗
x^*
x∗.
在定理8的假设下,
B
k
=
∇
2
f
(
x
k
)
B_k=\nabla^2f(x_k)
Bk=∇2f(xk)时, 合理实施折线算法、子空间最小化算法和近似精确算法都将最终使用牛顿步作为迭代步, 从而达到二次收敛的速度.
- 在折线算法和二维子空间最小化算法中, 牛顿步 p k N p_k^N pkN恰好就是 p k p_k pk的候选. 在定理8的条件下, p k N p_k^N pkN在 k k k充分大时既然是无约束全局极小点, 自然也是有约束全局极小点, 因此 p k = p k N p_k=p_k^N pk=pkN.
- 在近似精确算法中, 若在算法2实施前先确认 p k N p_k^N pkN是否为子问题的解, 最终也会有 p k N p_k^N pkN.
5. 其他的加强版本
5.1 尺度变化
正如我们在第二章中提到过的, 数据的尺度将影响算法的效率. 当
f
f
f尺度不均衡时, 使用圆形的信赖域就不那么合理了. 因此我们转向使用椭圆型的信赖域:
∥
D
p
∥
≤
Δ
,
\Vert Dp\Vert\le\Delta,
∥Dp∥≤Δ,其中
Δ
\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∈Rnminmk(p)=fk+gkTp+21pTBkp,s.t.∥Dp∥≤Δk.当
f
f
f对
x
x
x的第
i
i
i个分量较为敏感时, 设对应的对角元
d
i
i
d_{ii}
dii为较大的数; 反之, 设为较小的数.
构造
D
D
D的信息可由二阶信息提供. 我们同样允许
D
D
D随着迭代而改变; 事实上大多数本章的结论同样适用, 只要每个
d
i
i
d_{ii}
dii都保持在预设的区间
[
d
l
o
,
d
h
i
]
[d_{lo},d_{hi}]
[dlo,dhi]中, 其中
0
<
d
l
o
<
d
h
i
<
∞
0<d_{lo}<d_{hi}<\infty
0<dlo<dhi<∞.
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.
∥Dp∥1≤Δk,∥Dp∥∞≤Δ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∈Rnminf(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∈Rnminmk(p)=fk+gkTp+21pTBkp,s.t.xk+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,
xk+p≥0,p≥−Δke,p≤Δke,其中
e
e
e为全1向量. 因此可用有界约束二次规划简单计算.
对于大规模问题,
B
k
B_k
Bk的分解与计算就不太可取了, 而无穷范数同样会带来有界约束问题, 而这可能比原子问题要更好求解.