1,024 tiny robots assemble into shapes like intelligent insects

Researchers in Harvard’s Self-Organizing Systems Research Group have introduced Kilobots — a 1,024-strong swarm of decentralized cooperating robots that can assemble themselves into complex shapes with very little human input.


A team comprised of Michael Rubenstein, Alejandro Cornejo, and Professor Radhika Nagpal have described their 1,024-robot swarm in a detailed study published in Science“Each robot has the basic capabilities required for a swarm robot, but is made with low-cost parts, and is mostly assembled by an automated process. In addition, the system design allows a single user to easily and scalably operate a large Kilobot collective, such as programming, powering on, and charging all robots systems,” the researchers explain.

The thousand plus bots are each embedded with an Atmel microcontroller, two vibrating motors powering rigid legs that allow them to skitter across smooth surfaces, and an infrared emitter-sensor pair to receive commands and communicate wirelessly. They can transform into a variety of shapes, including a starfish and the letter K (as seen below).


What makes this piece of work so exceptional is that, before the Kilobot, most collectives were limited to less than 100 robots. In order to exceed previous limitations, this required completely rethinking how the robots were designed. To do this, the team of researchers created a coin-sized robot that possessed the ability to move on three stick-legs using two vibrating motors. It could then communicate with neighbouring robots using the aforementioned infrared light, signal its state by changing a color LED and sense ambient light.

Kilobot robots

In current robotics research, there has been a vast body of work on algorithms and control methods for groups of decentralized cooperating robots, called a swarm or collective. “These algorithms are generally meant to control collectives of hundreds or even thousands of robots; however, for reasons of cost, time, or complexity, they are generally validated in simulation only, or on a group of a few 10s of robots,” the study reveals. With the robots ready, the team developed an algorithm which could guarantee that a large numbers of robots, with limited capabilities and local communication, could cooperatively self-assemble into user-specified shapes. Four “seed” robots kick off the process, generating a domino-effect of signals that propagate through the rest of the swarm. How each Kilobot positions itself is dependent upon the distance between itself and its nearby bots. IEEE Spectrum explains that while in biological systems, swarms can organize and control themselves based on a set of very simple rules. With the Kilobots, however, the algorithm that they use to create shapes are based on a similarly simple set of capabilities:

  • Edge-following, where a robot can move along the edge of a group by measuring distances from robots on the edge
  • Gradient formation, where a source robot can generate a gradient value message that increments as it propagates through the swarm, giving each robot a geodesic distance from the source
  • Localization, where the robots can form a local coordinate system using communication with, and measured distances to, neighbors

“Increasingly, we’re going to see large numbers of robots working together, whether its hundreds of robots co-operating to achieve environmental clean up or a quick disaster response, or millions of self-driving cars on our highways. Understanding how to design ‘good’ systems at that scale will be critical,” said Professor Radhika Nagpal.

For those interested in making, buying or programming their own Kilobot swarm, you can check out Harvard’s official project page here.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s