From 3e6da1da3eedba6333c4e22cc1607ac131bad04b Mon Sep 17 00:00:00 2001 From: peng00bo00 Date: Fri, 21 Jun 2024 11:29:10 +0400 Subject: [PATCH] Update 2024-06-21-GAMES001-NOTES-12.md --- _posts/2024-06-21-GAMES001-NOTES-12.md | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/_posts/2024-06-21-GAMES001-NOTES-12.md b/_posts/2024-06-21-GAMES001-NOTES-12.md index 95769a5..71ca077 100644 --- a/_posts/2024-06-21-GAMES001-NOTES-12.md +++ b/_posts/2024-06-21-GAMES001-NOTES-12.md @@ -36,7 +36,7 @@ $$ -换个角度来看,矩阵的行变换等价于左乘一个下三角矩阵。因此,高斯消元法可以理解为对矩阵进行[LU分解](https://en.wikipedia.org/wiki/LU_decomposition)。通过LU分解,我们将系数矩阵$$\mathbb{A}$$分解为一个下三角矩阵$$\mathbb{L}$$和一个上三角矩阵$$\mathbb{U}$$的乘积。然后,通过求解两个较简单的线性系统$$\mathbb{L} \mathbf{y} = \mathbf{b}$$和$$\mathbb{U} \mathbf{x} = \mathbf{y}$$就可以得到最终解$$x$$。 +换个角度来看,矩阵的行变换等价于左乘一个下三角矩阵。因此,高斯消元法可以理解为对矩阵进行[LU分解](https://en.wikipedia.org/wiki/LU_decomposition)。通过LU分解,我们将系数矩阵$$\mathbf{A}$$分解为一个下三角矩阵$$\mathbf{L}$$和一个上三角矩阵$$\mathbf{U}$$的乘积。然后,通过求解两个较简单的线性系统$$\mathbf{L} \mathbf{y} = \mathbf{b}$$和$$\mathbf{U} \mathbf{x} = \mathbf{y}$$就可以得到最终解$$x$$。
@@ -55,6 +55,27 @@ $$
+### Cholesky分解 + +对于对称半正定的系数矩阵,LU分解可以简化为[Cholesky分解](https://en.wikipedia.org/wiki/Cholesky_decomposition)。此时,系数矩阵$$\mathbf{A}$$可以表示为下三角矩阵$$\mathbf{A}$$与其自身转置$$\mathbf{A}^T$$的乘积。 + +
+ + +
+ +Cholesky分解的伪代码可以参考如下。类似于LU分解,Cholesky分解的复杂度同样是$$O(n^3)$$,也可以利用一些并行的技术来进行加速。 + +
+ +
+ +简单总结一下,LU分解以及高斯消元法可以求解任意的矩阵方程,而Cholesky分解则只适用于对称半正定的系统。由于这两种方法都具有$$O(n^3)$$的复杂度,它们只适合一些规模比较小的线性系统。 + +
+ +
+ ## 迭代求解 ## Reference