Thursday, November 20, 2008

Swarm Tolerance to Failure

Jan Dyre Bjerknes has made a terrific breakthrough with his PhD research that I'm very excited about: see the YouTube video (courtesy of Jan Dyre) below.

Let me explain what's going on here, and why I'm so excited about it. The swarm of 10 e-puck robots, starting on the left of the arena, are attracted to the beacon (the black box) on the right of the arena. Crucially the swarm's movement toward the beacon is not directly programmed into the robots, it is what we call an emergent property of the swarm. I won't explain how it works here, except to say that the robots need to - in a sense - cooperate. One robot can't make it to the beacon on its own, nor two, nor three or four. Five is about the fewest number that can get to the beacon.

If you watch the movie clip carefully you will see that a few seconds into the experiment Jan Dyre has arranged that two of the robots fail: you can see them stop moving. In fact they fail in a really bad way. Their electronics and software still works, only the motors have failed. But because the swarm works cooperatively, the failed robots have the effect of anchoring the swarm and impeding its movement toward the beacon. However, what the clip also shows is that 'force' of the swarm movement (of the 8 robots still working) is, after a while, enough to overcome the 'anchoring force' of the two failed robots. Bearing in mind that partial failures are the worst kind, 20% is a massive failure rate, so this experiment demonstrates the very high level of fault tolerance in a robot swarm.