【线性代数】对称矩阵特征值估算
前置知识
- 相似变换与特征值
- 最优化与 Lagrange 乘子法
概述
给定实对称矩阵
- 首先证明,
A 可正交对角化,即A = Q\Lambda_0 Q^T 。 - 接着,通过消元得到
\Lambda_1 ,满足A = P\Lambda_1 P^T 。 - 最后,根据
\Lambda_0 \simeq \Lambda_1 ,结合 Sylvester 惯性定理,完成特征值的估算。
Part 1:实对称矩阵必可对角化
令二次型
考虑最优化问题
设
即
Lemma 1:
Proof:
由 Lemma 1,得
因此
Lemma 2:
Proof:
- 设
v \cdot x = 0 ,则\begin{aligned} v \cdot Ax &= x \cdot Av \\ &= \lambda(x \cdot v) \\ &= 0\end{aligned} - 即
x \in \mathcal{S} \implies Ax \in \mathcal{S} 。
令
因此,
删去
执行上述操作
值得一提的是,由于这些特征向量两两垂直,相似变换的过渡矩阵是正交矩阵,这也被称作正交对角化。更进一步的,实方阵能被正交对角化,当且仅当它是实对称矩阵。
因此,我们有
众所周知的,相似变换的本质是替换坐标系——同一个线性变换在不同坐标系下有不同的表现,而相似变换便架起了它们之间的桥梁。同时,正交坐标系是美妙的,对角矩阵也是美妙的,而实对称矩阵恰好可以借助这个美妙的定理,在某个美妙的正交坐标系下,等价为一个美妙的对角矩阵。这个对角矩阵不仅与原矩阵相似,也与原矩阵全等。
Part 2: 实对称矩阵的消元
给定实对称矩阵
有很多的方式可以做到这一点,下面给出我自己的方法。
考虑枚举
- 每当
i \leftarrow i + 1 后:- 借助
A_{11}, A_{22}, \cdots, A_{jj} 对第i 行和第i 列同时进行消元,保证初等行变换与列变换对应的矩阵互为转置。 - 消元完成后,设第
i 行首个非零元素为A_{ik} ,则第i 列首个非零元素为A_{ki} 。若k \le i ,则将第k 行加上第i 行,将第k 列加上第i 列;再将第k 行与第j + 1 行交换,将第k 列与第j + 1 列交换。最后,我们将j 加一,再将i 改回j ,并回到流程的开头。特别的,若k > i 或k 不存在,则直接回到开头。
- 借助
最后,我们便消得了对角矩阵
Part 3: 特征值的估算
Theorem(Sylvester's law of inertia):两个相同大小的实对称方阵具有相同数量的正、负和零特征值当且仅当它们全等。
根据 Part 1, 2,现有
那么,如何估算所有特征值呢?不难发现,