BP算法是在导师指导下,适合于多层神经元网络的一种学习,它是建立在梯度下降法的基础上的。理论证明,含有一个隐含层的BP网络可以实现以任意精度近似任何连续非线性函数。
BP神经网络结构如图1所示,由三层(输人层、隐含层、输出层)网络组成,使输出层的神经元状态对应PID控制器的三个可调参数Kp、Ki、Kd。通过神经网络的自学习、加权系数调整使神经网络输出对应于某种最优控制律下的PID控制器参数。
基于BP(Baekpropga ti on)网络的PID控制系统结构如图2所示,控制器由常规的PID控制器和神经网络两部分组成,常规PID控制器直接对被控对象进行闭环控制,并且其控制参数为Kp、Ki、Kd在线调整方式;神经网络根据系统的运行状态,调节PID控制器的参数,以期达到某种性能指标的最优化,使输出层神经元的输出对应于PID控制器的三个可调参数Kp、Ki、Kd。通过神经网络的自学习、加权系数的调整,使神经网络输出对应于某种最优控制规律下的PID控制器参数。
2、改进型BP神经网络
基本BP神经网络主要存在以下两个缺陷:其一,传统BP网络是一个非线形优化问题,不可避免的存在局部极小问题。网络的权值和阀值沿局部改善的方向不断修正,力图达到使误差函数 最小化的全局解,但实际上常得到的是局部最优点;其二,学习过程中,误差函数下降慢,学习速度缓,易出现一个长时间的误差坦区,即出现平台。
目前已有不少人对此提出改进的方法。如在修改权值中加入“动量项”,采用Catchy误差估计器代替传统的LMS误差估计器等。本文在此探讨通过变
换梯度来加快网络训练的收敛速度的共轭梯度算法,利用这种算法改善收敛速度与收敛性能。改进共轭梯度算法在不增加算法复杂性的前提下可以提高收敛速度,并且可以沿共轭方向达到全局最优即全局极值点。它要求在算法进行过程中采用线性搜索,本文采用Fletcher-Reeves线性搜索方法,以保证算法的收敛速度。
将改进共轭梯度法应用于BP网络的控制算法如下:
由于电加热炉是温度参数的定值控制,且存在干扰和对象参数变化的情况,为验证改进BP神经网络PID控制的效果,分别对其跟踪设定值特性、及适应对象参数变化的能力进行仿真研究,并与基于传统BP神经网络PID控制器的控制效果进行比较分析。图3为单位阶跃响应曲线,图4为过程对象单位阶跃响应曲线是在控制器参数不变的情况下改变对象G(S)参数的仿真结果。(注:以下各图中实线或“I”均表示改进BP神经网络PID控制结果,虚线、点线或“T”表传统BP神经网络PID控制器的控制结果;A、B、C分别表示G(S)三种参数变化了的模型)
从仿真结果看,改进BP神经网络PID控制器比传统BP神经网络PID控制器在控制性能上有了一定程度的提高,尤其是在系统稳定时间和抗干扰性方面的优化较为明显。这主要是因为在BP算法中采用了改进共轭梯度法,加快了BP算法的收敛速度,从而保证了系统稳定时间较短,又具有较好的泛化能力,因此,具有较强的抗干扰和适应参数变化的能力
4 、结论
改进共轭梯度BP算法在不增加算法复杂度的情况下,通过梯度的共轭方向来寻求网络的全局最优值,从而避免网络陷入局部极小值。本文将其替代传统的BP算法构造智能PID控制器,并进行了以电加热炉为模型的控制系统仿真。结果表明,这种改进算法能够有效提高网络的训练速度,改善网络的收敛性能,避免网络陷入局部极小值,取得了良好的控制性能。
责任编辑:gt