The Unsolved Problem
What is the
Stewart-Gough Platform?
A six-legged parallel manipulator whose forward kinematics reduces to solving a system of polynomial equations with up to 40 solutions in 7 real unknowns. It is one of the hardest open problems in computational kinematics.
The Mechanism
Six legs, six degrees of freedom
The Stewart-Gough platform consists of a rigid base plate and a rigid moving platform connected by six variable-length legs (prismatic actuators). Each leg connects to the base and platform via spherical (ball) joints at known attachment points. By changing the six leg lengths, the platform can be positioned and oriented arbitrarily in three-dimensional space -- achieving full 6-DOF motion (three translations + three rotations).
These platforms are the backbone of flight simulators, surgical robots, precision machining centers, and satellite antenna positioning systems -- anywhere extreme rigidity and precision are demanded simultaneously.
Inverse vs. Forward
Two very different problems
Inverse Kinematics
Given: The desired position and orientation of the moving platform.
Find: The six leg lengths.
This is trivial -- just six independent distance computations. Each leg length is computed directly via a single Euclidean distance formula. O(1) per leg.
Forward Kinematics
Given: The six leg lengths (from actuator sensors).
Find: The position and orientation of the moving platform.
7 unknowns, 7 equations, up to 40 solutions
This requires solving a coupled system of nonlinear polynomial equations. The problem admits up to 40 distinct real solutions -- making it one of the hardest problems in kinematics.
The Difficulty
A 40th-degree polynomial in 7 real unknowns
When you eliminate variables from the constraint system, the forward kinematics problem reduces to finding the roots of a univariate polynomial of degree 40 (proven by Raghavan & Roth, 1993 and Lazard, 1993). But before elimination, the system lives in 7 real dimensions. Here is why that makes everything harder.
7 Coupled Unknowns
The state vector x = (px, py, pz, qw, qx, qy, qz) has 3 position variables and 4 quaternion orientation variables. They are tightly coupled through the rotation matrix R(q), creating a highly nonlinear system where no variable can be solved independently.
40 Possible Configurations
For a generic set of six leg lengths, there can be up to 40 distinct real solutions -- 40 different physical poses of the platform that all satisfy the same leg lengths. A solver must find ALL of them. Missing even one could mean the robot is in an unknown state.
The Constraint System
The 7 equations comprise 6 distance constraints (one per leg) plus 1 quaternion unit-norm constraint. Each distance constraint is quadratic in the position variables but quartic in the quaternion variables due to the rotation matrix entries being quadratic in q.
Exponential Search Space
The search domain is a subset of ℝ7. Even with a modest grid of 10 points per axis, a brute-force search would require 107 = 10,000,000 evaluations. With the typical requirement of 100+ points per axis for root finding, the space explodes to 1014 evaluations -- computationally infeasible.
Clustered & Degenerate Roots
Solutions can be extremely close together (separation on the order of 10−3 or smaller), making them nearly impossible to distinguish numerically. Near-singular configurations cause the Jacobian to become ill-conditioned, and Newton's method either diverges or converges to the wrong root.
Safety-Critical Failure Modes
In real-time control of surgical robots or flight simulators, computing the wrong pose -- or missing a valid pose -- can be catastrophic. Traditional solvers offer no mathematical guarantee that all solutions have been found or that a computed solution is correct.
The Mathematics
The constraint system
Let ai be the base attachment points, bi the platform attachment points (in body frame), p the platform position, and R(q) the rotation matrix from quaternion q. The system of 7 equations in 7 unknowns is:
Distance Constraints (i = 1, ..., 6)
Each constraint enforces that the distance between base point ai and the transformed platform point p + R(q)bi equals the measured leg length Li.
Quaternion Unit-Norm Constraint
The quaternion must lie on the unit hypersphere in 4D. This constraint prevents scale drift and ensures the rotation matrix remains orthogonal.
Rotation Matrix from Quaternion
| R(q) = | 1−2(qy2+qz2) | 2(qxqy−qwqz) | 2(qxqz+qwqy) |
| 2(qxqy+qwqz) | 1−2(qx2+qz2) | 2(qyqz−qwqx) | |
| 2(qxqz−qwqy) | 2(qyqz+qwqx) | 1−2(qx2+qy2) |
Each entry of R(q) is quadratic in the quaternion components. When these are substituted into the distance constraints, each constraint becomes degree 4 in the quaternion variables and degree 2 in the position variables. The total polynomial degree of the system, after elimination, is 40.
Failure Modes
Why Newton's method is not enough
Traditional numerical solvers -- Newton-Raphson, continuation methods, homotopy -- are fundamentally inadequate for this problem. Here is why.
Initialization Dependence
Newton's method converges to whichever root is closest to its initial guess. With up to 40 solutions, random initialization will find only a fraction of them. There is no way to guarantee completeness.
No Certificate of Absence
If Newton's method doesn't find a root in some region, it cannot prove that no root exists there. It could simply have diverged or converged elsewhere. There is no formal exclusion certificate.
Ill-Conditioning Near Singularities
When two roots are close together (separation < 10−3), the Jacobian becomes nearly singular. Newton's method oscillates, diverges, or converges to the wrong root. Clustered roots are the norm, not the exception.
No Uniqueness Proof
Even when Newton's method converges, it provides no proof that the computed root is unique within any region. For safety-critical applications, 'probably correct' is not acceptable.
The Solution
The Gulati-JET certified solver
The Gulati-JET algorithm replaces heuristics with formal mathematics. It provides a complete and certified enumeration of all solutions by combining three provable techniques.
Certified Exclusion via Taylor Bounds
For any box B centered at c with radius r, compute ||F(c)||, ||J(c)||, and Hessian bound M. If ||F(c)|| > ||J(c)|| r + (M/2) r2, then NO root exists in B. This is a mathematical theorem, not a heuristic.
Interval Arithmetic Enclosure
Every arithmetic operation uses rigorous outward rounding (IEEE 754 compliant). The interval evaluation of F over a box produces guaranteed enclosures. If zero is not contained in any interval Fi(B), the box is provably empty. No roots can be missed due to floating-point error.
Krawczyk Operator Certification
For candidate boxes that survive exclusion testing, the Krawczyk operator K(B) is computed. If K(B) ⊂ B, then exactly one root exists in B. This provides both existence AND uniqueness certificates -- the gold standard for certified computation.
By the Numbers
Problem complexity at a glance
See the solver in action
Explore the interactive 3D demo to visualize how the Gulati-JET solver finds all valid configurations for any set of leg lengths.