基于耦合算法的类人机器人模仿学习控制方法
2017-08-02李文华杨子凝王来贵
李文华 杨子凝 王来贵
1.辽宁工程技术大学机械工程学院,阜新,1230002.辽宁工程技术大学力学与工程学院,阜新,123000
基于耦合算法的类人机器人模仿学习控制方法
李文华1杨子凝1王来贵2
1.辽宁工程技术大学机械工程学院,阜新,1230002.辽宁工程技术大学力学与工程学院,阜新,123000
为提高类人机器人模仿学习的准确性及效率,建立了一种改进的粒子群算法优化超限学习机的模仿学习模型。采用非线性动态系统对示教时的相关数据进行建模;以动态自适应策略改进粒子群算法的惯性权重,并利用改进后的粒子群算法对超限学习机的网络参数进行寻优;利用该耦合学习模型对模仿学习动态系统的参数进行学习,并重现了模仿学习动作。实验结果表明,该耦合算法应用在类人机器人模仿学习方面具有很好的拟合精度、自适应性及泛化能力,重现模仿学习动作时的平均误差为0.0172。
模仿学习;超限学习机;改进粒子群优化;非线性动态系统;耦合模型
0 引言
机器人的智能化经过多年的发展,已从传统的自动型机器人发展成为拥有感知、认知等能力的智能型机器人,如何使其具有模仿学习力是智能型类人机器人发展和应用的关键,也是机器人仿生机制研究的重要课题之一[1-2]。
模仿学习利用数值分析理论与计算机技术相融合的手段,已产生了多种模仿学习方法[3]。KHANSARI-ZADEH等[4]提出一种对示教动态系统参数进行学习的方法SEDS (stable estimator of dynamical systems),该方法以高斯混合函数为回归模型对样本数据进行训练,在训练过程中保证了机器人模仿学习的收敛性。JIANG等[5]以迭代学习神经网络为控制算法,对运动轨迹进行跟踪学习,比前一种方法具有更好的泛化能力。NEUMANN等[6]以基于数据的李雅普诺夫候选函数为约束条件,利用超限学习机(extreme learning machine,ELM) 来学习运动曲线,实验表明该方法有一定的泛化能力且缩短了神经网络由于不断迭代而增加的运算时间。然而,由于ELM自身的运算特点,其在提升泛化能力及缩短训练时间的同时损失了一定的拟合精度。
为了使得类人机器人能快速、准确地完成示教动作,并具有一定的学习力,本文结合粒子群优化(particle swarm optimization,PSO)算法及ELM各自的优点,利用PSO算法对ELM的网络参数进行优化,以提高传统ELM的精度,得到具有较强精度及泛化能力的类人机器人模仿学习耦合模型。该耦合模型在标准PSO算法的基础上,通过动态自适应策略调整PSO算法的惯性权重,平衡其全局与局部搜索能力,提高了标准PSO算法的搜索效率。实验验证了该耦合模型的有效性、精度及泛化能力。
1 模仿学习系统描述及建模
由非线性控制理论可知,一个时间连续的控制过程可以看成极短时间间隔的离散采样过程。利用非线性动态系统来描述机器人模仿学习过程,将模仿学习动作分解为点到点的运动[7]。
在类人机器人模仿学习人类动作的过程中,人类导师先利用机器人手臂末端执行器做出要求的示教动作,与此同时,每间隔100 ms采集一次关节传感器、触觉传感器等相关传感器的数据,并在笛卡尔空间下,利用正向运动学变换,将关节角度信息转换为空间位置信息。
利用一阶常微分方程对模仿学习过程进行描述[8]:
(1)
ξ(t+1)=ξ(t)+f(ξ)Δt
(2)
式中,ξ(t)、ξ(t+1)分别为t、t+1时刻的机器人末端执行器位置;Δt为采样时间间隔。
将输出的速度信息转换为下一时刻的空间位置。最后进行反向运动学运算,重新将三维位置转换为控制量,输入到控制器中,以完成对类人机器人NAO的模仿学习控制过程,重现模仿学习动作。模仿学习控制系统结构如图1所示。
图1 模仿学习控制系统结构图Fig.1 Structure diagram of imitating learning control system
2 模仿学习算法
2.1 PSO算法及其优化
PSO算法将待解决优化问题的解看成d维空间上的“粒子”,每一个粒子在该空间上以一定的速度运动,通过2个迭代方程对粒子当前的速度与位置不断地进行更新,并凭借适应度函数对粒子当前位置的好坏进行评判,以期得到优化问题的最优解[9]。
单个粒子在解空间中的位置和速度更新方程为
vjk(m+1)=λvjk(m)+c1R1(pb,jk(m)-xjk(m))+
c2R2(gb,jk(m)-xjk(m))
(3)
xjk(m+1)=xjk(m)+vjk(m+1)
(4)
式中,vjk(m+1)、xjk(m+1)分别为粒子j在解空间中第m+1次迭代运算时,第k维的搜索速度与位置;λ为惯性权重,表示原速度保留的程度;c1、c2为加速度系数;R1、R2为随机数,取值范围为(0,1);pb,jk、gb,jk分别为粒子j在迭代中第k维的个体最优解与全局最优解。
PSO算法的适应度函数为
(5)
式中,N为训练样本个数;f(ξ)为ELM网络输出值。
PSO算法中,权重λ为控制粒子群搜索能力及收敛速度的重要参数,其取值对算法的准确性影响很大。λ取值较大时,可提高PSO算法全局搜索能力;λ取值较小时,可提高PSO算法局部搜索能力。由此,λ取值不当时,PSO算法可能出现搜索效率低、早熟及陷入局部最优等问题。
目前,应用较多的权重优化方法为线性递减权值确定法,此方法仅将λ与迭代次数关联,应用于非线性复杂运算时,适应性较差,因此采用一种动态调整参数的方法,将PSO算法运行过程中的粒子搜索速度v与λ相关联,即随着v的变化调整λ的大小,可有效平衡粒子的全局及局部搜索能力,提高粒子寻优效率,避免粒子陷入局部极值[10]。
惯性权重动态调节公式为
(6)
式中,λ0为随机初始值,λ0∈(0,1);λmax为权重最大值;λmin为权重最小值;Emax为粒子群中的最大适应度;vj(m)、vj(m+1)分别为粒子j在第m次、m+1次迭代时的速度。
v增大,表示粒子远离最优解,因此需加大λ,提高粒子全局搜索能力;v减小,表示粒子接近最优解,此时需减小λ,以提高粒子局部搜索能力。
2.2 超限学习机
ELM是一种基于单隐层前馈神经网络 (single hidden layer feed-forward neural networks,SLFNs)的新型学习方法,在学习过程中,将网络的输入层到隐藏层权重、隐藏层偏移量设置为随机值,并在最小二乘约束条件下,对隐藏层输出矩阵的Moore-Penrose广义逆进行求解,以此得到隐藏层到输出层的权值[11],其网络结构如图2所示。
图2 SLFNs结构图Fig.2 SLFNs structure diagram
图2中,xz为网络的输入;d、n、c分别为输入层、隐藏层、输出层节点个数;oz为网络的输出:
(7)
矩阵形式为
Hβ=O
(8)
(9)
式中,βi为第i个隐藏层节点到输出层的权重,βi=(βi1,βi2,…,βic);g(*)为激活函数;wi为连接输入层到第i个隐藏层节点的权值,wi=(wi1,wi2,…,wid);bi为第i个隐藏层节点的偏置;O为网络的输出矩阵;H为隐藏层输出矩阵[12]。
g(·)为可微函数时,
(10)
2.3 基于MPSO的参数优化
ELM虽然具有网络结构简单、训练速度快等优点,但当wi、bi随机取值不理想时,会在一定程度上影响ELM的准确性,因此本文利用MPSO算法将wi、bi作为该优化算法中的“粒子”,通过对初始随机解的不断更新,求得最优的wi、bi,投入到ELM网络中,避免了ELM原始解法因参数wi、bi随机取值且无后续更正机制而造成的整个网络训练准确性降低的问题[13-14]。
组合算法实际的训练步骤如下:
(1)初始化粒子群,对粒子群总数及运算循环次数、惯性权重等参数进行设定,并根据wi、bi的取值范围设定每个粒子在维度空间中位置的边界,限定种群中粒子的运行速度。
(2)输入训练样本,进行种群训练,根据式(3)~式(6)计算出每个粒子的适应度E、pb、gb的值。进入主循环,在每一次迭代时分别将粒子的适应度E、pb、gb进行比较,取三者中的最小值为当次迭代的最优解,根据计算结果更新惯性权值,并对当前粒子的位置与速度进行更新。当达到最大迭代次数或超出wi、bi的取值范围时,则退出迭代,得到粒子群的最优解。
(3)将最优解输入到ELM网络中,根据式(7)~式(10)进行训练,并以网络训练误差[4]
(11)
来评价ELM网络输出结果的好坏。当e小于设定值或达到最大训练次数时,停止训练,即可得到最优的模仿学习模型。
图3 MPSO-ELM耦合模型结构图Fig.3 Structure diagram of MPSO-ELM coupled model
3 MPSO-ELM模型在类人机器人学习中的应用
3.1 实验数据的采集
在实验平台上做模仿学习实验,采用Aldebaran Robotics公司研制的小型类人机器人NAO进行模仿学习实验。
(a)动作1 (b)动作2
(c)动作3 (d)动作4图4 示教实验过程图Fig.4 Teaching experiment process diagram
示教者移动机器人NAO手臂末端执行器进行示教,如图4所示,选取实验过程中的4个重要关键点说明示教过程,以图中黑色圆点为模仿学习轨迹的起始点,以黑色六角星为终点,按照图中所示的轨迹进行学习。图4中,实线表示NAO已经沿着模仿学习轨迹进行了相应的运动,虚线表示NAO还未沿着该轨迹进行相应的运动。与此同时,在上位机中,采用Monitor应用软件记录模仿学习过程中的相关数据信息。
3.2 学习模型的参数设置及训练
将采集到的传感器数据首先进行归一化处理,利用MPSO算法选取最优的ELM权值和阈值。
PSO算法中,对其性能影响很大的两个参数为粒子群总数、最大迭代次数。粒子总数选取过小,可能会因采样点的缺失而造成整体算法性能的减退;粒子总数过大,会增加计算量及运行时间。因此根据经验将PSO的初始参数设定为:粒子群规模50,最大迭代次数200,加速度系数c1=c2=2,惯性权重λmax取0.9,λmin取0.3。
在ELM网络中,激活函数g(·)类型、隐藏层节点个数n等对算法性能有较大影响,因此在迭代次数相同(100),隐藏层节点数目n不同的条件下,分别以Sigmoid函数、Multiquadric函数为ELM激活函数,以训练误差率及运行时间为衡量性能好坏的指标,如表1所示。由表1可以看出,Sigmoid函数训练所需时间短,其最大时间增长率为9.79%,而Multiquadric函数为15.91%,由此可见Sigmoid函数有明显的速度优势;随着隐藏层节点的增多,两函数的训练误差均不断减小,但Sigmoid函数误差率普遍低于Multiquadric函数,并在隐藏层节点数为120时达到最优,误差为0.0863,因此选取Sigmoid函数为激活函数,输入层节点个数d为3,隐藏层节点数n设置为120。
表1 超限学习机不同激活函数训练结果Tab.1 Comparison of training results on different activation of ELM
根据式(6)对PSO的参数λ进行动态调整,并将训练后的适应度函数曲线与传统PSO进行对比,如图5所示。取前100次迭代后的运算结果,可以看出,在同等误差条件下,MPSO所需的迭代少,收敛较快,可有效避免算法早熟,减少迭代,提高了寻优效率。
图5 PSO与MPSO的适应度曲线对比图Fig.5 Comparison graph of adaptability curves between PSO and MPSO
3.3 相同数据集对比实验
为验证所提出的MPSO-ELM算法具有训练速度快、准确率高等特点,在利用相同数据样本的前提下,将其与SEDS算法的模仿学习效果进行比较。采用的运行软件为MATLAB R2015a,计算机配置为2.7 GHz Inter Core i5,内存为8 GB。对比实验中样本的数据来源于LASA(learning algorithms and systems laboratory)采集的多种人类手写体数据库[4]。以其中的CShape、Spoon、Line、Trapezoid、GShape等8种数据集为例,实验结果如图6所示,其中,虚线为示教曲线,箭头曲线为经算法训练后从不同起始点出发的重现轨迹数据流,黑色点为目标点。两种算法在采用不同数据集进行训练时的运行时间及误差率如表2所示。
(a)SEDS算法
(b)MPSO-ELM图6 MPSO-ELM与SEDS仿真结果Fig.6 MPSO-ELM and SEDS simulation results
由图6、表2可以看出,SEDS、MPSO-ELM对数据集曲线进行跟踪学习时均有较好的表现,但在保证收敛的前提下,MPSO-ELM在各组数据仿真时的运行时间及误差率普遍优于SEDS,平均运行时间为7.06 s,平均误差率为0.153;在8种不同动作数据集的工作空间内进行轨迹学习时,以不同位置为起始点出发的数据流均能按照示教曲线的趋势进行很好的跟踪,并最终收敛到目标点,说明MPSO-ELM模型具有很好的泛化性能。
3.4 模仿学习模型实验对比分析
对图4中人类导师示教时采集的示教数据,用3种不同的模仿学习模型进行训练,结果如表3所示。其中,BP模型采用三层网络结构,激励函数为Sigmoid,隐藏层节点数为20,学习速率为0.2,最大训练次数为200。
表2 SEDS与MPSO-ELM学习效果Tab.2 Comparison of learning effect between SEDS and MPSO-ELM
表3 不同模仿学习模型训练结果对比Tab.3 Comparison of training results on different imitation learning models
可以看出ELM算法相较于其余3种模型,具有较高的收敛速度,节约了时间,MPSO与ELM的耦合算法虽然牺牲了部分时间,但换取了更好的精度,平均相对模仿误差率为0.014。综合以上可以看出,MPSO-ELM模型相较于其余3种模型在模仿学习方面有更好的表现,提高了传统ELM的准确性。
3.5 轨迹跟踪实验分析
利用MPSO-ELM耦合模型对示教轨迹曲线进行跟踪拟合,将该模型输出运算后的机器人NAO手臂关节角度与示教时采集的关键点关节角度进行对比,如图7所示。结合图4中的示教动作可知,NAO手臂末端执行器从轨迹的起始点向终止点的运动过程中,关节角度呈先增大、后减小的趋势。图7中,经耦合模型计算后的关节角度曲线很好地拟合了示教过程中关节角度曲线的变化趋势,平均误差为0.0172,保证了对机器人重现示教动作的控制精度。同时,亦在一定程度上减小了关节角度的短时剧烈波动,使得角度曲线更加平稳连贯,可降低驱动电机损坏的风险,并增强机器人控制系统的稳定性。
图7 示教与跟踪模型处理后的角度Fig.7 Angle of teaching and tracking model result
4 结论
(1)对模仿学习过程进行分析,利用非线性控制理论对示教动作进行数学描述,将模仿学习转化为数值问题,采用ELM网络对其进行映射。
(2)将MPSO算法引入到ELM网络中,建立了模仿学习耦合模型。以动态自适应惯性权值策略优化PSO算法,克服了标准PSO存在易早熟、局部收敛等缺陷,并将其用于超限学习机的参数优化问题,提高了传统ELM的准确性。
(3)采用标准数据库,将MPSO-ELM模仿学习耦合算法与SEDS方法相比较,实验结果表明,耦合算法具有更好的精度、较短的运行时间以及较强的泛化能力,平均误差率为0.153,平均运行时间为7.06 s。
(4)将MPSO-ELM模型与BP模型、ELM模型、标准PSO-ELM模型在类人机器人模仿学习中的应用效果进行对比。MPSO-ELM模仿学习耦合模型具有更高的精度,平均误差率为0.014,具有较好的自适应性。
[1] 徐莉,刘振方,王建丞,等.仿人机器人综述[J].黑龙江科学,2013,4(7):57-61. XU Li,LIU Zhenfang,WANG Jiancheng,et al.Review on Humanoid Robot[J]. Heilongjing Science,2013,4(7):57-61.
[2] 刘涛,于建均,阮晓钢.基于概率轨迹匹配的机器人模仿学习方法[J]. 计算机测量与控制,2015,23(11):3713-3720. LIU Tao,YU Jianjun,RUAN Xiaogang. Robot Imitation Learning Method Based on Trajectory Probability Matching[J]. Computer Measurement and Control,2015,23(11):3713-3720.
[3] 于建均,门玉森,阮晓钢,等.模仿学习在机器人仿生机制研究中的应用[J]. 北京工业大学学报,2016,42(2):210-216. YU Jianjun,MEN Yusen,RUAN Xiaogang,et al. Application of Imitation Learning in the Research of Bionic Mechanism of Robots[J]. Journal of Beijing University of Technology,2016,42(2):210-216.
[4] KHANSARI-ZADEH S M,BILLARD A. Learning Stable Nonlinear Dynamical Systems with Gaussian Mixture Models [J]. IEEE Transactions and Robotics,2011,27(5):943-957.
[5] JIANG Ping,LI Ziyu,CHEN Yangquan.Iterative Learning Neural Network Control for Robot Learning from Demonstration[J]. Control Theory and Applications,2004,21(3):447-452.
[6] NEUMANN K,LEMME A,STEIL J J. Neural Learning of Stable Dynamical Systems Based on Data-driven Lyapunov Candidates[C]//IEEE/RSJ International Conference on Intelligent Robots and Systems. Tokyo,2013:1216-1222.
[7] SICILIANO B,KHATIB O. Handbook of Robotics[M]. New York:Springer,2008.
[8] 白彦伟.基于微分几何移动机械臂非线性控制的研究[D].哈尔滨:哈尔滨工业大学,2007. BAI Yanwei. Nonlinear Control Research of Mobile Manipulators Based on Differential Geometry [D]. Harbin:Harbin Institute of Technology,2007.
[9] 吴晓刚,王旭东,余腾伟,等. 基于粒子群优化的电磁离合器模糊控制研究[J]. 中国机械工程,2010,21(9):1071-1077. WU Xiaogang,WANG Xudong,YU Tengwei,et al. Research on Fuzzy Control of Electromagnetic Clutch Based on Particle Swarm Optimization[J]. China Mechanical Engineering,2010,21(9):1071-1077.
[10] 王辉,朱龙彪,朱天成,等.基于粒子群遗传算法的泊车系统路径规划研究[J].工程设计学报,2016,23(2):195-200. WANG Hui,ZHU Longbiao,ZHU Tiancheng,et al. Research on Path Planning of Parking System Based on PSO-Genetic Hybrid Algorithm[J]. Chinese Journal of Engineering Design,2016,23(2):195-200.
[11] HUANG Guangbin,ZHOU Hongming,DING Xiaojian. Extreme Learning Machine for Regression and Multiclass Classification[J]. IEEE Transactions Systems,Man,and Cybernetics,2012,42(2):513-528.
[12] FENG Guorui,HUANG Guangbin,LIN Qingping,et al. Error Minimized Extreme Learning Machine with Growth of Hidden Nodes and Incremental Learning[J]. Transactions on Neural Networks,2009,20(8):1352-1357.
[13] ZHANG Yannan,DING Shifei,XU Xinzheng,et al. An Algorithm Research for Prediction of Extreme Learning Machine Based on Rough Sets [J]. Journal of Computers, 2013,8(5):1335-1342.
[14] 何群,李磊,江国乾,等. 基于PCA和多变量极限学习机的轴承剩余寿命预测[J]. 中国机械工程,2014,25(7):984-989. HE Qun,LI Lei,JIANG Guoqian,et al. Residual Life Predictions for Bearings Based on PCA and MELM[J]. China Mechanical Engineering,2014,25(7):984-989.
(编辑 张 洋)
Imitation Learning Control Method of Humanoid Robots Based on Coupling Algorithm
LI Wenhua1YANG Zining1WANG Laigui2
1.School of Mechanical Engineering,Liaoning Technical University,Fuxin,Liaoning,1230002.School of Mechanics and Engineering,Liaoning Technical University,Fuxin,Liaoning,123000
To improve accuracy and efficiency in learning from demonstrations by humanoid robots, an imitation learning model was established based on improved PSO to optimize extreme learning machine, to learn human motions on the robots herein. A set of motions which was performed by a human demonstrator were collected to model as a nonlinear autonomous dynamical system. PSO was improved with the dynamic adaptive inertia weight. Then the improved PSO was merged with ELM to optimize network parameters. Using a mathematical model of improved PSO-ELM to learn the parameters of the dynamic system and reproduce human motions. The experimental results prove the method has a better fitting precision, adaptability and generalization ability on imitation learning of humanoid robots. The average relative errors are as 0.0172 of human motion reproductions.
imitation learning; extreme learning machine(ELM); improved particle swarm optimization(MPSO); nonlinear dynamic system; coupling model
2016-08-29
国家自然科学基金资助项目(51474121);辽宁省教育厅资助项目(L2015214)
TP242.6
10.3969/j.issn.1004-132X.2017.14.017
李文华,男,1964年生。辽宁工程技术大学机械工程学院教授、博士研究生导师。主要研究方向为机电液一体化及智能控制、流体机械及工程。发表论文50余篇。杨子凝(通信作者),女,1988年生。辽宁工程技术大学机械工程学院博士研究生。E-mail:yangzining163@163.com。王来贵,男,1962年生。辽宁工程技术大学力学与工程学院教授、博士研究生导师。