本文考虑无约束优化问题:
其中$ f:{R^n} \to R $是连续可微函数. 在众多的算法中, 共轭梯度法由于所需储存量小且收敛速度快, 因此被广泛用来求解大规模无约束优化问题.
共轭梯度法的基本迭代格式如下:
其中$ \alpha_k $是由Wolfe线搜索得到的第$ k $步步长; $ d_{k} $是第$ k $步的搜索方向, 其第$ k+1 $步迭代格式如下:
其中$ g_{k+1}=\nabla f(x_{k+1}) $, $ \beta_{k} $是共轭参数.
共轭梯度法常见的Wolfe线搜索有: 标准Wolfe线搜索、强Wolfe线搜索、推广的Wolfe线搜索以及近似Wolfe线搜索. 本文采用强Wolfe线搜索以及近似Wolfe线搜索:
(1) 强Wolfe线搜索的步长$ \alpha_{k} $满足
其中$ 0<\delta<\sigma<1. $
(2) 近似Wolfe线搜索[1]的步长$ \alpha_{k} $满足
其中$ 0<\delta<\sigma<1 $.
共轭参数$ \beta_{k} $经典选取有Hestenes-Stiefel(HS) [2], Fletcher-Reeves(FR) [3], Polak-Ribière-Rolyak(PRP) [4, 5], Conjugate Descent(CD) [6], Liu-Storey(LS) [7]和Dai-Yuan (DY) [8]六种, 其具体表达式如下:
其中$ \|\cdot\| $表示为Euclidean范数, $ {y_k} = {g_{k + 1}} - {g_k} $. 当$ f $是一般连续可微函数或者适用非精确线搜索时, HS、PRP、LS三种方法数值试验效果较好, 但是理论性质较差; FR、CD、DY三种方法理论性质较好, 但是数值试验效果不理想. 为了获得理论收敛性和数值计算效果都更佳的共轭梯度方法, Touati-Ahmed和Storey [9]首次引入混合共轭梯度法, 将数值表现较好的PRP方法与理论收敛性较好的FR方法混合, 其参数如: $ \beta _k^{TS} = \max \{ 0, \min \{ \beta _k^{PRP}, \beta _k^{FR}\} \} . $混合共轭梯度法的提出, 使得共轭梯度方法的理论性质和数值试验都表现的更佳. 随后, 许多学者对混合共轭梯度法进一步进行研究, 见文献[10]、[11]、[12]、[13]等.
2008年, Neculai Andrei [14]为了同时利用HS方法数值试验效果好, DY方法理论性质好这样的优点, 提出了一种修正的混合共轭梯度算法, 其参数$ \beta _k^{HSDY} $是$ \beta _k^{HS} $和$ \beta _k^{DY} $的凸组合, 即:
其中$ {\vartheta _k} \in [0, 1] $. 注意到当$ {\vartheta _k}=0 $时, HSDY方法等价于HS方法; 当$ {\vartheta _k}=1 $时, HSDY方法等价于DY方法. 由(1.3)式可得:
将上式$ {d_{k + 1}} $记为$ {d_{k + 1}^{HD}} $. $ {\vartheta _k} $的计算方式是采用牛顿方向去逼近$ {d_{k + 1}^{HD}} $, 从而获得
Neculai Andrei证明了HSDY方法的收敛性, 其数值试验的结果比HS方法和DY方法都更有效.
2015年Zhifeng Dai [15]等对文献[14]中定理2和定理4进行修正, 并提出条件$ 0 < {c_1} \le {\theta _k} < 1 $可以被删除.
2020年Xiuyun Zheng [16]等对文献[14]中定理2和定理4和文献[15]中定理2.1和定理3.1进行了进一步修正, 并指出条件$ 0 < {c_1} \le {\theta _k} < 1 $不能被删除.
1977年perry [17]和1978年shanno [18]提出自调比无记忆BFGS方法:
即
若删除(1.13)最后一项, 再取$ {\tau _k} = \dfrac{{{{\left\| {{y_k}} \right\|}^2}}}{{s_k^T{y_k}}} $, 则上述方法就退化到2005年Hager和Zhang [1]提出的共轭梯度法, 其共轭参数为:
HSDY方法同时具有HS方法和DY方法各自的优点, 然而HSDY方法是利用牛顿方向去逼近$ {d_{k + 1}} $获得$ {\vartheta _k} $, 在这种情况下要求目标函数是二次可微并且对应的Hesse矩阵是正定的, 但是, 这样一来使得计算复杂、占用内存较大. 因此, 受Perry [17]和shanno [18]思想的启发, 本文提出如下策略计算$ {\vartheta _k} $:
用自调比无记忆BFGS去逼近搜索方向$ {d_{k + 1}} $, 即
计算化简得
其中, $ {\tau _k} $与Dai和Kou [19]文一致, 即
本文将参数$ \tau _k^1 $和$ \tau _k^2 $对应的方法分别记作HSDY1方法和HSDY2方法, 即
为方便后续讨论, 在此先介绍对一些目标函数的基本假设.
假设 (A) 水平集$ \mathcal{L}=\{x\in R^n \mid f(x)\leq f(x_1)\} $是有界的, 其中$ x_1\in R^n $为算法初始点, 即存在常数$ B>0 $, 使得
假设 (B) 目标函数$ f(x) $在水平集$ \mathcal{L} $的某些邻域$ \mathcal{N} $内是连续可微的, 且梯度函数$ g(x) $是Lipschitz连续的, 即存在常数$ L>0 $, 使得
由假设(A)-(B)可知, 存在常数$ \bar{\gamma}\geq0 $, 使得
引理3.1 若$ f(x) $对于满足假设(A)-(B). 考虑具有(1.2)-(1.3)形式的共轭梯度法, 其中$ d_{k} $是一个下降方向即满足$ g_{k+1}^{T}d_{k+1}\leq0 $, $ \alpha_{k} $满足强Wolfe条件(1.4)和(1.5), 则有
引理3.1由Zoutendijk [20]和Wolfe [21, 22] 共同证明, 称(3.4)式为Zoutendijk条件.
下面的定理3.1和定理3.2证明了HSDY1方法和HSDY2方法的下降性.
定理3.1 假设(A)-(B)成立. 考虑HSDY1共轭梯度法, 对任意的$ k\geq0 $, 若$ d_k^T{y_k} \neq 0 $, 则有
证 由(1.3)可知, 当$ k=0 $时, 有$ g^{T}_{1}d_{1}=-\|g_{1}\|^{2} $. 当$ k\geq1 $时, 我们可以得到
接下来对$ {\tau ^1} $进行分类讨论:
当$ {\tau ^1} = \min \left\{ {1, \frac{{{{\left\| y_{k} \right\|}^2}}}{{s_k^T{y_k}}}} \right\}=1 $时, 此时与HSDY方法的证明过程一致, 详见[14]、[15]、[16].
当$ \tau^{1} = \min \left\{ {1, \frac{{{{\left\| {{y_k}} \right\|}^2}}}{{s_k^T{y_k}}}} \right\}={\frac{{{{\left\| {{y_k}} \right\|}^2}}}{{s_k^T{y_k}}}} $时, 则有
在(1.4)-(1.5)式下有$ s_k^T{y_k} > 0 $成立, 所以
由[14]中证明可得
以及
再由(3.8)、(3.9)和(3.10)可知
即$ {g_{k + 1}^T{d_{k + 1}} \le {\rm{0}}} $成立, 故HSDY1方法是具有下降性的. 证毕.
定理3.2 假设(A)-(B)成立. 考虑HSDY2共轭梯度法, 对任意的$ k\geq0 $, 若$ d_k^T{y_k} \neq 0 $, 则有
注3.1 其证明方法与定理3.1一致, 需要注意的是在(1.4)-(1.5)式下, 仍然可以得到$ \frac{{s_k^T{y_k}}}{{{{\left\| {{s_k}} \right\|}^2}}} > 0. $从而HSDY2方法是具有下降性的.
下面定理3.3和定理3.4证明了HSDY1方法和HSDY2方法的充分下降性.
定理3.3 假设(A)-(B)成立. 考虑HSDY1共轭梯度法, 若$ d_k^T{y_k} \neq 0 $成立, 则存在一自适应参数$ c_{1}>0 $使
其中
证 由(1.3)可知, 当$ k=0 $时, 有$ g^{T}_{1}d_{1}=-\|g_{1}\|^{2} $. 此时$ c_{1}= 1. $
当$ k\geq1 $时, 由(3.9)式可知
由(3.5), (3.10)和(3.12)式可知, 存在一自适应参数$ c_{1}>0 $使得
又或者当$ {\tau ^1} = \min \left\{ {1, \frac{{{{\left\| {{y_k}} \right\|}^2}}}{{s_k^T{y_k}}}} \right\} = 1 $时, 有
所以HSDY1方法是具有充分下降性. 证毕.
定理3.4 假设(A)-(B)成立. 考虑HSDY2共轭梯度法, 若$ d_k^T{y_k} \neq 0 $成立, 则存在一自适应参数$ c_{2}>0 $使
证 由(1.3)式, 当$ k=0 $时, 有$ g^{T}_{1}d_{1}=-\|g_{1}\|^{2} $, 此时$ c_{2}=1. $
当$ k\geq1 $时, 由(3.9)式可知:
由(3.10), (3.11)和(3.17)式可知, 存在一自适应参数$ c_{2}>0 $使得
又或者当$ {\tau ^2} = \min \left\{ {1, \frac{{s_k^T{y_k}}}{{{{\left\| {{s_k}} \right\|}^2}}}} \right\} = 1 $时, 则有
所以HSDY2方法是具有充分下降性. 证毕.
定理3.1–定理3.4证明了HSDY1和HSDY2方法的下降性和充分下降性. 接下来, 我们将证明HSDY1和HSDY2方法对一致凸函数具有强收敛性, 再证明HSDY1和HSDY2方法对一般函数具有全局收敛性.
我们先给出一致凸函数的等价定义: 如果存在常数$ \mu>0 $, 使得
定理4.1 假设(A)-(B)成立. 考虑HSDY1共轭梯度法, 其中步长$ {\alpha _k} $满足强Wolfe线搜索(1.4)和(1.5). 若$ f $为一致凸函数, 则有
证 由Lipschitze条件(3.2)式以及$ f $为一致凸函数, 有
当$ {\tau ^1} = \min \left\{ {1, \frac{{{{\left\| {{y_k}} \right\|}^2}}}{{s_k^T{y_k}}}} \right\} = 1 $时, 由(1.3), (4.3) 和(4.4), 利用三角不等式及柯西不等式有
则
当$ \tau^{1} = \min \left\{ {1, \frac{{{{\left\| {{y_k}} \right\|}^2}}}{{s_k^T{y_k}}}} \right\}={\frac{{{{\left\| {{y_k}} \right\|}^2}}}{{s_k^T{y_k}}}} $时, 由(1.3), (4.3)和(4.4), 利用三角不等式及柯西不等式有
根据Zoutentijk条件(3.4)和定理2.3可得:
由(4.6)和(4.9)式可得:
所以(4.2)式成立. 证毕.
接下来, 我们将证明三个重要的引理.
引理4.1 假设(A)-(B)成立. 考虑HSDY1共轭梯度法, 其中步长$ {\alpha _k} $满足强Wolfe线搜索(1.4)和(1.5). 若存在一个常数$ \gamma > 0 $, 则有
则$ d_{k}\neq0 $且
其中$ u_{k}=\frac{d_{k}}{\|d_{k}\|}. $
证明 因为充分下降性条件(3.12)成立, 所以$ d_{k}\neq0 $, 故对于$ u_{k} $的定义是有意义的. 将(2.4)式中的$ \beta _k^{HSDY1} $分为如下两部分:
记
当$ k\geq2 $时, $ d_k=-g_k+\beta_{k-1}d_{k-1} $, 得
由$ \|u_{k}\|=\|u_{k-1}\|=1 $和(4.15)得
又因为$ \delta_{k}\geq0 $, 再根据(4.16)我们可以得到
存在一个自适应参数$ {c_3} > 0 $, 使得$ {c_3} = \frac{{{{\left\| {{g_{k + 1}}} \right\|}^2}}}{{\left| {g_k^T{g_{k + 1}}} \right|}} $. 由(4.13)得
另外, 再根据(4.14), (4.17)和(4.18)可知
最后, 结合(4.11), 再根据(3.4)和(3.12)可以得到
由(4.19)和(4.20)式可知
证毕.
文献[24]中给出的性质($ \ast $), 对于收敛性结果的证明和分析产生了重要的作用. 下面证明HSDY1和HSDY2方法满足性质($ \ast $).
引理4.2 考虑由(1.2), (1.3)以及(2.4)产生的HSDY1, 其中步长$ {\alpha _k} $满足强Wolfe线搜索(1.4)和(1.5), 且(4.12)成立, 则HSDY1方法满足性质($ \ast $), 即若存在常数$ b>1 $和$ \lambda>0 $, 使得对所有的$ k $有$ |\beta_{k}|\leq b \quad \text{ 以及}\quad \|s_{k-1}\|\leq\lambda\Rightarrow |\beta_{k}|\leq\frac{1}{b}. $
证明 因为水平集$ \mathcal{L} $有界, 可知点列$ \{{x_{k}}\} $有界, 由梯度函数$ g $的连续性, 则存在$ \overline{\gamma}>0 $, 使得
根据(1.6), (3.5)和(4.11), 我们可以得到
由(4.23)最左端的不等式得
进一步, 由(4.23)和(4.24)有
再根据(3.5)和(1.6)得
将(4.25)和(4.26)合并得
进而有
其中$ M=\max\left\{1, \dfrac{\sigma}{1-\sigma}\right\} $. 由(4.22)式可以得到$ \|s_{k}\|=\|x_{k+1}-x_{k}\|\leq2\overline{\gamma} $成立.
下面根据(2.4), (4.22), (4.23), (4.28)及$ \|y_{k}\|\leq L\|s_{k}\| $对$ \left| {{\beta _k}} \right| $分类讨论.
对HSDY1方法有
令$ N = \frac{{\left( {L + 1} \right)\left\| {{g_{k + 1}}} \right\|\left\| {{s_k}} \right\|}}{{{c_1}(1 - \sigma ){\gamma ^2}}} $, 则有$ \left| {{\beta _k}} \right| \le N\left\| {{s_k}} \right\| $, 定义$ b=2N\overline{\gamma} $, $ \lambda=\frac{1}{2N^2\overline{\gamma}} $, 则对所有$ k\geq1 $, 有
且
由(4.30)和(4.31)式, HSDY1方法满足性质($ \ast $).
定义4.1 正整数集为$ N^* $, 常数$ \lambda>0 $和一个正整数$ \Delta $, 记
令$ |K_{k, \Delta}^{\lambda}| $为$ K_{k, \Delta}^{\lambda} $中的元素个数.
引理4.3 假设(A)-(B)成立. 考虑形如(1.2), (1.3)和(2.4)的HSDY1方法, 步长$ \alpha_{k} $通过强Wolfe线搜索(1.4)和(1.5)计算得到. 如果(4.11)成立, 则存在常数$ \lambda>0 $, 使得任意$ \Delta\in N^* $和任意指标集$ k_{0} $, 存在$ k\geq k_{0} $, 使得
注4.1 由性质(*)中证明到的HSDY1方法满足性质(A)以及$ \|d_{k}\|^{2} $至多线性增长, 类似于文献[24]中引理3.5的证明可得到上述引理的证明.
下面是HSDY1方法全局收敛性定理.
定理4.2 假设(A)-(B)成立. 考虑形如(1.2), (1.3)和(2.5)式的HSDY1方法, 步长$ \alpha_{k} $满足强Wolfe线搜索(1.4) 和(1.5), 则有
由引理4.1-4.3, HSDY1方法满足性质(*)以及$ \{{x_{k}}\} $是有界的, 参照文献[24]中定理4.3证明, 可以证得上述定理.
HSDY2方法的全局收敛性证明与HSDY1的方法类似.
由于DK方法是当前共轭梯度算法研究领域中公认的数值计算效果最好的方法之一, 在这一小节中, 为了验证HSDY, HSDY1, HSDY2方法的有效性, 我们将这三种方法同DK+ 方法作数值比较, 其中$ \eta =0.5 $. 本文选取文献[23]中的62个测试问题, 维数1000-100000. 计算中这四个方法的步长$ \alpha_k $都通过近似Wolfe线搜索(1.6)和(1.7)计算获得, 线搜索中的具体参数取$ \delta=0.1, \sigma=0.9 $. 算法的测试环境为华硕Windows 10操作系统Intel(R) Core(TM) i5-3337U CPU@1.80GHz 1.80GHz, 4GB内存.
对HSDY, HSDY1, HSDY2和DK方法的数值进行数据处理结果见表 1. 我们得到下面的比值表(见表 1)和性能曲线图(见图 1–4). 通过表 1中的比值结果可以看出, HSDY、HSDY1以及HSDY2方法都优于DK方法, 且HSDY2方法的计算效果最好.
本文采用文献[25]的技术得到以下性能曲线图。下图 1–4分别对应的是DK, HSDY, HSDY1以及HSDY2四种方法, 在近似Wolfe线搜索条件下解决测试问题所用的计算时间, 函数计算次数, 梯度计算次数以及迭代次数的性能曲线图. 从图中也可以看出HSDY, HSDY1以及HSDY2方法都优于DK方法, 且HSDY1方法的计算效果最好.
本文通过新的放缩方式, 提出两个参数自适应选取的HSDY共轭梯度法; 通过采用BFGS方法而不是牛顿法去逼近搜索方向, 在此条件下, 不必要求目标函数是二次可微的并且对应的Hesse矩阵是正定的. 本文提出的这两类共轭梯度法HSDY1, HSDY2均可以证明在强Wolfe线搜索条件下具有全局收敛性, 这在理论上是很好的; 在计算上与当前公认的数值计算最好的DK共轭梯度法都是可比的.