Teaching robots new tricks without programming
Don't believe what the sci-fi movies tell you. When it comes to understanding our world, robots are stupid. Like computers, robots only do what we program them to do. And that's a big problem if we're ever going to realize the dream of practical robot helpers for the masses. Wouldn't it be great if anyone could teach a robot to perform a task, like they would a child? Well, that's precisely what Maya Cakmak has been working on at Willow Garage.
Cakmak, a researcher from Georgia Tech, spent the summer creating a user-friendly system that teaches the PR2 robot simple tasks. The kicker is that it doesn't require any traditional programming skills whatsoever – it works by physically guiding the robot's arms while giving it verbal commands.
After inviting regular people to give it a try, she found that with few instructions they were able to teach the PR2 how to retrieve medicine from a cabinet and fold a t-shirt. Such tasks may be easy for us, but for a robot they are very difficult. That's why most scientists don't take the threat of a robopocalypse very seriously just yet – they know how difficult it is to get a robot to do anything even remotely useful.
Test subjects were provided instructions on how to teach the robot similar to what you'd expect when buying a sophisticated appliance
Teaching by demonstration isn't going to replace traditional programming, because robots will still require some degree of common sense to function properly in our uncertain world.
For example, Rethink Robotics' new industrial robot, Baxter, uses a combination of the two. This allows anyone to quickly and easily program the robot to perform manipulation tasks on a production line, like picking up an object over here and moving it over there. This is made possible in part because Baxter uses its own artificial intelligence too, like image processing software, to pinpoint the exact positions of widgets placed randomly in front of it.
The potential for Cakmak's system would multiply as data is shared across a network of robots. In theory, you could eventually have software routines capable of folding any type of clothing, or loading any type of cookware into a dishwasher. However, some local instruction would still be required as each household is unique and no amount of advance programming can account for all the little differences in layout (the precise location of a sock drawer, for example).
But while we wait for robots to gain the artificial intelligence to carry out various household chores by themselves with nothing more than a verbal command, Cakmak's approach could help robots become truly flexible household helpers.
Check out version 1.0 of Cakmak's system in the video below.
Source: Willow Garage