“预条件用易求解的算子改变 Krylov 看到的几何,常比单纯增大重启长度更有效;左预条件与右预条件所最小化和报告的残差并不相同,必须在接口中说明。对称正定系统可利用专门的共轭梯度结构,GMR…”
形式陈述 ​
考虑
左预条件把系统改写为
解变量仍是
例如左预条件 GMRES 最小化
右预条件先解
此时迭代变量是
恰是原系统在映回
更一般的分裂预条件为
对 Hermitian 正定系统,若
保留 Hermitian 正定结构。任意左乘
预条件的目标不是只让一个裸条件数变小。对正定系统,共轭梯度的能量误差界直接受预条件算子的谱区间和聚集影响;对非正规系统,特征值聚集或较小
工程成本应写成
其中
输入接口至少应给出
直觉 ​
预条件不是改变答案,而是换一套更适合迭代观察的坐标和尺度。原系统若把某些方向压得很扁、另一些方向拉得很长,Krylov 多项式要同时处理这些尺度便会前进缓慢;近似逆把它们拉回相近范围,让少数方向组合就能显著削减残差。
“近似
例子与边界 ​
考虑尺度失配的正定矩阵
其
特征值为
不完全因子分解可以保留稀疏近似三角结构,但丢弃填充会降低近似质量,某些矩阵上还可能出现零主元或不稳定增长。更强的层级预条件器可减少外层迭代,却增加设置、通信和内存。二者都应按总成本比较,而不是把“迭代数更少”当作充分结论。
若预条件器随迭代步改变,例如内层求解每次采用不同容差,标准固定算子的 GMRES 关系不再成立。此时需要 flexible GMRES 一类保留每个预条件后向量的方法;静默地把可变
推论与应用 ​
稀疏矩阵的存储模式和填充决定预条件器是否能廉价应用,Krylov 子空间则描述变换后的算子被如何探索。定常迭代可复用已有矩阵分裂;不完全因子分解以限制填充换取近似三角求解;层级方法借粗尺度校正低频误差。每条路线都要单独说明保持的结构与失败条件。
GMRES使用左右预条件时应分别报告原残差和算法内部残差。对多右端、Newton 线性化或时间步进序列,还应说明预条件器何时重建;复用过久可能让设置摊销更好,也可能因矩阵变化而失效。
参考资料
- Richard Barrett et al., Templates for the Solution of Linear Systems, 2nd ed., SIAM, 1994, Ch. 3.
- Yousef Saad, Iterative Methods for Sparse Linear Systems, 2nd ed., SIAM, 2003, Chs. 9–10.
- Michele Benzi, “Preconditioning Techniques for Large Linear Systems: A Survey,” Journal of Computational Physics 182(2), 2002.