Modular robots are robotic systems composed of several interconnected modules; each module is self-contained with its sensing, actuating, computing, and communication means; these simple modules are connected to form more complex robots. Self reconfiguration is a property in modular robots that enable them to change their morphology autonomously to suit a specific task. Self-reconfiguration provides modular robots with more versatility and flexibility as opposite to single-purpose robots, and they represent a significant step towards building the universal robot. The potentials of modular robots are enormous, and it can be the perfect candidate for applications where the task is not entirely known in advance and rough and changing environme...