Clustering Around Food
Here are two shots of the first cooperative program in action. The first picture shows the robots scattered around the playing area. There is a piece of ant food in front of the robot in the middle.
Once the robot in the middle detects the food, she emits the "I found food" IR signal. Any robot within about 12 inches of her can detect the signal and head towards her.
When a robot receives the "I found food" signal it heads towards the robot with the food while transmiting "I see an Ant with food". Any robot within range of the second robot receives the "I see an Ant with food" signal, heads towards the second robot, and transmits "I see an Ant that sees an Ant with food". Any robot within range of the third robot receives the "I see an Ant that sees an Ant with food" signal and... well you get the picture. It is like a robotic relay team.
This type of behavior would be useful for efficiently collecting large food sources on foraging trips. Although this behavior is very simple, when it is combined with other behaviors and there are many robots interacting with each other, you can get some very interesting results. (Usually a big mess, but still a very interesting mess!)
Here are some MPEG video clips that show clustering around food.
The object of this game is for the single "It" robot to seek out and tag (bump into) any of the "Not It" robots. The "It" robot heads for the "Not It" signal that the other robots are transmitting from their IR beacons. When the "It" robot bumps into anything, it transmits "Tag" from its tag emitter. If the object that was bumped into is a wall or something else boring, the "It" robots does not get a return signal and continues with whatever it was doing. If, however, the "It" robot bumped into a "Not It" robot, the "Not It" robot transmits "I got tagged" and then changes its mood from "Not It" to "It". When the former "It" robot receives the "I got Tagged" signal, then it changes it's mood from "It" to "Not It". (This paragraph is infested with its!)
This game works remarkably well. So well in fact, that it has become a standard demo program for the robots, which is the acme of research software. Wanna see some video clips?
Manhunt is like tag with teams. There is a red team and a green team. The object is for all the members of each team to tag all the members of the opposing team. When a robot is tagged, it changes teams. Right now, I'm running experiments to see how cooperation affects the outcome of the game. When both teams bounce around randomly, there is a 50/50 change of either side winning. The first set of experimental runs involves the red team head actively searching out green robots. The results so far?
Red Team Victories:5
Green Team Victories:1
(Watch this space...)
Return to main page.