论文阅读:A Semantic‑Based Method for Teaching Industrial Robots New Tasks
标题:A Semantic‑Based Method for Teaching Industrial Robots New Tasks
作者:
下载链接:https://link.springer.com/article/10.1007%2Fs13218-019-00582-5
0. 摘要
本文介绍了在欧洲“一日工厂”项目中开发的人工智能(AI)方法的结果。 正如提议的那样,先进的AI解决方案允许自然的人机协作,这是工业仓库中机器人的一项重要功能。 通过在开放和非结构化的动态环境中与人类同事进行有效的交互和协作,这种新一代的机器人有望在异构生产线中工作。 为此,机器人需要理解和识别来自不同操作员的演示。 因此,已经基于语义表示开发了用于对工业机器人进行编程的灵活且模块化的过程。 这种新颖的示范学习方法使非专家操作员可以在工业机器人上编程新任务。
1. 介绍
成功的自适应生产过程自动化需要灵活,可用和可接受的机器人解决方案,以实现有效的人机协作[10]。演示机器人的一种新方法是通过演示[8,13]。我们已经开发了一种基于语义推理的演示方法,可以对机器人进行直观的新任务编程[22]。这种新颖的基于语义的方法是“一日工厂”项目的成果之一。1该项目由欧盟框架计划7的“未来工厂”计划资助,旨在改善通过优化机器人的安装时间和成本,提高欧洲中小型企业(SME)生产的竞争力。开发了一种新颖的基于推理和知识的方法[21],以一种自然的方式通过与工业机器人进行物理交互来教授工业机器人新任务(见图1)。这种基于语义的推理方法能够集成不同的输入传感器[22],例如机器人的联合编码器,皮肤传感器(触觉和接近度)[11]以及来自嵌入在机器人中的摄像头的视觉信息(第一视角)[10,24]。此外,我们开发了基于知识的最新表示形式,以从演示中逐步学习新的表示形式,以加快未知任务的教学[19]。所提出的基于语义的系统的主要优点是其在线分段和识别人类活动的能力。因此,该方法在工业环境中得到了验证,可以自动了解操作员与机器人的交互过程中的动作,从而使非专家操作员可以直观地为工业机器人编程新任务。
2. 相关工作
在工业场景中,“演示编程”(PbD)方法[7,15]已被广泛使用,因为它们允许操作员通过物理交互来教授新任务。 PbD方法可以实现对机器人行为的快速灵活的修改,以执行各种各样的任务[13]。 通过这种类型的方法,可以使用基于动态运动基元(DMP)的三级PbD方法来学习诸如动力和姿势轨迹之类的低级轮廓,以动手方式来教导工业机器人[14]。 但是,将学习到的模型推广到不同的领域并不是直截了当的。
对人类活动的认可是一个广泛的主题,涵盖了不同的学科,例如计算机视觉[17],人工智能[1、5、21],认知科学[27]和机器人技术[6、16]。具体而言,在机器人技术界,需要一种方法,该方法能够使用来自机器人的多个传感器在适应不同场景的同时,对所展示的活动进行细分和识别。一种突出的方式是通过正确定义通用表示。 Ramirez-Amaro等人[21]提出了一种灵活的系统,用于提取感知场景的符号表示,以适应不同的传感器,例如相机[20],多模式皮肤[11],机器人关节数据[10]和虚拟环境[4,23]。因此,已经证明该方法是传感器不可知的,因为它可以适应可用的传感器。 Aksoy等人[2]基于操纵过程中物体之间的物理关系提出了一种动作学习系统。 Summers-Stay等人[25]使用了一种更简单的使用树状结构的检测和分割方法。使用了关于单样本和零样本学习技术的最新研究,这些技术试图最小化训练数据集的数量并减少对训练数据集的依赖,而极端情况是能够对之前未曾见过的动作进行分类而无需任何事先训练的系统[3]。
3. 语义推理学习者
在本节中,我们描述了在一天工厂项目中开发的推理方法[10、12、21]。 此方法是一种分层方法,通过符号和语义表示来提取在运动学上经过运动学证明的操作员的含义。 首先,我们解释了这项工作中使用的层次结构。 稍后,我们介绍语义推理方法。
3.1 工作流层次结构
首先,需要定义不同的抽象级别,以提取所演示任务的含义。主要确定了两个级别,即高级别和低级别[11]。最高级别表示流程,定义为顺序任务的组合。例如,“排序水果”流程由不同的任务组成,例如“摘水果”,“识别好水果”等。然后,每个任务都是有序活动的组合。例如,任务“摘水果”包含三个活动,即“空闲”,“到达”和“抓紧”,而下一个任务
“确定好水果”是由“放置”,“释放”,“挤压”和“抓紧”活动定义的。活动是对末端执行器动作的语义描述,并通过相应的技能进行映射。因此,这些活动中的每一个都与一项技能相关联。例如,活动“达到”链接到“达到技能”原语。最后,技能(最低级别)代表了机器人执行学习到的动作所需的原语,见图2。
重要的是要注意,发达的推理方法将从动觉演示中推断出所教的活动。 然后,为了达到下一个级别,即任务,需要来自用户的输入2。 例如,如果一个用户想要演示“摘水果”任务,那么他/她将开始机器人的运动学指导,直到他/她完成所需的任务。 推理系统将细分并自动识别每个演示的活动,然后自动学习构成所教任务的推断活动的顺序,例如,推断系统,首先,机器人处于“空闲”模式 ,然后“到达”一个橙色,最后,“抓住”了橙色。 如果推理系统检测到的活动多于所教示的活动,则用户有可能拒绝那些错误的识别(见图1)。
过程,任务和活动在问题空间中进行了描述,它们被视为与机器人无关的描述。 它们代表机器人应该执行的功能,而不是应该如何执行。 另一方面,技能是在执行空间中定义的,它们明确定义了机器人应如何执行活动。 它们代表执行给定活动的特定例程或机器人程序。
这种分层体系结构的主要优点是所获取知识的可重用性和泛化性。 这使得在问题空间中生成的知识可以转移到不同的领域。
3.2 自动识别人际互动
为了自动解释动觉演示,我们的学习系统将从演示获得的连续信号转换为符号表示[20]。 例如,机器人末端执行器(ef)的运动(m)被解释为“移动”或“不移动”符号。
其中ẋ为末端执行器速度,휀为启发式定义的阈值。 因此,来自环境的信息也将转换为符号表示。 对于本节中描述的演示场景。 如图4.1所示,机器人TOMM [9]可以通过以下传感器感知环境:机器人皮肤,RGB-D摄像机和关节传感器。 从这些传感器定义了以下抽象属性:
3. 通过知识和推理引擎增强活动识别\
知识和推理在处理部分可观察的信息中起着至关重要的作用。因此,使用本体表示形式的知识库增强了从Tsorting获得的规则。该本体用Web本体语言(OWL)表示,而KnowRob [26]本体被用作基线。开发的知识库以Prolog查询的形式实现。 Prolog用于加载,存储和推理有关知识。获得的规则(Tsorting)可以将学习到的活动概括为不同的对象。从图3,可以观察到对象属性ObjectActedOn和ObjectInHand具有两个可能值之一,即Something或None。其中Something代表描述任何类型的对象的最高类。例如,活动“挤压”,“掌握”和“在某处放置东西”表示属性ObjectInHand = Something。然后,以下Prolog查询包含在所获得规则的定义中:
3.4 任务图生成
在动觉教学中,开发的推理方法能够检测每个演示活动的开始和结束时间。这些活动顺序存储在有向任务图中,其中顶点表示推断的活动,边表示活动之间的过渡。每个活动的前提和条件也可以从演示中自动获得[12]。这意味着推理方法可以提供构成任务的一系列活动。但是,要定义每个任务的开始和结束,需要通过图形用户界面(GUI)进行用户干预。然后,推理系统会将第一个检测到的活动的前提条件与任务前提条件关联起来,并将任务的后置条件作为最后检测到的活动条件的条件。最后,用户还可以通过从所示的任务和停止条件中选择所需的任务来定义新的过程,而无需指定任何其他参数。
4. 机器人运动学教学成果
我们建议的学习方法已在我们的机器人平台“触觉全方位移动机械手”(TOMM)中成功实现,见图1。TOMM由两个覆盖有机器人皮肤的工业机器人手臂(UR-5)组成,其中两个 SimLab的Allegro双手在其固定头上还覆盖了我们的人造皮肤和2个摄像头[11]。
4.1 工业场景
用户将教机器人分类橙子的过程。 在这种情况下,我们可以突出显示在机器人皮肤上使用触觉和接近传感器来感测橙子的质量的好处。6用户向机器人讲授了对橙子进行分类所需的活动和中间任务:(a)好的橙子 (质地坚硬)将被放置在一个盒子中,并且(b)劣质橙子(质地柔软)将被扔进垃圾桶。 橘子的质感是使用来自放置在抓手外部手指贴片中的机器人皮肤上的力传感器评估的。 在演示过程中定义了区分水果质地的刚度阈值。
为了定量验证我们系统的鲁棒性和通用性,我们针对由两个不同参与者进行的橙子分类场景,在Kinesthetic演示中测试了具有不同变体的语义模型Tsorting。7总共考虑了四次演示,8 系统能够即时推断出通过运动学证明的活动。 对于这四个演示,在所有实验中橙子的位置都是随机选择的。 所展示活动的细分和识别的总体结果约为识别准确度的83.15%[22]。
提出的基于语义的方法,不仅可以分割和识别人类的演示,而且还允许用户生成任务计划以定义新的过程[12]。 用户生成的任务也存储在知识库中,并且可以生成新的过程。 考虑到从多模式感知系统(触觉皮肤,视觉,机器人状态等)获得的信息,该过程由无限制的变量生成,这些变量在运行时实例化。 在这种情况下,用户创建了对橘子进行排序的过程,根据我们的推理方法,该过程通常被归类为对水果进行排序。 学到的过程包括六个顺序的任务,例如:
图4例示了由用户定义的,用于教给机器人橙子分选过程的任务定义的任务序列。还可能看到,推理方法在执行期间验证了每个任务的学习到的前提条件和条件。请注意,学习的过程会根据感知到的对象进行调整。例如,如果机器人观察到橘子,则将使用六个学习到的任务来执行该过程。但是,如果感知到的对象是苹果,则推理方法将推断出苹果不具有挤压属性9,因此,将不会执行任务2和任务4。这些决策是由机器人在执行期间做出的,而无需用户干预。这证明了所提出的方法对不同领域的可用性。在定义了对橘子进行分类的新过程之后,用户仅需指示机器人即可根据用户定义的一个停止标准开始执行新过程。然后,机器人将开始执行新的学习到的过程,直到达到停止标准或不再包装橙子为止。所提议的学习方法已成功集成到工业机器人中,以对欧盟项目“一日工厂” 10进行最终评估[10]。该项目于2017年9月成功完成,由于采用了先进的技术,大大降低了安装成本并减少了所需的时间,因此获得了可喜的成果。
提出的人工智能方法可以潜在地集成到当前的商业人机界面中,以对协作机器人(Cobots)进行编程。 这种组合可以代表向Cobots教授新任务的下一个阶段,因为提出的AI方法提供了人类可读的反馈。 例如,这意味着Cobot指示由于无法找到目标对象而导致到达操作失败。 这种类型的反馈可能会允许任何工人以直观的方式与机器人进行协作。 计划在以后的工作中对此主题进行更详细的研究。
5. 总结
本文总结了一种新颖的基于语义的方法获得通用识别模型的结果。 所获得的语义表示对于相同活动的不同演示样式而言是健壮且不变的。 另外,所获得的语义表示能够重用所获得的知识来推断包括工业场景在内的不同类型的活动。 我们提出了一种通过语义表示自动提取所演示活动的含义的方法。 这种通过示范学习的新方法使非专家操作员可以向工业机器人教授新任务。