**数值线性代数**（英語：），又稱**應用線性代數**（英語：）是一门研究在计算机上进行线性代数计算，特别是矩阵运算算法的学科，是數值分析的一個分支。计算机用浮点数运算，无法精确表示无理数数据，因此计算机算法应用于数据矩阵时，有时会产生较大的误差。数值线性代数利用向量和矩阵的性质开发算法，以最大限度地减少这误差，同时还要确保算法尽可能高效。

数值线性代数试图利用精度有限的计算机解决连续的数学问题，因此在自然科学和社会科学中的应用同连续数学一样广泛。这些问题包括图像处理、信号处理、金融工程学、材料科学模拟、结构生物学、数据挖掘、生物信息学、流体动力学和其他很多领域。矩阵方法尤其用于有限差分法、有限元法和微分方程建模。Lloyd N. Trefethen和David Bau, III注意到数值线性代数的广泛应用，认为它"同微积分和微分方程一样是数学科学的基础"，尽管是个相对较小的领域。由于矩阵和向量的很多性质也适用于函数和算子，因此数值线性代数也可视作泛函分析中注重实用算法的一支。
数值线性代数中的常见问题如LU分解、QR分解、奇异值分解、特征分解等，然后可用于解答常见的线性代数问题，如求解线性方程组、定位特征值、最小二乘优化等。数值线性代数的核心问题是开发在有限精度计算机上应用真实数据时不会引入误差的算法，这通常通过迭代法来实现，而非直接方法。

历史
--

数值线性代数是由约翰·冯·诺伊曼、艾伦·图灵、詹姆斯·哈迪·威尔金森、Alston Scott Householder、George Forsythe、Heinz Rutishauser等计算机先驱开发的，目的是将最早的计算机应用于连续数学问题，如弹道问题与偏微分方程求解。约翰·冯·诺依曼和Herman Goldstine在1947年的工作中，首次认真尝试将算法应用于真实数据计算时的误差降至最低。随着技术发展，研究者越来越有能力在超大型高精度矩阵解决复杂问题，这一领域也在不断壮大，而一些数值算法也因并行计算等技术，使其成为解决科学问题的使用方法而日益突出。

矩阵分解
----

更多：矩阵分解
### 分割矩阵

条目：分块矩阵
对应用线性代数中的很多问题，将矩阵视作列向量的组合是很有用的。例如，求解线性系统{\displaystyle x=A^{-1}b}时，与其将*x*理解为{\displaystyle A^{-1}}与*b*的积，不如将*x*视作*b*在*A*的列形成的基上线性展开的系数向量。将矩阵视作列之组合，也是矩阵算法的一种实用方法。这是因为矩阵算法常常包含两个嵌套的循环，一个是*A*的列循环，一个是*A*的行循环。例如，对于矩阵{\displaystyle A^{m\times n}}和向量{\displaystyle x^{n\times 1}}、{\displaystyle y^{m\times 1}}，可以用列划分的方法计算{\displaystyle y:=Ax+y}

```
for q = 1:n
 for p = 1:m
 y(p) = A(p,q)\*x(q) + y(p)
 end
end

```

### 奇异值分解

条目：奇异值分解
矩阵{\displaystyle A^{m\times n}}的奇异值分解是{\displaystyle A=U\Sigma V^{\ast }}，其中*U* 、*V*是酉矩阵，{\displaystyle \Sigma }是对角矩阵。{\displaystyle \Sigma }的对角项称作*A*的奇异值。由于奇异值是{\displaystyle AA^{\ast }}特征值的平方根，所以奇异值分解同特征值分解有紧密联系。这意味着，计算奇异值分解的大多数方法都与特征值方法类似，最常用的方法可能涉及豪斯霍德变换。

### QR分解

条目：QR分解
矩阵{\displaystyle A^{m\times n}}的QR分解是{\displaystyle Q^{m\times m}}与{\displaystyle R^{m\times n}}，使得{\displaystyle A=QR}，其中*Q*是正交矩阵，*R*是上三角矩阵。计算QR分解的两种主要算法是格拉姆-施密特正交化与豪斯霍德变换。QR分解常用于解决线性最小二乘问题与特征值问题（通过迭代QR算法）。

### LU分解

条目：LU分解
矩阵*A*的LU分解由下三角矩阵*L*和上三角矩阵*U*构成，使得{\displaystyle A=LU}。矩阵*U*通过上三角化过程生成，涉及将*A*左乘一系列矩阵{\displaystyle M\_{1},\ldots ,M\_{n-1}}，以形成积{\displaystyle M\_{n-1}\cdots M\_{1}A=U}，因此等价地{\displaystyle L=M\_{1}^{-1}\cdots M\_{n-1}^{-1}}。

### 特征值分解

条目：特征值分解
矩阵{\displaystyle A^{m\times m}}的特征值分解是{\displaystyle A=X\Lambda X^{-1}}，其中*X*的列是*A*的特征向量，{\displaystyle \Lambda }是对角矩阵，对角项是*A*的相应特征值。目前还没有直接得到任意矩阵特征值分解的直接方法，因为程序不可能在有限时间内精确求得任意多项式的根，所以任何通用的特征值求解器必是迭代的。

算法
--

### 高斯消元法

条目：高斯消元法
从数值线性代数的视角看，高斯消元法是将*A*进行*LU*分解的一种方法。高斯消元法通过将*A*与一系列矩阵{\displaystyle L\_{m-1}\cdots L\_{2}L\_{1}A=U}左乘来实现，直到*U*是上三角矩阵，*L*是下三角矩阵，且{\displaystyle L\equiv L\_{1}^{-1}L\_{2}^{-1}\cdots L\_{m-1}^{-1}}。众所周知，高斯消元法极不稳定，用于有效数字较多的矩阵时误差巨大。最简单的解决方法是引入主元，从而得到更稳定的改进高斯消元法。

### 线性方程组的解

更多：线性方程组 § 其他方法与软件
数值线性代数通常将矩阵视作列向量的组合。对于求解线性方程组{\displaystyle x=A^{-1}b}，传统代数方法是将*x*理解为{\displaystyle A^{-1}}与*b*的积。数值线性代数则将*x*理解为*b*在*A*的列形成的基上现行展开的系数向量。

格努矩阵*A*及向量*x*、*b*的特征，可以用很多不同的分解解决线性问题。若{\displaystyle A=QR}，则等价于{\displaystyle Rx=Q^{\ast }b}。这和矩阵分解一样容易计算。将*A*进行特征分解：{\displaystyle A=X\Lambda X^{-1}}，并试图找到使{\displaystyle b=Ax}的*b*，且{\displaystyle b'=X^{-1}b,\ x'=X^{-1}x}，则有{\displaystyle b'=\Lambda x'}。这同使用奇异值分解求解线性系统密切相关，因为矩阵的奇异值是特征值的绝对值，也等价于格拉姆矩阵{\displaystyle X^{\*}X}特征值绝对值的平方根。将*A*进行LU分解得<matdh>A=LU</math>，则{\displaystyle Ax=b}可用三角矩阵{\displaystyle Ly=b,\ Ux=y}求解。

### 最小二乘优化

条目：线性最小二乘数值方法
矩阵分解提出了许多解线性方程组{\displaystyle r=b-Ax}的方法，其中我们寻求最小的*r*，如回归问题。QR算法计算*A*的既约QR分解并重排，得到{\displaystyle {\widehat {R}}x={\widehat {Q}}^{\ast }b}。此上三角方程组可用于解*x*。SVD还提供了一种获得线性最小二乘的算法：计算既约SVD分解{\displaystyle A={\widehat {U}}{\widehat {\Sigma }}V^{\ast }}，并计算向量{\displaystyle {\widehat {U}}^{\ast }b}，就可以将最小二乘问题简化为简单的对角方程组。QR分解和SVD分解可以产生最小二乘解，这意味着除了用经典正规方程法解最小二乘问题外，还可用格拉姆-施密特法、豪斯霍德法等方法。

条件和稳定性
------

条目：数值分析 § 數值穩定性及良置問題
假设问题是函数{\displaystyle f:X\to Y}，其中*X*是数据的赋范向量空间，*Y*是解的赋范向量空间。对于数据点{\displaystyle x\in X}，若*x*的微小扰动会导致{\displaystyle f(x)}的值发生很大变化，则称之为病态的（ill-conditioned）。可以定义条件数量化之，代表问题的完备程度：



κ
^

=

lim

δ
→
0

sup

‖
δ
x
‖
≤
δ


‖
δ
f
‖

‖
δ
x
‖

.

{\displaystyle {\widehat {\kappa }}=\lim \_{\delta \to 0}\sup \_{\|\delta x\|\leq \delta }{\frac {\|\delta f\|}{\|\delta x\|}}.}

{\displaystyle {\widehat {\kappa }}=\lim _{\delta \to 0}\sup _{\|\delta x\|\leq \delta }{\frac {\|\delta f\|}{\|\delta x\|}}.}
不稳定性是指依赖浮点运算的计算机算法的结果与问题的精确解产生差距的趋势。矩阵包含多位有效数字的真实数据时，很多解线性方程组或最小二乘优化的算法会产生不准确的解。为病态问题创建稳定算法是数值线性代数的核心问题，例如豪斯霍德三角化是线性方程组的很稳健的解法，而解最小二乘法的正规方程法不稳定，是奇异值分解更常用的一个原因。有些矩阵分解方法可能不稳定，但可以直接修改而变得稳定，例如格拉姆-施密特法可以很容易地改成改进格拉姆-施密特法；高斯消元法不稳定，引入主元后变得稳定。

迭代法
---

条目：迭代法
迭代法成为数值线性代数重要组成有两个原因。其一，很多重要的数值问题没有直接解，如求任意矩阵的特征值和特征向量。其二，对任意{\displaystyle m\times m}矩阵的非迭代算法需要{\displaystyle O(m^{3})}时间，而矩阵只含{\displaystyle m^{2}}个数字，这个下限非常高。迭代法可利用矩阵的特点缩短时间。例如对稀疏矩阵，迭代算法可跳过很多直接方法必须的步骤，即便它们在矩阵高度结构化的情形下是多余的。

数值线性代数中，很多迭代法的核心是将矩阵投影到低维克雷洛夫子空间，这样就可从低维空间开始迭代计算类似矩阵的等效特征，依次向高维移动以逼近高维矩阵的特征。对对称的*A*，解线性方程{\displaystyle Ax=b}时，经典迭代法是共轭梯度法。*A*若不对称，则迭代法有广义最小残量方法和CGN（正规方程共轭梯度法）。若*A*对称，则解特征值、特征向量问题时，可以用兰佐斯算法；*A*不对称时，可以用阿诺德迭代法。

软件
--

有几种编程语言用数值线性代数优化技术，旨在实现数值线性代数算法。有MATLAB、Analytica、Maple和Mathematica。其他语言也有提供数值线性代数例程与优化的库，如C语言及Fortran有BLAS、LAPACK等库，Python有NumPy，Perl有Perl Data Language。R语言中的很多数值线性代数命令依赖于LAPACK这些更基本的库。

参见
--

* 数值线性代数是数值分析的子领域。
* 高斯消去法，数值线性代数中一种重要的算法。
* BLAS和LAPACK，高度优化的计算机程序库，以Fortran程式語言寫成，可以实现数值线性代数中最基本的算法。
* 数值分析软件列表
* 数值程序库列表
* 高斯-賽德爾疊代
* 雅可比疊代

参考文献
----

1. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17  Trefethen, Lloyd; Bau III, David.  1st. Philadelphia: SIAM. 1997. ISBN 978-0-89871-361-9.
2. 1 2 3 4  Golub, Gene H.  (PDF). University of Chicago Statistics Department.  [2019-02-17].
3. ↑  von Neumann, John; Goldstine, Herman H.. Bulletin of the American Mathematical Society. 1947, **53** (11): 1021–1099. S2CID 16174165. doi:10.1090/s0002-9904-1947-08909-6 可免费查阅.
4. 1 2 3  Golub, Gene H.; Van Loan, Charles F.  3rd. Baltimore: The Johns Hopkins University Press. 1996. ISBN 0-8018-5413-X.
5. ↑  Rickert, Joseph.. R-bloggers. 2013-08-29  [2019-02-17].

阅读更多
----

* Dongarra, Jack; Hammarling, Sven.. Cox, M. G.; Hammarling, S. (编).. Oxford: Clarendon Press. 1990: 297–327. ISBN 0-19-853564-3.

* Leader, Jeffery J.. Addison Wesley. 2004. ISBN 0-201-73499-0.
* Bau III, David; Trefethen, Lloyd N.. Philadelphia: Society for Industrial and Applied Mathematics. 1997. ISBN 978-0-89871-361-9.
* J. H. Wilkinson and C. Reinsch, "Linear Algebra, volume II of Handbook for Automatic Computation" SIAM Review 14, 658 (1972).
* Golub, Gene H.; van Loan, Charles F. (1996), Matrix Computations, 3rd edition, Johns Hopkins University Press, ISBN 978-0-8018-5414-9

外部链接
----

|  |  |
| --- | --- |
|  | 维基共享资源上的相关多媒体资源：数值线性代数 |

* Freely available software for numerical algebra on the web （页面存档备份，存于）, composed by Jack Dongarra and Hatem Ltaief, University of Tennessee
* NAG Library of numerical linear algebra routines
* Numerical Linear Algebra Group的Twitter帳戶 (Research group in the United Kingdom)
* siagla的Twitter帳戶 (Activity group about numerical linear algebra in the Society for Industrial and Applied Mathematics)
* The GAMM Activity Group on Applied and Numerical Linear Algebra

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 

| * 
* 论
* 编
应用数学 |
| --- |
|  |
| 运算数学 | 
* 算法
	+ 算法设计
	+ 算法分析
* 自動機理論
* 自动化定理证明
* 编码理论
* 计算几何
* 约束满足
	+ 约束编程
* 计算机逻辑
* 密码学
* 信息论
* 计算统计学

 |
|  |
| 离散数学 | 
* 计算机代数
* 计算数论
* 组合数学
* 图论
* 离散几何学

 |
|  |
| 数学分析 | 
* 逼近理论
* 克利福德分析（英语：）
	+ 克利福德代数
* 微分方程
	+ 常微分方程
	+ 偏微分方程
	+ 随机微分方程
* 微分几何
	+ 微分形式
	+ 规范理论

* + 几何分析（英语：）
* 动力系统
	+ 混沌理论
	+ 控制理论
* 泛函分析
	+ 算子代数
	+ 算子理论
* 调和分析
	+ 傅里叶分析
* 多重线性代数
	+ 外代数
	+ 几何代数
	+ 张量
	+ 向量代数

* 多元微积分
	+ 外微积分
	+ 几何微积分（英语：）
	+ 张量微积分（英语：）
	+ 向量微积分
* 数值分析
	+ 数值线性代数
	+ 常微分方程数值方法
	+ 偏微分方程数值方法
* 变分法

 |
|  |
| 概率论 | 
* 概率分布（随机变量）
* 随机过程 / 随机分析
* 泛函积分
* 马利阿温微积分（英语：）

 |
|  |
| 数学物理 | 
* 分析力学
	+ 拉格朗日力学
	+ 哈密顿力学
* 场论
	+ 经典场论
	+ 共形场论
	+ 有效场论
	+ 规范场论
	+ 量子场论
	+ 统计场论
	+ 拓扑量子场论
* 摄动理论
	+ 微扰理论 (量子力学)
* 位势论
* 弦理论
	+ 玻色弦理论
	+ 拓扑弦论
* 超对称
	+ 超对称量子力学（英语：）
	+ 随机力学超对称理论（英语：）

|  |  |
| --- | --- |
| 代数结构 | 
* 物理空间代数
* 路径积分表述
* 泊松代数
* 量子群
* 重整化群
* 粒子物理与表示论（英语：）
* 时空代数
* 超代数
* 超对称代数（英语：）

 |

 |
|  |
| 决策论 | 
* 博弈论
* 运筹学
* 最优化
* 社会选择理论
* 统计学
* 数理经济学
* 数理金融学

 |
|  |
| 其他应用 | 
* 数理生物学
* 数学化学（英语：）
* 数学心理学
* 数理社会学

 |
|  |
| 相关领域 | 
* 数学
* 数学软件

 |
|  |
| 社会组织 | 
* 工业与应用数学学会
	+ 日本应用数理学会（英语：）
* 法国应用与工业数学学会（英语：）
* 国际工业与应用数学理事会（英语：）

 |
|  |
| 
* **分类**
* 话题

 |

 |

|  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 

| * 
* 论
* 编
线性代数的相关概念 |
| --- |
|  |
| 重要概念 | 
* 标量
* 向量
* 向量空间
* 向量子空间

* 线性生成空间
* 线性映射
* 投影
* 線性無關
* 线性组合

* 基
* 標記
* 列空间
* 行空间
* 零空间
* 对偶空间
* 正交
* 特征值
* 特征向量

* 数量积
* 内积空间
* 点乘
* 轉置
* 格拉姆-施密特正交化
* 线性方程组
* 克萊姆法則

 |
|  |
| 矩阵 | 
* 矩阵
* 矩陣乘法
* 矩阵分解
* 行列式
* 子式和余子式
* 矩阵的秩
* 克萊姆法則
* 逆矩阵
* 高斯消去法
* 线性变换
* 分块矩阵

 |
|  |
| 数值线性代数 | 
* 浮点数
* 数值稳定性
* 基础线性代数程序集
* 稀疏矩阵

 |

 |