Skip to content
CMA-ES Explainer
1/9
Black-box manipulation · grasp verified

Teach a KUKA LBR iiwa 7 R800 to pick, carry, and place

Seven joint target curves plus one gripper-width curve, sampled at sixteen knots: 128 variables optimized against a piecewise physical objective that never leaks a gradient.

8 owner poses · 90 Hz physicsawaiting owner receipt
Orange links connect source-ordered iiwa joint frames. The amber/green flange ring is owner pad force and grasp state; the cyan cones display Coulomb friction boundaries.Drag to orbit · pinch to zoom
Tactile Grasp Microscope & Ferrari-Canny GWS HUD
Free-Space Approach
Grip PhasePre-Contact
Ferrari-Canny GWS (ε)0.0%
Normal Pinch Force0.0 N
Friction Cone Capacity0.0 N static
7-DoF iiwa Joint Kinematics & Mechanical Limit Telemetry
A1 Base±170°
+0.0°
A2 Shoulder±120°
+22.9°
A3 Arm±170°
+0.0°
A4 Elbow±120°
-68.8°
A5 Wrist 1±170°
+0.0°
A6 Wrist 2±120°
+45.8°
A7 Flange±175°
+0.0°

Frankensim household flagship

Optimize a complete pick-and-place

Seven joint target curves plus one gripper-width curve, each sampled at sixteen knots:(7 joints + 1 gripper) × 16 = 128 variables

CMA-ES receives only a scalar receipt after a full rollout. Compliant contact, stick/slip friction, free object dynamics, release, hard limits, and owner-routed obstacle/self/object separation make the objective piecewise and black-box—there is no browser gradient hiding behind the animation.

At 128 dimensions, all four representations fit the honest browser envelope. Full CMA is pedagogically useful here; it is rightly refused for the 5,040-D walking problem.

8 × 12 = 96 rollouts
21.25k2.5k3.75k5k
Loading the pinned KUKA model and physical curriculum…

All variants · one physical objective

Which covariance model helps at 128-D?

Run every owner implementation from the identical curriculum, seed, population, and rollout budget. This is a local measurement on one nonsmooth task—not a universal ranking.

Full CMA-ES

Learns every pairwise covariance interaction

O(n²) state · O(n³) decomposition

Separable CMA-ES

Learns one independent scale per coordinate

O(n) state · O(n) update

LM-CMA

Remembers a bounded history of search directions

O(mn) state · O(m²n) worst-case update

LM-MA

Maintains a bounded moving linear transform

O(mn) state · O(mn) update

What the kernel actually does (and doesn't)

tap to expand

Modeled

  • · 7 revolute DoFs (iiwa topology) with hard joint limits
  • · SE(3) FK, inverse-dynamics computed torque
  • · Featherstone articulated-body forward dynamics
  • · Compliant normal pad force + Coulomb friction
  • · Certified convex separation for collision pairs
  • · GJK + EPA query count surfaced in the receipt

Simplified

  • · Collision uses oriented-box envelopes, not triangle meshes
  • · No impulse solver, deformable object, or cable model
  • · Grasp pads are finite, rigid, parallel-jaw style
  • · Object dynamics are rigid-body only
  • · No joint belt-elasticity, backlash, or stiction
  • · No multi-arm coordination, bimanual, or human input

Not modeled

  • · No slip detection, regrasp, or recovery reflex
  • · No inertial measurement, encoder, or actuator lag
  • · No environment lighting, occlusion, or camera noise
  • · No learned policy beyond the periodic basis
  • · No sim-to-real transfer or hardware validation
  • · No reachability planner, grasp planner, or motion planner

A placement the kernel approves can still fail on a real KUKA. The page deliberately stops at a deterministic explainer benchmark; treating it as a controller validation would be a category error.

A parametric model with a paper trail

The procedural shell is intentionally mesh-free. Segment endpoints come from owner poses; the table records the pinned source joint-offset magnitude and mass used by dynamics. Orange housings are display geometry; the collision owner independently builds conservative oriented boxes from those source frames.

source linkjoint offset magnitude (m)mass (kg)
iiwa_link_0base5.0000
iiwa_link_10.15003.4525
iiwa_link_20.19003.4821
iiwa_link_30.21004.0562
iiwa_link_40.19003.4822
iiwa_link_50.21002.1633
iiwa_link_60.19952.3466
iiwa_link_70.10123.1290

Pinned community-reference source: iiwa7.xacro at revision 44f9d13. It is not a KUKA certification artifact.

Why this is a useful black-box flagship

1 · Reach and close

The seven joint splines must align both finite pads with the object while the finger spline is actually closing.

2 · Earn the grasp

Frankensim integrates compliant normal force, friction, object translation, and object rotation. Nothing is latched or teleported.

3 · Lift, route, release

The object must clear 9 cm, reach the goal tolerance, finish released on support, and avoid owner-reported obstacle, self, and proximal-object collision risk.

The source-feasible curriculum makes the demo inspectable from first paint, while live CMA-ES still searches every coordinate. If a sampled policy drops the object or misses the station, the receipt says so; the renderer cannot substitute a canned success animation.

Why 128 dimensions is the honest sweet spot

Seven joint target curves and one gripper-width curve are sampled at sixteen knots — 128 CMA-ES variables. The objective is assembled from a full LBR iiwa 7 R800 rollout with contact activation, static-slip friction capacity, free-space dynamics, release timing, hard limits, and an owner-routed obstacle/self/object separation — piecewise and black-box by construction. There is no browser-side gradient to hide behind, and the grasp is only claimed when the receipt verifies it.

At 128 dimensions all four scalable representations (Full, Separable, LM-CMA, LM-MA) fit the honest browser envelope, so this section is where the family race is physically meaningful — Full CMA is pedagogically useful here and rightly refused for the 5,040-D humanoid walking problem.