矩阵指数

                     

贡献者: JierPeter

  • 本文缺少预备知识,初学者可能会遇到困难。

1. 定义

   实数域上的指数函数 $ \mathrm{e} ^x$ 可以进行 Maclaurin 展开:

\begin{equation} \mathrm{e} ^x=\sum\limits_{n=0}^\infty \frac{x^n}{n!}~. \end{equation}

   展开式使得我们只需要用 $x$ 的幂就可以表示指数 $ \mathrm{e} ^x$。我们把这一点应用到矩阵中,就可以用方阵的幂来定义出矩阵的指数:

定义 1 矩阵指数

   给定方阵 $ \boldsymbol{\mathbf{M}} $,定义

\begin{equation} \mathrm{e} ^{ \boldsymbol{\mathbf{M}} }=\sum_{n=0}^\infty \frac{ \boldsymbol{\mathbf{M}} ^n}{n!}~. \end{equation}
并称之为矩阵 $ \boldsymbol{\mathbf{M}} $ 的指数(matrix exponential)。其中对于任意方阵 $ \boldsymbol{\mathbf{M}} $,都有 $ \boldsymbol{\mathbf{M}} ^0= \boldsymbol{\mathbf{I}} $,$ \boldsymbol{\mathbf{I}} $ 是单位矩阵。

   矩阵指数在常微分方程中非常常用,是用来解线性齐次方程组的利器。一个矩阵的指数本身还是一个矩阵。

2. 矩阵指数的性质

相似变换的统一

   由过渡矩阵可知,如果矩阵 $ \boldsymbol{\mathbf{M}} $ 在某基下表示一个线性变换,那么当基按过渡矩阵 $ \boldsymbol{\mathbf{Q}} $ 改变时,同一个线性变换的矩阵表示就变为 $ \boldsymbol{\mathbf{Q}} ^{-1} \boldsymbol{\mathbf{M}} \boldsymbol{\mathbf{Q}} $。在原基下,$ \mathrm{e} ^{ \boldsymbol{\mathbf{M}} }$ 可以表示另一个线性变换,而它在 $ \boldsymbol{\mathbf{Q}} $ 下的变换是

\begin{equation} \boldsymbol{\mathbf{Q}} ^{-1} \mathrm{e} ^{ \boldsymbol{\mathbf{M}} } \boldsymbol{\mathbf{Q}} = \mathrm{e} ^{ \boldsymbol{\mathbf{Q}} ^{-1} \boldsymbol{\mathbf{M}} \boldsymbol{\mathbf{Q}} }~. \end{equation}

   也就是说,$ \mathrm{e} ^{ \boldsymbol{\mathbf{M}} }$ 所表示的变换,在基变换的时候,其矩阵表示的变换相当于给 $ \boldsymbol{\mathbf{M}} $ 变换后再取矩阵指数。这意味着我们也可以定义线性变换的指数——也可以反过来说,这是因为我们可以定义线性变换的指数,方式也是使用 Maclaulin 级数。

   事实上,如果 $\mathcal{T}_i$ 表示若干线性变换,我们可以用映射的复合来定义线性变换的乘法:那么对于任意向量 $ \boldsymbol{\mathbf{v}} $,$\mathcal{T}^n_i( \boldsymbol{\mathbf{v}} )=\mathcal{T}_i(\mathcal{T}^{n-1}_i( \boldsymbol{\mathbf{v}} ))$,其中 $\mathcal{T}_i^1=\mathcal{T}_i$。类似地,也可以定义线性变换的加法:$(\mathcal{T}_1+\mathcal{T}_2)( \boldsymbol{\mathbf{v}} )=\mathcal{T}_1( \boldsymbol{\mathbf{v}} )+\mathcal{T}_2( \boldsymbol{\mathbf{v}} )$。这样,有了乘法和加法,就可以计算线性变换的级数了,而 Maclaulin 级数就可以定义为其指数:

\begin{equation} \mathrm{e} ^\mathcal{T}=\sum\limits_{n=0}^\infty \frac{\mathcal{T}^n}{n!}~. \end{equation}
其中 $\mathcal{T}^0$ 是恒等变换,对应单位矩阵。

   式 3 意味着,如果 $ \boldsymbol{\mathbf{M}} $ 是 $\mathcal{T}$ 在某基下的矩阵表示,那么 $ \mathrm{e} ^\mathcal{T}$ 在该基下的矩阵表示就是 $ \mathrm{e} ^{ \boldsymbol{\mathbf{M}} }$。

运算性质

   设 $ \boldsymbol{\mathbf{M}} , \boldsymbol{\mathbf{N}} \in \operatorname {gl}(n, \mathbb{F})$,$a, b\in\mathbb{F}$,则容易得出以下性质:

   如果 $ \boldsymbol{\mathbf{MN}} = \boldsymbol{\mathbf{NM}} $,那么我们有 $ \mathrm{e} ^{ \boldsymbol{\mathbf{M}} } \mathrm{e} ^{ \boldsymbol{\mathbf{N}} }= \mathrm{e} ^{ \boldsymbol{\mathbf{M}} + \boldsymbol{\mathbf{N}} }$。

   $ \mathrm{e} ^{( \boldsymbol{\mathbf{M}} ^{\mathrm{T}} )}=( \mathrm{e} ^{ \boldsymbol{\mathbf{M}} }) ^{\mathrm{T}} $,$ \mathrm{e} ^{( \boldsymbol{\mathbf{M}} ^\dagger)}=({ \mathrm{e} ^{ \boldsymbol{\mathbf{M}} }})^\dagger$。

定理 1 矩阵指数的行列式与矩阵的迹

   对于 $ \boldsymbol{\mathbf{M}} \in \operatorname {gl}(n, \mathbb{F})$,有 $ \left\lvert \mathrm{e} ^{ \boldsymbol{\mathbf{M}} } \right\rvert = \mathrm{e} ^{ \operatorname {tr}( \boldsymbol{\mathbf{M}} )}$。即:矩阵指数的行列式,等于矩阵迹的指数。

   证明

   我们只需要考虑上三角矩阵 $ \boldsymbol{\mathbf{M}} $ 的情况即可,因为任何矩阵总可以通过相似变换变成上三角矩阵。此时,$ \boldsymbol{\mathbf{M}} $ 的迹就是主对角元素之和,而 $ \boldsymbol{\mathbf{M}} ^k$ 的第 $i$ 个主对角元素都是 $ \boldsymbol{\mathbf{M}} $ 的第 $i$ 个主对角元素的 $k$ 次方。

   如果只看主对角元素,那么可以记 $ \boldsymbol{\mathbf{M}} $ 为 $(m_1, m_2,\cdots,m_n)$,其中各 $m_i$ 是 $ \boldsymbol{\mathbf{M}} $ 的第 $i$ 个元素。类似地,$ \boldsymbol{\mathbf{M}} ^k$ 就可以记为 $(m_1^k, m_2^k,\cdots,m_n^k)$。代入矩阵指数的定义式,可得 $ \mathrm{e} ^{ \boldsymbol{\mathbf{M}} }$ 的对角线元素为 $( \mathrm{e} ^m_1, \mathrm{e} ^m_2,\cdots, \mathrm{e} ^m_n)$。

   由于上三角矩阵的乘积还是上三角矩阵,可知 $ \mathrm{e} ^{ \boldsymbol{\mathbf{M}} }$ 是上三角矩阵,因此 $ \left\lvert \mathrm{e} ^{ \boldsymbol{\mathbf{M}} } \right\rvert = \mathrm{e} ^m_1\times \mathrm{e} ^m_2\times\cdots\times \mathrm{e} ^m_n= \mathrm{e} ^{ \mathrm{e} ^m_1+ \mathrm{e} ^m_2+\cdots+ \mathrm{e} ^m_n}= \mathrm{e} ^{ \operatorname {tr}( \boldsymbol{\mathbf{M}} )}$。

   证毕

定理 2 矩阵指数求导

   矩阵 $ \mathrm{e} ^{ \boldsymbol{\mathbf{M}} t}$ 是一个关于实变量 $t$ 的函数,则

\begin{equation} \frac{ \,\mathrm{d}{}} { \,\mathrm{d}{t} } \mathrm{e} ^{ \boldsymbol{\mathbf{M}} t}= \boldsymbol{\mathbf{M}} \mathrm{e} ^{ \boldsymbol{\mathbf{M}} t}~, \end{equation}
其中求导定义为对每个矩阵元单独求导的结果。

   定理 2 的形式和 $\frac{ \,\mathrm{d}{}} { \,\mathrm{d}{t} } \mathrm{e} ^{at}=a \mathrm{e} ^{at}$ 是一样的,它们也共享同一个证明,我们留作习题:

习题 1 

   根据式 2 的定义,注意 $ \boldsymbol{\mathbf{M}} $ 是常数矩阵,证明式 5

3. 对角化计算矩阵指数

   最容易计算指数的矩阵,是对角矩阵。由于两个对角矩阵相乘后还是对角矩阵,结果矩阵的第 $i$ 个对角元就是两个矩阵的第 $i$ 个对角元相乘,因此对于任意非负整数 $k$ 有

\begin{equation} \left( \operatorname {diag}(a_1, a_2, \cdots, a_n) \right) ^k = \operatorname {diag}(a_1^k, a_2^k, \cdots, a_n^k)~. \end{equation}
于是易得
\begin{equation} \mathrm{e} ^{ \operatorname {diag(a_1, a_2, \cdots, a_n)}} = \operatorname {diag}( \mathrm{e} ^{a_1}, \mathrm{e} ^{a_2}, \cdots, \mathrm{e} ^{a_n})~. \end{equation}

   如果矩阵不是对角的,则计算会麻烦很多。但是,如果矩阵能通过相似变换化为对角矩阵,那么根据式 3 即可大大简化计算。对于任意矩阵 $ \boldsymbol{\mathbf{M}} $,如果存在可逆矩阵 $ \boldsymbol{\mathbf{Q}} $ 使得 $ \boldsymbol{\mathbf{Q}} ^{-1} \boldsymbol{\mathbf{MQ}} $ 是对角矩阵,那么 $ \mathrm{e} ^{ \boldsymbol{\mathbf{Q}} ^{-1} \boldsymbol{\mathbf{MQ}} }$ 非常容易计算,从而容易计算出

\begin{equation} \mathrm{e} ^{ \boldsymbol{\mathbf{M}} } = \boldsymbol{\mathbf{Q}} \mathrm{e} ^{ \boldsymbol{\mathbf{Q}} ^{-1} \boldsymbol{\mathbf{MQ}} } \boldsymbol{\mathbf{Q}} ^{-1}~. \end{equation}
利用可逆矩阵得到对角矩阵 $ \boldsymbol{\mathbf{Q}} ^{-1} \boldsymbol{\mathbf{MQ}} $ 的过程,称为矩阵 $ \boldsymbol{\mathbf{M}} $ 的对角化。

   并不是所有矩阵都能对角化,但复数域上的矩阵一定可以。我们可以利用特征方程来做对角化。求解特征方程

\begin{equation} \det \left( \boldsymbol{\mathbf{M}} -\lambda \boldsymbol{\mathbf{E}} \right) =0~, \end{equation}
这个方程是关于 $\lambda$ 的 $n$ 次多项式方程,其中 $n$ 是 $ \boldsymbol{\mathbf{M}} $ 的阶数。根据代数学基本定理,此方程一定有 $n$ 个解(计入重数),记为 $\lambda_1, \cdots, \lambda_n$,它们就是 $ \boldsymbol{\mathbf{M}} $ 的特征值。接下来,求解线性方程组(向量的线性方程)
\begin{equation} \boldsymbol{\mathbf{M}} \boldsymbol{\mathbf{X}} = \lambda_i \boldsymbol{\mathbf{X}} ~, \end{equation}
每个这样的方程组一定有非零解(为什么?),这些解即为 $ \boldsymbol{\mathbf{M}} $ 的特征向量。每个非零解作为列向量,排成一排,所得的矩阵便是 $ \boldsymbol{\mathbf{Q}} $。

例 1 复矩阵对角化

   给定复矩阵

\begin{equation} \begin{pmatrix} 1&-1\\ 1&1 \end{pmatrix} ~, \end{equation}
其特征方程为
\begin{equation} (1-\lambda)(1-\lambda)+1=0~, \end{equation}
解为
\begin{equation} \lambda_1 = 1- \mathrm{i} , \lambda_2 = 1+ \mathrm{i} ~. \end{equation}

   对特征值 $1- \mathrm{i} $ 求特征向量:

\begin{equation} \begin{pmatrix} 1&-1\\ 1&1 \end{pmatrix} \begin{pmatrix} x\\y \end{pmatrix} = (1- \mathrm{i} ) \begin{pmatrix} x\\y \end{pmatrix} ~, \end{equation}
得到非零解
\begin{equation} \begin{pmatrix} 1\\ \mathrm{i} \end{pmatrix} ~. \end{equation}
同理,对特征值 $1+ \mathrm{i} $ 求特征向量,得到非零解
\begin{equation} \begin{pmatrix} 1\\ - \mathrm{i} \end{pmatrix} ~. \end{equation}
于是可以令
\begin{equation} \boldsymbol{\mathbf{Q}} = \begin{pmatrix} 1&1\\ \mathrm{i} &- \mathrm{i} \end{pmatrix} ~, \end{equation}
从而得到对角矩阵
\begin{equation} \boldsymbol{\mathbf{Q}} ^{-1} \boldsymbol{\mathbf{QM}} = \frac{1}{2} \begin{pmatrix} 1&- \mathrm{i} \\ 1& \mathrm{i} \end{pmatrix} \begin{pmatrix} 1&-1\\ 1&1 \end{pmatrix} \begin{pmatrix} 1&1\\ \mathrm{i} &- \mathrm{i} \end{pmatrix} = \begin{pmatrix} 1- \mathrm{i} &0\\ 0&1+ \mathrm{i} \end{pmatrix} ~. \end{equation}

   由于实数是复数的子集,故实矩阵也可以在复数域上对角化,虽然对角化后的结果可能不再是实矩阵,但依然可以计算其矩阵指数后再做逆相似变换,还原回实矩阵。

                     

© 小时科技 保留一切权利