Inverse Kinematics

Inverse kinematics is the inverse problem of forward kinematics: given a desired pose

determine all joint vectors , such that

Unlike forward kinematics, inverse kinematics may have zero, one, finitely many, or infinitely many solutions. Since each rigid body in 3D space has DoFs, it follows that for (the number of joints in the rigid body):

  • If (underactuated), many poses are unreachable.
  • If (fully actuated), a generic pose yields a finite number of discrete solutions.
  • If (redundant), solutions typically form a continuous family.

Three broad approaches are used:

  1. Closed-form (analytic): exact solutions derived from geometry and algebra; fast and complete but only available for certain robot geometries. Uses Paden–Kahan subproblems to decompose the problem into canonical rotations.
  2. Numerical / iterative: use Jacobian-based or optimization-based methods; applicable to arbitrary geometries but may require good initialization and may not converge globally.
  3. Data-driven: approximate the inverse map using learned models; inference is fast after training but lacks guaranteed exactness.

Intuition

Inverse kinematics is hard for a fundamental mathematical reason: the forward map is a smooth, many-to-one function between spaces of different dimensions (when ), and even when the map is highly nonlinear (products of matrix exponentials). Inverting it requires either exploiting geometric structure (analytic methods) or iteratively linearizing (numerical methods).

The analytic approach works by strategically applying both sides of to carefully chosen points on or near joint axes, reducing the full 6D problem to a sequence of 1D or 2D subproblems (Paden–Kahan). This is possible only when the robot’s geometry creates enough intersecting or parallel axes.

The numerical approach (Jacobian IK) treats the problem as Newton’s method on : linearize the forward map via the Jacobian, take a step, repeat. This works for any geometry but inherits the usual limitations of local methods—sensitivity to initialization, potential convergence to wrong solutions, and trouble at singularities.

Properties

(Existence) A solution exists if and only if lies in the workspace . For a 6R manipulator, the reachable workspace is bounded by the arm’s reach.

(Multiplicity) For a generic 6R manipulator, the number of IK solutions for a reachable pose is finite and bounded (up to 16 for some geometries). At workspace boundaries, solutions may merge or vanish.

(Singularity Interaction) At singular configurations, the forward map’s differential drops rank, and nearby IK solutions can coalesce or bifurcate. Numerical methods struggle here because the Jacobian becomes ill-conditioned.