BFGS法

BFGS法

BFGS法(BFGS method)是一種擬牛頓法,指用BFGS矩陣作為擬牛頓法中的對稱正定疊代矩陣的方法,此法是1970年前後由柏蘿登(C.G.Broyden)、弗萊徹(R.Fletcher)、戈德福布(D.Goldfarb),以及生納(D.F.Shanno)所研究,故得名,由於BFGS法對一維搜尋的精度要求不高,並且由疊代產生的BFGS矩陣不易變為奇異矩陣,因而BFGS法比DFP法在計算中具有更好的數值穩定性。

基本介紹

  • 中文名:BFGS法
  • 外文名:BFGS method
  • 所屬學科:數學
  • 特點:具有更好數值穩定性
  • 簡介:一種擬牛頓法
基本介紹,方法步驟,DFP法與BFGS法的比較,

基本介紹

理論和實踐表明,DFP法是一種非常有效的無約束最最佳化方法,自從1959年發表以來,深受歡迎,然而到了60年代後期,從計算實踐中發現DFP法在數值穩定方面存在一定問題,從而人們又提出各種各樣的修改算法,其中被公認為具有更好數值穩定性的算法乃是BFGS法。

方法步驟

BFGS法是用逐次修改切線剛度矩陣的方法求新近似解的非線性方程組解法。對於方程組
在第m次疊代首先計算疊代增量的方向
其中
取起點的切線剛度矩陣KT,而令
β是一標量係數,通過選擇使
ε為疊代允許誤差。然後修改剛度矩陣
其中
式中
,然後返回作m+1次疊代,直至收斂為止。

DFP法與BFGS法的比較

在目標函式的梯度容易計算的情況下,DFP變尺度法是一種很有效的方法。在計算變尺度矩陣的公式中,其分母含有近似矩陣,計算中由於捨入誤差使數值穩定性較差,並可能導致變尺度矩陣變為奇異矩陣。所以,為提高實際運算穩定性,通常將進行n次(n為目標函式的維數)疊代作為一個循環,將變尺度矩陣重置二維單位矩陣I,並以一個循環的終點作為起點,進行下一輪的疊代。
為了進一步改善DFP變尺度法在實際計算中存在的算法穩定性問題,Broydon等人提出了改進的算法——BFGS變尺度法。
BFGS法與DFP法的不同之處在於修正矩陣的計算公式不同。BFGS變尺度法的特別是BFGS法分母中不再有近似矩陣。BFGS法的優點在於計算中它的數值穩定性強,所以它是變尺度法中最受歡迎的一種算法。

相關詞條

熱門詞條

聯絡我們