We noticed you're browsing in private or incognito mode.

To continue reading this article, please exit incognito mode or log in.

Not a subscriber? Subscribe now for unlimited access to online articles.

Emerging Technology from the arXiv

A View from Emerging Technology from the arXiv

A Programming Language For Robot Swarms

When it comes to robotic flocks, do you control each machine individually or the entire swarm overall? A new programming language allows both.

  • July 29, 2015

One of the more fascinating sights of an autumn evening is the flocking behaviour of starlings as they lurch and swoop in extraordinary demonstrations of aerodynamic synchronisation.

It turns out that these complex displays come about as a result of a simple set of rules that govern how the birds fly relatively to each other. Indeed, this flocking has been relatively straightforward to simulate on computer for many years.

But it has never been repeated with flying robots or ground-based ones for that matter, for two reasons. First because nobody has built robots with the same agility and speed. But even with less agile robots, the task is tricky because of the second reason: there is no easy way to control such a flock.

The first factor is changing rapidly. Cheap, capable robots—flying or otherwise–have caused an explosion of interest in flocks and swarms. Numerous researchers, hobbyists and artists are experimenting with these machines and hoping to study and exploit and the swarming behaviour they generate.

These groups are all finding that controlling large numbers of identical robots is something of a challenge. And in the absence of an established programming language, they are having to tackle the same problems in the same ways. In other words, they are re-inventing the wheel.

Today, Carlo Pinciroli at the Ecole Polytechnique de Montreal in Canada and a few pals say they have developed a programming language for just this purpose. “We present Buzz, a novel programming language for heterogeneous robot swarms,” they say.

There are two opposing approaches to controlling a swarm. The first is a bottom up method in which each robot is controlled individually. That’s useful for fine tuning the interaction between specific robots but becomes increasingly difficult to manage as the size of the swarm increase.

The opposing method is a top down approach in which the swarm is controlled as a whole. That’s much more effective for large swarms but does not allow for the fine tuning of individual robot behaviours.

Pinciroli and co say their new language allows both methods. “We believe that a language for robot swarms must combine both bottom-up and top-down primitives, allowing the developer to pick the most comfortable level of abstraction to express a swarm algorithm,” they say.

They say that Buzz also allows commands to be combined in intuitive ways with predictable results that make it relatively easy to use. It is also scalable and so can be used effectively in swarms of varying sizes.

They go on to show various examples of how the language works in practice and leads to self -organised behaviour using relatively simple rules, just like real swarms and flocks.

That’s interesting work that has the power to become a technology amplifier. Pinciroli and co say that the absence of a standardised programming language for swarms is a significant barrier to future progress because there is no easy way for researchers to share their work and build on each other’s breakthroughs.

“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,” says the team.

And they have ambitious plans for the future. For example, they want to create a library of well-known swarm behaviours that will become building blocks for the future work of others.

Interesting stuff which may mean that the extraordinary flocks you see on future autumn evenings may not be starlings at all.

Ref: arxiv.org/abs/1507.05946 : Buzz: An Extensible Programming Language for Self-Organizing Heterogeneous Robot Swarms

Learn from the humans leading the way in intelligent machines at EmTech Next. Register Today!
June 11-12, 2019
Cambridge, MA

Register now
More from Intelligent Machines

Artificial intelligence and robots are transforming how we work and live.

Want more award-winning journalism? Subscribe to Print Subscription.
  • Print Subscription {! insider.prices.print_only !}*

    {! insider.display.menuOptionsLabel !}

    Six print issues per year plus The Download delivered to your email in-box each weekday.

    See details+

    12-month subscription

    Print magazine (6 bi-monthly issues)

    The Download: newsletter delivery each weekday to your inbox

You've read of three free articles this month. for unlimited online access. You've read of three free articles this month. for unlimited online access. This is your last free article this month. for unlimited online access. You've read all your free articles this month. for unlimited online access. You've read of three free articles this month. for more, or for unlimited online access. for two more free articles, or for unlimited online access.