[Paper Notes] GentleHumanoid: Learning Upper-body Compliance for Contact-rich Human and Object Interaction
Published:
TL;DR
GentleHumanoid is a whole-body humanoid control framework for safe upper-body contact. The paper’s main move is to make compliance part of the motion-tracking target itself: shoulder, elbow, and hand links are governed by a spring-damper reference dynamics model, then an RL policy learns to reproduce that compliant reference while still tracking human-like motion.
My read: this is best understood as impedance reference tracking for upper-body humanoid interaction. The policy still outputs joint position targets for low-level PD control, but the reward asks the robot to behave like a multi-link impedance system under simulated contact. That changes the training problem from rigid motion imitation to motion imitation with bounded, coordinated yielding.
Paper Info
The paper is “GentleHumanoid: Learning Upper-body Compliance for Contact-rich Human and Object Interaction” by Qingzhou Lu, Yao Feng, Baiyu Shi, Michael Piseno, Zhenan Bao, and C. Karen Liu from Stanford University. It appears on arXiv as arXiv:2511.04679, dated November 6, 2025. The project page is gentle-humanoid.axell.top, and the deployment code is available at Axellwppr/gentle-humanoid.
The showcased tasks are deliberately physical: handshaking with a 5 N force limit, sit-to-stand support, shape-aware hugging, and balloon handling. These are the right examples for the paper because they expose the weakness of stiff tracking controllers: they can follow a pose, but they do not know when to give way.
Core Problem
Recent humanoid RL has become strong at whole-body motion tracking. A Unitree G1 can imitate expressive upper-body motions, walk, recover, and execute long motion clips. But rigid tracking is uncomfortable and unsafe when a human is part of the contact loop. A hug should yield around the partner’s body, a handshake should move with the human hand, and sit-to-stand assistance should provide firm support without spiking contact force.
The key difficulty is that upper-body contact is not localized to one end effector. In hugging or support, the hand, elbow, shoulder, torso, and arm chain can all participate. A controller that only adapts the wrist or base misses the coupled nature of the interaction. GentleHumanoid therefore models compliance over multiple upper-body links instead of treating external forces as disturbances to suppress.
Reference Dynamics
GentleHumanoid starts from a simple second-order model for each upper-body link:
\[ M\ddot{x}i = f{\mathrm{drive},i} + f_{\mathrm{interact},i} \]
Here \(x_i\) is the 3D Cartesian position of a link such as a shoulder, elbow, or hand in the robot root frame. \(M\) is a scalar virtual mass, set to 0.1 kg in the reference model. The total behavior comes from two forces.
The driving force pulls the link toward the target motion:
\[ f_{\mathrm{drive}} = K_p(x_{\mathrm{tar}} - x_{\mathrm{cur}})
- K_d(v_{\mathrm{tar}} - v_{\mathrm{cur}}) \]
This is classical impedance control: the target motion acts like a virtual spring-damper. The damping is set near critical damping, \(K_d = 2\sqrt{M K_p}\), so the reference does not oscillate unnecessarily.
The interaction force represents contact with humans or objects:
\[ f_{\mathrm{interact}} = K_{\mathrm{spring}}(x_{\mathrm{anchor}} - x_{\mathrm{cur}}) \]
The clever part is how the anchor is chosen. GentleHumanoid uses one unified spring formulation for two contact cases:
- Resistive contact: when the robot presses against a surface, the anchor is fixed at the initial contact point. The spring produces a restoring force.
- Guiding contact: when an external agent pushes or pulls the robot, the anchor is sampled from plausible upper-body postures in human motion data. The spring guides the robot toward a new coordinated pose.
This matters because the sampled anchor is not an independent random offset for each link. It comes from complete human upper-body postures, so the shoulder, elbow, and hand forces remain kinematically consistent. That is the paper’s main answer to multi-link compliance: generate simulated contact that already respects the body chain.
Force Thresholding
Unbounded impedance tracking can still be unsafe. If the target motion and current link position differ a lot, the virtual spring can demand a large force. GentleHumanoid caps the driving force with a task-adjustable threshold:
\[ f_{\mathrm{drive}}^{\mathrm{limited}} = \min\left(1.0, \frac{\tau_{\mathrm{safe}}}{|f_{\mathrm{drive}}|}\right) f_{\mathrm{drive}} \]
The policy observes \(\tau_{\mathrm{safe}}\), so compliance becomes tunable at deployment. Lower thresholds produce softer interactions for hugging and handshaking; higher thresholds allow firmer support for sit-to-stand assistance.
The paper trains with force limits sampled between 5 N and 15 N. It explicitly relates this range to ISO/TS 15066 pain-onset limits and comfort studies. For realistic hugging contact areas, the resulting pressure range is reported as roughly 3-9 kPa, in the same band as soft human hugs and below common comfort thresholds.
Policy Training
The RL policy is trained to track the impedance reference dynamics, not merely the original motion clip. The reference positions and velocities are integrated with semi-implicit Euler:
\[ \dot{x}{t+1}^{\mathrm{ref}} = \dot{x}{t}^{\mathrm{ref}} + \Delta t \frac{f_{\mathrm{drive}} + f_{\mathrm{interact}}}{M} \]
\[ x_{t+1}^{\mathrm{ref}} = x_t^{\mathrm{ref}} + \Delta t \dot{x}_{t+1}^{\mathrm{ref}} \]
The policy uses a teacher-student PPO setup for sim-to-real. The student receives deployable observations: the force-safety threshold, target motion information, root angular velocity, projected gravity, joint-position history, and recent action history. The teacher additionally sees privileged simulation/reference signals, including reference link states, predicted and actual interaction forces, link heights, previous torques, and cumulative tracking error.
Both policies output 29-dimensional joint position targets at 50 Hz, tracked by low-level joint PD controllers. Training motions come from GMR-retargeted AMASS, InterX, and LAFAN, filtered down to about 25 hours of interaction-relevant motion at 50 Hz.
The compliance reward has three parts:
- Reference dynamics tracking: match simulated link positions and velocities to the impedance reference.
- Reference force tracking: align simulated contact forces with the force predicted by the reference dynamics.
- Unsafe force penalty: penalize interaction force above \(\tau_{\mathrm{safe}} + \delta_{\mathrm{tol}}\), with \(\delta_{\mathrm{tol}} = 10\,\mathrm{N}\).
This reward is the mechanism that turns the analytic impedance model into a deployable neural whole-body policy.
Experiments
The simulation comparison uses a hugging motion with external pulling force. GentleHumanoid keeps forces lower and more stable across the hand, elbow, and shoulder. At the hand, it stabilizes around 10 N, while Vanilla-RL exceeds 20 N and Extreme-RL exceeds 13 N. At elbow and shoulder links, the baselines saturate around 15-20 N, while GentleHumanoid stays closer to 7-10 N.
On the Unitree G1, the first real-world test applies external wrist force in a static pose. The baselines resist stiffly and move the torso instead of yielding at the arm. Extreme-RL requires a peak force of 51.14 N to reposition the arm, and Vanilla-RL requires 24.59 N. GentleHumanoid yields more smoothly and keeps the response near the specified force threshold across different postures.
The hugging evaluation uses customized waist-mounted pressure pads with 40 calibrated capacitive taxels. The robot hugs a mannequin under correct alignment and intentional misalignment. GentleHumanoid maintains moderate, bounded contact pressure, while baselines create localized pressure peaks and less predictable force profiles.
The object test uses balloon handling with the force threshold set to 5 N. GentleHumanoid holds the balloon without damaging it. The baselines apply excessive pressure, deform the balloon, and eventually lose balance and drop it.
The paper also shows a shape-aware hugging pipeline. A head-mounted RGB camera estimates a human body mesh, the system extracts waist targets, and an optimization step adapts the G1 upper-body hugging motion to the person’s body shape. This is more than a demo trick: it connects compliance control with perception, where the robot must choose both a comfortable target pose and a safe contact response.
Limitations
The main limitation is contact realism. The training force model uses simulated spring forces, which provide structure and coverage, but real human contact includes friction, tissue deformation, clothing, delayed human response, and complex distributed pressure. The paper reports occasional 1-3 N force overshoots on hardware from sim-to-real mismatch, suggesting that tactile feedback would be useful for tighter force regulation.
The method also depends on the diversity of human motion data. Because guiding forces are sampled from retargeted human postures, the force distribution inherits the coverage of those datasets. The authors note that shoulder forces remain relatively small due to limited motion variation; richer datasets such as dancing could improve coverage.
Finally, autonomous hugging still uses motion capture for human location and height. Replacing that with a fully vision-based localization and scaling pipeline would make the system more practical outside a lab.
Takeaways
GentleHumanoid is useful because it gives compliance a concrete training interface. Instead of hoping a motion-tracking policy becomes safe after perturbation randomization, it defines a multi-link impedance reference, exposes the policy to kinematically consistent contact forces, and makes the force limit an explicit input. The result is a humanoid controller whose softness can be adjusted by task: gentle for hugging and balloons, firmer for sit-to-stand support.
The broader lesson is that humanoid interaction needs controller-aware learning targets. A policy trained only to match poses will treat contact as error. A policy trained to match compliant reference dynamics can treat contact as part of the motion.
