{"title":"通过重复使用任务规划范例的行为树结构,实现高效的机器人软件开发","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":"{\"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}","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}
Towards Efficient Robotic Software Development by Reusing Behavior Tree Structures for Task Planning Paradigms
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.