Growing bio-inspired shapes with a 300-robot swarm
Work by I. Slavkov, D. Carrillo-Zapata, N. Carranza, X. Diego, F. Jansson, J. Kaandorp, S. Hauert, J. Sharpe
Our work published today in Science Robotics describes how we grow fully self-organised shapes using a swarm of 300 coin-sized robots. The work was led by James Sharpe at EMBL and the Centre for Genomic Regulation (CRG) in Barcelona – together with my team at the Bristol Robotics Laboratory and University of Bristol.
Here’s a video summarising the results, or you can read the paper here:
Nature is capable of producing impressive functional shapes throughout embryonic development. Broadly, there are two ways to form these shapes.
1) Top-down control. Cells have access to information about their position through some coordinate system, for example generated through their molecular gradients. Cells use this information to decide their fate, which ultimately creates the shapes. There are beautiful examples of this strategy being used for robot swarms, check here for work by Rubenstein et al. (video).
2) Local self-organisation. Cells generate reaction-diffusion systems, such as those described by Alan Turing, resulting in simple periodic patterns. Cells can use these patterns to decide their fate and the resulting shape.
We use the second strategy, here’s how it works.
We start from a swarm of 300 closely packed robots in a disc – each running the same code. Each robot stores two morphogens u and v, which you can think of as virtual chemical signals. Morphogen u activates itself and the other morphogen v, whereas v inhibits itself and the other morphogen u – this is a ‘reaction’ network. ‘Diffusion’ of u and v happens through communication from robot to robot. Symmetry breaking caused by the ‘reaction-diffusion’ system results in spots emerging on the swarm (or stripes if we change the parameters!). Areas with high-levels of morphogens are shown in green – that’s what we call a “Turing spot”.
In biology, cells may die or multiply depending on their patterning. As we can’t do either of those things with robots, we simply move robots from areas where they are no longer needed to areas of growth. The general idea is that robots that are on the edge of the swarm, and are not in a Turing spot, move along the edge of the swarm until they are near the spot. This causes protrusions to grow at the location of the Turing spots.
Following these simple rules, we are able to grow shapes in a repeatable manner, although all the shapes are slightly different. If you watch the video, you’ll see that these shapes look quite organic. We did over 20 experiments with large robot swarms, each one taking about 3 hours.
Because the rules are so simple, and only rely on local information, we get adaptability and robustness for free.
First, as the shape grows, the Turing spots move, showing that the patterning adapts to the shape of the swarm, and that the shape further adapts to the patterning. Second, we can easily change the starting configuration of the swarm (smaller number of robots, or a ‘rectangular’ starting conditions) and the shape still forms.
Chopping off a protrusion, causes the robots to regrow it, or to reallocate robots to other protrusions in the swarm. Splitting the swarm causes it to self-heal.
Potential for real world applications
While inspiration was taken from nature to grow the swarm shapes, the goal is ultimately to make large robot swarms for real-world applications. Imagine hundreds or thousands of tiny biodegradable robots growing shapes to explore a disaster environment after an earthquake or fire, or sculpting themselves into a dynamic 3D structure such as a temporary bridge that could automatically adjust its size and shape to fit any building or terrain. There is still a long way to go however, before we see such swarms outside the laboratory.
James Sharpe (EMBL Barcelona) led the Swarm-Organ project, which was initiated at the Centre for Genomic Regulation (CRG) when Sharpe was a group leader there. Sabine Hauert (Bristol Robotics Laboratory and University of Bristol) was the key senior collaborator. Other collaborators were Fredrik Jansson (currently employed at Centrum Wiskunde & Informatica – CWI) and Jaap Kaandorp (University of Amsterdam – UvA).
You can read more in the paper Slavkov, I., Zapata D. C. et al., Science Robotics (2018).
The research leading to these results has received funding from the European Union Seventh Framework Programme (FP7) under grant agreement n° 601062, and the EPSRC Centre for Doctoral Training in Future Autonomous and Robotic Systems (FARSCOPE) at the Bristol Robotics Laboratory.