Quadruped Loco-Manipulation
Hero GIF or MP4 poster
Legged platforms are usually treated as locomotion problems and manipulators as static-base problems. This project treats them as one: a single whole-body policy that plans footholds and end-effector contacts together, so the robot can push a door open with its body while carrying a payload in its arm.
Approach
Training runs in a domain-randomised simulator with contact-rich props, then transfers with a residual policy fitted on roughly two hours of real-robot interaction. The reward decomposes into a locomotion term, a manipulation term, and a stability margin that penalises configurations from which recovery is not possible.
policy = WholeBodyPolicy(
obs_dim = 187,
contacts = ["fl", "fr", "hl", "hr", "ee"],
margin = StabilityMargin(horizon=0.4),
)
Figure 1
Figure 2
Left: simulated contact schedule. Right: the same manoeuvre on hardware.
back to projects