Related Experiment Video
Updated: Jan 13, 2026

Asymmetric Walkway: A Novel Behavioral Assay for Studying Asymmetric Locomotion
Published on: January 15, 2016
Walking Pattern Generation Through Step-by-Step Quadratic Programming for Biped Robots
Guoshuai Liu1, Zhiguo Lu1, Hang Zhang1
1School of Mechanical Engineering and Automation, Northeastern University, Shenyang 110819, China.
Abstract:
The control of a biped robot is a challenging task due to the hard-to-stabilize dynamics. Generating a suitable walking reference trajectory is a key aspect of this problem. This article proposes a novel method of generating walking patterns for biped robots. The method integrates the double support phase and the single support phase into one step, and uses this step as the unit for trajectory generation through quadratic optimization with terminal constraints based on the Linear Inverted Pendulum Model, enabling us to shorten the optimization horizon while still generating natural walking trajectories. Moreover, by restricting the position and acceleration of the center of mass (COM) in the vertical direction, an excessive constraint is formed on the Zero Moment Point (ZMP) to offset the nonlinear effects of the COM's vertical motion on the ZMP. This allows the COM of the robot to change in the vertical direction while maintaining the linearity of the optimization problem. Finally, the performance of the proposed method is validated by simulations and experiments of walking on flat ground and stairs using a position-controlled biped robot, Neubot.
Related Concept Videos
Kinematic Equations: Problem Solving
Two-Dimensional Force System: Problem Solving
The first step to solving a two-dimensional force system problem is to draw a free-body diagram of the object under consideration. This diagram helps identify all the external forces acting on the object, including their...
Quadratic Models
Three-Dimensional Force System:Problem Solving
To solve a three-dimensional force system, first resolve each force into its respective scalar components. Do this using...
Rolling Resistance: Problem Solving

