线性结构化语言——矩阵的分块简化(四)

分块矩阵是线性代数中的一个重要内容,是处理阶数较高的矩阵时常采用的技巧,也是数学在多领域的研究工具。对矩阵进行适当分块,可使高阶矩阵的运算可以转化为低阶矩阵的运算,同时也使原矩阵的结构显得简单而清晰,从而能够大大简化运算步骤,或给矩阵的理论推导带来方便。有不少数学问题利用分块矩阵来处理或证明,将显得简洁、明快。矩阵分块的意思是将一个大矩阵分隔为几个小的矩阵,将每个小的矩阵作为新的矩阵元素。分块可以降低大矩阵运算带来的复杂性。分块后的小矩阵,叫做矩阵的子块,以子块为元素的形式上的矩阵叫做分块矩阵。

一 矩阵的分块

分块矩阵其实就是把一个完整的矩阵随意地切割成不同的块,这种定义就决定了分块矩阵具有很多种形式。其中,把一个矩阵按照列或行来进行划分是一种对矩阵分块的特殊情况。通常来讲,对于一个\(m\times n\) 的矩阵 \(A\) 来说,有如下矩阵分块的形式:

\[A=\begin{bmatrix} A_{11}&\ldots&A_{1r} \\\vdots& &\vdots \\ A_{q1}&\ldots&A_{qr} \end{bmatrix} (A_{11}\in R^{m_{1}\times n_{1}} 、\cdots、A_{qr}\in R^{m_{q}\times n_{r}}) \]

其中\(m_1+⋯+m_q=m、n_1+⋯+n_r=n,A_{\alpha\beta}\) 表示位于位置 \((\alpha,\beta)\) 上的子矩阵且 $A_{\alpha\beta}\in R^{m_{\alpha}\times n_{\beta}} $ 。用这样的表示方法,我们就可以说$ A=(A_{\alpha\beta}) $是一个 \(q×r\)的分块矩阵。

分块对角矩阵(Block Diagonal)

\(A\)\(n\) 阶方阵,若 \(A\) 的分块矩阵在非主对角线上的子矩阵都是零矩阵,且在主对角线上的子矩阵都为方阵,即

\[A= \begin{bmatrix}A_{1} & O & \cdots &O \\ O & A_{2}& \cdots & O \\\vdots& \vdots&\ddots&\vdots \\O&O&\cdots&A_{s}\end{bmatrix} \]

其中 \(O\)表示零矩阵, $A_{i}(i=1,2,\cdots,s) $都是方阵,那么称 \(A\)分块对角矩阵(Block Diagonal)

\[\left[\begin {array}{c} 1 & 1 & 0 & 0 & 0 & 0 \\ 1 & 1 & 0 & 0 & 0 & 0 \\ \hdashline 0 & 0 & 1 & 1 & 1 & 0 \\ 0 & 0 & 1 & 1 & 1 & 0 \\ 0 & 0 & 1 & 1 & 1 & 0 \\ \hdashline 0 & 0 & 0 & 0 & 0 & 1 \end{array}\right] \]

分块上(下)三角形矩阵(Block Upper/Lower Triangular)

当我们对方阵进行分块后,主对角线上的子矩阵都是方阵,主对角线以上(以下)的子矩阵都是零矩阵,那我们称之为分块上(下)三角形矩阵(Block Upper/Lower Triangular),即
\begin{bmatrix}A_{11}&A_{12}&\cdots&A_{1s} \\ O&A_{22}&\cdots&A_{2s} \\ \vdots&\vdots&\ddots&\vdots \\O&O&\cdots&A_{ss}\end{bmatrix}

\begin{bmatrix}A_{11}&O&\cdots&O \\ A_{21}&A_{22}&\cdots&O \\ \vdots&\vdots&\ddots&\vdots \\A_{s1}&A_{s2}&\cdots&A_{ss}\end{bmatrix}

分块矩阵示例

例1 将 $3 \times 4 $的矩阵分块。

\[\left[\begin {array}{c} a_{11} & a_{12} & a_{13} & a_{14} \\ a_{21} & a_{22} & a_{23} & a_{24} \\ a_{31} & a_{32} & a_{33} & a_{34} \end{array}\right] \]

分成子块的方法很多,一般根据矩阵中子块的特点来划分。如可以分成

\begin{array}{ll:ll} a_{11} & a_{12} & a_{13} & a_{14} \\ a_{21} & a_{22} & a_{23} & a_{24} \\ \hdashline a_{31} & a_{32} & a_{33} & a_{34} \\ \end{array}

\[\left[\begin {array}{c} \boldsymbol{A}_{11} & \boldsymbol{A}_{12} \\ \boldsymbol{A}_{21} & \boldsymbol{A}_{22} \end{array}\right] \]

其中

\[\boldsymbol{A}_{11} =\begin{pmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{pmatrix};\boldsymbol{A}_{12} =\begin{pmatrix} a_{13} & a_{14} \\ a_{23} & a_{24} \end{pmatrix};\boldsymbol{A}_{21} =\begin{pmatrix} a_{31} & a_{32} \end{pmatrix};\boldsymbol{A}_{22} =\begin{pmatrix} a_{33} & a_{34} \end{pmatrix} \]

矩阵的分块是一种根据矩阵的具体特点将其划分为若干子矩阵的技术,通过这种方式可以简化矩阵的表达形式和计算过程。在许多实际问题中,矩阵往往具有一定的结构特性,例如对称性、稀疏性或带状分布等,这些特性可以被利用,通过分块将大矩阵划分为若干规模较小的子矩阵,从而降低计算复杂度。

二 矩阵的分块运算

这里简要说一下分块矩阵的一些运算操作。

数乘

\[\mu \begin{bmatrix}A_{11}&A_{12} \\A_{21}&A_{22} \\A_{31}&A_{32}\end{bmatrix}=\begin{bmatrix}\mu A_{11}&\mu A_{12} \\\mu A_{21}&\mu A_{22} \\\mu A_{31}&\mu A_{32}\end{bmatrix} \]

加法

\[\begin{bmatrix}A_{11}&A_{12} \\A_{21}&A_{22} \\A_{31}&A_{32}\end{bmatrix} + \begin{bmatrix}B_{11}&B_{12} \\B_{21}&B_{22} \\B_{31}&B_{32}\end{bmatrix} =\begin{bmatrix}A_{11}+B_{11}&A_{12}+B_{12} \\A_{21}+B_{21}&A_{22}+B_{22} \\A_{31}+B_{31}&A_{32}+B_{32}\end{bmatrix} \]

乘法

\[\begin{bmatrix}A_{11}&A_{12} \\A_{21}&A_{22} \\A_{31}&A_{32}\end{bmatrix} \begin{bmatrix}B_{11}&B_{12}\\B_{21}&B_{22}\end{bmatrix}= \begin{bmatrix}A_{11}B_{11}+A_{12}B_{21}&A_{11}B_{12}+A_{12}B_{22}\\A_{21}B_{11}+A_{22}B_{21}&A_{21}B_{12}+A_{22}B_{22} \\ A_{31}B_{11}+A_{32}B_{21}&A_{31}B_{12}+A_{32}B_{22}\end{bmatrix} \]

三 矩阵的分块应用

例2求 $ A $ 的逆矩阵 $ A^{-1}$。

\[ A = \begin{pmatrix} 0 & a_1 & 0 & \cdots & 0 \\ 0 & 0 & a_2 & \cdots & 0 \\ \cdots & \cdots & \cdots & \cdots & \cdots \\ 0 & 0 & 0 & \cdots & a_{n-1} \\ a_n & 0 & 0 & \cdots & 0 \end{pmatrix}, \quad \prod_{i=1}^{n} a_i \neq 0. \]

解:

\[ A = \begin{pmatrix} 0 & a_1 & 0 & \cdots & 0 \\ 0 & 0 & a_2 & \cdots & 0 \\ \cdots & \cdots & \cdots & \cdots & \cdots \\ 0 & 0 & 0 & \cdots & a_{n-1} \\ a_n & 0 & 0 & \cdots & 0 \end{pmatrix} = \begin{pmatrix} O & A_1 \\ A_2 & O \end{pmatrix} \]

其中\(A_1\)为右上\(n-1\)阶方阵。

\[A^{-1} = \begin{pmatrix} \mathbf{O} & A_2^{-1} \\ A_1^{-1} & \mathbf{O} \end{pmatrix} =\begin{pmatrix} 0 & 0 & 0 & \cdots & 0 & \frac{1}{a_n} \\ \frac{1}{a_1} & 0 & 0 & \cdots & 0 & 0 \\ \cdots & \cdots & \cdots & \cdots & \cdots & \cdots \\ 0 & 0 & 0 & \cdots & 0 & 0 \\ 0 & 0 & 0 & \cdots & \frac{1}{a_{n-1}} & 0 \end{pmatrix} \]

例3\(\quad\)已知:

\[A = \begin{pmatrix} 1 & -1 & 0 & 0 \\ 3 & -1 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 2 & -1 \end{pmatrix}, \quad B = \begin{pmatrix} 1 & 0 & 0 & 0 \\ -1 & 0 & 0 & 0 \\ 0 & 1 & 3 & -1 \\ 0 & 2 & 1 & 4 \end{pmatrix} \]

试计算乘积 \(AB\)

解:

\[AB = \begin{pmatrix} 1 & -1 & 0 & 0 \\ 3 & -1 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 2 & -1 \end{pmatrix} \begin{pmatrix} 1 & 0 & 0 & 0 \\ -1 & 0 & 0 & 0 \\ 0 & 1 & 3 & -1 \\ 0 & 2 & 1 & 4 \end{pmatrix} = \begin{pmatrix} A_1 & \mathbf{O} \\ \mathbf{O} & A_2 \end{pmatrix} \begin{pmatrix} B_1 & \mathbf{O} \\ \mathbf{O} & B_2 \end{pmatrix} \]

所有拆分后的矩阵都为2阶方阵。

利用分块矩阵乘法:

\[= \begin{pmatrix} A_1 B_1 & \mathbf{O} \\ \mathbf{O} & A_2 B_2 \end{pmatrix} = \begin{pmatrix} 2 & 0 & 0 & 0 \\ 4 & 0 & 0 & 0 \\ -1 & 0 & 0 & 0 \\ 0 & 0 & 5 & -6 \end{pmatrix} \]

例4 已知 \(\boldsymbol N=\begin{bmatrix} 0&1&0&0\\ &0&1&0\\ &&0&1\\ &&&0\\ \end{bmatrix},\boldsymbol A= \begin{bmatrix} a_{11}&a_{12}&\cdots&a_{1n} \\ a_{21}&a_{22}& \cdots &a_{2n} \\ a_{31}&a_{32} &\cdots&a_{3n}\\ a_{41}&a_{42}& \cdots&a_{4n} \end{bmatrix}\)
,求 $\boldsymbol N^4\boldsymbol A$。

解:令 $\boldsymbol A=\begin{bmatrix}\boldsymbol A_1\\ \boldsymbol A_2\\ \boldsymbol A_3\\ \boldsymbol A_4\\ \end{bmatrix}$ ,则 \(\boldsymbol N\boldsymbol A=\begin{bmatrix} \boldsymbol A_2\\\boldsymbol A_3\\\boldsymbol A_4\\\boldsymbol O\\ \end{bmatrix} , \boldsymbol N^2\boldsymbol A=\boldsymbol N(\boldsymbol N\boldsymbol A)=\begin{bmatrix} \boldsymbol A_3 \\ \boldsymbol A_4\\ \boldsymbol O\\ \boldsymbol O\end{bmatrix}\)
$,……,\boldsymbol N^4\boldsymbol A=\begin{bmatrix} \boldsymbol O\\ \boldsymbol O\\ \boldsymbol O\\ \boldsymbol O \end{bmatrix} $

例5 已知 \(\boldsymbol A=\begin{bmatrix}1&2&1&2\\ -1&-2&-1&-2\\ 1&2&1&2\\ -1&-2&-1&-2 \end{bmatrix}\) ,求 \(\boldsymbol A^{10}\)

解:令 \(\boldsymbol A_1=[1,2,1,2]\) ,则 \(\boldsymbol A=\begin{bmatrix} \boldsymbol A_1\\ -\boldsymbol A_1\\ \boldsymbol A_1\\ -\boldsymbol A_1\end{bmatrix} =\begin{bmatrix} 1\\ -1\\ 1\\ -1 \end{bmatrix} \boldsymbol A_1 =Y \boldsymbol A_1\)

\[\boldsymbol A^{10}=(\boldsymbol Y\boldsymbol A_1)^{10}=\boldsymbol Y\boldsymbol A_1\boldsymbol Y\boldsymbol A_1\cdots\boldsymbol Y\boldsymbol A_1=\boldsymbol Y(\boldsymbol A_1\boldsymbol Y)(\boldsymbol A_1\boldsymbol Y)\cdots (\boldsymbol A_1 \boldsymbol Y)\boldsymbol A_1=\boldsymbol Y(\boldsymbol A_1\boldsymbol Y)^9\boldsymbol A_1 \]

而 $\boldsymbol A_1\boldsymbol Y=[1,2,1,2]\begin{bmatrix} 1\\ -1\\ 1\\ -1\\ \end{bmatrix}=1-2+1-2=-2 $

所以 $$ A^{10}=\boldsymbol Y(-2)^9\boldsymbol A_1=(-2)^9\boldsymbol Y\boldsymbol A_1=-512\boldsymbol A=\begin{bmatrix}-512&-1024&-512&-1024\\ 512&1024&512&1024\\ -512&-1024&-512&-1024\\ 512&1024&512&1024\\ \end{bmatrix}$$

例6 计算 $$\left[\begin{array}{cccc}1 & 2 & 1 & 0 \\ 0 & 1 & 0 & 1 \\ 0 & 0 & 2 & 1 \\ 0 & 0 & 0 & 3\end{array}\right]\left[\begin{array}{cccc}1 & 0 & 3 & 1 \\ 0 & 1 & 2 & -1 \\ 0 & 0 & -2 & 3 \\ 0 & 0 & 0 & -3\end{array}\right]$$

解: 根据上面两个矩阵的特点分块进行计算,依题意可得:

\[\boldsymbol{A}_{11}=\left [\begin{array}{ll} 1 & 2 \\ 0 & 1 \end{array} \right], \boldsymbol{A}_{22}=\left [\begin{array}{ll} 2 & 1 \\ 0 & 3 \end{array}\right], \boldsymbol{B}_{12}=\left[\begin{array}{cc} 3 & 1 \\ 2 & -1 \end{array}\right], \boldsymbol{B}_{22}=\left [\begin{array}{cc} -2 & 3 \\ 0 & -3 \end{array}\right] \]

\[ 原式=\left[\begin{array}{cc} \boldsymbol{A}_{11} & \boldsymbol{E}_{2} \\ \boldsymbol{O} & \boldsymbol{A}_{22} \end{array}\right] \left [\begin{array}{cc} \boldsymbol{E}_{2} & \boldsymbol{B}_{12} \\ \boldsymbol{O} & \boldsymbol{B}_{22} \end{array}\right] =\left [\begin{array}{cc} \boldsymbol{A}_{11} & \boldsymbol{A}_{11} \boldsymbol{B}_{12}+\boldsymbol{B}_{22} \\ \boldsymbol{O} & \boldsymbol{A}_{22} \boldsymbol{B}_{22} \end{array}\right] \]


\begin{gathered} \boldsymbol{A}_{11} \boldsymbol{B}_{12}+\boldsymbol{B}_{22}=\left[\begin{array}{ll} 1 & 2 \\ 0 & 1 \end{array}\right]\left[\begin{array}{cc} 3 & 1 \\ 2 & -1 \end{array}\right]+\left[\begin{array}{cc} -2 & 3 \\ 0 & -3 \end{array}\right]=\left[\begin{array}{cc} 5 & 2 \\ 2 & -4 \end{array}\right] \\ \boldsymbol{A}_{22} \boldsymbol{B}_{22}=\left[\begin{array}{ll} 2 & 1 \\ 0 & 3 \end{array}\right]\left[\begin{array}{cc} -2 & 3 \\ 0 & -3 \end{array}\right]=\left[\begin{array}{cc} -4 & 3 \\ 0 & -9 \end{array}\right] \end{gathered}

所以

\[原式= \left [\begin{array}{cccc} 1 & 2 & 5 & 2 \\ 0 & 1 & 2 & -4 \\ 0 & 0 & -4 & 3 \\ 0 & 0 & 0 & -9 \end{array}\right] \]

例7\(A \in M_m(\mathbb{R})\), $D \in M_n(\mathbb{R}) $都可逆,则:

\[\begin{pmatrix} A & B \\ O & D \end{pmatrix}^{-1} = \begin{pmatrix} A^{-1} & -A^{-1}BD^{-1} \\ O & D^{-1} \end{pmatrix} \]

证明:

\[\begin{pmatrix} A & B & I_m & O \\ O & D & O & I_n \end{pmatrix} \]

经过初等行变换:

\[\overset{(II)}{\longrightarrow} \begin{pmatrix} A + ((-BD^{-1})O) & B + ((-BD^{-1})D) & I_m + ((-BD^{-1})O) & O + ((-BD^{-1})I_n) \\ O & D & O & I_n \end{pmatrix} \]

简化得:

\[= \begin{pmatrix} A & O & I_m & -BD^{-1} \\ O & D & O & I_n \end{pmatrix} \]

继续变换:

\[\overset{(III)}{\longrightarrow} \begin{pmatrix} (A^{-1})A & (A^{-1})O & (A^{-1})I_m & (A^{-1}) - BD^{-1} \\ (D^{-1})O & (D^{-1})D & (D^{-1})O & (D^{-1})I_n \end{pmatrix} \]

最终结果为:

\[= \begin{pmatrix} I_m & O & A^{-1} & -A^{-1}BD^{-1} \\ O & I_n & O & D^{-1} \end{pmatrix} \]

例8\(A \in M_n(\mathbb{R})\),则存在 \(\delta > 0\),使得对$ 0 < t < \delta$,有:

\[tI_n + A = \begin{pmatrix} t + a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & t + a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{n1} & a_{n2} & \cdots & t + a_{nn} \end{pmatrix} \]

证明:根据行列式的定义,\(|tI_n + A| = f(t)\) 是一个首项系数为1的关于\(t\)\(n\) 次多项式。

(插一句:这个关于\(t\) 的 $ n$ 次多项式是连续函数,这个连续性就是后面取极限处理的基石。)

因为\(f(t) = 0\)\(\mathbb{R}\)上最多有\(n\)个根(有限个),所以存在足够小的\(\delta > 0\),根不落在\((0, \delta)\) 上。

因此,对于\(0 < t < \delta\)\(|tI_n + A| = f(t) \neq 0\),即\(tI_n + A\)可逆。

总结

分块矩阵是对矩阵的集成重构。对于一些行数和列数较高的矩阵,为了简化分析和计算,时常用若干条横线和竖线将一个大矩阵划分成许多小矩阵,这些小矩阵称为子块,由子块组成的矩阵就称为分块矩阵。对矩阵进行适当分块,可使高阶矩阵的运算可以转化为低阶矩阵的运算,同时也使原矩阵的结构显得简单而清晰,从而能够大大简化运算步骤,或给矩阵的理论推导带来方便。有不少数学问题利用分块矩阵来处理或证明,将显得简洁、明快。分块矩阵有很多应用,将复杂矩阵转化为稍显熟悉的子块、分块对角矩阵的求逆等方面。分块矩阵最重要的用处就是(在某些情况下)可以把分块矩阵的块看成是数,按照普通矩阵(就是每个元素都是数)去发现解题思路,从而帮助我们思考,最后完成解题的过程(实际上整个线性代数都是这个思想,就是矩阵他具有数的一些特征,从而使我们看问题有一个站在更高的角度上,把问题看的更清楚的,更简单的思路)。

参考文献

  1. 矩阵计算(三):分块矩阵基本概念
  2. 4.2 矩阵的分块运算
  3. 数学技巧篇58:分块矩阵
posted @ 2023-03-07 08:08  郝hai  阅读(2118)  评论(0)    收藏  举报