滾動時域估計
滾動時域估計(Moving horizon estimation、MHE)是一種利用一連串量測的信號進行最優化的作法,量測的信號中包括雜訊(隨機變異)以及其他的不準確性,根據這些信號產生未知參數或是變數的估計值。滾動時域估計和確定性的作法不同,滾動時域估計需要遞迴式的求解法,利用線性規劃或非線性規劃來找到對應的解[1]。
若在一些可以簡化的條件下,滾動時域估計可以簡化成卡爾曼濾波[2]。在針對擴展卡爾曼濾波器及滾動時域估計的評估中,發現滾動時域估計的性能有所提昇,唯一需要付出的代價是其計算成本[3]。因為滾動時域估計在計算上的成本較高,因此一般會應用在運算資源較充裕的系統,而且是反應較慢的系統。不過在文獻中已有不少加速的方法[4][5]。
簡介
編輯滾動時域估計一般會用在動力系統中,估計一些有量測或是無法量測的狀態。會透過滾動時域估計來調整模型的初始狀態以及參數,讓估計結果接近量測結果。滾動時域估計是以在有限時間區間內,對程序模型及量測的最佳化為基礎。在時間t時,針對當前程序狀態進行取樣,再針對包括過去在內,較短的時間區間 計算可以最小化策略(會使用數值的最小化)。滾動時域估計會用即時運算(透過歐拉-拉格朗日方程)來找到在時間 之間可以讓目標函數最小化的策略。但只有估計策略中的最後一步會用到,之後再針對滾動後的時域重新對程序數據取樣,再進行計算,得到新的狀態路徑以及估測參數。因為估計的時間區間會一直往前移動,因此此法會稱為滾動時域估計。此作法不一定是最佳的,但在實務上和卡爾曼濾波及其他估計策略比較,有不錯的結果。
原理
編輯滾動時域估計是多變數的估計演算法,會用到
- 程序的內在動態模型
- 過去量測值的歷史
- 在估計時間區間內的最佳化費用函數
來計算最佳的狀態及參數
其最佳化估計函數為
並且沒有違反狀態或是參數的限制條件(例如上下限)
其中
= 第i個模型估計變數(例如估計溫度)
= 第i個量測變數(例如實測估計溫度)
= 第i個估計參數(例如熱傳係數)
= 加權係數,反應量測值 的相對重要性
= 加權係數,反應之前模型預測 的相對重要性
= 加權係數,避免 的大幅變化
滾動時域估計使用滾動的時間區間。在每一次取樣時,時間區間會往前前進一個時間間隔,會分析量測的輸出信號以及最近的輸出信號,來估測目前時間區間的狀態。
應用
編輯相關條目
編輯參考資料
編輯- ^ J.D. Hedengren; R. Asgharzadeh Shishavan; K.M. Powell; T.F. Edgar. Nonlinear modeling, estimation and predictive control in APMonitor. Computers & Chemical Engineering. 2014, 70 (5): 133–148. doi:10.1016/j.compchemeng.2014.04.013.
- ^ Rao, C.V.; Rawlings, J.B.; Maynes, D.Q. Constrained State Estimation for Nonlinear Discrete-Time Systems: Stability and Moving Horizon Approximations. IEEE Transactions on Automatic Control. 2003, 48 (2): 246–258. doi:10.1109/tac.2002.808470.
- ^ Haseltine, E.J.; Rawlings, J.B. Critical Evaluation of Extended Kalman Filtering and Moving-Horizon Estimation. Ind. Eng. Chem. Res. 2005, 44 (8): 2451–2460 [2018-12-24]. doi:10.1021/ie034308l. (原始內容存檔於2008-10-05).
- ^ 4.0 4.1 Hashemian, N.; Armaou, A. Fast Moving Horizon Estimation of nonlinear processes via Carleman linearization. Proceedings of the American Control Conference. 2015: 3379–3385. doi:10.1109/ACC.2015.7171854.
- ^ Hashemian, N.; Armaou, A. Simulation, model-reduction and state estimation of a two-component coagulation process. AIChE Journal. 2016, 62: 1557–1567 [2018-12-24]. doi:10.1002/aic.15146. (原始內容存檔於2016-08-17).
- ^ Python, MATLAB, and Simulink CSTR Example. [2018-12-24]. (原始內容存檔於2015-04-11).
- ^ Spivey, B.; Hedengren, J. D.; Edgar, T. F. Constrained Nonlinear Estimation for Industrial Process Fouling. Industrial & Engineering Chemistry Research. 2010, 49 (17): 7824–7831 [2018-12-24]. doi:10.1021/ie9018116. (原始內容存檔於2019-04-10).
- ^ Hedengren, J.D. Kevin C. Furman, Jin-Hwa Song, Amr El-Bakry , 編. Advanced Process Monitoring (PDF). Springer’s International Series in Operations Research and Management Science. 2012 [2018-12-24]. (原始內容 (PDF)存檔於2016-03-04).
- ^ Ramlal, J. Moving Horizon Estimation for an Industrial Gas Phase Polymerization Reactor (PDF). IFAC Symposium on Nonlinear Control Systems Design (NOLCOS). 2007. (原始內容 (PDF)存檔於2009-09-20).
- ^ Sun, L. Optimal Trajectory Generation using Model Predictive Control for Aerially Towed Cable Systems (PDF). Journal of Guidance, Control, and Dynamics. 2013 [2018-12-24]. (原始內容存檔 (PDF)於2014-03-03).
- ^ Sun, L. Parameter Estimation for Towed Cable Systems Using Moving Horizon Estimation (PDF). IEEE Transactions on Aerospace and Electronic Systems. 2015 [2018-12-24]. (原始內容存檔 (PDF)於2015-06-10).
延伸閱讀
編輯- Rawlings, James B. Model Predictive Control: Theory and Design. Mathematics in Science and Engineering. Madison, WI: [Nob Hill Publishing, LLC. 2009: 576. ISBN 978-0-9759377-0-9.
外部連結
編輯- MHE Tutorial in Simulink and MATLAB (頁面存檔備份,存於網際網路檔案館)
- MHE lecture material (頁面存檔備份,存於網際網路檔案館)
- Online Course: (頁面存檔備份,存於網際網路檔案館) MHE in Simulink, MATLAB and Python