基于自适应模糊神经网络的非线性系统模型预测控制

2020-07-21 07:15周红标张钰柏小颖刘保连赵环宇
化工学报 2020年7期
关键词:梯度控制器神经网络

周红标,张钰,柏小颖,刘保连,赵环宇

(淮阴工学院自动化学院,江苏淮安223003)

引 言

工业生产中的动态系统通常具有非线性、时变性、时滞性和不确定性,难以建立精确的数学模型,依赖数学模型的传统控制手段无法取得令人满意的控制效果[1]。模型预测控制(model predictive control,MPC)采用被控对象的动态模型来预测系统的未来输出,并结合滚动优化和反馈校正策略,在约束范围内最小化模型的性能指标以确定最优控制量[2-3]。与PID 和FLC等传统的“事后”控制方法相比,作为一种“事前”控制方法,MPC 从理论上能够保证控制效果优于传统控制方法[4]。因此,在非线性动态系统的控制问题中,MPC 控制器的设计引起了研究者的极大关注[5-8]。

理论证明模糊系统(fuzzy systems,FSs)和神经网络(neural networks,NNs)都是通用逼近器,能够以任意精度逼近任何系统,因此研究者提出了多种基于FSs 和NNs 的MPC 方法。例如:Khooban 等[9-10]采用Takagi-Sugeno(TS)模糊模型建立电动汽车速度预测模型从而建立了TS-MPC 控制器,Muthukumar 等[11]采用TS 模糊模型精确再现了分数阶动力系统从而建立了TS-MPC 控制器,Bououden 等[12]针对CSTR 过程构建了基于蚁群(ant colony optimization, ACO)的模糊模型预测控制器(ACO-AFMPC),Zeng 等[13]采用多层感知器(multilayer perceptron, MLP)建立化学药剂和污染物去除率之间的关系模型从而设计了MLP-MPC 控制器,Caraman 等[14]采用MLP 作为污水处理过程的内部模型从而建立了溶解氧的MLPMOC 控制器。除了基于FS 和MLP 的MPC,研究者陆续提出了基于径向基函数神经网络(radial basis function neural network, RBFNN)的MPC 控制器[15-17],基于递归神经网络(recurrent neural network,RNN)的MPC控制器[18-20]。

模糊神经网络(fuzzy neural networks, FNN)集FSs 的透明结构和NNs 的自学习能力于一身,在非线性系统辨识和控制领域有着许多成功的应用。研究者陆续提出了多种基于FNN的MPC设计方法,Lu 等先后提出了一种基于递归模糊神经网络(recurrent fuzzy neural network,RFNN)的工业过程预测控制方法[21],和一种基于小波模糊神经网络(wavelet fuzzy neural network, WFNN)的预测控制算法[22],Teng 等[23]提 出 了 基 于 鲁 棒 模 糊 神 经 网 络(robust fuzzy neural network,ROFNN)的MPC。Huang等[24]首先利用自适应神经模糊推理系统(adaptive network based fuzzy inference system, ANFIS)建立污染物去除率和化学剂量之间的非线性映射关系,然后利用梯度下降算法优化损失函数,从而设计了造纸厂污水处理混凝过程的MPC 控制器。Cheng 等[25]首先利用模糊神经网络建立压电致动器的NARMAX 模型,然后利用LM 算法求解优化问题,从而提出了压电致动器的非线性模型预测控制方法。Tian 等[26]首先利用T-S 型模糊神经网络建立预测模型,然后利用分层遗传算法优化适应度函数,从而设计了石灰回转窑烧成带温度MPC控制器。Li等[27]首先利用递归自进化模糊神经网络(recurrent selfevolving fuzzy neural network,RSEFNN)建立温度、功率吸收效率和水分变化特性等未知关键参数的预测模型,然后利用梯度优化算法处理多目标优化问题,从而设计了微波干燥过程的多变量MPC 控制器。

尽管FNN-MPC 在复杂工业过程中的应用已展现良好的控制性能,但仍存在以下几点缺陷:(1)在建立预测模型时,一般采用试错法选取模糊规则数(规则层节点数),存在较大的主观性,模型难以取得较好的泛化性能;(2)在训练预测模型时,一般采用梯度下降算法优化模型的参数,导致网络收敛速度慢、易陷入局部最优;(3)在执行滚动优化时,一般不再更新网络参数,降低了控制器的自适应能力。因此,为了增强模型的预测精度和控制器的控制性能,亟待研究FNN 的参数和结构同步调整机制以及与之配合的非线性控制量的在线滚动求解策略。

针对上述问题,本文提出了一种基于自适应模糊神经网络(adaptive fuzzy neural network,AFNN)的非线性动态系统MPC控制器的设计方法。AFNN-MPC采用具有规则自分裂技术和自适应LM学习算法的FNN建立被控对象的预测模型,并且在实时控制过程根据预测误差在线更新网络参数。同时,采用自适应梯度寻优算法优化MPC的性能指标以在线求取控制律。此外,利用Lyapunov稳定性理论分析了AFNN-MPC的收敛性和闭环稳定性。数值仿真和双CSTR过程的实验结果验证了AFNN-MPC的有效性。

1 预备知识

1.1 模型预测控制

考虑如下的带有外部输入的非线性自回归模型[21-22]:

其中,f(·)表示未知非线性函数,u(·)∈Rm表示控制输入向量,y(·)∈Rq表示系统输出向量,nu和ny分别为输入和输出的阶数,kd为时延,d(k)为噪声。MPC是以滚动方式实施的,在每个采样时刻k,都需要通过在线求解一个非线性优化问题得到控制作用[21]。设k时刻的约束优化性能指标J(k)具有如下形式:

约束条件为:

其中,r(k+h|k)∈Rq为从采样时刻k开始的第h步的期望输出,y(k+h|k)∈Rq为从采样时刻k开始的第h步的预测输出,Δu(k+h-1|k)=u(k+h-1|k)-u(k+h-2|k)为控制增量,Np和Nu分别为预测时域和控制时域(Np≥Nu>0),qh为控制加权系数,umax和umin为u(k+h-1|k)的上下界,Δumax和Δumin为Δu(k+h-1|k)的上下界,ymax和ymin为y(k+h|k)的上下界。

1.2 模糊神经网络

针对多变量控制问题,由于被控对象的精确数学模型往往难以建立,为了获得y(k+h|k)的值,本文利用多输入多输出(multi-input multi-output,MIMO)FNN来辨识式(1)描述的复杂非线性系统的Mamdani模糊模型[28-31]。FNN 的结构如图1所示,其具有四层结构,分别为输入层、隶属函数层、规则层和输出层。下面具体介绍每层的数学描述。

第一层:该层为输入层,具有n个节点,每个节点代表一个输入语言变量。该层的输出为:

其中,ui为第i个节点的输出值,x=[x1,x2,…,xn]T为输入变量。

第二层:该层为隶属函数层,具有n×r个节点,每个节点代表一个高斯函数型的隶属函数(membership function,MF)。MF层的输出为:

其中,μij为xi的第j个MF 的值,cij和σij分别为xi的第j个MF的中心和宽度。

图1 MIMO型FNN的拓扑结构Fig.1 Architecture of MIMO-type FNN

第三层:该层为规则层,具有r个节点,每个节点代表一条模糊规则的前件。第j个规则节点的输出为:

该层的规范化输出为:

其中,h=[h1,h2,…,hr]T为规则层的规范化输出向量。

第四层:该层为输出层,对于MIMO 系统来说,该层有多个输出节点。该层第q个节点的输出是其输入信号的加权和,即:

其中,wjq为第j个规则节点与第q个输出节点之间连接权。

2 基于自适应模糊神经网络的模型预测控制

2.1 自适应模糊神经网络

在构造AFNN 时,有两个问题需要解决:一是结构辨识,二是参数估计。对于AFNN 来说,如果初始参数选取的较为恰当,将能够加快收敛速度,增强算法跳出局部最优的能力。AFNN 首先采用规则自分裂(rule automatic splitting, RAS)技术自适应地构造初始模糊规则,然后利用改进的自适应LM(improved adaptive LM,IALM)算法调整包括中心、宽度和权值在内的网络参数[28-29]。

2.1.1 AFNN 结构辨识 针对离线获取的观测数据,假定当前有r个聚类,首先利用式(9)找到具有最大均方差(maximum mean square error, MMSE)的聚类[29]:

其中,gij为第j个聚类的第i维输入变量的均方差,即:

其中,x∈vj表明样本x来自第j个聚类,vij为第j个聚类中心的第i维,Pj为第j个聚类中包含的样本数量。

其中,xp为第p个样本,||xp-vj||表示xp与vj之间的欧氏距离,μpj为第p个样本属于第j个聚类的隶属度值,m是模糊指数(m>1,一般取2)。μpj的定义如下:

最后再次利用式(11)获取均方差作为AFNN 的初始宽度σij。

RAS 的算法流程如表1 所示,限于篇幅,这里不再详细介绍FCM算法。

表1 RAS的算法流程Table 1 Algorithm flow of RAS

2.1.2 AFNN 参数估计 为了提高AFNN 的收敛速度和泛化性能,利用IALM 算法训练网络参数(中心、宽度和权值)。根据LM 算法,参数的更新规则可表示为[28-29]:

其中,P为样本总数。Jacobian矩阵可表示为:

其中,Ψ(t)为准海森(quasi-Hessian)矩阵,Ω(t)为梯度向量。自适应学习率η(t)的调整规则如下:

其中,βm(0<β<1)为预设的常量,Ψ(t)和Ω(t)分别为所有样本的子矩阵ψp(t)和子向量ωp(t)的累加,即:

其中,子矩阵ψp(t)和子向量ωp(t)分别定义为:

其中,jp(t)为Jacobian矩阵的行向量,即:

根据梯度下降学习算法的更新规则,Jacobian矩阵行向量的元素可表示为:

其中,

需要指出的是,对于样本p,子矩阵ψp(t)和子向量ωp(t)的计算仅需要计算jp(t)的(2n+1)×r个元素。对于IALM 算法来说,不需要储存Jacobian 矩阵,也不需要执行Jacobian 矩阵的乘法,可以直接计算准海森矩阵Ψ(t)和梯度向量Ω(t),从而降低了存储容量和计算复杂度。同时,在学习过程中,式(18)定义的自适应学习率有助于加快学习速度和提高泛化能力[28-29]。

2.1.3 AFNN 算法流程 AFNN 的算法流程如表2所示,主要包括RAS 结构辨识策略和IALM 参数优化策略。

表2 AFNN的算法流程Table 2 Algorithm flow of AFNN

2.2 MPC控制律推导

建好控制对象的AFNN 预测模型后,为了获取控制量,MPC 在每个控制步中都需要在线求解式(29)表示的一个非线性优化问题。本文利用自适应梯度下降算法在线优化性能指标以求取控制律。

根据y(k)的h步超前预测,MPC 的优化性能指标为[21-22]:

利用梯度下降算法对优化性能指标式(30)进行寻优,可以获取控制增量向量ΔU(k),如下:

其中,η为梯度法的自适应优化率。根据式(31),ΔU(k)可以表示为:

其中,

从式(32)和式(33)可以看出,控制增量向量的求取涉及到矩阵求逆和矩阵乘法,这使得MPC 的计算量剧增。文献[22]指出,当Nu=1时,MPC仍然具有令人满意的控制效果。因此,本文设置Nu=1。此时,式(32)可以写成:

其中,

根据导数的链式法则,可以获得式(35)中的∂ŷ(k+j)/∂u(k)如下:

其中,

为了加快梯度优化算法的收敛速度,η在实时控制过程能够自适应调整,即:

其中,0<βc<2;λmax是g(k)gT(k)的最大特征值。

综上,AFNN-MPC 的控制增量Δu(k)具有如下形式:

在实时控制过程的每一步,这一过程反复执行,直至J(k)达到最小或u(k)不再变化,此时将u(k)作为最优控制量作用到系统实施控制。

2.3 AFNN-MPC算法流程

图2 给出了AFNN-MPC 的控制架构,建好AFNN 离线模型后,在实时控制过程采用自适应梯度下降算法在线调节AFNN 模型的参数集,以最小化MPC 模型的预测输出和系统的实际输出之间的误差。AFNN-MPC 的控制目标就是通过动态调节u(k)以使得y(k)能够跟踪设定值r(k)。

图2 AFNN-MPC的控制架构Fig.2 Control architecture of AFNN-MPC

AFNN-MPC 算法流程如表3 所示,主要包括AFNN 离线辨识、模型参数的在线调整和控制增量Δu的计算。

表3 AFNN-MPC算法流程Table 3 Algorithm flow of AFNN-MPC

3 AFNN-MPC稳定性分析

下面对AFNN 的收敛性、AFNN-MPC 的收敛性、AFNN-MPC的闭环稳定性进行分析。

定理1:由于RAS 规则生成方法可以寻找到一组AFNN近似最优参数集,且式(18)定义的自适应学习率能够保证Hessian 矩阵Ψ(t)的非奇异性和正定性,当利用式(14)更新AFNN参数时,如果

则能够保证AFNN 是渐近收敛的,即当t→+∞时,e(t)→0。

证明:IALM算法的更新规则如下:

根据矩阵不等式,式(42)可以改写为:

因此,可得到:

假设Lyapunov函数定义为:

因此,根据Lyapunov 稳定性定理,AFNN 理论上是收敛的。证毕。

定理2:如果AFNN-MPC 中控制律推导时梯度优化算法的学习率设置为式(38),那么AFNN-MPC具有收敛性。

证明:选择Lyapunov候选函数如下:

基于式(53),有:

基于式(56),式(54)可以改写为:

因此,根据Lyapunov 稳定性定理,AFNN-MPC理论上是收敛的。证毕。

4 实验结果与分析

本文选取数值仿真和两级CSTR 过程来验证AFNN-MPC的有效性。

4.1 数值仿真

考虑如下的非线性动态系统:

则AFNN预测模型的输入向量为:

此外,预测输出为ŷ(k),系统实际输出为y(k)。设置u(k)为[-1,1]之间的随机数,代入式(59)得到1050 组样本,选择其中1000 组作为训练集,剩余的50 组作为测试集。AFNN-MPC 的参数设置如下:gth=0.1,βm=0.3,βc=0.5,Np=4,Nu=1,q11=1,q12=0.3。

图3 给出了AFNN 在结构辨识阶段的MMSE 曲线。可见,随着模糊规则的自动生成,MMSE 逐渐逼近预设的gth阈值(0.1),最终AFNN能够产生5条较优的初始模糊规则。

图3 AFNN结构辨识阶段的MMSE曲线Fig.3 MMSE curve during AFNN structure identification

图4 AFNN参数学习阶段的RMSE曲线Fig.4 RMSE curve during AFNN parameter training

图4 给出了AFNN 离线训练时的RMSE 曲线。可见,由于FNN 的初始参数随机产生,其初始RMSE值较大,并且采用误差反传参数学习算法,存在收敛速度慢和易陷入局部最优的缺陷。对于AFNN 来说,本文设计的RAS 方法可以寻找到一组较为优秀的初始参数,起到了降低初始RMSE的作用,并且所提的IALM 算法能够加快收敛速度,提高模型逼近精度(AFNN 仅需120 次左右的迭代就能收敛,而FNN 经过500 次迭代还不能获取较优的网络参数)。尤其是,AFNN 的最终收敛精度要比FNN 高出一个数量级。

图5 测试样本的预测结果Fig.5 Prediction results of testing samples

图6 AFNN-MPC的控制效果Fig.6 Control performance of AFNN-MPC

图7 控制信号u的变化情况Fig.7 Change of the control signal u

图5 给出了测试样本的预测结果和预测误差,可以看出预测精度完全能够满足MPC的需求。图6为AFNN-MPC 的跟踪控制效果,可以看出,AFNNMPC能够较好地跟踪正弦参考信号。图7为操作量u(k)的变化情况。

4.2 两级CSTR过程

为了进一步验证本文所提AFNN-MPC 的性能,利用两级串联连续搅拌反应釜(continuous stirred tank reactor, CSTR)进行仿真测试[32-34]。图8 给出了两级CSTR 过程的示意图。为了将更多精力用于控制器架构设计上,本文设置两个反应釜的容积为常数。CSTR 控制问题的核心就是通过调节两个反应釜的冷却水流量[Qcw1,Qcw2]来维持两个反应釜的温度[To1,To2]在期望值上。

图8 两级CSTR过程的示意图Fig.8 Schematic of two-CSTR process

图9 GMN激励信号和CSTR响应信号Fig.9 GMN excitation signal and CSTR response signal

为了能够捕捉更多的CSTR 动态信息,利用广义多级噪声(generalized multilevel noise, GMN)作为激励信号以获取To1和To2的响应信号。根据Qcw1和Qcw2的取值范围,设置两路GMN 信号的变化范围为[-1.5,1.5],代入两级CSTR 过程获取1500 组用于模型辨识的输入输出数据,如图9所示。

选取输入输出阶数nu=ny=2,时延kd=0,则AFNN预测模型的输入向量为:

此外,实际输出t(k)=[To1(k),To2(k)]T。对于1500组样本,选择其中1400 组作为训练集,剩余的100组作为测试集。实验时,AFNN-MPC 的参数设置如下:gth=0.2,βm=0.4,βc=0.6,Np=4,Nu=1,q11=1,q12=0.4。

图10给出了AFNN 离线训练时的RMSE曲线和建模结果。从图10(a)可以看出,与基于EBP 的FNN相比,本文所提AFNN 算法不仅收敛速度快,而且收敛精度高。从图10(b)、(c)可以看出,AFNN的预测值基本与实际值吻合,取得了令人满意的建模效果。值得注意是,通过模糊规则自分裂技术,最终AFNN的模糊规则为14 条。而FLC 和固定FNN 分别需要49条和20条才能起到控制作用。因此,建模结果表明AFNN 能够以较为精简的网络结构取得较为优越的建模性能,为MPC 提供了一个能够反映CSTR 动态特性的精确预测模型。

图11 给出了AFNN-MPC 的跟踪控制效果,可以看出,当To1和To2设定值呈现阶跃变化时,AFNNMPC也能够较好地跟踪设定值。图12为操作量Qcw1和Qcw2的变化情况。

为了表明本文所提方法的优越性,表4 和表5分别给出了AFNN-MPC 与PI、模糊逻辑控制(FLC)、广义预测控制(GPC)、FNN-MPC和WFNN-MPC等算法用于控制To1和To2的对比结果。控制指标采用绝对误差积分(integral of absolute error,IAE),平方误差积分(integral of square error, ISE)和最大绝对误差(maximal deviation from setpoint,DEVmax),具体表达式见文献[30]。

从表4 和表5 可以看出,对于To1来说,AFNNMPC 控 制 器 的IAE、ISE 和DEVmax分 别 为126.00、95.31 和2.59。对于To2来说,AFNN-MPC 控制器的IAE、ISE 和DEVmax分别为149.66、144.70 和2.70。与PID 和FLC 等传统控制方法相比,AFNN-MPC 的性能指标有较大幅度提升,与GPC、FNN-MPC 和WFNN-MPC 等预测控制器相比,AFNN 的DEVmax也有一定程度的改善,表明本文所提算法能够实现多级串联CSTR过程的精确控制。

图10 AFNN的RMSE和建模结果Fig.10 RMSE and modeling results of AFNN

5 结 论

图11 AFNN-MPC的控制结果Fig.11 Control results of AFNN-MPC

图12 控制信号Qcw1和Qcw2的变化情况Fig.12 Changes of control signal Qcw1 and Qcw2

表4 不同算法在To1上的控制结果Table 4 Control results of different algorithms for To1

表5 不同算法在To2上的控制结果Table 5 Control results of different algorithms for To2

本文提出了一种基于自适应模糊神经网络的模型预测控制(AFNN-MPC)方法,并利用其实现非线性动态系统和两级CSTR 过程的智能控制。AFNN 采用规则自分裂(RAS)技术自动生成较优的初始模糊规则有助于获取全局最优解,采用IALM算法优化网络参数有助于提高收敛速度和泛化性能。在实时控制过程,AFNN 能够根据误差调整已离线训练好的模型的参数,从而为MPC 提供一个精确的预测模型。AFNN-MPC 采用带有自适应学习率的梯度下降算法求解非线性优化问题以在线获取控制律。数值仿真和双CSTR 过程的实验结果表明,AFNN-MPC 控制器具有较高的跟踪精度和较强的自适应能力,能够满足复杂非线性系统的智能控制需求。

猜你喜欢
梯度控制器神经网络
带非线性梯度项的p-Laplacian抛物方程的临界指标
基于递归模糊神经网络的风电平滑控制策略
工商业IC卡控制器改造为物联网控制器实践
PLC可编程控制器相关外置的选择计算研究
神经网络抑制无线通信干扰探究
一个具梯度项的p-Laplace 方程弱解的存在性
基于神经网络的中小学生情感分析
基于AMR的梯度磁传感器在磁异常检测中的研究
基于数字虚拟飞行的民机复飞爬升梯度评估
基于支持向量机回归和RBF神经网络的PID整定