Stupid Robot Tricks: A Behavior-Based Distributed Algorithm Library for Programming Swarms of Robots

As robots become ubiquitous, multiple robots dedicated to a single task will become commonplace. Groups of robots can solve problems in fundamentally different ways than individuals while achieving higher levels of performance, but present unique challenges for programming and coordination. This work presents a set of communication techniques and a library of behaviors useful for programming large groups, or swarms, of robots to work together. The gradient-flood communications algorithms presented are resilient to the
constantly changing network topology of the Swarm. They provide real-time information that is used to communicate data and to guide robots around the physical environment. Special attention is paid to ensure orderly removal of messages.

Decomposing swarm actions into individual behaviors is a daunting task. Complex and subtle local interactions among individuals produce global behaviors, sometimes unexpectedly so. The behavior library presented provides group behavior “building blocks” that interact in predictable manner and can be combined to build complex applications. The underlying distributed algorithms are scaleable, robust, and self-stabilizing.

The library of behaviors is designed with an eye towards practical applications, such as exploration, searching, and coordinated motion. All algorithms have been developed and tested on a swarm of 100 physical robots. Data is presented on algorithm correctness and efficiency.

Paper located here.

Author: 
McLurkin J
Publication: 
Department of Electrical Engineering and Computer Science at the Massachusetts Institute of Technology
Year: 
2004