高技术通讯2020年第30卷第5期:495~500
doi:10.3772/j.issn.1002-0470.2020.05.008
基于人工神经网络的动力学参数辨识法①
杜其通②刘朝雨闵剑费燕琼③
(上海交通大学机器人研究所上海200240)学习法
摘要针对传统最小二乘法辨识动力学模型精度不高的问题,结合深度学习方法,提出了一种基于人工神经网络的动力学参数辨识方法。使用线型整流单元(ReLU)作为神经网络的激活函数,使用RMSProp算法对神经网络权值进行迭代,使用Dropout方法防止过拟合。采用有限项傅里叶级数轨迹作为激励轨迹,对采集到的数据进行标准化处理及滤波处理。最后,对算法得到的模型进行比较验证。结果表明,本文提出的方法相对于传统方法有较高的精度,不需要对摩擦力进行建模,能够更好地应用于机器人模型控制系统。
关键词神经网络;参数辨识;动力学
0引言
工业机器人已经成为现代人类社会不可或缺的自动化工具,提高其控制精度一直是国内外研究的热点。传统的PID控制已经无法满足实际工作的精度要求,基于模型的控制方法成为主流。基于模型的控制器需要以机器人动力学参数作为先验值⑴,但是机器人是一个多变量、强耦合的非线性系统⑵,通过数学计算获得动力学模型很困难,一般采用实验辨识方法。
国内外研究人员提出了很多机器人参数辨识方法。Gautier等人⑶提出了串联机器人最小参数集的推导方法,能够减小辨识的运算量,提高算法的鲁棒性。Calafiore等人⑷采用递推的最小二乘法进行参数运算,提高了算法效率。丁亚东等人⑸提出了一种分布辨识方法,降低了辨识方程的复杂性。智能控制算法促进了机器人动力学参数辨识的发展,陈柏等人⑴采用人工蜂算法,禹鑫錢等人⑹采用粒子算法,谢宏⑺采用改进的遗传算法进行辨识,均取得了不错的辨识效果。
为了提高工业机器人的动力学模型辨识精度,本文结合近年兴起的机器学习、深度学习算法,提出了一种基于人工神经网络的动力学模型辨识方法。使用线型整流单元(rectified linear unit,ReLU)函数作为神经网络的激活函数,使用Dropout方法避免神经网络训练中容易产生的过拟合现象,采用有限项傅里叶多项式作为激励轨迹。最后,为了验证本文提出的方法,将实验结果与传统最小二乘法结果进行了对比。
1辨识神经网络模型
对于一个n关节的机器人系统,传统辨识方法将其动力学模型表示为
T=K(0,0,歹)0(1)式中,丁为关节力矩,〃为机器人关节角度4为关节角速度,0为关节角加速度矢量,0为机器人动力学参数集。
利用人工神经网络对机器人动力学参数进行辨识时,实际是将整个机器人系统看作一个如图1所示的黑箱模型,输入为机器人的关节角度、角速度和角加速度,输出为各关节的力矩矢量。因为动力学
国家自然科学基金(51875335)和国家重点研发计划(2017YFD0700602)资助项目。
男,1996年生,硕士生;研究方向:工业机器人,软体机器人°E-mail:*****************
通讯作者,E-mail:fyq@sjtu.edu
(收稿日期:2019-07-12)
—495—