数值线性代数: 共轭梯度法

本文总结线性方程组求解的相关算法,特别是共轭梯度法的原理及流程。

零、预修

0.1 LU分解

,若对于,均有,则存在下三角矩阵和上三角矩阵,使得

,若对于,均有,则存在唯一的下三角矩阵和上三角矩阵,使得,并且

0.2 Cholesky分解

对称正定,则存在一个对角元均为正数的下三角矩阵,使得

一、 总论:迭代法求解线性方程组的一般思路

对于非奇异矩阵,使用迭代法 求解线性方程组过程中,一般需要以下流程进行:

  1. 给定一个初始向量
  2. 构造一个递推公式
  3. 不断递推,使其近似收敛于

下表列出了若干迭代算法的迭代公式。

|--------------------|----------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|
| 方法 | | 迭代公式 | 备注 |
| Jacobi迭代 | 非奇异 | | |
| Gausss-Seidel迭代 | 非奇异 | | |
| SOR迭代 | 非奇异 | | |
| Steepest Descent | 对称正定 | | |
| Conjugate Gradient | 对称正定 | 当 | |

二、Projection Method

投影法将线性方程组求解问题 转换成了最优值求解问题,是求解线性方程组的一大类方法。

在投影法中,令,构造列满秩矩阵,寻找,满足Petrov-Galerkin条件 ,即,均有称为搜索空间,称为约束空间。若时,称为正投影算法 ,否则称为斜投影算法

三、Krylov Subspace Method

Krylov子空间法 本质上也是一种投影法 ,其核心思想是在更小维度的Krylov子空间 内寻找满足精度要求的近似解。即令,构造了Krylov子空间 ,使得

选择不同的,就对应不同的Krylov子空间法

3.1 Steepest Descent Method

3.2 Hestenes-Stiefel Conjugate Gradient Method

参考书籍

Golub G H , Loan C F V .Matrix Computations.Johns Hopkins University Press,1996.

Ford W .Numerical Linear Algebra with Applications using MATLAB. 2014.

徐树方. 数值线性代数(第二版). 北京大学出版社, 2010.

参考文献

Hestenes M R , Stiefel E L .Methods of Conjugate Gradients for Solving Linear Systems. Journal of Research of the National Bureau of Standards (United States), 1952.

相关推荐
pythonpioneer12 小时前
PyTorch3D:基于 PyTorch 的高效 3D 深度学习工具库
pytorch·深度学习·其他·3d
jiushiapwojdap12 小时前
Antigravity Awesome Skills:1527+ AI 编程助手的可安装技能库
人工智能·其他
淡漠的蓝精灵13 小时前
pytest-xdist:把 pytest 测试分发到多核 CPU 执行
其他·pytest
老陈头聊SEO14 小时前
从零打基础,掌握SEO提升网站流量与搜索排名
其他·搜索引擎·seo优化
ye1501277745515 小时前
4.2V升6V1A同步升压WT3213
单片机·嵌入式硬件·其他·硬件工程
kernelcraft15 小时前
Boto3:Python 操作 AWS 的官方 SDK
开发语言·python·其他·aws
D3bugRealm15 小时前
cryptography:Python 开发者的加密标准库
开发语言·python·其他
sitellla18 小时前
Pydub:用 Python 处理音频,不写废话
开发语言·python·其他·音视频
西安邮电大学19 小时前
贪心算法详细讲解
java·后端·其他·算法·面试
functionflux19 小时前
kafka-python:Python 生态中最成熟的 Kafka 客户端
分布式·python·其他·kafka