ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

线性代数 - 矩阵对角化

2022-07-23 21:33:33  阅读:212  来源: 互联网

标签:角化 end 矩阵 begin 线性代数 bmatrix alpha mathcal gamma


矩阵对角化

今天听 \(\texttt{m}\color{red}\texttt{yee}\) 嘴的,赶紧来补个学习笔记。

我们有点时候需要计算一个较小矩阵的 \(n\) 次幂,但直接求幂非常不方便,这是会考虑矩阵对角化,将 \(M\) 改写为 \(\mathcal{PDP^{-1}}\),这样 \(M^n\) 次就可以写为 \((\mathcal{PDP^{-1}})=\mathcal{PD^nP^{-1}}\),转化为快速计算 \(\mathcal{D^n}\)。

求解方法

我们定义一个矩阵 \(\mathcal{A}\) 的特征向量为 \(\alpha\),相应特征值为 \(\gamma\),他们满足:

\[\mathcal{A}\alpha=\gamma\alpha \]

其中 \(\alpha\) 是定义在 \(K^n\) 次空间内的非零向量,\(\gamma\) 是一个常数,可以将上面的式子写成矩阵的形式:

\[\begin{bmatrix}a_{1,1}&a_{1,2}&\cdots&a_{1,m}\\a_{2,1}&a_{2,2}&\cdots&a_{2,m}\\\vdots&\vdots&\ddots&\vdots\\a_{n,1}&a_{n,2}&\cdots&a_{n,m}\end{bmatrix}\times\begin{bmatrix}b_1\\b_2\\\vdots\\b_n\end{bmatrix}=\begin{bmatrix}\gamma b_1\\\gamma b_2\\\vdots\\\gamma b_n\end{bmatrix} \]

矩阵对这个向量只起到拉扯作用。

对于上面的定义式 \(\mathcal{A}\alpha=\gamma\alpha\),我们在右边乘上一个 \(I\) 单位矩阵对答案不会有任何影响,并可以作一下变形:

\[\mathcal{A}\alpha=\gamma\mathcal{I}\alpha\\ (\mathcal{A}-\gamma\mathcal{I})\alpha=\vec{0}\\ \]

观察上面的式子,可以发现 \(\mathcal{A}-\gamma\mathcal{I}\) 一定不存在矩阵的逆(证明:如果存在,可以在等式左右两端各乘上一个逆,那么得到 \(\alpha=\vec{0}\),但由于 \(\alpha\not=\vec{0}\),矛盾,所以不行)。

由于不存在矩阵的逆,所以一定有 \(\text{det}(\mathcal{A}-\gamma\mathcal{I})=0\)!!!

那么根据行列式的定义式:

\[\text{det}(M)=\sum_{\{p\}}(-1)^{\sigma(\{p\})}\prod_{i=1}^na_{i,p_i} \]

我们不妨手动计算行列式,其中不失有对二、三阶矩阵行列式的快速计算方法:

  • 二阶矩阵行列式:主对角线元素之积减去另外两个元素的乘积。
  • 三阶矩阵行列为:主对角线三乘三减去副对角线三乘三,\(a_{11}a_{22}a_{33}+a_{12}a_{23}a_{31}+a_{13}a_{21}a_{32}-a_{13}a_{22}a_{31}-a_{12}a_{21}a_{33}-a_{11}a_{23}a_{32}\)。

为了防止忘记减去 \(\gamma\),我们将 \(\mathcal{A}-\gamma\mathcal{I}\) 写成矩阵形式,这就是我们需要求解的矩阵:

\[\begin{bmatrix}a_{1,1}-\gamma&a_{1,2}&\cdots&a_{1,m}\\a_{2,1}&a_{2,2}-\gamma&\cdots&a_{2,m}\\\vdots&\vdots&\ddots&\vdots\\a_{n,1}&a_{n,2}&\cdots&a_{n,m}-\gamma\end{bmatrix} \]

那么写出行列式表达式,我们得到了关于 \(\gamma\) 的一个方程,对它求解我们就得到了 \(\le n\) 个 \(\gamma\) 值。

对于每一个 \(\gamma\),代回上面 \((\mathcal{A}-\gamma\mathcal{I})\alpha=\vec{0}\) 的式子,我们就可以计算出 \(n\) 个 \(\alpha\) 的表达式,我们的要求是这 \(n\) 个 \(\alpha\) 线性无关!!

结果已经出现,假设对角化后结果为 \(\mathcal{A}=\mathcal{PDP^{-1}}\),那么:

\[\mathcal{P}=\begin{bmatrix}\alpha_1&\alpha_2&\cdots&\alpha_n\end{bmatrix}\\\mathcal{D}=\begin{bmatrix}\gamma_1&0&\cdots&0\\0&\gamma_2&\cdots&0\\\vdots&\vdots&\ddots&\vdots\\0&0&\cdots&\gamma_n\end{bmatrix} \]

\(\mathcal{P^{-1}}\) 就是 \(\mathcal{P}\) 的逆,可以手动计算!!由于 \(\gamma\) 解 \(\alpha\) 时可能会有多个解,只要相应 \(\gamma\) 对应相应 \(\alpha\) 即可。

注意其中每一个 \(\alpha\) 都是列向量,所以 \(\mathcal{P}\) 是一个 \(n\times n\) 的方阵。

这样就可以快速求出 \(\mathcal{A}\) 的表达式啦!!

例题

hdu 6956 Pass!

有 \(n\) 个小朋友在玩球!!最开始球在 \(1\) 号小朋友手上,每次游戏小朋友都会将球等概率传给除了自己的任何一个小朋友。

设经过 \(t\) 次传球后将球传回 \(1\) 号小朋友的方案数对 998244353 取模的值为 \(x\)。

现在给定 \(x\),求最小的 \(t\),满足方案数取模后为 \(x\),如果无解输出 -1

\(1\le T\le 100,2\le n\le 10^6,0\le x<998244353\)。

先考虑一个正向暴力的做法:

\[dp_{i,j}=\dfrac{\sum_{k=1}^{n}[j\not=k]dp_{i-1,k}}{n-1}\\ \]

设 \(f_i\) 表示在第 \(i\) 次传球后球在 \(1\) 的概率,\(g_i\) 表示不在 \(1\) 的概率,一定有 \(f_i+g_i=1\)

\[g_{i}=(n-2)\times g_{i-1}+(n-1)\times f_{i-1}\\ f_i=g_{i-1}\\ \begin{bmatrix}f_0\\g_0\end{bmatrix}=\begin{bmatrix}1\\0\end{bmatrix}\\ \begin{bmatrix}f_i\\g_i\end{bmatrix}=\begin{bmatrix}0&1\\n-1&n-2\end{bmatrix}\times \begin{bmatrix}f_{i-1}\\g_{i-1}\end{bmatrix}=\begin{bmatrix}0&1\\n-1&n-2\end{bmatrix}^i\times \begin{bmatrix}1\\0\end{bmatrix} \]

根据上面的推导,我们对等式右边的矩阵对角化,可以解出 \(\gamma_1=n-1,\gamma_2=-1\),

\[\alpha_1=\begin{bmatrix}n-1\\1\end{bmatrix}\\ \alpha_2=\begin{bmatrix}1\\-1\end{bmatrix}\\ \]

写出对角化之后的矩阵:

\[\mathcal{P}=\begin{bmatrix}n-1&1\\1&-1\end{bmatrix}\\ \mathcal{D}=\begin{bmatrix}n-1&0\\0&-1\end{bmatrix}\\ \mathcal{P^{-1}}=\begin{bmatrix}gugugu\end{bmatrix} \]

标签:角化,end,矩阵,begin,线性代数,bmatrix,alpha,mathcal,gamma
来源: https://www.cnblogs.com/EricQian/p/16513091.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有