论文标题
行动中的行为树:机器人应用的研究
Behavior Trees in Action: A Study of Robotics Applications
论文作者
论文摘要
自主机器人结合了各种技能,形成越来越复杂的行为,称为任务。尽管这些技能通常以相对较低的抽象级别进行编程,但它们的协调是建筑分离的,并且经常以高级语言或框架表达。最近,由于这个原因,行为树的语言引起了机器人主义者的关注。行为树最初是为计算机游戏建模的计算机游戏,可提供可扩展的基于树木的任务表示。但是,尽管使用了该语言的几种实现,但对现实世界中其用法和范围知之甚少。行为树与传统语言描述行为有何关系?应用程序中如何使用行为树概念?使用它们有什么好处? 我们介绍了对行为树中关键语言概念及其在现实世界机器人应用中的使用的研究。我们识别行为树语言,并将其语义与最著名的行为建模语言进行比较:状态和活动图。我们为使用该语言的机器人应用程序挖掘开源存储库并分析此用法。我们发现行为树是一种务实的语言,尚未完全指定,即使仅适用于一种模型,就可以将其扩展。行为树显然类似于场合范式的模型。我们为现实世界行为模型的数据集提供了贡献,希望激发社区使用和进一步开发这种语言,相关的工具和分析技术。
Autonomous robots combine a variety of skills to form increasingly complex behaviors called missions. While the skills are often programmed at a relatively low level of abstraction, their coordination is architecturally separated and often expressed in higher-level languages or frameworks. Recently, the language of Behavior Trees gained attention among roboticists for this reason. Originally designed for computer games to model autonomous actors, Behavior Trees offer an extensible tree-based representation of missions. However, even though, several implementations of the language are in use, little is known about its usage and scope in the real world. How do behavior trees relate to traditional languages for describing behavior? How are behavior tree concepts used in applications? What are the benefits of using them? We present a study of the key language concepts in Behavior Trees and their use in real-world robotic applications. We identify behavior tree languages and compare their semantics to the most well-known behavior modeling languages: state and activity diagrams. We mine open source repositories for robotics applications that use the language and analyze this usage. We find that Behavior Trees are a pragmatic language, not fully specified, allowing projects to extend it even for just one model. Behavior trees clearly resemble the models-at-runtime paradigm. We contribute a dataset of real-world behavior models, hoping to inspire the community to use and further develop this language, associated tools, and analysis techniques.