← Back to the demonstrations

Interactive research demo

Data-Driven Shape Control

Estimate how robot motion changes shape, then use that local model to drive the object toward a target.

Explore first

What should count as the same shape?

Predict what each representation will notice, then use Translate, Rotate and Bend to test your idea.

Start with TranslatePoint coordinates should change. Edge vectors and curvature should stay nearly unchanged.

The complete data-driven control loop

An offline identification phase supplies the local input–shape relation; the online phase repeatedly measures error and corrects it.

Offline phase1. Probe the objectApply small robot commands and observe the resulting shape change.Δu → Δs
Offline phase2. Estimate the JacobianFit the local mapping from robot motion to feature motion.Ĵ ≈ Δs / Δu
Online phase3. Measure shape errorCompare the current and target feature vectors.e = s* − s
Online phase4. Correct and repeatConvert that error into a robot command, observe again and update.u̇ = λ Ĵ† e

        

Robots, object and target

Drag a gripper, its ring handle, or the object itself.
Object Target shape Measured features Discrete Kirchhoff rod · 24 segments
Move the object:

Signals inside the feedback loop

Each feature component keeps one scale across the full time window; the error panel compares all three representations on the same normalised axis.

Point coordinates

Edge vectors

Curvature

End-effector velocity u̇

Normalised error ‖e‖ / ‖e₀‖

What changes between representations?

Point coordinates

Keep position, orientation and shape. Best for placement, but any rigid motion shows up as error.

eₚ = p* − p

Edge vectors

Remove translation while keeping orientation and local direction changes. Translating the object leaves this error untouched.

e_d = d* − d

Curvature

Remove translation and rotation, isolating intrinsic bending. Shape converges, but pose becomes unobservable and uncontrolled.

eκ = κ* − κ
Takeaway The representation decides what the robot tries to correct.

Points preserve pose and shape, edges ignore translation, and curvature isolates bending. The “best” representation depends on the task.

Finish: explore the research →