《神经网络控制》课件第4章_第1页
《神经网络控制》课件第4章_第2页
《神经网络控制》课件第4章_第3页
《神经网络控制》课件第4章_第4页
《神经网络控制》课件第4章_第5页
已阅读5页,还剩191页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第4章神经控制中的系统辨识4.1

系统辨识基本原理4.2系统辨识过程中神经网络的作用4.3非线性动态系统辨识4.4多层前向网络辨识中的快速算法4.5非线性模型的预报误差神经网络辨识4.6非线性系统逆模型的神经网络辨识4.7线性连续动态系统辨识的参数估计4.8利用神经网络联想功能的辨识系统4.9小结习题与思考题

4.1系统辨识基本原理

自20世纪70年代以来,自动控制在辨识线性、非时变、参数确定的系统方面取得了长足的进步,然而对于非线性、时变系统的辨认,还缺乏一种有效的做法。在辨识前对此类系统的结构形态所预先做出的假设和经验认识,往往是针对某个特例的非线性系统做出的。目前尚未就一般的非线性系统进行辨识,不是人们不想做到这一点,而是不知道如何才能做到这一点。

神经控制的出现,给辨识非线性系统的一般方法带来了希望。人工神经网络具有学习能力,经过训练能够辨认被测对象的性质,决定被测对象的归宿。4.1.1辨识系统的基本结构

人工神经网络的辨识本领源自对生物神经网络的模拟。原来,生物神经网络的智能行为具有明显的学习特征,并且越是高等级的生物,后天学习的本领越强。例如刚出生的小

毛驴,一生下地就能站立起来走路,而刚出生的婴儿连翻身爬行都不会,仅会嚎哭和吸吮。但是随着后天的学习,人类成为世界的主人,毛驴只学会终生寻找食物和躲避危险。生物神经网络不是依赖生来具有的本领,而是通过后天的学习,有效地完成辨认与识别。

L.A.Zadeh给辨识下过一个定义:“辨识就是在输入和输出数据的基础上,从一组给定的模型中,确定一个与所测系统等价的模型。”辨识实际上是一种比较,是将被测系统与一组标准进行比较,如同医院为人们查血型一样。

从L.A.Zadeh的辨识定义,不难悟出完成辨识必须具备的三个条件:

第一,对被测系统加一个输入,系统能产生一个输出,且输入输出能够测量,至于测量采用什么方式、采用什么仪器则无限制。

第二,必须提供一套用于比较的标准模型。第三,无论使用硬件还是软件,只需要完成比较。比较的过程是一个选择最优化的过程,比较的原则遵循等价原则。

从系统辨识的定义不难发现,如果出现以下情况之一,辨识将失败:

(1)当被测系统不能接受给它的输入时,例如给一个数字电路加入模拟信号;

(2)当被测系统有了输入而没有输出时,例如对含有变压器的电路施加直流信号;

(3)当提供的“标准模型”不够“标准”时,例如提供了“与门”、“或门”作为标准,而被测对象却是一个“非门”;

(4)当系统的优化目标难以达到时,例如按梯度下降实施迭代运算而落入局部极小点。

系统辨识本身构成了一个系统,辨识系统的基本结构如图4-1所示,由被测系统及辨识模型两大模块组成。由于实际上不可能寻找到与被测系统完全等价的模型,因此只能从

辨识模型中挑选一个模型,看从静态特性和动态特性两个方面能否与被测系统拟合。

系统辨识的主要任务就是选择辨识模型,确定输入信号和误差信号及其差值。图4-1辨识系统基本结构4.1.2辨识模型

研究辨识模型的意义在于如何能近距离地接近被测系统。

从被测系统的实际情况看,可以把辨识模型分成静态模型和动态模型两类,其中动态模型又可分为参数模型和非参数模型两类。

考虑到辨识模型仅仅只是被测系统在一定环境下的近似描述,因此,正确选择确定辨识模型就有了更为重要的意义。选择只能在以下情况中确定:

是选择静态模型,还是选择动态模型?

是选择参数模型,还是选择非参数模型?目前还没有一套成熟有效的办法,一并解决以上问题,但有几点是必须考虑的:

(1)模型的用途;

(2)被测对象的精确度与复杂程度;

(3)系统的控制方式,是自适应控制还是实时控制;

(4)使用神经网络,可以选择三层网络通过仿真比对完成,当前神经网络理论尚未明确指出需要几个隐层节点数才能模拟出系统。如果使用参数模型,考虑到被测系统的特征已经表露在输入输出相关的数据中,辨识的方法只是使用数学计算,从输入输出数据中提取被测系统S的数学模型M,使下式成立:

‖Ym-Yo‖=‖M(u)-S(u)‖≤ε

式中Ym、Yo分别是系统输入u作用下模型和系统的输出。ε为预设的辨识精度。设e=Ym-Yo,则辨识准则为如果使用非参数模型,则无需事先确定模型的具体结构,只需要知道运行过程为线性。

这一类模型有阶跃响应、脉冲响应、频率特性等等,它们的用途比较广泛,可用于任一复杂过程。

将人工神经网络用于系统辨识,就是用神经网络构成辨识模型,辨识方法就是用神经网络辨识模型逼近被测系统。用作辨识模型的神经网络通常有多层感知器、BP网络、

Hopfield网络等。4.1.3辨识系统的输入和输出

在辨识系统中,被测系统与辨识模型使用相同的输入信号。为了协调两个不同的部件,要求输入信号满足两个条件:一个是在辨识时间内的输入信号必须持续激励,充分激励系

统的所有模态,输入信号的频谱必须足够覆盖系统的频谱;另一个是输入信号要求最优化。

辨识系统常用的输入信号有伪随机序列或白噪声。

辨识系统的所谓输出就是系统的误差。在确定系统误差时,通常需要选择误差准则,它用来衡量辨识模型接近被测系统的程度。误差准则函数的泛函表示如下:式中,f(·)有不同的选择,其中用得较多的是平方函数:

f[e(k)]=e2(k)其中,e(k)是误差函数,定义区间为[0,M],是辨识模型的输出与被测系统的输出之差。如果e(k)=0,则说明被测系统与辨识模型等价。

4.2系统辨识过程中神经网络的作用

本节讨论两个问题:神经网络作辨识模型的原理;神经网络辨识系统的一般结构。

4.2.1神经网络辨识原理

系统辨识实质上是一个优化问题,优化准则依靠辨识目的、辨识算法的复杂程度进行选择。辨识方法大体也有两种:一种是基于算法的辨识方法,适用于线性系统;另一种是

基于神经网络的辨识方法,适用于非线性系统。

1.基于算法的辨识方法

基于算法的辨识方法要求建立一个模型,该模型依赖于某个参数θ,把辨识转化成了对模型参数的估计。通常估计有三种不同的类型,分别叙述如下。

1)最小二乘法

最小二乘法辨识系统原理如图4-2所示。利用最小二乘法原理,通过极小化广义误差的二次方和函数来确定模型的参数。例如一个线性系统模型,在经过一系列的数学变换

后转换成最小二乘格式:

z(k)=hT(k)θ+e(k)式中,hT(k)是系统的广义输入,内含原系统输入u(k)和原系统输出y(k);e(k)是系统的广义噪声。

2)梯度校正法

梯度校正法,又名最速下降法,其原理是沿着误差准则函数关于模型参数的负梯度方向,逐步修改模型的参数估计值,直到误差准则函数达到最小。

3)极大似然法

极大似然法通过极大化似然函数来确定模型参数。图4-2最小二乘法辨识系统

2.基于神经网络的辨识方法

在遇到不能线性化的非线性系统时,对应的模型难于转化成关于参数空间的线性模型,基于算法的辨识方法将束手无策。

模拟生物神经网络的人工神经网络有能力辨识那些不能线性化的非线性系统,它不需要预先知道被测系统的模型。神经网络的这种功能,通过直接学习系统的输入输出数据实现。学习的过程就是训练的过程,也是辨识的过程。学习方法是使所要求的误差函数达到最小,从而过滤出隐含在

被测系统的输入输出数据之间的关系。这个关系描述了被测系统的外特性。人们并不知道被测系统的内部究竟是什么,究竟有几个电阻、几个电容、几个器件,这些都无关紧要。

从这个关系能确定被测系统的传递函数,断定它是什么环节,进一步可探知对它采用什么补偿校正方法,采取什么措施满足稳定性要求。用神经网络实现辨识的辨识系统如图4-3所示。从该图可以看出,辨识并不在意神经网络以什么形式去逼近实际系统,只关心神经网络的输出与被辨识系统的输出相差多少,

误差e(k)能否为0。从辨识的角度出发,只要e(k)小于某一个事先认可的值,就可以认为神经网络已经充分揭示了被辨识系统的传输特性,对被辨识系统的辨识任务告一段落。图4-3神经网络辨识系统框图与基于算法的辨识方法相比较,基于神经网络的辨识方法有以下几个特点:

(1)辨识器由神经网络构成,被辨识对象允许是本质上不能线性化的非线性系统;

(2)辨识过程非算法式,由神经网络的训练来实施。辨识结果是网络外部特性拟合系统的输入输出特性,网络内部特性归纳隐藏在输入输出数据中;

(3)辨识之前无须对被辨识系统建模,神经网络辨识器的权值反映了被辨识对象的可调参数;

(4)辨识过程是否收敛以及收敛速度仅取决于神经网络的结构及其算法,与被辨识系统及其维数无关,有别于与模型参数的维数密切相关的传统算法;

(5)神经网络既然可以作为被辨识系统的模型,因此可以认为它是被辨识系统的一个物理实现,从而可用于在线控制;

(6)神经网络连接权的权值在辨识中对应于模型参数,只要调节这些参数,就能使网络输出逼近系统输出。4.2.2多层前向网络的辨识能力

讨论神经网络辨识能力的意义在于搞清楚哪些系统能够被神经网络所辨识,哪些系统不能被它辨识,也就是说什么样的系统能用神经网络描述。

1.三层前向网络的逼近能力

多层前向网络具有极强的逼近能力。如果仅含一个隐层的三层前向网络可以逼近某个函数,那么四层及四层以上的网络也具备同样的能力。现以三层前向网络为例说明。三层前向网络的基本结构如图4-4所示。设输入层有n个节点,能接纳n个输入xi(i=1,2,3,…,n),隐层有q个节点vj(j=1,2,3,…,q),输出层仅有一个节点。网络的输入矢量为X,输入层到隐层第j个神经元的连接权值矢量用Wj表示,网络的输出为单输出,用y表示。

三层前向网络的传递关系为式中,,σ(·)是隐层节点的作用函数。图4-4三层前向网络结构给定函数空间S、映射p,若函数f,g,h∈S,且满足:

(1)p(f,g)≥0,且仅当f=g时取等号,具有正定性;

(2)p(f,g)=p(g,f),具有对称性;

(3)三角不等式p(f,g)≤p(f,h)+p(h,g)成立。

则称(s,p)为赋范空间,映射p称为距离函数或范数。

如果U

Rn是n维单位立方体,C(U)是定义在U上的所有连续函数f(X)的集合,定义范数p=sup|f(X)|则以下定理成立:

定理1

若神经元特性σ(t)是连续函数,且则∑(σ)在C(U)中是p稠密的,对于f∈C(U)及ε>0,

g(X),使得

|g(X)-f(X)|<ε

X∈U

定理1的证明过程从略。该定理表明,只要在一个有限空间中存在一个连续函数f(x),总可以找到一个三层神经网络,该网络的神经元特征为σ(t),网络的输出函数g(x)能以任意精度逼近f(x)。定理1中列出的函数f(x)不仅限于连续函数,f(x)是一个非连续函数时定理仍然成立,只要求f(x)在[-1,1]上有定义,且满足平方可积条件。利用傅里叶积分将f(x)展开成傅里叶级数——若干个连续函数之和,对每一连续函数,定理1均成立。

为简单起见,仅考虑一维。设f(x)连续,且在连续点处,有限次级数和的三角级数形式为式中,k=0,1,…,N因F(f,x,N)在均方意义下收敛于f(x),δ,N,使成立,问题转化成了只需要逼近F(f,x,N),只要存在三层前向网络能逼近sin(2πkx)和cos(2πkx),结论就能正确。考虑到余弦函数比正弦函数超前90°,问题变成了只要能找到三层网络以任意精度逼近sin(2πkx),就可以逼近有界连续函数。分析到此,按照定理1,这个问题实际已经解决。

现把问题推广到n维(n>1),定义矢量的绝对值为其各分量的最大绝对值,在单位空间中定义下列积分:其中将函数f(x)的集合记为L2(U)。定义范数则下列定理成立:

定理2

若神经元特性σ(t)是阈值特性,那么∑(σ)在L2(U)中是p稠密的,即对于f∈L2(U)及ε>0,g(X),使得成立。定理2的证明从略。定理2与定理1一起表明三层前向网络能以任意精度逼近任意连续函数和非连续函数。现已证明,在很宽的条件下,三层前向网络能以任意精度逼近任意连续函数、任意非连续函数及其各阶导数(如果存在导数)。这一性质能用于动态系统辨识,在这种辨识中,要求神经网络具备逼近各阶导数的能力。

2.多层前向网络的基本结构

多层前向网络有静态、动态之分。静态网络的典型例子就是BP网络,该网络的三个特征是多层次结构、S型神经元及反向传播算法(BackPropogation)。静态网络已在模式识

别、系统识别、图像处理等方面受到较大的关注。对比之下,动态多层前向网络更加被人们青睐,它具有的动态特性恰好是控制系统必需的。回归网络就是一种动态网络,它的结构特点存在反馈:对离散型网络而言,就是将输出信号通过带延时环节反馈到输入端;对连续型网络而言,就是将输出信号通过一阶惯性环节反馈到输入端。除了反馈输入外,回归网络也容许有外部输入。回归网络具有描

述动态系统的性质,它有单层与多层之分。单层回归网络的例子是Hopfield网络,它仅代表一类非线性系统,不能代表任意映射的动态非线性系统。

动态多层前向网络结构能用实现任意非线性映射的多层前向网络与描述动态系统的回归网络结合构成。

3.多层前向网络的学习算法

静态网络如BP网络使用基于误差的反向传播学习算法,每次反向传播的误差仅与网络当前误差分布有关。

动态多层前向网络的误差反向传播是一个动态过程,考虑到引入了动态系统W(z),反向传播的关键就是要找到反映动态过程的关系式,寻找方法如下。

设网络训练模式为U=[u1,u2,…,uN]T,S为训练用的输入模式集合,且U∈S。网络输出为Y=[y1,y2,…,yN]T,期望输出为Yq=[yq1,yq2,…,yqN]T,误差矢量e=Y-Yq。训练使用二次性能指标:或用一段时间内的均方误差值,记成式中,T选用适宜的一个正整数,并要求输入模式为动态信号。设网络的全部可调参数(例如连接权值和阈值)的集合用Θ表示,网络的当前参数为θ,θ∈Θ,▽J为当前时刻指标函数的梯度,由BP算法知当前参数增量Δθ与梯度成正比:

Δθ=-η▽J比值η是学习速率或步长。利用反向传播算法可以从输出层方向开始,向输入层方向逐个计算误差对参数的偏导数,继而计算和梯度▽J。

非线性动态多层前向网络的典型结构如图4-5所示,由Narendra和Parthasahy在1991年提出。图中W(z)表示线性系统传递矩阵,N表示多层前向网络的映射。下面分别讨论

该图四种非线性动态神经网络模型的算法。图4-5非线性动态多层前向网络

(1)对图4-5(a),有式中,用W(z)表示一个动态系统,只需要用BP算法静态计算,就能得到当前时刻的。下面是一个实例。设网络期望输出为式中,W(z)是一个特定的脉冲传递标量函数。选取多层网N的结构为四层:输入层1个节点,第一隐层20个节点,第二隐层10个节点,输出层1个节点。用多层网N逼近:逼近过程中W(z)可能有三种情况出现:第一种,取W(z)是纯滞后q步的线性系统,传递函数W(z)=z-q,计算并时延q步得当前值。如取q=5,训练指标用J1,η=0.1时训练50000步可得较好效果。训练指标用J2,η=0.2时训练50000步得相同结果。第二种,取W(z)是有限脉冲响应模型(FIRM),传递函数W(z)=∑aiz-1,计算线性组合以前各时刻的值后可得。如设W(z)=0.1z-1+1.0z-2+0.5z-3训练指标用J2,每三步调整一次参数(T=3),η=0.01时训练50000次后N与f基本相同。

第三种,取W(z)是稳定的有限传递函数,且能用参数模型描述,如描述模型用ARMA模型。取训练指标用J1,η=0.005时训练10万次,发现y与yq仍有差别。训练指标改用J2,η=0.005时训练10万次,取T=5,最终效果较好。

(2)对图4-5(b),多层前向网络的映射有两个,现分别确定。对于N1网络映射,用静态BP算法计算,其中θ是N1的参数。

对于N2网络映射,使用静态BP算法计算和,求得或写成其中,f[·]代表了非线性的关系,有此函数关系的非线性系统均可以用神经网络来逼近。尽管如此,也不能简单地认为:N1能训练成f[·],N2能训练成g(u)。用例说明,设N1是结构为1×20×10×1的单输入单输出系统,取训练用的输入信号是分布在[-2,2]之间的随机信号。训练好以后,实际输出y与期望输出yq之间无多大的差别。

(3)对图4-5(c),设和是当前点上取值的Jacobian矩阵矢量,它们能够在每一时刻求得,成为以下线性差分方程的系数矩阵矢量式中,是n维矢量,系统传递函数W(z)仅对其后的产生延时作用。如果离散系统通过零阶保持器采样,W(z)至少有一步时延效应,使得W(z)

总只包括当前时刻前的各值。按照差分方程能递推出各时刻的值。

(4)对图4-5(d),N1的可用与图4-5(c)相同的线性差分方程计算出来,N2则有仿真结果表明这种动态BP算法能使网络较好地跟踪期望输出。动态反向传播算法比静态反向传播算法复杂得多,导致这种算法存在诸多缺点,其中突出的有两个缺点:一个是必须假设系统可以分成线性系统和非线性系统;另一个是需要已知线性系统的传递函数。4.2.3辨识系统中的非线性模型

神经网络作系统辨识,主要用于非线性辨识和自适应。非线性系统在能控性、能观性、负反馈调节、状态观测器设计等方面,还没有成熟的做法,难度是非线性系统的辨识模型和控制模型不易选取。为此,用神经网络辨识非线性系统,必须作一些假设限制:

(1)被控对象具有能控能观性;

(2)对所有可能的输入控制量u,被控对象的输出y存在并有界;

(3)在辨识模型中的神经网络允许一个或几个,选用的结构同于被控对象;

(4)辨识模型的基本结构为包含神经网络的串—并联结构。

以上第(1)、(2)条限制是为了保证整个系统的稳定性及可辨性;第(3)条限制是为了方便选择模型,简化数学处理过程;第(4)条限制源于串—并联结构有以下优点:

①由于被控对象的输出y存在并有界,那么串—并联模型中所有用作辨识的信号均有界,使辨识模型易于稳定;

②串—并联模型无反馈网络,使从后向前的静态反向传播算法成为可能;

③当辨识误差足够小时,不使用串—并联结构,只使用并联结构也能有好的效果。在上述四种假设限制下,能够写出常用的一些非线性典型模型,现举例如下:

第一种,这种模型的输出—输入关系为n=2,m=0时的并联结构和串—并联结构如图4-6所示。第二种,第三种,图4-6并联及串—并联模型(a)n=2,m=0时的并联模型;(b)n=2,m=0时的串—并联模型

第四种,

y(k+1)=f(y(k),y(k-1),…,y(k-n)),u(k),u(k-1),…,u(k-m)

4.3非线性动态系统辨识

4.3.1非线性动态系统的神经网络辨识

设非线性离散动态系统的状态方程为

X(k+1)=φ[X(k),U(k)]

Y(k)=ψ[X(k),U(k)]

式中,X,Y,U分别是系统的状态矩阵、输出矩阵和输入矩阵,并设

X(k)∈Rn,Y(k)∈Rp,U(k)∈Rm设状态方程描述的系统满足以下三个条件:

第一条,定义U的取值范围组成的集合为Ω

Rm,则

U∈Ω。若X(0)∈Rm,则对有限个M,系统是稳定的,表现为:‖X(M)‖+‖Y(M)‖<∞。

第二条,函数φ[·]和ψ[·]当Rn+m→Rn时连续且满足Lipschitz条件,系统解唯一。

由于神经网络用作非线性离散系统辨识模型时属静态网络,用作非线性离散系统的动态模型时还需要满足下一个条件。第三条,设任意连续函数f:C→Rp,其中C为闭集,

C

Rp,均存在网络参数W,使网络输出F(X,W)满足其中,ε是一个大于0的小正数。满足以上三个条件的神经网络非线性动态系统结构图如图4-7所示,用作系统辨识时有如下定理。

定理考虑到满足第三条的系统状态方程为对于X(0)=X0∈Rm,U∈Ω

Rm,Ω为闭集,对于每一ε>0,必存在网络参数W,使得U∈Ω,都有满足上述第一条、第二条条件的系统充分接近输出,存在:

max‖y(k)-Y(k)‖<ε

证明过程从略。此定理说明用BP网络组成非线性动态系统时,按上图结构,能构成非线性离散动态系统的精确模型,且有唯一稳定解。图4-7神经网络非线性动态系统结构图4.3.2单输入单输出非线性动态系统的BP网络辨识

选用BP网络辨识,网络的结构可选三层前向网络。其中输入层用u(k)作输入,神经元个数为n1,则

n1≥n+m+1

隐层的神经元个数假设为n2个,可取

n2>n1

隐层神经元个数n2在4~20个范围内选取,通过仿真比较,选取性能好的那个值。

输出层神经元个数设为n3,大小等于被辨识系统的输出个数。现考虑一个单输入单输出非线性动态系统,设系统的输入及阶次分别为u(k)和m,输出及阶次分别为y(k)和p,系统方程为

Y(k+1)=f(y(k),y(k-1),…,u(k),…,u(k-m+1))

单输入单输出的n1=n3=1。

BP网络的输入矢量可写成

x(k)=[x1(k),x2(k),…,xn1(k)]T

因m、p未知,可进行的几种组合,比较性能后选最优的一组。设输入层用“I”表示,隐层用“H”表示,输入层到隐层的连接权矩阵为[wji],对应输入输出关系为Ij(k)=H[neti(k)]阈值对应的状态为x0=1。设输出层用“O”表示,从隐层到输出层的连接权矩阵为[Pi],相应输入输出关系为

阈值对应的状态为I0=1。

选用的性能指标为:学习规则采用广义δ规则,为加快收敛,δ规则带惯性项,格式如下:

Pi(k)=Pi(k+1)-Pi(k)=a1e(k)Ii(k)+a2ΔPi(k-1)Δwji(k)=a1e(k)ΔH[neti(k)]Pi(k)xi(k)+a2Δwji(k-1)

e(k)=y(k)-yq(k)

ΔH[neti(k)]=neti(k)(1-neti(k))式中,i=1,2,…,n2;j=1,2,…,n1,以下同。

基于BP网络的系统辨识分6步实施,各步如下。

(1)初始化连接权为小的随机值。

设Random(·)为[-1,+1]内均匀分布的随机函数,初始值

wji(0)=a·Random(·)∈[-0.1,0.1]

Pi(0)=a·Random(·)∈[-0.1,0.1]

(2)选择输入信号u(k),候选的有阶跃、斜坡、正弦波、伪随机二进制序列(PRBS)等信号,只选一种加入系统。

(3)仿真计算y(k)。

(4)形成输入矢量X(k),计算e(k)。

(5)计算ΔPi(k)、Δwji(k)。

(6)将u(k)、y(k)移位转入第二步继续。

如果是离线辨识,结束循环的判断条件为(预先选定ε为小的正数)

|e(k)|=|y(k)-yq(k)|<ε

例1

水轮发电机组模型BP网络辨识。本例选自参考文献[3]。

水轮发电机组在线辨识系统结构如图4-8所示。从结构图中看到,水轮发电机组模型的输入信号除正常PC调节器调节信号外,还叠加有一个二位式伪随机M序列信号PRES,由STD工控机参数在线辨识产生。图4-8水轮发电机组在线辨识系统辨识系统运行状态如下:水轮发电机组在三种典型工况下运行,分别是空载、带地区小负荷、并入大电网。机组工作于空载运行时,转换开关S接入“电气手动”时,水轮发电机组呈现开环调节系统运行。机组工作于带地区小负荷运行时,转换开关S接入“PC调节器”输出,整个系统是一个受命于给定值的负反馈调节系统,由于负载较轻,参数在线辨

识装置的输入基本上与“空载运行”相同。机组工作于“并入大电网”时,S仍拨在“PC调节器”输出位置上,负反馈调节继续有效,但辨识装置的输入却不同于“带地区小负荷运行”,由于机组的频率同于外电网的频率,辨识装置的输入为水轮机导叶开度和机组所带的外部有功负荷。对于混流式机组,在小波动工况下,转速v(s)对导叶开度k(s)的传递函数表示成式中,T、T0分别是机组及引水道的惯性时间常数,e0、e、a、b均是水轮机组的特性参数。

水轮发电机组启动后,先空载运行,随后切换到电气手动运行,频率基准50Hz,此时实际空载开度约20%。输入信号选用5级PRBS,单位游历Δt=4s,采样周期为0.4s,幅

值取导水机构接力器全行程的2%,记录1000次,用时6min40s,记录下三个完整的PRBS周期。数据处理时去掉稳态分量,得到机组频率的相对变化曲线,如图4-9(a)所示。使用三层BP神经网络辨识,网络结构选用3×2×1,学习率η=0.65,初始连接权在[0,1]间随机取值,用基本BP算法得到的BP输出如图4-9(b)所示,图4-9(c)给出了实际

输出与BP网络输出之间的差别,从差别极微可以看到,BP网络能较理想辨识出水轮发电机组非线性动态模型。

图4-9水轮发电机组的BP动态辨识曲线(a)实际机组频率输出变化;(b)BP网络辨识结果;(c)实际测出结果与BP辨识之差

例2

煤气加热炉的BP动态辨识。

煤气加热炉是典型的单输入单输出系统,输入u(t)是煤气流量,输出y(t)是排除烟道中CO2的浓度。输入输出的数据能够测得。模型的动态结构可以写成

Y(k)=f(y(k-1),y(k-2),y(k-3),u(k-3),…,u(k-7)+cq-1ω(k))

式中,取模型的阶次n=3,m=5,时滞d=2。c、q、ω是系统结构参数。

用来辨识的前向网络选用三层,输入层、隐层、输出层的神经元个数分别为n1=8、n2=7、n3=1。在进行训练前测得有289对{u(i),y(i)}数据对,可选择其中200对训练隐层(如果隐层选取10个神经元,则可选用170对数据进行训练)。在训练前,所有数据对应进行正规化处理。

训练使用带修正项的BP算法,性能指标选择均方误差函数:两种不同模型训练后的辨识结果比较如表4-1所示。系统经过学习后,可将测量所得289对数据中的余下数据对与BP网络的输出进行比对,就可以测得使用BP网络的辨识准确程度。图4-10给出了BP网络辨识结果及预报曲

线,从图中观察到,预报时间较长,但预报的准确程度较为满意。

网络学习过程中均方误差(MSPE)变化曲线如图4-11所示。变化趋势显示出BP网络能够用于辨识,但与隐层神经元个数、输入输出阶次等有密切的关系。图4-10BP网络辨识结果及预报(a)辨识结果;(b)预报图4-11BP网络学习过程中的均方误差变化

例3

多输入多输出动态系统的BP网络动态辨识。

现以两输入两输出系统为例介绍,设系统为一线性系统,传递矩阵为其中,A(z-1)=1+0.883z-1+0.471z-2+0.083z-3B11(z-1)=3z-1-3.5z-2-1.5z-zB12(z-1)=z-1-0.167z-2-0.167z-3B21(z-1)=-4z-2-2z-3-z-4B22(z-1)=z-1-0.167z-2-0.083z-3-0.167z-4系统输入输出分别为这时网络输入量设为14,分别是n1=3,n2=3,m1=4,m2=4。y1(k)和y2(k)用两个神经网络学习:y1网络结构为9×10×1,y2网络结构为10×12×1,辨识信号为0~10间的均匀分布随机数,学习算法使用带惯性项的BP算法:式中,η、δ、α是相关系数,取η=0.9,δ由输出层或隐层选定,α=0.3;yq是网络的输出值,作用函数为取40个样本,两个网络分别学习8500次和8800次后的辨识结果如表4-2所示,表内数据已经经过转换转到区间(0,1)内取值。设u1=u2=0.5作为系统常值输入,系统的5组输出及测试网络后所得输出,列在表4-3中。最大相对误差(0.661-0.543)/0.661≈2.7%,表示神经网络辨识的精度相当高。

4.4多层前向网络辨识中的快速算法

在多层神经网络极值训练中,BP算法存在收敛较慢及局部极小点问题。为此提出了多种修改算法,力图克服收敛较慢或避免陷入局部极小点。这些修正算法有增加惯性项、改变学习率或学习步长、引入高阶导数项等等。

本节讨论使用递推最小二乘法(RLS)学习训练神经网络的连接权系数,这种方法有较快的收敛速度。

1.神经元模型

考虑有M层的多层前向网络,输入层为1层,输出层为M层,其中的每个神经元均可表示成式中,n是第n层神经元个数,wij是第i个神经元到第j个神经元的连接权,f(·)是单调单值连接的S型函数,且每个神经元的输入输出关系可以分解成线性输入或非线性输出两部分,从线性输入到非线性输出之间存在一一对应的映射和逆映射关系。其中逆映射可将输出信息转换到输入

端,使用线性参数估计技术对神经网络的连续权进行训练,便于使用递推最小二乘法。

2.RLS训练算法

设输出层神经元的期望输入r(k)和期望输出d(k)之间有一定的关系:

d(k)=f[r(k)]

对d(k)的逆变换可写成

r(k)=f-1[d(k)]

式中,f-1(·)是f(·)的反函数。定义性能指标:式中,λ称为遗忘因子。神经元的输入输出重新写出如下:性能指标改写成考虑到令可得W的LS估计为

W(k)=[ΦT(k)Φ(k)]-1ΦT(k)R(k)相应的RLS估计为

WL(k)=WL-1(k)+ML-1(k)[rL(k)-XTL-1(k)WL-1(k-1)]式中,递推时取初值:

PL-1(0)=(103~106)I对于中间层每个神经元,定义其期望输入与期望输出满足

d(k)=f[r(k)]定义反传误差为

δit(k)=dit(k)-xit(k)=f[netit(k)][rit(k)-netit(k)]相应神经元期望输入为

Rit(k)=f-1[dit(k)]定义式中,λ(k)为非负遗忘因子。在t=L-1时,对第i个神经元,由于令反传误差

δL(k)=rL(k)-nL(k)及

δL-1(k)=δL(k)wiLf′[netiL(k)]有求解此式,可得神经元i的连接权系数RLS估计:

WL-1(k)=WL-1(k-1)+ΔWL-1由此类推直至t=1,可得RLS估计如下:

Wit(k)=Wit(k-1)+Mt-1(k)[rit(k)-netit(k)]由此可计算各神经元的输出。现举一个仿真实例,设非线性系统为式中,u(k)=sin(2π/250)。u(k)和y(k)是该系统的输入与输出,而该系统的结构未知。现在使用4层前向网络描述该非线性系统,4层的节点分别为5×20×10×1,输入层的输入矢量

X0T

(k)=[y(k-1),y(k-2),y(k-3),u(k-1),u(k-2)]

取初始值Pi(0)=103I,λt=0.99,使用RLS估计,经过400步学习后均方误差收敛且小于0.075,学习时间小于31s。

图4-12和图4-13分别是RLS估计均方误差和BP算法均方误差,当比较两条曲线时,能够明显发现,RLS估计只要较少的学习步骤,例如400步便产生收敛,误差就能限制在一个事先确定的较小范围。而BP算法要想达到相同的目的,约需4000步费时4min13s(仿真结果),收敛才能达到0.1。如果要想达到RLS估计的收敛值0.075,则还需要更长的时间。图4-12RLS算法估计均方误差图4-13BP算法估计均方误差用BP算法估计神经网络的连接权时,所用的算法为

wij(k)=wij(k-1)aδit(k)xji(k)

式中,δit是反传误差,a是学习步长。输出层的反传误差为

δL(k)=f[n(k)][d(k)-x(k)]

中间层的反传误差为

δit(k)=f[n(k)]∑δjt(k)wji(k-1)

步长为

a(k)=amax+(amin-amax)e-λ4.5非线性模型的预报误差神经网络辨识

除RLS外,还有诸多提高收敛速度的算法,预报误差算法就是其中的一种。

4.5.1非动态模型建模

预报误差算法简称RPE算法,它具有预报精度高、收敛速度快等特点,同样该算法也能用于非动态模型的神经网络建模。

考虑图4-14的三层前向网络,设三层结构n1×n2×1,输入层有n1个神经元,隐层有n2个神经元,输出层仅一个节点。图4-14三层前向网络网络输入为xi,i=1,2,…,n1。网络的输出为y。zj和qj是隐层中第j个神经元的输出值和阈值,j=1,2,…,n2。Wkij表示第k-1层中第i个神经元,对第k层中的第j个神经元

的连接权。

隐含层中节点的作用函数取成S型函数:网络的输入输出关系为y(t)=∑WXX=g(∑WijXi+Qi)该网络能辨识的非线性系统具有如下的输出输入关系:

y(t)=f[y(t-1),…,y(t-m),x(t-1),…,x(t-n)]+d(t)

其中,y(t)和x(t)是非线性系统的输出和输入;m与n分别是输出与输入的最大滞后;d(t)是影响该系统的非线性随机因素,如随机噪音;f(·)是非线性函数。

在三层前向网络中,设Q=[Q1,Q2,…,Qn]T是神经网络中待求的神经元阈值,n1+n2是待定的神经元个数。e(t)是实际输出与神经网络输出之差,又称为偏差。训练算法让Q1~Qn在一定的条件准则下得到确定值。

RPE算法是一种将预报误差极小化来估计参数的方法。算法中同样需要准则函数。这里不妨设准则函数为

式中,N是数据长度,e(t)是预报误差。有了准则函数,RPE算法便可沿着J的高斯—牛顿(Gauss-Newton)方向搜索,不断修正未知参数矢量,直至使J趋近于最小。4.5.2递推预报误差算法

递推预报误差算法的原则是先选定参数矢量的修正算式,再求对Q的一阶及二阶微分。设修正算式为

Q(t)=Q(t-1)+S(t)μ[Q(t-1)]

式中,μ(Q)就是高斯—牛顿搜索方向,可定义成

μ(Q)=-[H(Q)]-1▽J(Q)

其中,▽J(Q)是J(Q)关于Q的梯度,H(Q)是J(Q)的Hessian矩阵。▽J(Q)和H(Q)表示成它们分别是J(Q)对Q的一阶和二阶微分。

1.递推预报流程

递推预报误差算法如下式:

e(t)=y(t)-yq(t)式中,λ(t)是遗忘因子,对收敛速度有影响。改变的方法是迭代开始时取λ(t)<1;t→∞时取λ(t)→1。或设置λ的初值,例如取λ(0)=0.95~0.99,而后有

λ(t)=λ(0)λ(t-1)+(1-λ(0))若将RPE用于三层前向神经网络,隐层取一层,相应的Ψ为n×1矩阵,矩阵中各元素为由此设计的RPE流程如下:

(1)用较小随机值初始化连接权值和阈值,得:

W(0)=aRandom(·)

Q(0)=bRandom(·)

(2)选P(0)为对角矩阵。

(3)按照网络输入分别计算隐层节点x1k及输出节点yq的值。

(4)形成Ψ阵并求预报误差e(t)、P(t)阵及参数序列Q(t)。

(5)重复以上(2)~(4),直至收敛。

从以上的分析可以看到,RPE算法实际上是一种求高阶导数的学习算法。在计算H(Q)的逆矩阵上使用递推最小二乘法,与基本BP算法(仅利用一阶导数)相比,高阶导数的计算加快了收敛速度。

2.RPE算法的具体应用

例1

带电流内环和转速外环的PWM直流脉宽调速系统,具有如图4-15所示的系统结构。转速环处于外环,能有效克服环内出现的干扰以及外特性引起的速度变化。但电机

转速却会因电机运行工况、电源电压的波动或畸变、机械负荷的突然变化而发生改变,因此双环调速系统本身是一个非线性时变系统。另外,还有许多非线性因素也广为存在系统

中,如:时磁滞、齿轮间隙、库仑摩擦、调节器限幅、脉冲调制放大器和运算放大器饱和产生的非线性等。图4-15转速电流双闭环PWM调速系统在转速环基础上增加位置环,将构成位置伺服系统,该系统有一系列典型的非线性特征,这是PWM调制所产生的。为了动态辨识转速环,便于使用RPE算法,选用3×2×1的

神经网络结构。同时选择输入信号为2V±0.2V,其中2V是系统转速环给定值,对应需要恒定运转的速度,0.2V是迭加的幅值,用于考虑一定的波动允许范围。输入信号可用矢量表示成

X(t)=[u(t-1),u(t-2),y(t-1)]T

输出信号为测速发电机的输出电压。在用RPE算法训练900次后,神经网络预报输出及残余序列实测曲线如图4-16所示。实测阶跃响应拟合曲线如图4-17所示。图4-16神经网络预报输出及残余序列实测曲线图4-17实测阶跃拟合曲线对比拟合曲线可以看到,神经网络辨识PWM系统动态模型的效果令人满意。通常为了评价模型的拟合精度,常引入误差指数E,定义成式中,e(t)是偏差值,为系统实际输出与神经网络输出之差。改变隐层节点数目后,不同的E值如表4-4所示。输入矢量及输入节点不同时的E值如表4-5所示。由此可见,选择如此结构的神经网络模型较为合理,输入节点数及输入矢量的合理搭配在很大程度上能影响拟合精度。通常情况下合理选择隐层节点数量,适当增加输入节

点数量及延迟y(t),对提高辨识精度较为有利。

例2

设SISO非线性模型为选用辨识的神经网络结构为2×1×1,输入信号为六级伪随机二进制序列PRBS,用u(t)表示,设输入矢量为

X(t)=[u(t-1),y(t-1)]T参数矢量Θ(t)和Ψ分别为

Θ(t)=[θ1,θ2,θ3,θ4]T

Ψ=[ψ1,ψ2,ψ3,ψ4]T

递推1000次后得参数矢量Θ(t)=[0.4999,0.3999,0.09985,0.6000]T

,表示结果十分理想。如果改用BP算法,因学习率等一系列参数难于折中表示,得不到满意结果。

4.6非线性系统逆模型的神经网络辨识

无论是线性系统还是非线性系统,都存在一个可逆性问题。

在正常情况下,对系统进行分析的主要任务就是:系统在一个控制信号的作用下,将会产生什么样的输出,产生什么样的运动轨迹。例如一个系统可用以下方程表示出来:

y=f(u,x,T)其中,y是输出,u

是输入,x是状态变量,T是系统的控制作用。当输入一定、系统状态不变时,系统输出y应直接与控制作用T有关,式中的f(u,x,T)事实上是系统在外力作用下的非线性函数。

正常的系统分析过程是已知控制信号T(t),确定其运动轨迹u(t)和x(t)。

已知系统的运动轨迹u(t)和x(t),寻找控制信号T(t),被称为系统分析的逆过程。系统分析过程与逆过程如图4-18所示。图4-18系统分析过程及逆过程(a)系统分析过程;(b)系统分析逆过程4.6.1系统分析逆过程的存在性

在一个控制系统中,如果已经知道了运动轨迹u(t)、x(t),要想求出它的控制信号T(t),首先必然要问:这个控制信号是否存在?系统是否可逆?

在求解系统运行的正向过程和逆向过程中,神经网络具有的独特的作用与功能,尤其是对于非线性系统。神经网络的学习方式有监督学习和非监督学习两种。监督学习中存在导师信号,导师信号的功能恰好是演示期望的运动轨迹,而不是起控制作用的,不是直接教会网络实施运动神经的控制。由此可见,在清晰明了的导师信号前,系统的运动轨迹也清晰可见,寻找相应的控制指令更加方便与直观。事实上,神经网络在获取了所期望的运动轨迹后,将产生相应的各种运动神经指令,传送给网络的各层以实现这个期望值,并由相应的感觉系统完成测量。在比较实际轨迹与期望运动轨迹的基础上,神经网络产生一个它们之间的差值。如果将这个差值作为导师信号完成对相应神经网络的训练,那就能从神经网络的输出中产生“控制信号”,从而实现系统分析的逆过程。

一个系统是否可逆,是否能用神经网络建立逆模型实现辨识,与系统自身的性质密切相关,与系统是否线性无关。线性系统的可逆性问题比非线性系统的可逆性问题要简单得多。

线性系统的可逆性问题实际上是一个能控性问题,凡具有能控性的系统,可逆性必存在,系统必然可逆。例如对单变量线性系统,可逆性十分清晰;对多变量线性系统,利用能控性判据也能得出可逆存在。非线性系统的可逆性问题则要复杂得多,目前尚无一个普遍适用的方法对应所有的非线性系统,既然无通用解法,只能遇到一个,辨识一个(非线性系统)。

现考察离散单输入单输出非线性系统,设该系统的输入和输出分别是

u(k)∈R,y(k)∈R

又设m≤i,系统的传输关系为

y(k+1)=f[y(k),…,y(k-n),u(k),…,u(k-m)]

式中,f(·)是输出、输入之间的函数关系。系统可逆性有如下定义:

如果存在R(n+m+1)的子集A,且

[y(k),…,y(k-n),u(k-1),…,u(k-m)]T∈A当任意一个u(k)=u′(k)时,必有

f[y(k),…,y(k-n),u(k-1),…,u(k-m)]

≠f[y(k),…,y(k-n),u′(k-1),…,u′(k-m)]

则称系统在点[y(k),…,y(k-n),u(k-1),…,u(k-m)]

处是可逆的,否则称系统在该点处是奇异(即不可逆)的。

对于奇异系统,有

f[y,u]=f[y,u′]上述对系统可逆性的定义仅仅定义了系统在某些点上是可逆或奇异的。系统的奇异是一种极端情况,非线性系统在某一点上可逆并不等于说该系统就是一个可逆系统,这是

因为系统在某些点上是可逆的,但在另一些点上却是奇异的。介于可逆系统与奇异系统之间的系统是存在的,一个系统能够在某些点表现出存在两个不同的输入u(t)≠u′(t),但能引起相同的输出,例如带滞环特性的阀门就有这种特征。

系统可逆性的充分条件由下述定理给出。

定理如果对于u(k),f[y(k),…,y(k-n),u(k),u(k-1),…,u(k-m)]严格单调,那么系统在点[y(k),…,y(k-n),u(k-1),…,u(k-m)]T处可逆。只有在所有点处可逆都成立,系统才是可逆系统。

定理的证明较为简单,由于系统严格单调,则

f(y,u)≠f(y,u′)

表明系统在该点处单调。

多值非线性系统不一定都是可逆系统。是否可逆就看它是否符合定理的三个条件。例如磁滞回线是否为可逆系统,可作如下分析:表面上看,磁滞的一个输入对应两个输出,每个输出可找到相应的两个控制信号,似乎磁滞回线不可逆。但是磁滞控制有一个特征,就是有向性,升磁和消磁经过的路径不同,如果是磁化过程,一个输入仅对应一个输出;反之,退磁过程是一个输入仅对应一个输出。必然能逆向辨识,由此可见磁滞回线是可逆系统,只是正向过程和逆向过程所走的路径不同罢了。

又如系统y=(u-1)u(u+1)就是一个不可逆系统,它不符合定理提出的三个条件,如y=0时,有1,0,-1三个解。4.6.2非线性系统的逆模型

非线性系统的逆模型研究包括逆系统建模及逆模型辨识两部分内容。逆系统建模的主要任务是对非线性系统的逆运行过程建立一个数学模型;逆模型辨识是对非线性系统的逆

运行进行辨认识别,看其与哪一种已知模型更接近。

神经网络辨识是逆模型建立和辨识的核心内容。本节所述逆模型的建立方法突出了神经网络的功能与作用。

非线性系统的逆模型建立方法有如下几种:直接逆系统建模、正—逆系统建模及逆—正系统建模。

1.非线性系统逆模型的直接建立

非线性系统逆模型的直接建立依靠直接逆系统建模法,该方法又称为泛化学习法。泛化学习的本意是网络训练所覆盖的范围要比未知的逆系统所可能涉及的范围大一些,这样

设置有利于获得更佳的逆动力学特性。

逆模型直接建立的结构框图如图4-19所示,系统的给定值为u,输出值为y,神经网络的训练信号取自一个误差值e,e是系统输入u和神经网络输出v之差:e=u-v。图4-19逆模型直接建立神经网络的输入信号为系统的输出信号y。训练方法是:把未知被控对象的输出y作为神经网络的输入,神经网络的输出v如果不等于系统的输入u,将产生偏差e对网络进行训练,直至v=u为止,或u-v小到一个允许的范围为止。

用于直接逆系统建模的网络较多,有BP网络、CMAC网络、多层感知器等。不同的网络结构有不同的优缺点,如BP网络,优点是训练简单、结构简练,不足之处是不能快

速进行,要想在线实时获取逆动力学模型,就有一定难度。

2.正—逆系统建模

非线性系统逆模型还可以依靠“正—逆系统建模”的方法获得,这种方法的要点是在非线性系统的正模型(未知对象的动力学模型)基础上,获得逆动力学模型,有三种方案值

得考虑。

(1)被控对象—逆模型建模,建模示意图如图4-20所示。

本方案中的神经网络作逆系统辨识用,它的输入是整个系统的输入给定值u,系统的实际输出是未知被控对象的输出y,神经网络的训练信号e取自二者之差:

e=y-u图4-20被控对象—逆模型建模这种建模方法存在一个严重的缺憾,那就是要求知道未知对象的模型,恰恰在系统中它又是未知的,解决这个问题的方法是将未知对象改用直接自适应控制器,避免可能出现

的致命差错。

(2)正模型—逆系统建模,建模示意图如图4-21所示。

本方案中的神经网络用于模拟被控对象的正模型(图4-21中的“正模型”),在前馈通道上的神经网络用于辨识逆模型。神经网络的训练信号是两值之差,一个值u是神经网络的期望输入,另一个值v则是正模型的期望输出,

e=u-v图4-21正模型—逆系统建模误差e用来训练辨识逆模型的神经网络连接权值。

本方案的突出优点是正模型一旦建立便成为已知条件,未知被控对象的各种运算都能从正模型计算出来。方案的不足之处在于逆模型的精确程度依赖于正模型的精确程度,如

果正模型本身精度低、误差大,相应逆模型也不能正常反映被控对象的实际情况。产生这种状态的直接原因是被控对象不在逆系统的反馈回路中,这是系统结构造成的,没办法解决。

(3)被控对象—正模型—逆模型建模,建模示意图如图4-22所示。图4-22被控对象—正模型—逆模型建模本方案以直接建模为基础,神经网络作逆模型辨识用,它的训练信号来自于两值之差:一个值是它的期望输入u,另一个是被控对象的实际输出y,

e=u-y

在调节过程中,未知被控对象使用正模型神经网络代替。未知被控对象处在逆系统的反馈环中,通过正模型能反映出未知被控对象的真实情况,避免出现“正模型—逆系统建模”方案的弊病。本方案的第二个优点在于:如果正反模型都采用BP网络,则逆模型神经网络在误差回传时的最后一层误差,通过正模型神经网络的误差回传传递。既然正模型神经网络的功能仅仅只是回传误差,那么即便存在误差也无关紧要,仅影响收敛速度而不至于影响是否收敛。

3.逆—逆系统建模

这种建模方法使用两个逆系统模型,与未知被控对象一起构成训练回路。处于系统前馈通道上的神经网络,功能是一个控制器,控制未知被控对象,让被控对象产生相应的输出。逆—逆系统建模示意图如图4-23所示。图4-23逆—逆系统建模逆模型的输入信号e为神经网络控制器的输入u与未知被控对象的输出y之差:

e=u-y

如果神经网络控制器与未知被控对象的逆动力学特性不相等,则逆模型的输入不为0,神经网络控制器的训练将继续进行。只要系统中的逆模型是未知被控对象的另一个逆模型,就可以利用它来计算出未知被控对象应该具有的输入估计值。

当e为0或进入一个事先预定的小的正数时,连接权训练才可停止。

逆—逆系统建模中的“逆模型”可采用如下几种形式:第一种,未知被控对象的线性化逆动力学模型,可通过最小二乘法、相关分析法等传统辨识方法获得。既为线性模型,就比较容易从输出反推出输入,辨识准则为线性化的程度。

第二种,未知被控对象的非线性逆动力学模型,可通过机理分析未知被控对象的结构或实验获得,也可由神经网络直接辨识逆模型而获得。

第三种,神经网络控制器的复制模型,可通过神经网络控制器在训练以后获得,训练过程是控制器每学习完一步,就可以复制出完全相同的连接权。使用这种模型时要注意:神经网络控制器与逆模型在初始值、参数及结构等方面完全相同。本节介绍了非线性系统逆模型的三种建模方法,其中直接逆系统建模简单直观,但不易在线操作。另外两种方法将逆模型与神经网络控制器联系在一起,成为系统闭环控制的一个组成部分。4.6.3基于多层感知器的逆模型辨识

采用多层感知器的非线性系统辨识,是直接逆系统建模的一个具体应用。在非线性系统的神经网络中使用多层感知器,是因为其具有学习速度快、计算工作量快等优点,这些优点是相对于BP网络而言的。

1.基本结构

做开关作用函数的单层感知器结构如图4-24所示。它的学习算法有以下几种。

(1)WidrowHoffδ学习规则:

(2)修正的δ学习规则:(3)高收敛阶δ学习规则:各种学习规则中都有X∈Rn,是输入矢量;W(k)∈Rm是连接权矢量,e(k)是期望输出与实际输出之差,α是学习率,sgnX是符号函数阵:

sgnX=[sgnx1,sgnx2,…,sgnxm]T式中,符号函数为图4-24单层感知器开关结构示意图

2.高收敛阶δ学习规则

采用高收敛阶δ学习规则的单层感知器,在固定模式的训练误差e由下式决定:

e(k+1)=f[α,e(k),e(k-1)]e(k)

按f(·)的取法,e(k)允许取超线性的1.618阶、2阶、3阶或更高阶次。

对于这一学习规则,证明如下。首先设单层感知器的输入/输出特性为

y(k)=∑wixi=WT(k)X

固定模式时有则

e(k+1)=f[α,e(k),e(k-1)]e(k)若取

f[α,e(k),e(k-1)]=αe(k-1)则

e(k+1)=αe(k-1)e(k)设误差初值为e(0)和e(1),且e(0),e(1)∈Δ={δ|αδ<1},对任一k,都有

e(k+1)<αδ·δ<δ∈Δ

当k→∞时,e(k)→0,证明δ学习规则收敛。再看e(k+1)=αe(k-1)e(k),若令该式满足差分方程:

z(k+1)=z(k)+z(k-1)

方程的两根为λ1=1.618及λ2=-1.618,因此有比较后得收敛阶λ1,为超线性的1.618阶。如果取f[α,e(k),e(k-1)]=α2e(k),则有

e(k+1)=[αe(k)]2

取α满足则e(k+1)具有2次收敛阶。对于3次或高次收敛阶,亦可采取同样的取法。

3.S型作用函数的使用

不用开关型作用函数,改用S型作用函数,多层感知器可采用BP算法,这是因为开关型作用函数不可微时,反传学习法将无法使用。

设三层感知器的结构如图4-25所示。

图中X、Y0分别是三层感知器的输入和输出,Y=、YH分别是输入层和隐层的输出,Z1和ZH分别是输入层和隐层在经过非线性开关函数后的输出。设三层结构为n1、nH和n0,连接权矩阵W1、WH、W0的维数分别为n1×n,nH×n,m×nH。图4-25三层感知器输入输出特性如下:

输入层:

隐层:

输出层:连接权训练用的误差矢量为E(k)=Yd-Y0(k)其中,Yd是神经网络的期望输出。连接权算法可表示成

W1(k+1)=W1(k)+U1(k)

WH(k+1)=WH(k)+UH(k)

W0(k+1)=W0(k)+U0(k)

算法收敛性可表达成U1、UH、U0,分别取值为U1、UH、U0统一称为连接权更新矩阵。误差矩阵E(k)满足差分方程:

E(k+1)=f[A,E(k),E(k-1)]E(k)

式中,A,E(k),E(k-1)均为对角矩阵:

A=diag{a1,a2,…,an}

E(k)=diag{e1(k),e2(k),…,en(k)}

当f(·)的取法不同时,E(k)收敛阶数随之不同,一般值有1.618、2、3或更高。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论