Abstract

Abstract An intelligent service robot helps human users with providing various services such as bringing a newspaper, recommending TV programs, and preparing meals. Each service can be accomplished by coordinating various motion actuations that are activated based on sensory data. Due to the limitation of robot computing-resources such as CPU usage and memory, the software components that implement such motion actuations can not be loaded and executed at the same time as the complexity of the service increases. That is, those components may compete with each other for the limited computing-resources, and this may result an unexpected behavior of the robot. In this paper, we propose a software architecture-based approach for self-adaptive function that optimizes the use of computing resources by supporting dynamic re-deployment of software components. Organizations of motion actuations for providing services are modeled by software architecture that describes required components and their configurations. In our approach, when a resource problem is detected, components are re-deployed across single-board computers (SBCs) in the robot while maintaining the functional and quality requirements of the components and configuration among them represented in the software architecture. We designed the self-adaptive software framework and implemented a prototype of it. We also had an experiment of our approach on an infotainment robot, and successfully proved the effectiveness of the architecture-based self-adaptive function.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call