基于改进BP神经网络PID控制器.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于改进BP神经网络PID控制器

基于改进BP神经网络PID控制器   摘 要:本文提出了一种分层调整学习速率的改进方法,并设计了以改进的BP神经网络参数为基础的自整定PID控制器,在MATLAB中对其进行仿真实验。   关键词:BP;神经网络;PID控制器   1 分层调整学习速率的改进BP算法   BP算法本质上是梯度下降法。若要改进BP算法,首先要熟悉了解梯度下降法的原理。   设函数f(x)具有一阶连续导数,假设在x=x*处取得函数极小值,用xk代表在第k次接近极小值点,则在第k+1次接近极小值点为xk+1=xk+λpk,对函数f(x)在xk+1处进行泰勒级数展开:   f(xk+1)=f(xk+λpk)=f(xk)+λ?荦f(xk)Tpk+o(λ)(1-1)   上式中?荦f(xk)为函数f(x)在xk处的梯度,当λ取得非常小的值时,o(λ)为λ的高阶无穷小。如果有   ?荦f(xk)Tpklt;0 (1-2)   能推出   f(xk+λpk)lt;f(xk) (1-3)   这就表明在第k+1次迭代时的函数值小于第k次迭代的函数值。为了使?荦f(xk)Tpk取得最小值,对其求模变化:   ?荦f(xk)Tpk=||?荦f(xk)||?||pk||?cosθ (1-4)   上式中,θ为向量?荦f(xk)与pk的夹角。   假设||pk||为固定值,当θ=0时,即向量?荦f(xk)与pk同向,则cosθ=1,?荦f(xk)Tpk取得最大值;反之,当θ=180时,即向量?荦f(xk)与pk反向,则cosθ=-1,?荦f(xk)Tpklt;0,所以向量pk的正方向就是梯度的负方向。沿其负梯度方向进行搜索能够使f(x)函数值减小的速率加快,能够快速地找到极小点。   根据式(1-1)可知,λ作为梯度?荦f(xk)与向量pk的系数,称为步长,同时影响着网络在负梯度方向上的搜索能力。选取最佳步长的计算公式如下:   λk=(1-5)   把求得最佳步长代入式(1-3)得   f(xk-λkpk)lt;f(xk) (1-6)   我们在最佳步长的计算中能够发现,公式(1-5)的计算增加了网络计算量,可以通过使用学习速率η替代步长来降低计算量。在文章中我们提出了一种分层调整学习速率的方法,它能够同时调整输入层与隐含层及隐含层与输出层之间的网络连接权值的学习速率。   设定网络的学习速率η为一个较小的值,当满足f(xk-λkpk)lt;f(xk)条件时,则学习速率的改变趋势为:   η?坩2η (1-7)   当满足f(xk-λkpk)gt;f(xk)条件时,则学习速率的改变趋势为:   η?坩0.5η (1-8)   2 以改进的BP神经网络参数为基础的自整定PID控制器   相比较其他而言,BP神经网络主要优胜点在于能够将网络连接权值不断代入计算来修正误差,使之可以不断接近适应度函数。学习算法的实现难度比较小,所以在构建PID控制器时,用BP网络结构来构建是比较常见的。以BP算法为基础的神经网络能够通过自学及自适应能力找到一组最优PID参数,使系统的性能达到最优。   ①常规的PID控制器:闭环控制被控对象,在线整定KP、KI、KD参数;   ②BP神经网络:BP神经网络通过自学习和自适应能力不断更新整定网络的连接权值,通过不断整定使输出值极限接近目标值。当输出值为KP、KI、KD时,系统的性能为最佳。   假定BP神经网络优化PID控制器是一个由三层网络构成的,且其输入层节点有M个,隐含层节点Q个、输出层节点3个。   输出节电输出对应KP、KI、KD可调参数值,隐含层的激发函数可以取Sigmoid函数,可正可负。然而输出层的激发函数为非负。   BP神经网络输入层节点的输出为      公式中,g′(x)=g(x)?(1-g(x)),f′(x)=(1-f2(x))/2。   以改进的BP神经网络为基础的PID控制器算法:   一是对BP神经网络的结构进行明确,在明确了网络结构的同时也就明确了输出层及隐含层的节点个数。并对各层的(0)初始化,k=1;   二是为计算e(k)=r(k)-y(k),可以通过样本采集得到的r(k)及y(k)代入计算;   三是在将r(i),y(i),u(i-1),e(i)(i=k,k-1,...,k-p)输入到神经网络之前进行统一化处理;   四是通过式(2-2)和(2-3)将各层神经元的输入输出计算出来,输出层输出的数据就是PID控制器的KP(k)、K1(k)、KD(k);   五是PID的控制输出u(k)可以由式u(t)=KP[e(t)]得到;   六是当所有网络权值刷新一次之后,若误差e(k+1)满足e(k+1)lt;   e(k),那么按照式

文档评论(0)

fangsheke66 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档