Nonlinear systems solver in floating-point arithmetic using LP reduction

This paper presents a new solver for systems of nonlinear equations. Such systems occur in Geometric Constraint Solving, e.g., when dimensioning parts in CAD-CAM, or when computing the topology of sets defined by nonlinear inequalities. The paper does not consider the problem of decomposing the system and assembling solutions of subsystems. It focuses on the numerical resolution of well-constrained systems. Instead of computing an exponential number of coefficients in the tensorial Bernstein basis, we resort to linear programming for computing range bounds of system equations or domain reductions of system variables. Linear programming is performed on a so called Bernstein polytope: though, it has an exponential number of vertices (each vertex corresponds to a Bernstein polynomial in the tensorial Bernstein basis), its number of hyperplanes is polynomial: O(n2) for a system in n unknowns and equations, and total degree at most two. An advantage of our solver is that it can be extended to non-algebraic equations. In this paper, we present the Bernstein and LP polytope construction, and how to cope with floating point inaccuracy so that a standard LP code can be used. The solver has been implemented with a primal-dual simplex LP code, and some implementation variants have been analyzed. Furthermore, we show geometric-constraint-solving applications, as well as numerical intersection and distance computation examples.

[1]  Gershon Elber,et al.  Geometric constraint solver using multivariate rational spline functions , 2001, SMA '01.

[2]  Nicholas M. Patrikalakis,et al.  Computation of the solutions of nonlinear polynomial systems , 1993, Comput. Aided Geom. Des..

[3]  Robert L. Glass The Loyal Opposition - On Design , 1999, IEEE Software.

[4]  A. Morgan,et al.  Numerical Continuation Methods for Solving Polynomial Systems Arising in Kinematics , 1990 .

[5]  Dominique Michelucci,et al.  Solving geometric constraints by homotopy , 1995, IEEE Trans. Vis. Comput. Graph..

[6]  D. Roller,et al.  Geometric Constraint Solving and Applications , 2001, Springer Berlin Heidelberg.

[7]  I. Duff,et al.  Direct Methods for Sparse Matrices , 1987 .

[8]  Dinesh Manocha,et al.  Topology preserving surface extraction using adaptive subdivision , 2004, SGP '04.

[9]  J. H. Wilkinson The algebraic eigenvalue problem , 1966 .

[10]  D. Stewart,et al.  A Platform with Six Degrees of Freedom , 1965 .

[11]  Bernard Mourrain,et al.  Subdivision methods for solving polynomial equations , 2009, J. Symb. Comput..

[12]  Roland Wunderling,et al.  Paralleler und objektorientierter Simplex-Algorithmus , 1996 .

[13]  Sebti Foufou,et al.  Using Cayley-Menger determinants for geometric constraint solving , 2004, SM '04.

[14]  John A. Tomlin,et al.  Updated triangular factors of the basis to maintain sparsity in the product form simplex method , 1972, Math. Program..

[15]  Iain S. Duff,et al.  Direct methods for sparse matrices27100 , 1986 .

[16]  R. B. Kearfott Rigorous Global Search: Continuous Problems , 1996 .

[17]  G. Farin Curves and Surfaces for Cagd: A Practical Guide , 2001 .

[18]  Nicholas M. Patrikalakis,et al.  Solving nonlinear polynomial systems in the barycentric Bernstein basis , 2008, The Visual Computer.

[19]  Dinesh Manocha,et al.  Topology Preserving Isosurface Extraction for Geometry Processing , 2004 .

[20]  C. Hoffmann,et al.  Symbolic and numerical techniques for constraint solving , 1998 .