摘要: 提出一種新的求解非線性方程組的非單調(diào)自適應(yīng)加速Levenberg-Marquardt算法, 該算法使用一種新的自適應(yīng)函數(shù)更新Levenberg-Marquardt參數(shù), 這種Levenberg-Marquardt
參數(shù)的更新方式可提高過于成功的迭代中模型與目標函數(shù)的一致性, 從而加快算法的收斂速度. 數(shù)值實驗結(jié)果表明, 該算法具有良好的數(shù)值計算性能.
關(guān)鍵詞: 自適應(yīng)函數(shù); 非單調(diào)技術(shù); 加速Levenberg-Marquardt算法
中圖分類號: O221.2" 文獻標志碼: A" 文章編號: 1671-5489(2024)03-0538-09
Nonmonotonic Adaptive Accelerated Levenberg-MarquardtAlgorithm for Solving Nonlinear Equations
CAO Mingyuan1, LI Rong1, YAN Xueli1, HUANG Qingdao2
(1. School of Mathematics and Statistics, Beihua University, Jilin 132013, Jilin Province, China;
2. College of Mathematics, Jilin University, Changchun 130012, China)
Abstract: We proposed a new nonmonotonic adaptive accelerated Levenberg-Marquardt algorithm for solving nonlinear equat
ions. The algorithm used a new adaptive function to update the Levenberg-Marquardt parameter, which could enhance the consistency between the model and objective fu
nction during too-successful iterations, thereby accelerating the convergence rate of the algorithm. Numerical experimental results show that the proposed algorithm has good
numerical computational performance.
Keywords: adaptive function; nonmonotonic technique; accelerated Levenberg-Marquardt algorithm
收稿日期: 2023-08-20.
第一作者簡介: 曹名圓(1986—), 女, 滿族, 博士, 副教授, 從事最優(yōu)化理論及其應(yīng)用的研究, E-mail: cmy0918@beihua.edu.cn.
通信作者簡介: 黃慶道(1968—), 男, 漢族, 博士, 教授, 從事最優(yōu)化理論及其應(yīng)用的研究, E-mail: huangqd@jlu.edu.cn.
基金項目: 吉林省自然科學基金重點項目(批準號: YDZJ202101ZYTS167; YDZJ202201ZYTS303)和北華大學研究生創(chuàng)新項目(批準號: 2022033).
0" 引" 言
考慮非線性方程組
F(x)=0,(1)
其中F(x):
瘙 綆 n→
瘙 綆 m是一個連續(xù)可微函數(shù). Levenberg-Marquar
dt(LM)方法[1-2]是求解方程組(1)常用的迭代方法, 該方法在第k次迭代中計算試探步為
dk=-(JTkJk+λkI)-1(JTkFk),(2)
其中Fk=F(xk), Jk=J(xk)是F(x)在xk處
的Jacobi矩陣, I是一個單位矩陣, λkgt;0是LM參數(shù). LM參數(shù)的選擇對LM方法的數(shù)值性能至關(guān)重要, 目前已經(jīng)有許多有效的LM參數(shù)[3-4].
為克服單調(diào)LM算法的局限性, 許多研究者將非單調(diào)技術(shù)引入到LM方法中. Chamberlain等[5]首先提出約束優(yōu)化的Watchdog技術(shù), 放寬了標準線搜索條件, 以克服約束優(yōu)化的m
arotos效應(yīng); Grippo等[6]提出了應(yīng)用于牛頓方法的非單調(diào)線搜索技術(shù), 并將該技術(shù)應(yīng)用于截斷牛頓方法[7]中; Amini等[8]提出了針對LM方法的非單調(diào)線
搜索技術(shù); Kimiaei[9]對文獻[8]中的非單調(diào)技術(shù)進行了改進, 將新的非單調(diào)技術(shù)應(yīng)用于LM方法中; Huang等[10]將提出的非單調(diào)的LM方法與文獻[11]中的單調(diào)LM方
法進行了比較, 數(shù)值實驗結(jié)果表明, 帶有非單調(diào)技術(shù)的算法比沒有非單調(diào)技術(shù)的算法更有效. 因此, 本文將在LM方法中引入非單調(diào)技術(shù), 在保證全局收斂性的前提下減少總迭代次數(shù)和運行時間.
除上述非單調(diào)技術(shù)的引入外, 自適應(yīng)技術(shù)的引入也能減少算法迭代次數(shù), 加快算法的收斂速度. Hei[12]在信賴域方法中提出了一個R函數(shù), 使用自適應(yīng)更新技術(shù)
更新信賴域半徑Δk, 即Δk+1=R(rk)Δk. 此外, Walmag等[13]提出了一個Λ函數(shù)更新信賴域半徑, 即Δk+1=
Λ(rk)Δk, 其中Λ是一個關(guān)于rk的非負有界函數(shù). 在此基礎(chǔ)上, Lu等[14]研究表明, 在過于成功的迭代中, 模型與目標函數(shù)之間的一致性欠佳, 因此提出了一
個L函數(shù)更新信賴域半徑. 結(jié)果表明, L函數(shù)包含了R函數(shù)和Λ函數(shù)的一些有利特征, 并且該方法在過于成功的迭代中更有效.
本文將構(gòu)造一個新的自適應(yīng)更新函數(shù)更新LM參數(shù)以提高算法的效率. 首先將一種有效的非單調(diào)技術(shù)應(yīng)用于LM方法, 該方法在不影響算法全局收斂性的情況下允許函數(shù)值有所增長; 然
后選擇一種有效的LM參數(shù)更新試探步, 當?shù)蛄羞h離最優(yōu)解集時, 接受大量次不成功的迭代, 避免迭代點在局部區(qū)域來回跳躍的情況; 最后構(gòu)造一種自適應(yīng)函數(shù)更新參數(shù)μ
k, 充分利用實際下降量與預測下降量的比值信息判斷是否接受試探步, 提高了過于成功的迭代中模型與目標函數(shù)的一致性. 此外, 證明了本文的非單調(diào)自適應(yīng)加速
LM算法在適當條件下具有全局收斂性, 并在局部誤差界條件下保持二階收斂速率. 數(shù)值計算結(jié)果表明, 該方法具有較好的數(shù)值性能.
1" 算法設(shè)計
定義價值函數(shù)‖F(xiàn)k‖2在第k次迭代的實際下降量與預測下降量之間的比值為rk=AredkPredk, 該比值決定了是否接受試探步dk, 其中實際下降量和預測下降量分別為
Aredk=‖F(xiàn)k‖2-‖F(xiàn)(xk+dk)‖2,(3)
Predk=‖F(xiàn)k‖2-‖F(xiàn)k+Jkdk‖2.(4)
本文將非單調(diào)技術(shù)應(yīng)用于LM方法, 使用實際下降量
Aredk=Λk-‖F(xiàn)(xk+dk)‖2,(5)
這里
Λk=‖F(xiàn)k‖2,k=0,
∑m(k)-1i=0ηm(k)-iFk(i)+‖F(xiàn)k
‖2∑m(k)-1i=0ηm(k)-i+1,kgt;0,(6)
其中: m(0)=0, 0≤m(k)≤min{m(k-1)+1,N}, N∈
瘙 綃 ; η∈[ηmin,ηmax]," ηmin∈[0,1), ηmax∈[ηmin,1];
Fk={‖F(xiàn)k-j‖2}0≤j≤m(k)," k∈
瘙 綃 ;
Fk(i)=‖F(xiàn)k‖2,klt;N,
‖F(xiàn)k-N+i+1‖2,k≥N,
式中
i∈[0,k],klt;N,[0,N-1],k≥N.
為存儲新的信息并去除舊信息, 非單調(diào)技術(shù)利用序列{Fk}確定阻尼參數(shù). 本文所用的比值為
rk=AredkPredk=Λk-‖F(xiàn)(xk+dk)‖
2‖F(xiàn)k‖2-‖F(xiàn)k+Jkdk‖2.(7)
在LM方法中使用非單調(diào)線搜索技術(shù), 可以在連續(xù)迭代時不強制執(zhí)行目標函數(shù)值的嚴格單調(diào)性, 即函數(shù)值不需要在每次迭代中嚴格減少, 并且允許較大的步長, 因此它可能是整個優(yōu)化
過程的一個更好選擇. 特別是當所求問題存在彎曲狹谷的情況下, 非單調(diào)技術(shù)可增加算法尋找到全局最優(yōu)值的可能性并提高算法的收斂速度.
本文選擇LM參數(shù)
λk+1=μk+1‖F(xiàn)k+1‖21+‖F(xiàn)k+1‖2.(8)
顯然, 當{xk}遠離解集,‖F(xiàn)k‖非常大時, ‖F(xiàn)k+1‖21+‖F(xiàn)k+1‖2接近于1, λk接近于μk, 選擇這個LM參數(shù)能提高算法的效率.
在過于成功的迭代中, 目標函數(shù)的實際下降量明顯大于預測下降量. 雖然目前的迭代允許算法向最優(yōu)方向發(fā)展, 但模型函數(shù)對目標函數(shù)的近似并不準確. 所以為克服迭代在過于
成功時的缺陷, 本文構(gòu)造了更新參數(shù)μk+1的自適應(yīng)函數(shù):
K(rk)=β1+(β2-β1)exp--rk+p1p12,rk≤p1,
β2,p1lt;rklt;p2,1-β3exp{p2}1-exp{p2}-(1-β3)exp{p2}1-exp{p2}exp{
-rk+p2}-12,rk≥p2,(9)
其中β1,β2,β3,p1,p2是常數(shù), 并且0lt;β2lt;1lt;β1≤β3, 0lt;p1lt;p2lt;1. 因此, K(rk)滿足以下性質(zhì):
1) limrk→∞K(rk)=β1;
2) limrk→p1 K(rk)=β2;
3) limrk→p2 K(rk)=12;
4) limrk→+∞ K(rk)=1-β3exp{p2}1-exp{p2}-12.
本文參數(shù)μk+1的更新方式為
μk+1=max{m,K(rk)μk}.(10)
當比值rk接近于1, 即模型函數(shù)提供了目標函數(shù)的精確局部近似時, 接受試探步dk并減小μk; 否則, 拒絕試探步dk并增大
μk. 在這種參數(shù)μk+1的更新方式中, 當比值rk充分大于1, 即迭代過于成功時, 選擇增大μk
可提高在過于成功的迭代中模型與目標函數(shù)的一致性, 避免迭代點在局部跳躍, 加快算法的收斂速度, 增強算法的有效性和穩(wěn)定性.
由式(2)可知試探步dk是凸優(yōu)化問題:
mind∈
瘙 綆 n{‖F(xiàn)k+Jkd‖2+λk‖
d‖2}φk(d)
的解, 如果Δk=‖-(JTkJk+λkI)-1(JTk
Fk)‖, 則dk也是信賴域子問題
mind∈
瘙 綆 n‖F(xiàn)k+Jkd‖2,
s.t. ‖d‖≤Δk
的解. 根據(jù)文獻[15]的結(jié)論, 有
Predk≥‖JTkFk‖min‖dk‖,‖JTkFk‖‖JTkJk‖.(11)
在上述分析的基礎(chǔ)上, 本文提出一種新的非單調(diào)自適應(yīng)加速LM(nonmonotone adaptive accelerated Levenberg-Marquardt, NALM)算法.
算法1" NALM算法.
初始點選取: 給定x0∈
瘙 綆 n, μ0gt;mgt;0, 0≤p0lt;p1lt;p2lt;1, 0lt;β2lt;1lt;β1≤β3, εgt;0. 令 k∶=0.
步驟1) 計算Fk和Jk. 如果‖JTkFk‖≤ε, 則停止計算; 否則, 通過式(8)求自適應(yīng)LM參數(shù)λk.
步驟2) 求解
(JTkJk+λkI)d=-JTkFk(12)
得到dk.
步驟3) 利用式(4),(5),(7)分別計算Predk,Aredk和rk.
步驟4) 設(shè)
xk+1=xk+dk,rk≥p0,
xk,rklt;p0.(13)
步驟5) 利用式(9)計算K(rk), 并利用式(10)更新參數(shù)μk+1.
令k∶=k+1, 返回步驟1).
2" 收斂性分析
2.1" 全局收斂性
假設(shè)1"nbsp; (i) 對任意給定的x0∈
瘙 綆 n, 水平集L(x0)∶={x
∈
瘙 綆 n‖F(xiàn)(x)‖≤‖F(xiàn)(x0)‖}是有界的.
(ii) F(x)是連續(xù)可微函數(shù), F(x
)和Jacobi矩陣J(x)是Lipschitz連續(xù)的, 即存在正常數(shù)L1和L2, 滿足
‖J(x)-J(y)
‖≤L1‖x-y‖," x,y∈
瘙 綆 n,(14)
‖F(xiàn)(x)-F(y)‖≤L2‖x-y‖," x,y∈
瘙 綆 n.(15)
由式(14),(15), 可得
‖F(xiàn)(y)-F(x)-J(x)(y-x)‖≤L1‖y-x‖2," x,y∈
瘙 綆 n,(16)
‖J(x)‖≤L2," x∈
瘙 綆 n.(17)
記NFl(k)∶=max{Fk}, k∈
瘙 綃 .
引理1" 若序列{xk}由NALM算法產(chǎn)生, 則:
1) 對所有的k∈
瘙 綃 , 有xk∈L(x0);
2) {NFl(k)}k≥0是一個收斂序列.
證明: 1) 首先證明
Λk≤NFl(k).(18)
由定義, 有
Λk=∑m(k)-1i=0ηm(k)-iFk(i)+‖F(xiàn)k‖2∑
m(k-1)i=0ηm(k)-i+1≤∑m(k)-1i=0ηm(k)-iNFl(k)+NFl(k)∑m(k-1)i=0ηm(k)-i+1=NFl(k),
即式(18)成立. 另一方面, 由于xk+1被算法接受, 故
Λk-‖F(xiàn)k+1‖2≥‖F(xiàn)k‖2-‖F(xiàn)k+1‖2=Aredk≥p0Predkgt;0,
即
‖F(xiàn)k+1‖2≤Λk.(19)
下面使用數(shù)學歸納法證明. 當k=0時, 有Λ0=‖F(xiàn)0‖2, 所以‖F(xiàn)1‖2≤‖F(xiàn)0‖2成立. 假設(shè)對所有的i=1,2,…,k, 都有xk∈L(x0), 即對所有的i=1,2,…,k, 都有‖F(xiàn)i‖2≤‖F(xiàn)0‖2
成立, 則NFl(k)≤‖F(xiàn)0‖2. 結(jié)合式(18),(19), 可得
‖F(xiàn)k+1‖2≤Λk≤NFl(k)≤‖F(xiàn)0‖2.
因此xk+1∈L(x0), 所以有{xk}k≥0包含在L(x0)中.
2) 由式(18),(19), 有
NFl(k+1)=" max{Fk+1}=max0≤j≤N{‖F(xiàn)k+1-j‖2}
≤max{max0≤j≤N{‖F(xiàn)k-j‖2},‖F(xiàn)k+1‖2}=" max{NFl(k),Λk}=NFl(k),
所以{NFl(k)}k≥0是一個遞減序列, 由假設(shè)1中(i)和xk∈L(x0)可得{NFl(k)}k≥0是一個收斂序列.
定理1" 在假設(shè)1的條件下, 由NALM算法生成序列{xk}, 則
limk→∞‖JTkFk‖=0.(20)
證明: 反證法. 假設(shè)存在一個正常數(shù)εgt;0和無窮多個k, 使得
‖JTkFk‖≥ε.(21)
首先證明
limk→∞ Λk=limk→∞‖F(xiàn)k‖2.(22)
由引理1中2)以及Λk≤NFl(k)可知Λk存在極限. 對不等式(18),(19)兩邊取極限可得
limk→∞‖F(xiàn)k‖2=limk→∞‖F(xiàn)k+1‖2≤limk→∞ Λk,
limk→∞ Λk≤limk→∞ NFl(k)≤limk→∞‖F(xiàn)k‖2.
結(jié)合上述兩個不等式可知式(22)成立.
由于dk被算法接受, 所以
Λk-‖F(xiàn)k+1‖2≥p0Predk.
根據(jù)式(11),(17),(21), 可知
Λk-‖F(xiàn)k+1‖2≥p0‖JTkFk‖min
‖dk‖,‖JTkFk‖‖J
TkJk‖≥p0εmin‖dk‖,εL22.(23)
結(jié)合不等式(23),(22), 可得
limk→∞ dk=0.(24)
從而由式(2),(8),(17),(21), 有
limk→∞ μk=+∞.(25)
另一方面, 由式(3),(11),(17),(21),(24), 有
rk-1=" AredkPredk-1=‖F(xiàn)k+Jkdk
‖2-‖F(xiàn)k+1‖2Predk=" ‖F(xiàn)k+Jkdk‖O(‖dk
‖2)+ O(‖dk‖4)Predk≤" ‖F(xiàn)k+Jkdk‖O(‖dk‖2)+O(‖dk‖4)‖JTkFk‖min‖dk‖,
‖JTkFk‖‖JTkJk‖≤O(‖dk‖2)‖dk‖→0.
再結(jié)合式(5)~(7), 可得
rk=AredkPredk=Λk-‖F(xiàn)k+1‖2Predk
≥‖F(xiàn)k‖2-‖F(xiàn)k+1‖2Predk=rk→1.
根據(jù)μk的更新規(guī)則, 可知存在一個正常數(shù)μgt;m, 使得對所有足夠大的k, μklt;μ都成立, 這與式(25)矛盾, 從而式(20)成立.
2.2" 局部收斂性
下面利用奇異值分解技術(shù)研究算法的局部收斂性. 假設(shè)由算法生成的序列xk收斂于非空解集X*, 并且位于x*∈X*的某個鄰域內(nèi).
假設(shè)2" (i) F(x)是連續(xù)可微函數(shù), J(x)
在N(x*,b1)上Lipschitz連續(xù), b1lt;1, 即存在一個正常數(shù)L1, 滿足
‖J(y)-J(x)‖≤L1‖y-x‖,"
x,y∈N(x*,b1)={x‖x-x*‖≤b1}.(26)
(ii) ‖F(xiàn)(x)‖在x*∈X*的某鄰域內(nèi)提供了一個方程組(1)的局部誤差界, 即存在一個正常數(shù)c1gt;0, 滿足
‖F(xiàn)(x)‖≥c1dist(x,X*)," x∈N(x*,b1),(27)
其中dist(x,X*)是x到X*的距離.
根據(jù)式(26), 有
‖F(xiàn)(y)-F(x)-J(
x)(y-x)‖≤L1‖y-x‖2,(28)
‖F(xiàn)(y)-F(x)‖≤L2‖y-x‖," x,y∈N(x*,b1),(29)
其中L2是一個正常數(shù). 下面使用xk∈X*表示滿足
‖xk-xk‖=dist(xk,X*)(30)
的向量. 為得到序列{xk}的局部收斂速度, 提出以下引理.
引理2" 在假設(shè)2的條件下, 對所有足夠大的k, 存在一個常數(shù)c2gt;0, 滿足
‖dk‖≤c2‖xk-xk‖.
證明: 由xk的定義式(30)可知
‖xk-x*‖≤‖xk-xk‖+‖xk-x*‖≤2‖xk-x*‖≤b1,
即x∈N(x*,b1). 根據(jù)式(13), 有
λk=μk‖F(xiàn)k‖21+‖F(xiàn)k‖2=μk1-11
+‖F(xiàn)k‖2≥m1-11+c21‖xk-xk‖2
=mc21‖xk-xk‖21+c21‖xk-xk‖2.
根據(jù)不等式(28), 得
‖F(xiàn)k+Jk(xk-xk)‖2=‖F(xiàn)(xk)-F
k-Jk(xk-xk)‖2≤L21‖xk-xk‖4.
由于dk是φk(d)的最小點, 因此
‖dk‖2≤" 1λkφk(dk)
≤1λkφk(xk-xk)=1λk(‖F(xiàn)k+Jk(x
k-xk)‖2+λk‖xk-xk‖2)≤
1+c21‖xk-xk‖2mc21‖xk-xk‖2
(L21‖xk-xk‖4)+‖xk-xk‖2=O(‖xk-xk‖2).
所以存在一個常數(shù)c2gt;0, 使得‖dk‖≤c2‖xk-xk‖.
引理3" 在假設(shè)2的條件下, 對所有足夠大的k, 存在一個正常數(shù)Mgt;m, 滿足μk≤M.
證明: 首先證明對足夠大的k, 下面的不等式成立:
Predk=‖F(xiàn)k‖2-‖F(xiàn)k+Jkdk‖2≥minc12c2,c12‖F(xiàn)k‖‖dk‖.(31)
考慮如下兩種情形.
情形1) 如果‖xk-xk‖≤‖dk‖, 則根據(jù)dk的定義和假設(shè)2, 有
‖F(xiàn)k‖-‖F(xiàn)k+Jkdk‖≥‖F(xiàn)k‖-‖F(xiàn)k+Jk(xk-xk)‖≥c1‖xk-
xk‖-L1‖xk-xk‖2≥c12c2‖dk‖.(32)
情形2) 如果‖xk-xk‖gt;‖dk‖, 則有
‖F(xiàn)k‖-‖F(xiàn)k+Jkdk‖≥" ‖
Fk‖-Fk+‖dk‖
‖xk-xk‖Jk(xk-xk)
≥" ‖dk‖‖ xk-xk‖(‖F(xiàn)k‖-‖F(xiàn)k+Jk(xk-xk)‖)≥" ‖dk‖‖xk-xk‖(c1‖xk-xk‖-L1‖xk-xk‖2)≥c12‖dk‖.(33)
結(jié)合不等式(32),(33)以及引理2可知
Predk=" (‖F(xiàn)k‖+‖F(xiàn)k+Jkdk‖)(‖F(xiàn)k‖-‖F(xiàn)k+Jkdk‖)≥" ‖F(xiàn)k‖(‖F(xiàn)k‖-‖F(xiàn)k+Jkdk‖)≥minc12c2,c12‖F(xiàn)k‖‖dk‖,(34)
即式(31)成立. 因此, 由式(31)、 假設(shè)2和引理2, 有
rk-1=" AredkPredk-1=‖F(xiàn)k+Jkdk‖O(‖dk‖2)+O(‖dk‖4)Predk≤" ‖F(xiàn)k‖O(‖dk‖2)+O(‖dk‖4)O(‖F(xiàn)k‖‖dk‖)=O(‖dk‖)→0.
再結(jié)合式(5)~(7)可得
rk=AredkPredk=Λk-‖F(xiàn)k+1‖2Predk≥‖
Fk‖2-‖F(xiàn)k+1‖2Predk=rk→1.
所以rk→1, 從而存在一個常數(shù)Mgt;m, 使得對所有足夠大的k, 都有μk≤M.
根據(jù)文獻[16]中定理1的證明結(jié)果, 在不失一般性的情況下, 假設(shè)對所有x∈N(x*,b1)∩X*都有秩ran
k(J(x*))=r, 假設(shè)J(x)的奇異值分解為
J(x)=(1,2)Σ1000
T1T2
=1Σ1T1,(35)
其中Σ1=diag(σ1,σ2,…,σr), σ1≥σ2≥…≥σrgt;0, 并且U=(1,2), V=(1,2)是正交矩陣.
相應(yīng)地, 考慮J(xk)的奇異值分解為
J(xk)=(U1,U2,U3)Σ1000Σ20000
VT1VT2VT3=U1Σ1
VT1+U2Σ2VT2,(36)
其中U=(U1,U2,U3), V=(V1,V2,V3)是正交矩陣, Σ1=diag(σ1,σ2,…,σr), σ1≥σ2≥…≥
σrgt;0, 并且 Σ2=diag(σr+1,σr+2,…,σr+q), σr+1≥σr+2≥…≥σr+qgt;0.
引理4" 在假設(shè)2的條件下, 對所有足夠大的k, 有:
1) ‖U1UT1Fk‖≤O(‖xk-xk‖);
2) ‖U2UT2Fk‖≤O(‖xk-xk‖2);
3) ‖U3UT3Fk‖≤O(‖xk-xk‖2);
4) ‖F(xiàn)k+Jkdk‖≤O(‖xk-xk‖2).
證明: 結(jié)論1)~3)的證明可參照文獻[17]中引理4.1的證明得到, 故略. 為證明結(jié)論4), 由式(14)和矩陣攝動理論[18], 得
‖diag(Σ1-Σ1,Σ2,0)‖≤‖J
k-J(xk)‖≤L1‖xk-xk‖,
即
‖Σ1-Σ1‖≤L1‖xk-xk‖,
‖Σ2‖≤L1‖xk-xk‖.(37)
因為{xk}收斂于解集X*, 假設(shè)L1‖xk-xk‖≤σr2對所有足夠大的k都成立, 則由式(37), 有
‖Σ-11‖≤1σr-L1‖xk-xk‖≤2σr.(38)
再結(jié)合式(29)、 引理3以及F(xk)=0, 可知LM參數(shù)滿足
λk=μk‖F(xiàn)k‖21+‖F(xiàn)k‖2≤μk‖F(xiàn)k‖2≤ML22‖xk-x
k‖2.(39)
由式(12)和式(36), 可得
dk=-V1(Σ21+λkI)-1Σ1UT1
Fk-V2(Σ22+λkI)-1Σ2UT2Fk,
Fk+Jkdk=" Fk-U1Σ1(Σ21+λkI)-1Σ1UT1Fk-U2Σ2(Σ22+λkI)-1Σ2UT2Fk=" λkU1(Σ21+λkI
)-1UT1Fk+λkU2(Σ22+λkI)-1UT2Fk+U3UT3Fk.
再結(jié)合式(38)和式(39), 有
‖F(xiàn)k+Jkdk‖≤" λk‖Σ-21‖‖UT1Fk‖+‖U
T2Fk‖+‖U3UT3Fk‖≤
4L22M‖xk-xk‖3σ2r
+O(‖xk-xk‖2)+O(‖xk-xk‖2)= O(‖xk-xk‖2).
定理2" 假設(shè)序列{xk}由NALM算法生成, 則在假設(shè)2的條件下, 序列{xk}二次收斂到問題(1)的解.
證明: 由假設(shè)2、 引理2和引理4中4), 有
c1‖xk+1-xk+1‖≤‖F(xiàn)(xk+1)‖
=‖F(xiàn)(xk+dk)‖≤‖F(xiàn)k+Jkdk‖+O(‖dk‖2)
=O(‖xk-xk‖2).(40)
另一方面, 有
‖xk-xk‖=dist(xk,X*)
≤‖xk+1-xk‖≤‖xk+1-xk+1‖+‖dk‖.
由引理2, 對足夠大的k有
‖xk-xk‖≤2‖dk‖≤O(‖xk-xk‖).
因此, ‖dk‖=O(‖xk-xk‖). 結(jié)合式(40), 可推出
‖dk+1‖≤O(‖dk‖2),
表明{xk}二次收斂到集合X*的一個解.
3" 數(shù)值實驗
下面將本文提出的NALM算法與非單調(diào)LM(nonmonotone Levenberg-Marquardt, NLM)算法[8]、 自適應(yīng)LM(adaptive Levenberg-Marquardt, ALM)算法[19
]的數(shù)值性能進行比較, 以驗證本文算法的有效性. 數(shù)值實驗的測試函數(shù)集是通過修改文獻[20]中給出的非奇異問題得到的, 其形式與Schnabel等[21]構(gòu)造的奇異測試問題形式相同.
所有算法程序均由MATLAB軟件實現(xiàn). 通過選擇不同的LM參數(shù)考慮兩種ALM算法: 當選擇LM參數(shù)中的δ=1時將算法記為ALM
1; 當選擇δ=2時將算法記為ALM2. 在所有算法中, 使用的參數(shù)為: p0=10-4, p1=0.25, p2=0.75, N0=5, μ0=0.01, m=10-8, σ1=0.25,
σ2=0.5, β1=1.01, β2=0.5, β3=2. 當滿足‖JTkFk‖≤10
-6或者迭代次數(shù)超過100(n+1)時算法停止迭代. 分別從-10x0,-x0,x0,10x0和1
00x0五個起始點運行測試問題, 其中 x0由文獻[21]給出.
本文利用Dolan等[22]提出的數(shù)值性能比較方法給出不同算法數(shù)值性能比較結(jié)果. 以迭代次數(shù)為例, 在性能圖中橫坐標τ表示最佳比值
因子, 縱坐標P(τ)表示測試算法s在最少迭代次數(shù)集的τ倍內(nèi)所能解的問題個數(shù)占總問題個數(shù)的比率, 它反映了測試算法迭代次數(shù)的數(shù)值性能.
圖中最高曲線表示該測試算法在最少迭代次數(shù)集的τ倍內(nèi)能求解的問題最多, 因此性能圖中位于右上角的算法數(shù)值性能更好. 不同算法的數(shù)值性能比較結(jié)果如圖1~圖4所示.
由圖1~圖3可見: 當τ=5時, NALM算法和ALM2算法可成功求解所選的所有測試問題, 而NLM算法只能成功求解約96%的問題, ALM1算法只能成功求
解約95%的問題; NALM算法迭代次數(shù)、 函數(shù)計算次數(shù)和梯度計算次數(shù)最少的問題約占總問題的92%, 而ALM2算法迭代次數(shù)、 函數(shù)計算次數(shù)和梯度計算次數(shù)最少的問題約
占總問題的32%. 表明NALM算法比ALM2算法更有優(yōu)勢. 由圖4可見, 在解決本文所給的測試問題時, NALM算法所用的運行時間相比其他算法更少. 實驗結(jié)果表明, 本文
算法具有良好的數(shù)值性能, 在求解非線性方程組問題方面性能更優(yōu).
綜上所述, 本文提出了一種新的非單調(diào)自適應(yīng)加速LM算法, 該算法基于一個有效的LM參數(shù), 利用非單調(diào)技術(shù)避免了迭代在局部跳躍, 通過構(gòu)造自適應(yīng)函數(shù)提高了模型與目標函數(shù)的一致
性. 數(shù)值實驗結(jié)果表明, 本文所提算法不僅能快速收斂到解集, 還能減少Jacobi矩陣計算次數(shù), 具有良好的發(fā)展前景.
參考文獻
[1]" CHEN L, MA Y F. A New Modified Levenberg-Marquardt Method for Systems of Nonl
inear Equations [J/OL]. J Math, (2023-02-10)[2023\|06\|16]. https://doi.org/10.1155/2023/6043780.
[2]" SETYAWAN A, AQSA M K, SUSENO J E, et al. Gravity Inversion Modelling Using Simulated Annealing and the Levenberg-Marquard
t Algorithm [J]. Inter J Geomate, 2022, 23(98): 109-116.
[3]" HE X R, TANG J Y. A Smooth Levenberg-Marquardt Met
hod without Nonsingularity Condition for wLCP [J]. AIMS Math, 2022, 7(5): 8914-8932.
[4]" ZHAO J Y, ZHANG X J, ZHAO J L. A Levenberg-Marquardt Method for Tensor Approximation [J]. Symmetry, 2023, 15(3): 694-707.
[5]" CHAMBERLAIN R M, POWELL M J D, LEMARECHAL C, et al.
The Watchdog Technique for Forcing Convergence in Algorithm for Constrained Optimization [J]. Math Program Stud, 1982, 16(4): 1-17.
[6]" GRIPPO L, LAMPARIELLO F, LUCIDI S. A Nonmonotone Lin
e Search Technique for Newton’s Method [J]. SIAM J Numer Anal, 1986, 23(4): 707-716.
[7]" GRIPPO L, LAMPARIELLO F, LUCIDI S. A Truncated Newto
n Method with Nonmonotone Line Search for Unconstrained Optimization [J]. J Optim Theory Appl, 1989, 60(3): 401-419.
[8]" AMINI K, ROSTAMI F, CARISTI G. An Efficient Levenber
g-Marquardt Method with a New LM Parameter for Systems of Nonlinear Equations [J]. Optimization, 2018, 67(5): 637-650.
[9]" KIMIAEI M. Nonmonotone Self-adaptive Levenberg-Mar
quardt Approach for Solving Systems of Nonlinear Equations [J]. Numer Func Anal Opt, 2017, 39(1): 47-66.
[10]" HUANG B H, MA C F. A Shamanskii-Like Self-adaptiv
e Levenberg-Marquardt Method for Nonlinear Equations [J]. Comput Math Appl, 2019, 77(2): 357-373.
[11]" AMINI K, ROSTAMI F. A Modified Two Steps Levenberg
-Marquardt Method for Nonlinear Equations [J]. J Comput Appl Math, 2015, 288: 341-350.
[12]" HEI L. A Self-adaptive Trust Region Algorithm [J]. J Comput Math, 2003, 21(1): 229-236.
[13]" WALMAG J M B, DELHEZ E J M. A Note on Trust-Region Radius Update [J]. SIAM J Optim, 2005, 16(2): 548-562.
[14]" LU Y L, LI W Y, CAO M Y, et al. A Novel Self-adaptive Trust Region Algorithm for Unconstrained
Optimization [J/OL]. J Appl Math, (2014-04-15)[2023\|06\|20]. https://doi.org/10.1155/2014/610612.
[15]" POWELL M J D. Convergence Properties of a Class of Minimization Algorithms [J]. Nonlinear Program, 1975, 2(1): 1-27.
[16]" BEHLING R, IUSEM A. The Effect of Calmness on the S
olution Set of Systems of Nonlinear Equations [J]. Math Program, 2013, 137(1/2): 155-165.
[17]" FAN J Y. A Modified Levenberg-Marquardt Algorithm
for Singular System of Nonlinear Equations [J]. J Comput Math, 2003, 21(5): 625-636.
[18]" STEWART G W, SUN J G. Matrix Perturbation Theory [J]. Appl Math Sci, 1991, 88(1): 1-15.
[19]" ZHENG L, CHEN L, MA Y F. A Variant of the Levenberg
-Marquardt Method with Adaptive Parameters for Systems of Nonlinear Equations [J]. AIMS Math, 2022, 7(1): 1241-1256.
[20]" MOR J J, GARBOW B S, HILLSTROM K E. Testing Uncon
strained Optimization Software [J]. ACM T Math Software, 1981, 7(1): 17-41.
[21]" SCHNABEL R B, FRANK P D. Tensor Methods for Nonlinear Equations [J]. SIAM J Numer Anal, 1984, 21(5): 815-843.
[22]" DOLAN E D, MOR J J. Benchmarking Optimization S
oftware with Performance Profiles [J]. Math Program, 2002, 91(2): 201-213.
(責任編輯: 趙立芹)