线性代数系列:通过矩阵对角化简化矩阵的幂计算

关键词:线性代数矩阵对角化

知识准备

矩阵的对角化可以极大地简化矩阵的幂计算。

如果一个 n \times n 的矩阵 A 可以对角化,即存在一个可逆矩阵 P 和一个对角矩阵 D,使得:
A = PDP^{-1}
其中 D 的对角线元素是 A 的特征值。

那么,计算 Ak 次幂就变得非常简单:
\begin{align*} A^k &= (PDP^{-1})^k \\ &= (PDP^{-1})(PDP^{-1})(PDP^{-1})\cdots(PDP^{-1}) \quad \text{(k 个)} \\ &= PD(P^{-1}P)D(P^{-1}P)D\cdots(P^{-1}P)DP^{-1} \\ &= PD(I)D(I)D\cdots(I)DP^{-1} \\ &= P\underbrace{DD\cdots D}_{k \text{ 个}}P^{-1} \\ &= PD^kP^{-1} \end{align*}

关键在于,计算对角矩阵 Dk 次幂 D^k 极其容易:只需要将 D 对角线上的每个元素分别取 k 次幂即可。例如,如果
D = \begin{bmatrix} \lambda_1 & 0 & \cdots & 0 \\ 0 & \lambda_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \lambda_n \end{bmatrix}
那么
D^k = \begin{bmatrix} \lambda_1^k & 0 & \cdots & 0 \\ 0 & \lambda_2^k & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & \lambda_n^k \end{bmatrix}

因此,计算 A^k 的步骤是:

  1. 对角化 A 得到 PD,即求A的特征值和特征向量
  2. 计算 D^k
  3. 计算 PD^kP^{-1} 得到 A^k

总结: 对于可对角化的矩阵,对角化将复杂的矩阵乘法(计算 A^k)转化为相对简单的对角矩阵幂运算和一次矩阵乘法,从而大大方便了矩阵幂的计算。这对于需要计算高次幂(如在动力系统、马尔可夫链、递推关系求解中)的情况尤其有用。


[例题1]

已知 A 是 3 阶矩阵,且
A \sim D = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 2 & 0 \\ 0 & 0 & 3 \end{bmatrix}
B = A^3 - 6A^2 + 11A - 8E,则 B = ____

解:
P^{-1}AP = D

A = PDP^{-1}
A^3 为例
A^3 = PDP^{-1}PDP^{-1}PDP^{-1} = PD^3P^{-1} = \begin{bmatrix} 1 & 0 & 0 \\ 0 & 8 & 0 \\ 0 & 0 & 27 \end{bmatrix}

因此
B = P \begin{bmatrix} 1 & 0 & 0 \\ 0 & 8 & 0 \\ 0 & 0 & 27 \end{bmatrix} P^{-1} - 6P \begin{bmatrix} 1 & 0 & 0 \\ 0 & 4 & 0 \\ 0 & 0 & 9 \end{bmatrix} P^{-1} + 11P \begin{bmatrix} 1 & 0 & 0 \\ 0 & 2 & 0 \\ 0 & 0 & 3 \end{bmatrix} P^{-1} - 8 \begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{bmatrix}

由于 8E = 8PEP^{-1},再根据矩阵相加的结合律和分配律
\begin{align*} B &= P \left( \begin{bmatrix} 1 & 0 & 0 \\ 0 & 8 & 0 \\ 0 & 0 & 27 \end{bmatrix} - \begin{bmatrix} 6 & 0 & 0 \\ 0 & 24 & 0 \\ 0 & 0 & 54 \end{bmatrix} + \begin{bmatrix} 11 & 0 & 0 \\ 0 & 22 & 0 \\ 0 & 0 & 33 \end{bmatrix} - \begin{bmatrix} 8 & 0 & 0 \\ 0 & 8 & 0 \\ 0 & 0 & 8 \end{bmatrix} \right) P^{-1} \\ &= P \begin{bmatrix} -2 & 0 & 0 \\ 0 & -2 & 0 \\ 0 & 0 & -2 \end{bmatrix} P^{-1} \\ &= -2 PEP^{-1} \\ &= -2E \end{align*}


[例题2]

已知矩阵 A = \begin{bmatrix} 2 & a & 1 \\ 0 & 3 & 0 \\ 3 & -6 & 0 \end{bmatrix} 能相似于对角矩阵。

(1) 求 a 的值。

(2) 求 A^{100}

解:
(1)A能相似于对角矩阵,则A有3个线性无关的特征向量,求A的特征值

|\lambda E - A| = \begin{vmatrix} \lambda-2 & -a & -1 \\ 0 & \lambda-3 & 0 \\ -3 & 6 & \lambda \end{vmatrix} = \begin{vmatrix} \lambda-3 & -a & -1 \\ 0 & \lambda-3 & 0 \\ \lambda-3 & 6 & \lambda \end{vmatrix} = \begin{vmatrix} \lambda-3 & -a & -1 \\ 0 & \lambda-3 & 0 \\ 0 & 6+a & \lambda+1 \end{vmatrix} = (\lambda-3)(\lambda-3)(\lambda+1) = 0

所以 \lambda_1 = \lambda_2 = 3, \lambda_3 = -1

因为矩阵 A 能相似对角化,所以当 \lambda_1 = \lambda_2 = 3 时,其线性无关的特征向量(基础解系)应有 2 个,这意味着矩阵 3E - A 的秩应为 3 - 2 = 1

3E - A = \begin{bmatrix} 1 & -a & -1 \\ 0 & 0 & 0 \\ -3 & 6 & 3 \end{bmatrix} \rightarrow \begin{bmatrix} 1 & -a & -1 \\ 0 & 0 & 0 \\ 0 & 6-3a & 0 \end{bmatrix}

要使该矩阵的秩为1,必须有 6 - 3a = 0,因此 a = 2

(2)
矩阵 A^{100} 的计算过程

已知 a = 2,则矩阵:
A = \begin{bmatrix} 2 & 2 & 1 \\ 0 & 3 & 0 \\ 3 & -6 & 0 \end{bmatrix}

求特征值与特征向量

\lambda_1 = \lambda_2 = 3 时:

3E - A = \begin{bmatrix} 1 & -2 & -1 \\ 0 & 0 & 0 \\ -3 & 6 & 3 \end{bmatrix} \rightarrow \begin{bmatrix} 1 & -2 & -1 \\ 0 & 0 & 0 \\ 0 & 0 & 0 \end{bmatrix}

解得基础解系中的两个线性无关特征向量:
\mathbf{v}_1 = \begin{bmatrix} 2 \\ 1 \\ 0 \end{bmatrix}, \quad \mathbf{v}_2 = \begin{bmatrix} 1 \\ 0 \\ 1 \end{bmatrix}

\lambda_3 = -1 时:

-E - A = \begin{bmatrix} -3 & -2 & -1 \\ 0 & -4 & 0 \\ -3 & 6 & -1 \end{bmatrix} \rightarrow \begin{bmatrix} -3 & -2 & -1 \\ 0 & -4 & 0 \\ 0 & 0 & 0 \end{bmatrix} \quad \text{(化简后)}

解得基础解系中的一个特征向量:
\mathbf{v}_3 = \begin{bmatrix} -1 \\ 0 \\ 3 \end{bmatrix}

构造可逆矩阵 P

将特征向量作为列向量构造 P
P = \begin{bmatrix} 2 & 1 & -1 \\ 1 & 0 & 0 \\ 0 & 1 & 3 \end{bmatrix}

于是有:
A = P \Lambda P^{-1} \quad \Rightarrow \quad A^{100} = P \Lambda^{100} P^{-1}

其中:
\Lambda^{100} = \begin{bmatrix} 3^{100} & 0 & 0 \\ 0 & 3^{100} & 0 \\ 0 & 0 & (-1)^{100} \end{bmatrix} = \begin{bmatrix} 3^{100} & 0 & 0 \\ 0 & 3^{100} & 0 \\ 0 & 0 & 1 \end{bmatrix} \quad (\text{因为 } (-1)^{100} = 1)

P^{-1}

构造增广矩阵 [P \mid E] 并进行行变换:

\left[\begin{array}{ccc|ccc} 2 & 1 & -1 & 1 & 0 & 0 \\ 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & 3 & 0 & 0 & 1 \end{array}\right] \rightarrow \left[\begin{array}{ccc|ccc} 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & 3 & 0 & 0 & 1 \\ 0 & 0 & -4 & 1 & -2 & 1 \end{array}\right] \rightarrow \left[\begin{array}{ccc|ccc} 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & 3 & 0 & 0 & 1 \\ 0 & 0 & 1 & -\frac{1}{4} & \frac{1}{2} & -\frac{1}{4} \end{array}\right] \rightarrow \left[\begin{array}{ccc|ccc} 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & 0 & \frac{3}{4} & -\frac{3}{2} & \frac{1}{4} \\ 0 & 0 & 1 & -\frac{1}{4} & \frac{1}{2} & \frac{1}{4} \end{array}\right]

所以:
P^{-1} = \begin{bmatrix} 0 & 1 & 0 \\ \frac{3}{4} & -\frac{3}{2} & \frac{1}{4} \\ -\frac{1}{4} & \frac{1}{2} & \frac{1}{4} \end{bmatrix}

计算 A^{100}

A^{100} = P \Lambda^{100} P^{-1} = \begin{bmatrix} 2 & 1 & -1 \\ 1 & 0 & 0 \\ 0 & 1 & 3 \end{bmatrix} \begin{bmatrix} 3^{100} & 0 & 0 \\ 0 & 3^{100} & 0 \\ 0 & 0 & 1 \end{bmatrix} \begin{bmatrix} 0 & 1 & 0 \\ \frac{3}{4} & -\frac{3}{2} & \frac{1}{4} \\ -\frac{1}{4} & \frac{1}{2} & \frac{1}{4} \end{bmatrix}

先计算中间乘积,最终结果为:

A^{100} = \frac{1}{4} \begin{bmatrix} 3^{101} + 1 & -2 \cdot 3^{100} + 2 & 3^{100} - 1 \\ 0 & 4 \cdot 3^{100} & 0 \\ 3^{101} - 3 & -2 \cdot 3^{100} + 6 & 3^{100} + 3 \end{bmatrix}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容