Kinematic Control of Redundant Robot Manipulators: A Tutorial

Authors: Siciliano · Year: 1990 · Venue: Journal of Intelligent and Robotic Systems, 3:201-212
Raw: md

Summary

A survey (to ~1988) of on-line, instantaneous (velocity-level) methods for resolving kinematic redundancy in fixed-base robot manipulators. Four families are organized into unified frameworks: (i) simple Jacobian-based inversions (pseudoinverse, damped least-squares, Jacobian transpose), (ii) gradient projection of a scalar cost into the Jacobian null space, (iii) task-space augmentation with constraint tasks and task priority, and (iv) construction of closed-form inverse kinematic functions on invertible workspaces. The author argues task-space augmentation with task priority offers the most benefit, while inverse kinematic functions are conceptually equivalent to augmented task space.

Key Claims

  • For a task with m < n DOF, the inverse kinematics admits infinite solutions, enabling self-motion (joint motion with the end-effector held fixed) that can be exploited for secondary objectives (obstacle/joint-limit avoidance, manipulability maximization, power minimization).
  • The Moore-Penrose pseudoinverse minimum-norm solution (Whitney, resolved-rate) does NOT avoid singularities in any practical sense: joint velocities are minimized only instantaneously and can become arbitrarily large near singular configurations (Baillieul, Hollerbach, Brockett 1984).
  • Damped least-squares (Wampler 1986; Nakamura & Hanafusa 1986) yields a Jacobian nonsingular everywhere, at the cost of an approximate (inexact-tracking) solution; the damping factor λ should be tied to the minimum singular value of J as a proximity-to-singularity measure.
  • Pseudoinverse solutions are generally NOT repeatable. Shamir & Yomdin (1988) give a repeatability condition: for any two columns k_i, k_j of the control matrix K, the Lie bracket [k_i, k_j] must be a linear combination of the columns of K. The author judges this condition impractical (a slight numerical offset in the initial setting breaks repeatability).
  • Open-loop integration of velocity solutions drifts numerically in task space; a closed-loop (“algorithmic”) version replaces the commanded task velocity with ẋ_d + A e, where e = x_d - x and A is a positive-definite gain matrix shaping error convergence.
  • Augmented task space introduces algorithmic singularities of J_A distinct from the singularities of J itself; J_A is full rank iff the range spaces of Jᵀ and J_yᵀ intersect only at zero. Task priority confines an algorithmic singularity to the secondary task, leaving a singularity-free primary task unaffected.
  • Baker & Wampler (1988): any on-line, path-correcting, cyclic (repeatable) kinematic control method is equivalent to some inverse kinematic function.

Method

Direct kinematics and its differential form (paper notation):

x = f(q) (1) · ẋ = J(q) q̇ (2)

with q ∈ ℝⁿ joint variables, x ∈ ℝᵐ task variables, J = ∂f/∂q the (m×n) Jacobian. Redundancy: m < n. A singularity is rank J < m.

Simple Jacobian methods. General control law q̇ = K(q) ẋ (3). Pseudoinverse q̇ = J†(q) ẋ (4) with J† = Jᵀ(JJᵀ)⁻¹. Damped least-squares J* = Jᵀ(JJᵀ + λ²I)⁻¹. Jacobian transpose q̇ = Jᵀ(q) A e (5), shown via Lyapunov to give bounded tracking error and null steady-state error for ẋ_d = 0, and avoids pseudoinverse singularities.

Gradient projection. General null-space solution q̇ = J†(q) ẋ + [I − J†(q)J(q)] q̇₀ (6); the projector (I − J†J) selects null-space components producing self-motion only. Choosing q̇₀ = (∂h/∂q)ᵀ optimizes scalar cost h(q) locally.

Task-space augmentation. Constraint task y = f_y(q) (7), r ≤ n − m, stacked into x_A = [f(q); f_y(q)] (8), giving augmented Jacobian J_A = [J; J_y], J_y = ∂f_y/∂q, and q̇ = K_A(q) ẋ_A (14). For r = n − m this is Baillieul’s extended Jacobian (K_A = J_A⁻¹). Task-priority solution (Nakamura, Hanafusa, Yoshikawa 1987), secondary task lower priority:

q̇ = J† ẋ + J̄_y†(ẏ − J_y J† ẋ) + (I − J†J)(I − J̄_y†J̄_y) z (15), with J̄_y = J_y(I − J†J).

Second-order / dynamic. ẍ = J(q) q̈ + J̇(q) q̇ (19), with general solution q̈ = J†(q)[ẍ − J̇(q)q̇] + [I − J†(q)J(q)] q̈₀ (20); q̈₀ must be chosen to stabilize the unobservable joint-velocity components (Hsu, Hauser, Sastry 1988).

Regime. This is a FIXED-BASE manipulator paper: J is the ordinary geometric/analytic Jacobian, with no base reaction or momentum coupling. It is neither free-flying nor free-floating; there is no generalized Jacobian and no dynamic singularity in the space-robot sense. The kinematic redundancy machinery (null-space projection, task priority, augmented Jacobian) transfers directly to the free-flying case, but the Jacobian must be replaced by the appropriate base-plus-arm map for a 6-DOF actuated base, and reaction/momentum terms enter only there.

Relevance to thesis

This is the canonical reference for the redundancy-resolution toolbox our free-flying manipulator inherits: null-space projection for secondary objectives, task priority for layering (e.g. tracking primary, singularity/obstacle/limit avoidance secondary), and the distinction between geometric singularities of J and algorithmic singularities of an augmented J_A. A 6-DOF actuated base plus an n-link arm is heavily redundant for most end-effector tasks, so these instantaneous schemes are the natural starting point — but the warnings here (pseudoinverse blow-up near singularities, non-repeatability, open-loop drift, algorithmic singularities) all carry over and must be re-checked against the base-coupled Jacobian. The closed-loop ẋ_d + A e correction is the practical pattern for our tracking layer before any risk-aware modification.

Connections

Topics: kinematic_redundancy_resolution, null_space_projection, task_priority_control, algorithmic_singularity

Key Equations / Quotes

“the pseudoinverse has a least squares property that generates the minimum norm joint velocities. However, Baillieul, Hollerbach and Brockett (1984) proved that kinematic singularities are not avoided in any practical sense, since joint velocities are minimized only instantaneously and then can become arbitrarily large near singular configurations.” (p. 204)

“For any two columns kᵢ and kⱼ of K, their Lie bracket [kᵢ, kⱼ] must be a linear combination of the columns of K.” — repeatability condition (Shamir & Yomdin 1988) (p. 204)

“the augmented Jacobian matrix J_A is full rank (r + m) if and only if ℛ(Jᵀ) ∩ ℛ(J_yᵀ) = 0” (p. 208)

“Any kinematic control method that allows on-line path corrections and enjoys the cyclic property is equivalent to an inverse kinematic function” — Baker & Wampler (1988) (p. 209)

Velocity null-space solution (6): q̇ = J†(q) ẋ + [I − J†(q)J(q)] q̇₀.
Task-priority solution (15): q̇ = J† ẋ + J̄_y†(ẏ − J_y J† ẋ) + (I − J†J)(I − J̄_y†J̄_y) z.

Open Questions

  • The author endorses task-space augmentation + task priority as “the most benefits,” but concedes selecting an ad hoc constraint task f_y(q) is hard without strong problem insight — how to choose f_y systematically?
  • Repeatability for r = n − m augmentation holds only on a simply connected workspace subset (Baker & Wampler 1988); behavior across non-simply-connected regions is open.
  • Choice of q̈₀ in the second-order solution (20) to stabilize unobservable joint velocities is “not immediate” (Hsu, Hauser, Sastry 1988) — left unresolved.
  • Global optimization (Pontryagin, calculus of variations) outperforms local schemes but is deemed impractical for on-line feedback control; the local-vs-global gap is left open.