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控制後,另外確認閉迴路系統的強健穩定性。為了提昇系統的強健性,可能會將一些系統參數由確定值改假設是隨機值。相關的控制問題會更加複雜,會得到一個類似的最佳控制器,只有控制器參數不同。

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

參考資料
延伸閱讀
*

评论 (0)

  • 还没有评论,来抢沙发吧。