Unified Foothold Selection and Motion Planning for Legged Systems in Real-Time over Rough Terrain
2020-07-29T21:18:54Z (GMT) by
The greatest potential for humanoid robots is that they will someday be able to robustly traverse and perform meaningful work in a world designed by and for human beings. Thus, humanoids, and legged platforms more generally, offer the practical potential to bring elements of automation off the factory floor and aspects of artificial intelligence into the physical world. However, in practice, legged systems remain quite brittle when operating in unstructured terrains. The primary issue continues to be that it is difficult to carefully deliberate about how to make progress towards a goal while maintaining balance over the time scales necessary to remain dynamically stable. Therefore, this work presents a novel framework for planning and controlling in closed-loop the behavior
of legged robots moving fluidly through unstructured terrains. Speci?fically, the framework we put forth uni?es the commonly disparate components of footstep planning, motion planning, and feedback control that we show can be used to robustly plan the motions of humanoid robots moving through a variety of complex terrains. Planning and controlling the motion of humanoid robots is complicated by the fact that they make and break contact with the environment. These discrete interruptions to the continuous dynamics mean that legged systems have hybrid dynamics. This presents an issue because conventional techniques for robotic motion planning and control are designed
to work for systems with continuous dynamics. Therefore, in this work we establish a way to explicitly handle hybrid transitions within a trajectory optimization framework
that has conventionally only been applied to continuous systems. More speci?fically, we solve a nonlinear trajectory optimization problem, wherein we assume a quadratic cost
with nonlinear constraints imposed by the system's dynamics. To solve this problem, we approximate the nonlinear constraints by computing the linearization of the system's hybrid dynamics. We show how to use tools from nonlinear analysis and control to compute analytically these approximations, despite the discontinuous nature of the trajectories about which the linearizations are computed. We follow a method very much inspired by existing approaches based on the sequential linear quadratic regulator to optimize over several hybrid steps at once. This allows us to reformulate planning footsteps and dynamically-feasible trajectories as well as deriving closed-loop controllers as a single trajectory optimization problem. Posing our humanoid planning and control problem as a trajectory optimization formulation implicitly implies that we are solving for a locally optimal solution to the problem. Therefore, to ensure good resultant behavior and quick run time (reduce iterations
to convergence), there must be a good way to introduce an initial stable nominal trajectory, or rather a seed, to the optimization. To this end, we create an intuitive means
for generating such seeds that uses implicitly the "natural dynamics" of a given system. Our energy management technique ensures step-generation over newly-perceived terrain is dynamically feasible. The method additionally assures the system energy necessary to for future stepping.
Lastly, this work brings together both the uni?ed planning and control approach and the energy-based seed generating algorithm to defi?ne the main contribution of this work: a uni?ed planning architecture that is able to adapt to new complex, unstructured terrain online. As a legged system advances over new terrain, the energy method quickly
determines footholds for newly-perceived terrain, seeding the uni?ed planner for once-per-step online optimization. By introducing this energy management technique as the
seed to our uni?ed approach, we create a framework that allows a robot to safely adapt to rough terrain in real-time while respecting the natural dynamics of the system.
We present several walking models, each scaling up in complexity to demonstrate how this architecture can be applied to a family of different systems. In addition to analytical results and simulated demonstrations, we developed a hardware platform on which we validated our results.