矩陣差分方程

矩陣差分方程是一種差分方程，其中某時刻的變量向量（或矩陣）與之前時刻的值通過矩陣相關。方程的階是變量向量任意兩個指示值之間的最大時差。例如

$$\mathbf x_t = \mathbf{Ax}_{t-1} + \mathbf{Bx}_{t-2}$$

是二階矩陣差分方程，其中x是n × 1變量向量，A、B是n × n矩陣。該方程齊次，因為方程末尾沒有常數項向量。同一個方程也可寫成

$$\mathbf x_{t+2} = \mathbf{Ax}_{t+1} + \mathbf{Bx}_{t}$$

或

$$\mathbf x_n = \mathbf{Ax}_{n-1} + \mathbf{Bx}_{n-2}$$

最常見的矩陣差分方程都是一階的。

## 非齊次一階情形及穩態

非齊次一階矩陣差分方程如：

$$\mathbf x_t = \mathbf{Ax}_{t-1} + \mathbf{b}$$

與一個加性常向量 b。該系統的穩態是x向量的值x*，一旦達到就不會偏離。x*可通過置xt = xt−1 = x*、解x*以得

$$\mathbf{x}^* = [\mathbf{I}-\mathbf{A}]^{-1}\mathbf{b}$$

其中I是n × n單位矩陣，假定I − A可逆。非齊次方程可用偏離穩態的齊次方程重寫：

$$\left[\mathbf{x}_t - \mathbf{x}^*\right] = \mathbf{A}\left[\mathbf{x}_{t-1}-\mathbf{x}^*\right]$$

## 一階情形的穩定性

一階矩陣差分方程xt − x* = Axt−1 − x*是穩定的，即若且唯若轉移矩陣A的所有特徵值（無論實復）絕對值都小於1時，xt才逐漸收斂到穩態x*。

## 解一階情形

假定方程齊次形式為yt = Ayt−1，然後可從初始條件y0開始迭代。y0是y的初值，必須得知才能求解：

$$\begin{align} \mathbf y_1 &= \mathbf{Ay}_0 \\ \mathbf y_2 &= \mathbf{Ay}_1=\mathbf A^2 \mathbf y_0 \\ \mathbf y_3 &= \mathbf{Ay}_2=\mathbf A^3 \mathbf y_0 \end{align}$$

以此類推，由數學歸納法，用t表示的解為

$$\mathbf y_t=\mathbf A^t \mathbf y_0$$

此外，若A可對角化，就可用它的特徵值和特徵向量重寫A，得到解

$$\mathbf y_t = \mathbf{PD}^{t}\mathbf{P}^{-1} \mathbf y_0,$$

其中P是n × n矩陣，列是A的特徵向量（假設特徵值互異）；D是n × n對角矩陣，對角元是A的特徵值。這個解就是上述穩定性結果的依據：若且唯若A的特徵值絕對值都小於1，At才會隨時間收縮到零矩陣。

## 從一階矩陣系統中提取單一標量變量的動力特性

從n維系統yt = Ayt−1開始，可以提取其中一個狀態變量（如y1）的動態變化。上述yt的求解方程表明，y1,t的解是根據A的n個特徵值求得的。因此，描述y1變化的方程本身必須有涉及特徵值的解。這種描述直觀地產生了y1的演化方程，即

$$y_{1,t} = a_1 y_{1,t-1} + a_2 y_{1,t-2} + \dots + a_n y_{1,t-n}$$

其中參數ai來自A的特徵方程式：

$$\lambda^{n} - a_1 \lambda^{n-1} - a_2 \lambda^{n-2} - \dots - a_n \lambda^{0} = 0.$$

因此，n維一階線性系統中的每個標量變量都根據一元n階差分方程演化，與矩陣差分防塵具有相同的穩定性。

## 高階情形的解與穩定性

可用分塊矩陣將高階矩陣差分方程轉換到一階，可以求解時滯超過一個周期的高階方程，並分析其穩定性。例如，假設有二階方程

$$\mathbf x_t = \mathbf{Ax}_{t-1} + \mathbf{Bx}_{t-2}$$

變量向量x尺寸為n × 1，A、B尺寸為n × n。則可以疊加為下列形式

$$\begin{bmatrix}\mathbf{x}_t \\ \mathbf{x}_{t-1} \\ \end{bmatrix} = \begin{bmatrix} \mathbf{A} & \mathbf{B} \\ \mathbf{I} & \mathbf{0} \\ \end{bmatrix} \begin{bmatrix} \mathbf{x}_{t-1} \\ \mathbf{x}_{t-2} \end{bmatrix}$$

其中I是n × n單位矩陣，0是n × n零矩陣。然後將當前變量和一度滯後變量的2n × 1疊加向量表示為zt，將2n × 2n分塊矩陣表示為L，就得到了之前的解

$$\mathbf z_t = \mathbf L^t \mathbf z_0$$

與之前一樣，若且唯若矩陣L 的所有特徵值的絕對值都小於1時，疊加方程與原二階方程才穩定。

## 非線性矩陣差分方程：黎卡提方程

在LQG控制中，會出現一個當前和未來成本矩陣反向演化的非線性矩陣方程，下面用H表示。這個方程也被稱為離散動力黎卡提方程，當據線性矩陣差分方程演化的變量向量受外源向量的控制，以優化二次損失函數時，就會產生這個方程。黎卡提方程形式如下：

$$\mathbf{H}_{t-1} = \mathbf{K} +\mathbf{A}'\mathbf{H}_t\mathbf{A} - \mathbf{A}'\mathbf{H}_t\mathbf{C}\left[\mathbf{C}'\mathbf{H}_t\mathbf{C}+\mathbf{R}\right]^{-1}\mathbf{C}'\mathbf{H}_t\mathbf{A}$$

其中H、K、A尺寸為n × n；C尺寸為n × k；R尺寸為k × k，n是受控向量元素數，k是控制向量元素數。參數矩陣A、C來自線性方程，參數矩陣K、R來自二次損失函數。詳見此處。

一般來說，該方程無法根據t分析求解Ht，而是通過迭代黎卡提方程，求出Ht的值序列。不過，已經證明，若R = 0、n = k + 1，則可將黎卡提方程簡化為標量有理差分方程分析求解；對任意k、n，若轉移矩陣A可逆，則黎卡提方程就可根據矩陣特徵值進行分析求解，儘管特徵值可能要用數值計算才能找到。

在大多數情況下，H隨時間的演化是穩定的，也就是說H會收斂到特定的常矩陣H*，其他矩陣都有理時也可能是無理的。參見隨機控制#離散時間系統。

相關的黎卡提方程是

$$\mathbf{X}_{t+1} = -\left[\mathbf{E}+\mathbf{B}\mathbf{X}_t\right]\left[\mathbf{C}+\mathbf{A}\mathbf{X}_t\right]^{-1}$$

其中X, A, B, C, E全都是n × n方陣。這個方程可以顯式求解。假設$\mathbf X_t = \mathbf N_t \mathbf D_t^{-1}$，在t = 0時N0 = X0、D0 = I顯然成立。然後將其用於差分方程，得出

$$\begin{align} \mathbf{X}_{t+1}&=-\left[\mathbf{E}+\mathbf{BN}_t\mathbf{D}_t^{-1}\right]\mathbf{D}_t\mathbf{D}_t^{-1}\left[\mathbf{C}+\mathbf{AN}_t\mathbf{D}_t^{-1}\right]^{-1}\\ &=-\left[\mathbf{ED}_t+\mathbf{BN}_t\right]\left[\left[\mathbf{C}+\mathbf{AN}_t \mathbf{D}_t^{-1}\right]\mathbf{D}_t\right]^{-1}\\ &=-\left[\mathbf{ED}_t+\mathbf{BN}_t\right]\left[\mathbf{CD}_t+\mathbf{AN}_t\right]^{-1}\\ &=\mathbf{N}_{t+1}\mathbf{D}_{t+1}^{-1} \end{align}$$

因此通過歸納法，形式$\mathbf X_t = \mathbf N_t \mathbf D_t^{-1}$對所有t都成立。那麼N、D的演化可寫為

$$\begin{bmatrix} \mathbf{N}_{t+1} \\ \mathbf{D}_{t+1} \end{bmatrix} = \begin{bmatrix} -\mathbf{B} & -\mathbf{E} \\ \mathbf{A} & \mathbf{C} \end{bmatrix} \begin{bmatrix} \mathbf{N}_t \\ \mathbf{D}_t \end{bmatrix} \equiv \mathbf{J} \begin{bmatrix}\mathbf{N}_t \\ \mathbf{D}_t \end{bmatrix}$$

因此可歸納

$$\begin{bmatrix} \mathbf{N}_t \\ \mathbf{D}_t \end{bmatrix} = \mathbf{J}^{t} \begin{bmatrix} \mathbf{N}_0 \\ \mathbf{D}_0 \end{bmatrix}$$