-->

Learning Forward & Reverse Skills from a Single Unfinished Demonstration for Constrained Manipulation Tasks

Yexin Hu, Haoyi Zheng, Johannes Heidersberger, Dongheui Lee
Technische Universität Wien (TU Wien)
IEEE/RSJ International Conference on Intelligent Robots & Systems (IROS), 2026

Abstract

Learning from demonstration(LfD) enables robots to learn manipulation skills directly from expert demonstrations but remains challenging for contact-rich tasks involving geometric constraints and force interaction. Existing approaches typically require multiple demonstrations, assume complete task execution, and do not support reverse skill learning. In this paper, we present a unified one-shot learning framework for constrained manipulation that learns both forward and reverse task execution from a single, possibly unfinished demonstration. Our method decomposes demonstrations into non-contact and contact phases, with non-contact motion encoded with dynamic movement primitives (DMP), and contact motion represented as a sequence of screw motion primitives segmented by our proposed geometry-driven twist-direction segmentation algorithm. During execution, screw primitives are executed sequentially under admittance-guided pose correction and speed regulation, enabling task completion learned from unfinished demonstration as well as reverse skill execution without additional learning data. We validate our approach on four constrained contact-rich manipulation tasks -- peg insertion, battery insertion, lock opening and screw driving, demonstrating improved success rate and robustness over one-shot trajectory and segmentation baselines in both forward and reverse settings.

Overview

First research result visualization

Overview of the proposed framework. A single forward demonstration is first encoded with a DMP. During execution, the DMP reproduces free-space motion until contact is detected. The contact phase is segmented using the proposed twist-direction method, and each segment is modeled as a screw primitive. Screw primitives are executed sequentially with 6D admittance-based pose correction and 1D admittance-based speed regulation. Reverse execution reuses the learned primitives with edited parameters and reversed order, followed by reversed DMP reproduction after contact release.

Tasks

Human Demonstrations

Experiments

Generalization to Novel Objects

Implementation Details

Unless otherwise stated, learning, segmentation, and admittance parameters were shared across all four tasks. Only the wrench safety limits and scalar load weights were task-dependent to account for different contact and material properties.

Segmentation

Component Parameter Value
Block segmentationBlock length300 samples (0.3 s)
Boundary detectionRotation / translation cosine thresholds0.9 / 0.9
Boundary refinement weightsRotation / translation weights1.0 / 1.0
Small-motion blockTranslation / rotation thresholds0.2 mm / 0.2°
Global refinementTranslation hysteresis min/max2 mm / 5 mm
Global refinementRotation hysteresis min/max5° / 10°
Dwell cleanupTranslation / rotation thresholds5 mm / 10°

Spiral Search Alignment

Component Parameter Value
ControlTimestep1 ms
Spiral searchRate / maximum radius2 Hz / 15 mm
Spiral searchAngular / radial rate0.5 rad/s / 0.125 mm/s
Spiral terminationForce / stable samples4 N / 5 samples

Screw Fitting and Execution under Admittance

Component Parameter Value
Screw fitting weightsRotation / translation weights1.0 / 1.0
ControlTimestep1 ms
6D admittanceM diagonal[0.2, 0.2, 0.2, 0.05, 0.05, 0.05]
6D admittanceB diagonal[40, 40, 40, 3, 3, 3]
6D admittanceK diagonal[1000, 1000, 1000, 4, 4, 4]
1D admittanceBθ10 / |nominal progress speed|
1D admittanceMθ0.05 Bθ
Pose correctionTranslation / rotation limits4 mm / 0.1 rad per axis
Primitive terminationSpeed / duration10% of nominal speed / 0.3 s
Contact detectionForce 2.5 N

Task-Dependent Wrench Parameters

Task / Phase kF kT kF kT Force Limit Torque Limit Tz Limit
Peg1.05.00.10.125 N2 Nm10 Nm
Battery1.510.01.01.025 N3 Nm10 Nm
Lock insertion0.51.00.10.125 N2 Nm0.6 Nm
Lock rotation1.030.00.10.125 N2 Nm0.6 Nm
Screw driving1.030.00.10.125 N3 Nm10 Nm

BibTeX

@article{PaperKey,
  title={Paper Title},
  author={Authors},
  journal={Conference},
  year={2026},
  url={https://domain.com/project-page}
}