APP下载

基于深度学习的鲁棒非线性模型预测控制方法

2022-06-23孙京诰陈显锋李郅辰

计算机工程与设计 2022年6期
关键词:不确定性神经网络控制器

孙京诰,陈显锋,李郅辰

(华东理工大学 信息科学与工程学院,上海 200237)

0 引 言

多阶段非线性模型预测控制[1](multi-stage nonlinear model predictive control,MSNMPC)是最近提出的一种有前景的方法,在假设不确定性可以由场景树完美建模的情况下,MSNMPC为鲁棒NMPC问题提供了最佳可能的解决方案,随后Lucia等[2]给出了该方法的稳定性和递归可行性证明。MSNMPC方法虽然解决了模型的不确定性问题,但同时增加了大规模优化问题的实时求解难[3]。

为了避免在过程运行中实时求解优化问题,Karg等[4]在线性MPC的情况下,利用整流器线性单元作为激活函数的神经网络精确地表示描述MPC反馈定律的分段仿射函数,获得了不错的近似效果。文献[5,6]提出使用神经网络逼近显示MPC控制律。其中文献[5]结果表明,给定大小的神经网络可以精确地表示由线性定常系统MPC问题定义的分段仿射函数。在非线性系统的情况下,NMPC策略不是分段仿射,因此需要更强的学习能力。深度学习已经被证明在计算机科学领域取得了良好的结果[7]。最新的理论进展[8]表明深层神经网络比浅层网络具有更强的学习近似能力,从而对复杂函数具有更好的逼近能力。为了解决MSNMPC方法应用的复杂性及实时性问题,本文提出了一种基于深度学习的方法学习鲁棒的NMPC策略,并将其应用于半间歇聚合反应器模型案例中。

1 鲁棒的MSNMPC框架

在MSNMPC方法中,不确定性由离散场景树建模,该树在每个预测步骤中为不确定性的每个可能值进行分支,结构如图1所示。场景树的结构明确考虑了未来反馈信息的可用性,即未来的控制动作可以根据反馈的测量信息来调整。将不确定性决策问题公式化为场景树是多阶段随机规划领域中常用的方法[9]。若不确定性是离散值,MSNMPC方法为给定的预测范围提供了最佳可能的解决方案,而对于不确定性是连续值的情况,它提供了一个近似方案。

在MSNMPC框架下,假设不确定的非线性动态系统的离散时间公式描述如下

(1)

构建场景树的合理策略是将不确定性极值的所有可能组合视为分支。这样虽然不能保证非线性情况下的约束满足,但对复杂的非线性系统通常具有良好的性能[10]。非线性情况的严格保证可通过将其与可达性分析工具相结合来实现[11]。随着预测时域和不确定性数量的增加,求解优化问题的规模会呈指数增加。如图1所示,通常假设不确定性在特定的鲁棒时域后保持不变,以缩小优化问题的规模[10]。

每个时间步k基于场景树MSNMPC公式的优化问题可以表示为

(2)

(3)

(4)

(5)

其中,Xi,Ui是属于出现概率为ωi的场景Si的状态和控制输入的集合。S表示场景的数目,对输入和状态的约束用g(·) 表示。每个场景的损失函数用Ji(·) 表示为

(6)

2 基于深度学习的鲁棒NMPC方法

采用深度学习方法主要有两个原因。首先是为了避免在线求解由鲁棒的NMPC方法的优化公式产生的非线性规划问题,因为该过程是复杂且耗时的。其次是用于学习鲁棒NMPC控制策略的大量数据可以使用精确的求解器离线求解以获取全局最优解,而不需要优化问题的实时解。一旦网络训练完成,我们就获得控制器的解析表示,该网络可部署于具有较小的内存占用空间和能够简单实现的微控制器中应用于工业过程控制系统中。

一个标准的深度神经网络结构如图2所示,它的函数表示形式为nx→nu

(7)

式中:网络的输入为x∈nx, 网络输出为u∈nu。 函数f和g的组合表示为g∘f(·)=g(f(·))。M为每个隐藏层神经元的数量,表示网络的宽度,L为隐藏层数目,表示网络深度。当L≥2时,为深度神经网络,当L=1时为浅层神经网络,每个隐藏层由一个仿射函数组成

fl(ξl-1)=Wlξl-1+bl

(8)

式中:ξl-1∈M是上一层神经元的输出。矩阵Wl和向量bl被称为l层的权重和偏置,它们的值是通过用已知的输入输出数据对训练神经网络来确定的。非线性激活函数gl采用整流线性单元ReLU,计算当前层l的零点到仿射函数之间的元素上的最大值

gl(fl)=max(0,fl)

(9)

参数θ={θ1,…,θL+1} 为各层仿射函数的所有权值和偏置

θl={Wl,bl} ∀l=1,…,L+1

(10)

其中,权值表示为

(11)

偏置表示为

(12)

图2 深度神经网络结构

隐藏层中的神经元总数可以表示为ntot=L·M, 这是对控制器复杂度的衡量。如果考虑所有的隐藏层都完全相连并且有相同数量的神经元的密集规则网络,为了完整描述一个神经网络需要存储权值的数量为nw, 可以通过输入的数量nx, 输出的数量nu, 隐藏层的数量L以及每个隐藏层包含的神经元数量M等参数计算获取。神经网络的总权值数量可以由下式给出

(13)

需要训练的权值的数量nw决定了近似的控制器模型内存占用,这是控制器部署中的一个关键考虑方面。鲁棒的NMPC算法实现需要使用大规模的NLP求解器,由于内存占用很大,通常不适用于微控制器或嵌入式应用部署中。

训练一个预定义的深度为L和宽度为M的深度网络,包括获取最优参数θl={Wl,bl}, 最小化给定的损失函数。本文选择最优输入u*(x) 和网络输出y(x) 之间的均方误差(mean square error,MSE)作为损失函数,该最优输入u*(x0) 作为初始状态x0的参数,由MSNMPC优化公式求解得到。所解决的训练优化问题为

(14)

式中:N为训练中考虑的数据对总数。

3 半间歇聚合反应模型

本文以BASF SE公司提供的实际工业半间歇聚合反应器模型为研究对象。如图3所示,该系统主要由反应器,夹套和外部热交换器(external heat exchanger,EHE)组成,夹套和EHE可用于控制反应器中的温度。

图3 半间歇聚合反应工艺

根据物料和能量守恒,机理模型主要由8个常微分方程组成

(15)

(16)

(17)

(18)

(19)

(20)

(21)

(22)

该系统包含10个状态变量x和3个控制变量u, 分别表示为

(23)

(24)

4 仿真分析

4.1 控制器的训练

在针对上节中的半间歇聚合反应模型进行仿真时,通常考虑的经济型成本函数表示为

(25)

式中:r1、r2、r3为调节参数,分别为0.002、0.04、0.002。对于标准NMPC方法通常只有一个场景,而对于MSNMPC方法则有S个场景,设置每个场景的权重ωi为1/S。

标准NMPC及MSNMPC方法用于生成网络训练所需的数据对,其中深度神经网络的输入是系统的当前状态x, 输出是计算的鲁棒最优控制输入u。 MSNMPC方法中考虑的不确定性参数为反应热焓ΔHR和反应速率k0, 不确定性变化范围为±30%。两种方法考虑的预测时域为Np=15, 采样时间tstep=50 s。 MSNMPC方法中考虑的鲁棒时域为Nr=1, 可知场景树中场景数目S=9。 为了生成用于网络训练的丰富数据对,每种方法均考虑多个不同的批次,它们分别从不同的初始条件开始。温度状态的初始条件变化范围为±1 ℃,质量状态的初始条件变化范围为±10%,所有初始条件遵循均匀分布。使用文献[13]中基于python的do-mpc模块化程序求解标准NMPC问题及MSNMPC问题,该方法使用工具包CasADi[14]中的IPOPT求解器来解决由此产生的非线性规划问题。

标准NMPC有50个不同批次数据总共包含5791个数据对;MSNMPC方法有200个批次数据总共包含27 026个数据对。它们分别将80%的数据用于网络的训练,20%的数据用于测试网络的准确性。深度神经网络是通过Tensorflow[15]的Keras[16]工具包搭建的,使用的优化器为ADAM[17],它是随机梯度下降的改进方法。对不同网络结构进行训练,直到观察到均方误差没有进一步改善(1000个时期)。网络结构的选择对近似质量具有一定的影响,其中网络结构的参数包含网络的深度L以及每个隐藏层包含的神经元个数M。 考虑的浅层网络结构为L=1,M=100, 深层网络结构为L=10,M=10。

4.2 标准NMPC的学习效果分析

图4 标准NMPC的50个不同批次仿真

图5 深浅网络NMPC和标准NMPC仿真比较

4.3 标准MSNMPC的学习效果分析

针对不同网络结构对MSNMPC方法的100个不同批次的数据进行网络训练,其网络训练的MSE结果见表1,可以看出,浅层网络获得的MSE比用深层网络获得的MSE更高(无论是训练MSE还是测试MSE)。此外,使用深层网络可以减少网络权重的数量,从而减少了近似控制器在实际过程中部署的存储空间。

在相同不确定性值及初始条件下,MSNMPC控制器,浅层网络MSNMPC和深层网络MSNMPC控制器的仿真结果如图6所示。可以看出基于深层网络MSNMPC控制器输出几乎等同于标准MSNMPC控制器每次求解优化问题的输出,而基于浅层网络MSNMPC控制器输出波动较大。

表1 不同网络结构的训练和测试性能

图6 深浅网络MSNMPC和标准MSNMPC仿真比较

图7显示了提出的基于深度学习的鲁棒MSNMPC控制器获得的不同初始条件和不同不确定参数值的50个批次过程仿真。初始条件按照获取训练数据时的均匀分布方案生成,但与训练数据不同。不确定参数在它们的标称值周围±30%遵循不规则分布,但在每一个批次过程中保持不变。可以看出,几乎所有场景均能在满足约束条件的前提下完成批次反应过程,获得不错的性能。所有50个批次的定量性能比较见表2。可以看出,基于深度学习的MSNMPC控制器和标准MSNMPC控制器的平均批次时间几乎相同,同时具有非常小的约束违反。

4.4 基于深层网络的MSNMPC控制器的鲁棒性

由数据可以看出基于深层网络的MSNMPC控制器具有非常小的误差,并且在与训练相同的条件下性能评估显示出非常好的结果。我们通常也认为通过使用神经网络来学习的鲁棒NMPC控制器,它如果在与训练期间条件不同的情况下使用,可能会导致灾难性的误差。为了评估标准MSNMPC控制器和基于深度学习的MSNMPC控制器针对

图7 深层网络MSNMPC的50个不同批次仿真

表2 深浅网络MSNMPC和标准MSNMPC的性能比较

超出范围条件的情况下的鲁棒性,我们考虑具有更大范围不确定性和初始条件下的50个不同的批次过程,其中不确定参数变化范围为±40%,而考虑的场景仅假设±30%。温度初始状态在±2 ℃(训练数据为±1 ℃),质量初始状态在±20%(训练数据为±10%)内服从均匀分布随机变化,包括训练数据中未包含的情况。

图8显示了标准MSNMPC控制器的仿真结果,可以看出存在一些场景违反约束,这主要是因为真实的不确定性大于场景树中考虑的不确定性。图9显示相同50个批次的所提出的基于深度学习MSNMPC控制器的性能。虽然也有小的约束违反,但控制器性能不会存在灾难性地降低,它能够在较大的不确定性范围和与训练不同的初始条件下,具有一定的约束能力和鲁棒性。如表3所示,两种控制器无论是平均批次时间,还是约束满足,它们的性能都是非常接近的。表2中的对比结果也说明了深度学习MSNMPC控制器性能不会比标准MSNMPC的性能降级很多。

5 结束语

为了解决鲁棒NMPC方法因其较大的计算复杂度而无法应用在具有实时控制要求过程中的这一缺点,本文提出一种基于深度学习的鲁棒NMPC方法。通过离线求解标准NMPC方法和MSNMPC方法的优化问题来生成训练数据,利用这些数据对,基于深度神经网络学习鲁棒NMPC策略。

图8 标准MSNMPC 50个不同批次鲁棒性仿真

图9 深层网络MSNMPC 50个不同批次鲁棒性仿真

表3 深层网络MSNMPC和标准MSNMPC 鲁棒性性能比较

以半间歇聚合反应模型为研究案例的实验结果表明,本文基于深度神经网络的近似方法在鲁棒NMPC控制策略的逼近上具有良好的效果,并且基于深度学习的鲁棒控制器的性能与标准控制器相当,这说明了该方法的有效性和可行性。此外,由于近似控制器的显示表达式为矩阵乘法和加法,这意味着控制器可以轻松部署在低成本微控制器上,这也是未来的实践研究方向。

猜你喜欢

不确定性神经网络控制器
法律的两种不确定性
神经网络抑制无线通信干扰探究
英镑或继续面临不确定性风险
具有不可测动态不确定性非线性系统的控制
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用
基于支持向量机回归和RBF神经网络的PID整定
模糊PID控制器设计及MATLAB仿真
MOXA RTU控制器ioPAC 5542系列
倍福 CX8091嵌入式控制器