1. 引言
考虑无约束优化问题:
(1)
其中,函数
的光滑函数,由于该方法低存储性,易于计算,目前被广泛运用于石油勘探、大气模拟、航天航空和工程优化等领域的求解问题上 [1]。一般地,求解问题(1),需给定初始点
,共轭梯度法由最初的线性优化推广到非线性优化问题上,用于求解大规模无约束优化问题,其早期的迭代公式如下:
(2)
为搜索步长,
为搜索方向,
的定义如下:
(3)
其中,
,是f在
处的梯度,由(3)式可知,共轭梯度法的两个核心问题分别是步长因子
的计算和搜索方向
的选取,需要寻找合适的步长搜索规则,如弱Wolfe线搜索(WWP)、强Wolfe线搜索(SWP)和推广的Wolfe线搜索,分别如下:
当
和
是常数,
为共轭参数,常用的
公式 [2] [3] [4] [5] 如下:
(4)
其中,
为Euclidean范数,
,一般而言,目标函数为严格凸时,PRP方法与HS方法的数值计算效果优于FR方法和DY方法,但收敛性却没有后两种方法好。当目标函数非凸时,即使采用Curry原则选取步长因子,即
为一维函数
的第一个极小点,也无法保证它们全局收敛,以上方法在收敛性分析和数值计算性能上有所差异。近年来,共轭梯度法的许多变种被广泛研究,在一定程度上继承了经典方法的某些特性。2012年,在文献 [6] 的基础上,Dai等 [7] 提出一种新的DPRP方法,分母变成线性组合的形式,其共轭参数
定义为
(5)
其中
,Dai等人首先证明了该方法在不进行任何线搜索的情况下具有充分下降性,其次证明在Wolfe线搜索或Armijo线搜索下的全局收敛性。并把这个结果扩展到HS方法中 [8],也是进行相应的收敛性分析,数值实验结果表明DPRP方法比文献 [6] 中方法更有效。
2019年,景书杰等 [9] 提出一类改进的谱共轭梯度法,新的共轭系数和谱系数公式定义为
(6)
根据现有的共轭系数公式,构造一个新的共轭系数公式和谱系数公式,从而提出一种新的谱共轭梯度法,保证算法在每次迭代时不依赖于任何线搜索总能产生充分下降的搜索方向,并在Armijo线搜索和一般假设条件下,给出算法的全局收敛性证明。将式(5)的分子或者分母推广到其它共轭梯度法上,或者建立混合共轭梯度法,也具备良好的数值计算效果。更多的可以参看文献 [10] [11] [12] [13] [14]。
文章结构如下:第2节两种新算法的提出;第3节共轭梯度法及其全局收敛性;第4节谱共轭梯度法及其全局收敛性;第5节数值实验和第6节全文总结。
2. 修改的共轭梯度法和谱共轭梯度法
基于以上文献的思想,特别是
和
的构造,本文对文献 [15] 的公式做出如下的修改,给出一个新的
公式
(7)
基于公式(7),采用SWP线搜索条件来修正共轭梯度算法如下:
算法1
Step 1:初始值
,
,令
,
,
,
,
,计算
,若
,则停止。
Step 2:用SWP线搜索公式计算
,
Step 3:令
,若
,则停止,
Step 4:用式(3)和(7)分别计算
,
Step 5:使得
,转Step 2。
谱共轭梯度法作为求解问题(1)的另一方式被提出,通过调整谱系数和共轭参数,建立合适的算法,本文降低线搜索条件,故采用WWP线搜索条件设计谱共轭梯度算法如下:
算法2
Step 1:初始值
,
,令
,
,
,
,
,计算
,若
,则停止。
Step 2:用WWP线搜索公式计算
,
Step 3:令
,若
,则停止,
Step 4:用(7)式计算
,由下式计算搜索方向
Step 5:使得
,转Step 2。
以下常规性假设在共轭梯度法的研究中经常被用到
假设H [9] (H1)定义目标函数
在水平集
有下界,且
为初始点。
(H2) 目标函数
在水平集
的一个领域N内连续可微,其梯度函数满足Lipschitz连续,即存常数
,使得
。
3. 共轭梯度法及其全局收敛性
引理3.1:若假设H成立,考虑序列
,序列
和
由算法1生成,如果
1) 对所有k均成立
2) 存在常数
,使得对任给
,都有
成立,则存在一个充分大的
,使得
时,
满足
(8)
证明:因为
的定义为
(9)
1) 证明分子
成立
2) 将以上化简结果代入式(9)中
因为
则引理3.1得证。
引理3.2:如果参数
,则存在常数
对所有的k,有下式成立:
(10)
证明:数学归纳法:当
,则(10)式成立。
假设
,都有
成立,令(3)式中k为k + 1时与
作内积,结合(8)式得
在上式中用
则有
(11)
利用(11)式递推可得:
由归纳法知,上述引理成立。当
时,充分下降条件对正常数
也成立。
由引理3.2和文献 [1] 引理1.4.1,可得以下引理。
引理3.3:若假设H成立,序列
由算法1生成,
满足
,
由SWP线搜索得到,则Zoutendijk条件成立:
证明:由SWP线搜索得
。
由Lipschitz条件得
,把两式结合,则有
(12)
由SWP线搜索和(12)式得
其中,
,对上式从
求和,由假设H(1)知,
成立,由充分下降条件
成立,则有
以下是算法1的全局收敛性结果。
定理1:若假设H成立,序列
和
由算法1生成,若
,则
。
证明:反证法,即存在常数
,有
两边同除
由SWP线搜索、(8)式和(10)式知
由上式得
与引理3.3矛盾,故定理1得证。
4. 谱共轭梯度法及其全局收敛性
引理4.1:序列
和
由算法2生成,
,都有
。
证:当
时,
成立,
当
时,
故算法2中产生的搜索方向
满足充分下降性。
引理4.2:若假设H成立,
满足
,
满足WWP线搜索,则Zoutendijk条件成立:
定理2:若假设H成立,序列
和
由算法2生成,则
。
证明:假设结论不成立,则存在一个常数
,使得
,因为
由算法2中定义的搜索方向
,两边取范数模平方得
两端同除
,又因为
。
又因为引理3.1
当
时,
,上式写成
所以有
此结论与引理4.2的Zoutendijk条件矛盾,故定理2成立。
5. 数值实验
本节中,我们分析所提出新方法的数值性能,分别与文献 [15] 的方法作比较,记为WSWP,还有文献 [16] 的方法作比较,记为RMIL+,本文的共轭梯度法和谱共轭梯度法分别记为FSWP和PCWWP,无约束测试问题选自文献 [17],算法运行的终止条件为
或迭代次数超过10,000,所有代码实现都在Matlab2016a中进行,数值结果以NI,NF,NG的形式表示,其中,NI指迭代次数,NF指函数取值,NG指梯度取值。“-”指算法运行失效。各符号和参数说明如下:
RMIL + SWP:RMIL + 公式用SWP线搜索,
;
WSPW:韦等提出的公式用SWP线搜索,
;
FSWP:本文提出的共轭梯度法用SWP线搜索,
:
PCWWP:本文提出的谱共轭梯度法用WWP线搜索,
。

Table 1. Numerical results of each method
表1. 各方法的数值计算结果
从表1中可以看出,基于新的参数公式,本文提出的共轭梯度法(FSWP)的数值计算性能优于表中其它方法,能解决绝大部分测试问题,相反,本文提出的谱共轭梯度法收敛性条件减弱,但数值计算性能(PCWWP)却没有共轭梯度法的好,如何调整谱共轭梯度法的两个参数,使之达到更好的计算效果,仍需进一步研究。
6. 总结
本文借鉴已有文献的思路,对经典的共轭梯度法中的共轭参数作简单的分解或变形,而不改变原公式的大致结构,从而提出类似的
新参数公式,并分别在SWP线搜索下建立新的共轭梯度法的全局收敛性分析和WWP线搜索下建立谱共轭梯度法的全局收敛性分析,数值实验与经典方法作比较,本文提出的共轭梯度法更有效。