CN108621159A - 一种基于深度学习的机器人动力学建模方法 - Google Patents
一种基于深度学习的机器人动力学建模方法 Download PDFInfo
- Publication number
- CN108621159A CN108621159A CN201810408136.4A CN201810408136A CN108621159A CN 108621159 A CN108621159 A CN 108621159A CN 201810408136 A CN201810408136 A CN 201810408136A CN 108621159 A CN108621159 A CN 108621159A
- Authority
- CN
- China
- Prior art keywords
- joint
- input
- information
- data
- moment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/1605—Simulation of manipulator lay-out, design, modelling of manipulator
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Feedback Control In General (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种基于深度学习的机器人动力学建模方法,属于智能机器人领域,收集数据划分为训练集和数据集,构建动力学模型搭建RNN循环神经网络;按时间步划分训练集输入到输入隐藏层,转化为三维数据到达GRU cell层,把当前输入的信息与之前的信息相结合,计算前一时刻的状态信息参与到新生成的状态的比例;然后将计算得到的当前的候选状态和前一个时间步时刻的信息通过更新门选择,得到当前时刻的隐藏层状态,传递到下一时间步,输出到输出隐藏层,得到预测值小于等于误差阈值采集的真实结果,为最优值。最后利用数据集对GRU门控循环单元网络进行检测。本发明提高扭矩预测的精度,大大减小输入信号的训练时间,减小了传统反向传播的梯度误差。
Description
技术领域
本发明属于智能机器人领域,具体是一种基于深度学习的机器人动力学建模方法。
背景技术
机器人动力学模型的重要应用是控制机器人,通过动力学方程可以准确地计算出机器人运动需要的力矩;但是,由于扰动、弹性、非线性摩擦以及负载变化等因素的影响,很多动力学模型的参数难以被确定,传统的动力学方法(如拉格朗日、牛顿欧拉、凯恩)很难对机器人进行精准的动力学建模,无法满足精准的实际应用。
近些年来,深度学习的发展使得这一问题的解决迎来了转机;神经网络具有极强的非线性映射能力,通过训练一定数量的数据,使得在建模的过程中不用人为的考虑不确定性因素的影响,可以很好提高机器人动力学模型的预测精度。
目前应用的ESN(Echo State Network,回声状态网络)机器学习算法已经应用于推断机器人的结构和环境特征,模拟复杂的机器人系统;该算法包括两个隐藏层:自组织层和递归层,它是一个实时的机器人模型学习算法,能够很好的适应环境的变化。但是,该ESN机器学习算法没有充分考虑输入信号的特性,通常忽略输出反馈连接。因此,ESN的回波状态特性在一定时间内不能完全满足,不能提供更高的精度和更快的收敛速度进行时间序列预测。
基于动力学模型的机器人运动控制需要对机器人各关节扭矩实时精确预测,对于实现机器人功能完美性和安全性是必要的;机器人动力学模型是变化的,由于输入信号的不断变化和机器人系统的非线性摩擦、负载变化等因素的影响,实际预测的扭矩可能和真正的运动扭矩有一些差别,这时需要我们对建好的动力学模型进行实时更新,以减小误差,提升精度。
发明内容
本发明为了在实时学习过程中,提高扭矩预测的精度,精确地模拟复杂的机器人系统;提出了一种基于深度学习的机器人动力学建模方法。
具体步骤如下:
步骤一、针对某机器人,收集该机器人的关节位置,关节速度,关节加速度以及对应的扭矩数据,并划分为训练集和数据集;
步骤二、构建针对机器人的关节位置,关节速度和关节加速度的动力学模型T;
矢量q表示关节位置;表示关节速度;表示关节加速度;
T表示要学习的扭矩,代表着控制关节运动的力(矢量)进而控制机械臂的运动趋势;M(q)表示惯性矩阵,表示结合了科氏力、向心力、摩擦力和重力的作用;表达式为: 表示科氏力,表示摩擦力;g(q)表示重力。
为模拟函数,模拟其他扰动、弹性、非线性摩擦或负载变化等因素;如:机械设计中的弹性、质量或惰性的模型参数误差、振动效应、摩擦、耦合和传感器噪音。
步骤三、根据动力学模型τ设置输入向量x的目标学习函数y;
y=f(x);y=τ,x为输入的矢量值,包括机器人的关节位置,关节速度和关节加速度。
步骤四、搭建包括输入隐藏层,GRU cell层和输出隐藏层的RNN循环神经网络,用于对目标学习函数y进行优化;
GRU cell层包括更新门(Update Gate)和重置门(Reset Gate);
步骤五、针对训练集,按时间步进行划分,并输入到RNN循环神经网络的输入隐藏层,经过运算转化为三维数据到达GRU cell层;
Xt=Wi·xt+bi
xt是t时刻起始输入,Xt是通过输入隐藏层后t时刻要输入GRU的向量,Wi为输入隐藏层的权重;bi为输入隐藏层的偏置值;
将原始的训练集三维数据转化为二维数据用weights矩阵乘法进行线性变换预处理,然后通过输入权重的Batch-Normalization批标准化处理,经过运算之后再转化为三维数据到达GRU cell层;
步骤六、当三维数据进入GRU cell层中,根据规则判断是否有用,如果是,进入重置门把当前输入的信息与之前的信息相结合,进入步骤七;否则,进入步骤九,通过更新门决定有多少之前的信息向下传递到当前状态。
规则是指:遇到新的关节q’的位置,速度和加速度;寻找和其相接近的对应关节的位置、速度加速度的信息,将其关联在一起,将其对应的扭矩添加到相关联的扭矩信息中,遇到和原来关节位置,速度,加速度一样的数据,在以前的信息中寻找前后序列相接近的序列数据;这里指关节位置,速度,加速度,将其对应的扭矩代替原来的,同时过滤掉原来的数据。
步骤七、当三维数据输入到达重置门时,计算前一时刻的状态信息参与到新生成的状态的比例rt;
针对时间步t时刻,比例rt计算公式如下:
rt=σ(Wr·[ht-1,Xt]+br);
σ为sigmoid函数;Wr表示重置门的权重;br是重置门的偏置值;Xt为t时刻的输入向量,包括关节位置,关节速度和关节加速度;ht-1保存的是前一个时间步t-1时刻的信息;
步骤八、根据t时间步的比例rt,计算输入到达重置门的三维数据当前的候选状态进入步骤十;
计算公式如下:
表示当前候选状态的权重;bh是隐藏层的偏置值;
步骤九、当三维数据输入到达更新门时,计算前一时刻的信息传递到当前状态的比例zt;
针对t时间步,比例zt计算公式如下:
zt=σ(Wz·[ht-1,Xt]+bz);
Wz表示更新门的权重;bz是更新门的偏置值;
步骤十、把当前的候选状态和前一个时间步t-1时刻的信息通过更新门的选择,得到当前时刻的隐藏层状态,并将其传递到下一时间步。
步骤十一、当前t时间步训练集的数据全部传输完毕,得到当前t时间步的时刻对应的隐藏层状态值ht;
步骤十二、根据当前t时间步的时刻对应的隐藏层状态值ht,并输出到RNN循环神经网络的输出隐藏层,得到t时间步的动力学模型的预测值;
yt=WO·ht+bo
WO表示输出的权重;bo表示输出的偏置值;
步骤十三、利用均方误差训练公式MSE对输出隐藏层输出的最终测试结果和采集的真实结果进行对比;
均方误差训练公式如下:
d代表关节的数量,n代表数据的数量,j代表关节累加的基数为从1开始,t代表时间步累加的基数为从1开始,代表采集的真实结果,即为输入的实际扭矩,代表着通过动力学模型预测出来的扭矩,即最终的测试结果。
步骤十四、判断对比结果是否小于等于误差阈值,如果是,则结束,最终的Wr,Wz,WO,Wi,br,bh,bz,bo,bi为RNN循环神经网络的最优值。否则,通过优化器以一定的学习率朝着误差减小的方向来改变权重和偏置值,然后进入步骤五重复测试N次,直至得到RNN循环神经网络Wr,Wz,WO,Wi,br,bh,bz,bo,bi的最优值;
步骤十五、利用数据集对得到最优值Wr,Wz,WO,Wi,br,bh,bz,bo,bi的GRU门控循环单元网络进行检测。
本发明的优点在于:
1)、一种基于深度学习的机器人动力学建模方法,很好的适应动力学模型的实时变化,提高扭矩预测的精度,精确地模拟复杂的机器人系统。
2)、一种基于深度学习的机器人动力学建模方法,设计了GRU门控循环单元,减小了传统RNN神经网络的梯度消失和梯度爆炸使得训练的模型有较长时间范围的记忆功能,对处理时间和序列相关的问题有很大的优势,大大减小输入信号的训练时间,对于训练的样本在几秒内完成训练。
3、一种基于深度学习的机器人动力学建模方法,利用了一种时间的反向传播算法BPTT(back propagation through time),减小了传统反向传播的梯度误差,对动力学模型进行实时更新,大大提高预测的精度。
4)、一种基于深度学习的机器人动力学建模方法,可以动态的处理可变长度的序列,通过使用dynamic rnn,返回两个参数:outputs,last states,其中outputs是每一个迭代隐藏状态的输出,last_states是最终的状态。
附图说明
图1为本发明一种基于深度学习的机器人动力学建模方法流程图;
图2为本发明搭建的神经网络模型结构图;
图3为本发明GRU cell内部的实际工作流程;
具体实施方式
下面结合附图对本发明的具体实施方法进行详细说明。
本发明一种对于机器人动力学模型进行精准控制的方法,利用深度学习的方法对机器人动力学进行建模,在智能机器人领域进行运动控制和行为预测。为了从长时间序列数据中学习,采用基于RNN(Recurrent Neutral Network循环神经网络)中的GRU(GateRecurrent Unit门控循环单元)的深度学习方法,对机器人的动力学进行建模,为后续基于机器人动力学模型的准确运动控制提供保障。在RNN神经网络模型的输入端输入每个关节的位置、速度和加速度,输出端得到每个关节的扭矩,并对下一个动作进行预测,提高机器人运动控制精度。
与传统的前向神经网络(Feedforward Network)不同,LSTM(Long Short TimeMemory长短时记忆模型网络)对于之前的输入有选择的记忆,有助于判断当前的输入,在机器人的连续动作当中(位置、速度、加速度),处理时序输入有很大的优势,并且RNN是循环网络,可以很好的存储信息,其中LSTM解决了不同长度信息关联的问题。再此基础上,通过使用LSTM的变体GRU(Gate Recurrent Unit们控制循环单元),在相近预测精度的基础上,简化了网络结构,加快了收敛的时间。与传统的RNN相比,在输入端输入每个关节的位置、速度、加速度的信息可以随时关联,提高回归模型收敛的速度和准确性。
利用TENSORFLOW神经网络架构在Pycharm中进行的,可视化的部分是利用tensorboard实现的。
如图1所示,具体步骤如下:
步骤一、针对某机器人,收集该机器人的关节位置,关节速度,关节加速度以及对应的扭矩数据,并划分为训练集和数据集;
收集实验数据:包括对于机器人的位置,速度,加速度,以及对应的扭矩采集到19000个数据,为了达到很好的泛化效果,提取了15000个数据为训练集,4900个数据作为测试集。
机器人有7个关节的自由度,7个关节的机器人维度是RT*1。数据的每一行有28列,前21列代表着7自由度各个关节的位置,速度,加速度输入,后7列代表着每个关节的扭矩对应着输入的标签。分割好数据之后,保存为csv格式以便导入训练集和测试集。
步骤二、构建针对机器人的关节位置,关节速度和关节加速度的动力学模型τ;
矢量q表示关节位置;表示关节速度;表示关节加速度;
T表示要学习的预测扭矩,代表着控制关节运动的力(矢量)进而控制机械臂的运动趋势;M(q)表示惯性矩阵,表示结合了科氏力、向心力、摩擦力和重力的作用;表达式为: 表示科氏力,表示摩擦力;g(q)表示重力。
为模拟函数,模拟其他扰动、弹性、非线性摩擦或负载变化等因素;如:机械设计中的弹性、质量或惰性的模型参数误差、振动效应、摩擦、耦合和传感器噪音。
步骤三、根据动力学模型τ设置输入向量x的目标学习函数y;
y=f(x);y=τ,x为输入的矢量值,包括机器人的关节位置,关节速度和关节加速度。
步骤四、搭建包括输入隐藏层,GRU cell层和输出隐藏层的RNN循环神经网络,用于对目标学习函数y进行优化;
如图2所示,RNN的主体结构由三部分组成:in--hidden,GRU cell,out--hidden;
输入的部分input包括机器人关节位置、速度、加速度,还有实际的扭矩,其中关节位置、速度、加速度进入输入隐藏层in--hidden,到GRU cell,再通过输出隐藏层out--hidden得到预测的扭矩值,和实际的扭矩cost做误差分析,进行训练优化模型train。
使用GRU(门控循环单元)神经网络来处理实时的机器人模型,其中GRU cell层中包括更新门(Update Gate)和重置门(Reset Gate)。门的作用相当于一个数据信息的滤波器,把有用的信息筛选出来。重置门的作用是如何把当前输入的信息和之前的信息相结合,更新门的作用是决定留下多少之前的记忆。
当信息进入GRU神经网络当中,可以根据规则来判断是否有用。信息如果有则用进入重置门把当前输入的信息与之前的信息相结合,否则,通过更新门决定有多少之前的信息向下传递到当前状态。并且通过GRU网络模型的递归作用,使得之前隐藏层的状态也参与到当前的决策中,门控循环单元随着时间的变化不会遗忘以前的信息,它会保留相关的信息并传递到下一个单元,因此它利用全部信息而避免了梯度消失问题,从而提高了需要预测的扭矩。
步骤五、针对训练集,按时间步进行划分,并输入到RNN循环神经网络的输入隐藏层,经过运算转化为三维数据到达GRU cell层;
如图3所示,是GRU cell内部的实际工作流程,在当前神经单元,输入的机器人关节位置、速度、加速度,通过更新门和重置门,把以前的信息整合到一起,得到此时的输出,并向下传递。
设置RNN的参数:TIME_STEPS=5,BATCH_SIZE=100,NUM_UNITS=10,LR=0.9;
输入在in_hidden原始的数据是训练集三维数据,将其转化为二维数据后用weights矩阵乘法,通过输入权重的Batch-Normalization批标准化处理,之后再转化为三维数据到达GRU cell层;
Xt=Wi·xt+bi
xt是t时刻起始输入,Xt是通过输入隐藏层后t时刻要输入GRU的向量,Wi为输入隐藏层的权重;bi为输入隐藏层的偏置值;
步骤六、当三维数据进入GRU cell层中,根据规则判断是否有用,如果是,进入重置门把当前输入的信息与之前的信息相结合,进入步骤七;否则,进入步骤九,通过更新门决定有多少之前的信息向下传递到当前状态。
到达GRU门控循环单元的关键部分,设置初始的状态为0,在训练的过程中,在选择要忘记的数据,cell层选择的是GRU cell,调用了cell=tf.nn.rnn_cell.GRUCell(10)。并且outputs和states,用tf.nn.dynamic_rnn来进行更新循环;
规则是指:遇到新的关节q’的位置,速度和加速度;寻找和其相接近的对应关节的位置、速度加速度的信息,将其关联在一起,将其对应的扭矩添加到相关联的扭矩信息中,遇到和原来关节位置,速度,加速度一样的数据,在以前的信息中寻找前后序列相接近的序列数据(这里指关节位置,速度,加速度),将其对应的扭矩代替原来的,同时过滤掉原来的数据。
步骤七、当三维数据输入到达重置门时,计算前一时刻的状态信息参与到新生成的状态的比例rt;
针对时间步t时刻,比例rt计算公式如下:
rt=σ(Wr·[ht-1,Xt]+br);
σ为sigmoid函数;Wr表示重置门的权重;br是重置门的偏置值;Xt为t时刻的输入向量;ht-1保存的是前一个时间步t-1时刻的信息;
ht-1和Xt先经过线性变换与更新门权重Wr相乘,再相加投入Sigmoid激活函数以输出激活值,所以rt在0到1之间,表示前一时刻的状态信息参与到新生成的状态的比例。
步骤八、根据t时间步的比例rt,计算输入到达重置门的三维数据当前的候选状态进入步骤十;
计算公式如下:
表示t时刻加入到当前状态的候选值,表示当前候选状态的权重;tanh为激活函数;bh是隐藏层的偏置值;
先计算rt与ht-t的Hadamard乘积,确定以前要保留多少信息,参与到当前的候选状态中,然后加上当前的输入Xt做线性变换,把结果投入tanh双曲正切的激活函数中,得到当前的候选状态。
步骤九、当三维数据输入到达更新门时,计算前一时刻的信息传递到当前状态的比例zt;
针对t时间步,比例zt计算公式如下:
zt=σ(Wz·[ht-1,Xt]+bz);
Wz表示更新门的权重;bz是更新门的偏置值;
ht-1和Xt先经过线性变换与更新门权重Wz相乘。更新门将这两部分信息相加并投入到Sigmoid激活函数中,所以zt在0到1之间,表示前一时刻的信息传递到当前状态的比例。
步骤十、把当前的候选状态和前一个时间步t-1时刻的信息通过更新门的选择,得到当前时刻的隐藏层状态,并将其传递到下一时间步。
该信息符合算法认证,将输入的序列数据和前一步的最终记忆相结合,结合后的信息作为这一时间步的最终记忆,并将其传递到下一时间步。
步骤十一、当前t时间步训练集的数据全部传输完毕,得到当前t时间步时刻对应的隐藏层状态值ht;
步骤十二、根据当前t时间步时刻对应的隐藏层状态值ht,并输出到RNN循环神经网络的输出隐藏层,得到t时间步通过动力学模型的预测值;
在out_hidden层,首先把outputs转化为二维数据,然后对其进行BN处理,防止过拟合的现象发生,并且使数值可以有很好的分布,最后通过WX矩阵乘法得到预测的值。
预测值计算如下:
yt=WO·ht+bo
yt表示t时刻的输出,WO表示输出的权重;bo表示输出的偏置值;
步骤十三、利用均方误差训练公式MSE对输出隐藏层输出的最终测试结果和采集的真实结果进行对比;
采用loss=tf.nn.contrib.legacy_seq2seq.sequence_loss_by_example方程来计算每步的误差,最后的误差cost用均方误差(MSE)来计算,优化器选择tf.train.AdagradOptimizer,对于出现不同频率的参数,自动调整学习率。
均方误差训练公式如下:
d代表关节的数量,n代表数据的数量,j代表关节累加的基数为从1开始,t代表时间步累加的基数为从1开始,代表采集的真实结果,即为输入的实际扭矩,代表着通过动力学模型预测出来的网络,即最终的测试结果。
步骤十四、判断对比结果是否小于等于误差阈值,如果是,则结束,最终Wr,Wz,WO,Wi,br,bh,bz,bo,bi为RNN循环神经网络的最优值。否则,通过优化器以一定的学习率朝着误差减小的方向来改变权重和偏置值,然后进入步骤五重复测试N次,直至得到GRU门控循环单元网络Wr,Wz,WO,Wi,br,bh,bz,bo,bi的最优值;
本实施例选择循环100次,在训练的数据集里面BATCH_SIZE=100,有150组,每20个BATCH显示一次误差,在这100次循环中,观测误差训练的效果。
同时,对测试集循环50次,同样BATCH_SIZE=100,测试集有49组,每20个BATCH显示一次误差,在这10次循环中,观测误差测试的效果。
步骤十五、利用数据集对得到最优值Wr,Wz,WO,Wi,br,bh,bz,bo,bi的GRU门控循环单元网络进行检测。
实验误差达到10-3量级,收敛的时间也在几十秒内完成,在速度和误差方面有很好地实现。
本发明控制门本身是自我加权的,会在整个学习阶段中根据一个算法有选择性的更新,门网络会增加计算复杂度,从而增加参数化,进而引进额外的计算误差。
在训练GRU神经网络的过程中,采用误差的反向传播算法(BPTT)处理序列数据,在使用反向传播算法的时候需要将整个时间序列上的误差传回来。在这里输出ht-1的误差由ht决定,并且要对所有控制门传播回来的梯度求和,而ht在更新时需要加上ht+1;这样,ht的误差不仅仅包含当前时刻t的误差,还包括t时刻之后所有时刻的误差;就可以从t时刻向后计算任意时刻的梯度,利用随机梯度下降完成梯度的更新。利用此算法进行控制门的更新,从而实时的减小计算误差,提高预测扭矩的精度,来完善运动学模型。
本发明一种基于深度学习的机器人动力学建模的方法,采用了GRU(门控循环单元)神经网络,通过一种可根据输入信号的自相关特性自适应调整状态更新模式的可变存储长度的算法,和本身较长时间范围的记忆功能,使得可以很好的适应机器人动力学模型的实时变化,提高提高扭矩预测的精度和训练时间,精确地模拟复杂的机器人系统。
Claims (3)
1.一种基于深度学习的机器人动力学建模方法,其特征在于,具体步骤如下:
步骤一、针对某机器人,收集该机器人的关节位置,关节速度,关节加速度以及对应的扭矩数据,并划分为训练集和数据集;
步骤二、构建针对机器人的关节位置,关节速度和关节加速度的动力学模型τ;
矢量q表示关节位置;表示关节速度;表示关节加速度;
τ表示要学习的扭矩,代表着控制关节运动的力(矢量)进而控制机械臂的运动趋势;M(q)表示惯性矩阵,表示结合了科氏力、向心力、摩擦力和重力的作用;表达式为: 表示科氏力,表示摩擦力;g(q)表示重力;
为模拟函数,模拟其他因素;
步骤三、根据动力学模型τ设置输入向量x的目标学习函数y;
y=f(x);y=τ,x为输入的矢量值,包括机器人的关节位置,关节速度和关节加速度;
步骤四、搭建包括输入隐藏层,GRU cell层和输出隐藏层的RNN循环神经网络,用于对目标学习函数y进行优化;
GRU cell层包括更新门和重置门;
步骤五、针对训练集,按时间步进行划分,并输入到RNN循环神经网络的输入隐藏层,经过运算转化为三维数据到达GRU cell层;
Xt=Wi·xt+bi
xt是t时刻起始输入,Xt是通过输入隐藏层后t时刻要输入GRU的向量,Wi为输入隐藏层的权重;bi为输入隐藏层的偏置值;
步骤六、当三维数据进入GRU cell层中,根据规则判断是否有用,如果是,进入重置门把当前输入的信息与之前的信息相结合,进入步骤七;否则,进入步骤九,通过更新门决定有多少之前的信息向下传递到当前状态;
步骤七、当三维数据输入到达重置门时,计算前一时刻的状态信息参与到新生成的状态的比例rt;
针对时间步t时刻,比例rt计算公式如下:
rt=σ(Wr·[ht-1,Xt]+br);
σ为sigmoid函数;Wr表示重置门的权重;br是重置门的偏置值;Xt为t时刻的输入向量,包括关节位置,关节速度和关节加速度;ht-1保存的是前一个时间步t-1时刻的信息;
步骤八、根据t时间步的比例rt,计算输入到达重置门的三维数据当前的候选状态进入步骤十;
计算公式如下:
表示当前候选状态的权重;bh是隐藏层的偏置值;
步骤九、当三维数据输入到达更新门时,计算前一时刻的信息传递到当前状态的比例zt;
针对t时间步,比例zt计算公式如下:
zt=σ(Wz·[ht-1,Xt]+bz);
Wz表示更新门的权重;bz是更新门的偏置值;
步骤十、把当前的候选状态和前一个时间步t-1时刻的信息通过更新门的选择,得到当前时刻的隐藏层状态,并将其传递到下一时间步;
步骤十一、当前t时间步训练集的数据全部传输完毕,得到当前t时间步时刻对应的隐藏层状态值ht;
步骤十二、根据当前t时间步时刻对应的隐藏层状态值ht,并输出到RNN循环神经网络的输出隐藏层,得到t时间步通过动力学模型的预测值;
yt=WO·ht+bo
WO表示输出的权重;bo表示输出的偏置值;
步骤十三、利用均方误差训练公式MSE对输出隐藏层输出的最终测试结果和采集的真实结果进行对比;
均方误差训练公式如下:
d代表关节的数量,n代表数据的数量,j代表关节累加的基数为从1开始,t代表时间步累加的基数为从1开始,代表采集的真实结果,即为输入的实际扭矩,代表着通过动力学模型预测出来的扭矩,即最终的测试结果;
步骤十四、判断对比结果是否小于等于误差阈值,如果是,则结束,最终的Wr,Wz,WO,Wi,br,bh,bz,bo,bi为RNN循环神经网络的最优值;否则,通过优化器以一定的学习率来改变权重和偏置值,进而减小误差,然后进入步骤五重复测试N次,直至得到RNN循环神经网络Wr,Wz,WO,Wi,br,bh,bz,bo,bi的最优值;
步骤十五、利用数据集对得到最优值Wr,Wz,WO,Wi,br,bh,bz,bo,bi的GRU门控循环单元网络进行检测。
2.如权利要求1所述的一种基于深度学习的机器人动力学建模方法,其特征在于,所述的步骤五具体为:将原始的训练集三维数据转化为二维数据用weights矩阵乘法进行线性变换预处理,然后通过输入权重的Batch-Normalization批标准化处理,经过运算之后再转化为三维数据到达GRU cell层。
3.如权利要求1所述的一种基于深度学习的机器人动力学建模方法,其特征在于,步骤六中所述的规则是指:
遇到新的关节q’的位置,速度和加速度;寻找和其相接近的对应关节的位置、速度加速度的信息,将其关联在一起,将其对应的扭矩添加到相关联的扭矩信息中,遇到和原来关节位置,速度,加速度一样的数据,在以前的信息中寻找前后序列相接近的序列数据;这里指关节位置,速度,加速度,将其对应的扭矩代替原来的,同时过滤掉原来的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810408136.4A CN108621159B (zh) | 2018-04-28 | 2018-04-28 | 一种基于深度学习的机器人动力学建模方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810408136.4A CN108621159B (zh) | 2018-04-28 | 2018-04-28 | 一种基于深度学习的机器人动力学建模方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108621159A true CN108621159A (zh) | 2018-10-09 |
CN108621159B CN108621159B (zh) | 2020-05-19 |
Family
ID=63695181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810408136.4A Active CN108621159B (zh) | 2018-04-28 | 2018-04-28 | 一种基于深度学习的机器人动力学建模方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108621159B (zh) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109291052A (zh) * | 2018-10-26 | 2019-02-01 | 山东师范大学 | 一种基于深度强化学习的按摩机械手训练方法 |
CN109559826A (zh) * | 2019-01-30 | 2019-04-02 | 福州大学 | 一种基于表面肌电和运动信号的膝关节力矩估计方法 |
CN109702745A (zh) * | 2019-01-18 | 2019-05-03 | 华南理工大学 | 一种机器人关节波动摩擦力矩的建模方法 |
CN110414033A (zh) * | 2019-05-31 | 2019-11-05 | 太原理工大学 | 结合边缘计算和数字孪生的机械设备预测性维护方法 |
CN110450153A (zh) * | 2019-07-08 | 2019-11-15 | 清华大学 | 一种基于深度强化学习的机械臂物品主动拾取方法 |
CN110502770A (zh) * | 2018-10-11 | 2019-11-26 | 起动科技有限公司 | 基于ann预测力学参数的方法、装置、设备及存储介质 |
CN110705105A (zh) * | 2019-10-08 | 2020-01-17 | 首都师范大学 | 一种机器人逆动力学模型的建模方法及系统 |
CN111208783A (zh) * | 2019-12-30 | 2020-05-29 | 深圳市优必选科技股份有限公司 | 一种动作模仿方法、装置、终端及计算机存储介质 |
CN111207739A (zh) * | 2018-11-22 | 2020-05-29 | 千寻位置网络有限公司 | 基于gru神经网络的行人步行零速检测方法及装置 |
CN111497868A (zh) * | 2020-04-09 | 2020-08-07 | 余姚市浙江大学机器人研究中心 | 一种基于bn-lstm网络的汽车传感器故障分类方法 |
CN112171677A (zh) * | 2020-09-30 | 2021-01-05 | 桂林电子科技大学 | 基于lstm工业机器人柔性关节迟滞误差补偿控制方法 |
CN112247992A (zh) * | 2020-11-02 | 2021-01-22 | 中国科学院深圳先进技术研究院 | 一种机器人前馈力矩补偿方法 |
CN112906291A (zh) * | 2021-01-25 | 2021-06-04 | 武汉纺织大学 | 一种基于神经网络的建模方法及装置 |
CN112906887A (zh) * | 2021-02-20 | 2021-06-04 | 上海大学 | 稀疏gru神经网络加速的实现方法和装置 |
CN113706827A (zh) * | 2021-09-03 | 2021-11-26 | 浙江远图互联科技股份有限公司 | 一种居家老人生命体征的无线采集系统 |
CN113821006A (zh) * | 2020-05-07 | 2021-12-21 | 牧今科技 | 用于确定指示机器人校准质量的误差参数的值的方法和计算系统 |
CN113935338A (zh) * | 2021-10-13 | 2022-01-14 | 北京有竹居网络技术有限公司 | 基于层预测的语言翻译的方法、设备、装置和介质 |
CN113942009A (zh) * | 2021-09-13 | 2022-01-18 | 苏州大学 | 机器人仿生手抓取方法和系统 |
CN113987679A (zh) * | 2021-10-30 | 2022-01-28 | 福州大学 | 基于mogrifier-gru深度学习的列车稳定性预测方法及系统 |
CN114970305A (zh) * | 2021-12-17 | 2022-08-30 | 西安交通大学 | 一种磁控软体机器人磁性颗粒分布的预测方法 |
CN114970374A (zh) * | 2022-07-28 | 2022-08-30 | 深圳华数机器人有限公司 | 一种基于增量式动力学的负载辨识方法、系统和介质 |
US11717966B2 (en) | 2020-05-07 | 2023-08-08 | Mujin, Inc. | Method and computing system for determining a value of an error parameter indicative of quality of robot calibration |
CN117292421A (zh) * | 2023-09-12 | 2023-12-26 | 南通大学 | 一种基于gru的连续性视线估计深度学习方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002205289A (ja) * | 2000-12-28 | 2002-07-23 | Sony Corp | ロボット装置の動作制御方法、プログラム、記録媒体及びロボット装置 |
CN1457287A (zh) * | 2001-02-21 | 2003-11-19 | 索尼公司 | 用于机器人装置的操作控制的方法、程序、和记录介质、以及机器人装置 |
US20070145930A1 (en) * | 2005-12-27 | 2007-06-28 | Fujitsu Limited | Robot controller |
US20170031329A1 (en) * | 2015-07-31 | 2017-02-02 | Fanuc Corporation | Machine learning method and machine learning device for learning fault conditions, and fault prediction device and fault prediction system including the machine learning device |
CN106409120A (zh) * | 2015-07-31 | 2017-02-15 | 发那科株式会社 | 机械学习方法及机械学习装置、以及故障预知装置及系统 |
CN107122736A (zh) * | 2017-04-26 | 2017-09-01 | 北京邮电大学 | 一种基于深度学习的人体朝向预测方法及装置 |
CN107563122A (zh) * | 2017-09-20 | 2018-01-09 | 长沙学院 | 基于交织时间序列局部连接循环神经网络的犯罪预测方法 |
CN107748566A (zh) * | 2017-09-20 | 2018-03-02 | 清华大学 | 一种基于强化学习的水下自主机器人固定深度控制方法 |
AU2018101513A4 (en) * | 2018-10-11 | 2018-11-15 | Hui, Bo Mr | Comprehensive Stock Prediction GRU Model: Emotional Index and Volatility Based |
-
2018
- 2018-04-28 CN CN201810408136.4A patent/CN108621159B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002205289A (ja) * | 2000-12-28 | 2002-07-23 | Sony Corp | ロボット装置の動作制御方法、プログラム、記録媒体及びロボット装置 |
CN1457287A (zh) * | 2001-02-21 | 2003-11-19 | 索尼公司 | 用于机器人装置的操作控制的方法、程序、和记录介质、以及机器人装置 |
US20070145930A1 (en) * | 2005-12-27 | 2007-06-28 | Fujitsu Limited | Robot controller |
US20170031329A1 (en) * | 2015-07-31 | 2017-02-02 | Fanuc Corporation | Machine learning method and machine learning device for learning fault conditions, and fault prediction device and fault prediction system including the machine learning device |
CN106409120A (zh) * | 2015-07-31 | 2017-02-15 | 发那科株式会社 | 机械学习方法及机械学习装置、以及故障预知装置及系统 |
CN107122736A (zh) * | 2017-04-26 | 2017-09-01 | 北京邮电大学 | 一种基于深度学习的人体朝向预测方法及装置 |
CN107563122A (zh) * | 2017-09-20 | 2018-01-09 | 长沙学院 | 基于交织时间序列局部连接循环神经网络的犯罪预测方法 |
CN107748566A (zh) * | 2017-09-20 | 2018-03-02 | 清华大学 | 一种基于强化学习的水下自主机器人固定深度控制方法 |
AU2018101513A4 (en) * | 2018-10-11 | 2018-11-15 | Hui, Bo Mr | Comprehensive Stock Prediction GRU Model: Emotional Index and Volatility Based |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110502770A (zh) * | 2018-10-11 | 2019-11-26 | 起动科技有限公司 | 基于ann预测力学参数的方法、装置、设备及存储介质 |
CN109291052B (zh) * | 2018-10-26 | 2021-11-09 | 山东师范大学 | 一种基于深度强化学习的按摩机械手训练方法 |
CN109291052A (zh) * | 2018-10-26 | 2019-02-01 | 山东师范大学 | 一种基于深度强化学习的按摩机械手训练方法 |
CN111207739A (zh) * | 2018-11-22 | 2020-05-29 | 千寻位置网络有限公司 | 基于gru神经网络的行人步行零速检测方法及装置 |
CN109702745A (zh) * | 2019-01-18 | 2019-05-03 | 华南理工大学 | 一种机器人关节波动摩擦力矩的建模方法 |
CN109559826A (zh) * | 2019-01-30 | 2019-04-02 | 福州大学 | 一种基于表面肌电和运动信号的膝关节力矩估计方法 |
CN110414033A (zh) * | 2019-05-31 | 2019-11-05 | 太原理工大学 | 结合边缘计算和数字孪生的机械设备预测性维护方法 |
CN110450153A (zh) * | 2019-07-08 | 2019-11-15 | 清华大学 | 一种基于深度强化学习的机械臂物品主动拾取方法 |
CN110705105A (zh) * | 2019-10-08 | 2020-01-17 | 首都师范大学 | 一种机器人逆动力学模型的建模方法及系统 |
CN110705105B (zh) * | 2019-10-08 | 2022-06-10 | 首都师范大学 | 一种机器人逆动力学模型的建模方法及系统 |
CN111208783A (zh) * | 2019-12-30 | 2020-05-29 | 深圳市优必选科技股份有限公司 | 一种动作模仿方法、装置、终端及计算机存储介质 |
CN111208783B (zh) * | 2019-12-30 | 2021-09-17 | 深圳市优必选科技股份有限公司 | 一种动作模仿方法、装置、终端及计算机存储介质 |
CN111497868A (zh) * | 2020-04-09 | 2020-08-07 | 余姚市浙江大学机器人研究中心 | 一种基于bn-lstm网络的汽车传感器故障分类方法 |
CN113821006A (zh) * | 2020-05-07 | 2021-12-21 | 牧今科技 | 用于确定指示机器人校准质量的误差参数的值的方法和计算系统 |
US11717966B2 (en) | 2020-05-07 | 2023-08-08 | Mujin, Inc. | Method and computing system for determining a value of an error parameter indicative of quality of robot calibration |
CN112171677A (zh) * | 2020-09-30 | 2021-01-05 | 桂林电子科技大学 | 基于lstm工业机器人柔性关节迟滞误差补偿控制方法 |
CN112247992A (zh) * | 2020-11-02 | 2021-01-22 | 中国科学院深圳先进技术研究院 | 一种机器人前馈力矩补偿方法 |
CN112906291B (zh) * | 2021-01-25 | 2023-05-19 | 武汉纺织大学 | 一种基于神经网络的建模方法及装置 |
CN112906291A (zh) * | 2021-01-25 | 2021-06-04 | 武汉纺织大学 | 一种基于神经网络的建模方法及装置 |
CN112906887A (zh) * | 2021-02-20 | 2021-06-04 | 上海大学 | 稀疏gru神经网络加速的实现方法和装置 |
CN113706827A (zh) * | 2021-09-03 | 2021-11-26 | 浙江远图互联科技股份有限公司 | 一种居家老人生命体征的无线采集系统 |
CN113942009B (zh) * | 2021-09-13 | 2023-04-18 | 苏州大学 | 机器人仿生手抓取方法 |
CN113942009A (zh) * | 2021-09-13 | 2022-01-18 | 苏州大学 | 机器人仿生手抓取方法和系统 |
CN113935338A (zh) * | 2021-10-13 | 2022-01-14 | 北京有竹居网络技术有限公司 | 基于层预测的语言翻译的方法、设备、装置和介质 |
CN113987679A (zh) * | 2021-10-30 | 2022-01-28 | 福州大学 | 基于mogrifier-gru深度学习的列车稳定性预测方法及系统 |
CN114970305A (zh) * | 2021-12-17 | 2022-08-30 | 西安交通大学 | 一种磁控软体机器人磁性颗粒分布的预测方法 |
CN114970305B (zh) * | 2021-12-17 | 2024-01-19 | 西安交通大学 | 一种磁控软体机器人磁性颗粒分布的预测方法 |
CN114970374A (zh) * | 2022-07-28 | 2022-08-30 | 深圳华数机器人有限公司 | 一种基于增量式动力学的负载辨识方法、系统和介质 |
CN114970374B (zh) * | 2022-07-28 | 2022-10-28 | 深圳华数机器人有限公司 | 一种基于增量式动力学的负载辨识方法、系统和介质 |
CN117292421A (zh) * | 2023-09-12 | 2023-12-26 | 南通大学 | 一种基于gru的连续性视线估计深度学习方法 |
CN117292421B (zh) * | 2023-09-12 | 2024-05-28 | 南通大学 | 一种基于gru的连续性视线估计深度学习方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108621159B (zh) | 2020-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108621159A (zh) | 一种基于深度学习的机器人动力学建模方法 | |
CN108115681B (zh) | 机器人的模仿学习方法、装置、机器人及存储介质 | |
Chebotar et al. | Combining model-based and model-free updates for trajectory-centric reinforcement learning | |
Rueckert et al. | Learning inverse dynamics models in o (n) time with lstm networks | |
CN106548475A (zh) | 一种适用于空间非合作自旋目标运动轨迹的预测方法 | |
CN110262511A (zh) | 基于深度强化学习的双足机器人自适应性行走控制方法 | |
CN110232412B (zh) | 一种基于多模态深度学习的人体步态预测方法 | |
CN110223785A (zh) | 一种基于深度学习的传染病传播网络重构方法 | |
Qazani et al. | Optimising control and prediction horizons of a model predictive control-based motion cueing algorithm using butterfly optimization algorithm | |
CN110705105B (zh) | 一种机器人逆动力学模型的建模方法及系统 | |
CN101452258A (zh) | 一种与模型无关的自适应控制器及其控制方法 | |
CN109227550A (zh) | 一种基于rbf神经网络的机械臂控制方法 | |
CN114510012A (zh) | 一种基于元动作序列强化学习的无人集群演进系统及方法 | |
Karimi Ghaleh Jough et al. | Uncertainty analysis through development of seismic fragility curve for an SMRF structure using an adaptive neuro-fuzzy inference system based on fuzzy C-means algorithm | |
Zhang et al. | Direction-decision learning based pedestrian flow behavior investigation | |
Bing et al. | Simulation to real: learning energy-efficient slithering gaits for a snake-like robot | |
Çallar et al. | Hybrid learning of time-series inverse dynamics models for locally isotropic robot motion | |
CN112525194A (zh) | 一种基于海马-纹状体内源性和外源性信息的认知导航方法 | |
Lee et al. | Early failure detection of deep end-to-end control policy by reinforcement learning | |
Chen et al. | Learning trajectories for visual-inertial system calibration via model-based heuristic deep reinforcement learning | |
CN115562258A (zh) | 基于神经网络的机器人社会自适应路径规划方法及系统 | |
El-Fakdi et al. | Autonomous underwater vehicle control using reinforcement learning policy search methods | |
WO2019095108A1 (zh) | 机器人的模仿学习方法、装置、机器人及存储介质 | |
CN114118371A (zh) | 一种智能体深度强化学习方法及计算机可读介质 | |
Anditio et al. | Integrating PSO optimized LQR controller with virtual sensor for quadrotor position control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |