Researchers from Cornell University and the École Polytechnique de Montréal have developed a programming language designed to code behaviors for heterogeneous robot swarms.
Buzz is an extensible, dynamically typed programming language defining primitive commands for self-organizing robots and swarms of robots. Developers can use the language to code behaviors both from the perspective of a single robot and the overall swarm.
(Related: Robotic vision improves with advances in image recognition)
According to the researchers, the language’s single-robot primitives include robot-specific instructions and manipulation of neighborhood data, while swarm-based primitives allow for dynamic robot team management and global information sharing. Buzz runs on a decentralized runtime platform, a virtual machine written entirely in C allowing the robots to self-organize independent of the group as a whole.
The researchers, Giovanni Beltrame, Adam Lee-Brown and Carlo Pinciroli, created the language to scale development of swarm robotics software up to the growing demand caused by cheaper mass robot production. They designed Buzz for code reusability through libraries and common domain-specific language features to ultimately standardize swarm robotics research and development.
“We believe that one of the most important aspects of Buzz is its potential to become an enabler for future research on real-world, complex swarm robotics systems,” the researchers said. “Currently, no standardized platform exists that allows researchers to compare, share and reuse swarm behaviors. Inescapably, development involves a certain amount of re-coding of recurring swarm behaviors, such as flocking, barriers, and creation of gradients. The design of Buzz is motivated and nurtured by the necessity to overcome this state of affairs.”
Developers can extend the language to add new primitives as heterogeneous robot swarm capabilities grow more complex. The Buzz runtime platform is also designed to run atop other frameworks, including the open-source Robot Operating System.
The full academic paper on Buzz is available here, including code examples and an analysis based on simulated experiments of the language and the runtime platform’s scalability in terms of large-scale swarm algorithms. The researchers plan to submit Buzz to the Institute of Electrical and Electronics Engineers’ Transactions on Robotics publication.