日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

数值计算之 共轭梯度法(2)非线性共轭梯度法

發布時間:2023/12/20 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数值计算之 共轭梯度法(2)非线性共轭梯度法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

數值計算之 共軛梯度法(2)非線性共軛梯度法

  • 前言
  • 非線性共軛梯度法

前言

上篇寫了線性共軛梯度法,本篇繼續非線性共軛梯度法

非線性共軛梯度法

非線性共軛梯度法:

  • k=0k=0k=0,通過梯度下降法初始化x0,r0=?f(x0),p0=?r0x_0,r_0=\nabla f(x_0),p_0=-r_0x0?,r0?=?f(x0?),p0?=?r0?
  • 迭代到kkk輪,判斷收斂條件,如果不滿足則進入第3步
  • 通過非精確線搜索計算αk\alpha_{k}αk?
  • xk+1=xk+αkpkx_{k+1}=x_k+\alpha_{k}p_kxk+1?=xk?+αk?pk?
  • rk+1=?f(xk+1)r_{k+1}=\nabla f(x_{k+1})rk+1?=?f(xk+1?)
  • βk+1=rk+1Trk+1rkTrk\beta_{k+1}=\frac{r_{k+1}^Tr_{k+1}}{r_{k}^Tr_{k}}βk+1?=rkT?rk?rk+1T?rk+1??
  • pk+1=?rk+1+βk+1pkp_{k+1}=-r_{k+1}+\beta_{k+1}p_kpk+1?=?rk+1?+βk+1?pk?
  • k=k+1k=k+1k=k+1
  • 以上就是FR-CG法的流程。

    為了確保全局收斂性,使用FR-CG法時,要結合Strong Wolfe Condition,并且收斂速度比較慢。

    β\betaβ的更新方式進行更換,可以獲得收斂速度更快的PR-CG法:
    β^k+1=rk+1T(rk+1?rk)∣∣rk∣∣2βk+1=max?{β^k+1,0}\hat \beta_{k+1}=\frac {r_{k+1}^T(r_{k+1}-r_{k})}{||r_k||^2} \\ \quad \beta_{k+1}=\max \{\hat\beta_{k+1},0 \} β^?k+1?=rk?2rk+1T?(rk+1??rk?)?βk+1?=max{β^?k+1?,0}

    總結

    以上是生活随笔為你收集整理的数值计算之 共轭梯度法(2)非线性共轭梯度法的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。