利用神经网络解决机器人动力学问题

利用神经网络解决机器人动力学问题

总览

提出了利用神经网络解决机器人动力学问题的新观念。主要介绍了神经网络相关技术背景,BP神经网络的基本原理。在Matlab中建立了一个6自由度的机器人,采用BP神经网络和径向神经网络,进行了对机器人动力学预测的仿真验证。结果表明神经网络能有效地解决该问题。

背景介绍

在开发机器人牵引技术过程中,需要对机器人进行动力学建模。而机器人动力学建模通常由牛顿欧拉法和牛顿拉格朗日法,两种方法推导过程都较为复杂,且计算量随着机器人自由度的增加而迅速增加,计算结果容易出错。我受到人工智能的启发,灵机一动,想到可以尝试采用神经网络的方法来解决该问题,让机器人自己学会对动力学的建模。

神经网络是一个让人感觉很妙不可言的人工智能技术。在机器学习领域,人工神经网络的计算模型灵感来自动物的中枢神经系统,它是对人脑的抽象简化和模拟,它是根植于神经科学,数学,统计学,物理学,计算机科学和工程学的一门技术。它可以根据大量的输入和输出历史数据,可以对一件事物,一个过程,一个函数进行预测估计。神经网络理论可应用于模式识别、自动控制、信号处理,图像处理,数据挖掘,医疗,经济金融,气象等领域。

 技术原理

BP  神经网络结构

我采用了BP神经网络与径向神经网络两种典型的神经网络结构,其中70%的实际应用均是采用BP神经网络结构,故我将重点介绍其原理。


图1

 

图1显示了一个具有R个输入,S个logsig神经元构成的单层BP神经网络,其中,左边的是详细结构图。右边的是以向量形式表示的结构图。

BP算法

BP算法沿着沿误差减小最快的方向,也就是梯度反向改变权值和偏差。

Xk代表当前权值和偏差,Xk+1代表迭代的下一次权值与偏差,xk+1代表下一次权值与偏差,gk为当前误差函数的梯度,ak代表学习速率。推导过程如下:


  如果你不想知道推导过程,那么只需要看上面中的两个所以(有三个点的地方)的内容,就可以知道所需要的误差量是什么样的了;如果想要想弄明白的话,或许需要自己在稿子上画画看推导推导。

Matlab仿真

仿真思路

1.首先采用robotictoolbox ,建立了一个SIASUN 六自由度机器人。包含了DH参数,杆件质量,质心矢量,转动惯量,摩擦系数等动力学参数信息。
<

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值