Towards Practical Multi-Object Manipulation using Relational Reinforcement Learning
About
Learning robotic manipulation tasks using reinforcement learning with sparse rewards is currently impractical due to the outrageous data requirements. Many practical tasks require manipulation of multiple objects, and the complexity of such tasks increases with the number of objects. Learning from a curriculum of increasingly complex tasks appears to be a natural solution, but unfortunately, does not work for many scenarios. We hypothesize that the inability of the state-of-the-art algorithms to effectively utilize a task curriculum stems from the absence of inductive biases for transferring knowledge from simpler to complex tasks. We show that graph-based relational architectures overcome this limitation and enable learning of complex tasks when provided with a simple curriculum of tasks with increasing numbers of objects. We demonstrate the utility of our framework on a simulated block stacking task. Starting from scratch, our agent learns to stack six blocks into a tower. Despite using step-wise sparse rewards, our method is orders of magnitude more data-efficient and outperforms the existing state-of-the-art method that utilizes human demonstrations. Furthermore, the learned policy exhibits zero-shot generalization, successfully stacking blocks into taller towers and previously unseen configurations such as pyramids, without any further training.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Push and Switch | OpenAI Fetch - Push and Switch 3-Push + 3-Switch (S+O) (test) | Success Rate67.2 | 18 | |
| Push | OpenAI Fetch Push 2-Push (L) (test) | Success Rate95.3 | 9 | |
| 2-Switch | Push & Switch | Success Rate94.5 | 9 | |
| 3-Push | Push & Switch | Success Rate92.9 | 9 | |
| 3-Switch | Push & Switch | Success Rate74.8 | 9 | |
| Switch | OpenAI Fetch 3-Switch (L+O) (test) | Success Rate74.4 | 9 | |
| Push | OpenAI Fetch Push 3-Push (L+O) (test) | Success Rate85.2 | 9 | |
| Push and Switch | OpenAI Fetch - Push and Switch 2-Push + 2-Switch (S) (test) | Success Rate59.4 | 9 | |
| Push and Switch | OpenAI Fetch - Push and Switch 2-Push + 2-Switch (L+S) (test) | Success Rate47.6 | 9 | |
| Switch | OpenAI Fetch Switch 2-Switch (L) (test) | Success Rate87.3 | 9 |