# Whole-body control

> Source: https://aiwiki.ai/wiki/whole_body_control
> Updated: 2026-06-28
> Categories: Humanoid Robots, Robotics, Training & Optimization
> From AI Wiki (https://aiwiki.ai), a free encyclopedia of artificial intelligence. Quote with attribution.

**Whole-body control** (WBC) is a class of [robotics](/wiki/robotics) control techniques that coordinates all of a robot's degrees of freedom at once to achieve multiple prioritized tasks, such as balancing, reaching, and locomotion, while respecting the robot's full-body dynamics and physical constraints (joint limits, actuator bounds, and contact forces) [1][2][6]. It is most associated with highly redundant systems, especially [humanoid robots](/wiki/humanoid_robot) and legged platforms, where a WBC formulates control as a constrained optimization problem, typically a quadratic program (QP) solved at every control step, that produces consistent joint torques or accelerations obeying the equations of motion, contact constraints, and a designer-specified hierarchy of tasks [6][9][22].

Whole-body control builds on Oussama Khatib's operational space formulation, published in 1987, which derived end-effector dynamics in task space and used the redundant null space for a secondary posture objective [1]. It was extended by Luis Sentis and Khatib's 2005 paper on hierarchical control of behavioral primitives, widely credited as the work that introduced the term *whole-body control* in its modern sense [2]. Since then it has become the dominant low-level control paradigm in academic and commercial humanoid robotics, used on platforms such as the Boston Dynamics [Atlas](/wiki/atlas_robot), the DLR TORO, the AIST HRP series, the IHMC entry to the DARPA Robotics Challenge, the PAL Robotics TALOS, the Agility Robotics Cassie and Digit, and recent commercial humanoids, increasingly combined with learning-based and [reinforcement learning](/wiki/reinforcement_learning) controllers [9][12][20][21].

## What is whole-body control?

A modern humanoid has roughly 30 to 60 actuated joints, makes and breaks several contacts with the environment per second, and must satisfy strict physical limits while pursuing multiple competing goals. A naive controller that only commands one task at a time, for example a Cartesian end-effector trajectory, would either ignore balance, or produce joint commands that violate friction cones, torque limits, or self-collision constraints. Whole-body control was developed to solve this systems problem in one consistent computation, treating the entire body as a single coupled system rather than a set of independent limbs [2][6].

WBC matters because:

- Humanoid and legged robots are inherently underactuated. The floating base, six unactuated degrees of freedom that describe the position and orientation of the pelvis or torso in the world, cannot be commanded directly. Any motion of the base is a side effect of joint torques and contact forces, and the controller must reason about both at once.
- Multiple tasks must run simultaneously, such as walking while reaching, balancing while pushing a door, or stepping while turning the head to look at an object. Each task is a function of the same set of joints.
- Contact-rich behaviour requires explicit reasoning about contact forces. The robot only stays upright because the ground pushes back, and the controller must keep contact forces inside friction cones to avoid slipping.
- The framework scales gracefully to high-DoF platforms because the optimisation is sparse and well structured. Modern QP solvers can handle 30 to 60 joints in well under one millisecond [9].

WBC sits between higher-level planners ([model predictive control](/wiki/model_predictive_control), footstep planners, behaviour models, vision-language-action policies) and the low-level joint controllers. The planner picks contact schedules, footholds, and task references; the WBC turns those into instantaneous joint torques that respect physics.

## What are the foundational concepts?

### Operational space control

Khatib's 1987 paper introduced the *operational space formulation*, a way to derive the dynamics of a manipulator projected into the task space (Cartesian coordinates of the end effector) instead of the joint space [1]. As the paper's abstract states, "A framework for the analysis and control of manipulator systems with respect to the dynamic behavior of their end-effectors is developed" [1]. Writing the equations of motion at the task level allows a designer to specify behaviour directly in the space the user cares about, while a posture controller acts in the null space of the task without disturbing it. This decoupling is the conceptual ancestor of every later WBC method.

### Task hierarchy and null-space projection

Real robots cannot satisfy every objective at once, so tasks must be ranked. A typical humanoid hierarchy puts dynamic feasibility (equations of motion, contact constraints) at the top, then balance (centre of mass and angular momentum tracking), then end-effector tracking, then a low-priority posture cost that regularises the joint configuration. Lower-priority tasks are projected into the null space of higher-priority ones, so they only use the freedom that remains after the higher tasks are satisfied. Sentis and Khatib's 2005 paper formalised this hierarchy for humanoids and showed how to compose behavioural primitives such as centre-of-mass control, hand control, and posture control into coherent whole-body behaviours [2].

### Floating-base dynamics

For a humanoid the configuration vector q is the joint vector augmented with a free-floating base, usually represented as a position in R^3 and an orientation in SO(3). The base has no actuator, so the actuation selection matrix S in the equations of motion has a six-row block of zeros corresponding to the base. This underactuation is what makes the contact forces lambda load-bearing in a literal sense: only the contact wrenches can move the centre of mass, so the controller must allocate them carefully.

### Contact constraints

Feet, hands, and any other contact point are subject to:

- **Unilateral contact**: the ground can push but not pull, so normal force must be non-negative.
- **Friction cones**: tangential force is bounded by mu times normal force, otherwise the foot slips. Real WBCs either use the exact second-order cone or a polyhedral linearisation with four to eight edges.
- **Centre-of-pressure constraints**: for a flat foot, the centre of pressure must lie inside the support polygon, otherwise the foot tips.
- **No-slip kinematic constraint**: a foot in contact must not move, which fixes the contact-point velocity and acceleration to zero.

## How does whole-body control work?

### Equations of motion

The dynamics of a floating-base robot in contact are

```
M(q) v̇ + h(q, v) = S^T τ + J_c(q)^T λ
```

where M(q) is the joint-space mass matrix, h(q, v) collects Coriolis, centrifugal, and gravity terms, S is the actuation selection matrix that picks out the actuated joints, τ is the vector of joint torques, J_c(q) is the contact Jacobian stacking the Jacobians of every contact point, and λ is the vector of contact forces (or wrenches for surface contacts). The contact forces must lie in their friction cones, and on contact points that do not move, J_c v̇ + J̇_c v = 0.

### QP-based whole-body control

Most modern WBCs solve, at every control tick, a quadratic program of the form

```
minimise        ||A x − b||²
subject to      M v̇ + h = S^T τ + J_c^T λ
                J_c v̇ + J̇_c v = 0
                λ ∈ friction cone
                τ_min ≤ τ ≤ τ_max
                v̇_min ≤ v̇ ≤ v̇_max
```

where the decision variable x = [v̇; τ; λ] stacks joint accelerations, joint torques, and contact forces. The cost ||A x − b||² aggregates the desired tasks, for example tracking a centre-of-mass trajectory, tracking an end-effector trajectory, regularising the posture, and minimising joint torques. Different rows of A correspond to different tasks, often weighted by hand-tuned factors. In the words of one whole-body control benchmarking effort, "this has enabled humanoid robots to realize constrained real-time control for a variety of tasks" [22].

The QP is sparse, convex, and well posed for typical humanoids. Specialised active-set solvers exploit the structure to run at 1 kHz on a 34 to 60 DoF robot, as demonstrated by IHMC's controller for Atlas in the DARPA Robotics Challenge and by the optimization-based full-body controller of Feng et al. (2015) [9]. Whole-body controllers typically run at high update rates, commonly 500 Hz to 1 kHz, so that the robot does not violate physics within a single control interval [9][12].

### Hierarchical QP

Weighting tasks against each other is convenient but fragile because a tiny weight on a soft constraint can still influence a critical hard task. Hierarchical quadratic programming (HQP) replaces the single weighted sum by a cascade of QPs: solve the highest-priority QP, fix its slack, solve the next one in the null space of the first, and so on. The HQP solvers of Saab et al. (2013) and Escande, Mansard and Wieber (2014) introduced fast active-set methods that handle equality and inequality constraints at any priority level and run in real time on humanoids such as HRP-2 [6][8].

### Centroidal momentum

David Orin and Ambarish Goswami's 2008 paper on the centroidal momentum matrix gave WBC researchers a clean way to write linear and angular momentum at the centre of mass as a linear function of joint velocities [4]. Most modern WBCs include centroidal momentum tracking as a top-priority task, because regulating angular momentum around the centre of mass is what keeps a humanoid upright when it is pushed or when it swings its arms.

## What are the major formulations?

| Formulation | Year | Key idea | Representative author |
|---|---|---|---|
| Operational Space Formulation (OSF) | 1987 | Project dynamics into Cartesian task space; control end effector with decoupled task and posture loops | Khatib |
| Hierarchical Operational Space Control | 2005 | Compose behavioural primitives with null-space projections to form whole-body behaviours | Sentis and Khatib |
| Cartesian Impedance Control | 2007 | Passivity-based shaping of stiffness and damping at the end effector for torque-controlled flexible-joint robots | Albu-Schaffer, Ott, Hirzinger |
| Centroidal Momentum Control | 2008 onward | Use the centroidal momentum matrix to regulate linear and angular momentum at the CoM | Orin, Goswami |
| QP-based whole-body control | 2010 | Cast control as a single quadratic program over accelerations, torques, and contact forces | Stephens and Atkeson |
| Hierarchical QP (HQP) | 2013 to 2014 | Cascade of QPs respecting task priority with both equality and inequality constraints | Saab, Escande, Mansard, Wieber |
| Inverse Dynamics with Constraints (IDC) | 2010s | Solve constrained inverse dynamics directly for torques given desired accelerations | Righetti, Schaal, others |
| Passivity-based whole-body balancing | 2016 | Passive, compliant CoM and end-effector regulation in multi-contact, applied on DLR TORO | Henze, Roa, Ott |
| Convex whole-body control | 2018 onward | Reformulations and relaxations that yield convex problems amenable to fast off-the-shelf solvers | Carpentier, Mastalli and others |
| Differential Dynamic Programming (DDP) variants | 2010s onward | Trajectory-optimisation style WBC that exploits problem structure (FDDP, multiple shooting) | Tassa, Mastalli (Crocoddyl) |

## What software libraries implement whole-body control?

| Library | Origin | Role |
|---|---|---|
| [Stack of Tasks](https://stack-of-tasks.github.io/) | LAAS-CNRS | C++ framework for hierarchical task-space control with a scripting front end |
| [Pinocchio](https://github.com/stack-of-tasks/pinocchio) | INRIA Willow, LAAS Gepetto | Rigid-body dynamics and analytical derivatives, the de facto computational core of modern WBC pipelines |
| [TSID](https://github.com/stack-of-tasks/tsid) | Andrea Del Prete and collaborators | Task-space inverse dynamics built on Pinocchio, hierarchical least squares solver, examples for manipulators, humanoids and quadrupeds |
| [Crocoddyl](https://github.com/loco-3d/crocoddyl) | LAAS-CNRS, INRIA, Heriot-Watt | Multi-contact optimal control library based on differential dynamic programming, used for highly dynamic legged behaviours |
| [Drake](https://drake.mit.edu/) | MIT and Toyota Research Institute | Model-based design and verification toolbox with QP-WBC, MPC, and high-fidelity contact simulation |
| [OCS2](https://leggedrobotics.github.io/ocs2/) | ETH Zurich Robotic Systems Lab | Real-time MPC for switched systems, used on ANYmal C and ANYmal C with arm |
| HOQP | LAAS-CNRS and others | Hierarchical QP solver implementations used inside SoT and TSID-style stacks |
| WB-MPC | Patrick Wensing and collaborators | Whole-body MPC formulations for legged robots |
| Eiquadprog and qpOASES | various | General-purpose QP solvers used as the inner kernel of many WBCs |
| PyBullet, MuJoCo, Isaac Sim | various | Simulators used to test WBCs and to train RL policies that interact with WBC layers |
| [NVIDIA Isaac Lab](/wiki/isaac_lab) | NVIDIA | GPU-accelerated RL training environment, often used for learning policies that sit above or alongside a WBC |

## Where is whole-body control used?

- **Boston Dynamics Atlas (hydraulic and electric)**. The 2016 hydraulic Atlas used by the MIT DRC team ran a QP-based WBC at roughly 1 kHz, described in Kuindersma et al. (2016) [12]. The IHMC variant, also on Atlas, used a momentum-based WBC and finished second at the DARPA Robotics Challenge Finals. The current electric Atlas (revealed in April 2024) blends learned behaviour models with model-based control; Boston Dynamics has publicly described its stack as combining reinforcement learning, model predictive control, and large behaviour models, with reinforcement-learning locomotion controllers developed and validated in NVIDIA Isaac Lab on top of a low-level layer that has the structure of a classical WBC [21][23].
- **Honda ASIMO** (1990s to 2010s). Used a more model-based zero-moment-point approach that predates modern QP-based WBC, but it is part of the same lineage of integrated balance and motion control.
- **AIST and Kawada HRP series, including HRP-2, HRP-4 and HRP-5P**. Used as the reference platform for many HQP and TSID demonstrations from LAAS-CNRS and AIST [6][8]. JAXON, the JSK lab's musculoskeletal humanoid, also uses hierarchical inverse dynamics.
- **DLR Justin, Rollin' Justin, and TORO**. TORO is a torque-controlled humanoid built around the DLR LWR-III joints; it is the canonical platform for the passivity-based WBC of Henze, Roa and Ott [11].
- **PAL Robotics TALOS**. A torque-controlled, full-size humanoid used in the European whole-body control benchmarking work and in Crocoddyl demonstrations [14].
- **Agility Robotics Cassie and Digit**. Cassie ran a 100 m sprint in 24.73 s on May 11, 2022, setting a Guinness record [16]. The controller used a learned policy, but the underlying architecture in much of Agility's research stack borrows from operational-space and centroidal-momentum WBC ideas, and several Cassie research papers combine an OSC layer with a learned policy.
- **ETH Zurich and ANYbotics ANYmal**. Uses OCS2-based MPC together with WBC-style tracking, as well as Rapid Motor Adaptation and other RL policies depending on the task [17]. Loco-manipulation work with ANYmal C carrying objects and using a 4 DoF arm is a flagship OCS2 application.
- **Boston Dynamics Spot**. Boston Dynamics has not published the full controller, but the publicly available descriptions are consistent with QP-based WBC running at high rate underneath a MPC layer.
- **Tesla Optimus, Figure 02, 1X NEO, Apptronik Apollo**. Commercial humanoids whose published architectures combine learned high-level policies with classical low-level whole-body control. Figure's Helix 02, announced in 2025, explicitly describes a System 0 layer running at kilohertz rates on top of the actuators and a System 1 visuomotor policy at 200 Hz, with a slower System 2 doing language and reasoning [20]. The kilohertz layer has the structure of a whole-body controller.
- **Beijing Humanoid Robot Innovation Center** ([BHRIC](/wiki/beijing_humanoid_robot_innovation_center)) and the Tien Kung series of humanoids use whole-body control as part of their open-source software stack.

## What tasks does whole-body control manage?

| Task | What it specifies |
|---|---|
| Centre-of-mass tracking | Position, velocity, and acceleration of the CoM, the primary balance objective |
| Linear momentum | Total mass times CoM velocity, regulated for push recovery and walking |
| Angular momentum about the CoM | Whole-body angular momentum, key to keeping torso upright when the arms swing |
| End-effector position and orientation | 6 DoF pose for hands or any other body that interacts with the environment |
| Foot trajectory tracking | 6 DoF pose for swing feet during stepping |
| Joint position limits | Hard inequality constraints to avoid mechanical end stops |
| Joint velocity limits | Hard inequality constraints to respect actuator and gearbox bounds |
| Joint torque limits | Hard inequality constraints to respect actuator saturation |
| Friction cone constraints | Tangential force at each contact bounded by mu times normal force |
| Contact wrench feasibility | Centre of pressure inside the support polygon, normal force non-negative |
| Self-collision avoidance | Distance constraints between body parts, often as inequalities or barrier costs |
| Posture cost | Low-priority regularisation toward a nominal joint configuration |
| Torque minimisation | Quadratic cost on τ to choose among the infinitely many feasible solutions |

## How does whole-body control compare with reinforcement learning?

The rise of large-scale [imitation learning](/wiki/imitation_learning) and reinforcement learning has pushed WBC from being the only credible approach to humanoid control to being one component in a hybrid stack.

| Property | Model-based WBC | Reinforcement learning |
|---|---|---|
| Model required | Accurate rigid-body dynamics, contact models, friction estimates | Simulator (sometimes inaccurate) plus reward function |
| Data required | Almost none beyond identification | Often hundreds of millions of simulated steps |
| Real-time guarantees | Strong (sparse QP at known frequency) | Weak; depends on network size and inference budget |
| Handling of unmodelled effects | Poor unless explicitly modelled | Strong if seen during training |
| Constraint satisfaction | Hard constraints enforced by the QP | Soft, expressed as reward shaping |
| Composability | Add or remove tasks on the fly | Retraining usually required |
| Maturity | 30 plus years of theory, on hardware since the 2000s | Rapid progress since around 2018 |
| Typical failure mode | Falls when the model is wrong | Falls when the deployment differs from training |

In practice modern humanoids combine the two. Common patterns:

- **RL high level, WBC low level**. A learned policy outputs reference trajectories, foot placements, or torque biases; a WBC enforces dynamics and constraints. This is roughly the Atlas architecture as described by Boston Dynamics and TRI in their 2025 large-behavior-model work [21][23].
- **WBC nominal, residual learned policy**. A WBC produces a nominal torque, and a small learned network adds a residual to handle unmodelled effects.
- **End-to-end RL with safety filter**. A learned controller runs at high frequency, and a WBC-style safety filter projects unsafe actions onto the feasible set.
- **Hierarchical VLA stacks**. Figure's Helix 02, Google's RT-2 family, and NVIDIA GR00T-style systems put a slow vision-language-action model at the top, a faster visuomotor policy in the middle, and a kilohertz whole-body control layer at the bottom [20].

## What are notable real-world demonstrations?

WBC has powered some of the most visible humanoid demonstrations of the last decade. The Atlas parkour, dance, and gymnastics videos from Boston Dynamics rely on a model-based whole-body controller underneath an offline trajectory optimiser. The DARPA Robotics Challenge Finals in 2015, where humanoid robots had to drive vehicles, open doors, and turn valves under semi-autonomous control, was a coming-out party for QP-based WBC; both MIT and IHMC entered Atlas robots running QP whole-body controllers, with IHMC placing second using a momentum-based WBC [9][12]. ANYmal has performed loco-manipulation tasks such as opening doors and carrying objects with an OCS2 MPC stack on top of a tracking controller [17]. LAAS-CNRS, IIT, and other groups have demonstrated multi-contact climbing where the robot uses arms and legs simultaneously, a regime where contact scheduling and friction-cone reasoning are essential and where WBC is the natural framework. Cassie's 100 m world record on May 11, 2022 demonstrated that fully learned policies can reach the dynamic regimes that WBC theory was designed for, while also showing that the two paradigms are converging rather than competing [16].

## How does whole-body control combine with model predictive control?

A modern legged or humanoid stack typically has at least three layers running at different frequencies:

- A footstep planner or behaviour layer at 1 to 10 Hz, choosing where to place feet, when to swing arms, and which contacts to make next.
- An [MPC](/wiki/model_predictive_control) layer at 50 to 200 Hz, optimising a short-horizon trajectory of CoM motion, contact forces, and sometimes whole-body joint motion. OCS2, Crocoddyl, and Drake all support this layer.
- A WBC layer at 500 Hz to 1 kHz, enforcing instantaneous dynamics and contact feasibility and producing the joint torques that go to the motor drives.

This division of labour is now standard. The MPC chooses what the robot will do over the next half second; the WBC makes sure the robot does not violate physics in the next millisecond. Where a learned policy is added it usually replaces or augments the planning or MPC layer, while the WBC layer remains. WBC is closely related to [motion planning](/wiki/motion_planning): a planner decides the sequence of contacts and reference motions over a horizon, and the WBC realises those references instant by instant while honouring the constraints the planner abstracted away.

## What are the limitations of whole-body control?

WBC is powerful but has well-known weaknesses. Solving a QP with hundreds of variables at a kilohertz is computationally demanding, especially on embedded compute, and the solver must be both fast and reliable; warm starts, sparsity exploitation, and active-set methods are essential. The controller depends on an accurate dynamic model: mass, inertia, joint friction, motor torque constants, and contact friction all enter the equations of motion, and small modelling errors compound. Friction cones in particular are conservative; a polyhedral approximation can either be overly cautious (too few edges) or expensive to solve (too many edges). Hand-designed task hierarchies are brittle, since adding a new behaviour often requires retuning weights and priorities. Finally, WBC handles small disturbances well but struggles with large unmodelled events such as a missed footfall on rough terrain or a contact that breaks at the wrong moment, which is one reason RL-based recovery policies are increasingly common.

## What are the recent developments?

Research around 2024 to 2026 has focused on integrating WBC more tightly with learning. Differentiable whole-body controllers expose gradients of the optimal solution with respect to costs and constraints, which enables end-to-end learning of task weights and reference trajectories. Convex relaxations of the contact problem, including second-order-cone formulations of friction and convex MPC variants, have made larger problems tractable in real time. Learned contact models replace the rigid friction cone with a network that captures slip, deformation, and surface variation. On the deployment side, commercial humanoid programs at Boston Dynamics, Figure, 1X, Apptronik and Tesla are converging on architectures that combine a vision-language reasoner, a learned whole-body policy, and a kilohertz model-based WBC layer, which has restored interest in formal stability analysis, safety filters, and constraint-respecting RL on top of WBC [20][21][23].

## ELI5: whole-body control in plain terms

Imagine you are standing on one foot, holding a full cup of coffee, while someone bumps your shoulder. Without thinking, you bend your knee, swing your free arm, and shift your hips, all at the same time, so you do not spill the coffee and do not fall. Whole-body control is the math that lets a robot do that on purpose. Instead of moving each joint separately, the robot solves one big puzzle every few milliseconds: "given everything I want to do (stay balanced, reach the cup, do not over-torque a motor, do not let my feet slip), what is the single best set of joint commands right now?" It keeps the most important goals (do not fall) ahead of the less important ones (keep a nice posture), and it never breaks the rules of physics, like pushing harder than the floor can push back.

## See also

- [Atlas (robot)](/wiki/atlas_robot)
- [Bipedal locomotion](/wiki/bipedal_locomotion)
- [Control theory](/wiki/control_theory)
- [Humanoid robot](/wiki/humanoid_robot)
- [Humanoid robot manufacturers](/wiki/humanoid_robot_manufacturers)
- [Model Predictive Control](/wiki/model_predictive_control)
- [Motion planning](/wiki/motion_planning)
- [Reinforcement learning](/wiki/reinforcement_learning)
- [Robot manipulation](/wiki/robot_manipulation)

## References

1. Khatib, O. (1987). "A unified approach for motion and force control of robot manipulators: The operational space formulation." *IEEE Journal of Robotics and Automation* 3(1): 43-53. https://khatib.stanford.edu/publications/pdfs/Khatib_1987_RA.pdf
2. Sentis, L., and Khatib, O. (2005). "Synthesis of whole-body behaviors through hierarchical control of behavioral primitives." *International Journal of Humanoid Robotics* 2(4): 505-518. https://khatib.stanford.edu/publications/pdfs/Sentis_2005_IJHR.pdf
3. Albu-Schaffer, A., Ott, C., and Hirzinger, G. (2007). "A unified passivity-based control framework for position, torque and impedance control of flexible joint robots." *International Journal of Robotics Research* 26(1): 23-39.
4. Orin, D. E., and Goswami, A. (2008). "Centroidal momentum matrix of a humanoid robot: structure and properties." In *Proc. IEEE/RSJ IROS*.
5. Stephens, B. J., and Atkeson, C. G. (2010). "Dynamic balance force control for compliant humanoid robots." In *Proc. IEEE/RSJ IROS*, Taipei, Taiwan.
6. Saab, L., Ramos, O. E., Keith, F., Mansard, N., Souères, P., and Fourquet, J.-Y. (2013). "Dynamic whole-body motion generation under rigid contacts and other unilateral constraints." *IEEE Transactions on Robotics* 29(2): 346-362.
7. Wensing, P. M., and Orin, D. E. (2013). "Generation of dynamic humanoid behaviors through task-space control with conic optimization." In *Proc. IEEE ICRA*.
8. Escande, A., Mansard, N., and Wieber, P.-B. (2014). "Hierarchical quadratic programming: fast online humanoid-robot motion generation." *International Journal of Robotics Research* 33(7): 1006-1028. https://gepettoweb.laas.fr/uploads/Publications/2013_escande_ijrr.pdf
9. Feng, S., Whitman, E., Xinjilefu, X., and Atkeson, C. G. (2015). "Optimization-based full body control for the DARPA Robotics Challenge." *Journal of Field Robotics* 32(2): 293-312.
10. Wensing, P. M., and Orin, D. E. (2015). "Efficient recursive dynamics algorithms for operational-space control with application to legged locomotion." *Autonomous Robots* 38(4): 363-381.
11. Henze, B., Roa, M. A., and Ott, C. (2016). "Passivity-based whole-body balancing for torque-controlled humanoid robots in multi-contact scenarios." *International Journal of Robotics Research* 35(12): 1522-1543. http://www.cs.cmu.edu/~cga/z/Henze_IJRR_2016.pdf
12. Kuindersma, S., Deits, R., Fallon, M., Valenzuela, A., Dai, H., Permenter, F., Koolen, T., Marion, P., and Tedrake, R. (2016). "Optimization-based locomotion planning, estimation, and control design for the Atlas humanoid robot." *Autonomous Robots* 40(3): 429-455. https://groups.csail.mit.edu/robotics-center/public_papers/Kuindersma14.pdf
13. Carpentier, J., and Mansard, N. (2018). "Analytical derivatives of rigid body dynamics algorithms." In *Robotics: Science and Systems (RSS)*.
14. Mastalli, C., Budhiraja, R., Merkt, W., Saurel, G., Hammoud, B., Naveau, M., Carpentier, J., Righetti, L., Vijayakumar, S., and Mansard, N. (2020). "Crocoddyl: an efficient and versatile framework for multi-contact optimal control." In *Proc. IEEE ICRA*. https://arxiv.org/pdf/1909.04947
15. Khatib, O., Jorda, M., Park, J., Sentis, L., and Chung, S.-Y. (2022). "Constraint-consistent task-oriented whole-body robot formulation: Task, posture, constraints, multiple contacts, and balance." *International Journal of Robotics Research*. https://journals.sagepub.com/doi/abs/10.1177/02783649221120029
16. Oregon State University (2022). "Bipedal robot developed at Oregon State achieves Guinness World Record in 100 meters." https://news.oregonstate.edu/news/bipedal-robot-developed-oregon-state-achieves-guinness-world-record-100-meters
17. ETH Zurich Robotic Systems Lab. "OCS2: optimal control for switched systems." https://leggedrobotics.github.io/ocs2/
18. Stack of Tasks project. "TSID: efficient task space inverse dynamics based on Pinocchio." https://github.com/stack-of-tasks/tsid
19. Toyota Research Institute and MIT. "Drake: model-based design and verification for robotics." https://drake.mit.edu/
20. Figure AI (2025). "Helix: a vision-language-action model for generalist humanoid control." https://www.figure.ai/news/helix
21. Boston Dynamics (2024). "Boston Dynamics unveils new Atlas robot to revolutionize industry." https://bostondynamics.com/blog/boston-dynamics-unveils-new-atlas-robot-to-revolutionize-industry/
22. ICRA 2024 Workshop on Optimization-based Multi-Contact Optimal Whole-body Control. "Humanoid Whole-body Control." https://icra-2024-humanoid.github.io/topics/control/
23. The Robot Report (2025). "Boston Dynamics, TRI use large behavior models to train Atlas humanoid." https://www.therobotreport.com/boston-dynamics-tri-use-large-behavior-models-train-atlas-humanoid/

