ROBOT LEARNING / FORCE SENSING / COMPLIANT MANIPULATION

Learning Compliance with Diffusion Policies

Learning motion, stiffness and damping for contact-rich manipulation on an industrial arm.

Work in progress · Unpublished research

This project explores diffusion policies that learn how to move and how to yield during contact. Demonstrations include compliance commands alongside motion, while an external force/torque sensor closes a variable-admittance loop on a robot that exposes a velocity interface rather than joint-torque control.

Three rows of seven robot photographs showing a small fridge door being opened, a grasped panel sliding in contact, and peg insertion, with stiffness, damping ratio and force overlays.
Real-robot task sequences from the work-in-progress manuscript: door opening (top), sustained sliding contact (middle), and insertion (bottom). Overlays show commanded stiffness K, damping ratio ζ and measured force F at selected instants; these are illustrative rollouts, not aggregate results.

Why learn compliance?

Contact-rich tasks require more than a geometric trajectory. A robot may need to stay stiff during a pull, yield as a part engages, or soften when a constraint changes. Choosing one fixed stiffness for an entire task can miss these different phases.

The goal is to make compliance part of the demonstrated action, so a policy can learn a task-dependent schedule instead of relying only on manually tuned gains. A shared control interface keeps demonstration and deployment on the same underlying robot dynamics.

From demonstration to deployment

RGB and robot state feed a diffusion policy that predicts motion, stiffness and damping for a variable-admittance controller. The controller sends Cartesian velocity to the arm. Wrist force/torque feeds the controller continuously, with a separate dashed path to force-conditioned policy variants.
Conceptual deployment diagram: motion and compliance are predicted together. Wrist force/torque always feeds the admittance controller and additionally conditions the force-aware policy variants.
  1. Demonstrate

    Record motion and compliance together

    A teleoperator commands motion while compliance is authored through operator-selected phases or a force- and velocity-based fuzzy scheduler. RGB, robot state, wrist wrench, hand state, stiffness and damping ratio are recorded together.

  2. Learn

    Predict action chunks with diffusion

    A diffusion policy learns incremental Cartesian motion together with stiffness and damping ratio, plus an optional hand command. Force-conditioned variants include the measured wrench in the observation alongside vision and robot state.

  3. Deploy

    Use the same compliant control path

    The policy replaces the demonstration producer on a shared command bus. A separate variable-admittance loop uses the external wrist wrench and converts the commanded motion and compliance into Cartesian velocity commands.

Experimental setup

Platform
6-DoF industrial arm with Cartesian velocity commands; no joint-torque command interface
Sensing
External six-axis wrist force/torque sensor · one or two RGB cameras · robot and hand state
Software
ROS 2 · shared motion and compliance command bus
Learned actions
Incremental Cartesian pose · stiffness · damping ratio · optional hand command
Policy observations
Vision and robot state, with and without wrist wrench in the compared variants
Control loop
Variable admittance at a nominal 100 Hz; recording and command publication target 50 Hz
Diffusion rollout
Two observation frames · eight predicted actions · four executed before replanning · DDPM denoising
Tasks explored
Door opening · sustained sliding contact · insertion

The rates above are nominal targets. Diffusion inference introduces chunk-boundary delays, so the policy publication rate should not be read as a sustained 50 Hz guarantee. The independent admittance loop continues running between policy updates.

Evaluation in progress

The current investigation compares learned schedules with and without wrench observations, an online fuzzy scheduler, and fixed-stiffness baselines. Contact impulse, peak force and task success are used to study the trade-offs.

Preliminary sliding-contact experiments do not show a learned policy consistently outperforming the tuned baselines. They also do not establish a benefit from adding force to the policy observation in this repeatable-contact setting. The force sensor remains necessary for the underlying admittance controller in both variants.

Door opening and insertion broaden the task examples, but the detailed audit currently covers one sliding-contact task with small trial counts. Behaviour under unexpected contact and generalisation beyond these conditions remain open questions.

Current status

This is ongoing, unpublished work. The experimental setup, policy variants and evaluation are still being refined; this overview describes the current direction rather than a final paper or release.

Further work includes inference and action-publication timing, stale-command handling, and measuring the effort of collecting demonstrations against tuning a task-specific controller. Current experiments are supervised laboratory trials.