许多真实世界的系统表现出复杂的非线性特性,因此不能直接通过线性方法来识别.近20年来,神经网络(NNs)、径向基函数网络(RBFNs)、小波网络(WNN)和多智能体网络等非线性模型在非线性系统辨识中得到了广泛的研究[1-2].然而,从使用者的角度来看,传统的非线性黑箱模型较多,不便于用户使用,主要原因有: 1) 忽略了成功的线性黑盒建模的一些良好特性,如线性结构和简单性[3]; 2) 不易于使用.模型是解释非线性动力学的性质,而不是作为适应于配合数据的手段[4].因此,对于具体应用场景需要合适的模型结构.
近年来,为了得到益于应用的非线性模型,一种特定的模块化模型:具有外部输入项的准线性自回归(Auto-Regression with eXogenous inputs, ARX) 模型,受到研究者关注.该模型包括两个部分:宏观部分和内核部分[5].宏观部分是一个用户友好的接口,适用于特定的应用程序,核心部分用来表示宏观部分的复杂系数.利用Taylor展开或其他数学变换技术,构造一类ARX类接口作为宏观部分,其中可以引入线性模型的有用性质,而其系数由诸如NFNs的一些非线性模型来表示.这样,可以进一步设计具有输入变量u(t)的准ARX线性预测预估器,其核心部分中的u(t)由外部变量巧妙地替换.这样可以从准ARX预测器直接生成非线性控制器,其类似于简单线性控制方法[5].而基于NNs的控制方法中,需要考虑复杂的非线性控制器设计,其中需要两个NNs:一个用于预测器,另一个用于控制器[6]. 准ARX模型的线性结构可以继承线性ARX 系统理论的透明性、简单性、完善性,有利于实际问题的表达,方便使用;另一方面,模型的复杂性和非线性都嵌入到了线性结构的系数中,并可表征为系统数据的函数,通过构建非线性学习网络来逼近,从而提高模型的柔软性和逼近能力[7].近年来已成功应用于自适应控制器设计[8〗、机电系统辨识与控制[9]、非线性时序预测[10-11]等领域.因此,准ARX模型是利用非线性网络,构建可用、可靠、高效的辨识模型的一个有效途径.
然而,当面对复杂系统和大规模数据时,尤其是长期依赖关系,模型中非线性网络训练部分,面临着过拟合和陷入局部最优的挑战[12].近年来,多层学习网络的迅速发展为解决这两个问题提供了思路[13]:一种基于三层受限Boltzmann机捕捉数据输入空间特征的深度置信网络被提出,连接权重采用BP算法进行离线训练,在线进行微调[14];一种具有反馈结构的循环神经网络(RNN)被研究,并在21世纪初发展为重要的学习算法[15];RNN被嵌入到准模型中,并用于控制器设计,简化了求解过程[16].
为了尽可能考虑更多维过去输入输出从而提高准ARX模型的泛化能力,本文拟采用多层学习网络表征准ARX模型的非线性参数,给出深层结构的ARX NFNs模型:宏观部分为线性ARX结构,内核部分由一个离线训练完成的NNs以及一个在线调整的NFNs构成.同时,该模型包括多层学习网络作为它的一个组成部分,与单个多层学习网络相比,因为将系统的复杂性分散到ARX部分,从而使得模型中的网络结构比单个深度学习网络结构简单得多.基于该预测模型,给出控制器设计方案以及相应参数训练和校正的方法.
本文的组织如下:第1节引入了准ARX多层NFNs的建模方案;第2节基于模型给出预测器设计方案; 第3节提出了基于准ARX NFN模型预测控制的具体实施步骤;第4节研究了数值例子,给出结果分析; 最后,在第5节中进行了讨论.
考虑一个单输入单输出(SISO)非线性时变系统,其输入输出关系表达式为
y(t)=g(φ(t))+v(t),
(1)
其中φ(t)=[y(t-1),…,y(t-ny),u(t-1),…,u(t-nu)]T,u(t)∈R, y(t)∈R,e(t)∈R分别是t时刻系统的输入、输出以及零均值的随机噪声;nu和ny分别为非已知的输入、输出最大时滞; φ(t)∈Rn, n=ny+nu 是对应的回归变量; g(·)是一个未知的函数,描述被研究系统的动力学,假定它满足如下条件[5]:
g(·)是连续函数, 在φ(t)=0处是C∞连续;
系统的输入、输出u(t), y(t)是有界的,且上界作为先验已知;
系统是可控的,且存在一个控制器可以表示为u(t)=ρ(ξ(t)), 其中ξ(t)=[y(t),…,y(t-ny),u(t-1),…,u(t-nu),y*(t+1),…,y*(t+1-ne)]T(y*(t)表示参考输出).
实现系统(1)的控制需要导出ρ(·)的显式表达.本文通过实现如下目标函数最小化问题,得到最小预测误差自适应控制器:
(2)
其中λ是控制输入的权重因子.
所得控制器具有两个特征:
1) 它关于控制系统的复合变量是线性的;
2) 它的参数有明确的定义.
利用函数g(·)在φ(t)=0邻域内的Taylor展开得到
(3)
其中
g′(0)=[g′1(0),g′2(0),…,g′n(0)],
令
其中系数ai,t=ai(φ(t))以及bi,t=bi(φ(t))是关于φ(t)的非线性函数.简单起见令g(0)=0,可以得到系统(1)的另一种表达形式为
y(t)=φT(t)θ(φ(t))+v(t).
(4)
给出准线性ARX模型(5)作为宏观部分:
A(q-1,φ(t))y(t)=B(q-1,φ(t))u(t-1)+v(t),
(5)
其中q-1是反向因子, 例如q-1u(t)=u(t-1),
A(q-1,φ(t))=1-a1,tq-1- … - an,tq-n,
B(q-1,φ(t))=b0,t+ … + bm-1,tq-m+1.
预测器的表达式为[17]
y(t+d)=α(q-1,φ(t))y(t)+β(q-1,φ(t))u(t),
(6)
其中
φ(t)=[y(t),…,y(t-n+1),u(t),…,u(t-m+1)]T,
α(q-1,φ(t))=α0,t+…+αn-1,tq-(n-1),
β(q-1,φ(t))=β0,t+…+βm+d-2,tq-(m+d-2).
图1给出了深度准ARX NFNs模型的示意图,其中宏观部分为线性ARX结构,内核部分为多层学习网络.虚线部分左端为三层神经网络,右端为三层NFNs.
因系统(4)是有界的,所以参数θ(φ(t))是有界的.因此可以利用一组神经模糊元参数化:
(7)
其中αi, βk 和ωij是常数项,Nf(·,·)是模糊基底函数,pj是它的参数向量.模糊基底函数Nf(·,·)可以显式表达为
(8)
其中r=dim(x(t)), ∧表示取小算子, M代表模糊规则个数, xk(t)表示x(t)的元素,
表示模糊集
的隶属函数.选取三角函数作为隶属度函数,参数向量pj 由下式给出:
图1 准ARX多层学习网络模型
Fig. 1 A quasi-ARX multilayer learning network model
NFNs的输入变量x(t)依赖于向量φ(t).然而,当φ(t)维数较高的时候,即使一个很简单的设计,模糊规则数都会产生戏剧化增大.因此本文采用一个深层的网络结构,其中网络前面部分通过离线训练参数(图2),后面部分参数进行在线识别.该部分表达为
x(t)=Q(W,φ(t)),
(9)
其中Q(W,φ(t))=W2f(W1φ(t)+B1)+B2, W={W1,B1,W2,B2}, f(·)是S型函数(例如 f(x)=1/(1+e-x)).
基于系统(4)~(9)给出如下定义:
Ω0=(αi,βk), i=0,1,…,n-1, k=0,1,…,m+d-2;
Ωj=(ωi,j,ωk+n), i=0,1,…,n-1, k=0,1,…,m+d-2.
从而得到预测器的表达式:
(10)
接下来讨论基于上述预测器的非线性系统的自适应控制问题.
若通过到判别函数(2)求微分,得到控制率:
预测器必须关于u(t)线性.然而,式(10)并非如此,因为αi,t和βi,t是包含u(t)作为元素,关于x(φ(t))非线性.
因为系统(1)是可控的,所以存在一个合理却未知的控制器u(t)=ρ(ξ(t)).用未知函数ρ(·)代替αi,t 和βi,t中的变量u(t):
αi,t=αi(x(φ(t)))≃αi(φρ(t))
αi(ξ(t)),
βi,t=βi(x(φ(t)))≃βi(φρ(t))
βi(ξ(t)),
其中φρ(t)表示元素u(t)被ρ(ξ(t))替换的φ(t),即φρ(t)=[y(t),…,y(t-n+1),ρ(ξ(t)),u(t-1),…,u(t-m-d+2)]T. ξ(t)可表示为
ξ(t)=[y(t),…,y(t-n+1), u(t-1),…,u(t-m-d+2), y*(t+d)].
(11)
因此可以得到预测器的表达式
(12)
关于u(t)是线性的.
引入如下记号:
其中符号⊗代表Kronecker积,
从而得到预测器的线性回归表达形式:
y(t+d)=ΦT(t)Θ.
(13)
因为参数的未知性,所以预测器的参数只能通过离线或在线进行确定或调整,但是有很多算法可以处理这种问题而不丢失它们的性质.模型的阶数n,m,l如果未知,因为预测器的线性性,所以可以采用已有的方法,例如Akaike information criterion(AIC)以及FPE判定模型阶数.参照文献[12],利用先验知识判定参数M.
基于式(12)将参数分为两类:W以及pj为第一类参数,通过离线进行训练,在线进行微调;Ωj(j=0,1,…,M)是第二类参数.下面给出对应的参数调整算法.
① 第一类参数确定
控制过程中,参数W首先通过一个五层的自联想神经网络(图2)训练得到.ξ(t)是输入输出层,x(ξ(t))是第二个隐含层.其中权重 W1,W2,W3,W4和偏差B1,B2,B3,B4通过BP算法进行更新.当算法收敛后,利用输入层、第一层和第二层网络作为模型内核的前面部分.第二层网络的输出作为后面部分的输入.
接下来初始化参数
与x(t)的划分相关联,所以x(t)的边界值可以确定一个较准较好的值.这意味着即使参数不变,该模型对于非线性系统仍是非常柔性的.
② 第二类参数确定
当第一类参数确定后,通过最小化如下目标函数调整参数Θ:
(14)
其中 
表示预测误差,Cα表示一个很小的正数.如果Cα足够小,使得函数(14)的第二项不会影响算法的收敛性,众所周知,解决上述最小化问题得到一个线性的预测器具有很多方法,根据系统数据特征选择方法.
图2 一个用于训练参数的五层自联想神经网络
Fig. 2 A 5-layer auto-associative neural network for training parameters
为了说明所提供的自适应预测器的实用性,接下来将其用于解决非线性系统的自适应控制问题.
通过最小化d步超前控制成本函数,考虑最小方差控制.因为关于u(t)是线性的,所以可以通过简单地求导得到下式:
yx(t)+y*(t+d)-A(q-1,x(t))y(t)},
(15)
其中参数由上文定义,该自适应控制律的合成方法如下.首先,使用递推最小二乘法估计参数向量,然后基于确定等价原则利用当前估值
代替控制律中的Θ.
本部分将通过数值例子说明所提供的模型的有效性.
u(t-1)+v(t),
(16)
其中, 扰动为v(t)=(1+0.25q-1)e(t), e(t)∈N(0, 0.001)为白噪声, 期望输出为y*(t)=0.6y*(t-1)+r(t-1),其中r(t)=sin(2πt/25)+sin(2πt/10).采用随机输入序列激活系统获得估计数据.首先,基于数据利用第三部分算法训练自联想网络得到权重.选取7-6-2-6-7的自联想网络作为训练网络,其中n=4, m=3, r=2.7-6-2网络训练参数作为内核的前面部分网络.所有的参数p赋予初始值.
利用如下的滑动窗口分别计算两个控制器的均方误差(MSE):
(17)
其中L选取100.
图3给出被控系统的输出、参考输出以及控制信号,其中图3(a)实线为控制输出y(t),虚线为期望输出y*(t),图3(b)为输入序列u(t).可以看出,该非线性自适应预测器可以很好地实现非线性系统的控制,而且并不需要先验知识.
图3 被控系统输出及控制信号
Fig. 3 The output and control signals of the controlled system
本文方法与直接采用三层NFN网络作为内核部分的控制方法进行对比.首先,作为对比模型,选取(y(t-1),…,y(t-4),u(t-1),…,u(t-3))作为模型的输入,NFN网络具有超过37参数.如果选取更多的输入输出项,其参数呈指数级增长.较多的在线自调整参数降低自适应控制的速度.图4给出MSE的收敛性.图中实线代表所提供的控制器,虚线代表参考文献[17]方法的结果.
图4 在一个滑动窗口内计算y(t)与y*(t)之间的均方误差(输入1)
Fig. 4 Mean square errors between y(t) and y*(t) calculated in a moving window(input 1)
其次, 直接选取(y(t-1),u(t-1))作为NFN网络部分的输入, 图5展示了不同方法的对比.通过比较可看出, 所提供的预测器控制效果无论是在控制精度还是速度上都好于对比方法.
图5 在一个滑动窗口内计算y(t)与y*(t)之间的均方误差(输入2)
Fig. 5 Mean square errors between y(t) and y*(t) calculated in a moving window(input 2)
基于线性ARX模型结构以及NFN网络的准ARX建模方法,不仅具有非线性模型的精确逼近能力,还具备近似线性结构的易用属性.然而,随着系统和数据日益复杂,需要在线调整的NFN网络参数呈现“爆炸式”增长,这将大大影响预测结果以及控制效率.一个多层学习网络被引入准ARX模型的核心部分设计,其中一部分参数采用离线训练,一部分参数采用在线调整.该模型可以考虑更多维输入输出信号,尤其是当前输出关于之前输入输出信号非线性.通过仿真例子展示该方法实现了快速有效的控制.
准ARX多层学习网络模型在控制器设计方面展示了很好的应用,拓展了模块化建模的适用范围.该种建模方法和参数分类识别的方法可以进一步运用到其他模型辨识当中去.
[1] NO L J P, KERSCHEN G. Nonlinear system identification in structural dynamics: 10 more years of progress[J]. Mechanical Systems and Signal Processing, 2017, 83: 2-35.
[2] 芦泽阳, 李树江, 王向东. 采用RBF网络的喷雾机喷杆自适应动态面跟踪控制[J]. 应用数学和力学, 2019, 40(7): 801-809.(LU Zeyang, LI Shujiang, WANG Xiangdong. Adaptive RBF-network dynamic surface tracking control of sprayer boom systems[J]. Applied Mathematics and Mechanics, 2019, 40(7): 801-809.(in Chinese))
[3] SUTRISNO I, JAMI’IN M A, HU J, et al. A self-organizing quasi-linear ARX RBFN model for nonlinear dynamical systems identification[J]. SICE Journal of Control, Measurement, and System Integration, 2016, 9(2): 70-77.
[4] LJUNG L. System Identification: Theory for the User[M]. 2nd ed. Englewood Cliffs, NJ: Prentice-Hall, 1999.
[5] HU J, KUMAMARU K, HIRASAWA K. A quasi-ARMAX approach to modelling of non-linear systems[J]. International Journal of Control, 2001, 74(18): 1754-1766.
[6] NARENDRA K S, PARTHASARATHY K. Identification and control of dynamical systems using neural networks[J]. IEEE Transactions on Neural Networks, 1990, 1(1): 4-27.
[7] YOUNG P C, MCKENNA P, BRUUN J. Identification of non-linear stochastic systems by state dependent parameter estimation[J]. International Journal of Control, 2001, 74(18): 1837-1857.
[8] WANG L, CHENG Y, HU J L. Stabilizing switching control for nonlinear system based on quasi-ARX RBFN model[J]. IEEJ Transactions on Electrical and Electronic Engineering, 2012, 7(4): 390-396.
[9] JANOT A, YOUNG P C, GAUTIER M. Identification and control of electro-mechanical systems using state-dependent parameter estimation[J]. International Journal of Control, 2017, 90(4): 643-660.
[10] XU W, PENG H, ZENG X, et al. Deep belief network-based AR model for nonlinear time series forecasting[J]. Applied Soft Computing, 2019, 77: 605-621.
[11] HINTON G E, SALAKHUTDINOV R R. Reducing the dimensionality of data with neural networks[J]. Science, 2006, 313(5786): 504-507.
[12] WANG L, CHENG Y, HU J, et al. Nonlinear system identification using quasi-ARX RBFN models with a parameter-classified scheme[J]. Complexity, 2017, 2017: 1-12.
[13] SRIVASTAVA N, HINTON G, KRIZHEVSKY A, et al. Dropout: a simple way to prevent neural networks from overfitting[J]. Journal of Machine Learning Research, 2014, 15(1): 1929-1958.
[14] KUREMOTO T, KIMURA S, KOBAYASHI K, et al. Time series forecasting using a deep belief network with restricted Boltzmann machines[J]. Neurocomputing, 2014, 137: 47-56.
[15] SCHMIDHUBER J. Deep learning in neural networks: an overview[J]. Neural Networks, 2015, 61: 85-117.
[16] LI D, KANG T, HU J, et al. Quasi-linear recurrent neural network based identification and predictive control[C]//2018 International Joint Conference on Neural Networks (IJCNN). 2018: 1-6.
[17] HU J, HIRASAWA K, KUMAMARU K. Adaptive predictor for control of nonlinear systems based on neurofuzzy models[C]//1999 European Control Conference (ECC). Karlsruhe, Germany, 1999.