您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页基于Elman神经网络的非线性动态系统辨识

基于Elman神经网络的非线性动态系统辨识

来源:华佗小知识
ComputerEngineeringandApplications计算机工程与应用2007,43(31)87

基于Elman神经网络的非线性动态系统辨识

高钦和1,2,王孙安1

GAOQin-he1,2,WANGSun-an1

1.西安交通大学机械工程学院,西安7100282.第二炮兵工程学院,西安710025

1.SchoolofMechanicalEngineering,Xi’anJiaotongUniversity,Xi’an710028,China2.SecondArtilleryEngineeringCollege,Xi’an710025,ChinaE-mail:gao202@yahoo.com.cn

GAOQin-he,WANGSun-an.IdentificationofnonlineardynamicsystembasedonElmanneuralnetwork.Computer

(31):87-89.EngineeringandApplications,2007,43

Abstract:Thetheoryandmethodofdynamicsystemidentificationbydynamicrecurrentneuralnetworkarestudied.Animproved

Elmanneuralnetworkissuccessfullyusedtoidentifythenonlineardynamicsystemeventhoughwithoutanypriorinformationofidentifiedsystem.SimulationresultsshowthattheElmanneuralnetworkhashigherlearningspeedandbettergeneralizationabilitythanthefeedforwardneuralnetwork,andthatitissuitableforthenonlineardynamicsystemidentification.

Keywords:nonlinearsystemidentification;dynamicsystem;dynamicrecurrentneuralnetwork;Elmanneuralnetwork

要:研究了应用动态递归神经网络实现动态系统辨识的原理和方法,在没有被辨识对象的先验知识情况下,通过改进的El-

仿真结果表明,与前馈网络相比,Elman网络具有学习速度快、泛化能力强的特点,可用较man网络实现了非线性动态系统的辨识。

小的网络结构实现高阶系统的辨识,适用于具有本质非线性动态系统的辨识。关键词:非线性系统辨识;动态系统;动态递归神经网络;Elman网络文章编号:1002-8331(2007)31-0087-03

文献标识码:A

中图分类号:TP183

1引言

动态系统的控制通常需要在无需预先知道精确的对象和

2神经网络非线性系统辨识原理

假定拟辨识对象为非线性离散时间系统,或者可以离散化

环境知识时便能实现,因此寻求适当的方法以解决不确定性的、高度复杂的动态系统辨识是控制理论研究的一个重要分支。神经网络是由大量处理单元广泛互连而成的网络,具有大规模并行模拟处理能力和很强的自适应、自组织、自学习能力,因而近年来在系统建模、辨识与控制中受到普遍重视。在自动控制领域,基于线性系统理论对被控系统进行辩识并修正参数的方法能较好地应用于线性系统,但很难推广到复杂的非线性系统。神经网络所具有的非线性变换特性和高度并行运算能力为系统辨识,尤其是非线性系统的辨识提供了有效的方法。

目前,系统辩识中应用最多的是多层前向网络,多层前向网络具有逼近任意连续非线性函数的能力,但这种网络结构一般是静态的,而人们更关心控制系统的动态特性,这恰恰是BP神经网络等前馈网络所缺乏的。与静态前馈型神经网络不同,动态递归网络通过存储内部状态,使其具备映射动态特征的功能,从而使系统具有适应时变特性的能力,更适合于非线性动态系统的辩识。动态递归神经网络是控制系统建模和辨识中极具发展潜力的网络,本文利用改进的动态递归Elman神经网络实现对非线性动态系统的辨识。

为这样的系统,用NARMA模型来描述:

(k)=f(y(k-1),…,y(k-n),u(k-1),…,u(k-m))y线性函数。

如果()未知时,不确定系统的辨识问题可以描述为寻求f・

(1)

式中,n、(t)和输入u(t)的阶次,()是非m分别为模型输出yf・

!(・一数学模型,使得模型的输出y)和被辨识系统的输出y(・)

尽量接近。神经网络具有通过恰当选择网络层次和隐层单元数,能够以任意精度逼近任意连续非线性函数的特性,因此可作为辨识模型,用来对非线性系统进行辨识。

由图1所示的系统辨识原理可以看出,辨识模型和被辨识

!系统具有相同的输入,定义误差e(k)=y(k)-y(k),用于对神经

网络进行学习和修正。

被辨识系统

(k)u

神经网络辨识器

(k)y(k)e

+-

!(k)y

图1系统辨识原理框图

作者简介:高钦和(1968-),男,西安交通大学博士后,第二炮兵工程学院副教授,主要研究方向为发射系统仿真与自动检测;王孙安(1957-),男,

教授,博士,主要研究方向为机电系统与工业过程的计算机智能监控。

882007,43(31)ComputerEngineeringandApplications计算机工程与应用

根据式(1),可以将神经网络的输入输出关系简单表示为:y

(t)=NN[W,X1(t),X2(t)](2)

式中,NN表示神经网络表达的非线性关系;W是由网络连接权值和有关节点参数共同组成的网络学习参数;X1(t)是网络t时刻的输入(不包括反馈部分);X2(t)是t时刻前反馈回来的有用信息,也作为t时刻的输入,如果是普通的前向网络,则不存在这一项。

基于神经网络的系统辨识问题可归结为:确定网络的拓扑

结构,并找出一组网络学习参数W*,使得y#(t)=NN[W*

,X1(t),X*

2(t)]。网络学习参数W可以通过一组关于对象输入输出关

系的学习数据集合{X1(t),y(t)},采用一定的学习算法对网络训练获得。神经网络对系统进行辨识是通过直接学习系统的输入/输出数据,学习的目的是使得所要求的误差函数达到最小,从而归纳出隐含在系统输入/输出数据中的关系。

由于BP网络等前馈网络是一种静态网络,网络的输出仅仅是当前输入的非线性映射,不能直接应用于动力学系统建模,即使利用多层前馈神经网络对动态系统进行辨识,实际上也是将动态时间建模问题变为一个静态空间建模问题。这就需要先验假定系统的NARMA模型类,需要对结构模型进行定阶,特别是随着系统阶次的增加,或阶次未知时,迅速膨胀的网络结构将使学习收敛速度更加缓慢,较多的输入节点也将使相应的辨识系统对外部噪声特别敏感。

递归神经网络将前馈网络的隐层结点或输出结点上的值反馈到前一层结点上或者在本层结点上进行自反馈,从而可以克服一般多层前馈网络在动态系统辨识中存在的问题。在动态递归网络中,Elman网络结构简单,运算量小,非常适合于实时非线性动态系统辨识。

3Elman网络与动态系统辨识

Elman型回归神经网络是动态递归神经网络的一种,一般

可分为4层:输入层、隐层、承接层、输出层,其输入层、隐层、输

出层的连接类似于前馈网络,而增加的承接层则用来记忆隐层单元前一时刻的输出值,可以认为是一个一步迟延的延时算子,达到记忆的目的,从而使系统具有适应时变特性的能力,能直接反映动态过程的特性。

当Elman网络用于辩识单输入、

单输出对象时,只需要一个输入单元和一个输出单元,其网络结构如图2所示。若考虑有n个承接层单元,隐层单元的输入仅为n+1个;如果用BP网络实现同样功能,则需要2n个隐层单元的输入。可见,采用

Elman网络可以大大地减少结点数,从而减少了计算量,提高

了算法的实时性,当n较大时,这个优点尤为显著。

(k)输出层

I3

隐藏层

-1

-1

I2

输入层

承接层

I1

!!

(k-1)图2Elman网络结构示意图

设Elman网络的输入层为r个结点,隐层和承接层单元为

n个结点,输出层为m个结点,则网络输入U为r维向量,隐层输出X及结构单元输出XC为n维向量,网络输出Y为m维向

量,隐层单元与承接层单元之间的连接权WI1

为n×n维矩阵,隐层单元与输入单元之间的连接权WI2

为n×r维矩阵,隐层单元与输出单元之间的连接权WI3

为m×n维矩阵。则网络可以描述为:

!

##X

(k)=f(WI1X(k)+WI2

U(k-1))#C#\"#XC

(k)=X(k-1)+!XC(k-1)(3)

###$

(k)=WI3

X(k)式中,f(x)为隐层单元的激发函数,常取为Sigmoid函数,即(fx)=1/(1+e-x

);输出层单元的激发函数取为线性函数。0≤α<

1,为自连接反馈增益因子,当α固定为0时,此网络为标准的Elman网络;α不为0时,为改进的Elman网络。

由于隐层存在反馈连接,在任意给定时刻,网络的输出受到网络过去输入/输出的影响,其影响程度由结点间的连接矩阵决定。设第k步系统的实际输出为Yd(k),定义误差函数为:

(k)=(Yd(k)-Y(k))T

(Yd(k)-Y(k))

2(4)

将E对连接权WI3

、WI2

、WI1

分别求偏导数,由梯度下降法可得

Elman网络的学习算法:

!wI3

ij=\"3#ix(jk

)!wI2jq=\"h

2$juq(k-1)

(5)

!wI1

jl=\"($0

I3

’x(jk

)1&

i=1

iwij)’wI1jl

式中,\"I1I2I3

1、\"2、\"3分别为连接权W、W、W的学习速率;i=1,2,…,m;j=1,2,…,n;q=1,2,…,r;l=1,2,…,n;$0

i=yd,(ik)-m

y(),$h

I3

ikj=&($jwij)f′(・),而:i=1j

’x(jk

)=f′’wI1(j・)x(lk-1)+%

’x(jk-1

))

jl

’wI1(6jl

可知,对于连接矩阵WI1

的调整,式(5)构成了梯度’x(jk

)的动

’wI1jl

态递推关系,因而可以辨识高阶系统。

4仿真实验

取仿真对象为非线性模型:

y(k)=y(k-1)3((1+y22+u(k-1)+uk-2)7)

(k-)

在Matlab7.0下编程实现Elman神经网络辨识器。在仿真实验中,采用单输入的一阶Elman网络辨识模型,虽然要比多

层BP前馈网络好,但学习效率还不够高。为了进一步提高网络性能,采用二阶Elman模型,将系统实际输出值的变化趋势,

即在t-1时刻系统的一阶导数输入到网络的输入层。

取系统输入u(k)、系统输出变化dy(k-1)=y(k-1)-y(k-2)为网络输入,隐层单元数为20,神经网络结构为2-20-1。产生100个训练数据点{u

(k),y(k),dy(k-1)},定义输入信号为u(k)=asin

(4\"k/26),k=1,2,…,100,其中当k≤30时取系数a=0.8,30<高钦和,王孙安:基于Elman神经网络的非线性动态系统辨识2007,43(31)89

k≤60时取a=0.9,k>60时取a=1。采用上述学习样本,对二阶y,ye50 - 5󰀂0

󰀂Elman网络进行训练,经过36步训练后,目标误差达到要求;而在相同条件下,采用一阶Elman网络,需要训练265步。图3所示是二阶Elman网络的训练结果,图中y为系统输出,ye为神经网络输出,误差e=ye-y。图4给出了相同条件下采用BP网络的训练结果,在取BP网络隐层单元数为40的情况下,经过1900步训练后,目标误差才达到要求。

5󰀈 y,ye󰀁y ye 󰀂 20406080100

e0.01 t/s

0.00 20󰀃󰀁

40

󰀂

-0.01󰀂0󰀂 t/s

60

80

100

0 󰀁20-4图5

y yey Elman网络测试结果

󰀆

- 50 󰀁󰀇󰀂

10 5 0 - 50×󰀉10 t/s

y,ye406080ye 100󰀆󰀁󰀁 5 0- 50󰀆󰀆󰀁󰀁

20 4060󰀄󰀁󰀄󰀁

80y ye 100󰀆󰀆e󰀃󰀂󰀄󰀂󰀅󰀂󰀆󰀂󰀇󰀂󰀂2040图3Elman网络训练结果󰀇et/s

6080100 5 0- 5󰀁 0󰀁

20

40

t/s

󰀇

y,ye5 0 t(s)t/s

6080100

图6

y ye 100

BP网络测试结果

t(s)

特性的能力,更适合于非线性动态系统的辩识。与BP网络等

- 5󰀇0

20 40󰀃󰀃󰀁󰀁

0.0 e-0.10

0.1󰀂󰀁 t/s

60 80

逼近前馈网络相比,动态递归的Elman网络具有学习效率高、速度快、泛化能力强的特点。仿真结果表明,在不需要被辨识对象的先验知识情况下,改进的Elman网络可以很好地实现高阶非线性动态系统的辨识,可用较小的网络结构实现系统辨识,

20

40

t(s)t/s

60󰀄󰀁

󰀅󰀁80

100

在具有本质非线性动态系统的实时在线辨识中有良好的应用前景。(收稿日期:2007年4月)

图4BP网络训练结果

为了进一步测试非线性系统神经网络辨识器的性能,在对神经网络进行训练的基础上,定义系统输入信号为u(k)=(4!k/26)+bsin(!k/15),取系数a=0.9,b=0.1时,分别对二asin

阶Elman网络和BP网络进行测试,仿真结果如图5和图6所示,表明二阶Elman网络对非线性系统的辨识结果良好,网络泛化能力明显优于BP网络。

参考文献:

[1]王秀峰,卢桂章.系统辨建模于辨识[M].北京:电子工业出版社,

2004.

[2]葛宏伟,梁艳春.进化Elman神经网络模型与非线性系统辨识[J].吉

林大学学报,2005(5):511-519.

[3]时小虎,梁艳春,徐旭.改进的Elman模型与递归反传控制神经网

络[J].软件学报,2003,14(6):1110-1118.

5结论

与静态前馈型神经网络不同,动态递归网络通过存储内部

[4]谢庆国,沈轶,万淑芸.Elman人工神经网络的收敛性分析[J].计算机

工程与应用,2002,38(6):65-66.

[5]李国勇.智能控制及其MATLAB实现[M].北京:电子工业出版社,

2005.

状态使其具备映射动态特征的功能,从而使系统具有适应时变

(上接83页)[2]董长虹,高志,于啸海.Matlab小波分析工具箱原理和应用[M].北京:

国防工业出版社,2004.

6结论

提出将迭代学习方法用于小波阈值去噪中,对小波高频系

[3]于少娟,齐向东,吴聚华.迭代学习控制理论与应用[M].北京:机械

工业出版社,2005.

数经过几次循环,使错误分割的图像像素点降到最少,然后用小波逆变换恢复图像。实验结果表明,与普通的小波阈值去噪方法相比,该方法很好地保留了图像的边缘信息,视觉效果良好,去噪后图像的误差大大减小。(收稿日期:2007年3月)

[4]RantaR,HeinrichC,ValerieLouis-Dorr,etal.Interpretationand

improvementofaniterativewavelet-baseddenoingmethod[J].IEEE(8):239-241.SignalProcessingLetters,2003,10

[5]胡小锋,赵辉.VisualC++/MATLAB图像处理与识别实用案例精

选[M].北京:人民邮电出版社,2004.

[6]任获荣,张平,王家礼.一种新的小波图像去噪方法[J].红外与激光

参考文献:

[1]罗忠亮,王修信,胡维平.小波图像去噪研究方法概述[J].广西科学,

(3):207-211.2004,11

工程,2003,32(6):643-646.

[7]潘显兵.一种改进的小波阈值降噪方法性能分析[J].微计算机信息,

(7):112-113.2006,22

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务