Magnitude constraints on the state, control, and parameter variables, such as those arising from saturation constraints, translate mathematically to simple inequality constraints on individual variables. Such constraints are typically called box constraints. Numerically, these usually are the most tractable type of inequality constraints, making it preferable to put constraints in box form whenever possible. Much worse are inequality constraints on nonlinear functions of the states, controls, and parameters.
It is desirable to find, if possible, a change of coordinates to reformulate a nonlinear inequality constraint as a simple box constraint with a different set of variables. This simple trick turns out to be very important for dealing with a key constraint in our biped motion problem, namely, that the length of the leg on the ground and the hip height are compatible. In Cartesian coordinates, this translates to a nonlinear inequality constraint which, if implemented directly, has numerically unpleasant consequences. Indeed, we were unable to solve biped optimal path planning problems until we realized that by using polar coordinates the hip vs. leg length constraint becomes equivalent to a collection of box constraints.
We give here more details on this and other box constriants. Recall that there exist two position variables describing the x and y position coordinates for the torso and, consequently, the entire biped robot. These position coordinates are represented in the local torso coordinate system. The nonlinear inequality constraints which we mentioned above is that the hip remain at a distance from the origin no greater than the length of an extended leg. This requirement affects leg 1 which supports the body during the swing phase. With the use of the Reduced Dynamics Algorithm, the position and velocity variables for leg 1 are not part of the state used in the optimization process. Their values must be calculated via inverse kinematics and the Collision Algorithm every time the dynamics need to be evaluated. If the hip is too far from the origin, then we will not have sufficient information to determine the state of leg 1 plus the system will have entered a free-flying configuration during phase 1 or a single-support configuration during the double support phase. By converting the x, y coordinates to polar coordinates r and , it is then possible to place a simple magnitude constraint on r which will serve the same function as the nonlinear inequality constraint previously mentioned.
Additional box constraints on the state variables correspond to ensuring a sensible range of motion for the robot such as that the knee may not bend backwards. We place magnitude box constraints as well on the applied torques at the hip, knee, and ankle. We will describe in the experiment section how these constraints become active while moving at higher velocities and how impulsive liftoff force can partially remedy the problem. The bounds we place on the ankle torques are only half of those at the hip and knees.