基于改进BP算法的倒立摆稳定性研究

时间:2022-10-15 04:10:43

基于改进BP算法的倒立摆稳定性研究

摘要: 针对BP神经网络在倒立摆平衡控制中自身的限制与不足,本文采用人工神经网络改进BP算法对一级倒立摆控制,建立了实验仿真训练模型,仿真表明改进BP算法控制倒立摆精度高、收敛快,在非线性控制、鲁棒控制等领域具有良好的应用前景。

关键词: 人工神经网络BP算法改进BP算法倒立摆小车

1.引言

倒立摆系统是时变的、非线性、多变量和自然不稳定系统,在控制过程中,它能有效地反映可镇定性、鲁棒性、随动性和跟踪等许多控制中的关键问题,是检验各种控制理论的理想模型。人工神经网络BP算法,在多变量输入情况下具有精度高、实现快、算法简单、鲁棒性好等优点,从而满足了系统的要求[1]。

2.人工神经网络BP算法简介

人工神经网络(ANN)由于具有信息的分布存储、并行处理和自学习能力等优点,在信息处理、模式识别、智能控制等领域得到了越来越广泛的应用。近年来,已有多种ANN模型被提出研究,80%―90%的人工神经网络模型是采用BP网络或其改进形式,它是前向网络的核心部分,体现了网络最精华的部分[2]。标准的BP网络是根据Widrow―Hoff规则,采用梯度下降算法,主要由信息信号的正向传播和误差信号的反向传播两部分组成。

但BP网络存在需较长的训练时间、收敛于局部极小值等缺点,为此人们对BP算法进行了许多改进。改进主要有两类:一类采用启发式技术,如附加动量法、自适应学习率法;另一类是采用数字优化技术,如共轭梯度法、拟牛顿法、Levenberg―Marquardt(LM)法[3]。由于LM算法收敛速度最快,精度较高,且经过大量仿真实验分析比较,LM效果最好,故我们采用LM法对网络进行训练。

LM优化方法权重和阈值更新公式[4]为:

其中J为误差对权值微分的雅可比矩阵,e为误差向量,μ为一个标量。依赖于μ的幅值,该方法光滑地在两种极端情况之间变化,即牛顿法(当μ0)和著名的最陡下降法(当μ∞)。

3.神经网络控制器设计

3.1训练样本的选取

BP神经网络在未经任何训练的情况下,不能作为系统控制器使用。在实际仿真过程中,我们选择极点配置控制为BP网络的教师进行学习,经过试探训练,样本数为2000时结果较为合理,此时样本数据能够反映系统的基本特征,可以得到预期的仿真结果。极点配置-2+5i-2-5i-5+4i-5-4i;A=[0 1 0 0;0-0.0883167 0.629317 0;0 0 0 1;0-0.235655 27.8285 0];B=[0 0.883167 0 2.35655]’;C=[1 0 0 0;0 1 0 0;0 0 1 0;0 0 0 1];D=[0 0 0 0]’;p=[-2+5i-2-5i-5+4i-5-4i]; K=acker(A,B,p)。

3.2 BP网络结构

BP网络设计时,增加层数主要可以进一步降低误差,提高精度,但却使网络复杂化。而增加隐含层的神经元数也可提高误差精度,且训练效果更易观察和调整。为了使误差尽可能小,我们要合理选择初始权重和偏置,如果太大就容易陷入饱和区,导致停顿,一般应选为均匀分布的小数,介于(-1,1)。

根据需要,在网络初始化时,BP采用0.5*Rands函数初始化权值,权值初始值选在(-0.5,0.5),选取训练目标误差为0.0001,训练次数上限为5000次。通过多次仿真实验性能比较,选取[4 9 1]的单隐层神经网络结构,隐含层、输出层分别采用Tansig、Purelin函数,仿真实验表明变学习率训练算法训练时间长,5000次还不能达到所要求的精度,且系统容易发散,控制倒立摆效果不好,采用改进的LM训练算法对网络进行学习训练可以得到较好的控制效果且训练时间短。在实际仿真过程中,BP网络经过53次训练即达到了训练目标。

4.BP网络训练结果

图1分别给出了倒立摆小车位移、摆角和控制力的BP算法与极点配置算法仿真曲线对比图,仿真结果表明:相较极点配置,BP算法精度高、实现快、鲁棒性好,倒立摆小车在BP算法下只需2.5s左右就可以达到所设定精度的稳定效果,且超调量很小,满足了系统的要求。

5.结论

通过对人工神经网络BP算法的分析,笔者进行了倒立摆小车改进BP算法的控制系统仿真实验。仿真表明该改进BP算法收敛性好、计算量小,尤其在非线性和鲁棒控制等领域具有良好的应用前景。BP神经网络从理论上可以逼近任意非线性函数,所以它特别适合控制像倒立摆这样的严重非线性、多变量系统。

参考文献:

[1]于秀芬,段海滨,龚华军.基于人工神经网络BP算法的倒立摆控制研究[J].测控技术,2003,22(3):41-44.

[2]张志华,朱章森,李儒兵.几种修正的自适应神经网络学习算法及其应用[J].地球科学,1998,23(2):179-182.

[3]苏高利,邓芳萍.论基于Matlab语言的BP神经网络的改进算法[J].科技通报,2003,19(2):130-135.

[4]Hagan M T,Menhaj M.Training feedforward networks with the Mar2quardt algorithm[J].IEEE Transactions on Neural Networks,1994,5(6):989-993.

本文为全文原貌 未安装PDF浏览器用户请先下载安装 原版全文

上一篇:注册表:机房管理的守护者 下一篇:无线电通信技术