跳轉到

2000 - 模型預測控制 MPC#

案件摘要#

2000 年前後,模型預測控制(Model Predictive Control, MPC)在化工、煉油、 能源業成為工業標準(技術根源在 1970 年代末:Shell 的 Richalet 與 Cutler 的 動態矩陣控制 DMC,1980)。MPC 的原理:每一步線上解一個最佳化問題—— 用模型預測未來 \(N\) 步、最佳化未來控制序列、只執行第一步、下一步重來。 這與「預先設計好的固定控制器」(PID、LQR、 \(H_\infty\) )根本不同: 控制律是線上計算的——計算機算力終於追上控制理論的想像。

前因#

  • 化工製程的特殊需求:多變數(數百個迴路耦合)、有約束(閥門開度 0–100%、溫度上限、壓力上限)、慢動態(分鐘級)——約束處理是剛需,但 PID/LQR 對約束無能為力。
  • 最佳控制理論已齊備:Pontryagin 最大值原理(1956)、Bellman 動態規劃(1957)——但需要離線求解,且無法處理約束的即時變化(見 1956-Pontryagin最大值原理.md、1957-Bellman動態規劃.md)。
  • 計算機算力的躍升:1980–2000 年,CPU 速度成長千倍——「每分鐘解一次 QP」從不可能變成日常。
  • Shell 工程師的實踐:Richalet(1978,模型預測啟發控制)與 Cutler(1980,動態矩陣控制 DMC)在煉油廠的實用化——工業需求反向催生理論。

線索與推理#

第 1 步:MPC 的核心思想——滾動時域#

MPC 的偵探手法:把最佳控制「滾動化」。每個取樣時刻 \(k\) :

步驟 動作 意義
1. 量測 讀取當前狀態 \(x_k\) 閉環起點
2. 預測 用模型預測未來 \(N\) 步 \(x_{k+1}, \dots, x_{k+N}\) 開環最佳化
3. 最佳化 解 QP:最小化未來代價 + 約束 得控制序列 \(u_k^*, \dots, u_{k+N-1}^*\)
4. 執行 只執行第一步 \(u_k^*\) 滾動的關鍵
5. 重來 \(k \to k+1\) ,回到 1 閉環 = 反覆的開環

開環最佳化 + 滾動執行 = 閉環控制——這個組合是 MPC 的精髓: 模型預測提供「前瞻」(預測未來),滾動執行提供「回饋」(每步修正誤差)。

第 2 步:最佳化問題的形式#

每一步解的二次規劃(QP):

\[ \min_{u_k, \dots, u_{k+N-1}} \; \sum_{j=1}^{N} \left( x_{k+j}^\mathsf T Q x_{k+j} + u_{k+j-1}^\mathsf T R u_{k+j-1} \right) \]

加上約束(MPC 的殺手鐧):

\[ u_{\min} \le u_{k+j-1} \le u_{\max} \quad(\text{閥門開度}), \qquad x_{\min} \le x_{k+j} \le x_{\max} \quad(\text{溫度/壓力上限}) \]

約束是 MPC 對 PID/LQR/ \(H_\infty\) 的決定性優勢:

方法 約束處理
PID 無(飽和時 anti-windup 補丁)
LQR 無(線性假設下無約束概念)
\(H_\infty\) 無(頻域無時域約束)
MPC 內建(QP 約束)

理論根據:有約束的最佳控制,Pontryagin 最大值原理(見 1956-Pontryagin最大值原理.md)已給出必要條件—— 但離線解一次。MPC 的洞見:線上反覆解,把靜態的最佳控制變成動態的滾動決策。

第 3 步:為什麼「只執行第一步」?#

如果執行整個序列(開環),模型誤差會累積——開環注定漂移。 只執行第一步,下一步用新的量測重新最佳化——模型誤差被每步的量測修正。

理論:MPC 的閉環穩定性可以證明(終端約束法): 在最佳化問題中加上終端約束 \(x_{k+N} = 0\) (或終端代價 \(V_f(x_{k+N})\) ), 則閉環系統漸近穩定——Lyapunov 函數就是最佳代價 \(V^*(x_k)\) :

\[ V^*(x_{k+1}) \le V^*(x_k) - L(x_k, u_k^*) \]

(最佳代價沿閉環單調下降——Lyapunov 第二法的直接應用, 見 1892-Lyapunov穩定性.md。)

第 4 步:為什麼是 2000 年?#

MPC 的理論 1970 年代末就有了,普及要等 20 年——算力是瓶頸:

年代 CPU 算力 MPC 的可行性
1980 KIPS 級 大製程(數百變數 QP)算不動
1990 MIPS 級 大製程勉強可行(分鐘級解一次)
2000 100+ MIPS 化工標準配備;快製程(秒級)開始可行

慢動態的化工製程(分鐘級)是 MPC 的完美客場:解 QP 的時間 << 製程時間常數—— 「線上最佳化」在這裡天然可行。快製程(電機、機器人)要等更快的求解器 (顯式 MPC、2010 年代)。

後果#

  • MPC 成為化工、煉油、能源的工業標準:Shell、ExxonMobil、ASPenTech 的產品線。
  • 顯式 MPC(explicit MPC, 2000s Bemporad):把 QP 的解離線預計算成查表——快製程開放。
  • 汽車(自適應巡航、車道保持)、無人機、HVAC——MPC 從化工擴散到機電。
  • 「線上最佳化 + 滾動執行」的思想成為當代控制的範式:學習型 MPC、隨機 MPC、分散式 MPC。

結案陳詞#

MPC 的偵探手法是「滾動化最佳控制」:Pontryagin 的離線最佳, 被翻譯成線上反覆求解。約束內建是決定性優勢——真實世界的控制 處處有約束,MPC 是第一個把約束當一等公民的控制方法。 算力追上理論的二十年等待,證明了控制理論常常跑在計算機前面。