Type: concept
Confidence: 0.95
Created: 2026-04-15
Updated: 2026-04-15
Tags: 技术研究数值分析

共轭梯度法

概述

共轭梯度法(Conjugate Gradient Method, CG)由赫斯坦尼斯(Hestenes)和施蒂费尔(Stiefel)于 1952 年提出,是求解对称正定(SPD)线性方程组 $Ax=b$ 的迭代方法。核心思想是构造一组关于矩阵 $A$ 共轭(A-conjugate)的搜索方向,在 Krylov 子空间中寻找 $A$-范数最优近似解。CG 每步只需一次矩阵-向量乘法,存储仅需 4 个向量,收敛率依赖条件数平方根(远优于经典迭代法依赖条件数本身)。配合预处理(PCG)是现代大规模科学计算的核心算法

关键内容

算法

输入:SPD 矩阵 $A$,向量 $b$,初始猜测 $x_0$

r_0 = b - Ax_0,  p_0 = r_0
for k = 0, 1, 2, ...:
    α_k = (r_kᵀr_k) / (p_kᵀAp_k)          # 步长
    x_{k+1} = x_k + α_k p_k                  # 更新解
    r_{k+1} = r_k - α_k A p_k                # 更新残差
    if ‖r_{k+1}‖ < ε: break
    β_k = (r_{k+1}ᵀr_{k+1}) / (r_kᵀr_k)    # 共轭系数
    p_{k+1} = r_{k+1} + β_k p_k              # 更新搜索方向

每步成本:1 次矩阵-向量乘法,2 次内积,4 个向量的存储

三个核心性质

A-共轭性:搜索方向满足 $p_i^T A p_j = 0$($i \neq j$)——沿一个方向的最优化不破坏其他方向的进展

残差正交性:$r_i^T r_j = 0$($i \neq j$)——连续迭代步的残差互相正交

Krylov最优性:第 $k$ 步的 $x_k$ 是所有 $K_k(A,r_0) = \text{span}{r_0, Ar_0, \ldots, A^{k-1}r_0}$ 中元素的 $A$-范数最优近似

收敛性

有限终止性(精确算术):至多 $n$ 步内给出精确解($n$ 个 A-共轭方向构成 $\mathbb{R}^n$ 的基)

迭代收敛界: $$\frac{|x_k - x^|_A}{|x_0 - x^|A} \leq 2\left(\frac{\sqrt{\kappa}-1}{\sqrt{\kappa}+1}\right)^k, \quad \kappa = \kappa(A) = \lambda{\max}/\lambda_{\min}$$

方法 收敛速率 约束
Jacobi / Gauss-Seidel $\rho \approx 1 - O(h^2) \sim 1 - O(1/\kappa)$ 对角占优
SOR(最优松弛) $\rho \approx 1 - O(h) \sim 1 - O(1/\sqrt{\kappa})$ SPD,需知谱半径
CG $\approx 1 - 2/\sqrt{\kappa}$(无需任何参数) SPD

CG 比 SOR 在不需要提前知道谱信息的前提下,达到同等量级的收敛率。

特征值聚集加速:若矩阵特征值形成 $m \ll n$ 个聚集组,约 $m$ 步即可高精度收敛——远优于理论上限 $n$ 步。

历史曲折:从被忽视到复兴

1952 年发表后,CG 一度因有限精度下 A-共轭性会被舍入误差破坏(有限终止性失效)而被视为"有缺陷的直接方法"冷落约 20 年。

1970 年代复兴(三个关键认识转变): 1. 问题规模急剧增长,直接方法不可行 2. CG 应被视为迭代方法(近似求解),而非直接方法(精确 $n$ 步求解) 3. 预处理技术发展大幅提升实际收敛速度

Reid(1971)综述和 Golub & O'Leary(1989)历史回顾是复兴的重要推动。

预处理共轭梯度法(PCG)

将方程 $Ax=b$ 变换为 $M^{-1}Ax = M^{-1}b$,使 $\kappa(M^{-1}A) \ll \kappa(A)$:

预处理器 适用场景
不完全 Cholesky(IC/ICC) SPD 稀疏矩阵
代数多重网格(AMG) PDE 离散化矩阵
不完全 LU(ILU) 一般稀疏矩阵
域分解 并行计算

PCG 是现代大规模 FEM/FDM/FVM 计算事实标准求解器。

后续发展

方法 年份 用途
非线性 CG(Fletcher-Reeves) 1964 无约束优化
MINRES 1975 对称不定系统
BiCG 1976 非对称系统
GMRES(Saad-Schultz) 1986 非对称系统,最小残差
BiCGSTAB(van der Vorst) 1992 非对称,更稳定

局限性

来源

相关