FAILURE MAP
← Case archive

FA-88192 / Inverse kinematics solvers / Member archive

Pseudo-inverse uses a 2x2 inverse with the wrong off-diagonal sign · case 02

Task steps are skewed whenever the Jacobian rows are correlated.

Member previewVariant 2 · 3 implementations · 7 checks per implementation

Case contract

Input [lengths(3), q(3 deg), target, qc(3 deg), k]: planar 3R arm, position task only. One step dq = J+ e + (I - J+ J) z, J+ = J^T (J J^T)^-1, e = target - fk(q), z = k*(qc-q) in radians. Return the updated q in degrees rounded to 4, or "singular" when |det(J J^T)|<1e-12.

Why this case matters

Inverse kinematics code turns task-space goals into joint commands; a wrong branch, sign, limit or update order sends a real arm to the wrong pose.

One recorded failure

Sample boundary fixture

This sample comes from the broken implementation of a controlled reproducer.

Boundary fixtureActualExpectedOutcome
centering only[437.1093, 270.1021, 109.709][23.38, 40.6501, 42.2202]Failed

MEMBER ARCHIVE

The complete case is available to members.

This record includes three runnable implementations, regression fixtures, execution results, and source hashes.

Member access is invitation-based. Sign in with your invited account to inspect the sources.

Sign in to the archive ↗