您好,欢迎访问三七文档
当前位置:首页 > 金融/证券 > 股票报告 > 基于BP神经网络的PID控制器设计
基于BP神经网络的PID控制器设计班级:21班学号:2014561姓名:常临妍摘要常规PID控制技术是工业控制中一种常用的控制方法。其结构简单、容易实现、控制效果良好,且能对相当一些工业对象或过程进行有效的控制,已得到广泛应用。但其局限性在于:当控制对象不同,或被控对象具有复杂的非线性特性时,难以建立精确的数学模型。控制器的参数难以自动调整以适应外界环境的变化。且由于对象和环境的不确定性,往往难以达到满意的控制效果。为了使控制器具有较好的自适应性,实现控制器参数的自动调整,可以借助BP神经网络控制的方法。BP神经网络已被证明具有逼近任意连续有界非线性函数的能力,给非线性控制带来了新的思路。利用人工神经网络的自适应能力,并结合传统的PID控制理论,构造神经网络PID控制器,实现控制器参数的自动调整。本文研究了基于BP神经网络的PID控制器设计,利用BP神经网络的自适应能力进行在线参数整定。其实现具有自适应性等特点,网络的收敛速度快,能够对非线性对象有很好的控制,系统的跟踪性能好。其参数设定无需知道被控对象的具体参数及其数学模型,对不同的对象具有适应性。关键词:PID控制BP神经网络控制器设计一.绪论1.1神经元网络PID的发展历程1934年,美国心理学家W.McCulloch和数学家W.Pitts用数学模型对神经系统中的神经元进行理论建模,建立了MP神经元模型。MP神经元模型首次用简单的数学模型模仿出生物神经元活动功能,并揭示了通过神经元的相互连接和简单的数学计算,可以进行相当复杂的逻辑运算这一事实。1957年,美国计算机学家F.Rosenblatt提出了著名的感知器模型。它是一个具有连续可调权值矢量的MP神经网络模型,经过训练可达到对一定输入矢量模型进行识别的目的。1959年,美国工程师B.Widrow和M.Hoff提出了自适应线性元件。它与感知器的主要不同之处在于其神经元有一个线性激活函数,这允许输出可以是任意值,而不仅仅只是像感知器中那样只能取0或1。提高了训练收敛速度和精度。他们从工程实际出发,不仅在计算机上模拟了这种神经网络,而且还做成了硬件,并将训练后的人工神经网络成功的用于小通讯中的回波和噪声,成为第一个用于解决实际问题的人工神经网络。1969年,人工智能的创始人之一M.Minsky和S.Papert在合著《感知器》一书中,对以单层感知器为代表的简单人工神经网络的功能及局限性进行了深入分析,指出,单层感知器只能进行线性分类,对线性不可分的输入模式无效。而解决方法是设计出具有隐含层的多层神经网络。但要找到一个有效修正权矢量的学习算法并不容易。这一结论使当时许多神经网络研究者感到迷茫,对神经网络理论的发展起了消极作用。1982年,美国学者J.Hopfield提出了霍普菲尔德网络模型,将能量函数引入到对称反馈网络中,使网络稳定性有了明显判据,并利用提出的网络的神经计算能力来解决条件优化问题。此模型可以用电子模拟线路实现,还兴起了对新一代电子神经计算机的研究。1986年,D.E.Rumelhart等人提出的解决多层神经网络权值修正的算法——误差反向传播法,简称BP算法,找到了解决M.Minsky和S.Papert提出的问题的办法,给人工神经网络增添了新活力。1.2神经网络的概念与特点神经网络系统是指利用工程技术手段,模拟人脑神经网络结构和功能的一种技术系统,它是一种大规模并行的非线性动力学系统。由于它是由人工方式构造的网络系统,因此也称为人工神经网络系统。基于人工神经网络的控制简称为神经网络控制。神经网络控制是一种基本上不依赖于模型的控制方法,它适用于具有不确定性、事变的对象与环境,并具有较强的自适应能力、学习能力、非线性影射能力、鲁棒性和容错能力。人工神经网络有以下几个突出的优点:①能逼近任意L2上的非线性函数;②信息的并行分布式处理与存储;③可以多输入、多输出;④便于用超大规模集成电路或光学集成电路系统实现,或用现有的计算机技术实现;⑤能进行学习,以适应环境的变化。人工神经网络还有以下优越性:一、具有自学习功能。实现图像识别时,先把许多不同的图像样板和对应的应识别的结果输入人工神经网络,网络就会通过自学习功能,慢慢学会识别类似的图像。自学习功能对于预测有特别重要的意义。预期未来的人工神经网络计算机将为人类提供经济预测、市场预测、效益预测,其应用前途是很远大的。二、具有联想存储功能。用人工神经网络的反馈网络就可以实现这种联想。三、具有高速寻找优化解的能力。寻找一个复杂问题的优化解,往往需要很大的计算量,利用一个针对某问题而设计的反馈型人工神经网络,发挥计算机的高速运算能力,可能很快找到优化解。出输触突轴突细胞体突树入输传输电脉冲形成信息处理图1-1神经网络基本模型二.基于BP神经网络PID控制器的设计PID控制要取得良好的控制效果,必须对比例、积分和微分三种控制作用进行调整以形成相互配合又相互制约的关系。这种关系不一定是简单的“线性组合”,可从变化无穷的非线性组合中找出最佳的关系。神经网络所具有的任意非线性表示能力,可以通过对系统性能的学习来实现具有最佳组合的PID控制。采用BP神经网络,利用其具有逼近任意非线性函数的能力,且结构和学习算法简单明确的优点,建立参数DIPKKK,,自学习的PID控制器。通过神经网络自身的学习,可以找到某一最优控制下的P、I、D参数。基于BP神经网络的PID控制系统结构如图2-1所示,控制器由两个部分组成:⑴经典的PID控制器:直接对被控对象过程闭环控制,并且三个参数DIPKKK,,为在线整定式;⑵神经网络NN:根据系统的运行状态,调节PID控制器的参数,以期达到某种性能指标的最优化。即使神经网络的输出层神经元的输出状态对应于PID控制器的三个可调参数DIPKKK,,,通过神经网络的自身学习、加权系数调整,从而使其稳定状态对应于某种最优控制律下的PID控制器参数。图2-1基于BP神经网络的PID控制系统结构学习算法神经网络NNPID控制器被控对象PKIKDK—输入r+euy经典增量式数字PID的控制算法式为)]2()1(2)([)()]1()([)1()(kekekeKkeKkekeKkukuDIP)(1-2式中DIPKKK,,——比例、积分、微分系数。将DIPKKK,,视为依赖于系统运行状态的可调系数时,可将式)(1-2描述为)]2(),1(),(,,,),1([)(kekekeKKKkufkuDIP)(2-2上式中,f是与)(),1(,,kykuKKKDIP,等有关的非线性函数,可用BP神经网络NN通过训练和学习来找到这样的一个最佳的控制规律。在这里设计的BP网络采用结构简单的三层BP神经网络,其结构如图)(2-2所示,有M个输入节点、Q个隐含层节点、3个输出节点。输入节点对应所选的系统运行状态量,如系统不同时刻的输入量和输出量等,必要时要进行归一化处理。输出节点分别对应PID控制器的三个可调参数DIPKKK,,。由于DIPKKK,,不能为负值,所以输出层神经元的激发函数取非负对称的Sigmoid函数,而隐含层神经元的激发函数可取正负对称的Sigmoid函数。图2-2NN-BP网络结构由图可见,BP神经网络NN的输入为1)1,,1,0()()1()1(MjkjoMjjkexo)(3-2式中,输入变量的个数M取决于被控系统的复杂程度。网络的隐含层输入输出为1)()1,,1,0()]([)()()2()2()2(0)1()2()2(koMiknetfokowknetQiiMjjiji)(4-2式中)2(ijw——隐含层加权系数;)2(iMw——阈值,)2(iMw=i;f——激发函数,)tanh(xf;上角标(1)、(2)、(3)——输入层、隐含层、输出层。最后,网络的输出层的输入输出为DIPllQiililKkoKkoKkoknetgkokowknet)()()()]([)()()()3(2)3(1)3(0)3()3(0)2()3()3()(5-2式中)3(liw——输出层加权系数;)3(lQw——阈值,)3(lQw=l;g——激发函数,)tanh(121xg。取性能指标函数为)1(21)]1()1([21221kzkykrJ)(6-2依最速下降法修正网络的加权系数,即按J对加权系数的负梯度方向搜索调整,并附加一使搜索快速收敛全局极小的惯性项,则有)()1()3()3()3(kwwJkwlilili)(7-2式中——学习速率;——惯性系数。)3()3()3()3()3()3()()()()()()()1()1(lillllliwknetknetkokokukukykyJwJ)(8-2由于)(/)1(kuky未知,所以近似用符号函数))(/)1(sgn(kuky取代,由此带来的计算不精确的影响可以通过调整学习速率来补偿。由式)(1-2可以求得)2()1(2)()()()()()()1()()()()3(2)3(1)3(0kekekekokukekokukekekoku)(9-2因此可得BP神经网络NN输出层的加权系数计算公式为下式)(10-2)(2,1,0l)]([)()())()1(sgn()1()()()1()3(')3()3()3()2()3()3(knetgkokukukykekwkokwlllliilli依据上述推算办法,可得隐含层加权系数的计算公式为20)3()3()2()2()2()1()2()2()()]([)()()1(ililiiijjiijkwknetfkwkokw)1,,1,0(Qi)(11-2式中)])(1[('xgxgg;2/)])(1['2xff。基于BP神经网络的PID控制算法可归纳如下:⑴事先选定BP神经网络(NN)的结构,即选定输入层节点数M和隐含层节点数Q,并给出各层加权系数的初值)0()2(ijw、)0()3(liw;选定学习速率和惯性系数;⑵采样得到)(kr和)(ky,计算)()()()(kykrkzke;⑶对),,1,()()1()()(pkkkiieiuiyir、、、、进行归一化处理作为NN的输入;⑷根据式)(3-2、)(4-2、)(5-2前向计算NN的各层神经元的输入和输出,NN输出层的输出即为PID控制器的三个可调参数DIPKKK,,;⑸根据式)(1-2,计算PID控制器的控制输出)(ku,参与控制和计算;⑹由式)(10-2,计算修正输出层的加权系数;⑺由式)(11-2,计算修正隐含层的加权系数;⑻置1kk,返回⑵。三.总结本文研究了基于BP神经网络的PID控制器设计,利用BP神经网络的自适应能力进行在线参数整定。其实现具有自适应性等特点,网络的收敛速度快,能够对非线性对象有很好的控制,系统的跟踪性能好。其参数设定无需知道被控对象的具体参数及其数学模型,对不同的对象具有适应性。
本文标题:基于BP神经网络的PID控制器设计
链接地址:https://www.777doc.com/doc-2568690 .html