Feb 6 2015
People typically consider doing the laundry to be a boring chore. But laundry is far from boring for artificial intelligence (AI) researchers like Siddharth Srivastava, a scientist at the United Technologies Research Center, Berkeley.
To AI experts, programming a robot to do the laundry represents a challenging planning problem because current sensing and manipulation technology is not good enough to identify precisely the number of clothing pieces that are in a pile and the number that are picked up with each grasp. People can easily cope with this type of uncertainty and come up with a simple plan. But roboticists for decades have struggled to design an autonomous system able to do what we do so casually--clean our clothes.
In work done at the University of California, Berkeley, and presented at the Association for Advancement of Artificial Intelligence conference in Austin, Srivastava (working with Abhishek Gupta, Pieter Abbeel and Stuart Russell from UC Berkeley and Shlomo Zilberstein from University of Massachusetts, Amherst) demonstrated a robot that is capable of doing laundry without any specific knowledge of what it has to wash.
Earlier work by Abbeel's group had demonstrated solutions for the sorting and folding of clothes. The laundry task serves as an example for a wide-range of daily tasks that we do without thinking but that have, until now, proved difficult for automated tools assisting humans.
"The widely imagined helper robots of the future are expected to 'clear the table,' 'do laundry' or perform day-to-day tasks with ease," Srivastava said. "Currently however, computing the required behavior for such tasks is a challenging problem--particularly when there's uncertainty in resource or object quantities."
Humans, on the other hand, solve such problems with barely a conscious effort. In their work, the researchers showed how to compute correct solutions to problems by using some assumptions about the uncertainty.
"The main issue is how to develop what we call 'generalized plans,'" said Zilberstein, a professor of computer science and director of the Resource Bound Reasoning Lab at UMass Amherst. "These are plans that don't just work in a particular situation that is very well defined and gets you to a particular goal that is also well defined, but rather ones that work on a whole range of situations and you may not even know certain things about it."
The researchers' key insight was to use human behavior--the almost unconscious action of pulling, stuffing, folding and piling--as a template, adapting both the repetitive and thoughtful aspects of human problem-solving to handle uncertainty in their computed solutions.
By doing so, they enabled a PR2 robot to do the laundry without knowing how many and what type of clothes needed to be washed.
Out of the 13 or so tasks involved in the laundry problem, the team's system was able to complete more than half of them autonomously and nearly completed the rest--by far the most effective demonstration of laundering AI to date.
The framework that Srivastava and his team developed combines several popular planning paradigms that have been developed in the past using complex control structures such as loops and branches and optimizes them to run efficiently on modern hardware. It also incorporates an effective approach for computing plans by learning from examples, rather than through rigid instructions or programs.
"What's particularly exciting is that these methods provide a way forward in a problem that's well known to be computationally unsolvable in the worst case," Srivastava said. "We identified a simpler formulation that is solvable and also covers many useful scenarios."
"It is exciting to see how this breakthrough builds upon NSF-funded efforts tackling a variety of basic-research problems including planning, uncertainty, and task repetition," said Héctor Muñoz-Avila, program director at NSF's Robust Intelligence cluster.
Though laundry robots are an impressive, and potentially time-saving, application of AI, the framework that Srivastava and his team developed can be applied to a range of problems. From manufacturing to space exploration to search-and-rescue operations, any situation where artificially intelligent systems must act, despite some degree of uncertainty, can be addressed with their method.
"Using this approach, solutions to high-level planning can be generated automatically," Srivastava said. "There's more work to be done in this direction, but eventually we hope such methods will replace tedious and error-prone task-specific programming for robots."