数值线性代数
凸优化算法需要反复求解线性方程组。实际计算中,矩阵的结构、条件数和分解方法会影响计算量、存储量与数值误差。本页介绍常见矩阵分解及其在线性方程求解中的作用。
矩阵结构与计算代价
对一般稠密的
矩阵的条件数衡量问题对输入扰动的敏感程度;算法的数值稳定性则描述计算过程如何传播舍入误差。条件数差的问题,即使使用稳定算法,结果也可能对数据误差敏感。两者是不同来源,分析求解误差时应分别考虑。
使用分解求解线性方程组
求解
LU 分解
带部分主元的 LU 分解通常写作
其中
Cholesky 分解
若
于是
LDL 分解
实对称矩阵常可通过带主元的对称消元写成
其中
分块消元与 Schur 补
对分块线性方程组
若
矩阵
欠定线性方程组
当
许多问题需要其中 Euclid 范数最小的解。若
若矩阵秩不足,可用 SVD 或伪逆刻画最小范数解;伪逆的定义见线性代数中的 SVD 与伪逆。数值计算时,QR 或 SVD 通常比先构造正规方程
参考
本页对应 Boyd 与 Vandenberghe 的《Convex Optimization》附录 C:数值线性代数背景,重点整理矩阵结构、分解求解、分块消元和欠定方程组。