跳轉到

1987 - H∞ 狀態空間解法#

案件摘要#

1987 年,John Doyle、Keith Glover、Pramod Khargonekar、Bruce Francis 發表 〈State-space solutions to standard \(H_2\) and \(H_\infty\) control problems〉, 用兩個 Riccati 方程解出 \(H_\infty\) 控制的狀態空間形式。 Zames 的 \(H_\infty\) 理論(1981,見 1981-H∞魯棒控制.md) 原本只有算子理論/插值法的解法——抽象、難算、工程師用不上; DGKF 的解法把它變成標準的矩陣運算(解兩個 Riccati 方程 + 檢查一個條件)—— ** \(H_\infty\) 從數學變成工具**,魯棒控制正式進入工程實務。

前因#

  • Zames 的 \(H_\infty\) (1981):理論正確,但解法是Nevanlinna–Pick 插值與算子理論——抽象到工程師看不懂、算不動(見 1981-H∞魯棒控制.md)。
  • Kalman 的狀態空間傳統:LQR 的 Riccati 方程(1960)已是工程師熟悉的工具——「解 Riccati」是現代控制的日常(見 1960-Kalman狀態空間與濾波.md)。
  • LQG 的狀態空間解法:分離原理 + 兩個 Riccati 方程(濾波與控制各一)——「兩個 Riccati」的模式已存在。
  • 計算機的進步:1980 年代數值線性代數(QR 分解、Schur 分解)成熟——Riccati 方程可以可靠地數值求解。

線索與推理#

第 1 步:標準問題的表述#

DGKF 的偵探手法:把所有控制問題統一成一個「標準問題」。廣義受控體:

\[ \begin{bmatrix} z \\ y \end{bmatrix} = P(s) \begin{bmatrix} w \\ u \end{bmatrix} = \begin{bmatrix} A & B_1 & B_2 \\ C_1 & 0 & D_{12} \\ C_2 & D_{21} & 0 \end{bmatrix} \begin{bmatrix} w \\ u \end{bmatrix} \]

其中: \(w\) 是外部輸入(擾動、參考)、 \(u\) 是控制、 \(z\) 是性能輸出(要壓小的量)、 \(y\) 是量測。控制器 \(u = K(s)y\) 。

目標:設計 \(K\) 使從 \(w\) 到 \(z\) 的閉環增益最小:

\[ \min_K \|T_{zw}\|_\infty < \gamma \]

所有控制問題(靈敏度、魯棒穩定、跟蹤、濾波)都可以寫成這個形式—— 一個標準問題、一個解法。

第 2 步:兩個 Riccati 方程#

DGKF 的解答:存在次最佳控制器( \(\|T_{zw}\|_\infty < \gamma\) )若且唯若 兩個代數 Riccati 方程有正定解 \(X_\infty, Y_\infty\) :

控制 Riccati(狀態反饋半):

\[ A^\mathsf T X + XA - X B_2 B_2^\mathsf T X + \frac{1}{\gamma^2} C_1^\mathsf T C_1 + C_1^\mathsf T C_1\text{(簡化形式)} = 0 \]

濾波 Riccati(估計半):

\[ A Y + Y A^\mathsf T - Y C_2^\mathsf T C_2 Y + \frac{1}{\gamma^2} B_1 B_1^\mathsf T = 0 \]

耦合條件:

\[ \rho(X_\infty Y_\infty) < \gamma^2 \]

( \(\rho\) 是譜半徑。)結構與 LQG 完全平行:兩個 Riccati + 一個耦合條件—— 但 \(H_\infty\) 的兩個方程互相耦合(不能分開解),因為 minmax 破壞了分離原理。

第 3 步:為什麼這是突破?#

面向 Zames 的插值解法 DGKF 的狀態空間解法
數學語言 Nevanlinna–Pick 插值、算子理論 Riccati 方程、矩陣
可計算性 困難(手工插值) 標準數值演算法(Schur 分解)
可理解性 抽象 與 LQG 平行(工程師熟悉)
軟體實現 無 MATLAB Robust Toolbox(1988+)

關鍵:「解兩個 Riccati」是現代控制工程師的母語—— DGKF 把 \(H_\infty\) 翻譯成母語,抽象理論瞬間變成可用的工具。

第 4 步: \(\gamma\) 迭代——設計流程#

DGKF 解法是「次最佳」:給定 \(\gamma\) ,檢查條件是否成立。設計流程:

  1. 選性能加權 \(W_i\) (依第 1 步的標準問題)。
  2. 二分法迭代 \(\gamma\) :太大就降低、不成立就升高。
  3. 得到最小可行的 \(\gamma\) 與控制器 \(K(s)\) (狀態空間矩陣)。

** \(\|T_{zw}\|_\infty = \gamma_{\min}\) 就是「最壞增益的理論下界」**—— Bode 水床效應(見 1945-Bode回饋放大器設計.md)的定量答案。

後果#

  • \(H_\infty\) 控制成為工程工具:MATLAB Robust Control Toolbox(1988)、飛行控制律設計。
  • 魯棒控制成熟:「加權 + 標準問題 + Riccati」成為魯棒設計的標準流程。
  • 與 LQG 的合流:LQG 是 \(H_2\) 最佳化的特例——兩者統一在 DGKF 的標準問題下。
  • 後續發展: \(H_\infty\) 濾波、LM(線性矩陣不等式,1990s)、非線性 \(H_\infty\) ——魯棒控制的版圖擴張。

結案陳詞#

DGKF 的偵探手法是「統一標準問題」:所有控制問題寫成同一個形式, 再用工程師熟悉的母語(Riccati 方程)給出解答。抽象理論的工程化—— \(H_\infty\) 從數學論文走進 MATLAB,魯棒控制成為日常工具。