## 利用偽逆矩陣解線性方程

$\left[\!\!\begin{array}{rrr} 93.199&10.262&-29.334\\ 1.560&32.957&61.377\\ 27.152&37.982&57.482\\ 23.434&-87.012&44.767 \end{array}\!\!\right]\begin{bmatrix} x_1\\ x_2\\ x_3 \end{bmatrix}=\left[\!\!\begin{array}{r} 35.3000\\ 73.4022\\ 87.9935\\ -29.7854 \end{array}\!\!\right]$

$\left[\!\!\begin{array}{rrr} 93.199&10.262&-29.334\\ 1.560&32.957&61.377\\ 27.152&37.982&57.482 \end{array}\!\!\right]\begin{bmatrix} x_1\\ x_2\\ x_3 \end{bmatrix}=\begin{bmatrix} 35.3000\\ 73.4022\\ 87.9935 \end{bmatrix}$

$\hat{A}^{-1}=\left[\!\!\begin{array}{rrr} 28.694&111.946&-104.888\\ -103.589&-404.226&378.796\\ 54.894&214.245&-200.732 \end{array}\!\!\right]$

$\mathbf{x}=\hat{A}^{-1}\hat{\mathbf{b}}=\hat{A}^{-1}\begin{bmatrix} 35.3000\\ 73.4022\\ 87.9935 \end{bmatrix}=\begin{bmatrix} 0.5129\\ 0.8533\\ 0.7247 \end{bmatrix}$

$\mathbf{x}=\hat{A}^{-1}\hat{\mathbf{b}}^{\prime}=\hat{A}^{-1}\begin{bmatrix} 35.30\\ 73.40\\ 87.99 \end{bmatrix}=\begin{bmatrix} 0.6300\\ 0.4302\\ 0.9489 \end{bmatrix}$

$\hat{\Sigma}=\begin{bmatrix} 100.012&0&0\\ 0&99.947&0\\ 0&0&0.002 \end{bmatrix}$

$\hat{A}^{-1}=(\hat{U}\hat{\Sigma} \hat{V}^T)^{-1}=\hat{V}\hat{\Sigma}^{-1}\hat{U}^T$

$\hat{\Sigma}^{-1}=\begin{bmatrix} 0.01&0&0\\ 0&0.01&0\\ 0&0&500 \end{bmatrix}$

$\Vert \hat{A}^{-1}(\hat{\mathbf{b}}-\hat{\mathbf{b}}^{\prime})\Vert=\Vert\hat{V}\hat{\Sigma}^{-1}\hat{U}^T(\hat{\mathbf{b}}-\hat{\mathbf{b}}^{\prime})\Vert=\Vert\hat{\Sigma}^{-1}\hat{U}^T(\hat{\mathbf{b}}-\hat{\mathbf{b}}^{\prime})\Vert$

$\Sigma=\begin{bmatrix} 101.023&0&0\\ 0&99.948&0\\ 0&0&99.603\\ 0&0&0 \end{bmatrix}$

$A^{+}=V\Sigma^{+}U^{T}$

$A^{+}=\left[\!\!\begin{array}{rrrr} 0.009&0.000&0.003&0.002\\ 0.001&0.003&0.004&-0.009\\ -0.003&0.006&0.006&0.005 \end{array}\!\!\right]$

$\mathbf{x}=A^{+}\mathbf{b}= A^{+}\left[\!\!\begin{array}{r} 35.3000\\ 73.4022\\ 87.9935\\ -29.7854 \end{array}\!\!\right]=\begin{bmatrix} 0.5129\\ 0.8533\\ 0.7247 \end{bmatrix}$

$\mathbf{x}= A^{+}\left[\!\!\begin{array}{r} 35.30\\ 73.40\\ 87.99\\ -29.79 \end{array}\!\!\right]=\begin{bmatrix} 0.5129\\ 0.8533\\ 0.7246 \end{bmatrix}$

### 5 Responses to 利用偽逆矩陣解線性方程

1. levinc 說道：

這個例子再看一次還是覺得神奇~
但有個地方用直觀理解卻怎也想不透，為什麼
任意拿掉一條方程式計算的解，跟算完整的AX=b的解相同？

2. ccjou 說道：

這是刻意挑選過的例子，四條方程式確實存在一解，也就是說，一條是多餘的。此例要說明的是 $A^{+}$ 的數值穩定性比 $A^{-1}$ 來的好，這反應在奇異值的大小。

3. levinc 說道：

對，但那會是因為那最後一條方程式裡產生的問題嗎？能夠直觀的從原始資料矩陣結構觀察出嗎？ 何不刪別條？

4. ccjou 說道：

刪別條方程式可能不會發生病態系統
https://ccjou.wordpress.com/2010/06/22/%E7%97%85%E6%85%8B%E7%B3%BB%E7%B5%B1/
這由係數矩陣的奇異值決定，常用的檢查方法稱為條件數，從條件數大小即可判斷。
https://ccjou.wordpress.com/2010/07/01/%E6%A2%9D%E4%BB%B6%E6%95%B8/

5. wangtj 說道：

老师您好，如果方程的个数小于变量的个数，或者说行之间的相关性很高的话，此时还能用奇异值分解得到确定的方程的解吗？因为如果是方程的个数小于变量的个数时应该没有唯一的解，而此时如果用奇异值分解去求解的话应该可以得到唯一的解，这两种理解矛盾吗？或者说我哪里理解错了？谢谢老师