Interrogating witnesses for Geometric Constraint Solving Dominique Michelucci Laboratoire Electronique, Informatique et Image LE2I, UMR CNRS 5158, Dijon, France Dominique.Michelucci@u-bourgogne.fr Sebti Foufou Laboratoire Electronique, Informatique et Image LE2I, UMR CNRS 5158, Dijon, France Sebti.Foufou@u-bourgogne.fr ABSTRACT Classically, geometric constraint solvers use graph-based meth- ods to analyze systems of geometric constraints. These meth- ods have intrinsic limitations, which the witness method overcomes. This paper details the computation of a basis of the vector space of the free infinitesimal motions of a typical witness, and explains how to use this basis to inter- rogate the witness for detecting all dependencies between constraints: structural dependencies already detectable by graph-based methods, and also non-structural dependencies, due to known or unknown geometric theorems, which are undetectable with graph-based methods. The paper also discusses how to decide about the rigidity of a witness. Categories and Subject Descriptors I.3.5 [Applications]: Computational Geometry and Object Modeling—Geometric Constrait Solving ; G.1.3 [Numerical Analysis]: Numerical Linear Algebra Keywords Geometric Constraint Solving, dependency Detection 1. INTRODUCTION Shape modelling based on geometric constraints enables the designer to specify shapes as sets of geometric entities with their constraints and relationships. Geometric constraints are specifications of distances, angles, incidences, tangen- cies, parallelisms, orthogonalities, etc. between geometric elements such as points, lines, planes, conics, quadrics, or higher degree algebraic curves and surfaces. Examples of big clients of geometric constraints are: robotics (e.g., gen- eralized Stewart platform), molecular chemistry (e.g., the molecule problem which consists in finding the configura- tions of a molecule from interatomic distances), geometric modelling for CAD-CAM (dimensioning mechanical parts), and virtual reality (e.g., blending surfaces) [14, 1, 11, 5]. Graph-based methods work well for correct systems of con- straints, and they indeed make possible the solving of sys- tems which are intractable otherwise. These methods are even able to detect simple mistakes in systems of constraints, namely structural dependencies, which may usually occur when a subset of unknowns is constrained by too much con- straints, non-structural dependencies, due to geometric the- orems, can not be detected with pure graph-based methods in polynomial time. Missing to detect such dependencies makes the solver fail to solve the system, and to give a rel- evant explanation to the designer [13]. This is a serious drawback as the probability of existence of such dependen- cies increases with the size of the system to solve. For CAD-CAM problems, assuming a witness configuration [3, 13] is available, it is possible to check the independency between the geometric constraints, or to check that a de- composition proposed by any other method is correct [6]. Systems of geometric constraints reduce to solving systems of equations of the form F (U, X) = 0 where U is a vector of parameters composed of geometric (e.g., distances, angles) and non-geometric (e.g., weights, forces, costs) entities. Figure 1: A target and a witness configurations, in 2D. Constraints are collinearities, and some edges lengths or some angles. The target (UT ,XT ) is the system to solve: UT are the values of parameters U , and XT is the corresponding root, so that F (UT ,XT ) = 0. A witness is a numeric couple (UW ,XW ) such that F (UW ,XW ) = 0, and UW and UT are generally different. Fig. 1 shows a target configuration and a possible witness configuration. A witness (UW ,XW ) is typical of the target (UT ,XT ) if they share the same combinatorial properties. When no witness is available, a witness can be computed by considering U , the vector of parameters, as unknowns and solving the under-constrained F (Y,X)=0 system with the solver in [4]. This paper introduces the vector space of free infinitesimal motions of the witness, how to compute a basis of this vector space, and how to use this basis to detect constraint depen- dencies. The paper is structured as follows. §2 presents Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. 2009 SIAM/ACM Joint Conference on Geometric and Physical Modeling (SPM ’09), October 4-9, 2009, San Francisco, CA. Copyright 2009 ACM 978-1-60558-711-0/09/10…$10.00. 343