首页 理论教育 双层结构预测控制:自由度变化之挑战

双层结构预测控制:自由度变化之挑战

时间:2023-07-02 理论教育 版权反馈
【摘要】:当自由度发生改变时,双层结构预测控制的算法原理并不改变。CV由于大的干扰无法控制,在SSTC和动态控制中都可检验,其中在SSTC中表现为可行域为空,而在动态控制中表现为未来的动态预测值超约束。如果长时间出现某些CV不能控制,应做异常处理,即停止运行MPC。另外,针对y′的动态控制加权临时取为单位阵。

双层结构预测控制:自由度变化之挑战

自由度发生改变时,双层结构预测控制的算法原理并不改变。以下给出一些常见的变自由度及处理措施:

(1)如果MV在硬约束界上“卡边”,包括当前值和稳态目标值都停留在约束界上,可将该MV变为DV,相应的MV约束不再考虑;

(2)如果MV的控制权被操作人员移除,则该MV变为DV,相应的MV约束不再考虑;

(3)如果CV的控制权被操作人员移除,则相应的CV约束不再考虑;

(4)如果SSTC在最高优先级无法通过放松的方法使可行域为非空,则找出引起不可行的CV,并移除之,相应的约束不再考虑。方法是:离线时将CV硬约束按照优先级排名(每个CV的幅值上、下限硬约束在同一个优先级),在线时,如果SSTC的最高优先级的优化问题不可行,则按照优先级次序(采用升序策略)判断可行性,则造成不可行的硬约束对应的CV即为需要移除的;如果造成不可行的是CV的稳态变化约束[见式(4-13)、式(5-21)、式(6-31)],则移除该约束而不移除对应的CV;

(5)发生了MV、CV的增减后,通过判断加权CV之间的共线性,来确定是否减少CV的数量和对应的约束。

通常某些大的干扰可以引起(4)。CV由于大的干扰无法控制,在SSTC和动态控制中都可检验,其中在SSTC中表现为可行域为空,而在动态控制中表现为未来的动态预测值超约束。如果长时间出现某些CV不能控制,应做异常处理,即停止运行MPC。实际上,如果SSTC对yssk)的计算结果持续超过操作约束,参考文献[41]和参考文献[31]都建议作为一种异常处理,因为这种情况表示对大的干扰失去了抑制能力。

对(5),通过计算/改变无约束最小二乘问题的Hessian矩阵(见注解6.4)的条件数,使得动态控制模块的优化问题有合适的解。以第4章为例,这相当于考虑矩阵978-7-111-53743-4-Chapter10-9.jpgΛ~的条件数,如果无约束最小二乘问题的条件数过大,某些MV可能大幅度变化,对实际生产非常不利。假设条件数过大,有两种措施,其一是临时增大/改变978-7-111-53743-4-Chapter10-10.jpg使条件数减小;其二是对被控变量进行重组

下面考虑第二种措施。在k时刻,(www.xing528.com)

yssk)-Gffk)=Guussk) (10-7)

其中,978-7-111-53743-4-Chapter10-11.jpg。由于不同的CV有不同的加权,故处理如下方程:

Qk1/2yssk)-Qk1/2Gffk)=Qk1/2Guussk) (10-8)

Qk1/2Gu进行SVD分解,得到

其中,diag{U1U2}978-7-111-53743-4-Chapter10-13.jpg。如果nynu,则选择U2为方阵。由式(10-9)进一步近似得到

将式(10-10)等价地表示为

y′ssk)-G′ffk)=G′uussk) (10-11)

这时CV变成y′=ΣT1Qk1/2y,故所有对应于y的目标值、约束等分别转化为关于y′的目标值、约束;{GuGf}替换为{G′uG′f}(如果采用DMC,则所有的{Sui,Sfi}替换为{ΣT1Qk1/2Sui,ΣT1Qk1/2Sfi})。如果yssk)的一部分有理想值,而剩下的部分没有理想值,则y′ssk)=ΣT1Qk1/2yssk)不再有理想值。另外,针对y′的动态控制加权临时取为单位阵。这一措施使得实时的加权稳态增益矩阵Qk1/2Gu的条件数在适当范围内,因为如果条件数过大,则某些CV之间设定值的微小差异可能造成部分MV大幅度变化,对实际生产非常不利。严格地讲,处理矩阵Qk1/2Gu的条件数并不等价于处理978-7-111-53743-4-Chapter10-15.jpg的条件数。第二种措施在具体采用时,不用先观察978-7-111-53743-4-Chapter10-16.jpg的条件数。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈