Eric Bonabeau, Ph.D, a keynote speaker at the upcoming Emerging Technology conference, is a leader in the field of swarm intelligence and has focused on applying these concepts to real world problems such as factory scheduling and telecommunications routing. The concept itself is borrowed from nature; in this interview, that's where the conversation begins, with ants and other social insects. Dr. Bonabeau takes us from his childhood nightmares of carnivorous wasps to applying the theories of swarm intelligence to solving real problems in the business world.
Derrick Story:Eric, thanks for taking a few moments to talk with us.
Eric Bonabeau: My pleasure.
DS: Before we start discussing swarm intelligence specifically, and how it can save companies millions of dollars, could you tell us a little bit about past events that pointed you in this direction of research?
EB: As a kid I'd always been terrified of insects. I remember with retrospective anguish my holidays in the south of France, when picnics turned into nightmarish fights against carnivorous wasps and ferocious ants raiding my sandwich. I would wake up at night, screaming at the thousands of insects in my bed -- or was it a dream?
Sometimes I wonder how on earth I could dedicate eight years of my life to social insects. This large scale psychoanalytic phase transition took place in the early 1990's in Santa Fe, at the foot of the Rocky Mountains, the southernmost city before the New Mexican desert takes over. As a France Telecom R&D engineer, I was an unlikely candidate for such a radical transformation. My meeting with Guy Theraulaz at a seminar at the Santa Fe Institute changed my life. Guy, a French scientist who had been studying division of labor and nest construction in social wasps, introduced me to the amazing world of swarm intelligence, the emergent, collective intelligence of social insect colonies. Individually, one insect may not be capable of much; collectively, social insects are capable of achieving great things: building and defending a nest, foraging for food, taking care of the brood, allocating labor, forming bridges, and much more.
For instance, a colony of ants can collectively find out where the nearest and richest food source is located, without any individual ant knowing it. In experiments, a food source is separated from the nest by a bridge with two branches, one of which is longer. The shorter branch is most likely to be selected by the colony. This is because the ants lay and follow chemical trails: individual ants lay a chemical substance, a pheromone, which attracts other ants. The first ants returning to the nest from the food source are those that take the shorter path twice (from the nest to the source and back). Nest mates are recruited toward the shorter branch, which is the first to be marked with pheromone.
Listening to this story was an epiphany, not only because I finally understood how ants were able to so efficiently raid my sandwich during these distressing picnics of my childhood, but also because I saw a powerful computing metaphor. Indeed, by discovering the shortest path to a food source, the ants collectively solve an optimization problem using emergent computation.
Back at France Telecom, I started working on applying the ant metaphor to routing, a recurrent telecommunications network problem. Routing is needed because most large scale communications networks are not fully connected for cost effectiveness, so messages have to be guided through the network to reach their destination. I found that by letting virtual ants leave virtual pheromone at the network's nodes or routers, the routes that messages use can be optimized. The virtual ants are small computer programs that are sent through the network, just like messages except they can modify the information present at the routers. The technique worked wonders.
DS: That story brings two things to mind. First, why don't we use these ant pheromones to direct ants away from our kitchens instead of poisoning the environment (and our children) with toxic chemicals? A bit off topic I admit, but it seems to me we're missing the very essence of how to interact with, and control, these insects.
EB: Good question. My guess is that they'll come back. But you're right, understanding how ants organize collectively gives us insights into how to control them. There are people interested in exactly this topic to deal with fire ants in the Southwest or leafcutter ants in Latin America.
DS: My second followup is, why do we think we can apply the behavior of ants to human interactions and computer technology? Is it that all things in nature have a common bond, or is it more scientific than that?
EB: At some level of description, two very different systems, such as an ant colony and a computer network, may exhibit similar behavior. The mathematical expressions we use to characterize one can also be used to characterize the other, although the variables and parameters in the equations have very different meanings.
Therefore, thanks to the level of abstraction that mathematical modeling provides, one can build conceptual bridges between systems that operate in very different environments at very different time and spatial scales under very different constraints. When the foraging choice behavior of ants was first put into equations, they were strikingly similar to equations describing other phenomena (symmetry breaking in physical and chemical systems) and the model was performing some kind of optimization.
We could then go back to the ants and see that they were indeed solving an optimization problem, a very simple one, but still they were optimizing between two possible pathways to a food source. They were doing that collectively, self-organizing to discover the best solution. Building such bridges between disciplines and systems is an art that requires both a broad culture that spans many disciplines and a deep understanding of the mathematical formalism used to build models. To summarize, the connection between, say, the behavior of ants and a communications network comes from the model used to describe them both.
DS: Okay, let's dig in a little bit and tackle swarm intelligence. You've commented in some of your previous writings that the world is becoming so complex that no single human being can comprehend it. And that swarm intelligence offers an alternative way of designing "intelligent" systems in which autonomy, emergence, and distributedness replace control, preprogramming, and centralization.
So let's start at the 30,000 foot level here. In broad strokes, how is swarm intelligence a different approach, compared to the typical way we use now, to managing vast amounts of information?
EB: The most amazing thing about social insect colonies is that there's no individual in charge. If you look at a single ant, you may have the impression that it is behaving, if not randomly, at least not in synchrony with the rest of the colony. You feel that it is doing its own things without paying too much attention to what the others are doing.
But sometimes you also see "ant highways," that is, impressive columns of ants that can run over hundreds of feet. Ant highways are highly coordinated forms of collective behavior.
Human beings suffer from a "centralized mindset"; they would like to assign the coordination of activities to a central command. But the way social insects form highways and other amazing structures such as bridges, chains, nests (by the way, African fungus-growing termites have invented air conditioning) and can perform complex tasks (nest building, defense, cleaning, brood care, foraging, etc) is very different: they self-organize through direct and indirect interactions.
In social insects, errors and randomness are not "bugs"; rather, they contribute very strongly to their success by enabling them to discover and explore in addition to exploiting. Self-organization feeds itself upon errors to provide the colony with flexibility (the colony can adapt to a changing environment) and robustness (even when one or more individuals fail, the group can still perform its tasks).
With self-organization, the behavior of the group is often unpredictable, emerging from the collective interactions of all of the individuals. The simple rules by which individuals interact can generate complex group behavior. Indeed, the emergence of such collective behavior out of simple rules is one the great lessons of swarm intelligence.
This is obviously a very different mindset from the prevailing approach to software development and to managing vast amounts of information: no central control, errors are good, flexibility, robustness (or self-repair). The big issue is this: if I am letting a decentralized, self-organizing system take over, say, my computer network, how should I program the individual virtual ants so that the network behaves appropriately at the system-wide level?
I'm not telling the network what to do, I'm telling little tiny agents to apply little tiny modifications throughout the network. Through a process of amplification and decay, these small contributions will either disappear or add up depending on the local state of the network, leading to an emergent solution to the problem of routing messages through the network.
So that's the main concept here. Solutions to problems are emergent rather than predefined and preprogrammed. The problem is that you don't always know ahead of time what emergent solution will come out because emergent behavior is unpredictable. If applied well, self-organization endows your swarm with the ability to adapt to situations that you didn't think of. This approach has proven itself in a number of situations, ranging from network routing to factory scheduling to supply chain optimization to controlling groups of UAVs (Unmanned Aerial Vehicles). But it does require a drastic shift in mindset.
DS: I think "drastic shift in mindset" is a key factor here. Given what I know about people in general, and technology professionals in particular, control seems to be the key objective. What chance do we have to create enough behavioral change in these communities to give swarm intelligence a real chance?
EB: My experience trying to "sell" the concepts of swarm intelligence to the commercial world is that managers would rather live with a problem they can't solve than with a solution they don't fully understand or control. So the mindset is a big barrier to adoption.
However, we're reaching a stage in technology where you no longer have a choice: your mindset has to change or you'll be screwed. It's no longer possible to use traditional, centralized, hierarchical command and control techniques to deal with systems that have thousands or even millions of dynamically changing, communicating, heterogeneous entities. I think that the type of solution swarm intelligence offers is the only way of moving forward, you have to rethink the way you control complex distributed systems.
To accelerate the adoption of these ideas, it will require some effort on my part to explain how things work and why you're not really giving up control. I will have to convince you that the systems I'm proposing will not crash under some special, unforeseen situation (but I would argue that traditional software will crash under special unforeseen situations; why should I have the burden of proof?). And I think the best way of accelerating the adoption of these concepts is a couple of high visibility success stories. We're working on that.
Take UAVs, for example. Right now you need several human operators to control a single UAV. This is not scalable and it won't work if you want to have thousands of UAVs flying over a country. The ratio has to be at least inverted: you want a single human operator to handle a group of UAVs. How do you achieve that? By empowering the UAVs more. Swarm intelligence provides the guidelines to design such a decentralized system.
Obviously we have to make sure that the UAVs don't self-organize into some dangerous, pathological configuration; in other words, we have to be able to trust them because their collective behavior is not predefined. That's the goal of current research. The goal is not necessarily to get rid of the human operators, but to have a human-on-the-loop in a way that greatly amplifies what a single human operator can do.
DS: You've really opened my eyes to some new concepts here. I'm very much looking forward to your talk in April at Etech. Once again thank you for your time.
EB: You're most welcome.
Derrick Story is the author of The Photoshop CS4 Companion for Photographers, The Digital Photography Companion, and Digital Photography Hacks, and coauthor of iPhoto: The Missing Manual, with David Pogue. You can follow him on Twitter or visit www.thedigitalstory.com.
Return to OpenP2P.com.
Copyright © 2009 O'Reilly Media, Inc.