李爱军1,沈毅2,章卫国1 1.西北工业大学自动控制系,陕西西安710072;2.618研究所 陕西西安710056
1 引 言 动态逆方法的基本思想是:对于给定系统,首先用对象的模型生成一种可以用反馈方法实现的“α阶积分逆”[1],并将对象补偿成为具有线性传递关系的且已解耦的一种规范化系统———伪线性系统,然后再利用线性系统的各种设计理论完成伪线性系统的综合。 动态逆方法作为非线性控制的一个有效的方法,由于其物理概念清晰、适用面宽、应用简便的特点,在工程及各学科的实际应用中得到了有效的普及,并日益发挥出显著的作用。 然而,动态逆方法要求精确的模型解析式,而大多数工业过程往往呈现很强的非线性行为且难以用解析式描述,这给我们应用动态逆方法进行系统设 计带来极大地不便,即使建立起非线性数学模型,也很难求出模型的逆[2]。因此动态逆方法在实际应用中存在很大障碍,它的推广也受到了影响。神经网络为解决这个问题提供了极有希望的办法。 2 基于神经网络的动态逆方法 2.1 基本思想 用神经网络实现动态逆的基本思想是:通过训练神经网络,得到逼近被控对象逆动力学特性的神经网络控制器[3]。 设n自由度非线性动态系统的形式为
式中:f为非线性函数,是状态变量,δ(t)∈Rm是控制变量。n=m时,就是二阶系统。如果式(2—1)可逆且可观测,则可以把它写成如下形式
式(2—4)来表示[3] 用神经网络实现动态逆就是通过对网络进行训练,使其输入输出关系逼近式(2—4)。 2.2 神经网络的选取 神经网络的选取可用任一静态网络,只要能逼近非线性函数即可。由于RBF网络的诸多优点,在文中我们以RBF网络为主要研究对象。在讨论控制问题时,所研究的对象往往是动态系统,因此需要将动态特性引入到神经网络中去[4]。一种办法是采用动态(反馈)网络,另一种办法是将动态特性直接引入到神经元中去。不过最直接的办法还是增加神经网络的输入,将对象过去的输入和输出量引入到神经网络的入口,这样网络就有了动态性能。 2.3 网络结构 下面讨论系统动态逆的网络结构。以BIBO稳定的SISO系统为例,系统可由下面的方程来描述[4]:
其中u(k-l-j),y(k-i)为过去输入与模型输出,l为已知的时间滞后,m为系统阶次,n为输入迟滞。设系统可逆,则存在函数Φ(·),使得
其中y(k+1)为系统第k+1步的期望值。 首先确定函数Φ(·)来近似系统的动态逆,辨识是一个函数逼近问题,系统的动态逆可由RBF的线性组合来近似:
ci为选择的RBF中心,MS为RBF数目,它远远小于样本数目N。 可见代表动态逆的网络将接收现在和过去的对象输出、训练信号以及输入的过去值作为网络的输入信号。 2.4 辨识结构 动态系统的逆模型在控制结构中起着重要作用。从概念上看,最简单的办法是直接求模型的逆,如图2—1a所示。这种方法又称为一般化的逆学 习。一个综合训练信号S被引入系统,然后将系统的输出作为网络的输入。网络的输出与综合训练信号S(系统的输入)相比较,其误差用来训练网络。这种结构使网络特性明显地代表对象的逆,但是这种方法有以下缺点: (1)为了获得良好的逆动力学特性,训练信号必须足够多样以致能覆盖所有可能的输入模式。但在实际运行条件下,输入难以按事先定义好的目标使系统输出按希望的方式改变,这样在网络的逆学习中,训练信号并不与明确的目标相适应。另一方面,在系统辨识中为保证参数估计算法一致收敛,必须提供持续激励的输入信号。尽管对传统自适应控制已经提出了许多确保持续激励的条件,但在神经网络中如何描述持续激励,这是一个急待解决的问题。由于实际工作范围内的系统输入S不可能预先定义,而相应的持续激励信号又难于设计,这就使该方法在应用时,有可能给出一个不可靠的逆。 (2)如果非线性映射不是一对一的映射,则求得的逆可能不正确。
采用以下方法能够克服上述缺点,其结构如图2—1b所示。网络的逆模型放在系统之前并与之串联,用系统期望的输出r作为输入。这种学习结构还包括一个已训练好的系统的正向模型(利用多层前馈神经网络,通过训练或学习,使其能够表达系统正向动力学特性的模型),放在与对象平行的位置以便作比较参考。训练算法的误差信号是训练信号与对象输出yP的偏差,也可以是训练信号与正向模型M输出的偏差。后者适用于有噪声输出的系统。 当采用实际系统的输出时,在正向模型不准确的情况下能产生准确的逆。若采用正向模型的输出时,就得不到这样的结果。误差将通过正向模型然后经过逆模型这样反向传播,但仅仅是逆网络模型N的权重被调整。因此,此法能有效地实现从逆模型到正向模型的恒等映射。 2.5 伪线性系统的综合 已经辨识好的神经网络动态逆可以构造系统的直接逆控制器,但这种控制器因为不存在反馈,有可能出现很多问题,如逆模型的不精确会造成稳态误差,而其它不确定因素(如难以避免的干扰等)会造成系统的抖动,系统可能不稳定,鲁棒性较差[2]。因此,必须对系统进行必要的综合,以达到控制目的。下面给出两种综合方案,如图2—2所示: 方案(a):可以利用自适应控制的原理,设计另外一个神经网络,用于在线补偿误差,改善系统的鲁棒性能。 方案(b):由动态逆的方法可知,训练好的动态逆控制器直接与原非线性系统连接起来,就构成一伪线性系统,对于这样的系统可以利用线性控制理论中的各种控制方法,如PID控制、极点配置、线性二次型最优调节器、QFT技术等,设计出满足系统要求的控制器,连同神经网络动态逆一起构成复合控制器,实现对原非线性系统的有效控制。
方案(a)同时具有神经网络和自适应控制的优势[5],具有简捷、可靠、有效、鲁棒性强的特点。和一般基于神经网络的控制器相比,它有自适应性能,能根据误差直接调节控制器参数以适应模型及环境的变化,具有很强的鲁棒性;与传统自适应控制系统相比,它不需要确定的数学模型,省却了建模的巨大开支。 3 仿真研究 仿真一:仿真对象的非线性模型可用下述方程来描述: 目标是设计一个神经网络控制器,以使原系统反馈线性化。 为了辨识神经网络动态逆模型,首先建立系统的神经网络正向模型,用于反向传播误差。图3—1给出了仿真结果,其中虚线为原系统的输出,实线为神经网络正向模型输出。从图3—1中可以看出,经过训练的神经网络很好地代表了原系统。 下一步是以神经网络正向模型为误差的反向传播通道,辨识动态逆模型,完成反馈线性化控制。仿真结果见图3—2,其中,虚线为理想的响应,实线为动态逆反馈线性化后系统的实际响应。结果表明,系统被反馈线性化,经过训练的神经网络很好地代表了原系统的逆。
仿真二:二阶非线性系统为 设计目标是使系统的输出能稳定地跟踪信号r(t)。 首先在MATLAB的SIMULINK环境下建立系统的仿真框图,采用实验信号u(t)=sin(ωt),采样步长为0.01 s,通过仿真获得训练样本。 将训练好的神经网络动态逆模型与原系统串联,构成伪线性系统,采用方案(b)用极点配置构成复合控制系统,其中K=2,f1=1.0,f2=0.8。该系统对于方波输入的响应如图3—3所示,其中实线为输入信号,点划线为复合控制系统的响应,虚线为原系统对输入信号的响应。仿真结果表明,系统的输出能够稳定地跟踪输入信号,由神经网络动态逆构成的复合控 制器实现了对原非线性系统的有效控制。
4 结 论 (1)与一般意义下的动态逆方法相比,神经网络动态逆方法具有更广的应用范围。因为一般意义下的动态逆方法必须知道原系统的精确模型及能求出与系统相应的动态逆的显式表示(这也是一般意义下的动态逆方法在实际应用中的“瓶颈”问题),限制了其在实际中的应用,而神经网络动态逆方法无以上要求,且在设计过程中,无需了解被控对象的模型参数,也无需进行非线性动态逆模型繁琐的数学推导,只要了解被控对象数学模型的形式即可,神经网络动态逆模型的建立只需要被控对象的输入———输出数据; (2)神经网络动态逆NN1仅作为整个控制器的一部分,另一部分由按线性系统理论设计的线性控制器构成,线性控制器的设计方法成熟且结构都较简单,能够提高系统的动态性能。另一部分也可以由具有在线学习能力的自适应神经网络NN2构成,来改善系统的动态性能。大量仿真结果表明,对伪线性系统进行综合之后,能够消除系统的稳态误差,提高系统的动态性能,系统具有良好的鲁棒性能; (3)在线自适应神经网络能够在不知道不确定性因素的情况下,实时地消除逆误差,使神经网络紧密地接近完全逆; (4)神经网络动态逆做为研究反馈线性化的一种基本途径,是一种有效的方法,它较大地简化了高性能控制系统的设计问题。 因此,随着神经网络理论与应用的进一步发展,做为非线性控制的一个有效的方法,神经网络动态逆方法必将在工程及各学科的实际应用中得到有效的普及,并日益发挥出显著的作用。
|