Exploring the breakthrough innovations shaping our world. From AI infrastructure and robotics to biotech, quantum computing, and spatial tech.
Keeping a bipedal robot upright while it walks across uneven ground is not simply a matter of making its legs move in the right sequence. A humanoid has to continuously manage its center of mass, contact forces, joint limits, actuator capabilities, and changing relationships with the ground. A flat laboratory floor provides relatively predictable contact conditions, but stairs, slopes, loose surfaces, and unexpected disturbances can invalidate assumptions that work well during controlled walking. This is why modern legged-robot control systems typically combine several approaches rather than relying on a single stability algorithm.
Three concepts are particularly useful for understanding that control stack: the Zero-Moment Point (ZMP), whole-body control (WBC), and model predictive control (MPC). They operate at different levels of the problem. ZMP provides a way to reason about dynamic balance under suitable contact assumptions, WBC coordinates the robot's many joints and contact forces, and MPC adds a predictive layer that considers how the robot's state may evolve over the next several steps. Together, they illustrate how humanoid locomotion moves from simply following a predefined gait toward continuously adapting to the physical environment.

A bipedal robot has a relatively small support area compared with its overall body, and that support changes whenever one foot lifts, lands, or encounters an unexpected surface. During walking, the robot is constantly shifting its center of mass while generating forces through its feet. A controller therefore has to distinguish between motions that are useful for completing a step and motions that could leave the robot without a recoverable path. This is fundamentally different from controlling a wheeled platform on a stable surface or a fixed-base industrial arm whose mounting structure provides a permanent source of mechanical support.
The difficulty increases when the terrain is not known precisely. A step onto a higher surface changes the expected leg geometry, while a slope changes the orientation of the contact surface and potentially the distribution of ground reaction forces. Loose or compliant terrain can introduce additional uncertainty because the foot may deform the surface rather than behave as though it were resting on a rigid plane. Even a small discrepancy between the expected and actual contact conditions can affect the robot's momentum and body posture. The controller consequently needs both a model of how the robot should move and enough feedback to recognize when reality has diverged from that model.
The Zero-Moment Point, or ZMP, is a long-established framework for reasoning about dynamic balance in legged robots. In simplified terms, it identifies a location on the support surface where the horizontal components of the net moment associated with the robot's motion and ground interaction are balanced. Under appropriate assumptions about rigid contact and the absence of significant slipping, keeping the ZMP within a feasible support region provides an important condition for maintaining dynamic balance. It does not constitute a universal guarantee that a robot cannot fall, particularly when terrain compliance, contact changes, or large disturbances violate the assumptions behind the simplified model.
ZMP became especially useful because it allowed engineers to turn a complicated balance problem into a trajectory-planning problem. A walking pattern generator can specify a desired ZMP trajectory and use a simplified model, such as the linear inverted pendulum, to calculate a corresponding center-of-mass motion. That reference can then be passed to lower-level controllers that coordinate the robot's joints. This approach works particularly well when the floor geometry and foot contacts are predictable. Its limitations become more apparent when the robot encounters irregular terrain or unexpected forces, because a trajectory calculated in advance cannot account for every change in contact conditions. In those situations, the controller needs additional mechanisms for modifying the motion while the robot is already moving.

Whole-body control addresses a different part of the problem by treating the humanoid as one interconnected mechanical system rather than a collection of independent joints. A robot may have dozens of controllable degrees of freedom, but those joints share the same body dynamics. Moving an arm can change the center of mass and angular momentum, while accelerating a leg can alter the forces required at the other foot. A whole-body controller can formulate these relationships as a constrained optimization problem, seeking joint motions, accelerations, or torques that satisfy balance and contact requirements while also accomplishing a task. Depending on the implementation, such optimization may run at a high update rate, with the exact frequency determined by the robot's hardware and control architecture.
The hierarchy of objectives is particularly important when the robot has to perform several things at once. Maintaining physically feasible contact forces may take priority over moving a hand along an exact trajectory, for example, because completing the hand motion is useful only if the robot remains stable enough to finish it. The same controller can coordinate the legs, torso, and arms when the robot reaches for an object, carries a load, or reacts to an external disturbance. Instead of creating a separate controller for every combination of behaviors, engineers can describe tasks and constraints within a common optimization framework. WBC therefore provides a bridge between abstract walking plans and the detailed joint-level behavior needed to execute those plans safely.
ZMP-based methods are powerful when the support surface and contact configuration can be modeled reasonably well, but uneven terrain introduces conditions that can make a simple predefined stability trajectory insufficient. A staircase, for example, does not provide a single horizontal support plane, while a sloped surface changes the geometry of the contact itself. A soft or deformable surface creates another complication because the relationship between foot motion and ground reaction force is no longer as predictable as it would be on rigid flooring. These conditions do not make ZMP irrelevant, but they require the controller to interpret stability within a broader model of contact and body dynamics.
External disturbances create a similar problem. If a humanoid receives a small push while walking, it may be able to modify its ankle or hip motion without changing the planned foot sequence. A larger disturbance may require the robot to change where or when it places the next foot. The controller may also need to redistribute momentum through the torso and arms. This is where whole-body control becomes particularly useful, because the robot's available recovery options are distributed across many joints rather than concentrated in the legs. The important distinction is that ZMP provides a useful stability-related quantity, while WBC provides a mechanism for coordinating the physical actions needed to respond when the original motion is no longer appropriate.
Model predictive control introduces a different idea: instead of optimizing only the robot's immediate response, it repeatedly evaluates what could happen over a limited future horizon. At each update, an MPC formulation can predict the evolution of the robot's state under candidate trajectories and select one that balances objectives such as stability, tracking performance, smooth motion, and actuator limitations. The prediction horizon does not need to be perfectly accurate to be useful. Because the optimization is repeated as new sensor information arrives, the controller can discard an outdated prediction and calculate a revised one before the robot reaches the next critical part of the motion.
This predictive capability is particularly valuable when foot placement and timing can be adjusted. Suppose a robot estimates that the next landing surface is higher than expected. Rather than waiting until the foot has already reached the obstacle, a predictive controller can modify the planned center-of-mass trajectory, step location, or timing if those variables are included in the optimization problem. The precise capabilities depend on the model and control formulation, but the principle is consistent: future consequences are considered before they become immediate problems. MPC therefore complements rather than replaces reactive control. It can provide a deliberate reference trajectory, while a faster lower-level controller handles the smaller errors and disturbances that inevitably appear during execution.

These approaches are best understood as complementary tools rather than competing alternatives. ZMP provides a useful way to describe dynamic balance under a particular set of contact assumptions. MPC can use a model of the robot and environment to plan how the center of mass, footsteps, or other variables should evolve over a future horizon. Whole-body control then translates those higher-level objectives into coordinated behavior while enforcing instantaneous constraints involving contact forces, joint limits, and actuator capabilities. The exact architecture varies between robots, but separating these responsibilities helps explain why several control layers are commonly needed for complex locomotion.
A simplified example makes the relationship easier to see. Imagine a humanoid approaching a staircase. A predictive layer can reason about the height and location of upcoming footholds and generate a sequence of reference footsteps and body trajectories. The whole-body controller can then coordinate the legs, torso, and arms while keeping contact forces within feasible limits as each step is executed. A ZMP-based criterion or another stability representation can provide information about whether the current motion remains dynamically feasible. If the actual landing differs from the prediction, sensor feedback allows the lower-level controller to compensate, while the predictive layer can update its plan for the following steps. The system is therefore not simply following one perfect trajectory; it is repeatedly planning, executing, measuring, and correcting.
The mathematics of these controllers is only as useful as the physical model and measurements supporting it. Real robots contain actuator compliance, transmission friction, structural flexibility, sensor noise, communication delays, and temperature-dependent behavior. Terrain introduces another layer of uncertainty because friction and surface deformation may not be known in advance. A model used by MPC can capture the dominant dynamics without representing every physical detail, but the difference between the model and the real machine still affects prediction accuracy. Whole-body control can compensate for some errors through feedback, yet large model mismatch may leave the controller with less margin for recovery.
Computational resources also impose practical limits. Optimization problems involving many joints, contact constraints, actuator limits, and future trajectories can become expensive to solve at high rates. Engineers therefore make deliberate compromises between model complexity, prediction horizon, numerical accuracy, and response time. A simplified centroidal model may be sufficient for one planning task, while a more detailed representation may be needed for another. Learning-based methods can also help estimate difficult dynamics or improve control policies, but they do not eliminate the need for physical constraints and reliable feedback. The most capable systems are therefore usually built around a combination of modeling, optimization, sensing, and adaptation rather than a single algorithm expected to solve every condition.
The hardest part of humanoid locomotion is not simply keeping the robot upright on a perfectly modeled surface. It is maintaining useful behavior when several uncertainties appear at the same time. A foot may land slightly earlier than expected, the available friction may be lower than the model assumes, or an external object may disturb the robot while it is transferring weight between its feet. Each event changes the conditions under which the next movement must be planned. Robust locomotion therefore depends on the robot's ability to detect these changes quickly and retain enough physical and computational margin to respond.
This is also why progress in humanoid locomotion cannot be measured by one successful walking demonstration. A robot that follows a carefully prepared trajectory across a known floor has solved a different problem from one that can repeatedly adapt to changing terrain, disturbances, and contact conditions. ZMP remains valuable for reasoning about dynamic balance, WBC provides the coordination required to manage a highly coupled body, and MPC gives the system a way to consider future consequences before they become immediate failures. None of these methods guarantees reliable locomotion by itself. Their importance lies in how they can be combined into a layered control system that continuously plans, executes, observes, and adjusts.
The broader lesson is that dynamic balance is less about finding a single perfect walking algorithm and more about managing uncertainty across multiple time scales. A predictive controller can prepare for what is likely to happen, whole-body control can coordinate the robot's immediate physical response, and stability measures can provide useful constraints for determining whether the current state remains viable. As humanoids move beyond structured laboratory floors, this layered approach becomes increasingly important because the environment supplies information and disturbances that cannot be fully predicted in advance. Reliable locomotion will therefore depend not only on better algorithms, but also on better sensing, actuators, mechanical design, and the ability to integrate all of them into one responsive system.