稳定广义预测控制算法

更新时间:2022-06-27 14:20

稳定广义预测控制算法(Stable Generalized Predictive Control,SGPC)是由Kouvaritakis等提出的一种控制方法.该方法是针对广义预测控制(GPC)算法缺乏稳定性保证而提出的一种改进算法.SGPC首先通过引入一种反馈控制结构,以此来简化系统内部的某些关键变量之间的关系,然后通过优化目标函数找到参考时域内的最优参考信号序列,从而得到控制量的增量.该方法通过对未来参考信号的约束,间接实现了对未来系统输出的约束,进而保证系统的稳定性.

产生背景

MPC不仅在实际应用中,而且在理论上取得了突飞猛进的进展.MPC之所以能成为过程控制中的典范,主要原因在于其对模型的宽容性、有限时域滚动优化的有效性以及在设计中考虑各种软、硬约束的可能性.MPC的研究工作已经发展到针对有扰动、有摄动、有约束的MPC和非线性MPC,研究其稳定性、鲁棒性、可行性等.

虽然MPC技术发展已久,但研究MPC系统的稳定性却一直十分困难,尤其是对于带约束的MPC以及开环不稳定、有非最小相位、时滞等特性的对象.通常MPC是通过反复在线求解一个带约束的有限时域优化问题来实现的.有限时域开环最优不能保证闭环稳定,而且MPC系统的闭环描述很难得到,这是研究的困难所在.

在标准MPC问题的基础上,人们对其描述进行转化或者添加各种条件、约束,在稳定性研究方面得到许多结果.

研究 MPC系统稳定性的方法可以归类为以下五种方法:

(1)无限优化时域、无限控制时域的预测控制

线性系统无约束MPC问题类似于LQR控制,利用Riccati方程可得到定常增益反馈控制,保证标称系统稳定.对于带约束的系统或非线性系统,每一采样时刻都需要求解一个无穷维的无穷时域最优控制(IHPC),难以实现.但工业实践中约束及非线性因素又是不可避免的,方便处理约束的能力恰恰正是预测控制的特长所在,因此只能考虑近似求解.如文[8]针对离散时间线性系统带约束的MPC问题,将一定时域后的控制输入固定为LQR状态反馈控制,从而将无穷维的控制问题近似为有限维问题求解.

(2)无限优化时域、有限控制时域的预测控制

有限控制时域使优化问题中决策变量为有限个数,因此每一采样时刻只需在线优化一个有限维QP问题,并且可以解决约束问题;无穷时域则保证了最优目标函数值在滚动优化中的不断下降,从而得到稳定的MPC系统.

(3)加入终端硬约束

对有限时域滚动优化问题加入终端等式约束,在优化时域结束时将状态量或输出误差量人为强制为零,早在Kwon等人研究滚动时域控制(RHC)时就已提出.这一思想被人们引入各种形式的预测控制,并发展了相应的MPC 策略,如GPC∞控制和CRHPC. 总的来讲,加入终端等式约束后的稳定性多是利用最优性能指标值(作为MPC 系统的Lyapunov 函数) 的单调性来证明的,该方法简单,并且适用的范围广泛,包括非线性系统和有约束系统.除了上述终端等式约束MPC外,从稳定性考虑,人们还引入了不同形式的终端不等式约束,称为稳定性约束(Stability Constraints).Polak 和Yang在优化过程中加入终端不等式约束,从而针对带约束的线性连续时间系统,得到了一个压缩MPC策略,即要求k 时刻的预测状态量x(k + L)收敛到某一范围内. 这一压缩硬约束保证了闭环系统的稳定性.

(4)有限时域终端加权

前述有限时域终端约束的引入,减少了控制器的灵活性和可行区域,甚至会导致可行解不存在.终端状态强制到零相当于终端加权矩阵为无穷大,这启发了人们考虑终端加权矩阵若为有限时,如何保证系统稳定性的问题.一种思路是选取特殊形式的终端加权项,并借用无穷时域MPC的稳定性机制.另一种思路是设计终端加权矩阵,求解出使有限时域性能指标值单调下降的条件.文[12]将该思路进行扩展,得到了终端加权矩阵差分不等式条件,该条件可以转化为LMI进行求解.

(5)内模控制框架下的稳定性研究

内模控制框架下的系统分析是在频域中进行的.

研究成果

Kouvaritakis等给出了控制算法,以及当目标函数中不考虑控制增量变化时,控制系统稳定性的充分条件及证明.相关文献:Kouvaritakis B,Rossiter J A,Chang A O T.Stable generalized predictive control: an algorithm with guaranteed stability[J].IEE Proceedings:Control Theory and Applications,1992,139 (4):349-362.

Rossiter等通过对SGPC的传递函数形式做了一些修改,针对有约束的情况,提出了CSGPC (Constrained SGPC) ,保证系统的输出预报值能自动完全满足约束条件.相关文献:Rossiter J A,Kouvaritakis B.Constrained Stable Generalized Predictive Control [J].IEE Proc eedings:Control theory and Applications,1993,140(4):243-254.

考虑到约束的存在使得系统的稳定性难以得到保证,给出了CSGPC的稳定性结果. 虽然该文献考虑了有外界干扰的情况,但是它是通过考虑用无穷时域以及对系统只有一个不稳定极点的假设来完成的,因此有一定的局限性.相关文献:Rossiter J A,Kouvaritakis B,Gossner J R.Constrained stable generalized predictive control: stability results and the case of disturbances[J].Oxford University Technical Report OUEL,1994,20:18-94.

CRHPC和SGPC算法都是保证GPC闭环稳定性的主要方法,从理论上分析了CRHPC和SGPC的联系,认为SGPC对开环不稳定的系统具有更好的稳定性,且计算量小.相关文献:Rossiter J A,Kouvaritekis B.Numerical robustness and efficiency of Generalized Predictive Control algorithms with guaranteed stability[J].IEE Proceedings:Control theory and Applications,1994,141 (3):154-162.

给出了闭环稳定的充要条件,提出了保证稳定和渐进跟踪的改进的CSGPC(MCSGPC)算法.相关文献:Rossiter J A,Kouvaritakis B,Gossner J R.Feasibility and stability results for constrained Stable Generalized Predictive Control[J].Automatica,1995,31(6):863-877.

在考虑约束的情况下,干扰的引入往往使得预测控制策略不可行或者不稳定.有些文献给出了稳定性条件,但是它们仅限定在系统至多有一个不稳定极点的情况.考虑了有界干扰的情况,给出了保证稳定性的算法.相关文献:Rossiter J A,Kouvaritakis B,Gossner J R.Stable Generalized Predictive Control with Constraints and Bounded Disturbances[J].Automatica,1997,33(4):551-568.

输入的约束给稳定预测控制器的设计带来了很大的困难,比较简单的方法是保证短期可行性,也就是保证未来控制量的存在性.早期的算法是利用设定值决定的终端约束条件来保证系统的稳定性,然而在设定值发生变化时,短期可行性仍得不到保证.采用了松弛变量终端约束方法,保证了短期可行性.相关文献:Rossiter J A,Kouvaritakis B,Gossner J R.Guaranteeing feasibility in constrained stable generalized predictive control[J].Proc.IEE,PI D,1996,l:463-469.

Chiscia等利用SGPC结构框架的优点,采用动态规划(DP)方法给出了SGPC-DP算法,使控制算法在保持稳定性的同时也保证数值计算上简便.相关文献:Chiscia L,Rossiter J A,Rice M J.Stable GPC by dynamic programming[J] Systems & Control Letters 1998,33:291-300.

刘斌、蒋峥等修正了预测控制器的最优控制律,使被控对象可以无静差跟踪设定值,并且给出了当目标函数中考虑控制量变化时SGPC的稳定性充分条件及其证明.相关文献:刘斌,蒋峥等.稳定广义预测控制与性能分析[J].控制理论与应用,2006,23(3):378-382.

李印坤、刘晓华等将针对一类线性离散被控对象,同时考虑被控对象的参数时变和外部扰动的存在,采用Min-Max优化方法,提出一种新的稳定广义预测控制(MMSGPC)算法.相关文献:李印坤,刘晓华.不确定系统的稳定广义预测控制[J].控制工程,2009,16(4),442-445.

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}