Modular robots are defined as autonomous kinematic machines with variable morphology. They are composed of several thousands or even millions of modules which are able to coordinate in order to behave intelligently. Clustering the modules in modular robots has many benefits, including scalability, energy-efficiency, reducing communication delay and improving the self-reconfiguration process that focuses on finding a sequence of reconfiguration actions to convert robots from an initial shape to a goal one. The main idea of clustering is to divide the modules in an initial shape into a number of groups based on the final goal shape in order to enhance the self-reconfiguration process by allowing clusters to reconfigure in parallel. In this work, we prove that the size-constrained clustering problem is NP-complete and we propose a new tree-based size-constrained clustering algorithm called ”SC-Clust”. The idea is to divide a network into a predefined number of clusters constrained by a given number of modules in each cluster based on the final goal shape. The result is an efficient algorithm that scales to large modular robot systems. To show the efficiency of our approach, we implement and demonstrate our algorithm in simulation on networks of up to 30,000 modules and on the
Blinky Blocks
hardware with up to 144 modules.