当前位置:首页 > 百科

共轭梯度法

共轭梯度法(Conjugate Gradient)是介于最速下降法与牛顿法之间的一个方法,它仅需利用一阶导数信息,但教对唱富先化克服了最速下降法收敛慢的缺点,又避免了牛顿法需要存储和计算Hesse矩阵并求剂因黄县交获它研植逆的缺点,共轭梯度法不仅是解决大型线性方程组最有用的方法之一,也是解大型非线性最优化最有效的算法之一。 在各种优化来自算法中,共轭梯度法是非常重要的一种。其优点是所需存储量小,具命晚即办侵将有步收敛性,稳定性高,而且不需要任何外来参数。

  • 中文名 共轭梯度法
  • 外文名 Conjugate gradient method
  • 人物 Hestenes和Stiefle
  • 时间 1952
  • 用于 解正定系数矩阵的线性方程组

简介

  共轭梯度法最早是由Hestenes和Stiefle提出来在这个基础上,Fletcher和乎动商Reeves (1964)首先提出了解非线性最优化问题的共轭梯度法。由于共轭梯度法不需要矩阵存储,且有较快的收敛速度和二次终止性等优点,现在共读氢与沉信手轭梯度法已经广泛地应用于实际问题中。

共轭梯度法

  共轭梯度法是一个典型的共轭方向法,它的每一个搜索方向是互相共轭的,而这些搜索方来自向d仅仅是负梯度方向与上一次迭代的搜索方向的组合,因此,存储量少,计算方便

算法介绍

  又称共轭斜量法,是解线性代数方程组和非线性方程组的一种数值方法,例如对线性代数方程组 Ax=ƒ将师极达住引己景创阿防, (1)式中A为n阶矩阵,x和ƒ为n维列向量,当A对称正定时,可以证明求(1)的解X*和求二次泛函

  的极360百科小值问题是等价的。此处(x,у)表示向量x和у的内积。由此,给定了初始向量x(0),按某一方向去求(2)式取极小值的点x(1),就得到下一个迭代值x(2),再由x(2)出发,求x(3)等等,这样来逼近x*。若取求极小值的方向为F在 x(k=1,2,…)处的负梯度方向就是所谓最速下降法,然而理论和实际计算表明这个方法的收敛速度较慢,共轭梯度法则是在 x(k-1)处的梯度方向r(k-1)和这一步的修正方向p(k-1)所构实拉杀虽载精成的二维平面内,寻找使F减小最快的方向作为下一步的修正方向p(k),即求极小值的方向p(其第一步仍取负梯度方向)。计算公式为

  再逐次计算(k=1,2,…)。可又控波联历期蒸向势如水以证明当i≠j时,

许突放承治增班了东

  从而平p(1),p(2)形成一共轭向量名市烧台便组;r(0),r(1),…形成一正交向量组。后者说明若没有舍入新还背带验丰妈求误差的话,至多 n次迭代就可门缺态管掌得到(1)的精确解。然而在实际计算中,一般都有舍入误差,所以r(0),r(1),…并不真正互相正交,而尣(0)尣(府利益原船鱼古限1),…等也只是逐步逼近(1)的真解,故一般将共轭梯度法作为迭代法来使用。

  近来在解方程组(1)时,常将共轭梯度法同其他一些迭代法结合作用。特别是对病态方程组这种方法往往能收到比较显著的效果。其方法是选取一对称正定矩阵B并进行三角分解,得B=LLT。将方程组(1)化为 hу=b, (3)

  此处y=lTx,b=l-1ƒ,直队几带底厚期h=l-1Al-T,而

  再企机物凯春定秋棉友西切对(3)用共轭梯度法,计算公式为

  k=0,1,2,…)适当选取B,当油粉跟议B很接近A时,h的条件数较之A大大减小,从而可使共轭梯度法的收敛速度大为加快,由一些迭代法的矩阵浓课分裂A=M -N,可选取M 为这里的B,例如对称超松弛迭代(SSOR),强隐式迭代(SIP)等,这类方法常称为广义共轭梯度法或预条件共轭梯度法,它也可用于解代数特征值问题。

公式
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:fendou3451@163.com
标签:

  • 关注微信
上一篇:同安封肉
下一篇:共轭点

相关文章