Push Recovery
推恢复CommonA robot's ability to adjust its posture or take a step after being pushed or bumped, regaining balance without falling.
Push recovery refers to a legged robot — especially bipeds and humanoids — regaining balance after being pushed or bumped by an external force. The classic approach grades the response by disturbance size: a small push is handled by ankle torque shifting the center of pressure (the ‘ankle strategy’), a somewhat larger one by bending the hip and swinging the upper body to generate angular momentum (the ‘hip strategy’), and a large one forces a step (the ‘stepping strategy’). In 2006, Pratt et al. introduced the capture point: the point on the ground where, if the robot steps exactly there, it can come to a complete stop, giving a principled target for where to step. Today's reinforcement-learning locomotion controllers instead learn this skill by randomly shoving the robot in simulation, letting the policy learn to resist pushes on its own — a form of domain randomization. This differs from fall recovery, which is about getting back up after already having fallen.
ExampleThe open-source framework legged_gym by default randomizes the robot torso's horizontal velocity up to 1 m/s every 15 seconds during training, simulating a sudden shove, so the policy learns to take a stabilizing step after being pushed.
- Also called
- Disturbance Recovery
- Related
- Capture Point · Ankle, Hip and Stepping Strategies · Balance Control · Zero Moment Point · Domain Randomization · Fall Recovery
- Sources
- Pratt et al.: Capture Point: A Step toward Humanoid Push Recovery (Humanoids 2006)
Stéphane Caron: Capture point
legged_gym: legged_robot_config.py(push_robots / push_interval_s / max_push_vel_xy)