滚动时域估计
滚动时域估计(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