本发明涉及一种机械臂控制方法,特别涉及一种基于rbf神经网络的机械臂控制方法。
背景技术:
目前,机器人赖以发展的基础是智能,在机器人控制系统中,最关键的是学习机制和能力。模拟智能体的学习机制,使机器人可以像生物体一样自动地通过不断地训练学习获取新知识和技能,实现自我完善,是机器人控制领域的热点问题。
在实际工程中,机械臂的有效载荷会发生变化,运动期间诸多参数无法实现精确预知,而rbf网络的自适应控制方法具有不需要未知参数的先验知识的优点,比如不需要知道载荷的质量、机械手终端的位置和终端作用物体上的力,因此不用离线训练神经网络。rbf网络也能辨识机器人的模型误差,可以保证闭环的稳定性,也具有高性能的跟踪效果,因此rbf网络对复杂系统的控制能力在机械臂上有很高的实用价值。
技术实现要素:
本发明的目的是在于提供一种机械臂的认知学习模型,提出一种基于径向基函数网络的小脑-基底神经节操作条件学习算法,使机械臂实现自主学习,从而能够更好地控制机械臂。
本发明提供的基于rbf神经网络的机械臂控制方法,其方法如下所述:
步骤一、根据人脑认知系统各模块的工作原理和操作条件反射的机理,提供一种机械臂的认知学习模型机理;
步骤二、提出一种基于小脑-基底神经节的行为认知模型和混合学习算法;
步骤三、基于径向基函数网络的小脑-基底神经节操作条件学习算法设计,采用人工神经网络和强化学习方法建立一个能使机械臂自主学习的数学模型;
步骤四、采用基于径向基函数网络的小脑-基底神经节操作条件认知学习模型,控制机械臂,在matlab中,建立机械臂仿真实验模型;
步骤五、在matlab中,通过改变参数和变量进行可行性的测试,验证基于rbf神经网络的机械臂控制方法。
本发明的有益效果:
(1)本发明提出一种以小脑-基底神经节操作条件反射为主要学习机制的认知学习模型,不仅适应于机械臂,还可应用在其他机械领域。
(2)本发明基于小脑-基底神经节的行为认知数学模型进行推导和优化,可在其他控制领域应用。
(3)本发明基于径向基函数网络的小脑-基底神经节操作条件学习算法设计,采用人工神经网络和强化学习方法建立的机械臂自主学习的数学模型更加智能,更适用于应用,可以大大减少程序员的工作量。
(4)本发明与现有机械臂控制方法相比更具有前瞻性,具有自主学习能力的机械臂在未来更具有竞争力。
附图说明
图1是以小脑-基底神经节操作条件反射为主要学习机制的模型结构示意图。
图2是径向基函数神经元模型示意图。
图3是径向基函数网络结构模型示意图。
图4是k-均值聚类算法的可视流程图。
图5是认知学习算法流程图。
图6是rbf网络对训练样本点拟合的程序执行结果示意图。
图7是训练时间及参数示意图。
图8是训练误差性能图。
图9是spread为0.5时的输出图像示意图。
图10是spread为0.5时的误差性能图。
图11是spread为5时的输出图像示意图。
图12是spread为5时的误差性能图。
具体实施方式
请参阅图1至图12所示:
本发明提供的基于rbf神经网络的机械臂控制方法,其方法如下所述:
步骤一、根据人脑认知系统各模块的工作原理和操作条件反射的机理,提供一种机械臂的认知学习模型机理。
根据人脑各部分的工作机制,提出一种以小脑-基底神经节操作条件反射为主要学习机制的认知学习模型,使智能体系统通过行为网络,评价网络和监督器的作用,进行不断学习。
如图1所示,行为网络由小脑模块和基底神经节模块来共同实现,是向外界探索的行为,通过概率式行为选择来实现。小脑模块司职于监督式学习,监督器为给定的信号,其给出的监督行为和概率式行为经过协调因子的加权作用成的复合行为与外界环境产生交互。当取得正向的学习效果,即给出奖励信号;当取得负向的学习效果,即给出处罚信号。基底神经节模块接收到奖惩信号后,输出结果至行为网络,进行下一轮学习。经过多次迭代和重复学习,行为网络不断地在线进行调整,智能系统能够采集到大量的行为状态和训练数据信息,这些探索信息也可成为监督器的学习数据库。通过操作条件训练,该行为网络能够逐渐找到最适合自身的行为。
步骤二、提出一种基于小脑-基底神经节的行为认知模型和混合学习算法。
模型的混合学习算法的核心是:探索行为ae,监督行为as,两者进行加权求和得到复合行为af,即:
af←ωae+(1-ω)as(1)
1)、概率式行为选择使用行为策略πa(s),它是状态到行为的映射,用一个参数为θ的rbf网络进行逼近,类似热力学系统,智能体系统状态迁移的随机性表现出一定的统计规律,令它的探索行为选择服从概率分布,即blotzmann-gibbs分布:
其中,t为热力学温度,kb为玻尔兹曼常数,
将公式推演,探索行为ae替代状态s,ε(s)=ε(ae)=(ae-aa)2,t表示行为探索程度,即温度越高,探索程度越大,对于每一个确定的t,系统都有其对应的平衡点;
2)、用评价值函数v(s)评价行为的正负效果,用rbf网络进行逼近,函数为:
v(s)=e{rt+1+γv(st+1)}(3)
用奖惩信息rt+1和下一次迭代产生的评价值v(st+1)估计二次评价信号δ:
δ=rt+1+γv(st+1)-v(st)(4)
其中,0<γ<1为评价奖惩因子;
3)、模型中给监督器一个先验知识集,作为行为网络的期望映射,行为策略πa(s)中参数θ的更新由小脑模块和基底神经节模块共同实现,即:
θ←θ+ωδθbg+(1-ω)δθcb(5)
用于权值调整的误差指标为:
采用梯度下降法,网络权值的学习算法为:
其中,η∈[0,1]为学习速率,δ为二次评价信号;
4)、协调因子ω表示小脑的监督学习在行为网络的认知过程中占的比重,在学习控制过程的初始阶段,概率行为误差较大,行为网络采集到的状态信息较少且不准确,监督器的监督学习占有较大比重,但随着迭代次数的增多,后阶段小脑和基底神经节在其中的起的作用发生了变化,小脑模块的监督器在学习过程中的作用不断减少,强化机制起了主导,将协调因子用指数增加形式表示:
步骤三、基于径向基函数网络的小脑-基底神经节操作条件学习算法设计,采用人工神经网络和强化学习方法建立一个能使机械臂自主学习的数学模型。
自主学习的数学模型利用rbf神经网络来实现。rbf神经网络具有三层结构:输入层、隐含层、输出层,具有相同的“感觉-联想-反应”的体系结构。图2为径向基函数神经元模型。输入层对应着感觉神经元的节点,隐含层对应着联想神经元的节点,输出层对应着反应神经元的节点。输入层只起到传递信号的作用,输入层将信号传递给隐含层后,用rbf作为隐单元的“基”构成隐含层对其进行处理转换,它们两层之间的连接权值为1。隐含层采用的是非线性优化策略,而输出层采用的是线性优化策略。图3是径向基函数网络结构模型。
rbf神经网络学习算法需要求解3个参数:基函数的中心、方差以及隐含层到输出层的权值;
1)、径向基函数的学习中心ti(i=1,2,…,i)采用k-均值聚类算法,假设聚类中心有i个(i的值由先验知识决定),设ti(n)(i=1,2,…,i),是第n次迭代时基函数的中心,k-均值聚类算法的具体步骤如下:
第一步:对聚类中心执行初始化,即根据经验从训练样本中集中随机选取i个不同的样本作为初始中心ti(0)(i=1,2,…,i),设置迭代步数n=0;
第二步:随机输入训练样本xk;
第三步:寻找训练样本xk离哪个中心最近,即找到i(xk)使其满足:
i(xk)=argmin||xk-ti(0)||,i=1,2,…,i(10)
第四步:更新调整聚类中心,xk的加入使得第i类的聚类中心发生了改变,新的聚类中心等于:
ti(n+1)=ti(n)+η[xk(n)-ti(n)],i=i(xk)
ti(n+1)=ti(n),其他(11)
第五步:判断算法收敛与否,通常会给聚类中心值的变化设定一个阈值,计算聚类中心的变化,如果小于这个值,停止往下计算,如果聚类中心仍变化,那么算法没有收敛,跳回第二步继续迭代,最终的中心取ti(n);图4为k-均值聚类算法的可视流程图。
2)、径向基函数的方差σi(i=1,2,…,i)
中心固定后,必须立即确定基函数的方差σ,基函数为高斯函数:
方差:
3)、径向基函数的学习权值wij(i=1,2,...,i,j=1,2,...,j)
rbf网络输出层的神经元只是对隐含层神经元的输出加权求和,rbf网络的实际输出为:
y(n)=g(n)w(n)(13)
输入层的每个神经元对应一个输入变量,令其神经元数为n,输入向量为x=(x1,x2,...,xn)t,隐含层的每一个节点对应一个高斯基函数,隐含层节点数为j,隐含层输出h=[hj]t,hj为隐含层第j个神经元的输出,其中c为隐含层第j个神经元高斯基函数中心点的坐标向量c=(c1,c2,...,cj)t,bj为隐含层第j个神经元高斯基函数的宽度(基宽向量)b=(b1,b2,...,bj)t。在第三层即输出层中,神经网络权值w=[w1,w2,...,wm]t。网络输出为y(t)=wth=w1h1+...+wmhm,
对于此前的模型中提到的行为网络和评价网络,都采用相同的rbf网络结构,输入是初始状态s0,行为网络的权值用θ表示,评价网络的权值用w表示;图5为认知学习算法流程图。
步骤四、采用基于径向基函数网络的小脑-基底神经节操作条件认知学习模型,控制机械臂。在matlab中,建立机械臂仿真实验模型。
多关节机械臂是一种非线性的系统,在此简化为两个关节的理想模型,采用计算力矩控制方法。
m(q)q”+c(q,q')q'+g(q)=τ+d(15)
其中,
其设置参数如下:机械臂长度:大臂长l1=小臂长l2=0.5m。系统初始状态q0=[0,0]t,q'0=[0,0]t,高斯函数的参数取ci=[-1,-0.5,0,0.5,1]和基宽b=10,隐层的节点数选为10,每个节点的初始权值向量w设为0,自适应律的增益取γm=100,γc=100,γg=100。
使机械臂能够按照给定的样本点进行训练,拟合轨迹曲线后,按照轨迹进行运动。
在matlab软件中,。应用newrb()函数可以创建径向基函数网络,调用方式如下:
net=newrbe(p,t,spread)
其中,p为r×q输入向量,t为s×q期望输出向量,即目标值,r为输入向量或矩阵的维数,q为训练样本的个数,s为输出向量的维数。spread为径向基层的散布常数,缺省值为1。如果要向构建的径向基网络中添加节点,可在函数中添加多个参数,隐含层节点添加到均方误差达到要求为止。以下为函数的语法格式:
net=newrb(p,t,spread,mn,df)
其中,goal为指定的均方误差,缺省值为0。mn是指隐含节点的最大个数,默认值是q,df指示每次显示所添加的神经元个数。
根据机械臂需要的轨迹,给出21个训练样本。下面定义原始数据:
x=0:20;
y=[1,3,4,6,9,14,21,29,38,48,58,66,73,79,85,89,93,95,97,99,100];接下来进行网络的设计,代码为:
下面开始测试数据,代码为:
步骤五、在matlab中,通过改变参数和变量进行可行性的测试,验证基于rbf神经网络的机械臂控制方法。
1)使用初始值进行测试的结果及初步分析
初始变量参数的设置值如下:均方误差goal=0;径向基函数的扩散速度(散布常数)spread=1;
原始数据是x从0到20的21个数据点,点和点之间的距离为1。测试数据采用x从0到20,间距为0.5的数据点。如图6为rbf网络对训练样本点拟合的程序执行结果。
训练时间time_cost=1.7719s,图7为训练时间及参数表。图8是训练误差性能图。
命令行输出了添加隐含节点数目和sse下降的过程。
newrb,neurons=0,mse=1349.25
newrb,neurons=2,mse=734.587
newrb,neurons=3,mse=544.161
newrb,neurons=4,mse=296.501
newrb,neurons=5,mse=205.978
newrb,neurons=6,mse=138.405
newrb,neurons=7,mse=95.8257
newrb,neurons=8,mse=86.2323
newrb,neurons=9,mse=57.6582
newrb,neurons=10,mse=29.0238
newrb,neurons=11,mse=10.2131
newrb,neurons=12,mse=9.33213
newrb,neurons=13,mse=5.79217
newrb,neurons=14,mse=3.89062
newrb,neurons=15,mse=0.882868
newrb,neurons=16,mse=0.757605
newrb,neurons=17,mse=0.165323
newrb,neurons=18,mse=0.0372311
newrb,neurons=19,mse=0.0358684
newrb,neurons=20,mse=4.21501e-029
newrb,neurons=21,mse=1.83917e-027
可见,rbf网络比较好的拟合了轨迹的形状。
2)改变不同变量测试的结果及初步分析
通过改变径向基函数的几个训练参数,也会产生不同的仿真结果,包括拟合的程度,训练误差,以及满足条件的隐含神经元节点数目等。
通过改变散布常数的值观察网络拟合。其初始值spread=1,下面分别将其改为0.5和5,然后观察其输出图像。
当spread=0.5时,输出图像如图9所示.
训练时间为1.6969s。从输出图像可以看出,散布常数为0.5时,轨迹拟合的程度不如其值为1的时候,选择得过小,造成了过学习。误差性能图像如图10所示。
命令行输出了添加隐含节点数目和网络均方误差mse下降的过程。
newrb,neurons=0,mse=1349.25
newrb,neurons=2,mse=1083.85
newrb,neurons=3,mse=970.283
newrb,neurons=4,mse=832.636
newrb,neurons=5,mse=738.65
newrb,neurons=6,mse=604.904
newrb,neurons=7,mse=474.016
newrb,neurons=8,mse=362.99
newrb,neurons=9,mse=268.685
newrb,neurons=10,mse=175.586
newrb,neurons=11,mse=106.236
newrb,neurons=12,mse=58.7686
newrb,neurons=13,mse=29.4558
newrb,neurons=14,mse=12.8321
newrb,neurons=15,mse=4.65652
newrb,neurons=16,mse=1.55368
newrb,neurons=17,mse=0.546924
newrb,neurons=18,mse=0.198805
newrb,neurons=19,mse=0.0843713
newrb,neurons=20,mse=9.93589e-029
可以看出,散布常数spread减小后,均方差明显增大,到神经元数目增加到第17个的时候,mse才小于1。
当spread=5时,输出图像如图11所示.
训练时间为1.7474s。当散步常数spread为5的时候,轨迹中间部分拟合得较好,但在两端的偏差比较大。误差性能图像如图12所示。
通过误差性能图得到的结论与输出图象看到的类似,误差下降得较快,在横轴4到19的点,偏差比较小,但在两头出现了尖点,偏差较大,同时通过下式的均方差表可以得到相同的结论。
newrb,neurons=0,mse=1349.25
newrb,neurons=2,mse=105.28
newrb,neurons=3,mse=29.3692
newrb,neurons=4,mse=0.452869
newrb,neurons=5,mse=0.411198
newrb,neurons=6,mse=0.263052
newrb,neurons=7,mse=0.0828302
newrb,neurons=8,mse=0.0645026
newrb,neurons=9,mse=0.0550501
newrb,neurons=10,mse=0.0354879
newrb,neurons=11,mse=0.028415
newrb,neurons=12,mse=0.0274097
newrb,neurons=13,mse=0.0228389
newrb,neurons=14,mse=0.0164181
newrb,neurons=15,mse=0.011896
newrb,neurons=16,mse=0.0115202
newrb,neurons=17,mse=0.0114105
newrb,neurons=18,mse=0.00630194
newrb,neurons=19,mse=0.0062908
newrb,neurons=20,mse=4.891
本仿真实验的工作是在matlab的平台上通过调用rbf神经网络工具箱函数来完成的,通过21组的训练数据,rbf网络能很好地进行训练,当神经元数目在15个以上时,能很好地控制均方误差,使机械臂实现自主学习。
深圳SEO优化公司普洱seo推荐韶关网站优化软件多少钱十堰seo网站优化报价常德网络营销公司乐山阿里店铺运营推荐聊城SEO按天扣费价格西宁阿里店铺托管忻州关键词按天收费推荐宜宾网站优化按天收费价格海东SEO按天扣费价格淮安网站推广工具报价大庆网站优化按天收费公司白银英文网站建设价格郴州企业网站建设哪家好南山网络营销推荐鹤岗网站seo优化价格广安网站制作设计价格哈尔滨网站优化按天扣费推荐徐州seo排名价格迪庆阿里店铺托管思茅至尊标王推荐汕头关键词按天计费推荐韶关网站开发坪地网站排名优化多少钱吉安网站设计模板报价徐州百度竞价哪家好大鹏网站搜索优化公司桐城网页制作哪家好拉萨百度网站优化价格凉山优秀网站设计歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运