最优控制理论是數學最优化中的分支,要找到动力系统在特定一段時間的控制,可以使特定的损失函数最佳化。最佳控制在科學、工程及作業研究上都有很多應用,例如其控制的系統可能是航天器,控制為其動力來源的火箭推進器,目標是在消耗最小燃料的情形下登陸月球,其系統也可能是國家的经济,目標是使失業降到最低,控制是财政政策及货币政策。系統也可以是作業研究的運籌學,以最佳控制的框架來進行研究。
最优控制理论是变分法的推广,着重于研究使控制系统的指标达到最优化的条件和方法。这门学科的开创性工作主要是由1950年代前苏联的列夫·庞特里亚金和美国的理查德·贝尔曼所完成,這些是以所發展的变分法為其基礎。最优控制可以視為是控制理論中的一種控制策略,或是求解哈密顿-雅可比-贝尔曼方程(充分條件)。
以一個簡單的例子來說明。考慮一部車開在山區的直線道路上。問題是,駕駛需如何駕駛才能最快到目的地?此例中的「控制律」是指控制油門、換檔或是剎車的方式。「系統」包括車輛以及道路,「最佳化準則」是指使駕駛時間最短。控制問題中一般也會有輔助的限制條件,例如車輛的油量有其限制、油門可提供的加速度及車速也都有限制。適當的費用函數會是數學表示式,將駕駛時間表示為速度、道路條件以及系統初始條件的函數。
另一個相關的最佳化問題是在車輛在一定時間抵達目標的前提下,讓油耗降到最低。
更通用的最佳控制問題架構如下。
最佳控制的數值方法
最优控制問題多半是非線性的,一般而言沒有解析解(例如LQ最佳控制問題)。因此,需要用數值方法來求解最佳控制問題。在最佳控制的初期(約1950年代到1980年代),常用來求解最佳控制問題的方式是「間接法」(indirect methods)。間接法會用變分法來求得一階的最佳化條件。條件會形成二點(或是複雜的問題,可能會是三點)的边值问题。边值问题有一種特殊的結構,因為是計算其哈密頓量微分而得的。因此,所得的动力系统是以下形式的哈密頓系統。
在1980年代之後,有另外一種數值求解最佳控制的方式,稱為直接法(direct methods)。在直接法中,會用適當的函數來近似狀態或是控制(也有可能兩者都有),近似用的函數可能是多項式近似或是片段常數的參數化近似。同時也會用費用函數來近似費用泛函。函數近似的係數視為是最佳化的變數,最佳控制問題則變成以下的非線性最佳化問題:
最小化
: F(\mathbf{z})\,
在以下的代數限制式下
: \begin{array}{lcl} \mathbf{g}(\mathbf{z}) & = &\mathbf{0} \\ \mathbf{h}(\mathbf{z}) & \leq &\mathbf{0} \end{array}
依使用的直接法不同,非線性最佳化問題的大小可能會很小(例如用直接射擊法或擬線性化方法),中等大小(例如用擬譜最佳控制),也有可能會非常大(例如用直接)。若是用直接搭配方法,非線性最佳化問題的變數及限制會從上千個到上萬個不等。由於許多非線性規劃(NLP)的大小是由直接法產生的,以直覺來看,直接求解一些非線性最佳化問題會比求解邊界值問題要簡單。不過,NLP的求解比求解邊界值問題要簡單。計算比較簡單的原因(特別是用直接搭配方法)是產生的NLP比較稀疏,而且已有許多著名的程式可以求解大型稀疏的NLP問題(例如)。因此,用直接法可以求解問題的範圍(特別是近來很流行的直接搭配方法)比用間接法可以求解的問題範圍要大很多。事實上,近來直接法非常的流行,許多人已經撰寫程式用這種方式來求解最佳控制。有許多這類程式,例如DIRCOL、SOCS、OTIS、GESOP/、DITAN及PyGMO/PyKEP等。近來因為MATLAB程式語言的盛行,MATLAB上的最佳控制軟體也越來越曾遍。學術界開發,直接法求解最优控制的MATLAB軟體工具有
RIOTS、 DIRECT,、FALCON.m,、GPOPS,產業界開發的MATLAB工具有。這些軟體工具提昇學術界以及產業界的人士處理複雜最佳控制問題的能力。透過近來泛用MATLAB最佳化的環境(例如),要處理最佳控制問題已比早期用C語言或
FORTRAN程式來處理要簡單許多。
離散時間的最佳控制
以上的例子是連續時間的系統以及最佳控制的解。最佳控制的解也可以用數位的方式來實現。當代的控制理論主要在關注離散時間的系統以及解。一致近似(Consistent Approximations)理論可以提供在什麼情形下,可以用一連串確準度逐漸提昇的離散最佳控制問題的解來收斂到原始的連續問題的解。不是所有的離散方式都有這種特性,就算是看似有此特質的都不一定有。例如,用變動步長的程序來積分問題的動態方程,會產生一個不會收斂到0的梯度。直接法RIOTS就是以一致近似理論為基礎。
控制
最优控制中的控制(control)是指控制器選定用來調整狀態變數的變數,類似的應用。控制和狀態變數不同,沒有事先指定的运动方程。最优控制理論的目標是要在可行集內找到控制量的序列,讓狀態變數在最佳路徑上,使损失函数最小。
若某控制只是時間的函數,會稱為是開迴路控制。相反的,若提供最佳解的控制在某段時間內是這段時間開始時狀態變數的函數,則為。
参看
*
- 貝爾曼方程
- 貝爾曼擬譜法
- 最速降線問題
*
*
- 动态规划
*
*
*
*
- 卡尔曼滤波
- LQR控制器
- 模型預測控制
*
- PID控制器
*
- 擬譜最佳控制
- 對局
- 滑動模式控制
*
- 隨機控制
*
- 奇異控制
- 最小能量控制
參考資料
延伸閱讀
*
*
*
*
*
- Ross, I. M. (2015). [https://www.amazon.com/Primer-Pontryagins-Principle-Optimal-Control/dp/0984357114 A Primer on Pontryagin's Principle in Optimal Control] . Collegiate Publishers. .
*
评论 (0)