Efficient self-supervised learning enables robots to grasp objects in cluttered environments using a combination of pushing and grasping.