神经网络在控制中的应用CollegeofElectricalandInformationEngineering,HunanUniv.2神经网络在控制中的应用神经网络辨识技术神经网络控制技术CollegeofElectricalandInformationEngineering,HunanUniv.35.1神经网络辨识系统辨识是自适应控制的关键所在,它通过测量对象的输入输出状态来估计对象的数学模型,使建立的数学模型和对象具有相同的输入输出特性。神经网络对非线性函数具有任意逼近和自学习能力,为系统的辨识,尤其是非线性动态系统的辨识提供了一条十分有效的途径。神经网络系统辨识实质上是选择一个适当的神经网络模型来逼近实际系统的数学模型。CollegeofElectricalandInformationEngineering,HunanUniv.45.1神经网络辨识5.1.1神经网络系统辨识的原理对象辨识模型uyyˆe系统辨识的原理就是通过调整辨识模型的结构来使e最小。在神经网络系统辨识中,神经网络用作辨识模型,将对象的输入输出状态u,y看作神经网络的训练样本数据,以J=1/2e2作为网络训练的目标,则通过用一定的训练算法来训练网络,使J足够小,就可以达到辨识对象模型的目的。CollegeofElectricalandInformationEngineering,HunanUniv.55.1神经网络辨识5.1.2多层前向BP网络的系统辨识假设非线性对象的数学模型可以表示为:))(,),1(),(),(),2(),1(()(mtututuntytytyfty其中f是描述系统特征的未知非线性函数,m,n分别为输入输出的阶次。则可以利用多层前向BP网络来逼近非线性函数,进而估计对象的模型。CollegeofElectricalandInformationEngineering,HunanUniv.65.1神经网络辨识Z-1Z-1Z-1Z-1对象BPu(t)y(t)y(t-1)y(t-n)………………u(t-1)u(t-n))(ˆty多层前向BP网络系统辨识原理图CollegeofElectricalandInformationEngineering,HunanUniv.75.1神经网络辨识网络的输出可以通过下式计算得到:ljmniiijjxwwty111)1()2()()(ˆ],,,[121mnxxxX)](,),1(),(),(,),2(),1([mtututuntytytyH(*)表示隐层神经元的激发函数Wij(1),Wj(2)分别表示网络第1-2层和2-3层的连接权值CollegeofElectricalandInformationEngineering,HunanUniv.85.1神经网络辨识定义网络训练的目标函数为:221))(ˆ)((tytyJ则网络训练的BP算法可以描述为:)2(1)2()2()()1(jjjwJtwtw11)1()2()2()ˆ(ˆˆmniiijjjxwHyywyyJwJ)1(2)1()1()()1(ijijijwJtwtwijijxHwyywJ')ˆ()2()1(CollegeofElectricalandInformationEngineering,HunanUniv.95.1神经网络辨识5.1.3.递归神经网络系统辨识……1x2xnx)0(1w)0(nw)1(11w)1(nlw)2(11w)2(lmw1y2ymy递归神经网络结构CollegeofElectricalandInformationEngineering,HunanUniv.105.1神经网络辨识递归神经网络的输入输出关系可以描述为:niiiiijljjkktxwtxwHwy1)0()1(1)2())1()((H(*)表示隐层神经元的激发函数Wij(1),Wjk(2)分别表示网络第1-2层和2-3层的连接权值Wi(0)表示网络第一层的递归权值CollegeofElectricalandInformationEngineering,HunanUniv.115.1神经网络辨识由于递归神经网络本身具有动态反馈环,可以记录以前的状态,因此用递归神经网络来对非线性对象进行辨识时只需以对象当前的输入状态u(t)和前一时刻的输出状态y(t-1)作为网络的输入即可,与前向多层神经网络相比,网络的结构较为简单。递归网络动态对象学习算法1z)(ku)(ky)(ˆky)1(ky)(ke-+CollegeofElectricalandInformationEngineering,HunanUniv.125.2神经网络控制神经网络在控制中主要起以下作用:(1)基于精确模型的各种控制结构中充当对象的模型;(2)在反馈控制系统中直接充当控制器的作用;(3)在传统控制系统中起优化计算作用;(4)在与其它智能控制方法和优化算法相融合中,为其提供对象模型、优化参数、推理模型及故障诊断等。CollegeofElectricalandInformationEngineering,HunanUniv.135.2神经网络控制5.2.1神经网络直接反馈控制系统神经网络控制器被控对象学习算法期望值rye神经网络直接用作误差闭环系统的反馈控制器,神经网络控制器首先利用其它已有的控制样本进行离线训练,而后以系统的误差的均方差为评价函数进行在线学习。CollegeofElectricalandInformationEngineering,HunanUniv.145.2神经网络控制5.2.2神经网络逆控制被控对象NNC目标函数逆动力学期望值r输出值y自适应逆控制的基本思想就是用被控对象传递函数的逆模型作为串联控制器对控制对象实施开环控制。神经网络先离线学习被控对象的逆动力学模型,然后用作对象的前馈串联控制器。由于开环控制缺乏稳定性,所以神经网络还需要根据系统的反馈误差在线继续学习逆动力学模型CollegeofElectricalandInformationEngineering,HunanUniv.155.2神经网络控制5.2.3神经网络内模控制将对象模型与实际对象相并联,控制器逼近模型的动态逆。一般有两种方法:1)两个神经网络分别逼近模型和模型的逆;2)采用神经网络逼近模型,然后用非线性优化方法数值计算内模控制量。CollegeofElectricalandInformationEngineering,HunanUniv.165.2神经网络控制5.2.4神经网络自适应控制(1)神经网络模型参考直接自适应控制模型参考自适应控制的目的是:系统在相同输入激励r的作用下,使被控对象的输出y与参考模型的输出ym达到一致。这样通过调整参考模型,可以调整系统的动态特性。神经网络控制器(NNC)先离线学习被控对象的逆动力学模型,与被控对象构成开环串联控制,而后神经网络根据参考模型输出与被控对象输出的误差函数进行在线训练,使误差函数最小。CollegeofElectricalandInformationEngineering,HunanUniv.175.2神经网络控制(2)神经网络模型参考间接自适应控制在直接自适应控制的基础上,引入了一个神经网络辨识器(NNI)来对被控对象的数学模型进行在线辨识,这样可以及时地将对象模型的变化传递给NNC,使NNC可以得到及时有效的训练。CollegeofElectricalandInformationEngineering,HunanUniv.18例:二关节机器人神经网络自适应控制1)控制问题机器人动态控制问题就是要使机器人的各关节或末端执行器位置能够以理想的动态品质跟踪给定的轨迹或稳定在指定的位置上。XY112XY12L122AB),(ddyx1LCollegeofElectricalandInformationEngineering,HunanUniv.191伺服控制器杆1杆21d2122d坐标变换坐标变换dxdyxy二关节机器人控制结构CollegeofElectricalandInformationEngineering,HunanUniv.200X0YO112A),(yxW1l2l2)机器人数学模型坐标变换:机器人末端在空间的位置坐标可以变换为其关节角度的大小)cos(2221222122llllyx22122212220,2arccosllllyxxyAtncos2221212222yxllyxl0,2arccos221222122yxlllyx1CollegeofElectricalandInformationEngineering,HunanUniv.21动力学方程:),()(,dTFGVMτ2222212222221222222122212211)2(lmcllmlmcllmlmcllllmlmM2222122122122222122,sllmsllmsllmV122211211222)(gclmgclmmgclmGCollegeofElectricalandInformationEngineering,HunanUniv.22机器人动力学模型的特点动力学方程包含的项数多,复杂。随着机器人关节数的增加,方程中包含的项数呈几何级数增加,可达数百项;高度非线性。方程的每一项都含有cos,sin等非线性因素高度耦合。每个关节的运动都会引起其它关节的运动模型不确定性。当机器人搬运物体时,由于所持物件不同,负载会发生变化,同时,关节的摩擦系数也会随时间发生变化。CollegeofElectricalandInformationEngineering,HunanUniv.233)神经网络自适应控制BP机器人NNINNCBP)(ku)(ky)(ke)(kr)(kyI)(keI+-+-)(kyu1zCollegeofElectricalandInformationEngineering,HunanUniv.24神经网络的选型:神经网络控制器控制器要求鲁棒性好,经离线训练后即可投入使用,选用模糊神经网络网络的输入为四个,分别对应两个关节角的误差和误差变化率。输出为两个,对应两个关节的力矩CollegeofElectricalandInformationEngineering,HunanUniv.25神经网络辨识器辨识器要求能够很好地反映机器人的动态,并具有较简单的结构。选择递归神经网络CollegeofElectricalandInformationEngineering,HunanUniv.26网络的训练辨识器的学习目标函数:pspssssIIkkkekJ112221ˆ学习算法:kWkJkWkWkWkWIIIIIII1CollegeofElectricalandInformationEngineering,HunanUniv.27控制器的学习目标函数:学习算法:pspssssCkkrkekJ11221221soCoosssCssCCCWkukukykeWyyJWJkWkJkWkWkWkWCCCCCCC1由神经网络辨识器提供CollegeofElectricalandInformationEngineering,