Both robots share the same body size and drive down the same winding passage lined with fragile pottery shards and bones. A rigid position-controlled body has no way to yield: whatever force is needed to keep tracking the driven path is the force it applies, so the instant its body brushes an artifact it keeps pushing — the artifact cracks, tips or is shoved aside, and the damage counter climbs.
A compliant, force-limited body continuously monitors contact force at its own skin. The moment that force crosses a very low fragile-object threshold — essentially the instant it registers any touch at all — it zeroes its drive thrust, retracts a short distance along its own back-track, then re-plans a route around the obstacle before resuming toward the goal. Nothing more than the lightest touch is ever transmitted to the artifact.
if contact_force > F_fragile:
thrust = 0
retract(Δt_retreat)
heading += side * turnRate # re-route around contact
resume drive toward path
- Rigid mode — the body ignores contact and keeps its commanded trajectory; every touch on an artifact counts as damage.
- Compliant mode — the body treats any contact as a stop signal, retracting and steering clear before it can apply real force.
- Re-route maneuvers — counts how many times the compliant controller had to yield and detour; each one costs a little time but saves an artifact.
- Drive speed — caps how fast either robot moves forward; driving faster gives the compliant controller less warning before contact.
Real-world relevance: exactly this force-limited yield-and-replan loop is what lets exploration robots work inside collapsed tombs, shipwrecks and other irreplaceable sites without a single wrong move destroying evidence a rigid machine would crush without ever noticing.