第14卷第5期 智能系统学报 Vol.14 No.5 2019年9月 CAAI Transactions on Intelligent Systems Sep.2019 D0:10.11992/tis.201807018 网络出版地址:http:/kns.cnki.net/kcms/detail/23.1538.TP.20190520.1428.010html 基于动态系统的机器人模仿学习方法研究 于建均2,姚红柯2,左国玉2,阮晓钢2,安硕2 (1.北京工业大学信息学部,北京100124,2.北京工业大学计算智能与智能系统北京市重点实验室,北京 100124) 摘要:针对当前机器人模仿学习过程中,运动模仿存在无法收敛到目标点以及泛化能力差的问题,引入一种 基于动态系统(dynamical system,DS)的模仿学习方法。该方法通过高斯混合模型(gaussian mixture model, GMM①将示教运动数据建模为一非线性动态系统:将DS全局稳定的充分条件作为约束,以保证DS所生成的 所有轨迹收敛到目标点:将动态系统模型的参数学习问题转化为求解一个约束优化问题,从而得到模型参数。 以7b0t机械臂为实验对象,进行仿真实验和机器人实验,实验结果表明:该方法学习的DS模型从不同起点生 成的所有轨迹都收敛到目标点,轨迹平滑,泛化能力好。 关键词:机器人:模仿学习;轨迹层面:高斯混合模型:动态系统;参数学习:7bot机械臂;泛化能力 中图分类号:TP242.6 文献标志码:A 文章编号:1673-4785(2019)05-1026-09 中文引用格式:于建均,姚红柯,左国玉,等.基于动态系统的机器人模仿学习方法研究J.智能系统学报,2019,14(5): 1026-1034. 英文引用格式:YUJianjun,.YAO Hongke,.ZUO Guoyu,etal.Research on robot imitation learning method based on dynamical system[J.CAAI transactions on intelligent systems,2019,14(5):1026-1034. Research on robot imitation learning method based on dynamical system YU Jianjun2,YAO Hongke,ZUO Guoyu'2,RUAN Xiaogang2,AN Shuo2 (1.Faculty of Information Technology,Beijing University of Technology,Beijing 100124,China,2.Beijing Key Laboratory of Com- pu-tational Intelligence and Intelligent System,Beijing University of Technology,Beijing 100124,China) Abstract:In the current robot imitation learning process,the motion imitation cannot converge to the target point,and the generalization ability is poor.To solve this problem,an imitation learning method based on dynamical system(DS) is introduced.First,the demonstration motion data is modeled as a nonlinear DS by Gaussian mixture model(GMM). Second,the sufficient condition of DS global stability is used as a constraint to ensure that all the DS-generated traject- ories converge to the target.Finally,the parameter learning problem of the DS model is transformed into seeking for a solution to a constrained optimization problem to obtain the model parameters.Simulation experiments and robot exper- iments were carried out using the 7bot manipulator.The experimental results show that all the trajectories generated by the DS model from different starting points converged to the target point,and the trajectory was smooth and the general- ization performance was improved. Keywords:robot;imitation learning;trajectory level;Gaussian mixture model;dynamical system;parameter learning; 7bot manipulator,generalization performance 目前,在机器人技术的研究中,如何使机器人而从人类学习中发展而来的模仿学习,作为机器 具备类似于人类的智能行为已成为一大研究热点"。 人直接获取知识和技能的一种方式,在机器人的 智能性的提升方面越来越发挥出巨大的作用,越 收稿日期:2018-07-18.网络出版日期:2019-05-21. 基金项目:国家自然科学基金项目(61773027):北京市自然科 来越多地受到学术界的关注和研究。一方面, 学基金项目(4182008):北京市自然科学基金项目/北 相对于传统的机器人编程控制,模仿学习将使机 京市教育委员会科技计划重点项目(KZ201610005010). 通信作者:左国玉.E-mail:zuoguoyu(@bjut.edu.cn 器人编程更加容易,提高了机器人的作业效率;
DOI: 10.11992/tis.201807018 网络出版地址: http://kns.cnki.net/kcms/detail/23.1538.TP.20190520.1428.010.html 基于动态系统的机器人模仿学习方法研究 于建均1,2,姚红柯1,2,左国玉1,2,阮晓钢1,2,安硕1,2 (1. 北京工业大学 信息学部,北京 100124; 2. 北京工业大学 计算智能与智能系统北京市重点实验室,北京 100124) 摘 要:针对当前机器人模仿学习过程中,运动模仿存在无法收敛到目标点以及泛化能力差的问题,引入一种 基于动态系统 (dynamical system,DS) 的模仿学习方法。该方法通过高斯混合模型 (gaussian mixture model, GMM) 将示教运动数据建模为一非线性动态系统;将 DS 全局稳定的充分条件作为约束,以保证 DS 所生成的 所有轨迹收敛到目标点;将动态系统模型的参数学习问题转化为求解一个约束优化问题,从而得到模型参数。 以 7bot 机械臂为实验对象,进行仿真实验和机器人实验,实验结果表明:该方法学习的 DS 模型从不同起点生 成的所有轨迹都收敛到目标点,轨迹平滑,泛化能力好。 关键词:机器人;模仿学习;轨迹层面;高斯混合模型;动态系统;参数学习;7bot 机械臂;泛化能力 中图分类号:TP 242.6 文献标志码:A 文章编号:1673−4785(2019)05−1026−09 中文引用格式:于建均, 姚红柯, 左国玉, 等. 基于动态系统的机器人模仿学习方法研究 [J]. 智能系统学报, 2019, 14(5): 1026–1034. 英文引用格式:YU Jianjun, YAO Hongke, ZUO Guoyu, et al. Research on robot imitation learning method based on dynamical system[J]. CAAI transactions on intelligent systems, 2019, 14(5): 1026–1034. Research on robot imitation learning method based on dynamical system YU Jianjun1,2 ,YAO Hongke1,2 ,ZUO Guoyu1,2 ,RUAN Xiaogang1,2 ,AN Shuo1,2 (1. Faculty of Information Technology, Beijing University of Technology, Beijing 100124, China; 2. Beijing Key Laboratory of Compu-tational Intelligence and Intelligent System, Beijing University of Technology, Beijing 100124, China) Abstract: In the current robot imitation learning process, the motion imitation cannot converge to the target point, and the generalization ability is poor. To solve this problem, an imitation learning method based on dynamical system (DS) is introduced. First, the demonstration motion data is modeled as a nonlinear DS by Gaussian mixture model (GMM). Second, the sufficient condition of DS global stability is used as a constraint to ensure that all the DS-generated trajectories converge to the target. Finally, the parameter learning problem of the DS model is transformed into seeking for a solution to a constrained optimization problem to obtain the model parameters. Simulation experiments and robot experiments were carried out using the 7bot manipulator. The experimental results show that all the trajectories generated by the DS model from different starting points converged to the target point, and the trajectory was smooth and the generalization performance was improved. Keywords: robot; imitation learning; trajectory level; Gaussian mixture model; dynamical system; parameter learning; 7bot manipulator; generalization performance 目前,在机器人技术的研究中,如何使机器人 具备类似于人类的智能行为已成为一大研究热点[1]。 而从人类学习中发展而来的模仿学习,作为机器 人直接获取知识和技能的一种方式,在机器人的 智能性的提升方面越来越发挥出巨大的作用,越 来越多地受到学术界的关注和研究[2-6]。一方面, 相对于传统的机器人编程控制,模仿学习将使机 器人编程更加容易,提高了机器人的作业效率; 收稿日期:2018−07−18. 网络出版日期:2019−05−21. 基金项目:国家自然科学基金项目 (61773027);北京市自然科 学基金项目 (4182008);北京市自然科学基金项目/北 京市教育委员会科技计划重点项目 (KZ201610005010). 通信作者:左国玉. E-mail:zuoguoyu@bjut.edu.cn. 第 14 卷第 5 期 智 能 系 统 学 报 Vol.14 No.5 2019 年 9 月 CAAI Transactions on Intelligent Systems Sep. 2019
第5期 于建均,等:基于动态系统的机器人模仿学习方法研究 ·1027· 另一方面,模仿学习赋予机器人获取知识、学习 避免了先前方法稳定性差的问题。同时,从未示 知识的能力,使其更加具备智能性” 教区域开始的再现运动轨迹也可以保证收敛到目 机器人模仿学习一般分为3个步骤完成:示 标点,泛化能力将大大提高。以7bot机械臂为实 教过程、学习过程、再现过程。当前,模仿学习的 验对象,进行仿真实验和机器人实验研究,实验 研究,主要集中在对学习过程的研究,已经出现 结果表明:基于DS的模仿学习方法再现生成的 了多种模仿学习的算法用来实现机器人的学习过 模仿轨迹具有全局渐近收敛的特点,从不同起始 程”。其中基于轨迹匹配的机器人模仿学习算 位置开始的生成轨迹最终都可以到达目标点,学 法主要有高斯混合模型(GMM)I2]和高斯混合回 习得到的运动模型在稳定性和泛化能力两方面表 归GMR(gaussian maxture regression)2-1)、局部加 现较好。 权回归LWR((locally weighted regression))a均、人工 神经网络ANN(artificial neural networks)6.-i切等,这 1基于动态系统的示教运动建模 些算法的特点是将示教运动轨迹数据建模为回归 11示教运动的表示及动态系统模型 过程,以期获得控制策略指导机器人对示教运动 在机器人模仿示教者示教运动的过程中,示 进行再现。虽然基于轨迹匹配的回归算法具有较 教者通过直接或者间接的方式指导机器人手臂完 强的数据表征能力和抗噪能力,但是也存在泛化 成一次或多次的运动,机器人通过其内部的关节 能力差、稳定性差等缺点u。Ijspeert等9提出的 传感器或者位置传感器,或者是外部传感器,如: 一种基于动态运动基元DMP(dynamic morement Kinect视觉传感,来捕获关于示教运动的相关信 primitives)的机器人模仿学习方法。该方法将运 息。其中示教运动的轨迹信息可以表示为如下的 动行为轨迹建模为一组微分方程,并通过线性动 态系统保证了目标的全局稳定性,可以从一个简 集合形式 单的示教中学习较复杂的运动行为,已有广泛的 L6 (1) 使用922。然而,DMP对时间具有依赖性,使其 式中:状态变量(表示机器人手臂末端执行器在 对时间扰动较为敏感,稳定性受到一定影响;而 笛卡尔坐标系下的位置;对于不同的示教任务,N 且泛化能力有限,其背后的物理意义也比较难于 表示在某个模仿任务下的示教次数。而对于每一次 理解。 的示教轨迹数据集可以表示为Xn=[Go,1,2,…,S]。 动态系统(DS)法321是近些年出现的一种 一阶动态系统被用来建模所记录的示教轨迹数 对运动数据建模的机器学习方法。DS可以表征 据,动态系统的一阶自治常微分方程表示为: 更丰富的行为,可以在状态空间的不同部分学习 t=f()+ε (2) 不同的运动。然而,由于DS存在稳定性的问题, 式中:f:R→R是非线性连续可微函数;(表示 常规的基于GMR、GPR(gaussian process regression)P 机器人末端的位置;:对应于速度;ε表示均值为 以及LWR的回归方法与DS结合也没有实现在 0的高斯噪声项,代表了传感器测量的不准确性 目标点上的稳定收敛。其往往是找到关于系统 以及示教过程的不稳定所带来的示教数据的误 的一个局部最优模型,此局部最优模型的约束条 差。且函数f可以由一组参数0来描述。具体 件无法保证系统收敛到稳定的目标点,仍然存在 地,采用相应的方法,建模式(2)为具体表达形 稳定性差和泛化能力不足的问题。 式,进而可以求解0的值。 针对以上问题,本文通过GMM将示教运动 1.2基于统计方法的高斯混合模型建模动态系统 建模为非线性DS,附加约束条件以确保DS的全 为了得到动态系统具体的表达形式,考虑使 局渐近收敛,将动态系统模型的参数学习问题转 用基于统计方法的GMM来建立对于DS的概率 化为求解一个约束优化问题,通过优化问题的求 描述/估计。高斯混合模型是一种有限混合模型, 解得到DS的参数,获得关于示教运动的非线性 其通过有限的高斯函数的混合来建立对示教运动 DS模型,并将其作为控制策略应用于机器人以实 数据的粗略的表示,同时消除数据的噪声。给定 现对示教运动的模仿。通过将动态系统方法引人 模仿学习,并考虑其在目标点处全局渐近收敛的 一组V次示教轨迹数据k,GMM由以 约束条件,相对于基于轨迹匹配的机器人模仿学 下概率密度函数表示 习方法,其除了具有较强的数据编码能力和抗噪 p(s)= oGP(nlμ,) (3) 能力,而且可以保证生成的轨迹收敛到目标点
另一方面,模仿学习赋予机器人获取知识、学习 知识的能力,使其更加具备智能性[7]。 机器人模仿学习一般分为 3 个步骤完成:示 教过程、学习过程、再现过程。当前,模仿学习的 研究,主要集中在对学习过程的研究,已经出现 了多种模仿学习的算法用来实现机器人的学习过 程 [8-11]。其中基于轨迹匹配的机器人模仿学习算 法主要有高斯混合模型 (GMM)[12] 和高斯混合回 归 GMR(gaussian maxture regression)[12-13] 、局部加 权回归 LWR(locally weighted regression)[14-15] 、人工 神经网络 ANN(artificial neural networks)[16-17] 等,这 些算法的特点是将示教运动轨迹数据建模为回归 过程,以期获得控制策略指导机器人对示教运动 进行再现。虽然基于轨迹匹配的回归算法具有较 强的数据表征能力和抗噪能力,但是也存在泛化 能力差、稳定性差等缺点[18]。Ijspeert 等 [19] 提出的 一种基于动态运动基元 DMP(dynamic morement primitives) 的机器人模仿学习方法。该方法将运 动行为轨迹建模为一组微分方程,并通过线性动 态系统保证了目标的全局稳定性,可以从一个简 单的示教中学习较复杂的运动行为,已有广泛的 使用[19-22]。然而,DMP 对时间具有依赖性,使其 对时间扰动较为敏感,稳定性受到一定影响;而 且泛化能力有限,其背后的物理意义也比较难于 理解。 动态系统 (DS) 法 [13, 23] 是近些年出现的一种 对运动数据建模的机器学习方法。DS 可以表征 更丰富的行为,可以在状态空间的不同部分学习 不同的运动。然而,由于 DS 存在稳定性的问题, 常规的基于 GMR、GPR(gaussian process regression)[24] 以及 LWR 的回归方法与 DS 结合也没有实现在 目标点上的稳定收敛[25]。其往往是找到关于系统 的一个局部最优模型,此局部最优模型的约束条 件无法保证系统收敛到稳定的目标点,仍然存在 稳定性差和泛化能力不足的问题。 针对以上问题,本文通过 GMM 将示教运动 建模为非线性 DS,附加约束条件以确保 DS 的全 局渐近收敛,将动态系统模型的参数学习问题转 化为求解一个约束优化问题,通过优化问题的求 解得到 DS 的参数,获得关于示教运动的非线性 DS 模型,并将其作为控制策略应用于机器人以实 现对示教运动的模仿。通过将动态系统方法引入 模仿学习,并考虑其在目标点处全局渐近收敛的 约束条件,相对于基于轨迹匹配的机器人模仿学 习方法,其除了具有较强的数据编码能力和抗噪 能力,而且可以保证生成的轨迹收敛到目标点, 避免了先前方法稳定性差的问题。同时,从未示 教区域开始的再现运动轨迹也可以保证收敛到目 标点,泛化能力将大大提高。以 7bot 机械臂为实 验对象,进行仿真实验和机器人实验研究,实验 结果表明:基于 DS 的模仿学习方法再现生成的 模仿轨迹具有全局渐近收敛的特点,从不同起始 位置开始的生成轨迹最终都可以到达目标点,学 习得到的运动模型在稳定性和泛化能力两方面表 现较好。 1 基于动态系统的示教运动建模 1.1 示教运动的表示及动态系统模型 在机器人模仿示教者示教运动的过程中,示 教者通过直接或者间接的方式指导机器人手臂完 成一次或多次的运动,机器人通过其内部的关节 传感器或者位置传感器,或者是外部传感器,如: Kinect 视觉传感,来捕获关于示教运动的相关信 息。其中示教运动的轨迹信息可以表示为如下的 集合形式 { ζt,n, ζ˙ t,n }Tn,N t=0,n=1 (1) ζ N Xn = [ζ0, ζ1, ζ2,··· , ζTn ] 式中:状态变量 表示机器人手臂末端执行器在 笛卡尔坐标系下的位置;对于不同的示教任务, 表示在某个模仿任务下的示教次数。而对于每一次 的示教轨迹数据集可以表示为 。 一阶动态系统被用来建模所记录的示教轨迹数 据,动态系统的一阶自治常微分方程表示为: ζ˙ = f (ζ)+ε (2) f : R d → R d ζ ζ˙ ε f θ θ 式中: 是非线性连续可微函数; 表示 机器人末端的位置; 对应于速度; 表示均值为 0 的高斯噪声项,代表了传感器测量的不准确性 以及示教过程的不稳定所带来的示教数据的误 差。且函数 可以由一组参数 来描述。具体 地,采用相应的方法,建模式 (2) 为具体表达形 式,进而可以求解 的值。 1.2 基于统计方法的高斯混合模型建模动态系统 N { ζt,n , ζ˙ t,n }Tn ,N t=0,n=1 为了得到动态系统具体的表达形式,考虑使 用基于统计方法的 GMM 来建立对于 DS 的概率 描述/估计。高斯混合模型是一种有限混合模型, 其通过有限的高斯函数的混合来建立对示教运动 数据的粗略的表示,同时消除数据的噪声。给定 一组 次示教轨迹数据 ,GMM 由以 下概率密度函数表示 p(ζn) = ∑K k=1 ωkGP(ζn|µk ,Σk) (3) 第 5 期 于建均,等:基于动态系统的机器人模仿学习方法研究 ·1027·
·1028· 智能系统学报 第14卷 GP(nlk,)= V()>0,YEeR,≠ 1 ep26.-ue''.-W (4) V()<0,YgeR,≠ (12) V(2)24 V(G)=0,()=0 式(3)、(4)中:GP()为高斯过程概率密度函 为了得到式(10)中DS的稳定条件,可以构 数,或可简化表示为N);K为GMM中高斯分布 造如下的Lyapunov函数: 的个数/混合模型的个数;为第k个高斯分布的 V0=2g-)'《-),geR (13) 权重,且∑,=1:4为该密度函数的均值向量; 由式(12)、(13)可以求得保证DS全局稳定的 为协方差矩阵;相应的GMM的待确定参数可 充分条件 以表示为0={w,,,k=1,2,…,K;且全部参数 (A+B)=0 (14) 表示为0={0,2,…,0x}。 A:+(A)<0 k=1,2,…,K 给定(、:的条件概率分布为 将式(14)作为DS的约束条件,则DS满足全 p(515.K)=N(215.5) (5) 局收敛的特性。同时,考虑高斯混合模型的性质 其中: 和式(14)的条件,其共同组成了具有全局渐进稳 i=pa+iaea(6-pa) 定的动态系统的完整的约束条件。此后,需要求 (6) 解动态系统模型的相应参数,得到对于动态系统 =2i-卫t2E2x (7) 完整的描述。 由此,¢对应于(的条件概率可以定义为 pt)-∑ANia) 3动态系统参数学习 (8) k=1 为了学习得到具有全局渐近稳定的DS,需要 wrp(k) wN(Sua.Ea) B= (9) 对其参数进行求解。由以上可知DS的未知参数 uN(Gu2马) 为0={w1,,…,心44,2,…,;,2,…,0本文 通过将动态系统参数学习的过程转化为求解一个 由条件期望可求得整个高斯混合模型中¢的 非线性优化问题,在保证模型全局渐近稳定的约 总的期望为 束条件下求解优化问题来计算日的最优值。使用 =fg0= H((A +B) (10) 对数似然函数作为优化的目标函数 N 其中: argminJ=-7∑∑ logp(0) (15) Ak=Siacd H()=cp(sk) 对应的约束条件为 k=1.2.…,K (11) (A'+Bx)=0 A+(A)<0 >0 B:=Hak-Aullck 0<w≤1 k=1,2,…,K (16) 式(10)、(11)得到的动态系统表示为一组线 性动态系统的非线性加权的形式,也即得到了关 2=1 于示教运动的动态系统模型的具体表达形式。 式中T=∑工是训练数据点总的数量,也即示教 2动态系统全局稳定的充分条件 数据的数量。 由以上得到的动态系统模型,为了保证动态 对于以上优化问题,可以将其化为非线性规 系统模型在示教的目标点具有全局收敛的特性以 划问题,借助于标准的优化约束技术可以很好 及提高其泛化能力,也即将在不同的初始点开始 地解决,最终得到具有全局渐近稳定的动态 最终到达同一目标点的模仿学习任务转化为具有 系统的最优参数θ,实现对于动态系统的完整 全局收敛的学习任务,则需要考虑其稳定性问 描述。 题。对于由i=f(G)定义的动态系统,根据Lya- 4机器人模仿学习系统的设计 punov稳定性理论:其在点处全局渐近稳定的 充分条件是存在一个连续可微的Lyapunov函数 在以上内容的基础上,设计了基于DS的机 V():R→R满足: 器人模仿学习系统。所设计的机器人模仿学习系
GP(ζn|µk ,Σk) = 1 √ (2π) 2d |Σk | exp{ − 1 2 (ζn −µk) T Σ −1 k (ζn −µk) } (4) GP(·) N(·) K ωk k ∑K k=1 ωk = 1 µk Σk θk = {ωk ,µk ,Σk}, k = 1,2,··· ,K θ = {θ1, θ2,··· , θK} 式 (3)、(4) 中: 为高斯过程概率密度函 数,或可简化表示为 ; 为 GMM 中高斯分布 的个数/混合模型的个数; 为第 个高斯分布的 权重,且 ; 为该密度函数的均值向量; 为协方差矩阵;相应的 GMM 的待确定参数可 以表示为 ;且全部参数 表示为 。 给定 ζ、ζ˙ 的条件概率分布为 p ( ζ˙|ζ, k ) = N ( ζ˙| ˜ ζ˙ k ,Σ˜ ζ˙ζ˙k ) (5) 其中: ˜ ζ˙ k = µζ˙k +Σζζ˙ kΣ −1 ζζk ( ζ −µζk ) (6) Σ˜ ζ˙ζ˙k = Σζ˙ζ˙k −Σζζ˙ kΣ −1 ζζkΣζζ˙k (7) 由此, ζ˙ 对应于 ζ 的条件概率可以定义为 p ( ζ˙|ζ ) = ∑K k=1 βkN ( ζ˙| ˜ ζ˙ k ,Σ˜ ζ˙ζ˙k ) (8) βk = ωk p(ζ|k) ∑K k=1 ωk p(ζ|k) = ωkN ( ζ|µζk ,Σζζk ) ∑K i=1 ωiN ( ζ|µζi ,Σζζi ) (9) 由条件期望可求得整个高斯混合模型中 ζ˙ 的 总的期望为 ζ˙ = ˜f (ζ) = ∑K k=1 Hk (ζ) (Akζ + Bk) (10) 其中: Ak = Σζζ˙ kΣ −1 ζζk Hk (ζ) = ωk p(ζ|k) ∑K i=1 ωip(ζ|i) Bk = µζ˙k − Akµζk ∀k = 1,2,··· ,K (11) 式 (10)、(11) 得到的动态系统表示为一组线 性动态系统的非线性加权的形式,也即得到了关 于示教运动的动态系统模型的具体表达形式。 2 动态系统全局稳定的充分条件 ζ˙ = f (ζ) ζ ∗ V (ζ) : R d → R 由以上得到的动态系统模型,为了保证动态 系统模型在示教的目标点具有全局收敛的特性以 及提高其泛化能力,也即将在不同的初始点开始 最终到达同一目标点的模仿学习任务转化为具有 全局收敛的学习任务,则需要考虑其稳定性问 题。对于由 定义的动态系统,根据 Lyapunov 稳定性理论:其在点 处全局渐近稳定的 充分条件是存在一个连续可微的 Lyapunov 函数 满足: V (ζ) > 0,∀ζ ∈ R d , ζ , ζ ∗ V˙ (ζ) < 0,∀ζ ∈ R d , ζ , ζ ∗ V (ζ ∗ ) = 0,V˙ (ζ ∗ ) = 0 (12) 为了得到式 (10) 中 DS 的稳定条件,可以构 造如下的 Lyapunov 函数: V (ζ) = 1 2 (ζ −ζ ∗ ) T (ζ −ζ ∗ ),∀ζ ∈ R d (13) 由式 (12)、(13) 可以求得保证 DS 全局稳定的 充分条件 { (Akζ ∗ + Bk) = 0 Ak +(Ak) T < 0 ∀k = 1,2,··· ,K (14) 将式 (14) 作为 DS 的约束条件,则 DS 满足全 局收敛的特性。同时,考虑高斯混合模型的性质 和式 (14) 的条件,其共同组成了具有全局渐进稳 定的动态系统的完整的约束条件。此后,需要求 解动态系统模型的相应参数,得到对于动态系统 完整的描述。 3 动态系统参数学习 θ = {ω1,ω2,··· ,ωk ;µ1,µ2,··· ,µk ;Σ1,Σ2,··· ,Σk} θ 为了学习得到具有全局渐近稳定的 DS,需要 对其参数进行求解。由以上可知 DS 的未知参数 为 。本文 通过将动态系统参数学习的过程转化为求解一个 非线性优化问题,在保证模型全局渐近稳定的约 束条件下求解优化问题来计算 的最优值。使用 对数似然函数作为优化的目标函数 argmin θ J (θ) = − 1 T ∑N n=1 ∑Tn t=0 logp ( ζt,n|θ ) (15) 对应的约束条件为 (Akζ ∗ + Bk) = 0 Ak +(Ak) T < 0 Σk > 0 0 < ωk ⩽ 1 ∑K k=1 ωk = 1 ∀k = 1,2,··· ,K (16) T = ∑N n=1 式中 Tn 是训练数据点总的数量,也即示教 数据的数量。 θ 对于以上优化问题,可以将其化为非线性规 划问题,借助于标准的优化约束技术可以很好 地解决,最终得到具有全局渐近稳定的动态 系统的最优参数 ,实现对于动态系统的完整 描述。 4 机器人模仿学习系统的设计 在以上内容的基础上,设计了基于 DS 的机 器人模仿学习系统。所设计的机器人模仿学习系 ·1028· 智 能 系 统 学 报 第 14 卷
第5期 于建均,等:基于动态系统的机器人模仿学习方法研究 ·1029· 统工作流程如图1所示。在机器人模仿学习系 具体地,实际中的示教数据是由上位机程序 统中,本文主要集中在对示教过程和学习过程的 处理示教轨迹信息,得到关于机械臂末端执行器 研究。 在笛卡尔坐标系中的位置x(xeR,d=2/d=3),即 为示教数据。对应于算法中的表述,经过计算, 机器人系统 对于示教数据有(=x、=。 关节 角度 逆向运动学 IO 学习算法 动态系统 模型DS) 图27bot机械臂 N次运动轨 正向运动学 Fig.2 7bot manipulator 迹示教 而对于具体的运动轨迹的示教,模仿学习示 图1模仿学习系统工作流程 教过程如图3所示。示教者通过抓取机械臂末端 Fig.1 Workflow of imitation learning system 进行运动示教,此运动可以是一个拿放物品的运 对应于模仿学习的3个基本的步骤,模仿学 动。图中的几个关键子过程可以说明整个示教过 习系统工作流程,首先,对于某个固定的模仿任 程是如何完成的,黑色的圆点代表示教运动的起 务(如:绘画或书写、拿放物品、篮球投篮等任 始点,黑色的星形点代表示教运动的终点或目标 务),通过手把手地抓取机器人手臂末端执行器进 点,实线代表已完成的示教运动过程,虚线代表 行多次目标点相对固定的轨迹示教,获得示教轨 未完成的示教运动过程。 迹数据;然后,将获得的示教轨迹数据预处理后 送入学习算法学习关于动态系统模型的参数,得 到动态系统模型。最后,将动态系统模型作为机 器人的控制策略,设置机器人手臂初始的运动位 置,结合机器人的控制系统完成对示教任务的模仿。 5机器人模仿学习实验研究 为了验证基于动态系统的机器人模仿学习方 法的有效性,在已设计的模仿学习系统的框架下 进行仿真实验和机器人实验研究。 (a)过程1 (b)过程2 5.1机器人平台和示教数据的获取 实验中的机器人平台是7bot机械臂,如图2 所示。7bot机械臂是一款桌面应用级的机械臂, 也是一款6轴的全金属智能机械臂。借助于Pro cessing和Arduino Due实现开发和控制,使用 USB线与计算机之间完成数据通信,能够实现在 三维空间的多种运动,使用方便灵活。 实际中,对于示教数据的获取,是在机械臂的 运动空间内通过抓取7bot机械臂末端进行N次 运动轨迹示教。由机器臂自身携带的关节角度传 感器记录运动轨迹信息。另外,也可以通过在仿 (c)过程3 (d过程4 真环境中拖动虚拟机械臂,进行示教并获取示教 图3模仿学习示教过程示意 数据。 Fig.3 Imitation learning demonstration process diagram
统工作流程如图 1 所示。在机器人模仿学习系 统中,本文主要集中在对示教过程和学习过程的 研究。 逆向运动学 正向运动学 N 次运动轨 迹示教 学习算法 动态系统 模型 (DS) 机器人系统 关节 角度 {ζ,ζ} . {ζ t,n , ζ t,n} . Tn, N t=0, n=1 ζ θ 图 1 模仿学习系统工作流程 Fig. 1 Workflow of imitation learning system 对应于模仿学习的 3 个基本的步骤,模仿学 习系统工作流程,首先,对于某个固定的模仿任 务 (如:绘画或书写、拿放物品、篮球投篮等任 务),通过手把手地抓取机器人手臂末端执行器进 行多次目标点相对固定的轨迹示教,获得示教轨 迹数据;然后,将获得的示教轨迹数据预处理后 送入学习算法学习关于动态系统模型的参数,得 到动态系统模型。最后,将动态系统模型作为机 器人的控制策略,设置机器人手臂初始的运动位 置,结合机器人的控制系统完成对示教任务的模仿。 5 机器人模仿学习实验研究 为了验证基于动态系统的机器人模仿学习方 法的有效性,在已设计的模仿学习系统的框架下 进行仿真实验和机器人实验研究。 5.1 机器人平台和示教数据的获取 实验中的机器人平台是 7bot 机械臂,如图 2 所示。7bot 机械臂是一款桌面应用级的机械臂, 也是一款 6 轴的全金属智能机械臂。借助于 Processing 和 Arduino Due 实现开发和控制,使用 USB 线与计算机之间完成数据通信,能够实现在 三维空间的多种运动,使用方便灵活。 N 实际中,对于示教数据的获取,是在机械臂的 运动空间内通过抓取 7bot 机械臂末端进行 次 运动轨迹示教。由机器臂自身携带的关节角度传 感器记录运动轨迹信息。另外,也可以通过在仿 真环境中拖动虚拟机械臂,进行示教并获取示教 数据。 x ( x ∈ R d ,d = 2/d = 3 ) ζ = x ζ˙ = x˙ 具体地,实际中的示教数据是由上位机程序 处理示教轨迹信息,得到关于机械臂末端执行器 在笛卡尔坐标系中的位置 ,即 为示教数据。对应于算法中的表述,经过计算, 对于示教数据有 、 。 图 2 7bot 机械臂 Fig. 2 7bot manipulator 而对于具体的运动轨迹的示教,模仿学习示 教过程如图 3 所示。示教者通过抓取机械臂末端 进行运动示教,此运动可以是一个拿放物品的运 动。图中的几个关键子过程可以说明整个示教过 程是如何完成的,黑色的圆点代表示教运动的起 始点,黑色的星形点代表示教运动的终点或目标 点,实线代表已完成的示教运动过程,虚线代表 未完成的示教运动过程。 (a) 过程 1 (b) 过程 2 (c) 过程 3 (d) 过程 4 图 3 模仿学习示教过程示意 Fig. 3 Imitation learning demonstration process diagram 第 5 期 于建均,等:基于动态系统的机器人模仿学习方法研究 ·1029·
·1030· 智能系统学报 第14卷 5.2实验步骤 在实际示教过程中,机器人可能需要多次示 本文在MATLAB环境中进行相关仿真实验, 教。图5分别为多次示教运动轨迹和经算法学习 为了简化实验操作的复杂性,主要在MATLAB环 后生成的平滑的轨迹流图,可见生成的轨迹均收 境中进行二维平面的模仿学习仿真实验,具体步 敛到示教运动的目标点。 骤如下: ····。示教轨迹点 -生成轨迹 *目标点 1)将实际采集的或在仿真环境中生成的多次 1.5 1.5 示教运动轨迹信息在MATLAB中进行预处理并 1.0 1.0 可视化,完成模仿学习的示教过程。 0.5 0.5 2)设置算法的相关初始值,将示教运动数据 0 由GMM模型编码为一动态系统模型。 -0.5 00.51.01.5 -0.5 00.51.01.5 x/m x/m 3)通过求解带有全局渐近稳定性约束条件的 (a)单次简单示教运动 (b)单次简单示教运动 学习效果 动态系统相关参数集合0={ωk,4,,学习得到 1.5 动态系统模型,完成模仿学习的学习过程。 1.0 1.0 4)由学习得到的动态系统模型生成新的模仿 0.5 运动轨迹,并分析生成的运动轨迹的相关结果。 5)最后将学习得到的动态系统模型作为控制 00.51.01.5 0.5 0.0.51.01.5 策略,结合机器人控制系统,完成对模仿学习过 x/m x/m (©)机械臂从不同起点 (@机械臂从不同起点 程中示教运动的模仿。 模仿的结果1 模仿的结果2 5.3仿真实验 图4单次简单示教运动与仿真结果 本部分主要针对简单示教运动和较复杂示教 Fig.4 Single simple demonstration motion and simulation results 运动进行实验仿真。通过将示教运动轨迹与提出 的方法生成的轨迹相比较来验证方法的有效性; 1.5 1.5 并结合仿真环境中的两连杆机械臂系统,展示最 1.0 1.0 终的学习效果。其中,规定简单示教运动是具有 0.5 05 一定弯曲度的类直线运动。而较复杂示教运动相 比于简单示教运动其示教运动体现出更多的示教 00.51.01.5 0.5 00.5 1.01.5 x/m x/m 变化,如二次及以上的曲线形状的运动、自相交 (a)多次简单示教运动 (b)多次简单示教运动 学习效果 运动或者它们的组合等。 图5多次简单示教运动与仿真结果 模仿学习性能的量化指标可采用机械臂末端 Fig.5 Multiple simple demonstration motion and simula- 位置与目标点的距离d、示教与再现运动的路径 tion results 积分长度之差dif=ds-ds以及机器人完成 由以上可知,学习得到的运动模型一方面具 模仿任务的时间与示教时间的差△,以此来衡量。 有很强的稳定性,轨迹均收敛到同一个目标点。 5.3.1简单示教运动实验 另一方面,由未示教区域开始的再现运动也可以 图4给出了单次简单示教的仿真结果。示教 在具有一定模仿相似性的前提下到达目标点附 运动代表的任务类型可以是绘画任务中的一笔或 近,误差较小,体现出模型具有较好的泛化能力。 者是拿和放物品的运动等。图4中,(a)为在 5.3.2较复杂示教运动实验 MATLAB环境中简单示教运动轨迹,起点是 对于较复杂的示教运动,相应的仿真结果如 [01]T,目标点[10.5]T;(b)为使用文中的学习方 图6、7所示。其中图6是对机器人进行单次示教 法,模型生成的使机器人到达目标点的平滑轨迹 后的实验结果。单次示教的起点为[-0250.5]', 流图,可见所有生成轨迹均收敛到目标点;(c)、目标点为[0.90.4'。通过算法学习后,模型生成 (d)中蓝色虚线为在MATLAB中模拟的一个两连 的轨迹均收敛到目标点[0.90.4「。类似地,分别 杆机械臂系统,将学习得到的运动模型作为控制 从不同的起点[-0.250.75]T和00.5T开始再现模 策略,从不同起点执行模仿的结果,起点分别为 仿,实验结果如图6(c)、(d)所示。机械臂末端与 [-0.251P、[00.5T。最终,机械臂末端与目标点 目标点的距离分别为d=0.0162m、d=0.0146m, 的距离分别为d=0.0113m、d=0.0091m。 误差较小
5.2 实验步骤 本文在 MATLAB 环境中进行相关仿真实验, 为了简化实验操作的复杂性,主要在 MATLAB 环 境中进行二维平面的模仿学习仿真实验,具体步 骤如下: 1) 将实际采集的或在仿真环境中生成的多次 示教运动轨迹信息在 MATLAB 中进行预处理并 可视化,完成模仿学习的示教过程。 2) 设置算法的相关初始值,将示教运动数据 由 GMM 模型编码为一动态系统模型。 θk = {ωk ,µk ,Σk} 3) 通过求解带有全局渐近稳定性约束条件的 动态系统相关参数集合 ,学习得到 动态系统模型,完成模仿学习的学习过程。 4) 由学习得到的动态系统模型生成新的模仿 运动轨迹,并分析生成的运动轨迹的相关结果。 5) 最后将学习得到的动态系统模型作为控制 策略,结合机器人控制系统,完成对模仿学习过 程中示教运动的模仿。 5.3 仿真实验 本部分主要针对简单示教运动和较复杂示教 运动进行实验仿真。通过将示教运动轨迹与提出 的方法生成的轨迹相比较来验证方法的有效性; 并结合仿真环境中的两连杆机械臂系统,展示最 终的学习效果。其中,规定简单示教运动是具有 一定弯曲度的类直线运动。而较复杂示教运动相 比于简单示教运动其示教运动体现出更多的示教 变化,如二次及以上的曲线形状的运动、自相交 运动或者它们的组合等。 d diff = ∫ ζ ds− ∫ ζ˜ ds |∆t| 模仿学习性能的量化指标可采用机械臂末端 位置与目标点的距离 、示教与再现运动的路径 积分长度之差 以及机器人完成 模仿任务的时间与示教时间的差 ,以此来衡量。 5.3.1 简单示教运动实验 [0 1]T [1 0.5]T [−0.25 1]T [0 0.5]T d = 0.011 3 m d = 0.009 1 m 图 4 给出了单次简单示教的仿真结果。示教 运动代表的任务类型可以是绘画任务中的一笔或 者是拿和放物品的运动等。图 4 中 , (a ) 为在 MATLAB 环境中简单示教运动轨迹,起点是 ,目标点 ;(b) 为使用文中的学习方 法,模型生成的使机器人到达目标点的平滑轨迹 流图,可见所有生成轨迹均收敛到目标点;(c)、 (d) 中蓝色虚线为在 MATLAB 中模拟的一个两连 杆机械臂系统,将学习得到的运动模型作为控制 策略,从不同起点执行模仿的结果,起点分别为 、 。最终,机械臂末端与目标点 的距离分别为 、 。 在实际示教过程中,机器人可能需要多次示 教。图 5 分别为多次示教运动轨迹和经算法学习 后生成的平滑的轨迹流图,可见生成的轨迹均收 敛到示教运动的目标点。 示教轨迹点 生成轨迹 目标点 −0.5 0 0.5 1.0 1.5 x/m 0 0.5 1.0 1.5 y/m −0.5 0 0.5 1.0 1.5 x/m 0 0.5 1.0 1.5 y/m (a) 单次简单示教运动 (b) 单次简单示教运动 学习效果 −0.5 0 0.5 1.0 1.5 x/m 0 0.5 1.0 1.5 y/m −0.5 0 0.5 1.0 1.5 x/m 0 0.5 1.0 1.5 y/m (c) 机械臂从不同起点 模仿的结果1 (d) 机械臂从不同起点 模仿的结果2 图 4 单次简单示教运动与仿真结果 Fig. 4 Single simple demonstration motion and simulation results −0.5 0 0.5 1.0 1.5 x/m 0 0.5 1.0 1.5 y/m −0.5 0 0.5 1.0 1.5 x/m 0 0.5 1.0 1.5 y/m (b) 多次简单示教运动 学习效果 (a) 多次简单示教运动 图 5 多次简单示教运动与仿真结果 Fig. 5 Multiple simple demonstration motion and simulation results 由以上可知,学习得到的运动模型一方面具 有很强的稳定性,轨迹均收敛到同一个目标点。 另一方面,由未示教区域开始的再现运动也可以 在具有一定模仿相似性的前提下到达目标点附 近,误差较小,体现出模型具有较好的泛化能力。 5.3.2 较复杂示教运动实验 [−0.25 0.5]T [0.9 0.4]T [0.9 0.4]T [−0.25 0.75]T [0 0.5]T d = 0.016 2 m d = 0.014 6 m 对于较复杂的示教运动,相应的仿真结果如 图 6、7 所示。其中图 6 是对机器人进行单次示教 后的实验结果。单次示教的起点为 , 目标点为 。通过算法学习后,模型生成 的轨迹均收敛到目标点 。类似地,分别 从不同的起点 和 开始再现模 仿,实验结果如图 6(c)、(d) 所示。机械臂末端与 目标点的距离分别为 、 , 误差较小。 ·1030· 智 能 系 统 学 报 第 14 卷