Modular robotic systems: Methods and algorithms for abstraction, planning, control, and synchronization
While expected applications of Modular Robotic Systems (MRS) span various workspaces, scales, and structures, practical implementations of such systems lag behind their potentials in performing real-world tasks. Challenges of enhancing MRS capabilities not only are limited to designing reliable, responsive, and robust hardware, but also include developing software and algorithms that can effectively fulfill tasks through performing fundamental functions like shape-formation, locomotion, manipulation, etc. Thus, MRS solution methods must be able to resolve problems arising from the tightly-coupled kinematics of interconnected modules and their inherent limitations in resources, communication, connection strength, etc. in performing such functions through domain-specific operations including Self-reconfiguration, Flow, Gait, Self-assembly, Self-disassembly, Self-adaptation, Grasping, Collective actuation, and Enveloping. Despite the large number of developed solution methods, there is no inclusive and updated study in the literature dedicated to classifying, analyzing, and comparing their specifications and capabilities in a systematic manner. This paper aims to fill in this gap through reviewing 64 solution methods and algorithms according to their application in each operation and by investigating their capabilities in (1) modeling and simplifying MRS problems through Abstraction methods, (2) solving MRS problems through Solution and Control methods, and (3) coordinating actions of modules through Synchronization methods. Challenging issues of each solution approach along with their advantages and weaknesses are also analyzed and open problems and improvement outlooks are mentioned. Overall, this paper aims to investigate the research areas in MRS algorithms that have been evolved so far and to explore promising research directions for the future.
modular robotic systems flow gait solution methods and algorithms self-reconfiguration self-assembly