No man is an island, and Maja Matari´c thinks no robot should be, either. Matari´c, a Brandeis University computer scientist, believes robots will do their best work only when they begin to work together. How do you get a herd of robots to do something without killing each other? she asks. According to Matari´c, you have to put them in societies and let them learn from one another, just as seagulls and baboons and people do. Matari´c has already made an impressive start at teaching robots social skills. She has gotten 14 robots to cooperate at once--the biggest gaggle of machines ever to socialize.
The Nerd Herd, as Matari´c calls them, are shoe-box-size machines, each of which has four wheels, two tongs to grab things, and a two-way radio. The radio allows them to triangulate their position with respect to two fixed transmitters as they wander around Matari´c’s lab. It also allows them to broadcast their coordinates and other information to their neighbors. Infrared sensors help the robots find things and avoid obstacles; contact-sensitive strips tell them when they’ve crashed anyway.
Each robot is programmed with a handful of what Matari´c calls behaviors--sets of instructions that enable the robot to accomplish a small goal, like following the robot in front of it. Set one robot on the floor with its wheels turned permanently to the left and program the others to follow, and they will all drive in a circle until their batteries go dead. But Matari´c can get more interesting actions out of the herd by programming them to alternate among several behaviors. By telling them to home in on a target, to aggregate when they’re too far from one another, to disperse when they’re too crowded, and to avoid collisions at all times, she’s been able to get scattered robots to come together and migrate across her lab like a flock of birds.
More important, the robots can also learn on their own to carry out morecomplex tasks. One task Matari´c set for them was to forage for little metal pucks and bring them home to their nest in a corner of the lab. To give the task a natural flavor, Matari´c gave the robots clocks; at night they had to go home and rest, and in the morning they looked for pucks again. In addition to five basic behaviors they could choose from, she endowed them with a sort of prime directive: to maximize their individual point scores. Each time a robot did something right, such as locating a puck, it was automatically rewarded with points; each time it committed a blooper, such as dropping a puck, it lost points.
After some random experimentation, the robots soon learned how to forage--but not very well, because they tended to interfere with one another in their selfish pursuit of points. Why should you ever stop and let someone else go? asks Matari´c. It’s always in your interest to go-- but if everybody feels that way, then nobody gets through and they jam up and fight for space. To make her creatures more efficient, though, Matari´c found she didn’t have to program them with a God’s-eye view of what was good for all robots. She just had to teach each robot to share--to let other robots know when it had found a puck, and to listen to other robots in return. I put in the impetus to pay attention to what other robots are doing, and to try what other robots are trying, sharing the experience, Matari´c explains. If I do something that’s good and if I say, ‘That was really great,’ then you may try it.
With this simple social contract, the robots needed only 15 minutes of practice to become altruistic. They would magnanimously announce their discovery of pucks, despite having no way of knowing that this was good for the herd as a whole. At times when two robots lunged for a puck, they would stop and go through an After you! No, after you! routine, but eventually they figured out the proper way to yield. With social graces, the robot herd brought home the pucks twice as fast as without.
Matari´c thinks she’ll be able to produce more-complex robot societies. I’m looking at getting specialization in the society so they can say, ‘I’ll do this, and you do that.’ If one of them has a low battery, it may become the messenger that doesn’t actually carry things. And I imagine one robot might emerge as a leader because it happens to be the most efficient. But if it stops being efficient, some other robot will take over.