1
关注中国自动化产业发展的先行者!
2024
2024中国自动化产业年会
2023年工业安全大会
OICT公益讲堂
当前位置:首页 >> 资讯 >> 行业资讯

资讯频道

机器人演示编程技术研究进展
  • 作者:周忠祥,胡晋,王越,熊蓉
  • 点击数:46727     发布时间:2020-06-22 12:38:00
  • 分享到:
制造业的转型升级对机器人的部署效率提出了很高的要求,现有的示教盒编程模式适合于对简单作业的位置和轨迹示教,难以快速实现制造业中大量装配作业的示教。而机器人演示编程技术能够使机器人系统直接从人的演示操作中提取有效信息,并将该信息转化为机器人的运动程序,从而使机器人完成相应的操作,能够大大加快机器人部署的节奏。本文结合制造业的发展需求,总结了机器人演示编程技术的国内外研究现状,并介绍本课题组在机器人演示编程技术方面的工作,最后探讨了机器人演示编程技术未来的研究方向。
关键词:

摘要:制造业的转型升级对机器人的部署效率提出了很高的要求,现有的示教盒编程模式适合于对简单作业的位置和轨迹示教,难以快速实现制造业中大量装配作业的示教。而机器人演示编程技术能够使机器人系统直接从人的演示操作中提取有效信息,并将该信息转化为机器人的运动程序,从而使机器人完成相应的操作,能够大大加快机器人部署的节奏。本文结合制造业的发展需求,总结了机器人演示编程技术的国内外研究现状,并介绍本课题组在机器人演示编程技术方面的工作,最后探讨了机器人演示编程技术未来的研究方向。

关键词:机器人学习;机器人演示编程;机器人示教学习

1 引言

在过去十几年中,随着工业机器人的大规模部署,企业的生产力和产品质量得到了大幅度提升,这些提升得益于工业机器人可以快速、高精度地完成大量重复性的工作,然而为了让机器人能够完成特定的工作,往往需要专业的机器人工程师花费几天甚至几个月的时间进行机器人程序的设计和编写。与此同时,随着中国制造业的转型升级,工业机器人的应用领域和应用场景大大扩展,从传统的汽车制造、机械加工向3C、五金、家具等各个离散制造行业推广应用。这些新兴应用行业具有典型的柔性制造特性,即多品种、小批量、短周期,其生产的快节奏对机器人部署编程的快速性、易用性提出了很高的要求。但传统的工业机器人编程模式难以满足这样的需求,现有的示教盒编程模式适合于对简单作业的位置和轨迹示教,难以快速实现制造业中大量装配作业的示教;而离线编程模式需要完整精确的设计模型,并由精通机器人专业技能的人员和精通行业应用工艺的人员合作完成。机器人部署的效率瓶颈极大地限制了工业机器人在中小型制造企业的推广使用。提高工业机器人的易用性,特别是简化装配作业编程已经成为工业机器人在3C、五金、家具等制造行业推广应用亟需解决的一个重要问题。

演示编程(Programming by Demonstration,简称PbD),也称为演示学习(Learning fromDemonstration,简称LfD),是由机器人系统从人的演示操作中提取有效信息,进而将该信息转化为机器人的运动程序及操作参数,从而使机器人完成相应的操作[1]。演示编程提供了一种新的向机器人传递信息的方式,是简化机器人编程的重要途经。与传统机器人编程方法相比,它可以在机器人使用和编程方面大大降低对操作者的专业知识要求,对于机器人的推广具有重要意义。

2 机器人演示编程技术研究现状

根据所提取的学习信息,现有的机器人演示编程研究可以分为面向底层运动的演示编程和面向高层任务的演示编程。前者是对机器人运动控制律的学习,分为对运动轨迹的学习和对力控制的学习,主要涉及信息的采集、提取和转化应用。后者则面向由多个运动组合而成的某个特定任务或综合任务,涉及操作物体、操作动作、动作序列、操作结果等多个方面,不仅涉及多方面的信息采集、提取和转化应用,而且需要对提取到的信息进行推理理解。

2.1 面向底层运动的演示编程研究

面向底层运动的演示编程研究可以分为对运动轨迹的演示学习和对作业力控制的示教学习,并包含“数据获取”和“学习建模”两个阶段。在数据获取阶段,相关方法需要解决如何采集记录示教者的运动数据。在学习建模阶段,相关方法需要解决如何从示教数据中提取有效信息并进行学习应用。对运动轨迹的演示学习具有较长的研究历史,形成了相对成熟的理论和方法。

2.1.1 运动轨迹的演示学习

运动轨迹的演示学习有两种数据采集方式,如图1所示。一种是映射方法,即采用视觉、惯导、数据手套等传感器获得示教人的运动数据,进而将人的数据映射到机器人[2~4]。这种方法的优点是对于示教者而言比较直观,生成的轨迹比较连续平滑而且符合人类的期望,但是由于示教者和机器人两者存在构型、尺寸、能力等方面的差异,需要建立两者之间的匹配映射。另一种是非映射方法,由示教者通过遥控的方式或者牵引机械臂的动觉示教方式控制机器人的运动,直接记录机器人本体运行的数据作为下一步学习的基础[5~7]。这类方法省去了示教者和机器人之间的数据映射,缺点是生成轨迹不够平滑,并且精度较低,只能应用于一些对精度要求较低的操作场景,比如:喷涂或码垛。并且对于示教者而言,直接控制一台多自由度的机械臂也很困难,因此机器人需要具有被动的重力自平衡功能或者主动的运动跟随能力,但后者存在对于示教者的安全隐患。

56.jpg

(a)映射方法 (b)非映射方法中的动觉示教方法

图1 运动轨迹演示学习中的数据采集方式

所采集/映射得到的数据可以直接用于机器人执行,但考虑到泛化应用需求,例如适应不同作业位置,需要基于以上数据对机器人的运动控制模型进行学习。目前主要方法有策略学习和回报学习两大类。策略学习方法学习示教数据中状态到动作的映射策略函数,属于监督学习的范畴;而回报学习方法学习示教数据中隐式的评价动作好坏的回报函数,属于逆强化学习范畴。用比较通俗的语言来描述,策略学习是“学习怎样运 动”,而回报学习是“学习怎样运动比较好”。

(1)动作策略学习

策略学习方法也称为行为克隆(Behavioral cloning)。一般的工业机械臂能够通过人工导引或示教盒输入等方式来示教机械臂的运动位置或运动轨迹,并在后续使用中重复再现人示教的结果。这种示教再现方式的缺点在于机械臂只能够简单重复示教结果,无法适应环境变化。示教学习与示教再现的区别在于示教学习方法能够从示教数据中提取有效信息,生成运动模型,并应用到新任务场景中。

在早期研究成果中[8~11],工业机械臂一般通过示教器遥控的方式进行示教。示教过程中,机械臂末端位姿、与被操作物体的接触力、障碍物位姿及目标位置等信息被记录下来。然后轨迹中的多个关键点从示教数据中被分割提取出来。最终学习得到的映射策略可以描述为一连串关键帧状态和帧与帧间动作组成的序列。

随着统计学习方法的发展,大量的研究成果使用隐马尔科夫模型(Hidden Markov Model)这一概率统计模型来对示教数据进行建模。隐马尔可夫模型是一种非常强大的处理时序数据的方法,其基本思想是把输入数据描述为一连串隐含的离散状态的转移,如图2所示。Tso等人[12]利用隐马尔科夫模型编码和复现笛卡尔空间轨迹。Akgun等人[13]使用隐马尔科夫模型同时对动作数据和环境感知数据进行建模。Calinon等人[14]采用一种带有明确时间周期的隐马尔科夫模型来描述运动中的时空约束,在任务执行阶段显示出了一定的抗扰动性。

57.jpg

图2 示教数据使用隐马尔科夫模型建模

总的来说,上述方法[8~14]都是使用一连串离散状态及状态间的转换来描述示教轨迹。这类方法的缺点是无法获得一条连续平滑轨迹,这样就无法直接控制机器人的各关节运动。在实际应用中,研究者一般使用多条轨迹的平均[15]或者在离散状态点间插值[16]的方法来得到一条连续平滑轨迹。

为了直接对连续轨迹进行学习,研究者提出了不同方法。在早期的研究成果[17、18]中,神经网络是最常见的一类方法。Liu等人[17]使用多层神经网络对打磨动作进行建模,并且使用另一个神经网络对动作和执行效果之间的关系进行建模。Kaiser等人[18]使用隐含层带延时的径向基函数神经网络对示教动作进行建模,并在Puma260机械臂上实现了插孔操作和开门操作。

随着移动机器人和仿人机器人相关领域的发展,研究者更多关注生物的神经结构和运动机理,并从中得到启发提出了一套基于动态系统的方法,称为动态运动单元(Dynamic movementprimitives)。动态运动单元方法由Ijspeert等人[19、20]较早提出,其基本思想是将入轨迹用一个受到外部扰动的非线性动态系统进行描述。外部扰动项是多个高斯核函数的加权叠加的参数模型,其权重参数是可以根据示教轨迹采用监督学习算法训练得到,如图3所示。根据非线性系统的不同性质和扰动项的不同参数,该方法可以生成具有任意形状复杂度,并且带有点收敛或极限环性质的轨迹。这两种性质的轨迹分别可以用于描述非周期性运动(如抓取)和周期性运动(如行走)。动态运动单元具有很多优点:可以简单快速完成系统模型的训练以及新轨迹的生成,并可方便地融入其他的方法。Hoffmann等人[21]在动态运动单元中加入障碍物的排斥力场实现了避障的效果。Mülling等人[22]通过综合多次学习得到的动态运动单元模型实现机器人乒乓球作业任务。动态运动单元的缺点是模型是确定性的,而人对于某一任务的示教结果不可能是完全相同的,动态运动单元很难对多次示教结果的不确定性进行建模。此外模型中包含很多需要预先定义的超参数,超参数选择不当容易造成系统整体的拟合效果欠佳。

58.jpg

图3 加权和形式的外部扰动示意图

为了对示教结果的不确定性加以考虑,研究者提出了一系列基于高斯混合模型(Gaussian mixture model)的示教学习方法。基本思想是使用多个高斯分布来对轨迹的不同阶段进行建模,并且使用高斯分布的协方差来描述不同阶段示教轨迹的不确定性,如图4所示。Calinon等人[23]最早在仿人机器人上采用高斯混合模型实现了对基本的抓取动作的学习。在后续工作中[26]中,Calinon等人使用高斯混合模型的协方差对运动过程中不同阶段任务空间和关节空间轨迹跟踪精度进行建模,并应用到不同连杆长度的多个两自由度机械臂模型中。Osa等人[27]使用高斯混合模型对机械臂末端轨迹进行建模,并使用学习到的协方差构建存在障碍物的环境中符合不同跟踪精度要求的目标函数。

59.jpg

图4 二维示教轨迹使用高斯混合模型建模

(2)动作回报学习

回报学习(Reward learning),也称为逆强化学习(Inverse reinforcement learning)或者逆最优控制(Inverse optimal control)。与策略学习不同,回报学习不是学习示教数据的映射策略,而是研究示教者完成示教动作时用于评价动作好坏的性能指标,即其算法输出是示教数据所优化的隐式回报函数。与策略学习方法相比,回报学习方法应对不同环境的适应能力更强。当执行环境或机器人本体模型发生较大改变时,策略学习方法得到的映射函数将很难适用,需要重新示教。而回报学习方法得到的回报函数与任务更加相关。在接收新的环境和模型信息后,用户能够复用之前得到的回报函数来求解合适的动作策略。

Ng等人[28]最早在强化学习框架中指出以下局限:回报函数并不总是己知,而是需要被学习的。基于这一思考他们提出并使用逆强化学习这一术语来命名该问题。Ng等人将回报函数视作对一项任务的最简洁、鲁棒以及可移植的描述方式。回报学习问题存在如下挑战:第一个挑战是该问题本身是一个不适定(ill posed)问题,即存在多种可能的回报函数都能够描述同一组示教数据;第二个挑战是示教数据中可能包含了多个人的示教结果或者不同任务的示教结果,即示教数据的局部最优性问题。

为了解决第一个挑战,研究者提出了多种方法,其基本思想是最小化当前最优运动策略与示教运动策略之间的差异。当前最优运动策略可以基于当前估计的回报函数和环境信息,使用强化学习方法或者最优控制方法计算得到。不同的方法在策略差异的描述、优化方法等方面各有不同。Ng等人[29]对回报函数的形式做出了限制,将其定义为多个特征函数的加权组合,而权重是待学习参数。随后作者将最小化当前最优运动策略与示教运动策略的累积折扣回报期望的欧氏距离作为目标,并使用二次规划方法求解回报函数中的未知参数。Syed等人[30]定义当前最优运动策略与示教运动策略的累积折扣回报期望的差值为目标函数,采用博弈论中的最大最小算法搜索未知参数值。后续工作中[31],作者使用了线性规划方法来加快未知参数的求解速度。Ratlff等人[32]提出了基于结构化最大间隔框架的目标函数,并使用凸优化方法进行求解。Ramachandran等人[33]提出了基于贝叶斯估计框架的学习方法,并通过最大化后验概率来估计回报函数。为了能够考虑回报函数的所有可能性,Ziebart等人[34]提出了基于最大熵框架的学习方法,使用与回报值正相关的指数函数表示示教数据出现的概率,并通过最大化示教数据的似然概率来估计回报函数。最大熵逆强化学习方法的一个优点是不需要计算当前最优运动策略,而是通过在状态空间中均匀采样的方式来估计示教数据的似然概率。研究者对基于采样的逆强化学习方法做了进一步发展,区别是采样方式的不同。Boulariasd等人[35]提出了相对熵逆强化学习方法,使用了重要性采样方法在状态空间中任意分布进行采样。Kalakrishnan等人[36]提出了路径积分逆强化学习方法,其在示教轨迹的邻域进行采样。此外,部分文章没有使用传统的特征函数的加权组合形式的回报函数。Levine等人[37]使用高斯过程形式的回报函数,而Wulfmeier等人[38]使用神经网络形式的回报函数。上述方法中模型参数也是通过最大化示教数据的似然概率进行估计。

针对第二个挑战,研究者提出了相应方法来学习示教数据中的不同种类的回报函数。Babes等人[39]提出基于期望最大化算法的学习算法,能够对输入数据进行聚类,并且计算每一类数据对应的回报函数。Choi等人[40]在贝叶斯估计框架的逆强化学习方法中引入狄利克雷过程混合模型作为先验,能够自动选择最适合输入数据的回报函数类别数目。

上面介绍的方法[39、40]可以部分解决示教数据的局部最优性带来的问题。但这些方法依然假设了每一条示教轨迹可以使用一种回报函数进行评价。而在实际情况中,一条示教轨迹的不同阶段可能完成了不同任务,这就意味着即使一条示教轨迹也无法使用单一的回报函数进行描述。针对这一问题,研究者提出了几种方法。Nguyen等人[41]提出了基于期望最大化算法的回报学习方法,能够学习轨迹中不同子阶段的切换状态和各阶段回报函数。但是该方法需要用户提前定义回报函数的个数以及每个回报函数中的参数。Michini等人[42]提出了一种非参数贝叶斯框架的学习算法,能够自动对输入数据进行分割。但是该方法得到的回报函数属于子目标点回报函数。该函数在机器人处于子目标点时输出回报值为正数,而在其他状态时输出回报值均为零。这种回报函数的使用局限性较大,无法用于评价运动执行过程中动作的好坏。Ranchod等人[43]提出了基于贝塔过程隐马尔科夫模型的学习方法,也属于非参数贝叶斯框架的方法,能够自动确定最优的回报函数个数和切换状态。但该方法得到的回报函数属于表格型回报函数,无法应用在状态空间连续高维的场景中,如机械臂的运动规划。总结一下,对于一条示教轨迹不同阶段的回报函数学习问题,现有方法均存在一定缺陷,如需要提前指定回报函数个数和类型,且得到的回报函数形式比较简单,不适用于机械臂运动规划这一类具有高维连续状态空间的任务。

2.1.2 作业力控制的示教学习

随着运动轨迹演示学习的逐步完善,近年来研究人员开始对机器人作业力控制的示教学习进行研究,以提高机器人与环境的交互能力。如图5所示,现有力控制的示教学习主要采用非映射方式。L.Rozo等[44]采用触觉设备来记录机器人运动过程中的受力反馈,并通过遥控机器人对运动轨迹和力进行示教,使用隐马尔科夫模型(HMM)和高斯混合模型(GMM)对运动轨迹和力进行建模,最终使用高斯混合回归(GMR)生成机器人的动作。A.Montebelli等[45]以动觉示教方式对机器人的运动进行示教,通过在机械臂末端加装力传感器来记录示教动作对应的力信息,采用动态系统方法对轨迹和力进行建模,使机器人完成木板抛光的操作。上述方法的输出通常为位置和力的轨迹,在另一类方法中,学习的目标不是位置和力的轨迹,而是生成阻抗参数可变的柔顺控制器。P.Kormushev等[46]采用牵引和遥控的方式,利用多次示教轨迹的方差来估计运动过程各个阶段的阻抗参数,使机器人学会开门、拿熨斗等动作。K.Kronander等[47]通过摇晃和握紧机械臂的方式在牵引机械臂的同时直接调整轨迹对应部分的阻抗参数,使机器人实现柔顺倒水这一操作。

60.jpg

(a)动觉示教方式(b)遥控示教方式

图5 力控制的示教学习中的示教方式

2.2 面向高层任务的演示编程研究

面向高层任务的演示编程研究开始于2000年左右,近年来逐渐成为机器人和人工智能领域的研究热点。与面向底层运动的演示编程相比,面向高层任务的演示编程涉及多个物体和多种操作,对信息的提取理解和转化应用提出了更高的要求。

与面向底层运动的演示编程类似,面向高层任务的演示编程的数据采集方式也有非映射和映射两种方式。非映射方式主要是结合动觉示教和语音来定义操作序列,例如华盛顿大学的Y.Artzi等[48]和M.Cakmak等[49]通过语音向机器人传递操作开始、结束与位姿保存的指令,结合语音牵引机械臂进行操作中关键位姿的定义,从而让PR2机器人依次完成取、放、递、叠毛巾四种动作。这类方式适合于简单任务指令的演示编程,但示教者难以操作机器人完成复杂的动作。因此,大多数研究采用对于示教者而言更为方便和自然的映射方式,即由人进行任务演示,由演示编程系统通过传感器获得的信息进行操作语义理解,并根据人的操作与机器人操作之间的映射,生成机器人的执行程序。该方式应用方便,但研发难度大,目前的研究热点集中在操作语义理解这一问题上,分为基于位置变化的操作语义理解、基于动作/手势识别的操作语义理解以及基于规则/约束的操作语义理解。

2.2.1 基于位置变化的操作语义理解

基于位置变化的操作语义理解的基本思想是操作会改变物体的位置,因此可以通过操作前后物体的位置信息进行操作语义推理。德国哥廷根大学E.E.Aksoy等[50、51]通过基于能量的聚类方法对图像中的物体进行分割,判断物体之间是否接触和覆盖,构建出各物体的关系图,利用时间轴上图模型的变化推理得到人的操作意图。美国马里兰大学K.Zampogiannis等[52]根据物体的3D点云信息分割物体,使用物体间的前后、左右和上下等位置关系形成“谓词向量序列(Predicate Vector Sequence,PVS)”的任务描述子,从而让机器人学习完成做沙拉一类的简单家务。为了获取更准确的位置关系,德国R.Cubek等[53]通过检测场景中的增强现实标签以获取物体的位置信息,让机器人实现将积木放入指定位置的任务。但该方法只能获取物体准确的平面位置,并不能得到物体精确的三维位姿。

可以看到,该类方法主要是根据操作对场景物体的影响来实现对操作动作的推理,难以适用于操作前后物体的位置只有细微变化甚至不变的作业。

2.2.2 基于动作/手势识别的操作语义理解

基于动作/手势识别的操作语义理解的基本思想是操作的语义往往与操作动作直接对应,借助动作识别在人机交互领域的丰硕成果,可以将操作语义理解转化为操作动作/手势的识别。手势识别方面的成果有基于单张图像学习手势外观特征的静态手势识别[54、55]、基于多张运动历史图像描述人类手势变化过程的手势识别[56]等。研究人员也运用机器视觉方法进行操作动作识别,如美国马里兰大学Y.Yang[57]等通过训练卷积神经网络对6种不同的抓取手势进行识别,但是该方法需要大量的手势操作样本图片才能获得较好的手势特征描述;中国科学技术大学的杨剑宇[58]等通过视觉获得手的运动轨迹,根据三维轨迹的曲率和绕率等参数获取轨迹的索引,从而根据索引与动作库中具有相似索引的动作轨迹进行匹配,区分不同的动作。近年来,随着其他传感器种类的丰富,也出现了采用深度传感器的手势识别[59],但是现有方法主要面向简单无物体操作的手势。人机交互领域的动作识别,对被操作物体的关注较少,但实际上被操作物体包含了重要的操作信息,并且不同的操作可以具有相同的手势,与操作语义并非一一对应。基于这个思想,瑞典KTH的H.Kjellstr.m等[60、61]在视觉识别手势的基础上,结合被操作物体的功能属性,来提高动作语义识别的准确率,实现了对翻书和倒茶等操作动作的识别。

2.2.3 基于规则/约束的操作语义理解

基于规则/约束的操作语义理解的基本思想是从多次的演示中提取求解问题的规则或约束,并将提取到的规则或约束应用于求解同类的问题。澳大利亚国立大学的J.R.Chen[62]面向主轴装配任务,提出使用图模型表示人在同一主轴装配任务中的多种装配方式,图中的节点表示装配过程中的某一状态,进而基于时间和能量等准则从图模型中选择最优的装配方式,即状态转移路径。德国Karlsruhe大学的M.Pardowitz[63]和瑞典KTH的S.Ekvall[64]使用最长公共子序列的方法从多次餐具放置任务演示中提取各种餐具放置任务的顺序约束,当需要摆放新的餐具组合时,机器人自动搜索满足约束条件的餐具放置顺序,然后执行。英国帝国理工大学的K.Lee等[65]利用上下文无关语法对多次汉诺塔问题求解的演示过程进行学习,从而获得求解该问题的基本约束和子结构,使得机器人能够解决不同盘子数目的汉诺塔问题。

2.2.4 机器人演示编程研究现状总结

综上所述,面向底层运动的机器人演示编程学习的是单一操作的轨迹或力的控制规律,其中轨迹的演示学习已经形成了一定的具有较好通用性的理论和方法,并被推广应用到实际的机器人系统中,力控制和高层任务的演示学习取得了一定的进展,但总体还处于探索研究阶段。

运动轨迹层面的演示编程取得较好研究进展的原因在于需要提取的信息(轨迹)内容单一,且表示形式简单,可以使用统一严格的数学模型进行表达,与具体任务以及数据采集方式没有关系。而力控制示教学习的难点是现有的非映射方式难以进行精密力示教,并且难以直接获取人操作物体时的力信息,从而导致无法学习力控制的变化规律。对于面向高层任务的演示编程,映射是一种直观自然且更具通用性的方式。现有的研究聚焦于操作语义理解问题上,且往往使用比较单一的信息,能够实现对一些简单任务的学习。由于工业装配作业不仅操作语义难以理解,而且需要装配工件的精确位姿信息和装配力信息,目前的方法还难以支持工业机器人实现装配等复杂作业的演示编程。

3 研究团队在机器人演示编程方面的工作

面向制造业转型升级中企业的发展需要,针对当前的机器人演示编程技术应用于工业装配任务中存在操作语义理解、连续操作识别与分割、高精度工件位姿估计等问题,本课题组研发了面向装配作业的工业机器人演示编程系统,如图6所示。面向装配作业的机器人演示编程系统由两个单元组成,分别是信息感知与推理单元和机器人执行单元,其中信息感知与推理单元也包括了两部分,即人类演示视频中的信息感知模块与物体之间的装配关系推理模块,机器人执行单元包括机器人执行程序生成模块以及机器人抓取规划模块。

61.jpg

图6 面向装配作业的工业机器人演示编程系统

3.1 演示视频中的信息感知及推理

面向装配作业的机器人演示编程系统首先需要解析人类的演示视频,关键问题是解析演示视频中包含的语义信息,即:操作的物体、操作完成后物体的位姿、以及使用的操作技能。针对以上三个问题,本课题组在人类演示视频中的信息感知单元设计了三个子模块,分别是物体识别、物体位姿估计、装配技能估计。

3.1.1 物体识别

机器人演示编程系统需要从人类的演示视频中解析得到演示者操作了什么物体,但是工业装配涉及的物体复杂多样,基于人工特征的方法难以有效实现物体检测,得益于深度学习在计算机视觉领域的显著成果,本课题组采用了基于深度学习的物体识别方法[66]

3.1.2 物体位姿估计

机器人演示编程系统需要从人类的演示视频中解析得到演示者操作完成后物体的空间姿态,使机器人能够确定物体装配的目标状态。由于工业装配任务中对工件位姿的定位精度有极高的要求,并且工件CAD模型是易获取的,本课题组采用了基于点对特征的物体6自由度空间位姿估计方法[67]

3.1.3 装配技能估计

机器人演示编程系统需要从人类的演示视频中解析得到演示者使用了什么样的装配技能,例如放置、按压、拧等,这涉及到单个装配技能的识别以及多个连续装配技能的分割问题。由于单一模态具有的歧义性以及需要同时对装配技能序列进行分割和识别,本课题组提出了融合图像彩色信息、深度信息的多模态装配技能识别算法,并结合滑动窗口的分割点检测和基于迭代动态规划的优化方法实现连续装配技能分割[68]

3.1.4 装配关系推理

由于基于视觉的物体位姿估计结果不可避免的存在误差,让机器人直接执行此结果不仅无法满足装配精度的要求,甚至可能导致安全问题,因此本课题组设计了物体之间的装配关系推理模块[69],用于解决不确定观测下的装配关系和装配位姿同时推理与估计的问题。我们提出了使用概率图模型表示空间知识,概率图中的节点表示工件的位姿、工件之间的装配关系,以及工件观测信息三种信息,概率图中的边表示相连的两个节点之间的信息约束,这些信息均采用概率分布进行建模。借助图模型对观测量和估计量进行建模,变量推理就等价于求解最大似然参数估计问题。通过同时推理物体之间的装配关系以及计算物体的空间位姿,使得物体的位姿结果能够满足装配任务中高精度的要求。

人类的演示视频经过信息感知与推理单元的解析与推理之后,机器人演示编程系统可以得到人类操作中操作物体与操作技能的语义信息以及精确的物体位姿。

3.2 机器人执行程序生成与抓取规划

机器人执行程序生成模块可根据操作者的演示信息,生成完整的机器人运动程序。机器人抓取规划模块用于规划物体的稳定抓取配置,从而使机器人从物料区稳定地抓取待操作的物体。

3.2.1 基于动作策略学习的机器人程序生成

由于人体手臂与机械臂在尺寸、运动能力等方面的差异,若直接将采集得到的示教者的运动轨迹数据应用到机器人上,可能会超出机器人的运动限制从而导致机器人损坏。为了解决示教者与机械臂的动作对应问题,本课题组提出了改进的仿射变换方法,能够保证末端和肘部的跟踪精度并且保持人体动作数据的仿射不变性。为了不破坏机器人动作的仿人性,在动作学习的建模阶段,提出同时学习末端和肘部运动数据的概率建模方法。在动作生成阶段,提出结合动态运动单元和学习得到的概率模型的方法分别生成末端和肘部轨迹。最后为了解决笛卡尔空间轨迹到关节空间轨迹的转换问题,提出了基于序列二次规划的关节运动轨迹生成方法,并提出了基于弗雷歇距离的关节角选择算法来初始化关节轨迹。图7给出了打乒乓球过程中挥拍动作的人机对应结果。

62.jpg

图7 挥拍动作的人机对应结果

3.2.2 基于动作回报学习的机器人程序生成

针对示教数据的分阶段局部最优特性,即示教轨迹不同阶段对应不同回报函数,提出同步轨迹分段与回报学习方法。该方法使用基于采样的逆强化学习方法提取加窗轨迹段特征,通过比较相邻窗口轨迹特征得到初始分段点,然后基于动态规划方法在初始分段点邻域搜索最优分段点,最后使用基于采样的逆强化学习方法学习得到各子分段的回报函数。所学习到的回报函数个数和类型不存在限制,且适用于机械臂动作规划这一具有高维连续状态空间的任务。为生成适应新环境的运动轨迹,提出基于泛函优化的动作生成方法。该方法结合学习到的子阶段回报函数及其他约束项如避障、到点约束来生成总的轨迹回报泛函,并使用泛函梯度方法生成新轨迹。图8给出了在水杯搬运任务中,当环境发生变化时,机器人动作的生成结果。

63.jpg

图8 水杯搬运任务中的动作生成结果

3.2.3 机器人抓取规划

由于工业装配场景中工件复杂多样,人工设计工件的抓取方式是一项具有挑战性的任务。为了解决机器人抓取规划的鲁棒性和实时性,本课题组提出了一种基于深度图像的机器人抓取规划算法。该算法由两个级联的卷积网络构成,第一个卷积网络回归最优抓取区域,第二个卷积网络对在最优区域中采样的抓取候选进行评估和排序,最后输出一系列高质量的抓取配置。使机器人能够根据当前的观测自动规划稳定的抓取方式,为完成指定的物体操作任务创造条件。

3.3 系统验证

基于上述研究成果,本课题组通过邀请不同的演示人演示积木组装、手电筒组装、开关盒组装、椅子组装等不同的装配任务,验证了面向装配作业的机器人演示编程系统与所提方法的合理性。图9为不同的演示装配场景,积木组装和手电筒组装为人演示,仿真机器人执行,其他为实物机器人执行。

64.jpg

图9 机器人演示编程系统完成不同的演示装配任务

4 机器人演示编程技术未来研究方向

结合制造业转型升级过程中对机器人技术的需要,以及机器人演示编程技术目前存在的问题,本文认为机器人演示编程技术未来的研究方向主要有:

(1)工件位姿的精确定位。工业装配场景中对装配的精度有极高的要求,目前的工件位姿估计方法均难以实现对物体高精度的空间定位。进一步提高工件位姿的定位精度,对在制造业中推广机器人的应用具有重要意义。

(2)柔性物体的操作任务。目前机器人应用场景中的操作对象主要是刚性物体,但是制造业中存在大量柔性物体的操作任务,比如对线缆的安装任务,机器人操作柔性物体中的建模、控制等问题还有待进一步研究。

(3)多信息融合的机器人反馈控制。感知反馈是机器人对物体进行实时准确操作的基础。机器人装配作业中单纯依靠视觉信息的反馈难以应对环境变化带来的不确定性,因此目前的工业机器人工作环境都是高度订制化的。进一步研究融合力觉、触觉、视觉信息的多模态控制方法能够有效提高工业机器人操作系统的抗扰动能力。

(4)人类演示知识迁移。工业装配任务中存在大量相似装配体和相似装配操作,若将人类的演示过程中使用的装配知识进行提取并应用于相似的装配任务中,可以进一步提高机器人装配作业的效率。

5 总结

机器人演示编程技术能够在机器人使用和编程方面大大降低对操作者的专业性知识要求,提高机器人部署效率,对于推广机器人应用于中小型制造企业具有重要意义。本文总结了机器人演示编程技术的研究现状,并介绍了本课题组在机器人演示编程技术方面的研究工作,最后总结了机器人演示编程技术的未来研究方向,希望进一步推动机器人演示编程技术在工业制造领域的应用。

参考文献:

[1]A.Billard,S.Calinon,R.Dillmann,and S,Schaal.Survey:Robot programming by demonstration[Z].Handbook of robotics,2008.

[2]T.Kuniyoshi,M.Inaba,and H.Inoue.Teaching by showing:Generating robot programs by visual observation of human performance[Z].1989.

[3]Y.Kuniyoshi,M.Inaba,and H.Inoue.Learning by watching: Extracting reusable task knowledge from visual observation of human performance[J].IEEE transactions on robotics and automation,1994,10(6):799–822.

[4]S.B.Kang and K.Ikeuchi.A robot system that observes and replicates grasping tasks[J].Proceedings of IEEE International Conference on Computer Vision,1995:1093–1099.

[5]M.Ito,K.Noda,Y.Hoshino,and J.Tani.Dynamic and interactive generation of object handling behaviors by a small humanoid robot using a dynamic neural network model[J].Neural Networks, 2006,19(3):323–337.

[6]T.Inamura,N.Kojo,and M.Inaba.Situation recognition and behavior induction basedon geometric symbol representationof multimodal sensorimotor patterns[J].IEEE/RSJ International Conference on Intelligent Robots and Systems,2006:5147–5152.

[7]R.A.Peters,C.L.Campbell,W.J.Bluethmann,and E.Huber.Robonaut task learning through teleoperation[J].IEEE International Conference on Robotics and Automation,2003,2:2806–2811.

[8]T.Lozano-Perez.Robot programming[J].Proceedings of the IEEE,1983,71(7):821–841.

[9]A.Levas and M.Selfridge.Auser-friendlyhigh-level robot teaching system[J].IEEE International Conference on Robotics and Automation,1984,1:413–416.

[10]A.Segre and G.DeJong.Explanation-based manipulator learning:Acquisition of planning ability through observation[J].IEEE International Conference on Robotics and Automation,1985,2:555–560.

[11]A.M.Segr.Machine learning of robot assembly plans[Z].Springer Science&Business Media,2012.

[12]S.Tso and K.Liu.Hidden markov model for intelligent extraction of robot trajectory command from demonstrated trajectories[J].Proceedings of the IEEE International Conference on Industrial Technology (ICIT'96),1996:294–298.

[13]B.Akgun,M.Cakmak,K.Jiang,and A.L.Thomaz.Keyframe-based learning from demonstration[J].International Journal of Social Robotics,2012,4(4):343–355.

[14]S.Calinon,A.Pistillo,and D.G.Caldwell.Encoding the time and space constraints of a task in explicit-duration hidden markov model[J].IEEE/RSJ International Conference on Intelligent Robots and Systems,2011:3413–3418.

[15]D.Lee and Y.Nakamura.Stochastic model of imitating a new observed motion based on the acquired motion primitives[J].IEEE/RSJ International Conference on Intelligent Robots and Systems,2006:4994–5000.

[16]S.Calinon and A.Billard.Learning of gestures by imitation in a humanoid robot[M].tech.rep.,Cambridge University Press,2007.

[17]S.LiuandH.Asada.Teaching and learning of deburring robots using neural networks[J].Proceedings IEEE International Conference on Robotics and Automation,1993:339–345.

[18]M.Kaiser and R.Dillmann.Building elementary robot skills from human demonstration[J].Proceedings of IEEE International Conference on Robotics and Automation,1996,3:2700–2705.

[19]A.J.Ijspeert,J.Nakanishi,and S.Schaal.Movement imitation with nonlinear dynamical systems in humanoid robots.Proceedings 2002 IEEE International Conference on Robotics and Automation(Cat.No.02CH37292),2002,2:1398–1403.

[20]A.J.Ijspeert,J.Nakanishi,and S.Schaal.Learning control policies for movement imitation and movement recognition[J].NIPS,2001.

[21]H.Hoffmann,P.Pastor,D.-H.Park,and S.Schaal.Biologically-inspired dynamical systems for movement generation:automatic real-time goal adaptation and obstacle avoidance[J].IEEE International Conference on Robotics and Automation,2009:2587–2592.

[22]K.Mülling,J.Kober,O.Kroemer,and J.Peters.Learning to select and generalize striking movements in robot table tennis[J].The International Journal of Robotics Research,2013,32(3):263–279.

[23]S.Calinon,F.Guenter,and A.Billard.On learning,representing,and generalizing a task in a humanoid robot[J].IEEE Transactions on Systems,Man,and Cybernetics,Part B(Cybernetics),2007,37(2):286–298.

[24]S.Calinon and A.Billard.Incremental learning of gestures by imitation in a humanoid robot[J].Proceedings of the ACM/IEEE international conference on Human-robot interaction,2007:255–262.

[25]S.Calinon,F.D'halluin,E.L.Sauser,D.G.Caldwell,and A.G.Billard[J].Learning and reproduction of gestures by imitation.IEEE Robotics&Automation Magazine,2010,17(2):44–54.

[26]S.Calinon and A.Billard.A probabilistic programming by demonstration framework handling constraints in joint space and task space. IEEE/RSJ International Conference on Intelligent Robots and Systems,2008:367–372.

[27]T.Osa,A.M.G.Esfahani,R.Stolkin,R.Lioutikov,J.Peters,and G.Neumann.Guiding trajectory optimization by demonstrated distributions[J].IEEE Robotics and Automation Letters,2017,2(2):819–826.

[28]A.Y.Ng,S.J.Russell,et al.Algorithms for inverse reinforcement learning[J].Icml,2000,1(2).

[29]P.Abbeel and A.Y.Ng.Apprenticeship learning via inverse reinforcement learning[J].Proceedings of the twenty-first international conference on Machine learning,2004,1.

[30]U.Syed and R.E.Schapire.Agame-the oretic approach to apprenticeship learning[J].Advances in neural information processing systems,2008:1449–1456.

[31]U.Syed,M.Bowling,and R.E.Schapire.Apprenticeship learning using linear programming[J].Proceedings of the 25th international conference on Machine learning,2008:1032–1039.

[32]N.D.Ratliff,J.A.Bagnell,and M.A.Zinkevich.Maximum margin planning.Proceedings of the 23rd international conference on Machine learning,2006:729–736.

[33]D.Ramachandran and E.Amir.Bayesian inverse reinforcement learning[J].IJCAI,2007,7:2586–2591.

[34]B.D.Ziebart,A.L.Maas,J.A.Bagnell,and A.K.Dey.Maximum entropy inverse reinforcement learning[J].Aaai,2008,8:1433–1438.

[35]A.Boularias,J.Kober,and J.Peters.Relative entropy inversere inforcement learning[J].Proceedings of the Fourteenth International Conference on Artificial Intelligence and Statistics,2011:182–189.

[36]M.Kalakrishnan,P.Pastor,L.Righetti,and S.Schaal.Learning objective functions for manipulation[J].IEEE International Conference on Robotics and Automation,2013:1331–1336.

[37]S.Levine,Z.Popovic,and V.Koltun.Nonlinear inverse reinforcement learning with gaussian processes[J].Advances in Neural Information Processing Systems,2011:19–27.

[38]M.Wulfmeier,P.Ondruska,and I.Posner.Deep inverse reinforcement learning[Z].CoRR,abs/1507.04888,2015.

[39]M.Babes,V.Marivate,K.Subramanian,and M.L.Littman.Apprenticeship learning about multiple intentions[J].Proceedings of the 28th International Conference on Machine Learning(ICML-11),2011:897–904.

[40]J.ChoiandK.-E.Kim.Nonparametric bayesian inverse reinforcement learning for multiple reward functions[J].Advancesin Neural Information Processing Systems,2012:305–313.

[41]Q.P.Nguyen,B.K.H.Low,and P.Jaillet.Inverse reinforcement learning with locally consistent reward functions[J].Advances in neural information processing systems,2015:1747–1755.

[42]B.Michini,T.J.Walsh,A.-A.Agha-Mohammadi,and J.P.How.Bayesian nonparametric reward learning from demonstration[J].IEEE Transactions on Robotics,2015,31(2):369–386.

[43]P.Ranchod,B.Rosman,and G. Konidaris. Nonparametric bayesian reward segmentation for skill discovery using inverse reinforcement learning[J].IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS),2015:471–477.

[44]L.Rozo,P.Jiménez,andC.Torras.A robot learning from demonstration framework to perform force-based manipulation tasks[J].Intelligent service robotics,2013,6(1):33–51.

[45]A.Montebelli,F.Steinmetz,and V.Kyrki.On handing down our tools to robots:Single-phase kinesthetic teaching for dynamic in-contact tasks[J].IEEE International Conference on Robotics and Automation(ICRA),2015:5628–5634.

[46]P.Kormushev,S. Calinon,and D.G.Caldwell.Imitation learning of positional and force skills demonstrated via kinesthetic teaching and haptic input[J].Advanced Robotics,2011,25(5):581–603.

[47]K.Kronander and A.Billard.Learning compliant manipulation through kinesthetic and tactile human-robot interaction[J].IEEE transactions on haptics,2013,7(3):367–380.

[48]Y.Artzi,M.Forbes,K.Lee,and M.Cakmak.Programming by demonstration with situated semantic parsing[J].AAAIFall Symposium Series,2014.

[49]M.Cakmak and L.Takayama.Teaching people how to teach robots:The effect of instructional materialsand dialog design[J].Proceedings of the 2014 ACM/IEEE international conference on Human-robot interaction,2014:431–438.

[50]E.E.Aksoy,A.Abramov,F.W.rgotter,and B.Dellen.Categorizing object-action relation sfrom semantic scene graphs[J].IEEE International Conference on Robotics and Automation,2010:398–405.

[51]E.E.Aksoy,A.Abramov,J.Dorr,K.Ning,B.Dellen,and F.Worgotter.Learning the semantics of object–action relations by observation[J].The International Journal of Robotics Research,2011,30(10):1229–1249.

[52]K.Zampogiannis,Y.Yang,C.Fermüller,and Y.Aloimonos.Learning the spatial semantics of manipulation actions through preposition grounding[J].IEEE International Conference on Robotics and Automation(ICRA),2015:1389–1396.

[53]R.Cubek,W.Ertel,andG.Palm.High-level learning from demonstration with conceptual spaces and subspace clustering[J].IEEE International Conference on Robotics and Automation(ICRA),2015:2592–2597.

[54]S.Mitra and T.Acharya.Gesture recognition:Asurvey[J].IEEE Transactions on Systems Man and Cybernetics,2007,37(3):311–324.

[55]A.Chalechale,F.Safaei,G.Naghdy,and P.Premaratne.Hand gesture selection and recognition for visual-based human-machine interface[J].IEEE International Conference on Electro Information Technology,2005,6.

[56]K.Alahari and C.Jawahar.Discriminative actions for recognising events[J].Computer Vision,Graphics and Image Processing,2006:552–563.

[57]Y.Yang,C.Fermuller,Y.Li,and Y.Aloimonos.Grasp type revisited:A modern perspective on a classical feature for vision[J].Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2015:400–408.

[58]J.Yang,Y.Li,andK.Wang.Invariant trajectory indexing for real time 3d motion recognition[J].IEEE/RSJ International Conference on Intelligent Robots and Systems,2011:3440–3445.

[59]Z.Ren,J.Meng,J.Yuan,and Z.Zhang.Robust hand gesture recognition with kinect sensor[J].Proceedings of the19th ACM International Conference on Multimedia,2011:759–760.

[60]H.Kjellstr.m,J.Romero,and D.Kragi.Visual object-action recognition:Inferring object affordances from human demonstration[J].Computer Vision and Image Understanding,2011,115(1):81–90.

[61]A.Pieropan,C.H.Ek,and H.Kjellstr.m.Functional object descriptors for human activity modeling[J].IEEE International Conference on Robotics and Automation,2013:1282–1289.

[62]J.R.Chen.Constructing task-level assembly strategies in robot programming by demonstration[J].The International Journal of Robotics Research,2005,24(12):1073–1085.

[63]M.Pardowitz,S.Knoop,R.Dillmann,and R.D.Zollner.Incremental learning of tasks from user demonstrations,past experiences,and vocal comments[J].IEEE Transactions on Systems,Man,and Cybernetics,2007,37(2):322–332.

[64]S.Ekvall and D.Kragic.Robot learning from demonstration:a task-level planning approach[J].International Journal of Advanced Robotic Systems,2008,5(3):33.

[65]K.Lee,Y.Su,T.-K.Kim,and Y.Demiris.A syntactic approach to robot imitation learning using probabilistic activity grammars[J].Robotics and Autonomous Systems,2013,61(12):1323–1334.

[66]W.Liu,D.Anguelov,D.Erhan,C.Szegedy,S.Reed,C.-Y.Fu,and A.C.Berg.Ssd:Single shot multibox detector[J].European Conference on Computer Vision,2016:21–37.

[67]B.Drost,M.Ulrich,N.Navab,and S.Ilic.Modelglobally,match locally:Efficient and robust 3d object recognition[J].IEEE Computer Society Conference on Computer Vision and Pattern Recognition,2010:998–1005.

[68]Y.Wang,Y.Jiao,R.Xiong,H.Yu,J.Zhang,and Y.Liu.Masd:A multimodal assembly skill decoding system for robot programming by demonstration[J].IEEE Transactions on Automation Science and Engineering,2018,15(4):1722–1734.

[69]Y.Wang,J.Cai,Y.Wang,Y.Hu,R.Xiong,Y.Liu,J.Zhang,and L.Qi.Probabilistic graph based spatial assembly relation inference for programming of assembly task by demonstration[J].IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS),2015:4402–4407.

作者简介:

周忠祥(1995-),男,山东菏泽人,现就读于浙江大学控制理论与控制工程专业,研究方向为机器人演示编程以及装配序列生成。

胡晋(1995-,)男,江西南昌人,博士,现就读于浙江大学,研究方向为机器人运动规划以及机器人学习系统。

王越(1988-),男,浙江宁波人,副教授,硕士生导师,博士,现就职于浙江大学控制科学与工程学院,研究方向为长期自动化机器人系统、机器人感知。

熊蓉(1972-),女,江苏太仓人,教授,博士生导师,博士,现就职于浙江大学控制科学与工程学院,研究方向为机器人智能感知与控制。

摘自《自动化博览》2020年6月刊


热点新闻

推荐产品

x
  • 在线反馈
1.我有以下需求:



2.详细的需求:
姓名:
单位:
电话:
邮件: