Credit: Eliza Grinnell, Harvard SEAS
Inspired by the termites' resilience and collective intelligence, a team of computer scientists and engineers at the Harvard School of Engineering and Applied Sciences (SEAS) and the Wyss Institute for Biologically Inspired Engineering at Harvard University has created an autonomous robotic construction crew. The system needs no supervisor, no eye in the sky, and no communication: just simple robots -- any number of robots -- that cooperate by modifying their environment.
Harvard's TERMES system demonstrates that collective systems of robots can build complex, three-dimensional structures without the need for any central command or prescribed roles. The results of the four-year project were presented this week at the AAAS 2014 Annual Meeting and published in the February 14 issue of Science.
The TERMES robots can build towers, castles, and pyramids out of foam bricks, autonomously building themselves staircases to reach the higher levels and adding bricks wherever they are needed. In the future, similar robots could lay sandbags in advance of a flood, or perform simple construction tasks on Mars.
"The key inspiration we took from termites is the idea that you can do something really complicated as a group, without a supervisor, and secondly that you can do it without everybody discussing explicitly what's going on, but just by modifying the environment," says principal investigator Radhika Nagpal, Fred Kavli Professor of Computer Science at Harvard SEAS. She is also a core faculty member at the Wyss Institute, where she co-leads the Bioinspired Robotics platform.
Most human construction projects today are performed by trained workers in a hierarchical organization, explains lead author Justin Werfel, a staff scientist in bioinspired robotics at the Wyss Institute and a former SEAS postdoctoral fellow.
"Normally, at the beginning, you have a blueprint and a detailed plan of how to execute it, and the foreman goes out and directs his crew, supervising them as they do it," he says. "In insect colonies, it's not as if the queen is giving them all individual instructions. Each termite doesn't know what the others are doing or what the current overall state of the mound is."
Instead, termites rely on a concept known as stigmergy, a kind of implicit communication: they observe each others' changes to the environment and act accordingly. That is what Nagpal's team has designed the robots to do, with impressive results. Supplementary videos published with the Science paper show the robots cooperating to build several kinds of structures and even recovering from unexpected changes to the structures during construction.
Each robot executes its building process in parallel with others, but without knowing who else is working at the same time. If one robot breaks, or has to leave, it does not affect the others. This also means that the same instructions can be executed by five robots or five hundred. The TERMES system is an important proof of concept for scalable, distributed artificial intelligence.
Nagpal's Self-Organizing Systems Research Group specializes in distributed algorithms that allow very large groups of robots to act as a colony. Close connections between Harvard's computer scientists, electrical engineers, and biologists are key to her team's success. They created a swarm of friendly Kilobots a few years ago and are contributing artificial intelligence expertise to the ongoing RoboBees project, in collaboration with Harvard faculty members Robert J. Wood and Gu-Yeon Wei.
"When many agents get together -- whether they're termites, bees, or robots -- often some interesting, higher-level behavior emerges that you wouldn't predict from looking at the components by themselves," says Werfel. "Broadly speaking, we're interested in connecting what happens at the low level, with individual agent rules, to these emergent outcomes."
Coauthor Kirstin Petersen, a graduate student at Harvard SEAS with a fellowship from the Wyss Institute, spearheaded the design and construction of the TERMES robots and bricks. These robots can perform all the necessary tasks -- carrying blocks, climbing the structure, attaching the blocks, and so on -- with only four simple types of sensors and three actuators.
"We co-designed robots and bricks in an effort to make the system as minimalist and reliable as possible," Petersen says. "Not only does this help to make the system more robust; it also greatly simplifies the amount of computing required of the onboard processor. The idea is not just to reduce the number of small-scale errors, but more so to detect and correct them before they propagate into errors that can be fatal to the entire system."
In contrast to the TERMES system, it is currently more common for robotic systems to depend on a central controller. These systems typically rely on an "eye in the sky" that can see the whole process or on all of the robots being able to talk to each other frequently. These approaches can improve group efficiency and help the system recover from problems quickly, but as the numbers of robots and the size of their territory increase, these systems become harder to operate. In dangerous or remote environments, a central controller presents a single failure point that could bring down the whole system.
"It may be that in the end you want something in between the centralized and the decentralized system -- but we've proven the extreme end of the scale: that it could be just like the termites," says Nagpal. "And from the termites' point of view, it's working out great."
This research was supported by the Wyss Institute for Biologically Inspired Engineering at Harvard University.
What can a TERMES robot do?
- Move forward, backward, and turn in place
- Climb up or down a step the height of one brick
- Pick up a brick, carry it, and deposit it directly in front of itself
- Detect other bricks and robots in immediate vicinity
- Keep track of its own location with respect to a "seed" brick
What instructions do the TERMES robots follow?
- Obey predetermined traffic rules
- Circle the growing structure to find the first, "seed" brick (for orientation)
- Climb onto the structure
- Obtain a brick
- Attach the brick at any vacant point that satisfies local geometric requirements
- Climb off the structure