关于共轭梯度法

共轭梯度法(Conjugate Gradient method, CG)


对于严格凸的二次优化问题\(n\)维二次优化问题,

\[\min_{x\in\mathbb{R}^{n}}\quad f(x)=\frac{1}{2}x^TAx-b^Tx, \]

其中\(A\)是对称正定的矩阵, \(b\in\mathbb{R}^{n}\)


相比于最速下降法,CG在最速下降方向(\(-g_{k}\))上加入了惯性项,生成了一组相互共轭的方向 \(d_{k}\) (\(d_{k-j}^{T}Ad_{k}=0,0<j<k\)),因此,当第一次迭代采用精确线搜索的条件下,CG最多\(n\)步就能收敛。具体地,CG的迭代格式如下

\[x_{k+1}=x_{k}+t_{k}d_{k}, \]

\[d_{k}= \begin{cases} -g_{k}, &if\quad k=0,\\ -g_{k}+\beta_{k}d_{k-1}, &if\quad k\ge 1. \end{cases} \]

其中最流行的参数\(\beta_{k}\)

\[\begin{aligned} \beta_{k}^{FR}=\frac{\vert\vert g_{k}\vert\vert^{2}}{\vert\vert g_{k-1}\vert\vert^{2}},\quad \beta_{k}^{CD}=\frac{\vert\vert g_{k}\vert\vert^{2}}{-g_{k-1}^Td_{k-1}},\quad \beta_{k}^{DY}=\frac{\vert\vert g_{k}\vert\vert^{2}}{y_{k-1}^Td_{k-1}}, \end{aligned} \]

\[ \begin{aligned} \beta_{k}^{HS}=\frac{y_{k-1}^Tg_{k}}{y_{k-1}^Td_{k-1}},\quad \beta_{k}^{PRP}=\frac{y_{k-1}^Tg_{k}}{\vert\vert g_{k-1}\vert\vert^{2}},\quad \beta_{k}^{LS}=\frac{y_{k-1}^Tg_{k}}{-g_{k-1}^Td_{k-1}}. \end{aligned} \]

当然对于凸二次的优化问题,上面这六个参数是等价的。对于一般的目标函数,它们就不是等价的。这些参数的区别在于:前三个有强的收敛性质,但是它们在实践中的表现不太好;后三个可能不收敛,但是它们的性能通常要比前三个的性能好。

因此,经常会看到一些文献中采用混合策略,将前三个参数的某一个与后三个中的某一个相结合起来,(主要将分母相同的参数进行混合) 比如Touati-Ahmed 和 Storey提出了PRP-FR方法,

\[\beta_{k}^{H1}=\max\{0,\min\{\beta_{k}^{PRP},\beta_{k}^{FR}\}\}, \]

Gilbert和Nocedal提出了

\[\beta_{k}^{H2}=\max\{-\beta_{k}^{FR},\min\{\beta_{k}^{PRP},\beta_{k}^{FR}\}\}, \]

Dai和Yuan提出了

\[\beta_{k}^{H3}=\max\{0,\min\{\beta_{k}^{HS},\beta_{k}^{DY}\}\}. \]

posted @ 2024-05-10 20:54  xustonexin  阅读(71)  评论(0)    收藏  举报