LQG控制

**LQG控制**（linear–quadratic–Gaussian control）的全名是**線性二次高斯控制**，是控制理论中的基礎最优控制問題之一。此問題和存在加性高斯白噪声的線性系統有關。此問題是要找到最佳的輸出回授律，可以讓二次費用函數的期望值最小化。其輸出量測假設受到高斯噪声的影響，其初值也是高斯隨機向量。

在「使用線性控制律」的最佳控制假設下，可以用completion-of-squares論述進行推導。此控制律即為**LQG控制器**，就是卡尔曼滤波（線性二次狀態估測器，LQE）和LQR控制器的結合。分離原理指出狀態估測器和狀態回授可以獨立設計。LQG控制可以應用在线性时不变系统及线性時變系統，產生容易計算以及實現的線性動態回授控制器。LQG控制器本身是一個類似其受控系統的動態系統，兩者有相同的維度。

根據分離原理，在一些範圍較寬可能是非線性的控制器中，LQG控制器仍然是最佳的。也就是說「使用非線性控制架構不一定可以改善費用泛函的期望值」。這個版本的分離原理是（separation principle of stochastic control）提到就算過程及輸出雜訊源可能是非高斯鞅，只要其系統動態是線性的，其最佳控制仍可以分離為最佳狀態估測器（不再是卡尔曼滤波器）及LQR控制器。LQR控制器也有用來控制擾動的非線性系統。

## 問題和解的數學描述
### 連續時間
考慮連續時間的線性動態系統

: \dot{\mathbf{x}}(t) = A(t) \mathbf{x}(t) + B(t) \mathbf{u}(t) +  \mathbf{v}(t),
: \mathbf{y}(t) = C(t) \mathbf{x}(t) + \mathbf{w}(t),

其中{\mathbf{x}}是系統狀態變數的向量，{\mathbf{u}}是控制輸入向量，{\mathbf{y}}是輸出量測值的向量，可用在回授上。系統受到加成性的高斯系統雜訊\mathbf{v}(t)及加成性的高斯量測雜訊\mathbf{w}(t)所影響。給定一系統，其目標是找到一控制輸入{\mathbf{u}}(t)，此控制輸入在每個時間{\mathbf{}}t下，和以往的量測量{\mathbf{y}}(t'), 0 \leq t' 有線性關係，而且此控制輸入可以讓以下的費用函數有最小值：

:  J = \mathbb{E}\left[{\mathbf{x}^\mathrm T}(T)F{\mathbf{x}}(T)+ \int_{0}^{T} {\mathbf{x}^\mathrm T}(t)Q(t){\mathbf{x}}(t) + {\mathbf{u}^\mathrm T}(t)R(t){\mathbf{u}}(t)\,dt \right],

:  F \ge 0,\quad Q(t) \ge 0,\quad R(t) > 0, 

其中\mathbb{E}為期望值。最終時間（horizon）{\mathbf{}}T可能是有限值或是無限值。若最終時間為無限，則費用函數的第一項{\mathbf{x}}^\mathrm T(T)F{\mathbf{x}}(T)可以忽略，和問題無關。而為了要讓費用函數為有限值，會定義費用函數為{\mathbf{}}J/T。

求解上述LQG問題的LQG控制器可以用以下方程表示：

:  \dot{\hat{\mathbf{x}}}(t) = A(t)\hat{\mathbf{x}}(t) + B(t){\mathbf{u}}(t)+L(t) \left( {\mathbf{y}}(t)-C(t)\hat{\mathbf{x}}(t) \right),  \quad \hat{\mathbf{x}}(0) = \mathbb{E} \left[ {\mathbf{x}}(0) \right], 

:  {\mathbf{u}}(t)= -K(t) \hat{\mathbf{x}}(t).

矩陣{\mathbf{}}L(t)稱為卡尔曼增益（Kalman gain），和第一個方程卡尔曼滤波有關。在時間{\mathbf{}}t，濾波器會根據過去量測及輸入來產生狀態{\mathbf{x}}(t)的估測值\hat{\mathbf{x}}(t)。卡尔曼增益{\mathbf{}}L(t)是根據{\mathbf{}}A(t), C(t)、二個和白色高斯雜訊有關密度矩陣\mathbf{v}(t)、\mathbf{w}(t)及最後的\mathbb{E}\left[{\mathbf{x}}(0){\mathbf{x}}^\mathrm T(0) \right]來計算。這五個矩陣會透過以下的矩陣Riccati微分方程來決定卡尔曼增益：

:  \dot{P}(t) = A(t)P(t)+P(t)A^\mathrm T(t)-P(t)C^\mathrm T(t){\mathbf{}}W^{-1}(t)
C(t)P(t)+V(t),

:  P(0)= \mathbb{E} \left[{\mathbf{x}}(0){\mathbf{x}}^\mathrm T(0) \right].

假設其解P(t), 0 \leq t \leq T，則卡尔曼增益等於

:  {\mathbf{}}L(t) = P(t)C^\mathrm T(t)W^{-1}(t). 

矩陣{\mathbf{}}K(t)稱為回授增益（feedback gain）矩陣，是由{\mathbf{}}A(t), B(t), Q(t), R(t)及{\mathbf{}}F矩陣，透過以下的矩陣Riccati微分方程來決定

:  -\dot{S}(t) = A^\mathrm T(t)S(t)+S(t)A(t)-S(t)B(t)R^{-1}(t)B^\mathrm T(t)S(t)+Q(t),

:   {\mathbf{}}S(T) = F.

假設其解{\mathbf{}}S(t), 0 \leq t \leq T，回授增益等於

:  {\mathbf{}}K(t) = R^{-1}(t)B^\mathrm T(t)S(t).

觀察上述二個矩陣Riccati微分方程，第一個沿時間從前往後算，而第二個是沿時間從後往前算，這稱為「對偶性」。第一個矩陣Riccati微分方程解了線性平方估測問題（LQE），第二個矩陣Riccati微分方程解了LQR控制器問題。這二個問題是對偶的，合起來就解了線性平方高斯控制問題（LQG)，因此LQG問題分成了LQE問題以及LQR問題，且可以獨立求解，因此LQG問題是「可分離的」。

當{\mathbf{}}A(t), B(t), C(t), Q(t), R(t)和雜訊密度矩陣\mathbf{}V(t), \mathbf{}W(t)不隨時間變化{\mathbf{}}t，且{\mathbf{}}T趨於無限大時，LQG控制器會變成非時變動態系統。此時上述二個矩陣Riccati微分方程會變成代數Riccati方程。

### 離散時間
離散時間的LQG控制問題和連續時間下的問題相近，因此以下只關注其數學式。

離散時間的線性系統方程為

: {\mathbf{x}}_{i+1} = A_i\mathbf{x}_i + B_i \mathbf{u}_i +  \mathbf{v}_i,

: \mathbf{y}_{i} = C_{i} \mathbf{x}_i + \mathbf{w}_i.

其中\mathbf{}i是離散時間，\mathbf{v}_{i}, \mathbf{w}_{i}是離散時間高斯白雜訊過程，其共變異數矩陣為\mathbf{}V_{i}, W_{i}。

要最小化的二次費用函數為

:  J = \mathbb{E}\left[{\mathbf{x}}^\mathrm T_{N}F{\mathbf{x}}_{N}+ \sum_{i=0}^{N-1}( \mathbf{x}_i^\mathrm T Q_i \mathbf{x}_i + \mathbf{u}_i^\mathrm T R_i \mathbf{u}_i )\right],

:  F \ge 0, Q_i \ge 0, R_i > 0. \,  

離散時間的LQG控制器為

:\hat{\mathbf{x}}_{i+1}=A_i\hat{\mathbf{x}}_i+B_i{\mathbf{u}}_i+L_{i+1} \left({\mathbf{y}}_{i+1}-C_{i+1} \left\{ A_i \hat{\mathbf{x}}_i + B_i u_i \right\} \right), \hat{\mathbf{x}}_0=\mathbb{E}[{\mathbf{x}}_0],

: \mathbf{u}_i=-K_i\hat{\mathbf{x}}_i. \, 

卡尔曼增益等於

:  {\mathbf{}}L_i = P_iC ^\mathrm T _i(C_iP_iC ^\mathrm T _i + W_i)^{-1}, 

其中{\mathbf{}}P_i是由以下依時間往前進的矩陣Riccati差分方程所決定：

:  P_{i+1} = A_i \left( P_i - P_i C ^\mathrm T _i \left( C_i P_i C ^\mathrm T _i+W_i \right)^{-1} C_i P_i \right) A ^\mathrm T _i+V_i, P_0=\mathbb{E} \left( {\mathbf{x}}_0 - \hat{\mathbf{x}}_0\right)\left({\mathbf{x}}_0- \hat{\mathbf{x}}_0\right)^\mathrm T. 

回授增益矩陣為

:  {\mathbf{}}K_i = (B^\mathrm T_iS_{i+1}B_i + R_i)^{-1}B^\mathrm T_iS_{i+1}A_i 
\
其中{\mathbf{}}S_i是由以下時間從後往前算的矩陣Riccati差分方程所決定：

:  S_i = A^\mathrm T_i \left( S_{i+1} - S_{i+1}B_i \left( B^\mathrm T_iS_{i+1}B_i+R_i \right)^{-1} B^\mathrm T_i S_{i+1} \right) A_i+Q_i, \quad S_N=F.

若問題中所有的矩陣都是非時變的，且時間長度{\mathbf{}}N趨近無窮大，則離散時間的LQG控制器就是非時變的。此時矩陣Riccati差分方程可以用離散時間的代數Riccati方程取代。可以決定非時變的離散線性二次估測器，以及非時變的離散LQR控制器。為了讓費用是有限值，會用{\mathbf{}}J/N來代替{\mathbf{}}J。

## 降階LQG問題
在傳統LQG設定中，當系統維度很大時，實現LQG控制器會有困難。**降階LQG問題**（reduced-order LQG problem）也稱為**固定階數LQG問題**（fixed-order LQG problem）先設定了LQG控制的狀態數。因為分離原理已不適用，此問題會更不容易求解，而且其解也不唯一。即使如此，降階LQG問題已有不少的數值演算法可以求解相關的最佳投影方程（optimal projection equations），其中建構了局部最佳化的降階LQG問題的充份及必要條件。

## LQG控制的強健性
LQG最佳化本身不確保有良好的強健性，需要在設計好LQG控制後，另外確認閉迴路系統的強健穩定性。為了提昇系統的強健性，可能會將一些系統參數由確定值改假設是隨機值。相關的控制問題會更加複雜，會得到一個類似的最佳控制器，只有控制器參數不同。

## 相關條目
*隨機控制
*Witsenhausen反例

## 參考資料

## 延伸閱讀
*