皇家理工学院(KTH)和国家海洋学中心的研究人员最近使用行为树(BTs)为关键任务设计模块化、多功能和鲁棒控制架构。他们的研究预先发表在arXiv上,具体地将BT框架应用于自主水下航行器(auv)的控制系统。
auv是用于多种任务的水下交通工具,如探测和绘制水下物体或识别导航危险和障碍。由于通信带宽和范围的限制,这些飞行器不能依赖空中或地面操作机器人使用的远程操作解决方案。
此外,auv通常部署在偏远地区,因此在故障后恢复它们通常是非常具有挑战性和昂贵的。为了应对这些挑战,AUV控制系统应该既健壮又多功能,确保车辆的安全性,并适应不同的情况。
KTH和国家海洋学中心的研究团队试图使用行为树(BTs)来解决这些挑战,这种数学模型最近在人工智能和机器人领域变得越来越流行。bt最初是为电子游戏开发的,目的是增加非玩家角色(NPC)控制结构的模块化。
克里斯托弗·伊利夫·斯普拉格(christopher Iliffe Sprague)是进行这项研究的研究人员之一,他告诉TechXplore:“这种模块化允许高效的测试、增量功能设计和代码重用,所有这些在电子游戏行业中都非常有利。”“同样,我们发现这些方面在机器人人工智能(AI)的设计中非常有用,主要好处是行为可以在其他高级行为的上下文中重用和测试,而无需指定它们与后续行为的关系。与更传统使用的有限状态机相比,这些是显著的优点。”
一般任务关键系统BT.鲁棒性是通过经常检查安全条件并在需要时采取适当行动来实现的。图片来源:Sprague et al。
从本质上说,BTs提供了在多个任务之间切换的层次结构。在任务关键系统中,如侦察车或自动驾驶汽车,一个超出预期的目标通常可以被分解为几个子任务。因此,BTs可以帮助更好地组织这些任务,并在它们之间转换。
斯普拉格解释说:“由于BTs固有的等级结构,任务可以被分解到不同程度的特异性。”“在我们的论文中,我们在auv的背景下展示了这一点,auv的任务是执行由一系列路点定义的任务。我们首先一般地定义一个满足系统领域(即水下航行器)需求的BT,然后通过添加与特定目标相关的子任务来进一步完善BT。”
斯普拉格和他的同事们将这种BT提纯过程应用到美国国家海洋学研究所的AUV任务中。他们的BT框架使AUV控制系统更加健壮,在进行其他后续任务之前监测其安全性。BTs还允许更大的通用性,优先处理子任务,并允许系统在它们之间灵活切换。
斯普拉格说:“我们的研究成果中最重要的是,我们展示了如何在不牺牲原始树的结构的情况下,首先概述行为树,以满足一般领域的需求,然后为特定任务进一步细化。”“从中得出的关键结论是,人们可以逐渐灌输特定的任务优先级,安全是最重要的,并保持它们,无论这棵树的任务变得多么具体。”
Sprague和他的同事已经成功地证明了使用BTs控制关键任务系统(如auv)的优势。然而,使用bt对任务进行抽象的程度仍然受到人类识别任务分解能力的限制。虽然在某些情况下,任务可以直观地分解,但在其他情况下,系统的行为要复杂得多。
斯普拉格说:“我们现在试图从例子中自动合成BTs,并考虑到最优性。”“在另一篇论文中,我们研究了如何用机器学习方法实现针对特定任务的最优控制。现在,我们将通过示例研究如何使用这些方法来识别和优化任务和整体树形结构。我们怀疑这将发现人类难以识别的行为。”
了下:AI•机器学习,快速原型
