3D printed robots adapt themselves to their surroundings