ROS package search for robot software development: a knowledge graph-based approach (2312.14781v1)
Abstract: ROS (Robot Operating System) packages have become increasingly popular as a type of software artifact that can be effectively reused in robotic software development. Indeed, finding suitable ROS packages that closely match the software's functional requirements from the vast number of available packages is a nontrivial task using current search methods. The traditional search methods for ROS packages often involve inputting keywords related to robotic tasks into general-purpose search engines or code hosting platforms to obtain approximate results of all potentially suitable ROS packages. However, the accuracy of these search methods remains relatively low because the task-related keywords may not precisely match the functionalities offered by the ROS packages. To improve the search accuracy of ROS packages, this paper presents a novel semantic-based search approach that relies on the semantic-level ROS Package Knowledge Graph (RPKG) to automatically retrieve the most suitable ROS packages. Firstly, to construct the RPKG, we employ multi-dimensional feature extraction techniques to extract semantic concepts from the dataset of ROS package text descriptions. The semantic features extracted from this process result in a substantial number of entities and relationships. Subsequently, we create a robot domain-specific small corpus and further fine-tune a pre-trained LLM, BERT-ROS, to generate embeddings that effectively represent the semantics of the extracted features. These embeddings play a crucial role in facilitating semantic-level understanding and comparisons during the ROS package search process within the RPKG. Secondly, we introduce a novel semantic matching-based search algorithm that incorporates the weighted similarities of multiple features from user search queries, which searches out more accurate ROS packages than the traditional keyword search method.
- It takes a village to build a robot: An empirical study of the ros ecosystem. In: 2020 IEEE International Conference on Software Maintenance and Evolution (ICSME). 2020, 430–440
- Ros: an open-source robot operating system. In: ICRA workshop on open source software. 2009, 5
- Can i depend on you? mapping the dependency and quality landscape of ros packages. In: 2019 third IEEE international conference on robotic computing (IRC). 2019, 78–85
- Sharing software with ros [ros topics]. IEEE Robotics & Automation Magazine, 2010, 17(2): 12–14
- The probabilistic relevance framework: Bm25 and beyond. Foundations and Trends® in Information Retrieval, 2009, 3(4): 333–389
- Booth J D. Github succinctly, 2016
- The robot operating system: Package reuse and community dynamics. Journal of Systems and Software, 2019, 151: 226–242
- Code duplication in ros launchfiles. In: 2015 34th International Conference of the Chilean Computer Science Society (SCCC). 2015, 1–6
- Jiang G, Mao X. Exploring problems and solutions about launch files in ros from q&a community. In: Proceedings of the 2022 3rd International Conference on Big Data & Artificial Intelligence & Software Engineering. 2022, 9–14
- Witte T, Tichy M. Checking consistency of robot software architectures in ros. In: Proceedings of the 1st International Workshop on Robotics Software Engineering. 2018, 1–8
- Mining guidelines for architecting robotics software. Journal of Systems and Software, 2021, 178: 110969
- An experience report on challenges in learning the robot operating system. In: 2022 IEEE/ACM 4th International Workshop on Robotics Software Engineering (RoSE). 2022, 33–38
- Robot operating system 2: Design, architecture, and uses in the wild. Science Robotics, 2022, 7(66): eabm6074
- Know-how in programming tasks: From textual tutorials to task-oriented knowledge graph. In: 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME). 2019, 257–268
- Towards an efficient searching approach of ros message by knowledge graph. In: 2022 IEEE 46th Annual Computers, Software, and Applications Conference (COMPSAC). 2022, 934–943
- Tenorth M, Beetz M. Knowrob: A knowledge processing infrastructure for cognition-enabled robots. The International Journal of Robotics Research, 2013, 32(5): 566–590
- Software knowledge graph construction and q&a technology based on big data. Big Data Research, 2021, 7(1): 22–36
- Agora: A search engine for software components. IEEE Internet computing, 1998, 2(6): 62
- López Pino B E. Sistema de recomendación de expertos para ROS Answers. Universidad de Chile, 2019
- Yang Z, Nyberg E. Leveraging procedural knowledge for task-oriented search. In: Proceedings of the 38th International ACM SIGIR Conference on Research and Development in Information Retrieval. 2015, 513–522
- Crokage: effective solution recommendation for programming tasks by leveraging crowd knowledge. Empirical Software Engineering, 2020, 25: 4707–4758
- Kenton J D M W C, Toutanova L K. Bert: Pre-training of deep bidirectional transformers for language understanding. In: Proceedings of naacL-HLT. 2019, 2
- Improving api caveats accessibility by mining api caveats knowledge graph. In: 2018 IEEE International Conference on Software Maintenance and Evolution (ICSME). 2018, 183–193
- Api-misuse detection driven by fine-grained api-constraint knowledge graph. In: Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering. 2020, 461–472
- Generating concept based api element comparison using a knowledge graph. In: Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering. 2020, 834–845
- Singh R, Mangat N S. Elements of survey sampling. volume 15. Springer Science & Business Media, 2013
- Landis J R, Koch G G. An application of hierarchical kappa-type statistics in the assessment of majority agreement among multiple observers. Biometrics, 1977, 363–374
- Effective robotics programming with ROS. Packt Publishing Ltd, 2016
- Fairchild C, Harman T L. ROS Robotics By Example: Learning to control wheeled, limbed, and flying robots using ROS Kinetic Kame. Packt Publishing Ltd, 2017
- Gandhinathan R, Joseph L. ROS Robotics projects: build and control robots powered by the Robot Operating System, machine learning, and virtual reality. Packt Publishing Ltd, 2019
Paper Prompts
Sign up for free to create and run prompts on this paper using GPT-5.
Top Community Prompts
Collections
Sign up for free to add this paper to one or more collections.