时间:2024-07-28
廖 凯,刘庆云,刘泽浩
(1.广东省智能制造研究所,广州 510070;2.广州绿源信息科技有限公司,广州 510610)
机械臂一般是指由各类相对滑动、铰接的组件构成的具备多个自由度,并可进行移动或抓取物体的机器[1],是机器人的重要分支,应用于农业生产[2],食品加工[3],航空航天[4]等多个领域。机械臂系统是典型的多输入、多输出非线性系统,其动力学特征具有很强的耦合性和时变性,对其控制方法的研究是当今热点之一。
传统控制策略是基于模型的控制,因此,以建立被控系统精确的数学模型为前提和基础,而机械臂系统作为非线性系统,其精确数学模型难以获得。基于此,利用神经网络的逼近能力,以神经网络对被控对象模型进行智能辨识的神经网络控制成为重要发展趋势。其中,RBF神经网络以其对非线性连续函数的一致逼近性,而且学习速度快,不存在局部最小值问题,成为最常用的模型辨识神经网络[5]。张雯等[6]针对干体炉非线性、时变、纯滞后的特性,提出一种RBF神经网络控制器设计方案。时尚等[7]提出一种模糊神经网络控制策略,用于解决大口径武器液压伺服系统控制时内部参数的不确定性和时变性问题。本文将对比RBF神经网络常用的学习算法,设计改进的RAN学习算法设计RBF神经网络,并设计基于该RBF神经网络的逆控制策略,将其应用于机械臂系统的控制中。
图1所示为典型的RBF神经网络结构,由图可知,RBF神经网络为3层前馈神经网络,其模型表达式:
式中:W为权值向量,H为径向基函数向量。Gaussian函数是常用的RBF神经网络径向基函数形式,其表达式:
由以上推导可知,RBF神经网络设计要点包括确定隐含层神经元个数、数据中心、扩展常数、各神经元的权值。其中,隐含神经元个数和数据中心是其中的关键,因为只要确定这2个要素,扩展常数和权值可通过数值计算即可获得。
图1 典型RBF神经网络结构
而RBF神经网络学习算法主要解决隐含神经元个数和数据中心的确定问题,大致分为2类:(1)随机选取或从输入样本中选取,包括OLS算法、ROLS算法、ESA算法等,这些算法件容易实现,但数据中心确定后将不再改变,数据中心选取的好坏具有随机性;(2)数据中心根据输入样本动态调整,如基于动态聚类的方法,RAN(Resource-Allocating Network)方法,变结构学习方法等。对比来说,第(2)类更适用于机械臂系统控制。
RAN是著名的在线构建算法,其原理是发现神经网络学习过程中“未建模”样本,并为其分配新的隐含层神经元。其具有学习速度快、可实现在线学习,且可构建一个结构紧凑的神经网络等优点。
RAN通过以下两个准则来分配新的神经元,设输入的样本xi,其期望输入为yi,其网络输出为y(xi),当两者满足如下两个条件时,增加新的神经元。
式中:Cnearest为与输入样本最近的数据中心。
当满足以上条件,新增加神经元的数据中心、宽度以及权值由下式决定:
当检查式(3)和式(4),不需要新增隐含层神经元时,RAN网络通过Widrow-Hoff学习规则训练网络,减小误差,其目标函数为:
由于本次使用的RBF神经网络采用Gaussian函数作为核函数,而考虑其局部特性,即每个输入训练的样本只能影响该样本附近的隐含层神经元,因此,数据中心值按下式进行调节,以提高网络学习速度。
在RAN学习算法中,只有增加隐含层神经元操作,RBF神经网络的隐含层神经元会随着学习过程不断增加,而产生冗余,而RBF神经网络的网络规模越大,其精度虽然能满足要求,但是泛化能力却会随着变差,这给在控制系统中应用带来问题。因为一般在控制系统中的神经网络,训练数据是试验数据,不一定囊括被控对象所有的模态,因此在实际控制中,需要借助神经网络的泛化能力,对实际输入有一定的泛化能力。因此,针对这一点对RAN学习算法进行改进,即增加删除隐含层神经元操作。由式(8)、(9)和(10)可知,在RBF神经网络训练过程中,中心点会随着训练而不断调整,这时,会存在某些中心点非常接近,当2个中心点距离满足一个很小的值时,即将2个中心点对应的神经元合并为1个神经元,判断式如下:
本文设计的改进的RBF神经网络。下一小节将讨论利用该改进的RBF神经网络设计机械臂系统逆控制器,并进行仿真试验。
综上,改进的RAN学习算法步骤为:
(1) 初始化RBF网络,初始化判别系数δ、ε和Δ;
(2) 输入样本(xi,y)i,计算当前RBF网络输出y(xi)以及此时网络的输出误差T=‖yi- y(xi)‖2;
(3) 找出与输入样本最近的数据中心Cnearest;
(4) 根据式(3)和(4)判断是否新增隐含层神经元,若是,转步骤(5),若否,转步骤(6);
(5) 根据式(5)、(6)和(7)新增隐含层神经元;
(6) 根据式(8)、(9)和(10)更新网络;
(7) 根据式(11)判断是否删除相似的隐含层神经元,若是转步骤(8),若否则返回步骤(2)重新输入一组样本;
(8) 根据式(12)更新数据中心,返回步骤(2)重新输入一组样本。
图2所示为神经网络直接逆控制结构,利用神经网络辨识器辨识被控对象的逆模型,并复制到作为控制器与被控对象串联,在理想的情况下,控制系统的传递函数为1,使得被控对象输出完全跟踪给定信号。
图2 神经网络直接逆控制结构
本文将使用设计的改进的RBF神经网络进行机械臂系统的逆模型辨识,并将辨识后的RBF神经网络复制到被控对象前向通道,实现其控制,其控制器结构如图3所示。
图3 改进RBF神经网络机械臂系统逆控制结构
本章将在Matlab Simulik模块中对所设计的改进RBF神经网络机械臂系统逆控制器进行仿真分析。根据图3在Matlab Simulik模块建立改进RBF神经网络机械臂系统逆控制器仿真模型,如图4所示。
图4 改进RBF神经网络机械臂系统逆控制器仿真模型
以伪随机多幅值信号输入被控对象系统,训练RBF神经网络,图5所示为输入信号,图6所示为网络训练结果,可见神经网络的输出很快收敛于实际机械臂系统输出。
图5 输入训练的伪随机多幅值信号
图6 改进的RBF神经网络训练结果
分别以正弦信号和矩形波信号作为输入信号输入控制系统,分析其跟踪性能和鲁棒性。图7和图8所示为所推荐控制器对机械臂系统的控制效果图。可见,改进后的RBF神经网络泛化能力强,采用其设计的控制系统鲁棒性好。
图7 正弦信号控制效果
图8 矩形波信号控制效果
(1) 通过对比RBF神经网络学习算法,RAN学习算法会根据数据实时增加隐含层神经元和中心节点,更适用于机械臂系统实时控制场景。
(2) RAN学习算法只考虑增加隐含层神经元而未考虑在RBF神经网络训练过程中,神经元数量越多,降低RBF神经网络的泛化能力,提出增加删除隐含层神经元判断准则,改进RAN学习算法,提高RBF神经网络泛化能力。
(3) 所提出的改进的RBF神经网络设计机械臂系统逆控制器,通过改进的RBF神经网络辨识系统,仿真试验表明,所设计的控制器对给定信号具有很好的跟踪能力,而且鲁棒性强。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!