用于为机器人系统开发神经技能的计算机化工程工具和方法技术方案

技术编号:34165813 阅读:27 留言:0更新日期:2022-07-17 09:32
本发明专利技术提供了用于为诸如机器人系统(50)的计算机化自主系统开发神经技能的计算机化工程工具和方法论。所公开的计算机化工程工具(10)能够涉及闭环中布置的相应模块化功能的集成布置,诸如能够包括物理引擎(14)、神经数据编辑器(16)、实验编辑器(18)、神经技能编辑器(20)和机器学习环境(22)。所公开的实施例有助于成本有效地简化涉及神经技能的开发工作,诸如通过减少开发任何给定机器人系统中涉及的神经技能所涉及的时间以及通过降低开发神经技能所涉及的专业水平。经技能所涉及的专业水平。经技能所涉及的专业水平。

Computerized engineering tools and methods for developing neural skills for robotic systems

【技术实现步骤摘要】
【国外来华专利技术】用于为机器人系统开发神经技能的计算机化工程工具和方法


[0001]所公开的实施例大体上涉及计算机化工程工具的领域,并且更具体而言,涉及用于为诸如机器人系统的计算机化自主系统开发神经技能的计算机化工程工具和方法论。

技术介绍

[0002]目前,由机器人系统实现的技能能够是手工的(例如,通过诸如IEC61131

3编程语言之类的合适的编程语言进行编程,该编程语言能够被用于例如在可编程逻辑控制器(PLC)中实现控制程序);或者这种技能能够使用机器学习技术(诸如通过神经网络)来学习。
[0003]手工的技能的开发通常能够涉及核心技术技能,诸如能够由机器人学专家执行。涉及该核心技术技能的开发工作能够是耗时的。神经技能的开发往往相对更复杂,并且通常涉及机器人学专家和深度学习专家。因此,诸如由于数据收集和神经网络设计、训练以及调整,涉及神经技能的开发工作与手工的技能的开发相比变得甚至更加耗时。因此,需要简化涉及神经技能的开发工作,例如减少开发任何给定机器人系统中涉及的神经技能所涉及的时间。另外,希望降低开发神经技能所涉及的专业水平。
附图说明
[0004]图1示出了所公开的计算机化工程工具的一个非限制性实施例的框图,该计算机化工程工具能被配置用于为机器人系统开发神经技能,如能涉及一个或多个机器人,所述一个或多个机器人例如能够被用于涉及自主控制的工业应用中。
[0005]图2示出了用于为机器人系统开发神经技能的所公开的方法论的一个非限制性实施例的流程图。
[0006]图3-7分别示出了与用于为机器人系统开发神经技能的所公开的方法论有关的进一步的非限制性细节。
具体实施方式
[0007]本专利技术人已经认识到,由于神经技能的开发通常涉及至少两种不同的技术学科(例如,机器人学和机器学习)。这些不同的技术学科通常涉及两个不同的专家功能角色(尽管单人理论上能够执行这两个角色),这两个角色需要不同的且耗时的概念化。
[0008]例如,在典型的现有技术方法下,为了适当地确定什么应是神经技能,以便适当地操纵对象(例如,“拾取和放置”、“旋拧”、“抓取”等),机器人学专家最初设计实验以生成适合于机器学习专家的数据。另一方面,机器学习专家的任务是基于与机器人学专家的交互来设计神经网络。应当理解,专家之间的连续且有意义的交互是必要的,因为例如所设计的实验应生成用于神经网络的适当的数据,并且因此数据应适当地匹配神经网络的特性,诸如在类型、输入/输出参数等方面。
[0009]在机器人学专家方面,能够通过物理引擎在模拟或现实环境中运行所设计的实
验。因此,机器人学专家还应(i)编写代码以从所设计的实验提取数据,以及(ii)开发或实现数据生成环境。机器人学专家还应开发测试环境以测量并证实神经技能的性能和行为。当这些组件被准备好时,执行一次或多次实验,并且生成数据。
[0010]在机器学习专家方面,随后使用适当的神经网络代码来实现神经网络架构的设计。在诸如从物理引擎中所进行的实验能获得训练和测试数据之后,训练神经网络。机器学习专家随后测试神经网络的性能,并确定所获得的性能是否足以满足期望的目标。如果神经网络训练获得满意的结果,则神经网络能够被作为神经技能部署在现实应用中。
[0011]如果神经网络训练没有获得满意的结果,则重复上述过程。即,在这两个专家之间必须有进一步的交互以进行适当的调整并再次重新执行整个过程。在实际的应用中,上述现有技术过程通常能涉及多次迭代,并因此这种过程往往是耗时且繁重的。举例而言,用于开发神经技能以执行机器人的逆运动学的现有技术过程能花费几个星期。
[0012]至少鉴于前述考虑,所公开的实施例实现了适当的改进以更有效地开发神经技能。在没有限制的情况下,所公开的计算机化工程工具消除了开发(例如,以代码形式)数据生成环境的需要和提取数据的代码。相反,所公开的工程工具有效地允许用户例如在物理引擎中直接与虚拟世界交互。因此,机器人学专家能够直接利用现实世界中的对象来设计实验,并且能够利用适当的数据基元,诸如能够指示能应用的几何形状、物理交互和感知数据。例如,这允许有效地制定能使用的成像装置(例如,照相机)的参数(例如,红、绿及蓝(RGB)图像、深度感知、平面分割),并因此有效地创建具有不同几何形状的不同机器人,并且限定在现实世界中待操纵的对象的物理特性,诸如能够涉及力、加速度、速度、冲击等。
[0013]在以下详细描述中,阐述了各种具体细节以便提供对这些实施例的全面理解。然而,本领域的技术人员将理解,所公开的实施例能够在没有这些具体细节的情况下实践,本专利技术的各方面不限于所公开的实施例,且本专利技术的各方面能够在各种可替代实施例中实践。在其它实例中,为了避免不必要且繁冗的解释,未详细描述由本领域的技术人员充分了解的方法、步骤和组件。
[0014]此外,各种操作能够被描述为以有助于理解本专利技术实施例的方式执行的多个离散步骤。然而,描述的顺序不应被解释为暗示这些操作需要以它们所呈现的顺序来执行,甚至也不应被解释为暗示它们是有关顺序的,除非另外指明。此外,短语“在一个实施例中”的重复使用不一定指同一实施例,尽管它能够指同一实施例。应注意,所公开的实施例不需要被解释为互斥的实施例,因为本领域的技术人员能够根据给定应用的需要适当地组合所公开的这些实施例的某些方面。
[0015]图1示出了所公开的计算机化工程工具10的一个非限制性实施例的框图。在一个非限制性实施例中,计算机化工程工具10能够涉及在闭环中的相应模块化功能(诸如通过相应用户界面模块)的集成布置,该集成布置包括物理引擎14、神经数据编辑器16、实验编辑器18、神经技能编辑器20和机器学习环境22。
[0016]在一个非限制性实施例中,物理引擎14能被配置用于生成多个数据基元24,诸如能够指示:1)将由机器人系统操纵的对象以及机器人系统的操纵器(例如,夹具)的相应的几何形状;2)由机器人系统的成像装置和能够涉及的任何其它传感器(共同地由传感器数据25表示)对对象的感官感知(诸如RGB图像、深度感知和平面分割);以及3)机器人系统与对象的一个或多个物理交互,诸如当机器人27沿给定轨迹29前进以执行任务时能够涉及的
力、加速度、速度、冲击。
[0017]在一个非限制性实施例中,神经数据编辑器16能够被配置用于显示(例如,分层布置的)用户可选数据元素的组织列表26,用户可选数据元素形成由物理引擎14生成的数据基元。在一个非限制性实施例中,由神经数据编辑器16所显示的用户可选数据元素的组织列表的用户选择的数据元素的一个或多个数据集28(诸如用神经数据编辑器16内的检查标记示例性地示出)被输入到实验编辑器18中。
[0018]在没有限制的情况下,搜索功能能够包括在神经数据编辑器16中,以帮助用户根据例如数据元素的名称、类型和能够基于给定应用的需要适当定制的任何其它期望标准来过滤用户可选数据元素的列表26。例如,关节信息能够由关节索引(相对于给定机器人)、关节名称、关节类本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于通过计算机化工程工具(10)为机器人系统(50)开发神经技能的方法,所述方法包括:在所述计算机化工程工具中布置闭环,所述闭环包括相应的模块化功能的集成布置,所述集成布置包括物理引擎(14)、神经数据编辑器(16)、实验编辑器(18)、神经技能编辑器(20)和机器学习环境(22);由所述物理引擎生成多个数据基元(24),所述数据基元指示:1)待由所述机器人系统操纵的对象和所述机器人系统的相应的几何形状,2)所述对象的感官感知,以及3)所述机器人系统与所述对象的一个或多个物理交互;由所述神经数据编辑器显示用户可选数据元素的组织列表(26),所述用户可选数据元素形成由所述物理引擎生成的所述数据基元;向所述实验编辑器输入由所述神经数据编辑器显示的所述用户可选数据元素的组织列表的用户选择的数据元素的一个或多个数据集(28);用所述实验编辑器准备所述用户选择的数据元素的一个或多个数据集,用于为期望的实验案例准备参数数据(30);用所述神经技能编辑器限定神经网络(32),所述神经网络在被执行时服从用所述实验编辑器准备的所述参数数据;由所述机器学习环境(22)利用由所述实验编辑器准备的所述参数数据来执行限定的所述神经网络,该执行被配置用于在所述机器学习环境中学习神经技能,所述神经技能有效地实现控制策略的至少一部分以控制待由所述机器人系统的机器人执行的任务序列;以及从所述机器学习环境提取与在所述机器学习环境中正在被学习的所述神经技能有关的统计特性(36)。2.根据权利要求1所述的用于开发神经技能的方法,还包括由所述计算机化工程工具的分析器(38)分析从所述机器学习环境提取的所述统计特性,该分析被配置用于确定学习的神经技能是否满足期望的目标。3.根据权利要求2所述的用于开发神经技能的方法,还包括响应于由所述分析器(38)确定所述学习的神经技能满足所述期望的目标的分析,而由技能编写器(40)编写包括所述学习的神经技能的编程的技能。4.根据权利要求3所述的用于开发神经技能的方法,其中,由所述技能编写器编写的所述编程的技能还包括被配置用于实现所述控制策略的至少其它部分的手工的技能。5.根据权利要求4所述的用于开发神经技能的方法,还包括将所述编程的技能输入到代码生成器(42),所述代码生成器被配置用于生成计算机可读代码(43),所述计算机可读代码适合由所述机器人系统的机器人控制器(44)执行,以实现所述控制策略。6.根据权利要求2所述的用于开发神经技能的方法,还包括响应于由所述分析器(38)确定所述学习的神经技能不满足所述期望的目标的分析,而在所述闭环中执行至少一次迭代以进行以下调整中的至少一个调整:由所述物理引擎(14)对多个数据基元中的至少一个数据基元的调整,由所述神经数据编辑器(16)对由所述神经数据编辑器显示的用户可选数据元素的相应数据集的选择的调整,由所述实验编辑器(18)对被配置用于为期望的实验案例准备经调整的参数数据的准备
的调整,以及由所述神经技能编辑器(20)对限定的所述神经网络(32)的调整。7.根据权利要求1所述的用于开发神经技能的方法,还包括将所述计算机化工程工具耦合到元学习优化器(60),所述元学习优化器被配置用于通过相应模块化功能的所述集成布置优化相应功能中的至少一个功能。...

【专利技术属性】
技术研发人员:阿基梅德斯
申请(专利权)人:西门子股份公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1