唐江花
(安徽新華學院 通識教育部,安徽 合肥 230088)
非線性方程組的求解在金融、貿易、航空航天、工業(yè)、計算機等領域中有廣泛的應用,在這些領域中所遇到的非線性規(guī)劃問題都可以轉化為非線性方程組的求解問題.非線性方程組的求解實際上就是從眾多解中尋找最優(yōu)解,例如研究問題解的最優(yōu)條件、解是否存在以及復雜性等,這種最優(yōu)化理論也叫作“數學規(guī)劃”,在實際生活中是一門應用性較強的學科[1-2].非線性方程組中的最優(yōu)化解法在工作和生產實踐中應用到的頻率很高,實際的工作中算法結構復雜,變量眾多,具有規(guī)模大、結構復雜的特點,如果將其完全轉換為線性問題,得到的結果會遠遠脫離實際情況.因此非線性方程組的求解問題也成為人們重視與研究的問題,將具有上述特點的問題描述成非線性方程函數,并在一定的非線性約束條件下尋找其最大或最小解,成為了解決該類問題的最優(yōu)方法.
但是傳統(tǒng)求解非線性方程組的算法中,雖然最終得到的非線性方程組的解比較準確,但是求解過程中迭代次數過多,導致運算的時間較長,因此本文提出一種求解非線性方程組的信賴域算法.信賴域算法是一種重要的優(yōu)化算法,它起源于線性規(guī)劃,最早應用在無約束的優(yōu)化問題中,其最大的特點是確定步長的方法,傳統(tǒng)步長確定方法一般為線性搜索,但是信賴域算法是通過求解信賴域的子問題,初步得到試探步長,并根據實際的計算函數的下降量情況對試探步長進行判斷[3-4].本文將這種算法應用到非線性方程組的求解過程中,以期能夠簡化傳統(tǒng)算法求解過程,提高非線性方程組的求解效率.
對于非線性方程組:
F(x)=0,
(1)
(2)
信賴域不要求Hessian矩陣在每個迭代點處均正定,因此,試探步不成功時,可以加入二階校正步,沿著試探步的方向,利用固定步長公式產生步長,因此,當試探步長為lk且在信賴域內時,可設置當前迭代初始點為xk,且在以該點為中心,半徑為λk的閉球鄰域內,在步長迭代過程中需要有一自然數ζk且存在‖lk‖<ζk,用評價函數決定lk是否被接受,當試探失敗,信賴域的半徑會縮小,試探成功半徑將視具體情況增大或保持不變,這就是改進之后信賴域算法子問題中的非單調技術[5-6].信賴域算法的模型問題為:
(3)
(4)
在求解非線性方程組的過程中,利用目標函數及其相應的導數函數信息在Hessian矩陣中構造近似序列[7-8],并對由該公式生成的目標函數的曲率近似進行修正.在保持矩陣序列正性的同時,也考慮了邊值問題的正解存在性,有助于克服詳細數值的奇異性.至此,完成了信任域算法模型的建立.
在收斂性的討論與分析中,首先進行假設,待研究的函數F(x)是二階連續(xù)可微,并且和矩陣JacobianJ(x)是連續(xù)的[9-10],那么存在:
‖J(y)-J(x)‖≤L1‖y-x‖ ‖F(xiàn)(y)-F(x)‖≤L2‖y-x‖,?x,y∈Rn,
(5)
式中,L1與L2為正常數.根據式(5)可知:
‖F(xiàn)(yk)‖=‖F(xiàn)(xk+dk)‖≤‖F(xiàn)n+dk‖+L1‖dk‖2≤‖F(xiàn)k‖+L2‖dk‖+L1‖dk‖2,
(6)
式中,dk為連續(xù)收斂系數.在上述的情況下,產生的迭代序列存在:
(7)
根據以上條件,可以得到收斂函數:
(8)
(9)
(10)
為了證明假設正確,需要證明:
(11)
(12)
為了驗證本文提出的求解非線性方程組的信賴域算法的有效性,需要設計實驗,對算法的性能進行測試.選取以下金融案例作為研究對象:
某金融投資者想要進行長期投資,因此選擇5支目前業(yè)績較好的股票型基金A、B、C、D、E進行組合投資.在進行投資之前,對選擇的5種股票型基金進行市場分析,并得到統(tǒng)計預測的相關數據如表1所示.
表1 5種股票型基金的數據統(tǒng)計預測
在實驗過程中,假設5種股票型基金的購買金額占所有投資中的占比分別為xA、xB、xC、xD、xE,那么交易成本可以表示為:
ci(xi)=0.002xi+0.002(1-e-xi),
(13)
(14)
式中,rp表示投資組合中的預期收益;Q表示協(xié)方差矩陣;V表示投資風險.在計算機中,使用軟件Matlab分別對本文算法和傳統(tǒng)算法進行編寫,并設定算法中相關參數的值,令η1的值為0.000 1,η2為0.56,β1為0.27,β2為0.7.在軟件中,可以將上述的相關問題模型帶入具體數值:
(15)
根據分析可知,該模型為凸規(guī)劃,因此可以將上式轉化為非線性方程組問題.并分別使用本文設計的信賴域算法和傳統(tǒng)算法進行求解.按照上述的實驗方法,選擇相似的非線性案例進行求解,并將兩種方法的求解結果進行統(tǒng)計與分析.
分別得到兩種求解算法的計算結果,如表2所示.
表2 計算結果對比分析
從表2中可以看出,利用本文設計的算法和傳統(tǒng)算法得到的3個案例的求解結果基本相似,驗證了本文算法的準確性和可靠性.
為了證明本文算法在求解的過程中能夠表現(xiàn)出優(yōu)異的性能,對兩種算法在實驗過程中得到的相關參數進行統(tǒng)計,如表3所示.
表3 計算過程參數對比分析
從表3可以看出,在相同的測試環(huán)境下,3個不同的案例中,本文算法的迭代次數都是相對傳統(tǒng)算法更少的,CPU時間方面也更加省時,得到的函數值也更為精準.
在非線性方程組現(xiàn)有解法的基礎上,對求解非線性組的信賴域算法進行了進一步探討.以非線性方程為基礎建立信賴域模型,在其中融入改進了的非單調技術,在每一次的計算過程迭代中,完成信賴域子問題的分析與求解,分析了設計算法的全局收斂性.并在仿真實驗的3個案例中,驗證了本文算法的可靠性和性能優(yōu)越性.
本文雖然取得了一定的成績,但是由于水平和時間的限制,還有很多不足之處,例如,算法的收斂性分析方面,只能在理論上證明算法具有收斂性,且應用的是反證法,但是對于收斂速度無法進行量化計算,這一問題在今后的研究中具有重要的理論意義和應用價值,也是今后對于非線性方程組求解方法研究的重要方向.