Towards Efficient Robotic Software Development by Reusing Behavior Tree Structures for Task Planning Paradigms

Shuo Yang;Qi Zhang
{"title":"Towards Efficient Robotic Software Development by Reusing Behavior Tree Structures for Task Planning Paradigms","authors":"Shuo Yang;Qi Zhang","doi":"10.23919/CSMS.2023.0017","DOIUrl":null,"url":null,"abstract":"Nowadays, autonomous robots are expected to accomplish more complex tasks and operate in an open-world environment with uncertainties. Developing software for such robots involves the design of task planning paradigms and the implementation of robotic software architectures, making software development rather tricky and time-consuming. In recent decades, component-based software development approaches have been increasingly adopted in robotics to improve software development efficiency by reusing data and controlling flows between components. However, few works have tackled the more critical issue of reusing complex high-level task planning paradigms and robotic software architectures. To make up for the limitation, this paper first identifies the mainstream task planning paradigms and proposes a set of novel patterns for interaction pipelines between the robotic functions of sensing, planning, and acting. Then this paper presents a novel Behavior Tree (BT) based development framework Structural-BT, which provides a set of reusable BT structures that implement abstract interaction pipelines while maintaining interfaces for task-specific customization. The Structural-BT framework supports the modular design of structure functionalities and allows easy extensibility of the inner planning flows between BT components. With the Structural-BT framework, software engineers can develop robotic software by flexibly composing BT structures to formulate the skeleton software architecture and implement task-specific algorithms when necessary. In the experiment, this paper develops robotic software for diverse task scenarios and selects the baseline approaches of Robot Operating System (ROS) and classical BT development frameworks for comparison. By quantitatively measuring the reuse frequencies and ratios of BT structures, the Structural-BT framework has been shown to be more efficient than the baseline approaches for robotic software development.","PeriodicalId":65786,"journal":{"name":"复杂系统建模与仿真(英文)","volume":"3 4","pages":"357-380"},"PeriodicalIF":0.0000,"publicationDate":"2023-12-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10347382","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"复杂系统建模与仿真(英文)","FirstCategoryId":"1089","ListUrlMain":"https://ieeexplore.ieee.org/document/10347382/","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Nowadays, autonomous robots are expected to accomplish more complex tasks and operate in an open-world environment with uncertainties. Developing software for such robots involves the design of task planning paradigms and the implementation of robotic software architectures, making software development rather tricky and time-consuming. In recent decades, component-based software development approaches have been increasingly adopted in robotics to improve software development efficiency by reusing data and controlling flows between components. However, few works have tackled the more critical issue of reusing complex high-level task planning paradigms and robotic software architectures. To make up for the limitation, this paper first identifies the mainstream task planning paradigms and proposes a set of novel patterns for interaction pipelines between the robotic functions of sensing, planning, and acting. Then this paper presents a novel Behavior Tree (BT) based development framework Structural-BT, which provides a set of reusable BT structures that implement abstract interaction pipelines while maintaining interfaces for task-specific customization. The Structural-BT framework supports the modular design of structure functionalities and allows easy extensibility of the inner planning flows between BT components. With the Structural-BT framework, software engineers can develop robotic software by flexibly composing BT structures to formulate the skeleton software architecture and implement task-specific algorithms when necessary. In the experiment, this paper develops robotic software for diverse task scenarios and selects the baseline approaches of Robot Operating System (ROS) and classical BT development frameworks for comparison. By quantitatively measuring the reuse frequencies and ratios of BT structures, the Structural-BT framework has been shown to be more efficient than the baseline approaches for robotic software development.
通过重复使用任务规划范例的行为树结构,实现高效的机器人软件开发
如今,自主机器人需要完成更复杂的任务,并在充满不确定性的开放世界环境中工作。为这类机器人开发软件涉及任务规划范例的设计和机器人软件架构的实施,因此软件开发相当棘手和耗时。近几十年来,基于组件的软件开发方法被越来越多地应用于机器人领域,通过重用数据和控制组件之间的流动来提高软件开发效率。然而,很少有研究解决重用复杂的高级任务规划范例和机器人软件架构这一更为关键的问题。为了弥补这一不足,本文首先确定了主流任务规划范式,并提出了一套新颖的模式,用于机器人感知、规划和行动功能之间的交互管道。然后,本文提出了一种基于行为树(BT)的新型开发框架 Structural-BT,该框架提供了一套可重复使用的 BT 结构,用于实现抽象的交互管道,同时保留了用于特定任务定制的接口。结构-BT 框架支持结构功能的模块化设计,并允许轻松扩展 BT 组件之间的内部规划流。利用结构-BT 框架,软件工程师可以通过灵活组合 BT 结构来制定骨架软件架构,并在必要时实现特定任务算法,从而开发机器人软件。在实验中,本文开发了适用于不同任务场景的机器人软件,并选择了机器人操作系统(ROS)和经典 BT 开发框架的基线方法进行比较。通过定量测量 BT 结构的重用频率和比率,证明在机器人软件开发中,结构-BT 框架比基线方法更有效。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
CiteScore
7.80
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信