Publicação

Encoding and analysis of variational ROS computation graphs

Ver documento

Detalhes bibliográficos
Resumo:In robotic applications, it is common to develop several variants of the same system (also known as a software product line), for example, to support different configurations of a robot. ROS is the most popular framework for developing robotic applications, where each application is implemented as a distributed system of computation nodes that communicate through message passing. HAROS is a framework for static analysis of ROS-based code. It can extract an abstract model of a ROS system’s architecture (called the computation graph) and perform an analysis on that model. However, it can only analyse one configuration at a time. In this thesis, we present three different approaches for encoding various ROS computation graphs in a single variational data structure, which contains the information related to the whole system and not just a configura tion. Additionally, we also define a variational execution algorithm for each approach, along with a small query language, so that we can query and perform some analysis on said data structures. Lastly, we evaluate these algorithms and data structures so that we can reach some conclusions on which approaches work best, and in what conditions.
Autores principais:Moura, Pedro Rafael Paiva
Assunto:Variability Variational software Variational data structures Variational query languages Robotics Software product lines
Ano:2022
País:Portugal
Tipo de documento:dissertação de mestrado
Tipo de acesso:acesso aberto
Instituição associada:Universidade do Minho
Idioma:inglês
Origem:RepositóriUM - Universidade do Minho
Descrição
Resumo:In robotic applications, it is common to develop several variants of the same system (also known as a software product line), for example, to support different configurations of a robot. ROS is the most popular framework for developing robotic applications, where each application is implemented as a distributed system of computation nodes that communicate through message passing. HAROS is a framework for static analysis of ROS-based code. It can extract an abstract model of a ROS system’s architecture (called the computation graph) and perform an analysis on that model. However, it can only analyse one configuration at a time. In this thesis, we present three different approaches for encoding various ROS computation graphs in a single variational data structure, which contains the information related to the whole system and not just a configura tion. Additionally, we also define a variational execution algorithm for each approach, along with a small query language, so that we can query and perform some analysis on said data structures. Lastly, we evaluate these algorithms and data structures so that we can reach some conclusions on which approaches work best, and in what conditions.