Direct tree decomposition of geometric constraint graphs
Authors:   , Tarres Puertas Marta Isabel 
Published: September 2023

The evolution of constraint based geometric models is tightly tied to parametric and feature-based Computer-Aided Design (CAD) systems. Since the introduction of parametric design by Pro/Engineer in the 1980's, most major CAD systems adopted constraint based geometric models as a core technology. Constraint based geometric models allowed CAD systems to provide a more powerful data model while offering an intuitive user interface. Later on, the same models also found application to fields like linkage design, chemical modeling, computer vision and dynamic geometry.
Constraint based geometric models are unevaluated models. A key problem related to constraint based geometric models is the geometric constraint based solving problem which, roughly speaking, can be stated as the problem of evaluating a constraint based model. Among the different approaches to geometric constraint solving, we are interested in graph-based Decomposition-Recombination solvers. In the graph-based constructive approach, the geometric problem is first translated into a graph whose vertices represent the set of geometric elements and whose edges are the constraints. Then the constraint problem is solved by decomposing the graph into a set of sub-problems, each sub-problem is recursively divided until reaching basic problems which are solved by a dedicated equational solver. The solution to the initial problem is computed by merging the solutions to the sub-problems.
The approach used by DR-solvers has been particularly successful when the decomposition into subproblems and subsequent recombination of solutions to these subproblems can be described by a plan generated a priori, that is, a plan generated as a preprocessing step without actually solving the subsystems. The plan output by the DR-planner remains unchanged as numerical values of parameters change. Such a plan is known as a DR-plan and the unit in the solver that generates it is the DR-planner. In this setting, the DR-plan is then used to drive the actual solving process, that is, computing specific coordinates that properly place geometric objects with respect to each other.
In this thesis we develop a new DR-planner algorithm for graph-constructive two dimensional DR-solvers. This DR-planner is based on the tree-decomposition of a graph. The triangle- or tree-decomposition of a graph decomposes a graph into three subgraphs such that subgraphs pairwise share one vertex. Shared vertices are called hinges. The tree-decomposition of a geometric constraint graph is in some sense the construction plan that solves the corresponding problem. The DR-planner algorithm first transforms the input graph into a simpler, planar graph. After that, an specific planar embedding is computed for the transformed graph where hinges, if any, can be straightly found. In the work we proof the soundness of the new algorithm. We also show that the worst case time performance of the resthe number of vertices of the input graph. The resulting algorithm is easy to implement and is as efficient as other known solving algorithms.
L'evolució de models geomètrics basats en restriccions està fortament lligada al sistemes de Disseny Assistit per Computador (CAD) paramètrics i als basats en el paradigma de disseny per mitjà de característiques. Des de la introducció del disseny paramètric per part de Pro/Engineer en els anys 80, la major part de sistemes CAD utilitzaren com a tecnologia de base els models geomètrics basats en restriccions. Els models geomètrics basats en restriccions permeteren als sistemes CAD proporcionar un model d'informació més ampli i alhora oferir una interfície d'usuari intuitiva. Posteriorment, els mateixos models s'aplicaren en camps com el disseny de mecanismes, el modelatge químic, la visió per computador i la geometria dinàmica. Els models geomètrics basats en restriccions són models no avaluats. Un problema clau relacionat amb el models de restriccions geomètriques és el problema de la resolució de restriccions geomètriques, que es resumeix com el problema d'avaluar un model basat en restriccions. Entre els diferents enfocs de resolució de restriccions geomètriques, tractem els solvers de Descomposició-Recombinació (DR-solvers) basats en graphs. En l'enfoc constructiu basat en grafs, el problema geomètric es trasllada en un pas inicial a un graf, on els vèrtexs del graf representen el conjunt d'elements geomètrics i on les arestes corresponen a les restriccions geomètriques entre els elements. A continuació el problema de restriccions es resol descomposant el graf en un conjunt de subproblemes, cadascun dels quals es divideix recursivament fins a obtenir problemes bàsics, que sovint són operacions geomètriques realitzables, per exemple, amb regle i compàs, i que es resolen per mitjà d'un solver numèric específic. Finalment, la solució del problema inicial s'obté recombinant les solucions dels subproblemes. L'enfoc utilitzat pels DR-solvers ha esdevingut especialment interessant quan la descomposició en subproblemes i la posterior recombinació de solucions d'aquests subproblemes es pot descriure com un pla de construcció generat a priori, és a dir, un pla generat com a pas de pre-procés sense necessitat de resoldre realment els subsistemes. El pla generat pel DR-planner esdevé inalterable encara que els valors numèrics dels paràmetres canviin. Aquest pla es coneix com a DR-plan i la unitat en el solver que el genera és l'anomenat DR-planner. En aquest context, el DR-plan s'utilitza com a eina del procés de resolució en curs, és a dir, permet calcular les coordenades específiques que correctament posicionen els elements geomètrics uns respecte els altres. En aquesta tesi desenvolupem un nou algoritme que és la base del DR-planner per a DR-solvers constructius basats en grafs en l'espai bidimensional. Aquest DR-planner es basa en la descomposició en arbre d'un graf. La descomposició en triangles o arbre de descomposició d'un graf es basa en descomposar un graf en tres subgrafs tals que comparteixen un vèrtex 2 a 2. El conjunt de vèrtexs compartits s'anomenen \emph{hinges}. La descomposició en arbre d'un graf de restriccions geomètriques equival, en cert sentit, a resoldre el problema de restriccions geomètriques. L'algoritme del DR-planner en primer lloc transforma el graf proporcionat en un graf més simple i planar. A continuació, es calcula el dibuix en el pla del graf transformat, on les hinges, si n'hi ha, es calculen de manera directa. En aquest treball demostrem la correctesa del nou algoritme. Finalment, proporcionem l'estudi de la complexitat temporal de l'algoritme en cas pitjor i demostrem que és quadràtica en el nombre de vèrtexs del graf proporcionat. L'algoritme resultant és senzill d'implementar i tan eficient com altres algoritmes de resolució concrets