跳到主要內容

發表文章

目前顯示的是 七月, 2017的文章

[控制理論] 非線性模型預測控制 (0) - 引論

此文我們針對 非線性模型預測控制 (Nonlinear Model Predictive Control, NMPC) 做簡單的介紹: 是一套針對受控廠為 非線性系統 所發展的 回授控制理論,其控制律透過不斷求解最佳化問題而得。以下我們將其簡稱 NMPC。


基本想法:
假設你是一個圍棋高手正在與旗鼓相當的對手對弈,那麼你可能在心中盤算好幾步可能的走法 並同時 試圖來 "預測" 對手的路數,但輪到自己下子的時候,我們只能選取剛才在心中盤算出的所有走法中 " 最佳" 的那一步,並且只動那一步旗,動了之後都必須重新盤算上述過程。這個精神大概與 模型預測控制 本質幾乎相同。就是逐步最佳化,慢慢朝向目標前進。以下我們會逐步將此概念規範化,讀者可以讀完之後再回頭瞧瞧這個基本想法,也許會發現異曲同工之妙。


對 $n=0,1,2,...$,令 $x(n)$ 為當前系統狀態 且 $x^{ref}(n)$ 為 給定的參考目標軌跡。

模型預測控制 的 主要目的:
與一般控制問題相仿,模型預測控制的主要目的不外乎以下兩大類問題:
1. 鎮定(stabilizing)問題。使預測的狀態軌跡 盡可能趨近 零點。
2. 追蹤(tracking)問題。使 預測的狀態軌跡 盡可能跟隨給定的 參考目標軌跡 。

Comments:
1. 若稍有控制背景的讀者不難發現鎮定問題其實是追蹤問題的特例,更進一步地說,所謂追蹤控制問題是指:決定一組控制輸入 $u(n)$ 使得 $x(n)$ 能盡可能緊跟給定的參考狀態軌跡 $x^{ref}(n)$。換而言之,若當前狀態 $x(n)$ 與 $x^{ref}(n)$ 所差甚遠,則我們將盡可能控制此系統軌跡趨近 $x^{ref}(n)$:若當前狀態 $x(n) = x^{ref}(n)$ 則我們將盡可能控制此系統"維 持"在該狀態。

2. 關於鎮定問題提及的對零點追蹤 或者 追蹤問題的參考目標軌跡,都必須滿足隱藏的前提: 零點 或者 參考目標軌跡 必須是系統的 平衡點 (equilibrium point)。否則該系統無法進行鎮定 or 追蹤。


以下我們將介紹一類簡化的 NMPC 問題,並藉此展示此控制方法的一些基本精神。

一類簡化的非線性模型預測控制問題:
令 $x(n) \in X := \mathbb{R}^d$…