Loading [MathJax]/jax/output/HTML-CSS/jax.js
  数学杂志  2023, Vol. 43 Issue (3): 267-276   PDF    
扩展功能
加入收藏夹
复制引文信息
加入引用管理器
Email Alert
RSS
本文作者相关文章
朱铁锋
强Wolfe线搜索下一个新的优化算法
朱铁锋    
内蒙古财经大学统计与数学学院, 内蒙古 呼和浩特 010070
摘要:本文主要研究了一个新的优化算法. 首先, 利用给出的新的公式和强Wolfe线搜索, 证明了该算法在不要求搜索方向满足共轭性条件下具有充分下降性和全局收敛性; 其次, 利用目标函数为一致凸函数的假设, 证明了该算法具有线性收敛速率; 最后, 利用数值试验, 验证了新算法是有效的、可行的.
关键词无约束优化    共轭梯度法    强Wolfe线搜索    全局收敛性    
A NEW OPTIMIZATION ALGORITHM UNDER STRONG WOLFE LINE SEARCH
ZHU Tie-feng    
School of Statistics and Mathematics, Inner Mongolia University of Finance and Economics, Hohhot 010070, China
Abstract: In this paper, a new optimization algorithm is studied. Firstly, by using the new formula and strong Wolfe line search, it is proved that the algorithm has sufficient descent and global convergence without requiring the search direction to satisfy the conjugation. Secondly, using the assumption that the objective function is uniformly convex, it is proved that the algorithm has linear convergence rate. Finally, numerical experiments show that the new algorithm is effective and feasible.
Keywords: unconstrained optimization     CG method     strong Wolfe line search     global convergence    
1 引言

优化技术在众多领域有着广泛的应用, 受到高度重视[1-3]. 无约束最优化问题的一般形式为

minf(x),xRn, (1.1)

f:RnR是连续可微函数. 共轭梯度法因其存储量小, 仅需一阶导数信息, 不需大规模矩阵求逆运算等优点, 被认为是求解(1.1)的一类非常有效的方法[4-6]. 共轭梯度法求解(1.1) 的一般迭代公式为:

xk+1=xk+αkdk, (1.2)

其中αk为歩长因子, 可通过精确线搜索或非精确线搜索求得. dkf(x)xk点的下降方向, 通常定义为

dk={g1k=1gk+βkdk1k2, (1.3)

其中gk=f(xk), 一般情况下要求gTkdk<0, 更进一步要求dk满足充分下降性[7], 即满足

gTkdkcgk2. (1.4)

βk是一标量, βk的不同选取, 对应不同的共轭梯度法. 较著名的有

βFRk=gk2gk12(Fletcher-Reeves[8], 1964),
βPRPk=gTkyk1gk12(Polak-Ribière-Polyak[9], 1969),
βDYk=gk2dTk1yk1(Dai-Yuan[10], 1999),

等, yk1=gkgk1. 为得到上述方法的全局收敛性, 一般需步长αk满足强Wolfe条件, 即满足

f(xk+αkdk)f(xk)+ραkgTkdk, (1.5)
σgTkdkg(xk+αkdk)TdkσgTkdk, (1.6)

其中0<ρ<σ<1.

如果优化函数不是二次函数时, 这些算法的计算效率有较大差异. 一般地, 基于非精确线搜索的DY和FR方法具有良好的收敛性能, 但计算效率不如PRP方法. 然而对于一般目标函数, 基于非精确线搜索的PRP方法无法保证产生的搜索方向为下降方向, 无法保证算法的全局收敛性. 为了建立兼具良好数值表现和收敛性质的方法, 近年来, 许多学者提出了改进的共轭梯度法, 这些算法在满足强Wolfe线搜索准则条件下具有充分下降性和全局收敛性. 例如, 文献[11]通过分段函数, 提出一种混合的PRP-WYL共轭梯度法. 文献[12]提出了一种带两个参数的三项共轭梯度法. 文献[13]在PRP公式中引入调节因子, 并据此提出了一个自调节PRP共轭梯度法. Yousif[14]提出一个改进的RMIL共轭梯度法. Sellami和Sellami[15]提出一个改进的FR共轭梯度法. 文献[16]提出一个三参数族共轭梯度法. Dong[17]提出一种改进的PRP共轭梯度法. 其他的改进共轭梯度法见文献[18-20]. 这些共轭梯度法一般要求线搜索方向近似满足Dai-Liao共轭条件[21], 即dTkyk1=ξgTksk1(ξ0), 其中sk1=xkxk1. 当搜索方向不能近似满足共轭条件时, 算法的充分下降和收敛性质将不再成立.

受这些文献的启发, 本文给出一个新的dkβk的计算公式,

dk={g1k=1(βk1)gkβkdk1k2, (1.7)
βk=gk2gk2(gk+gk1)Tdk1, (1.8)

并证明了这类方法在不要求搜索方向为共轭方向, 不要求满足Dai-Liao共轭条件的情况下, 使用强Wolfe线搜索时仍具有充分下降和全局收敛性质, 且当目标函数为一致凸函数时, 新算法具有线性收敛速率. 最后, 我们通过数值试验来验证新算法的优越性.

2 算法及其性质

为证明本文所提出方法的全局收敛性, 需要如下两个常规假设.

(H1) f(x)在水平集Ω:={xRn|f(x)f(x1)}上有下界, 其中x1为算法初始点.

(H2) f(x)在水平集Ω的一个邻域N内连续可微, 且其梯度函数g满足Lipschitz条件, 即存在常数L>0, 满足g(x)g(y)Lxy,x,yN.

基于公式(1.7)和(1.8), 建立如下算法(简称算法A):

Step 1: 给定初值x1Rn, ε>0, ρ(0,1), σ(ρ,1), 令d1=g1, k:=1.

Step 2: 如果gk<ε, 则停止, 否则转Step 3.

Step 3: 由强Wolfe准则计算αk.

Step 4: 由(1.7)和(1.8)计算dk, βk, xk+1=xk+αkdk.

Step 5: 令k:=k+1, 转Step 2.

下面的引理2.1表明由算法A产生的搜索方向满足充分下降性质(1.4).

引理2.1  设目标函数f(x)连续可微, 则算法A产生的搜索方向dk满足gTkdkcgk2.

  当k=1时, gT1d1=g12<1σ+1g12=cg12, 这里c=1σ+1>0. 假设对k1的情形gTk1dk1cgk12成立. 下面证明对k的情形也成立.

gTkdk=gTk[(βk1)gkβkdk1]=(βk1)gk2βkgTkdk1=(gk2gk2(gk+gk1)Tdk11)gk2gk2gk2(gk+gk1)Tdk1gTkdk1=gk2(gk2[gk2(gk+gk1)Tdk1]gTkdk1gk2(gk+gk1)Tdk1)=gk2(gTk1dk1gk2(gk+gk1)Tdk1)=gk2(gTk1dk1gk2gTkdk1gTk1dk1)gk2(gTk1dk1gTkdk1gTk1dk1)=gk2(gTk1dk1gTkdk1+gTk1dk1)gk2(gTk1dk1σgTk1dk1+gTk1dk1)=1σ+1gk2=cgk2.

因此引理得证.

引理2.2  设目标函数f(x)连续可微, 则算法A产生的标量βk满足0<βk<1.

  在强Wolfe准则下, 根据引理2.1, βk的分母

gk2(gk+gk1)Tdk1gk2+σgTk1dk1gTk1dk1=gk2+(σ1)gTk1dk1gk2+c(1σ)gk12gk2.

由于βk的分子分母皆大于零, 且分母大于分子, 因此引理得证.

引理2.3  设目标函数f(x)连续可微, 则算法A产生的搜索方向dk满足dk2gk2+dk12.

  由(1.7)可知, 当k=1时, 引理显然成立. 当k2时, dk(βk1)gk=βkdk1, 上式两端取模的平方, 并移项得到

dk2=2(βk1)gTkdk(βk1)2gk2+(βk)2dk12.

由引理2.1, gTkdk<0, 引理2.2, 0<βk<1, 所以上式第一项大于零, 因此上式(βk1)2gk2+(βk)2dk12, 由三角不等式, 上式(βk1)2gk2+(βk)2dk12gk2+dk12. 因此引理得证.

引理2.4  设目标函数f(x)连续可微, 则算法A产生的步长αk满足αk(σ1)gTkdkLdk2.

  一方面, 根据假设H2可知,

(gk+1gk)Tdk=(g(xk+αkdk)g(xk))Tdkg(xk+αkdk)g(xk)dkL(xk+αkdkxk)dk=αkLdk2.

另一方面, 根据强Wolfe准则可知, (gk+1gk)Tdk=gTk+1dkgTkdk(σ1)gTkdk. 结合上述两方面, 可得

αkLdk2(σ1)gTkdkαk(σ1)gTkdkLdk2.

因此引理得证.

引理2.5  若H1H2成立, {xk}是有算法A产生迭代点列, 则k=2gk4gk2+dk12<+

  由(1.5)及引理2.1, 2.3, 2.4有

f(xk)f(xk+1)ραkgTkdkρ(σ1)(gTkdk)2Ldk2ρ(1σ)c2gk4L(gk2+dk12)=θgk4(gk2+dk12),

这里θ=ρ(1σ)c2L. 因为{f(xk)}单调不增且有下界, 故知k=2(f(xk)f(xk+1))<+, 从而知k=2gk4gk2+dk12<+, 故引理得证.

3 算法的全局收敛性

定理3.1  若H1H2成立, {xk}是由算法A产生迭代点列, 则或者limkinfgk=0, 或者xk无界.

  若limkinfgk=0不成立, 则存在常数ε>0, 对任意k1, 有gkε. 由Φ(α)=α2α+dk12为单调增函数知

ε4ε2+dk12gk4gk2+dk12. (3.1)

{xk}有界, 则由H2{gk2}有界. 即存在M>0, 对任意k2gk2M. 由引理2.3知dk2gk2+dk12M+dk12kM. 由上式(3.1)及引理2.5知

k=2ε4ε2+kMk=2ε4ε2+dk12k=2gk4gk2+dk12+.

k=2ε4ε2+kM=+, 故矛盾, 从而知{xk}无界.

定理3.2  若H1H2成立, 且水平集Ω有界, {xk}是由算法A产生迭代点列, 则limkinfgk=0.

  由水平集Ω有界知{xk}有界, 由定理3.1证明可知limkinfgk=0.

4 线性收敛速率

为证明本文所提出方法的收敛速率, 需要如下假设.

(H3) f(x)是二次连续可微的一致凸函数. 即存在m>0, M>0, 满足my2yT2f(x)yMy2,x,yRn. 若(H3)成立, 根据文献[22]可得到下面两个引理.

引理4.1  若(H3)成立, 则f(x)具有下列性质:

(1) f(x)Rn上有唯一的极小点x.

(2) 水平集Ω有界.

(3) m2xx2f(x)f(x)M2xx2, mxxg(x)Mxx.

(4) 假设(H1), (H2)成立.

引理4.2  若H3成立, {xk}是由算法A产生迭代点列, 且满足limkinfgk=0, 则xkx (k). 这里xf(x)的唯一极小点.

定理4.1  若H3成立, {xk}是由算法A产生迭代点列, 则xkx (k). 进一步, 则或者存在一个无穷子列{xk}kK{1,2,}, 使limkkKgkdk=0; 或者{xk}线性收敛于x.

  由定理3.2知limkinfgk=0, 从而由引理4.2知xkx (k). 若{dkgk}无界, 则必存在无穷点列{xk}kK{1,2,}, 使limkkKdkgk=+, 从而知limkkKgkdk=0. 若{dkgk}有界, 即存在1μ>0, 对任意k1, 有dkgk1μ, 从而有

gkdkμ. (4.1)

gk+1gk=αk102f(xk+ταkdk)dkdτ, 和假设H3

(gk+1gk)Tdk=αk10dTk2f(xk+ταkdk)dkdταkMdk2. (4.2)

又根据Wolfe条件得

(gk+1gk)Tdk(σ1)gTkdk, (4.3)

故由(4.2)和(4.3)知

αk(σ1)gTkdkMdk2(σ1)gTkdk2Mdk2. (4.4)

由引理2.1和(4.1)知

gTkdkgkdkcgk2gkdk=cgkdkcμ. (4.5)

由(1.5), (4.4)和(4.5)知

f(xk)f(xk+1)ραkgTkdkρ(1σ)2M(gTkdkdk)2=ρ(1σ)2M(gTkdkdkgk)2gk2ρ(1σ)c2μ22Mgk2.

η=ρ(1σ)c2μ22M, 由引理4.1(3)知

f(xk)f(xk+1)ηgk2ηm2xkx2ηm2M(f(xk)f(x)).

ω=ηm2M=m2ρ(1σ)c2μ2M2, 则

f(xk)f(xk+1)ω(f(xk)f(x)),

f(xk+1)f(xk)ω(f(xk)f(x)). (4.6)

下面证0<ω<1. 由Cauchy-Schwartz不等式及引理2.1有gkdkgTkdkcgk2, 从而由(4.5)知cμ1, 故

ω=m2ρ(1σ)c2μ2M2m2ρ(1σ)M2<1.

又由(4.6)知

f(xk)f(x)=f(xk)f(xk1)+f(xk1)+f(x)ω(f(xk1)f(x))+(f(xk1)f(x))=(1ω)(f(xk1)f(x))(1ω)k1(f(x1)f(x)),

从而由引理4.1(3)和上式知xkx22m(f(xk)f(x))(1ω)k12(f(x1)f(x))m. 因为xf(x)的唯一极小点, 故f(x1)f(x)>0. 令p=2(f(x1)f(x))m, q=1ω(0<q<1), 则有xkxpqk1, 从而知{xk}线性收敛于x. 定理得证.

5 数值试验

为了检验本文所提出算法的数值效果, 我们从无约束优化问题测试集中选取了部分算例进行测试(具体算例见文献[4]), 并将数值结果与FR, PRP和DY经典算法进行比较. 测试环境为Windows 10操作系统, CPU1.6GHZ 4GB RAM, 所有程序由Matlab R2016a软件实现. 参数设置为ρ=0.04, σ=0.6, 算法的终止条件为gk104或迭代次数超过1000. 测试函数和数值结果见表 1表 2, 其中Functions表示测试函数的名称, NaN/NI/x0/ˉx/f(ˉx)/x/f(x)分别代表程序运行无结果, 迭代次数, 算法初始值, 算法终止时的迭代值, 算法终止时的函数值, 函数最优解, 函数最优值.

表 1 测试函数和x0/x/f(x)

表 2 ˉx/f(ˉx)/NI的数值结果

表 2结果可以看出, FR, PRP和DY算法在数值试验中的表现并不理想, 较多函数寻优失效. 本文提出的新算法具有良好的数值表现, 总体上优于比较的算法, 是可行的, 有效的.

参考文献
[1] Gu R, Yuan Y X. A partial first-order affine-scaling method[J]. Acta Mathematica Sinica, English Series, 2019, 35: 1–16.
[2] Gu C, Zhu D. Convergence of a three-dimensional dwindling filter algorithm without feasibility restoration phase[J]. Numerical Functional Analysis and Optimization, 2016, 37: 324–341. DOI:10.1080/01630563.2015.1133643
[3] 王珏钰, 顾超. 一种非单调滤子信赖域算法解线性不等式约束优化[J]. 数学学报, 2020, 63(6): 601–620. DOI:10.3969/j.issn.0583-1431.2020.06.006
[4] Zhu T F, Yan Z Z, Peng X Y. A modified nonlinear conjugate gradient method for engineering computation[J]. Mathematical Problems in Engineering, 2017, 2017: 1–11.
[5] Gonalves M L N, Prudente L F. On the extension of the hager-zhang conjugate gradient method for vector optimization[J]. Computational Optimization and Applications, 2020, 76(11): 889–916.
[6] 张迎春, 吕全义, 肖曼玉. 复线性方程组的预处理mcg算法[J]. 工程数学学报, 2018, 35(3): 308–318. DOI:10.3969/j.issn.1005-3085.2018.03.006
[7] 简金宝, 尹江华, 江羡珍. 一个充分下降的有效共轭梯度法[J]. 计算数学, 2015, 37(4): 415–424.
[8] Fletcher R, Reeves C. Function minimization by conjugate gradients[J]. Computer Journal, 1964, 7(2): 149–154. DOI:10.1093/comjnl/7.2.149
[9] Polyak B T. The conjugate gradient method in extreme problems[J]. Ussr. Comput. Math. Phys., 1969, 9: 94–112. DOI:10.1016/0041-5553(69)90035-4
[10] Dai Y H, Yuan Y X. A nonlinear conjugate gradient with a strong global convergence property[J]. SIAM journal of optimization, 1999, 10: 177–182. DOI:10.1137/S1052623497318992
[11] 张鹏, 杜学武. 强Wolfe线搜索下一种混合的PRP-WYL共轭梯度法[J]. 重庆师范大学学报(自然科学版), 2020, 171(1): 46–56.
[12] 夏师, 袁功林, 王博朋, 王晓亮. 一种具有充分下降性的三项共轭梯度法[J]. 数学的实践与认识, 2018, 48(23): 96–102.
[13] 江羡珍. 一个自调节Polak-Ribiere-Polyak型共轭梯度法[J]. 应用数学学报, 2017, 3(40): 449–459.
[14] Yousif O O O. The convergence properties of rmil+ conjugate gradient method under the strong wolfe line search[J]. Applied Mathematics and Computation, 2020, 367: 1–8.
[15] Sellami B, Sellami M C E. Global convergence of a modified fletcher-reeves conjugate gradient method with wolfe line search[J]. Asian-European Journal of Mathematics, 2019, 13(4): 1–10.
[16] 景书杰, 赵海燕. 带参数共轭梯度法簇的全局收敛性[J]. 应用数学与计算数学学报, 2014, 28(3): 281–290.
[17] Dong X. A modified nonlinear polak-ribière-polyak conjugate gradient method with sufficient descent property[J]. Calcolo, 2020, 57(3): 1–14.
[18] 夏丽娜, 朱志斌. Wolfe线搜索下的两类修正FR谱共轭梯度法[J]. 应用数学, 2021, 34(3): 647–656.
[19] 段复建, 杨冲, 李向利. 一个自适应Dai-Liao共辆梯度法[J]. 应用数学, 2022, 35(2): 336–342.
[20] 祝子长, 刘丽平. 基于BFGS修正的HSDY混合共轭梯度[J]. 数学杂志, 2022, 42(3): 246–258.
[21] Dai Y H, Liao L Z. New conjugacy conditions and related nonlinear conjugate gradient methods[J]. Applied Mathematics and Optimization, 2001, 43(1): 87–101.
[22] 袁亚湘, 孙文瑜. 最优化理论与方法[M]. 北京: 科学出版社, 1997.