蔡鹏程, 郑鹏远
(上海电力学院 自动化工程学院, 上海 200090)
多年来,动态系统的最佳过程操作和控制策略一直是工业界和学术界积极研究的课题,引起了广泛关注。目前,复杂工业过程的优化控制普遍采用由计划调度层、经济优化层(Real-Time Optimization,RTO)、先进控制层、基础控制层等不同功能层组成的分层递阶控制结构[1]。由于其RTO层经济指标的优化并不涉及下层模型预测控制(Model Predictive Control,MPC)的动态模型信息,RTO层的静态优化模型和MPC动态模型通常具有不匹配性[2-3]。
受到优化和控制一体化设计思想的驱动,研究者们提出了将经济指标优化和动态控制以扁平化结构实现为特征的经济性预测控制(Economic Model Predictive Control,EMPC)[4-9]。为了架起稳定性分析的桥梁,保证系统状态收敛到系统稳态工作点,文献[10-13]以耗散性为工具,对经济性预测控制问题进行了分析和设计。其中文献[10-11]指出,如果一个系统相对于其经济目标函数是严格耗散的,则通过优化目标函数得到的经济控制器可以使系统渐进稳定。在可控性假设下,耗散性也是系统在稳态工作点(xs,us)时最优运行的充要条件[11-13]。文献[14]通过在经济目标中添加凸性质的指标,使得系统对于新的目标函数具有耗散性。文献[15-16]采用参数优化的形式来构造新目标函数,以保证系统满足耗散性。在稳态工作点附近,将原系统近似转化为线性化系统,将原经济指标近似转化为Hessian矩阵对应的二次指标,从而将原经济性能优化问题转化为动态性能优化问题,进一步以系统状态和稳态工作点之间偏差的二次指标函数作为惩罚函数来优选控制量,在稳态工作点附近取得了较优的控制性能。但当系统初始状态远离稳态工作点时,转化后的动态优化问题将难以适用,因此该设计方法存在一定的局限性,有待进一步开展相关研究以改善系统性能。
本文以逼近原经济优化问题的最优性为设计目标,引入切换控制思想[17],设计切换控制策略的经济性预测控制优化算法。该算法首先离线设计具有耗散性的Hessian矩阵指标,随后根据系统状态所处的不同可行域,分别在经济指标优化和Hessian矩阵对应的动态性能指标优化之间进行切换,从而驱动系统状态收敛到稳态工作点,并取得较优的经济性能。
考虑连续时间非线性系统
(1)
式中:x——状态变量,x∈X⊆Rnx;
u——输入变量,u∈U⊂Rnx。
式(1)中,(x,u)⊆X×U。系统的经济指标采用连续函数le(x,u)进行定义,le:X×U→R。
对于式(1)和给定经济指标le(x,u),系统的稳态工作点(xs,us)满足
x∈X,u∈U}
(2)
式(1)的经济性优化问题,可描述为经济性预测控制优化问题,其公式为
(3)
x(t)∈X,u(t)∈U,∀t∈[0,T]
式中:x0——系统初始状态。
求解上述经济性预测控制优化问题即是对式(3)进行滚动优化。在当前时刻将控制输入序列的第一个控制量u(0)施加到系统上,驱动系统状态在下一时刻到达新的状态值,再以新的系统状态值作为初始状态进行重复优化。
定义1如果存在一个可微的储存函数V(x)满足
(4)
则称式(1)在稳态工作点附近关于目标函数le(x,u)是耗散的,如果式(4)不等条件严格成立,则称式(1)在稳态工作点附近关于目标函数le(x,u)严格耗散。
针对经济性预测控制优化问题(3),将其转化为参考跟踪MPC问题[16]。首先对原优化问题的经济指标进行转化,即通过增加拉格朗日松弛项,构建新性能指标为
L(x,u,λ)=le(x,u)+λf(x,u)
(5)
式中:λ——拉格朗日因子。
基于上述拉格朗日松弛后的新性能指标,求解式(2)可等价转化为
x∈X,u∈U}
(6)
因此,可以采用拉格朗日函数L(x,u,λ)代替经济目标函数le(x,u),进行性能优化。
考虑等式约束优化问题:
s.t.h(z)=0
(7)
假设函数l(z)二次可微,并且函数h(z)可微,给定一个点z*和z*附近的扰动量Δz=z-z*,则函数l(z)可以在点z*泰勒级数展开为
(8)
同理,约束函数h(z)可以展开为
h(z*+Δz)≈h(z*)+h(z*)Δz
(9)
假设z*是式(7)的解,则其满足式(7)最优解的必要条件为
l(z*)+λTh(z*)=0
(10)
h(z*)=0
(11)
(12)
在z*点附近,该优化目标函数可转化成Hessian矩阵指标。
针对式(1),经济目标函数为le(x,u),稳态工作点为(xs,us),在稳态工作点(xs,us)处对f(x,u)进行线性化,并对L(x,u,λ)进行泰勒级数展开[16]
f(x,u)≈f(xs,us)+
(13)
L(x,u,λ)≈L(xs,us,λ)+
(14)
H=2L(xs,us,λ)
(15)
式(14)中,G=0,f(xs,us)=0,L(xs,us,λ)在稳态工作点(xs,us)处为常值。
式(1)在稳态工作点处相对于其目标函数不一定具有耗散性。为保证系统的耗散性,基于式(15)中得到的Hessian矩阵H,以对称矩阵Pc和Hc为变量,以线性矩阵不等式为约束条件[15-16],即
(16)
通过最小化对称矩阵Hc的某一合适矩阵范数,从而计算得到对称矩阵Hc。
利用式(15)和式(16)计算所得的矩阵H和Hc,令
(17)
将式(3)转化为如下优化问题
(18)
x(t)∈X,u(t)∈U,∀t∈[0,T]
x(0)=x0,x(T)=xs
在上述分析过程中,原经济性优化问题被转化成具有Hessian矩阵二次目标函数的动态性能优化问题。需要指出的是,这种近似等价关系仅在稳态点附近成立。当系统状态远离稳态工作点时,这种近似等价关系就难以成立,导致该优化难以获得较优的经济性能。为了弥补上述缺陷,本文以初始点和稳态工作点间的欧氏距离为切换条件,设计基于切换控制策略的优化算法。
步骤2 设定稳态工作点附近小邻域的半径值ρ=c1和Ωρ={x∈Rn|(x-xs)2≤ρ2},切换时间tswitch=c2。
步骤1 对式(3)进行求解,并将优化计算所得的控制量施加到受控系统上。
步骤2 判断系统状态是否位于Ωρ,优化时间是否到达切换时间tswitch。若x∈Ωρ或t≥tswitch,则执行步骤3,否则返回步骤1。
步骤3 对转化后的式(18)进行求解,将控制量u施加到受控系统上,并重复进行滚动优化,直至系统状态驱动到稳态工作点时,优化结束。
在上述经济性预测控制的切换控制优化算法中,当系统状态在Ωρ领域以外时,求解原经济性能优化问题,从而追求系统的经济性能最优;当系统位于稳态工作点的设定邻域或到达设定时间时,则切换为t-MPC动态性能优化问题进行求解,所得到的控制输入量可以驱动系统状态收敛至稳态工作点。
考虑非线性连续流式搅拌罐反应器,系统模型如下
(19)
该生产过程的经济优化目标是使x2最大化,经济优化目标为le(x,u)=-1.0×104x2,系统的稳态工作点为xs=[0.083 2,0.084 6,0.149 1],us=0.149 1。选取输入约束0.049≤u≤0.449,拉格朗日乘子λ=[-0.156 1,-1,0],优化时域T=10 s,采样时间tc=0.1 s。将原经济性预测控制算法标记为“EMPC”,将式(18)记为“t-MPC”,将本文设计的经济性预测控制切换控制优化算法标记为“切换算法”。选取系统初始状态x(0)=[0.5,0.03,0.02]和x(0)=[0.6,0.04,0.01],分别记为“状态1”和“状态2”,对上述3种算法的控制效果进行仿真验证,由离线计算得到稳态工作点所对应的Ac,Bc,H,Hc分别为
采用ICLOCS优化软件,利用内点优化算法IPOPT[18]来求解此优化问题,得到闭环系统的仿真结果分别如图1和图2所示。平均经济性能和动态性能统计如表1所示。
图1 状态1下的闭环系统轨迹
图2 状态2下的闭环系统轨迹
表1 两种状态下的性能统计结果
由图1和图2可以看出,在原经济性预测控制算法控制下,被控系统处于震荡状态,没有收敛到稳态工作点;t-MPC算法和本文设计的切换控制优化算法均可以驱动系统状态收敛到稳态工作点。由表1可以看出,与t-MPC算法相比,切换算法虽然在收敛速度上慢一些(动态性能上有一定的差距),但在3种方法中可以取得最优的经济性能。
本文针对经济性预测控制优化问题,离线计算了Hessian矩阵,并通过求解线性矩阵不等式优化问题,构造了满足耗散性条件的二次指标函数,将经济性预测控制优化问题转化为跟踪MPC问题。本文设计的切换控制策略的优化算法,驱动系统状态收敛到稳态工作点,有效地改善了系统的经济性能。