Citation |

- Permanent Link:
- https://ufdc.ufl.edu/UFE0015669/00001
## Material Information- Title:
- Combinatorial Decomposition, Generic Independence and Algebraic Complexity of Geometric Constraints Systems: Applications in Biology and Engineering
- Creator:
- ZHOU, YONG (
*Author, Primary*) - Copyright Date:
- 2008
## Subjects- Subjects / Keywords:
- Algebra ( jstor )
Coordinate systems ( jstor ) Eggshells ( jstor ) Flow graphs ( jstor ) Geometric angles ( jstor ) Graphical user interfaces ( jstor ) Mathematical variables ( jstor ) Navigation ( jstor ) Seams ( jstor ) Vertices ( jstor )
## Record Information- Source Institution:
- University of Florida
- Holding Location:
- University of Florida
- Rights Management:
- Copyright Yong Zhou. Permission granted to University of Florida to digitize and display this item for non-profit research and educational purposes. Any reuse of this item in excess of fair use or other copyright exemptions requires permission of the copyright holder.
- Embargo Date:
- 3/1/2007
- Resource Identifier:
- 659562668 ( OCLC )
## UFDC Membership |

Downloads |

## This item has the following downloads:
zhou_y ( .pdf )
zhou_ypage_Page_055.txt zhou_ypage_Page_074.txt zhou_ypage_Page_102.txt zhou_y_pdf.txt zhou_ypage_Page_033.txt zhou_ypage_Page_128.txt zhou_ypage_Page_158.txt zhou_ypage_Page_155.txt zhou_ypage_Page_148.txt zhou_ypage_Page_081.txt zhou_ypage_Page_003.txt zhou_ypage_Page_068.txt zhou_ypage_Page_037.txt zhou_ypage_Page_067.txt zhou_ypage_Page_072.txt zhou_ypage_Page_044.txt zhou_ypage_Page_137.txt zhou_ypage_Page_040.txt zhou_ypage_Page_146.txt zhou_ypage_Page_115.txt zhou_ypage_Page_087.txt zhou_ypage_Page_034.txt zhou_ypage_Page_121.txt zhou_ypage_Page_052.txt zhou_ypage_Page_023.txt zhou_ypage_Page_021.txt zhou_ypage_Page_123.txt zhou_ypage_Page_125.txt zhou_ypage_Page_098.txt zhou_ypage_Page_011.txt zhou_ypage_Page_030.txt zhou_ypage_Page_124.txt zhou_ypage_Page_060.txt zhou_ypage_Page_018.txt zhou_ypage_Page_084.txt zhou_ypage_Page_140.txt zhou_ypage_Page_091.txt zhou_ypage_Page_119.txt zhou_ypage_Page_138.txt zhou_ypage_Page_147.txt zhou_ypage_Page_080.txt zhou_ypage_Page_058.txt zhou_ypage_Page_009.txt zhou_ypage_Page_118.txt zhou_ypage_Page_139.txt zhou_ypage_Page_051.txt zhou_ypage_Page_069.txt zhou_ypage_Page_100.txt zhou_ypage_Page_005.txt zhou_ypage_Page_090.txt zhou_ypage_Page_061.txt zhou_ypage_Page_106.txt zhou_ypage_Page_025.txt zhou_ypage_Page_020.txt zhou_ypage_Page_004.txt zhou_ypage_Page_043.txt zhou_ypage_Page_070.txt zhou_ypage_Page_077.txt zhou_ypage_Page_153.txt zhou_ypage_Page_150.txt zhou_ypage_Page_097.txt zhou_ypage_Page_066.txt zhou_ypage_Page_132.txt zhou_ypage_Page_010.txt zhou_ypage_Page_143.txt zhou_ypage_Page_093.txt zhou_ypage_Page_105.txt zhou_ypage_Page_007.txt zhou_ypage_Page_144.txt zhou_ypage_Page_042.txt zhou_ypage_Page_014.txt zhou_ypage_Page_035.txt zhou_ypage_Page_063.txt zhou_ypage_Page_008.txt zhou_ypage_Page_104.txt zhou_ypage_Page_092.txt zhou_ypage_Page_054.txt zhou_ypage_Page_088.txt zhou_ypage_Page_056.txt zhou_ypage_Page_073.txt zhou_ypage_Page_016.txt zhou_ypage_Page_049.txt zhou_ypage_Page_154.txt zhou_ypage_Page_028.txt zhou_ypage_Page_122.txt zhou_ypage_Page_078.txt zhou_ypage_Page_095.txt zhou_ypage_Page_149.txt zhou_ypage_Page_036.txt zhou_ypage_Page_103.txt zhou_ypage_Page_017.txt zhou_ypage_Page_101.txt zhou_ypage_Page_086.txt zhou_ypage_Page_038.txt zhou_ypage_Page_039.txt zhou_ypage_Page_135.txt zhou_ypage_Page_156.txt zhou_ypage_Page_026.txt zhou_ypage_Page_076.txt zhou_ypage_Page_062.txt zhou_ypage_Page_109.txt zhou_ypage_Page_111.txt zhou_ypage_Page_048.txt zhou_ypage_Page_117.txt zhou_ypage_Page_127.txt zhou_ypage_Page_047.txt zhou_ypage_Page_024.txt zhou_ypage_Page_032.txt zhou_ypage_Page_015.txt zhou_ypage_Page_083.txt zhou_ypage_Page_059.txt zhou_ypage_Page_099.txt zhou_ypage_Page_065.txt zhou_ypage_Page_012.txt zhou_ypage_Page_133.txt zhou_ypage_Page_013.txt zhou_ypage_Page_141.txt zhou_ypage_Page_006.txt zhou_ypage_Page_134.txt zhou_ypage_Page_126.txt zhou_ypage_Page_142.txt zhou_ypage_Page_045.txt zhou_ypage_Page_151.txt zhou_ypage_Page_031.txt zhou_ypage_Page_116.txt zhou_ypage_Page_110.txt zhou_ypage_Page_136.txt zhou_ypage_Page_130.txt zhou_ypage_Page_079.txt zhou_ypage_Page_029.txt zhou_ypage_Page_129.txt zhou_ypage_Page_027.txt zhou_ypage_Page_157.txt zhou_ypage_Page_050.txt zhou_ypage_Page_002.txt zhou_ypage_Page_019.txt zhou_ypage_Page_082.txt zhou_ypage_Page_057.txt zhou_ypage_Page_131.txt zhou_ypage_Page_145.txt zhou_ypage_Page_001.txt zhou_ypage_Page_114.txt zhou_ypage_Page_096.txt zhou_ypage_Page_064.txt zhou_ypage_Page_094.txt zhou_ypage_Page_085.txt zhou_ypage_Page_071.txt zhou_ypage_Page_120.txt zhou_ypage_Page_075.txt zhou_ypage_Page_152.txt zhou_ypage_Page_046.txt zhou_ypage_Page_107.txt zhou_ypage_Page_089.txt zhou_ypage_Page_041.txt EQPPLNRRJ_3ZJV7J_xml.txt zhou_ypage_Page_108.txt zhou_ypage_Page_053.txt zhou_ypage_Page_022.txt |

Full Text |

COMBINATORIAL DECOMPOSITION, AL('" i'RAIC CO P:L:i i I OF Cl: 3 APPLICATIONS IN BIOLOGY GENERIC INDEP "D)ENCE AND i tllC CONI', tAINTS i Y AND ENGINE; ;: ING YOUNG ZHOU A DI '1 STATION N PF i TED TO THE GRADUATE SCHOOL OF THE UNIVi i:.'iTY OF FLORIDA IN PARTIAL FULFILLMENT OF T-TI R '.UIREMENTS FOR T-il DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 1 I i. cate this work to family. AC: i OWLEDC'" 'TS i :i to all for their 1 1 and guidance. TABLE OF CONTENTS page ACKNOWLEDGMENTS ................... ...... iv LIST OF FIGURES ................... ......... viii ABSTRACT ....................... ........... xi CHAPTER 1 INTRODUCTION ................... ........... 1 1.1 Constraint Graphs and Degrees of Freedom .............. 2 1.2 Formal Definition of DR-plans and Essential Properties ....... 6 1.2.1 Overconstraints ........ ................ 6 1.2.2 Optimality ......... .................. 7 1.2.3 Completeness ..... ................. 8 1.2.4 Complexity ............... ..... 8 2 PROBLEMS .......... . ............. 9 2.1 Geometric Constraints System Within Feature Hierarchies . 9 2.2 Tractable Combinatorial 3D rigidity characterization . . 9 2.3 A 2D Rigidity Classification Conjecture . . . 10 2.4 Solution Space N ,i.; iii i for Geometric Constraint Systems .... 11 2.5 Combinatorial Optimization of Algebraic Complexity . ... 11 2.6 Optimization of Wellformed Systems of Incidences . ... 12 2.7 Enumeration of Patr-,v--v~ for Macromolecular Structures ...... 13 3 GEOMETRIC SYSTEM WITHIN FEATURE HIERARCHIES .... 14 3.1 Formal Problem Statement .................. .. 19 3.2 The Frontier Vertex Algorithm (FA) DR-Planner . . .. 23 3.2.1 Distributing Edges ..... .......... ... 24 3.2.2 Simplifying ('Cl-I. i- .................. .. 25 3.2.3 Datastructures. .................. ... .. .. 26 3.2.4 Distributing Vertices and (C!-I . . ...... .. 27 3.2.5 Combining Clusters . . ..... ... 28 3.3 Incorporating an Input Feature Decomposition into FA DR-plan .28 3.3.1 More Detailed Requirements on the Method . ... 28 3.3.2 Distributing Groups or Features ............... .. 30 3.3.3 Proof of Correctness and Complexity . . ..... 34 3.3.4 Preserving Properties of the Old FA DR-planner ...... ..36 4 COMBINATORIAL 3D RIGIDITY CHARACTERIZATION ...... 41 4.1 Determining Dof Rigidity: The Frontier Vertex Algorithm (FA) .41 4.1.1 The Frontier Vertex DR-plan (FA DR-plan) . . 43 4.1.2 The Frontier Vertex Algorithm (FA DR-planner) ...... ..44 4.2 Module-Rigidity: (C!i '.terization and Algorithm . ... 50 5 CONJECTURE OF ANGLE CONSTRAINT SYSTEM . ... 56 5.1 Definitions ......... . . ... ..56 5.2 One Combinatorial C('! i '.terization .. ............ 58 5.3 Observations .................. ........... .. 62 5.4 Conjectures .................. ............ .. 65 6 SOLUTION SPACE NAVIGATION ............ ... .. .. 69 6.1 Companion Methods Requirements ................. .. 69 6.1.1 DR-Planner ..... . . ..... ......... 70 6.1.2 Combinatorial Cluster-System Optimizer (CCO) ...... ..75 6.1.3 Algebraic Solver .................. ..... .. 76 6.1.4 Graphical User Interface (GUI) ............... .. 76 6.2 N i ,i, i ig the Solution Space ................ .. .. 77 6.2.1 The Basic ESM Method ... . . .. 77 6.2.2 ESM's Communication with User and Integration . 89 6.3 Conclusions . . . . . .... ... 93 7 COMBINATORIAL OPTIMIZATION OF ALGEBRAIC COMPLEXITY 96 7.1 An Instructive Example .................. ... .. 96 7.1.1 The Unoptimized Polynomial System . . 98 7.1.2 Using Quaternions .................. .... .. 99 7.1.3 An Optimized Alternative .................. .. 101 7.1.4 Interpretation ............... ... .. .... 102 7.2 Optimizing Algebraic Complexity using Cluster Topology ...... 102 7.2.1 Reduction of Algebraic Complexity through Optimization 106 7.2.2 Removing Assumptions Made in Section 1.2 ........ 106 7.3 Solutions to an Optimized System of Cluster Constraints ...... 107 8 OPTIMAL, WELL-FORMED RECOMBINATION . . .... 112 8.1 Introduction ............... . . ...... 112 8.2 Background: Constraint Systems and C(l-i i ........... .. 113 8.2.1 The Optimal Recombination Algorithm . . .... 116 8.2.2 The Wellformed Recombination Algorithm . ... 117 8.2.3 Seam Graphs .................. ..... .. 119 8.3 The New Hybrid Algorithm ................ . 123 8.4 Conclusion. ................ .......... 128 9 ENUMERATION OF PATHWAYS FOR MACROMOLECULAR .... 129 9.1 Introduction ................... .......... 129 9.2 Obtaining Pathway Probabilities by Combinatorial Enumeration 134 9.3 Implementation Results .................. .. .. .. 136 9.4 Another Probability Measure ............... . 139 REFERENCES .................. .............. .. .. 140 BIOGRAPHICAL SKETCH .................. ......... 146 LIST OF FIGURES Figure page 1-1 One 2D constraint system example ............ .. .. .. 3 1-2 Simple 3D example drawn on 2D canvas with points and its DR-plan 3 1-3 One 3D example drawn on 2D canvas with solution. . . ... 3 1-4 Geometric constraint system in 3D with ,'i, ii ,- type . . 4 1-5 Constraint graph G1 and DR-plan in 2D. ................ 7 3-1 Small 2D constraint graph that is not triangle decomposable. ...... .15 3-2 Constraint system Si and underlying feature hierarchy Pi. . ... 18 3-3 Feature hierarchy and directed .,. i'. i' graph. .. . ..... 18 3-4 Constraint system and constraint graph showing multiple views. ...... ..19 3-5 Partial decompositions for 3D constraint system (Figure 1-3). . 20 3-6 Two DR-plans of 3D example with input features. ............ .20 3-7 Triangle-decomposable 2D counterexample of ('Cli, !l-Rosser property. .22 3-8 Constraint graph G with edge weight distribution. ........... ..25 3-9 Frontier Algorithm's simplification of graph giving DR-plan (Figure 1-5). 26 3-10 Consistency between the DR-plans of 2 groups of graph (Figure 3-6). .. 30 3-11 Child ('Cl-I. 1- do not overlap (Case 1). .. ... ....... .. 33 3-12 Input groups overlap on frontier vertices (Case 2). ............ ..34 3-13 The overlapped part includes non-frontier vertices (Case 3). ...... ..35 4-1 Finding W first will prevent dof misclassification with 2D and 3D example. 47 4-2 Ensuring Cluster Minimality. .................. ..... 48 4-3 Prevent accumulation of clusters .................. ..... 49 4-4 Examples where module-rigidity beats dof rigidity. ........... .54 4-5 Classic Hinge example: not module-rigid, but dof rigid . .... 55 5-1 Geometric angle constraint system and the angle graph. . ... 57 5-2 The new point pn+ is at the circle or at the radial ........... ..59 5-3 Two new angles: 61 and 62 .................. ....... 59 5-4 One new angle 61 and one old angle 62 ................. 60 5-5 Two old angles do not share a pair of points containing p,n+ ...... ..61 5-6 Two old angles share a pair of points containing p,n+ ......... .61 5-7 Generically independent system that is not gradually constructible. 62 5-8 Implicit angle cycle is not the only type of dependency. . .... 62 6-1 Standard geometric constraint solver architecture. ............ ..75 6-2 Solutions of the cluster formed by the 3 circles (Figure 1-1). ...... ..79 6-3 Complete solution of root cluster (Figure 1-1) after choosing subsolutions. 80 6-4 The structure of the cluster. .................. ..... 80 6-5 N iiv;, .i in; by bottom-up traversal of G79 in DR-plan (Figure 1-4). 83 66 N ,.1i, ling by bottom-up traversal of G82 in DR-plan (Figure 1-4). 83 6-7 Complete solution of constraint system (Figure 1-4). ......... ..84 7-1 The child clusters of hex_tet and the weighted overlap graph. . 97 7-2 Constraint graph and weighted overlap graph of problem pent_plat .. 104 7-3 Five spanning trees of the covering sets of the example (Figure 7-2). .. 104 7-4 Unique solution to problem hex_tet .............. 108 7-5 Diagramatic view of the four solutions to problem (ii). . ... 108 7-6 Diagramatic view of the ten solutions to problem (iii). . ... 109 7-7 Three of the eight solutions to the pent_plat problem (iv). ..... ..110 7-8 Diagramatic view of 8 solutions to the pent_plat problem (iv). . 110 8-1 Schematic representation of a 3D geometric constraint system. . 114 8-2 Overlap graph and the minimal spanning tree of the example (Figure 81). 116 8-3 C'!. ...-ig well-formed incidences for the system (Figure 8-1) is nontrivial. 118 8-4 Seam graph (Figure 8-2) and its seam tree. ..... . . ..... 119 8-5 Wellformed set of incidences obtained from the seam tree (Figure 8-4). 119 8-6 Seam graph, seam trees and seam cycle. ................ 121 8-7 Wellformed incidences may not be optimized. ............. ..122 8-8 Spanning tree of its weighted overlap graph and the seam graph. . 125 9-1 Example monomer primitives and constraints. ............ ..132 9-2 The simulated assembly of a T 1 viral shell. ............... ..133 9-3 Facenumbers and vertex numbers. ................. ..... 135 9-4 The highest pathway type and the widest pathway type in 2000 trials. 137 9-5 Pathi,--,v- of 2 largest isomorphism classes in 2000 trials. . ... 138 Abstract of Dissertation Presented to the Graduate School of the University of I iarida in Partial lP H :::. :: of the Requirements for the D. : of Doctor of F'.!. .. CO iii :)ORIAL DLCO PO lO iON, ('! .iC i .i)- -: D- .C'E AND ALGEBRAIC COMPLi i1Y OF GEOMETRIC CONSTRAL SYST APPLICAi iO L BIOLOGY AND I- (:: i H! * By Yong December C 0 ..: Meera : 'am ".. : D :'t.ment : C< :.. uter and Information Science and Engineering S. dissertation contributes to 7 problems in geometric constraints solving and ..i1 F' : We study the .: .1 1 ::: of enabling general -D and 3D variational constraint :- ..... '... to be used in .. 'unction with a feature '" ..... representation, where some of the features may use procedural or other non-constraint based representations. NWe give a combinatorial approximate characterization of such gr : !: which we cal module-. ..'.' which can be determined I a i' :.. : .1 time algorithm. 1i new method has been implemented in the S110- i :i arnd has i :: : :1 properties and : : : al i: 1 :' .:..ose a combinatorial characterization ... lecture of _) r: of angle constraint system. \'.. give the formal statement of generically independence. XWe arc ': :r to prove it use induction on the number ( points. TI.:. of four cases have been proved. We also study the well-do(cumented .. !.1'. of .. '1.."y navigating the potentially exponentially many roots or realizations of well-constrained, variational geometric constraint systems. We give a scalable method called the i or Equation and Solution .: that can be used both for automatic searches and visual, user-driven searches for desired realizations. ;'., also show that, especially for 3D geometric constraint systems, a further optimization of the algebraic complexity of the :1 : .., is both possible, and often necessary to solve the well-constrained :selected by the DR-plan. XWe give an efficient algorithm to optimize the algebraic complexity of the wellformed system that is constructed 1. the algorit hm given "-- Sithiaram. we implement a randomized .: :::: to (. :::ipute one measure of the probability of the p, '1: and prospect to incorporate another probability measure, that will be obtained combinat ::: :i -- extending Hendricksons 1: x)rem on ::i: :: circuits and unique graph realization into this algorithm. CHAPTER 1 INTRODUCTION Geometric constraint systems have been studied in the context of variational constraint solving in CAD for nearly 2 decades [1, 2, 3, 4]. A geometric constraint system consists of a finite set of primitive geometric objects such as points, lines, planes, conics and so on and a finite set of geometric constraints between them such as distance, angle, incidence and so on. The constraints can usually be written as algebraic equations and inequalities whose variables are the coordinates of the participating geometric objects. For example, a distance constraint of d between two points (xl, iy) and (x2, Y2) in 2D is written as (x2 _- X1)2 + (Y2 y)2 = d2. In this case the distance d is the parameter associated with the constraint. Most of the constraint solvers so far deal with 2D constraint systems. With the exception of work related to the FRONTIER geometric constraint solver [1, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], to the best of our knowledge, work on stand-alone 3D geometric constraint solvers is relatively sparse [16, 17]. A solution or realization of a geometric constraint system is the (set of) real zero(es) of the corresponding algebraic system. In other words, the solution is a class of valid instantiations of (the position, orientation and any other parameters of) the geometric elements such that all constraints are satisfied. Here, it is understood that such a solution is in a particular geometry, for example the Euclidean plane, the sphere, or Euclidean 3 dimensional space. A constraint system can be classified as overconstrained, wellconstrained, or underconstrained. Well-constrained systems have a finite, albeit potentially very large number of rigid solutions; that is, solutions that cannot be infinitesimally flexed to give another nearby solution: the solution space (modulo rigid body transformations such as rotations and translations) consists of isolated points which are zero-dimensional. Underconstrained systems have infinitely many solutions; their solution space is not zero-dimensional. Overconstrained systems do not have a solution unless they are cor ;i. l:-/,/ overconstrained. In that case, they could be embedded within overall underconstrained systems. Systems that are not underconstrained are called rigid systems. 1.1 Constraint Graphs and Degrees of Freedom DR-plans, formally defined in the next section, provide the formal basis of our feature hierarchy incorporation algorithm. Geometric constraint graph representations of a constraint system are typically used to develop DR-plans. Specifically these graphs are used for combinatorial analysis of algebraic properties of the system (such as wellconstrainedness, rigidity and so on,), that hold generi- , ./l/; that is, for all generic values for the constraint parameters (for example, for almost all distance values, in the case of distance constraint systems). A geometric constraint graph G = (V, E, w) corresponding to geometric constraint system is a weighted graph with vertex set (representing geometric objects) V and edge set (representing constraints) E; w(v) is the weight of vertex v and w(e) is the weight of edge e, corresponding to the number of degrees of freedom available to an object represented by v and number of degrees of freedom (dofs) removed by a constraint represented by e respectively. For example, Figures 1-1, 1-2 and 1-5 show 2D and 3D constraint systems and their respective dof constraint graphs. More 3D constraint systems whose graphs have vertices of weight 3 (points) and edges of weight 1,3 can be found in Figures 1-3 1-4. . ^ I -- , K;U K. ; Figure 1-1: One 2D constraint system example. G.:.uplY Figure 1-2: Simple 3D example drawn on 2D canvas with points and its DR-plan p6 .p4 p2 a Am ak f' I --s~ I I p3 p5 Figure 1-3: One 3D example drawn on I r , I', S--1 FL. 1c- ' . kl 2D canvas with solution. % hEi :rE.r i1 -I t : .. ... -, ,, ....m . SI- I- i I 7 1 . Il : ',, ..,. I LI ---- -" 1llll 1 I -" I l .l 1 ] Figure 1-4: Geometric constraint system in 3D with ''i i i i- type Note that the constraint graph could be a /', i,'il'l' each hyperedge involving any number of vertices. A subgraph A C G that satisfies ww(e) D > w(v) (1 eCA vGA is called dense, where D is a dimension-dependent constant, to be described below. Function d(A) = eA w(e)- EVA w(v) is called I. -.:/;/ of a graph A. The constant D is typically ( d+) where d is the dimension. The constant D captures the degrees of freedom of a rigid body in d dimensions. For 2D contexts and Euclidean geometry, we expect D = 3 and for spatial contexts D = 6, in general. If we expect the rigid body to be fixed with respect to a global coordinate system, then D = 0. A trivial subgraph is single vertex (in 2D) and a vertex or edge (in 3D). Next we give purely combinatorial properties related to density that are used to detect generic algebraic properties. A dense, nontrivial graph with density strictly greater than -D is called dof-overconstrained. A graph that is dense A., 1---- I.- I -- -. i -t I : :: [11 l' '.[.1'~ I ' 5 and all of whose subgraphs (including itself) have density at most -D is called dof-wellconstrained. A graph G is called dof-well-overconstrained if it satisfies the following: G is dense, G has at least one overconstrained subgraph, and has the property that on replacing all overconstrained subgraphs by dof-wellconstrained subgraphs (in any manner), G remains dense. Intuitively, this definition is used to prevent some overconstrained subgraphs with high density from skewing the classification of the entire graph. In particular, an extreme example could be a graph that has 2 subgraphs that are severely overconstrained, but with no constraints between them. By this definition, such a graph would not be well-overconstrained and would be correctly classified as underconstrained. A graph that is wellconstrained or well-overconstrained is called dof-cluster. A nontrivial dense graph is minimal if it has no nontrvial dense proper subgraph. All minimal dense subgraphs are dof-clusters but the converse is not the case. A graph that is not a dof-cluster is said to be underconstrained. If a dense graph is not minimal, it could in fact be an underconstrained graph: as pointed out, the density of the graph could be the result of embedding a subgraph of density greater than -D. Next we discuss how the graph theoretic properties degree of freedom (dof) il.-!-.: relate to corresponding properties of the corresponding constraint system. In 2 dimensions, according to Laman's theorem [18], if all geometric objects are points and all constraints are distance constraints between these points then any minimal dense cluster represents a generically rigid system. In general, however, while generically rigid system ahv-- ~ gives a cluster, the converse is not ah--, i- the case. In fact, there are wellconstrained, dense clusters whose corresponding systems are not generically rigid and are in fact generically not rigid due to the presence of generic constraint dependence. One example (Figure 1-4) with 3D points and distance constraints illustrates the so-called ..i. i1 i- problem [19], which generalizes to the so-called hmli_" problem [20, 21]. To date, there is no known, tractable, combinatorial characterization of generic rigidity of systems for 3 or higher dimensions even when only points and distances are involved [19, 22], although several conjectures exist. There are no known general combinatorial characterizations of 2D rigidity, when other constraints besides distances (such as angles) are involved. For constraint systems with angle and incidence constraints but no distances, such a characterization is given [23]. For 3D points and distances, the notion of module-rigid clusters [12] (an extension of dof-rigid clusters defined above) deals with all aspects of the bananas and hinge problems, and so on, it correctly characterizes generic rigidity in all known cases. Currently, no counterexamples are known of module-rigid constraint graphs that are not generically rigid. 1.2 Formal Definition of DR-plans and Essential Properties Here we formally define and give essential properties of DR-plans and DR-planners. This section is important since we require our feature incorporation algorithm to preserve these properties. Please refer to Hoffmann et al. and Lomonosov [6, 24] for a detailed discussion of these properties. Formally, a dof-DR-plan of a constraint graph G is a directed ., i-, 1i graph (dag) whose nodes represent dof-clusters in G, and edges represent containment. The leaves or sinks of the dag are all the vertices (primitive dof-clusters) of G. The roots or sources are a complete set of the maximal dof-clusters of G. For well or well-overconstrained graphs, the DR-plans have a single source. There could be Ir I.-: DR-plans for G (Figures 1-5, 1-1, 1-2, 1-3, 1-4). 1.2.1 Overconstraints First, each dof-cluster C in the DR-plan should be accompanied by a tractable representation of a complete list of reducible overconstraint sets directly associated with C. That is, sets of constraints that do not lie entirely within any child cluster of C and can be removed without affecting the dof-rigidity of C. The DR-planner Co 18 C21 ....... --,.. C O ,16 g .21 15 1 3 6 C4 13 /20h-- '.0 13'3 10 1 0 1/\ / C1 .5 11 C 122 3 4 1151 92019 2 I 4 1 Figure 1-5: Constraint graph G1 and DR-plan in 2D. should additionally admit an efficient method of removing overconstraints by making the appropriate changes to the DR-plan. 1.2.2 Optimality The size of a cluster in a DR-plan is its fan-in or number of its children (it represents the size of the corresponding subsystem, once its children are solved). Since the algebraic-numeric solvers take time exponential in the size of the subsystems they solve, and the number of solutions is also typically exponential, minimizing the size of a DR-plan is essential to the ESM method presented here. An optimal DR-plan is one that minimizes the maximum fan-in. The problem of finding the optimal DR-plan of even a 2D distance constraint graph is NP-hard [9, 24], and approximability results are shown only in special cases. Nonapproximability results are not known. One measure used in lieu of absolute optimality is based on the fact that most DR-planners make adhoc choices during computation (-Zw the order in which vertices are considered) and we can ask how well (close to optimal) the best computation path of such a DR-planner would perform (on the worst case input). We call this the best-choice approximation factor of the DR-planner. A more satisfactory measure of optimality is based on the following alternative property. A tractable DR-plan for systematic navigation should ensure that each cluster C should be accompanied by a a small set of its children Ci that form an optimal covering set of maximal clusters properly contained in C. A covering set of clusters is one whose union contains all geometric elements within C. The size of C is 1 y the size of this optimal covering set. Ti: .'". here refers not to the size of the covering set, but to l .n suitable combinatorial measure of the algebraic complexity of the active constraint ; : for solving C, given the solutions of the child clusters in t he covering set. leads to the notion (.' completeness (<. DR-plans, given below. 1.2.3 Completeness Any method that chooses an, ir-'-. 1 ... ~, set for a cluster C requires as input a generalized complete d, : n' n of C into mnaximal proper subclusters, formally defined as follows. Ti. decomposition <." : cluster C falls into one of 2 .. A T I cluster C has exactly 2 child clusters, which intersect on a nontrivial :1 .1: and their union covers all the geometric elements in C. A Type 2 cluster C has a set of child clusters C(,, with the following .....ty. Ti.. union of C's covers all the geometric elements in C; --- pair c- > intersect on at most a trivial su'. and -.-- C, is a proper mraximal subcluster of C. that is, there is no proper subcluster of C that strictly contains (CQ. Completeness is also needed for detecting implicit constraint <1a ...1' :es and for more accurate, module-rigid E R-planners. 1.2.4 Complexity Another basic property of a E:. i : : is its width i.e. number of clusters in the DR-plan to be small, preferably linear in the size of G: this reflects the complexity of the planning process and : i : the complexity of the sol process that is based on the DF 1 : Clearly, this property competes with completeness. Other desirable properties of DR-planners not mentioned above include : : .: correction of underconstrained systems, and .: : ::: to efficient updates of geometric primitives or constraints. CHAPTER 2 PROBLEMS 2.1 Geometric Constraints System Within Feature Hierarchies One application of geometric constraints system is mechanical computer aided design. However, a bottleneck in using geometric constraints system is that designers use another representation based on the conceptual hierarchy of features in a part or assembly. In C'! lpter 3, we study the problem of enabling general 2D and 3D variational constraint representation to be used in conjunction with the feature hierarchy representation, where some of the features may use procedural or other non-constraint based representations. We trace the challenge to a requirement on constraint decomposition algorithms or decomposition-recombination (DR) planners used by most variational constraint solvers, formalize the feature hierarchy incorporation problem for DR-planners, clarify its relationship to other problems, and provide an efficient algorithmic solution. The new algorithms have been implemented in the general, 2D and 3D opensource geometric constraint solver FRONTIER. 2.2 Tractable Combinatorial 3D rigidity characterization One big open problem is the question of rigidity of 3D constraint systems even when only distances are involved. The problem is that most combinatorial characterizations of rigidity will miss hidden dependencies between constraints and will be wrongly classify many classical nonrigid systems as rigid. In C'! lpter 4, we give a polynomial time characterization called module-, .:,i.:.:/;' that is not fooled by any known such counterexample of nonrigid systems. We show that this property is natural and robust in a formal sense. Rigidity implies module-rigidity, and module-rigidity significantly improves upon the generalized Laman degree-of-freedom or density count. Specifically, graphs containing 'II, i I or "Ii;,. [19] are not module-rigid, while the generalized Laman count would claim rigidity. The algorithm that follows from our characterization of module-rigidity gives a complete decomposition of non module-rigid graphs into its maximal module-rigid subgraphs. To put the result in perspective, it should be noted that, prior to the recent algorithm of [9] there was no known polynomial time algorithm for obtaining all maximal subgraphs of an input constraint graph that satisfy the generalized Laman count, specifically when overconstraints or redundant constraints are present. The new method has been implemented in the FRONTIER [10, 11, 15], [2] opensource 3D geometric constraint solver and has many useful properties and practical applications [13, 14, 25, 26, 27]. Specifically, the method is used for constructing a so-called decomposition-recombination (DR) plan for 3D geometric constraint systems, which is crucial to defeat the exponential complexity of solving the (sparse) polynomial system obtained from the entire geometric constraint system. The DR-plan guides the algebraic-numeric solver by ensuring that only small subsystems are ever solved. The new, approximate characterization of 3D rigidity permits FRONTIER to deal with a far larger class of 3D constraint systems (a class adequate for most applications) than any other current geometric constraint solver. 2.3 A 2D Rigidity Classification Conjecture Laman's theorem shows one combinatorial characterization of 2D distance constraint system [18]. When other constraints are involved, for example, i .,. there is no combinatorial characterization. In C'i plter 5, we give a combinatorial characterization conjecture of 2D rigidity of angle constraint system. First, we give the formal statement of generically independence. We observe that for an given angle constraint system G in 2D with k dof, there is at least one point involved in at most 7 angles. We divide it into 4 cases based on there exists at least one point with 0, 1, 2 or more angles involved. We are trying to prove it use induction on the number of points. The first three cases have been proved. 2.4 Solution Space Navigation for Geometric Constraint Systems In ('!i lpter 6, we study the well-documented problem of systematically navigating the potentially exponentially many roots or realizations of well-constrained, variational geometric constraint systems. We give a scalable method called the ESM or Equation and Solution Manager that can be used both for automatic searches and visual, user-driven searches for desired realizations. The method incrementally assembles the desired solution of the entire system and avoids combinatorial explosion, by offering the user a visual walkthrough of the solutions to recursively constructed subsystems and by permitting the user to make gradual, adaptive solution choices. We isolate requirements on companion methods that permit (a) incorporation of many existing approaches to solution space steering or navigation into the ESM; and (b) integration of the ESM into a standard geometric constraint solver architecture. We address the latter challenge and explain how the integration is achieved. And we clarify these requirements essential and desirable for efficient, meaningful solution space navigation. Also, we sketch the ESM implementation as part of an opensource, 2D and 3D geometric constraint solver FRONTIER developed by our group. 2.5 Combinatorial Optimization of Algebraic Complexity In ('! Ilpter 7 we show that, Most 1i ii, Ir geometric constraint solvers use a combinatorial or graph algorithm to generate a decomposition-recombination (DR) plan. A DR plan recursively decomposes the system of polynomial equations into small, generically rigid subsystems that are more likely to be solved by algebraic-numeric solvers. Especially for 3D geometric constraint systems, a further optimization of the algebraic complexity of these subsystems is both possible, and often necessary to solve the well-constrained systems selected by the DR-plan. In C'! lpter 7, to attack this apparently undocumented challenge, we use principles of rigid body transformation and quaternion forms and we combinatorially optimize a function over the minimum spanning trees of a graph generated from DR-plan information. This approach follows an interesting connection between the algebraic complexity of a well-constrained system and the topology of its maximal well-constrained proper subsystems. The optimization has two secondary advantages: for navigating the solution space of the constraint system and for mapping solution paths in the configuration spaces of the subsystems. We compare the reduction in algebraic complexity of the -,1 i-i'-, in' after optimization with that of the unoptimized -, 1 i-i--I i, and illustrate the practical benefit with natural examples that could only be solved after optimization. 2.6 Optimization of Wellformed Systems of Incidences For tractability, many modern geometric constraint solvers recursively decompose an input geometric constraint system into standard collections of smaller, generically rigid subsystems or clusters. These are recursively solved and their solutions or realizations are recombined to give the solution or realization of the input constraint system. The recombination of a standard collection of solved clusters typically reduces to positioning and orienting the rigid realizations of the clusters with respect to each other, subject to incidence constraints representing primitive, shared objects between the clusters and distance constraints. The paper [28] shows that even for generically wellconstrained systems in 3D, finding a wellconstrained system of incidence constraints for recombining its cluster decomposition is a significant hurdle faced by geometric constraint solvers. In general, we would like a wellformed system of incidences that preserves the classification of the original, undecomposed system as a well, under or overconstrained system. The author formally states and gives an efficient, greedy algorithm to find such a wellformed system. 2.7 Enumeration of Pathways for Macromolecular Structures We consider the problem of explicitly enumerating and counting the assembly path-- i-, by which an icosahedral viral shell forms from identical constituent protein monomers. This poorly understood assembly process is a remarkable example of symmetric macromolecular self-assembly occurring in nature and possesses many features that are desirable while engineering self-assembly at the nanoscale. Sitharam and Mckenna [25, 29] give the new model of that employs a static geometric constraint graph to represent the driving (weak) forces that cause a viral shell to assemble and hold it together. The model was developed to answer focused questions about the structural properties of the most probable types of successful assembly pathv-i- Specifically, the model reduces the study of pathway types and their probabilities to the study of the orbits of the automorphism group of the underlying geometric constraint graph, acting on the set of pathv-i- The authors give a randomized algorithm to compute one measure of the probability of these pathi--,v- by faithfully sampling them. In C'!i lpter 9, we give the implementation of the algorithm and propose to incorporate another probability measure, that will be obtained combinatorially by extending Hendricksons Theorem [30] on rigidity circuits and unique graph realization into this algorithm. This involves both the theory of geometric constraints system and implementation of the new algorithm. CHAPTER 3 GEOMETRIC SYSTEM WITHIN FEATURE HIERARCHIES Designers find it intuitive to use a spatial feature hierarchy representation, which includes: a procedural history or an almost linear sequence of attachments, extrusions, sweeps; or CSG Boolean operations such as intersections; or parametric constraints, while additionally permitting B-rep and other representations of some features. We use the FEMEX and other standard definitions of feature hierarchy, [31, 32] and are concerned primarily with the conceptual design stage. While designers additionally appreciate the expressiveness of variational constraints, tod-(v's CAD systems largely restrict variational constraint representations to 2D cross sections. This persists despite the general consensus that advocates a judicious use of 3D variational constraints for the intuitive expression and maintenance of certain complex and cyclic relationships that often occur between features, parts or subassemblies. To rectify this situation, it would be desirable if a feature hierarchy could simultaneously incorporate 2D and 3D variational constraints. In this chapter, we denote such representations as mixed representations (Figure 3-2). Previous work on such mixed representations can be classified into two broad types. The first type [33, 34], dictates a unified representation language which is an amalgamation of variational constraints with other representation languages such as CSG and Brep. The second type [35] wrestles with a heterogeneous approach, using many servers, one for each representation language, so that the appropriate one can be called when required. Both approaches, while highly general in scope, have their drawbacks. Figure 3-1: Small 2D constraint graph that is not triangle decomposable. Our approach in this chapter has a narrower focus: how to freely enable a variational constraint solver to deal with feature interactions at any level of a feature hierarchy, permitting the features to be independently manipulated. Recursively, these features could themselves be represented using other representations, or in a similar, mixed manner, using constraints to relate the sub-features. This is a natural representation, since regardless of the way in which the features at any given level are represented, constraints between features at that level could be specified between primitive geometric objects or handles belonging to the features (Figure 3-2). One main challenge to achieving this type of representation is the following competing pair of requirements on variational constraint solvers. Effectively representing the interaction of independent features, especially in 3D, would require the use of fairly general, cyclic constraint systems, which are often (consistently) overconstrained. To deal with and resolve such constraint systems the efficient generation of a close-to-optimal decomposition and recombination (DR) plan (formally defined in Section 1.2) of general 2D or 3D constraint graphs is needed. These may not be amenable to decomposition into triangular or other fixed patterns which many DR-planners use (Figure 3-1). DR-plans are widely used in geometric constraint solving and are crucial in order to deal with the tractability bottleneck in constraint solving: minimizing the size of simultaneous polynomial equation systems, thereby controlling the dependence on exponential time algebraic-numeric solvers which are practically crippled when dealing with even moderately sized systems. Effective DR-plans are used also for navigating the solution space of the constraint system [13], optimizing the algebraic complexity of subsystems sent to an algebraic-numeric solver [14], for dealing with explicit inconsistencies (overconstrained systems) [8], implicit or geometric redundancies and constraint dependence [12, 23], ambiguities (underconstrained systems) and for efficient updates and online solving [2, 11]. In order for variational constraints to be used in conjunction with a feature hierarchy representation, the DR-plans of geometric constraint systems should now be made to incorporate an input, feature decomposition representing the underlying feature, part or subassembly hierarchy. This is a partial order, typically represented as a Directed Acyclic Graph or dag (Figures 3-2, 3-3, 3-4). Again, this incorporation of an arbitrary input, conceptual design decomposition into the DR-plan is only possible if the DR-planning process is sufficiently general. In particular, the incorporation should be insensitive to the order in which the elements in the constraint graph are considered during the DR-planning process, the so-called C('!r, !I-Rosser property. However this property while necessary, is not sufficient as explained in Section 1.2. Hoffmann et al. [6] first formalized the concept of a DR-plan as well as several performance measures of DR-planners some of which are relevant to this. It additionally gives a table of comparisons which shows that many of the previous DR-planners for example [3, 36, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45], (or any obvious modifications of them) would inherently fail to incorporate even tree-like input design decompositions or feature hierarchies. We explain in Section 3.1 what the difficulty is in the case of DR-planners that depend on decomposition based on fixed patterns. Incorporation of input decompositions is crucial also in order to capture design intent, or assembly order and allow independent and local manipulation of features, parts, subassemblies or subsystems within their local coordinate systems. It is also crucial for facilitating solution space navigation [13] in a manner that reflects a conceptual design intent. In addition, it is crucial for providing the user with a feature repertoire, the ability to paste into a sketch already resolved features and constraint subsystems that are specified in another representation or allowing certain features or easier subsystems to be solved using other, simpler, methods such as triangle-based decomposition or parametric constraint solving. Sometimes the user would prefer to specify a priority at the vertices of the dag which dictates the order of resolution of the features, parts, subassemblies or subsystems. This occurs also when one features can only be defined or generated based on another, as in procedural or history based representations. Also, note that parametric constraint solving can in fact be achieved as a special case, where the order is a complete, total order. More generally, this can be used in the CAD database maintenance of multiple product views [46, 47], for example the design view and a downstream application client's view may be somewhat different constraint systems and the two feature hierarchies may not even be refinements of one another, but intertwined (Figure 3-4). Furthermore, each view could contain different referencing shape elements that are not part of the net shape and therefore, not part of the other views. This is particularly the case when these referencing shape elements are actually generated during the operations of a history-based procedural representation. internal mixed procedural CSG BREP ( ) f13 hg 179 eln3 external Procedural History Based Parametric Constraints 2D Variational Constraints and Sweeps fo o e to 0 c d f f b Figure 3 2: Constraint system S and .1 :1 feature hierarchy Pi . G1 3 G1 G2 G3 G4 G5 Figure 3-3: Feature hiera --!: and: i 1' : gr : !: X / \B 3 3 _ A B-Q- -Q-\ 3 2 y y X 2y Figure 3-4: Constraint system and constraint graph showing multiple views. 3.1 Formal Problem Statement We now describe the algorithmic problem of feature incorporation in a DR-plan as an input-output specification. Input: A 2D or 3D geometric constraint system (Section 1.1), S. A partial feature decomposition of the constraint system given as a directed .,. i-, i graph (dag) P obtained from one or more feature, part or subassembly hierarchies or design views. A feature or subassembly is a node of P with its immediate subfeatures represented as its children (Figures 3-5, 3-3, 3-6). Desired Output: A DR-plan for the input constraint system whose nodes include those features in the input partial feature decomposition that are dof-clusters. For features that are not dof-clusters, a complete set of maximal dof-clusters within them should appear as nodes in the DR-plan. Other output Requirements: Once the output DR-plan has been obtained, updates to the input feature hierarchy should be achieved efficiently without having to redo the entire DR-plan. The desirable properties of DR-plans and DR-planners given in Section 1.2 must be preserved by the feature incorporation algorithm and its output DR-plan. Some of these properties require straightforward re-definition for feature ,:. -.. Figure 3-5: Partial decompositions for 3D constraint system (Figure -3). i' '~- I-.... . ,,I .{'- K f i Sbr de r h With subassembl S. L t i 41 U_ l ;:, -~ ~~~ ..-- - '' 'i I | t r.- ,-0. .. I S. ,.. ~- ... :, i -t. ( -- I I II tb Figure 3 5: Partial decompositions for 3D constraint system (Figure 1 3). a b c d e f g h With subassemblies Figure 3 6: Two DR-plans of 3D example with input features. incorporating DR-plans, since often no DR-plan even exists that incorporates a given input feature decomposition and preserves these properties as such. For example, it may not be possible to preserve optimality since certain features may simply require clusters with large fan-in; similarly it may not be possible to preserve complexity and small width, since the number of given features may force a large width. However, we would like to ensure that our algorithm generate DR-plans that preserve these properties as much as possible, given the restriction that these DR-plans are forced to incorporate a given input feature decomposition. The ability of a DR-planner to incorporate any input feature decomposition into a DR-plan of a constraint graph G implies that the DR-planner can find the clusters of the graph in any order that is consistent with containment. This is called the Ch i,, Rosser property of the DR-planner [6, 41, 42]. A formal definition is the following. Assume that a DR-planner P constructs its output DR-plan (a dag) for a constraint graph G bottom up, that is, if a cluster C contains cluster D, and both appear in the dag output, then D has been found and inserted into the DR-plan before C. Except for this restriction, the DR-planner is allowed to find and insert any cluster of G into the output dag at any stage. The DR-planner P has the ('!li, i !i-Rosser property if any dag that it outputs is a valid DR-plan for the input graph G. The C'!lii !I Rosser property is weaker and does not imply the feature incorporation property, especially when the DR-planner in question does not perform a generalized analysis, but works only on graphs that have a restricted type of DR-plan. For example, consider a DR-planner that requires the graph G to be decomposable into clusters that have a specific structure or topological 1ii [41, 42], and only finds such clusters. The DR-planner could have a ('!i, i1 !i-Rosser h f e 9 c ..d . S0000 0 a b a b c d e f g h Figure 3-7: Triangle-decomposable 2D counterexample of ('!,ii !i-Rosser property. property in that it would successfully find a DR-plan regardless of the order in which such clusters are found and processed. However, by simply picking a feature which is a cluster that in G that does not have that pattern, the DR-planner would not be able to incorporate that feature in its DR-plan and hence would not possess the feature incorporation property. Note that in the specific case of Fuddos and Hoffmann [41, 42], it can be shown that a graph is well-constrained and I' i: ,fl5 decoin.p.- li!., if and only if all clusters in it are triangle-decomposable (although this proof does not appear in the papers of Fudos and Hoffmann [41, 42]). So in this case the 0C'!Li, !li-Rosser property implies the feature incorporation property; however in this case both properties do not hold for overconstrained graphs (Figure 3-7); and as pointed out above, the presence of consistent overconstraints may be crucial in order to effectively mix feature-based and constraint-based representations. Finally, even if a DR-planner has the C'!,ii. !I-Rosser property and is in fact shown to be amenable to feature incorporation, the actual algorithmic problem still remains: of effo. -, /1i incorporating a given input feature decomposition into a DR-plan while minimally altering its other desirable properties. This is the problem that we address here. 3.2 The Frontier Vertex Algorithm (FA) DR-Planner Here we sketch the essential algorithmic details of the dof-rigid Frontier vertex (FA) DR-planner which are absolutely necessary to describe our feature incorporation algorithm. The dof-rigid FA DR-planner satisfies the properties discussed in the Section 1.2. The basic idea of this DR-planner and its performance was presented by Hoffmann et al. [6]; a complete formal description along with analysis of correctness and (cubic) complexity and proof of the completeness property are given by Lomonosov and Sitharam [2, 9, 24]. A pseudocode is provided by Sitharam [11] and the documented code can be found on her CISE and GNU websites [15]. A method of combinatorially obtaining an optimal, stable algebraic system for solving C, that is, for obtaining optimal covering sets is given by Sitharam et al. and Sitharam and Zhou [14, 48]. The method for obtaining all possible sets of reducible constraints for overconstrained clusters of dof-rigid Frontier vertex DR-plans, both for 2D and 3D, and modifying the DR-plan once they have been removed, is presented by Hoffmann et al. [8]. Other desirable properties such as systematic correction of underconstraints, and amenability to efficient updates of geometric primitives or constraints are given by Sitharam [2, 11]. The input is the constraint graph G and the output is a DR-plan of quadratic width, satisfying the completeness property, with constant best-choice approximation factor. Repeat pick a cluster C from clusterqueue CQ Distributecluster(C) in cluster graph CG if new cluster C' is found (containing C) then Complete (C'G) recursivee procedure builds complete sub DR-plan for cluster graph restricted to C', that is, input constraint graph restricted to C', starting from those subclusters of C' that are already present in DR-plan; modifies DR-plan, inserting C' and new found subclusters of C' into it.] insert C' at the end of CQ Combine CQ iterativee procedure that modifies both DR-plan and CQ until no further combining is possible) update CG by (frontier vertex) Simplify(clusters in CQ) remove C from CQ Until CQ is empty if DR-plan has more than 1 root, then Complete(CG) We describe the methods: DistributeC'Ii. r, Simplify, and Combine to the extent necessary to describe and analyze our feature incorporation algorithm. DistributeCI, 'I. r in turn relies on 3 methods based on network flow for locating dof-rigid clusters: DistributeVertex, DistributeEdge and PushOutside. It is not necessary to describe Complete since it is unaffected by the feature incorporation algorithm. For these, the reader is referred to Lomonosov and Sitharam [9, 24]. Briefly: and Complete recursively calls itself as well as Distributecluster, Combine and Simplify and requires care since completeness competes with the small width property of DR-plans as mentioned in Section 1.2. 3.2.1 Distributing Edges The dense subgraph isolation algorithm is used repeatedly to find dof-rigid clusters. It was first given by Hoffmann et al. [1, 5] as a modified incremental network maximum flow algorithm. We assume standard working knowledge of network flow. The key routine is the distribution of an edge in the constraint graph G. For each edge, we try to distribute the weight w(e) + D + 1 to one or both of its endpoints as flow without exceeding their weights, referred to as "distributing the edge e." and called the DistributeEdge routine. This is best illustrated on a corresponding bipartite graph G*: vertices in one of its parts represent edges in G and vertices in the second part represent vertices in G; edges in G* represent incidence in G. As illustrated by Figure 3-8, we may need to redistribute (find an augmenting path). a 2 e 1 e2 a 33 2 Figure 3-8: Constraint graph G with edge weight distribution. If we are able to distribute all edges, then the graph is not dense. If no dense subgraph exists, then the flow based algorithm will terminate in O(n(m + n)) steps and announce this fact. If there is a dense subgraph, then there is an edge whose weight plus D + 1 cannot be distributed (edges are distributed in some order, for example by considering vertices in some order and distributing all edges connecting a new vertex to all the vertices considered so far). The search for the augmenting path while distributing this edge marks the required dense graph. If the found subgraph is not overconstrained, then it is in fact minimal. If it is overconstrained, Hoffmann et al. [1, 5] give an efficient algorithm to find a minimal cluster inside it. 3.2.2 Simplifying Clusters We now describe the method Simplify. This frontier vertex simplification was given by Hoffmann et al. [6, 7]. The found cluster C interacts with the rest of the constraint graph through its frontier vertices; that is, the vertices of the cluster that are .,.i i,'ent to vertices not in the cluster. The vertices of C that are not frontier, called the internal vertices, are contracted into a single core vertex. This core is connected to each frontier vertex v of the simplified cluster T(C) by an edge whose weight is the sum of the weights of the original edges connecting internal vertices to v. Here, the weights of the frontier vertices and of the edges connecting them remain unchanged. The weight of the core vertex is chosen so that the density of the simplified cluster is -D, where D is the geometry-dependent constant. This is important for proving many properties of the FA DR-plan: even if C is overconstrained, T(C)'s overall weight is that of a wellconstrained graph, (unless C is rotationally symmetric in which case, it lacks one dof). -e 22 3 .-- -_10.- 0 19 8 "" i17 o 615 12 13 h 2 i4 1 5.15 h h 0' 2 0- ,- Figure 3-9: Frontier Algorithm's simplification of graph giving DR-plan (Figure 15). Technically, T(C) may not be wellconstrained in the precise sense: it may contain an overconstrained subgraph consisting only of frontier vertices and edges, but its overall dof count is that of a wellconstrained graph. Figure 3 9 illustrates this iterative simplification process ending in the final DR-plan (Figure 1 5). The flows on the internal edges and the core vertex are inherited from the old flows on the internal edges and internal vertices. The undistributed weights on the internal edges simply disappear. The undistributed weights on the frontier edges are distributed (within the cluster) as much as possible. However, undistributed weights on the frontier edges (edges between frontier vertices) may still remain if the frontier portion of the cluster is severely overconstrained. 3.2.3 Datastructures Four datastructures are maintained. The cluster datastructure for a cluster C contains data on the simplification of the cluster (frontier vertices, edges and so on.), the original graph vertices and edges corresponding to C, and pointers to the roots of the current sub DR-plan rooted at C (may or may not be complete sub-DR-plan depending on the stage of the algorithm). The DR-plan datastructure just contains pointers to the clusters that are currently the top-level clusters in the DR-plan. The flow or cluster pI'r'l, CG contains the current simplified graph where the found clusters have been simplified using the frontier vertex simplification. It also contains all the current flow information on the edges. a cluster queue, CQ which is the top-level clusters of the DR-plan that have not been considered so far, in the order that they were found. We start with the original graph which serves as the cluster or flow graph initially, where the clusters are singleton vertices, The DR-plan consists of the leaf or sink nodes which are all the vertices. The cluster queue consists of all the vertices in an arbitrary order. 3.2.4 Distributing Vertices and Clusters The method Distribute Vertex distributes all edges (calls DistributeEdge) connecting the current vertex to all the vertices considered so far. When one of the edges cannot be distributed a minimal dense cluster C is isolated, as described in Section 3.2.1. Now we describe the method DistributeC I'-i r. Assume all the vertices in the cluster queue have been distributed (either they were included in a higher level cluster in the DR-plan, or they failed to cause the formation of a cluster and continue to be a top level node of the DR-plan, but have disappeared from the cluster queue). Assume further that the DR-plan is not entire, that is, its top level clusters are not maximal. The next level of clusters are found by distributing the (completed) clusters currently in the cluster queue. This is done by filling up the !h .!I -C" or the available degrees of freedom of a cluster C being distributed by D units of flow. Then the PushOutSide method successively considers each edge incident on the cluster with 1 endpoint outside the cluster. It distributes any undistributed weight on these edges + 1 extra weight unit on each of these edges. It is shown by Lomonosov and Sitharam [9, 24] that if C is contained inside a larger cluster, then at least one such cluster will be found by this method once all the clusters currently in the cluster queue have been distributed. 3.2.5 Combining Clusters Next, we emphasize the parts of the algorithm that ensure a crucial property of the output DR-plan that the feature incorporation algorithm must deal with, namely small width, while maintaining complete decomposition of clusters (two types) defined in Section 1.2. The FA DR-planner controls the width of the FA DR-plan to ensure FA achieves a quadratic bound on DR-plan width by maintaining the following invariant of the clusterqueue whenever DistributeCluster is called, every pair of clusters in the cluster queue and cluster graph intersect on at most a trivial subgraph (that is, a subgraph which on resolving incidence constraints either represents to a single point in 2D or a variable or fixed length line segment in 3D). FA does this by repeatedly performing the Combine operation each time a new cluster is isolated. The operation is to iteratively combine N U D1 with any clusters D2, D3,... based on a nontrivial overlap. In this case, N U D1 U D2, N U D1 U D2 U D3 and so on enter the DR-plan as a staircase, or chain, but only the single cluster N U D1 U D2 U D3 U..... enters the cluster graph and cluster queue after removing D1, D2, D3 .... 3.3 Incorporating an Input Feature Decomposition into FA DR-plan We develop a new algorithm that solves the algorithmic problem of Section 3.1. That is, it permits the FA DR-planner (sketched in Section 3.2 [9, 24]) to incorporate into its output DR-plan an input feature decomposition or conceptual, design decomposition. 3.3.1 More Detailed Requirements on the Method A recursive method called DistributeGroup drives the new FA DR-planner It is called on the root node of the input feature decomposition, which, by convention, represents the entire graph. Let GI, G2,.., G, be the children of some parent feature G in the input decomposition. Now that the FA DR-planner's structure has been described, we can give a more detailed set of requirements on the feature incorporation algorithm based on the formal problem requirements of Section 3.1. First of all, we need to ensure that each feature Gi itself appears in the output DR-plan provided it is a valid cluster. If it is not a cluster, then a complete maximal decomposition of it is obtained. This implies that a separate DR-plan for each Gi needs to be obtained and all of these DR-plans should appear within the DR-plan for G. Secondly, while we cannot maintain the same width W as an FA DR-plan that is not required to incorporate any features (for the same constraint graph), we would like to have a width significantly smaller than O(WF), where F is the number of features in the input feature hierarchy. Instead of specifying the desired complexity, we simply require the "best possible." that is, we require that consistency between the DR-plans of the different Gi's needs to be established, in case they have shared objects. In particular, in the 3D constraint system (Figure 3-10), assume Gi's DR-plan has been obtained and has an intermediate cluster bcd. When the DR-plan for G2 is obtained, the same cluster should appear. Thirdly, for efficiency, we would like the new DR-planner while working on some Gi to use as much of the flow, cluster and DR-plan information that it already obtained while working on some earlier Gk, so that the entire complexity is proportional to the width or number of clusters in the final DR-plan. Thus the key issues are: how are the flow or cluster graph (Section 3.2) and the output DR-plan efficiently maintained and modified as each Gi is worked on, so that the above requirements are satisfied. a b c d e h g f Figure 3-10: Consistency between the DR-plans of 2 groups of graph (Figure 3-6). Finally, note that since the input decomposition may be a dag, and not a tree, some children may have more than one p rentt" However, DistributeGroup must be performed only once on any given group G; When another parent of G calls DistributeGroup (G) at a later point in time, the stored results for the flow or cluster graph and DR-plan for G should be returned. 3.3.2 Distributing Groups or Features We discuss 3 distinct cases that need to be dealt with differently at the crucial steps of the algorithm. Case 1: the children of G are I,,nlll;i pairwise disjoint, i.e, do not overlap each other Case 2: Gi's overlap with Gk(1 < k < i 1) consists entirely of frontier vertices of the top level clusters in the merged DR-plan of the Gk '. Case 3: for at least one of the G's(1 < k < i 1), G 's overlap with Gk includes vertices (of the o, .::,r,, ,jIi,1I) that map to the core of one of the clusters of Gk. The method DistributeGroup(G). consists of 4 steps. First, for each child group Gi of G, it performs the following 3 steps. For clarity of exposition, we prefer to not give a pseudocode for DistributeGroup(G), but rather explain successively each of the 4 steps for all three of the cases. When we refer to the "old" DR-planner, we mean the pseudocode of Section 3.2; and the v.-" refers to the old FA DR-planner augmented by the DistributeGroup driver. A detailed pseudocode of the entire FA DR-planner including the feature incorporation algorithm are provided by Sitharam [11]. The old FA DR-planner of Section 3.2 is called on Gi and starts a new DR-plan for Gi (which will eventually get merged with the DR-plans of the other children of G after Step 3 below). Then the new DR-planner uses different options for the flow or cluster graphs for the three cases. Case 1: Use the current flow or cluster graph by freezing all the edges and vertices outside of Gi; Case 2: Use the current flow or cluster graph, modify the flow on carefully selected edges and vertices outside of Gi, marking them and freezing them; that is for each edge e with one endpoint in Gi and another endpoint outside Gi, if there is any flow f on this edge towards Gi, then remove it and instead add f to the undistributed flow capacity on this edge e. Mark this edge e as having undistributed flow. Case 3: Create a new local copy of a flow graph for Gi alone (which will eventually be used to update the current flow graph in Step 3 below). The DR-planner continues with a recursive call to DistributeGroup(Gi) during which it ensures that DistributeEdge is run on the undistributed flow on all marked edges within Gi. An edge e is unmarked only if distribution is successful on all undistributed units on e. The DR-planner merges the DR-Plan of Gi with the DR-Plans of Gi through Gi-1. This includes merging copies of clusters that could have been independently found by the DistributeGroup method on 2 different groups. It additionally includes putting clusters together to form larger clusters, based on amount of overlap; augmenting current flow graph (merged flow graphs so far) using the local flow or cluster graph for Gi. This latter part includes not only combining clusters but also modifying flows. More specifically, the following merging operations are performed. First, if a cluster in the DR-plans for GC, G2,..., G_i appears again in the DR-plan for Gi, the two copies are linked to prevent replication of effort during the solving stage. While the distinct groups of the input decomposition that are present in the sub-DR-plan of each cluster copy will have to be solved, the cluster itself and any cluster in its sub-DR-plan that is not a subset of a group in the input decomposition, will only have to be solved once. Note that merging the cluster copies (by taking the union of their parents and union of their children) will violate the so-called cluster minimality property of a good DR-plan (mentioned in Section 3.1), since a proper subset of the children would already form the cluster. Next, the DR-planner looks at the top level clusters of the merged DR-plan for G1, G2,..., Gi_1 and the top level clusters of the DR-plan for Gi. If any pair of these -v C and D intersect nontrivially, on more than 2 points in 2D and 3 points in 3D, then create a parent cluster C U D of C and D, in the DR-plan; (this is the same as the Combine operation on clusters performed by the basic FA Section 3.2), and making the corresponding simplification in the flow or cluster graph, described below. Cases 1 and 2: Because the local flow graph is inherited from the flow graph for G, no additional modification is needed; Case 3: removes all flow from the non-cluster edges that are in the overlapped part between Gi and that part of G that has been completed so far i.e: G1,..., Gi_1 and marks their entire weight as undistributed. These edges will be redistributed when the clusters that contain them are distributed. Once the DR-plans of all the Gi's have been combined, the DR-planner proceeds as described in Section 3.2 on the resulting flow or cluster graph of G, performing DistributeClI-, r on the clusters in them, potentially isolating and e 0 1 h 10 h G2 g a dg I II a eGG a- Gd1 a G2 1 h /h G\a b c d a a b e d g IV III II Figure 3-11: Child C'li-I i- do not overlap (Case 1). simplifying new clusters that contain the Gi's, modifying the cluster queue and the DR-plan, until the DR-plan for G is completed. We now describe how the above algorithm works on 3 examples that represent the 3 cases. For the 3D example of points and distance constraints in Case 1 Part I shows (Figure 3-11) the flow graph and the cluster queue (Section 3.2) after the DR-plan for G1 has been constructed. When the old DR-planner starts to distribute G2, it creates a new cluster queue for G2 and inherits the flow graph in Step 1. After the old DR-planner in finished with G2, in Step 2, the DR-plan of G2 and the flow or cluster graph are shown in Part II. Then the new DR-planner tries to combine them in Step 3 and the results are shown in Part III of the figure. The final DR-plan of G which is obtained after Step 4 is shown in Part IV. For the 3D example of points and distance constraints in Case 2 (Figure 3-12), Part I shows the flow graph and cluster queue after the DR-plan for G1 has been completed. When the DR-planner starts to distribute G2, it creates a new cluster queue for G2 and inherits the flow graph in Step 1. It also removes the flows on the edge ce and eg and marks them. After the old DR-planner is finished with G2 in Step 2, the DR-plan of G2 and the flow graph are shown in Part II. Since G1 )Gi G *G2 G2 Gg G2 G3 b G3 b e d g c e d g f h I II G ga G2 G1 G G GI G3 b c e d g f h a b c e d g f h III IV Figure 3-12: Input groups overlap on frontier vertices (Case 2). and G2 overlap on 3 points, the new DR-planner combines them in Step 3 and the results are shown in Part III. The final DR-plan of G which is obtained after Step 4 is shown in Part IV. For the 3D example of points and distance constraints in Case 3 Part I shows (Figure 3-13) the flow graph and cluster queue after the DR-plan for G1 has been constructed. When the old DR-planner starts to distribute G2, it creates a new cluster queue for G2 and the flow graph in Step 1. After the old DR-planner is finished with G2 in Step 2, the DR-plan of G2 and the flow graph are shown in Part II. Since GC and G2 overlap on 4 points, the DR-planner combines them in Step 3 and the results are shown in Part III. The final DR-plan of G which is obtained after Step 4 is shown in Part IV. 3.3.3 Proof of Correctness and Complexity We show how the 3 requirements of Section 3.3.1 are met. From Steps 1 and 2, we know that for each decomposition Gi, the algorithm creates a new DR-plan. This ensures, by the properties of the old FA DR-planner given in Section 3.2, that each feature Gi appears in the output DR-plan provided e G2G2 GI 1 G2 G G3 G G3 b G1\ 1\ b\ b c d e g f \ a bcd e b I II G Gi C X; \ a G2 ( G2 G3 Gi GI G3 d h a b c d e g f a b c d e g f h III IV Figure 3 13: Ti'. < .1 .led part includes non-frontier vertices (Case 3). it is a valid cluster, and otherwise a complete decomposition into maximal clusters is obtained. In SI 3, the DR-planner checks their .: of the level clusters of DP ; G and those of the combined Di plan for (CG, (G2,... -, Gi- and combine them if possible. Because this process is executed for each Gi : its DR-plan is established, the algorithm combines the DR-plans for all the G,'s to give the DR-plan for G. Thus P ei"ement 1 is met. In S' 3, the new algorithm links two copies of the same cluster in different i's. T there is cr- one copy of this cluster in the DR-plan < G. So, the consistency between the DR-plans is ensured, i r .:-. Requirement 2. S ivy, the i w i::. : : in the 3 cases is either used as such, copied and restored, or is ( .. i.. iup as undistributed units which will be re-,-: i uted in Step 2 ?. the old D-l .... i .. guarantees that flow ...i..... :n remains accurate throughout, given correctness ( old DP :. .:.: :. o, notice that lor any given edge, the number of times it is re-distributed is no more than the number of groups or features in the feature hierarchy that share that edge. i : ensures that .- additional time ient (beyond that of the original DR-planner) is proportional to the number of features in the input feature hierarchy; thereby ensuring Requirement 3. 3.3.4 Preserving Properties of the Old FA DR-planner Incorporation of features into the DR-plan leaves entirely unchanged many desirable properties of the the output DR-plan mentioned in Section 1.2, simply because the old DR-planner is called by the DistributeGroups driver at each stage to actually construct the DR-plan. These include properties such as detection and characterization of over and under constrainedness [6, 8], completeness [9, 24], systematic correction of underconstrainedness by giving so-called completion constraints amenability to efficient updates (addition or deletion or modification) of geometric primitives or constraints [2, 11], or navigation of the solution space [13]. Next, we briefly discuss some desirable properties of the FA DR-plan that are affected by the feature incorporation algorithm as well as properties that are only relevant in the presence of features. Let n is the number of vertices of the input constraint graph and k is the number of features in the input feature decomposition. Using the argument given in the proof of correctness and complexity, and the complexity of the old DR-planner, the following hold. If all the features are either di-j 1iil or contain one another (Case 1). new algorithm's time complexity is O(n3), width O(n2) (the complexity of the old DR-planner). If the features intersect on trivial subgraphs or contain one another (Case 2), the complexity is O(n3 + k), width O(n2 + k). Finally if the features could intersect on nontrivial subgraphs, the best bound on complexity is O(n3k), width O(n2k) (we omit a finer, but significantly more cumbersome complexity expression in terms of sizes of the intersections and so on.) These are the best complexities one can expect. The first factor is the complexity of the underlying old FA DR-planner and in typical cases, the second factor is insignificant. Concerning optimality, the FA DR-planner's best choice approximation factor is unaffected by the new augmentation. The proof is the same as for the old DR-planner [6]. Among all DR-plans that incorporate the given input feature decomposition, the FA DR-planner augmented by the feature incorporation algorithm can find one whose maximum fan-in cluster has a fan-in that is at most a constant factor larger than the optimum. Also, as mentioned earlier, the feature incorporation does not affect he completeness property, so the algorithms [14, 48] can still be used to find an optimal covering set. Another property of FA DR-plans that is superficially affected by the presence of features is the systematic correction of overconstraints, that is, the method presented [8]. Clearly feature incorporation does not affect the ability to detect overconstraints and isolate of a complete set of overconstraints that can be removed without making the entire graph underconstrained. However, correction of overconstraints typically results in removing some clusters in the DR-plan, since they become underconstrained, although the entire graph remains well-constrained. In the presence of features, it is reasonable to require that no feature that was previously a cluster is made underconstrained by the correction, that is, the set of so-called reducible overconstraints is smaller. However, the overconstraint correction method [8] explicitly provides a list of reducible overconstraints dir. i./; associated with each cluster in the DR-plan. Hence, the required modification is straightforward: the new set of reducible overconstraints that preserve features is the union of all the reducible sets of overconstraints directly associated with each cluster feature in the DR-plan, together with the union of all the reducible sets of overconstraints for clusters that are not descendants of .niv cluster feature in the DR-plan. Finally, a property listed under the output requirements of the feature incorporation problem in Section 3.1 is the ability to update the input feature decomposition and correspondingly efficiently update the DR-plan. Removal of a feature is straightforward. If the feature is a cluster it simply entails the removal of the corresponding node C from the DR-plan, and all of its descendants that are inessential children of their other parents who are not descendants of C (Section 3.2). If the feature is not a cluster, then all of its maximal proper clusters are present as nodes in the DR-plan and these are treated like C above. The DR-planner does not need to be involved in this simple edit of the DR-plan. Addition of a feature is more involved. There are two cases. In the case where the feature is not contained within an existing cluster of the DR-plan (it could be contained in the single root if the graph is wellconstrained), then the addition of the feature is straightforward since it will enter the upper most level of the DR-plan. It is simply treated by the Distributegroups method as though it is a (last) child of the root of the input feature decomposition. If the feature contains new geometric elements and constraints, these are processed using the update method for FA DR-plans, given by Sitharam [2, 11]. In case the new feature F is contained within one or more of the existing clusters Ci in the DR-plan, it is first assumed to be a cluster and inserted in the DR-plan as a child of the Ci and as a parent of all the maximal clusters Di that are contained in F and are present in the sub-DR-plan rooted at any of the Q's. Since F lies inside an already processed cluster, no flow information is available. A cluster or flow graph of F is created by using the frontier vertex simplifications of these maximal clusters. These frontier vertices are connected using edges from the original graph. A cluster queue with these clusters is created and these clusters are treated as the top level of the DR-plan for F constructed so far. that is, Steps 3 and 4 of the DistributeGroup method on F are executed, taking the sub-DR-plan rooted at F as the input feature decomposition and assuming that DistributeGroup has already been called on the children of F in this feature decomposition. During Step 4, since none of the edges in the flow or cluster graph constructed for F have been distributed, Pushoutside and other methods cannot assume that the edges in the cluster graph for F have been distributed, DistributeEdge is run again on these edges. A detailed pseudocode that includes the new feature incorporation algorithm is provided by Sitharam [11]. Documented opensource code can be downloaded from Sitharam's website [15] (use post-December-2003 versions for 3D) To use the feature incorporation option after opening the main sketcher window, and after pulling up (or drawing) a sketch: press 'ctrl' key and left click the objects which should be in the same feature. You will see the color of all selected objects is changed. Tip: you can use left mouse button to draw a rectangle to select objects quickly, then use 'ctrl' + left click to modify selected set ('ctrl' + left click on a selected object would unselect it.) Click 'Design' menu, then click 'Make new tree' to create each feature hierarchy (independent feature hierarchies for the same constraint graph provided by different ,-, i -' or multiple views, are combined to form a single composite feature hierarchy, internally). Then click 'Make new group' to create the feature. For each features, you could simply select the primitive objects in them and click 'Make new group'. You can check the features by clicking the 'group' tab in right-bottom of the window. Note. Recall that the dof-rigid FA DR planner (Section 1.2) considered here does not deal with implicit constraint dependence. However, the more general, module-rigid FA DR-planner [12] deals with all known types of constraint dependence such as bananas and hinges. While incorporation of a feature hierarchy into the the module-rigid FA DR-planner [12] has been implemented in FRONTIER [10, 15], its description and analysis are beyond our current scope. 40 We would like to note that the detection of module-rigidity crucially relies on the completeness of the underlying dof-rigid DP _1 :: : :, which is unchanged by the feature inc.i. oration algorithm. More significantly, the notion of a module-rigid cluster includes so-called dependent clusters that are not self-contained, but' need to be resolved after others, imposing a solving pri, : '' order. DR 1. that can deal with such clusters have an edge in incorporating those features as in procedural history based representations whose very definition is based on previously ( e. tI features. CHAPTER 4 COMBINATORIAL 3D RIGIDITY CHARACTERIZATION One big open problem is the question of rigidity of 3D constraint systems even when only distances are involved. The problem is that most combinatorial characterizations of rigidity will miss hidden dependencies between constraints and will be wrongly classify many classical nonrigid systems as rigid. In this chapter, we give a polynomial time characterization called module- i ,:/1',::l/ that is not fooled by any known such counterexample of nonrigid systems. We show that this property is natural and robust in a formal sense. Rigidity implies module-rigidity, and module-rigidity significantly improves upon the generalized Laman degree-of-freedom or density count. Specifically, graphs containing -, ii, i- or "hi1, [19] are not module-rigid, while the generalized Laman count would claim rigidity. The algorithm that follows from our characterization of module-rigidity gives a complete decomposition of non module-rigid graphs into its maximal module-rigid subgraphs. 4.1 Determining Dof Rigidity: The Frontier Vertex Algorithm (FA) In this section, we first give an alternative characterization of dof rigidity which translates to a useful property of dof DR-plans called dof completeness. (We omit proofs). Then we sketch relevant properties of Frontier vertex DR-plans and the corresponding DR-planner (FA DR-planner) [6, 9] which follows this characterization. Let C be a geometric constraint graph. Then Q = {C1,..., C,}, a set of dof rigid proper subgraphs of C, is a complete, maximal, dof rigid decomposition of C if the following hold. If there is a maximal, dof rigid proper subgraph of C then it must contain one of the Ci in Q. Furthermore, Q should satisfy one of the following. Case 1: m = 2 and C1 and C2 intersect on a nontrivial subgraph and their union induces all of C Case 2: Each of the Ci's is nearly maximal with respect to the set Q in the following sense: the only dof rigid proper subgraphs of C that strictly contain Ci intersect all the other subgraphs Cj, j / i on nontrivial subgraphs; The next theorem gives an alternate characterization of dof rigidity. Theorem 4.1.1 Let C be a geometric constraint ,'.,.'l, and Q = {C1,..., C}, be a complete, maximal, dof rigid decomposition of C. Then C is dof rigid if and only if ) lsl -Adj dof ( (Ci)) < D, SCQ C ES where (recall) D is the number of dofs of a rigid body, and Adj-dof(Ci) is either the number of dofs (negation of /1 ,-.:.i) of Ci if C is trivial; or .:'"l' D if Ci is nontrivial. Note that if Case 1 holds, then C is r,.ii ,/,/.:i ll.i dof rigid in fact, the first 1' */' '/;/ of Q is redundant. The next lemma explains the tractability of this method of determining dof rigidity. Lemma 4.1.2 If C is not dof rigid, then only Case 2 in the D. fil.. 4.1 applies. Furthermore, Case 2 implies that no pair of Ci intersect on more than a trivial u<.l'.p'1 Thus (using a simple HR.i,,, ; theoretic argument), m is at most O(n3), where n is the number of vertices C. Furthermore, the computation of the inclusion-exclusion formula in Theorem 4.1.1 takes O(n3) time. This leads to a robust property of DR-plans using which the characterization can be translated to an algorithm. A dof DR-plan P for a geometric constraint graph G is dof complete if the set Q of child clusters of every dof cluster C in P is a complete, maximal, dof rigid decomposition of C. Partial dof complete DR-plans are defined analogously as in Section 6.1, and just as before, any partial dof-complete) DR-plan for a constraint graph G can be extended to a dof-complete) DR-plan for G 4.1.1 The Frontier Vertex DR-plan (FA DR-plan) Note. Throughout this section, unless otherwise mentioned, "(< !-I. i means "dof cluster,'" iigid" means "dof rigid," and "DR-1p! i means "dof DR-plan." Intuitively, an FA DR-plan is built by following two steps repeatedly: Isolate a cluster C in the current graph Gi (which is also called the cluster .'l, or flow 'Ij',l' for reasons that will be clear below). C'! I 1: and ensure a complete, maximal, dof rigid decomposition of C. Simplify C into T(C), transforming Gi into the next cluster graph G+ = T(Gi) (the recombination step). The isolation algorithm, first given by Hoffmann et al. [1, 5] is a modified incremental network maximum flow algorithm. The key routine is the distribution of an edge in the constraint graph G. For each edge, we try to distribute the weight w(e) +D+1 to one or both of its endpoints as flow without exceeding their weights, referred to as "distributing the edge e." This is best illustrated on a corresponding bipartite graph G*: vertices in one of its parts represent edges in G and vertices in the second part represent vertices in G; edges in G* represent incidence in G. As illustrated by Figure 3-8, we may need to redistribute (find an augmenting path). If we are able to distribute all edges, then the graph is not dense. If no dense subgraph exists, then the flow based algorithm will terminate in O(n(m + n)) steps and announce this fact. If there is a dense subgraph, then there is an edge whose weight plus D + 1 cannot be distributed (edges are distributed in some order, for example by considering vertices in some order and distributing all edges connecting a new vertex to all the vertices considered so far). It can be shown that the search for the augmenting path while distributing this edge marks the required dense graph. It can also be shown that if the found subgraph is not overconstrained, then it is in fact minimal. If it is overconstrained, Hoffmann et al. [1, 5] give an efficient algorithm to find a minimal (non-trivial, if one exists) dof cluster inside it. Then Lomonosov and Sitharam [9] gives a method to ensure a complete, maximal, dof rigid decomposition of C. The simplification was given by Hoffmann et al. [6, 7]. The found cluster C interacts with the rest of the constraint graph through its frontier vertices; that is, the vertices of the cluster that are .,.i ,i:ent to vertices not in the cluster. The vertices of C that are not frontier, called the internal vertices, are contracted into a single core vertex. This core is connected to each frontier vertex v of the simplified cluster T(C) by an edge whose weight is the sum of the weights of the original edges connecting internal vertices to v. Here, the weights of the frontier vertices and of the edges connecting them remain unchanged. The weight of the core vertex is chosen so that the density of the simplified cluster is -D, where D is the geometry-dependent constant. This is important for proving many properties of the FA DR-plan: even if C is overconstrained, T(C)'s overall weight is that of a wellconstrained graph, (unless C is rotationally symmetric and trivial, in which case, it retains its dof or weight). Technically, T(C) may not be wellconstrained in the precise sense: it may contain an overconstrained subgraph consisting only of frontier vertices and edges, but its overall dof count is that of a wellconstrained graph. Figure 3-9 illustrates this iterative simplification process ending in the final DR-plan (Figure 1-5). 4.1.2 The Frontier Vertex Algorithm (FA DR-planner) The challenge met by FA is that it provably meets several competing requirements. Specifically, it gives a dof complete DR-plan. The graph transformation performed by the FA cluster simplification is described formally by Hoffmann et al. [6, 7] that provide the vocabulary for proving certain properties of FA that follow directly from this simplification. However, other properties of FA require details of the actual DR-planner that ensures them, and are briefly sketched here. Note: a detailed pseudocode of the FA DR-planner (the existing version, as well as incorporating the module-rigidity algorithm of this section) is given by Sitharam [11, 15]. The pseudocode has been implemented as part of the downloadable, opensource FRONTIER geometric constraint solver [2, 10, 11, 15]. The basic FA algorithm is based on an extension of the distribute routine for edges (explained above) to vertices and clusters in order for the isolation algorithm to work at an arbitrary stage of the planning process, i.e, in the cluster or flow graph Gi. First, we briefly describe this basic algorithm. Next, we sketch the parts of the algorithm that ensure 3 crucial, inter-related properties of the output DR-plan: (a) ensuring dof completeness; (b) for underconstrained graphs: outputting a complete set of maximal clusters as sources of the DR-plan; (c) controlling width of the DR-plan to ensure a polynomial time algorithm. Three datastructures are maintained. The current flow or cluster ','l, Gi the current DR-plan (this information is stored entirely in the hierarchical structure of clusters at the top level of the DR-plan), and a cluster queue, which is the top-level clusters of the DR-plan that have not been distributed so far, in the order that they were found (below gives an explanation of how clusters are distributed). We start with the original graph (which serves as the cluster or flow graph initially, where the clusters are singleton vertices). The DR-plan consists of the leaf or sink nodes which are all the vertices. The cluster queue consists of all the vertices in an arbitrary order. The method Distribute Vertex distributes all edges (calls DistributeEdge) connecting the current vertex to all the vertices considered so far. When one of the edges cannot be distributed and a minimal dense cluster C is discovered, its simplification T(C) (described above) transforms the flow graph. The flows on the internal edges and the core vertex are inherited from the old flows on the internal edges and internal vertices. Notice that undistributed weights on the internal edges simply disappear. The undistributed weights on the frontier edges are distributed (within the cluster) as well as possible. However, undistributed weights on the frontier edges (edges between frontier vertices) may still remain if the frontier portion of the cluster is severely overconstrained. These have to be dealt with carefully. The new cluster is introduced into the DR-plan and the cluster queue. Now we describe the method DistributeCi,';- r Assume all the vertices in the cluster queue have been distributed (either they were included in a higher level cluster in the DR-plan, or they failed to cause the formation of a cluster and continue to be a top level node of the DR-plan, but have disappeared from the cluster queue). Assume further that the DR-plan is not complete, that is, its top level clusters are not maximal. The next level of clusters are found by distributing the clusters currently in the cluster queue. This is done by filling up the I. -' or the available degrees of freedom of a cluster C being distributed by D units of flow. The PushOutSide method successively considers each edge incident on the cluster with 1 endpoint outside the cluster. It distributes any undistributed weight on these edges + 1 extra weight unit on each of these edges. It can be shown that if C is contained inside a larger cluster, then at least one such cluster will be found by this method once all the clusters currently in the cluster queue have been distributed. The new cluster found is simplified to give a new flow graph, and gets added in the cluster queue, and the DR-plan as described above. Eventually, when the cluster queue is empty, i.e, all found clusters have been distributed, the DR-plan's top level clusters are guaranteed to be the complete set of maximal dof rigid subgraphs of the input constraint graph. Lomonosov and Sitharam give the formal proofs [9]. W a d a CC hC CCf C2 kb Figure 4 1: Finding W first will prevent dof misclassification with 2D and 3D example. Note: Throughout, in the interest of formal clarity, we leave out ad hoc, but highly effective heuristics that find simple clusters by avoiding full-fledged flow. One such example is called "sequential (::.i i .i which automatically creates a larger cluster containing a cluster C and a vertex v provided there are at least D edges between C and v. These can easily be incorporated into the flow based algorithm, provided certain basic invariants about distributed edges is maintained. This completes the description of the backbone of the basic FA DR-planner. Next we consider some details ensuring the properties (a) (c) above. First we intuitively explain why dof completeness is a crucial property. After C1 and C2 are found (Figure 4 1), when C1 is distributed, C1 and C2 would be picked up as a cluster, although they do not form a cluster. The problem is that the overconstrained subgraph W intersects Ci on a trivial cluster, and W itself has not been found. Had W been found before C1 was distributed, W would have been simplified into a wellconstrained subgraph and this misclassification would not have occurred. It has been shown by Lomonosov and Sitharam [9] that this type of misclassification can be avoided (W can be forced to be found after C2 is found), by maintaining b d b d b e d j k Figure 4-2: Ensuring Cluster Minimality. three invariants. The first two are described here. The third is highly related to property (b) and is described in the next subsection. The first is the following invariant: alvi.-, distribute all undistributed edges connecting a new found cluster C (or the last distributed vertex that caused C to be found), to all the vertices distributed so far that are outside the cluster C. Undistributed weight on edges inside C are less crucial: if they become internal edges of the cluster, then this undistributed weight "disapp'. ,- when C is simplified into a wellconstrained cluster; there is also a simple method of treating undistributed weight on frontier edges so that they also do not cause problems the method and proof are given by Lomonosov and Sitharam [9]). The second invariant that is useful for ensuring dof completeness is that for any cluster in the DR-plan, no proper subset of at least 2 of its child clusters forms a cluster. We call this property cluster ,,:,..:,,;,l.:/l; FA ensures this using a generalization of the method Minimal given by Hoffmann et al. [1, 5] which finds a minimal dense subgraph inside a dense subgraph located by Distribute Vertex and DistributeEdge. Once a cluster C is located and has children C1,..., Ck, for k > 2, a recursive method clusMin removes one cluster Ci at a time (replacing earlier removals) from C and redoes the flow inside the flow graph restricted to C, before C's simplification. If a proper subset of at least 2 C 's forms a cluster C', then the clusMin algorithm is repeated inside C' and thereafter in C again, replacing the set of child clusters of C that are inside C' by a single child cluster C'. If instead no such cluster is found, then the removed cluster Ci the essential. That is, it belongs to every subset of C's children that forms a cluster. When the set of clusters itself forms a cluster E (using a dof count), then clusMin is called on C again with a new child cluster E replacing all of C's children inside E. While the DR-planner described so far guarantees that at termination, top level clusters of the DR-plan are maximal. It also guarantees that the original graph is dof underconstrained only if there is more than one top level cluster in the DR-plan. However, in order to guarantee that all the maximal clusters of an underconstrained graph appear as top level clusters of the DR-plan, we use the observation that any pair of such clusters intersect on a subgraph that reduces (once incidence constraints are resolved) into a trivial subgraph (a single point in 2D or a single edge in 3D). This bounds the total number of such clusters and gives a simple method for finding all of them. Once the DR-planner terminates with a set of maximal clusters, other maximal clusters are found by simply performing a Pushoutside of 2 units on every vertex (in 2D) or every vertex and edge (in 3D), and continuing with the original DR-planning process until it terminates with a larger set of maximal clusters. This is performed for each vertex in 2D and each edge in 3D which guarantees that all maximal clusters will be found. Lomonosov and Sitharam give the proofs [9]. C5 h d C4 at\ b e Cl C2 C3 a b c d e f g h i Figure 4-3: Prevent accumulation of clusters FA achieves a linear bound on DR-plan width by maintaining the following invariant of the cluster or flow graph: every pair of clusters in the flow graph (top level of the DR-plan) at any stage intersect on at most a trivial subgraph. FA does this by repeatedly performing 2 operations each time a new potential cluster is isolated. The first is an i ,/.,t I i,,n ,, of the found cluster. In general, a new found cluster N is enlarged by any cluster D1 currently in the flow graph, if their nonempty intersection is not a rotationally symmetric or trivial subgraph. In this case, N neither enters the cluster graph nor the DR-Plan. Only N U D1 enters the DR-plan, as a parent of both D1 and the other children of N. It is easy to see that the sizes of the subsystems corresponding to both N U D1 and N are the same, since D1 would already be solved. When the DR-plan finds (Figure 4-3)the cluster C2 after C1, the DR-planner will find that Ci can be enlarged by C2 The DR-planner forms a new cluster C4 based on C1 and C2 and puts C4 into the cluster queue, instead of putting C2 to cluster queue. The second operation is to iteratively combine N U D1 with any clusters D2, D3,... based on a nonempty overlap that is not rotationally symmetric or trivial. In this case, N U D1 U D2, N U D1 U D2 U D3 and so on enter the DR-plan as a staircase, or chain, but only the single cluster N U D1 U D2 U D3 U ..... enters the cluster graph after removing D1, D2, D3 .... Of course, both of these processes are distinct from the original flow distribution process that locates clusters. 4.2 Module-Rigidity: Characterization and Algorithm We give a recursive definition of 3D module-rigidity (along with a definition of module-complete DR-plans) and show that it is a natural and robust characterization. Then we sketch an extension of the FA algorithm in order to determine module-rigidity by constructing module-complete DR-plans. We follow with a number of examples of graphs that are dof rigid but not module-rigid. Let C be a 3D distance constraint graph. Let E, C1,..., Ck be proper sub : : of C. '\\' say that C,... C0k =>,c E (read: irmplies '.'"'. if by C 1 ,..., C,, ( ..: -.'' graphs (by adding additional edges), E becomes rigid. Analogo. we define =>A and =*"" asserting dof rigidity and module-rigidity (to be defined below) as the right hand side of the ::.. i'ation, respc i' . Let C be a 3D distance constraint graph. C is module-rigid if: Base case: it is trivial and dof rigid. Or the following holds. Let Q {C1,... C.,} be any maximal, module decomposition of C. This is defined as follows. Let ,* be the transitive closure of the empty set under 4",', that is, if there is a proper subgraph E of C such that either it is module-rigid, or there is some set of module-rigid proper subgraphs C1i,... Ck < ( C such that C1,..., CAk ,"c, E, then E belongs to *. Let Q be : subset {C1,..., ,,,} of '* such that Case 1: m 2; C, and (2 intersect on a nontrivial subgraph and their union induces all of C(. Or. the following holds. Case 2: Any maximal subgraph in n* nust contain one of the Ci in Q. Each of the C's is n n maximnal with r to the set Q in the following sense: the ( :.' clements ( '* that strictly contain C- intersect all the other subgraphs Cj, j / i on nontrivial subg. 1' TT: :: C is module-rigid if (1)5-iAdj dof( F (Cs)) < , _Q C ES where (recall) D is the number of dofs of a rigid body, and :- C) is either the number of dofs (negation of density) of C, if Ci is trivial; or ; ) D if C is nontrivial. Observation 4.2.1 F.. module-' .: is do/f and .., .. .' is module-rigid. next lenmmna shows the track : :: of the above characterization. Lemma 4.2.2 Let Q = {CI,..., Cm} be I:. set of proper -'J./l'.,l'l, of C that form a complete, maximal, module decomposition of C. This implies that if m > 2, then no pair of Ci intersect on more than a trivial -l'g,.,l'l, Thus m is at most O(n3), where n is the number of vertices C. Thus, the computation of the inclusion- exclusion formula in D. fil...(- 4.2 takes O(n3) time. Using the above lemma, the following definition shows the use of so-called module-complete DR-plans to efficiently determine module rigidity. A module DR-plan P for a 3D distance constraint graph G is a partial order where each node represents a subgraph in /,,,* or G itself, if G is module rigid. The ordering is by containment. These nodes are called module clusters (to be crucially differentiated from module-rigid subgraphs of G, which we call inherent module clusters). The leaves are the original vertices of G. Each node in the subDR-plan rooted at a node C represents a subgraph in "~m,,* or C itself, if C is module-rigid, or an inherent module cluster. If G is module-rigid, there is a single source cluster; if G is not module-rigid, the roots or sources form is a complete, maximal, module decomposition of G. A partial module DR-plan does not have to satisfy the conditions on the roots or sources. A module DR-Plan is module- complete if the set Q of child clusters of every module cluster C in P is a complete, maximal, module decomposition of C. A module DR-plan is typically defined to contain additional information by incorporating another partial order called the solving '.:" -.:l./; order, which is consistent with the module DR-plan's DAG order, but could be more refined. The intent is that module-rigidity of module clusters that appear later in the order depend on clusters that appear earlier. That is, the ordering reflects the number of applications of ="' required to find a module cluster. The next theorem shows that module-rigidity is robust. That is, the order of bottom-up construction of module(-complete) DR-plans is immaterial, a type of C('!ni, !l-Rosser property. Theorem 4.2.3 If a i'jl, G is module-rigid, then every partial, module(- complete) DR-plan for G can be extended to a module(-complete) DR-plan. The above discussion effectively lays out a tractable method for determining module-rigidity by computing module-complete DR-plans bottom up. This is done by extending the dof-complete DR-planner FA given in the previous section as follows. First note that by using FA we guarantee no false negatives, since module-rigid implies dof-rigid. We now sketch how to eliminating dof-rigid graphs that are not module-rigid. The FA DR-planner running on an input graph G uses DistributeCluster (flow) on the current set S of dof rigid clusters to isolate a dof cluster candidate C, and thereafter constructs a a complete, maximal, dof rigid decomposition of it, after which it decides whether a new dof-rigid cluster C has been found, using the dof-rigid characterization of Section 4.1. This is the key point of extension. We use the analogy between this dof-rigid characterization and the module-rigid characterization at the beginning of this Section. Inductively, we can assume that the current set S consists of module-rigid subgraphs of G or inherent module clusters. The method of construction of a complete, maximal, module decomposition Q of the candidate (inherent module) cluster C can be done without constructing ', "'*, by constructing a sequence of Qi's each of which satisfies the above conditions on Q, but with respect to "mCi (i.e, closure with respect to i applications of the ="' operation). This sequence reaches a fixed point at Q. We give examples that illustrate the use of module-rigidity. In Figure 4-4 Top Left: the graph is dof rigid, but not module-rigid, as seen by the complete maximal module decomposition shown. Top Right: module-rigid, but no pair of inherent module clusters shown forms a module-rigid subgraph, they do form dof-rigid Cl S1 y1 -V C3 --- --- A y v ii c ^ ^ - Sh CC4 ,C2 ,-'' Cl '" '( C2 b C6 C5 \\ C3 C4 ---. C1 C2 C3 C4 Figure 4-4: Examples where module-rigidity beats dof rigidity. subgraphs. Bottom: not module-rigid but dof rigid; complete maximal module decomposition and solving priority orders as follows: the pair C1, C2 is an inherent module cluster C5 but that C5 can be solved only after C3 is solved; That is, before the virtual edge (c, d) is added, Ci and C2 would not be picked up together as a cluster candidate. Similarly, it will also determine that Cs, C3 form a cluster C6, but solving priority order shown. Bottom Right: module-complete DR-plan for left constraint system with 2 sources or roots: C6 and C4. Figure 4-5 shows a classic graph given by Crapo et al. [20, 21], with I,!:n, -," which is not module-rigid but is dof rigid. A complete maximal, module decomposition is shown. The middle cluster C2 is not an inherent module cluster, although C1 and C2 are. Figure 4-5: Classic Hinge example: not module-rigid, but dof rigid A question that immediately arises is to relate the characterization given here to rigidity matroids and standard conjectures on combinatorial rigidity characterizations for 3D [19]. CHAPTER 5 CONJECTURE OF ANGLE CONSTRAINT SYSTEM Laman shows a combinatorial characterization of 2D distance constraint system [18]. When other constraints are involved, for example, ,inl there is no combinatorial characterization. In this chapter, we first give a combinatorial rigidity characterization of a class of angle constraint system. We then show this characterization is not sufficient for the general angle constraint system. Thereafter, we propose a conjecture to determine the rigidity of the general angle system. 5.1 Definitions Point: point p E R2, is represented as (x, y). Angle Constraint: the angle constraint between 2 ordered pairs of points, (Pli, P2i) and (Plj, P2j), satisfies that cos 0 (Pli,P2i)*(PlP2j) (x2i-Xli)(x2j-Xlj)+(Y2i-Yli)(Y2j-Ylj) I(Pli,P '' Pj,P2j) (X2i-Xli)2 ( y2i-Yli)2 (x2j-Xlj)2 (2j- lj)2 CO ilj2 +(U -Y Geometric Angle Constraint System: a geometric system in which the objects are finite points and the constraints are finite angle constraints. Solution: the set values of the variables xi, yi of the system that satisfy the constraints Valid Solution: the solution of a geometric system which does not make any angle 0 or points coincident is called a valid solution. Angle Graph: For a geometric angle constraint system, the graph in which the vertices represent the pairs of points and the edges represent the angles is called the angle graph (Figure 5-1). Angle C,. 1. For a geometric constraint system, if there is an angle cycle in its corresponding angle graph, we -w this angle constraint system has an angle p v12 S P 13 v14 v23 P\ ,' p4 \ \1 v24 v34 P3 O 6 Figure 5-1: Geometric angle constraint system and the angle graph. cycle. If the angle graph has one more edge between v13 and v14 (Figure 5-1), its corresponding angle constraint system has an angle cycle. Angle Pseudo C;0. 1 For a geometric constraint system, if there is an angle cycle with one angle missing, we i- this angle constraint system has an angle pseudo cycle. The system (Figure 5-1) has an angle pseudo cycle. Angle C/l:'., For a geometric constraint system, if there exists n points (n > 3) in which any two pairs of points has an angle constraint between them, we -i the system has an angle clique. Implicit Angle C; 1. In an angle constraint system, for an angle cycle consisting of assigned angles 01 ... Os and unassigned angles 1i ... 7<', s > 0, t > 0, in its corresponding angle graph, if there exists 0i Sj for i / j, where S is the minimal 4 dof subgraph containing 7j, we -i- this angle constraint system has an implicit angle cycle. When t = 0, implicit angle cycle turns out to be an angle cycle. Degrees of Freedom of Primitive Geometric Objects: degrees of freedom (DOF) describes flexibility of motion. It is the number of parameters of the object which may be independently varied. In 2D, a point has 2 DOF. Degrees of Freedom of a Geometric System: For a geometric system G, its DOF equals ,peG DOF of object p eC DOF removed by constraint c. In Figure 5-1, the system has 4 points and 3 angle constraints. Each point has 2 DOF and each angle constraint removes 1 DOF. So the system has 5 DOF. 1 7. .. Degrces of Freedom (adof): For a geometric system, count the dof of the sub that are ::.1. cliques as 4, then do the inclusion-exclustion 1 counting, the total dof is called listedd '. ees of freedom. C i .' i nden t: Let S be the set of angles of a geometric angle constraint S'Ti .. system (G' is generically independent (T there is an assignment S* = ( ,..., ) of values to the set S such that (C has a valid solution and for such assignment S*, there is a : ',1 ,orhood of S*, that is, Is 1- x ... x i6,, where the J1e (0, -, .^ + e) are intervals of angle values, : : some e > 0, such that : ...- tuple < values ( ,.... ,0') E Is, G has a valid solution. Notations: We use GC' to denote a geometric angle constraint system with n i:ints; G,, to denote the .:: angle '. of G"' p to denote the point in Ga: v to denote the vertex in (,. 5.2 One Combinatorial Characterization In this section, we give a combinatorial characterization of the angle constraint that can be obtained I.- the following construction. Gradual Construction: Starting with a pair of points, add a point with at most 2 angles connecting it with the constructed system at each step until all i '..:i ; are added. If an angle constraint system G' can be constructed by gradual construction, it is ... constructible. Theorem 5.2.1 An .' constructiblhe cgeoetric .'.' constraint :7 is .:' it does not have . Proof We prove it by induction on number of points n of CG: 1. Base case: when G'l has ci- 2 points, it is obvio:: i generically independent v{n+l} v{n+l} G n G n Figure 5-2: The new point pn+l is at the circle or at the radial Gn Figure 5-3: Two new angles: 61 and 62 2. Assume GC has T angles and is generically independent, because CG is gradually constructible, we can find a point pn+l with at most 2 angles connecting it with GC. Case 1: there is no ,.'/,. connecting Pn+ with GC. Obviously, the case holds. Case 2: there is an ,.',1/- connecting pn+1 with GC. Pnj+ could be at the circle or at the radial determined by the angle 6 (Figure 5-2). It is easy to know there exists a value of 6 which together with the T angles which make GC have a valid solution that make G(+1 have a valid solution. From hypothesis we know, when G' has a valid solution, these is a corresponding rectangle IT such that GC with any tuple of values (06,..., 0') E IT has a valid solution. As the position of pn+l is continuous, there exists an interval Is for 6, such that G +1 with any tuple of values in IT x 6I has a valid solution. So, GC + is generically independent. Case 3: there are 2 1,1- i., connecting pn+l with GC. Call the 2 angles 61 and 62. We prove case 3 in the following 3 subcases. We call the angles involved in Pn+1 new angles and the others old angles. Gn Figure 5-4: One new angle 61 and one old angle 62 Subcase 1: Both 61 and 62 are new 'ii1 (F.:,i. 5 3). The position of p+i should be at the intersection of two circles which are determined by 61 and 62 respectively. For a T E IT, choose 6i E (0,e), c 0 to ensure two circles intersect. If for 6*, pn+i is in a corresponding line of a pair of points of GC, we choose ~ equal this 6* to prevent pn+1 lie in this line. After proceeding with all the lines, we ensure pn-+ does not lie in any line of GC. If 6*, pn+l coincidents with a point of GC, we choose cT equal this 6* to prevent pT+l coincident with this point. After proceeding with all the points, we ensure pT+l does not coincident with any point in GC. Let I = n (0,T) and 1A I6 x I262. We know GC with any tuple of values in IT x I1 has a valid solution. So GC+, is generically independent. Subcase 2: 61 is a new w,.',ll. and 62 is an old i,'ll. (Figure 5-4). The position of P,+1 should be at the intersection of the circle which is determined by 61 and the radial which is determined by 62. For a T E IT, choose 61 E (0, ct), T 0. 62 E (C i7). C ->- 7 to ensure the radial intersects the circle. If for 6 pn+i is in a corresponding line of a pair of points of GC, we choose (T equal this 6* to prevent pn+l lie in this line. After proceeding with all the lines, we ensure pn+l does not lie in any line of GC. If 6*, pn+l coincidents with a point of GC, we choose ( equal this 6* to prevent pT+l coincident with this point. After proceeding 5gi with all the points, we ensure pmn+ does not coincident with any point in GC. Let I,1 = nTT(oCr) and 62 n= TIT( ,,) and l Ist, x I62. We know G + Gn Figure 5-5: Two old angles do not share a pair of points containing p,+l 0n / d G d-t2 Figure 5-6: Two old angles share a pair of points containing pn+l with any tuple of values in IT x 1, has a valid solution. So G'+, is generically independent. Subcase 3: Both 61 and 62 are old i,lll, (F:lui'' 5-5). The position of pn,+ should be at the intersection of two radials which are determined by 61 and 62 respectively. For a T E IT, choose 61 E (0, Ce), eT -- 0 and choose 62 E (C, 7r), cT makes 11 I| 12 to ensure two radials intersect. If for 6 pn+1 is in a corresponding line of a pair of points of GC, we choose 4T equal this 6" to prevent pn+i lie in this line. After proceeding with all the lines, we ensure pn+i does not lie in any line of CG. If for 6 pn+l coincidents with a point of GC, we choose c equal this 6" to prevent pn+l coincident with this point. After proceeding with all the points, we ensure pn+1 does not coincident with any point in GC. Let 6, = nTr, (O, ) nd 2 iTIT (,7r) and A = Is x I 2 We know Gn+,I with any tuple of values in IT x IA has a valid solution. So GCi+, is generically independent. Note that 61 and 62 can not be 2 old angles sharing a pair of points containing Pn+i (Figure 5-6), because G has no implicit angle cycle. From above, we know GC+, is generically independent in case 3. k)o Figure 5-7: Generically independent system that is not gradually constructible I-------------------- a b c e g If S Figure 5-8: Implicit angle cycle is not the only type of dependency. So if G is gradually constructible and has no implicit angle cycle, it is generically independent. On the other hand, if G is not gradually constructible, it may still be generically independent. G (Figure 5-7) is not gradually constructible because each point has 3 angles involved. But G is still generically independent. The implicit angle cycle is not the only type of dependency in the angle constraint system. Angle 1 (Figure 5-8) is fixed by angles a, b, c, m and angle j is fixed by angles f, g, h, i. Then the subgraph S actually has 3 degrees of freedom because it has 5 angles (d, e,j, k, 1) fixed. Thus S is not generically independent. Because detecting the implicit angle cycle is not sufficient to tell whether an angle constraint system is generically independent, we propose a rigidity conjecture. 5.3 Observations The following two observations are crucial for the proof of the conjecture. First, we give an algorithm that is essential in our discussion. Verifier: Taken a geometric angle constraint system G as input, 1. If G has a 3 or dof subgraph, return false 2. If there exists an angle cycle which is not contained in an angle clique, return false 3. Find an angle pseudo c(!- if it exists. th. :: the missing angle. 4. If there exists one subgraph with 3 or fewer ...i.. return false. 5. Find a 4 .: isu' : i: that is not an angle clique if it exists. .:. : all the unassigned angles . 6. repeat 2, 3, 4 and 5, :: : no more angles are assigned, return true Note that Verfier -.- have different <... utational .. .'l based on which angle ( chosen in Step 3 and which 4 adof sugrn: : chosen in step. Observation 5.3.1 For an 7 that is in a path P, of V c r,, it will be --. .' in : path 1 ,' unless V 'r T' returns false . ".,re it, cn ', 7.' Assume there exists a path P in which 7 is not assigned and Verifier returns true. Pb does not assign all the angles assigned in Pa otherwise 7 is also assigned in Pb violating the assumption. Let 0 be the first angle assigned in P0 but not assigned in Pb. All the angles assigned before 0 in P- that are necessary for assigning 0 are also assigned in Pj,. Verifier only returns true if there is no more angle to be assigned. But at the end < Pi,, Verifier can still assign 0 because all angles necessary assigning 0 have been assigned in Pb. contradicts the .. >tion that Verifier returns true at the end of Pb. Observation 5.3.2 All '.'.. returnT the same result. Assume there are two paths PI and -b that IP returns false and IP returns true. Pb does not assign all the angles assigned in P, otherwise PV will also return false. Let 0 be the first angle assigned in PO but not assigned in Pb. All the angles assigned before 0 in P) that are necessary for assigning 0 are also assigned in Pb. Verifier only returns true if there is no more angle to be assigned. But at the end of Pb, Verifier can : :1- assign 0 because all angles necessary for assigning 0 have been assigned in Pb. That contradicts the assumption that Verifier returns true at the end of Pb. Observation 5.3.3 All paths that return true assign the same set of il, Assume there are two paths Pa and Pb that both return true but they assign different sets of angles. Let 0 be the first angle assigned in Pa but not assigned in Pb. All the angles assigned before 0 in Pa that are necessary for assigning 0 are also assigned in Pb. Verifier only returns true if there is no more angle to be assigned. But at the end of Pb, Verifier can still assign 0 because all angles necessary for assigning 0 have been assigned in Pb. That contradicts the assumption that Verifier returns true at the end of Pb. Observation 5.3.4 Verifier has C'I,,, I/-Rosser 1p'*/' '/ i From Observation 5.3.2, we know Verifier has ('0lir, !i-Rosser property. Observation 5.3.5 Verifier has y. ./;;,.,;.,/d time ,..';,,l. ii/, To use MFA algorithm find 3 or fewer adof subgraph in step 1,4 and the 4-adof subgraph in step 5, it requires O(n3(n + m)) (n is the number of vertices, m is the number of edges). To use depth-first search to find angles in step 2, 3, it requires O(n + m). Verifier runs at most n4 iterations because there are at most n4 angles and at least one angle is assigned at each iteration, then the time complexity is O(n'(n + m)). Actually the upbound of the time complexity is very loose. If the verifier returns true for a geometric angle constraint system, we v- the system passes the verifier. Then we have the following observations. Observation 5.3.6 If a geometric ,;.'l. constraint system G fails the verifier, it is not gene .'.'ll/; independent. If G fails the verifier at step 1, it is obvious that the angles in the 3 or fewer dof subgraphs are not independent to each other, thus G is not generically independent. If G fails at step 2, then for ...- angle of the angle .. i. its value is fixed by every setting of values of the other angles in the angle cycle, thus G is not generically : '. pendent. If G fails at step 4, it is obvious that the angles in the subgraph with 3 or fewer adof are not i. '*. endent, thus C is not generically :.. Icndent. Observation 5.3.7 Given n angle constraCint : iin 2D with k(> 0) dof, there is at least one :-. ,',' involved in at most 7 Let im be the number of angles involve in the point that has the least number of angles involved. As an angle involves in at most 4 points and G'( has k < the following ine. holds: mn n < ( 4 (2n k). Ti. we get ?n < 8 [4 k/n]. So m < 7. 5.4 Conjectures For the following three lecturess, the first two are used for the i of the third one which is our 2D rigid characterization ..'ecture of angle constraints system. Conjecture 5.4.1 For an ... '. constraint G; with k(> 4 i x) dof that the '' r, there exists an x-tuple of. :. :1' such that it does not Tntake the '.. f '' the 'r " Partial Proof: Let G'~ be the ith maximal 4 i : : in G' which has at least 3 points. Si this pr-o 'ty holds: Gs, and Gs are <' pointed for ..-. i -r j, that is G', and G'C share at most one point. If Gs, and Gs, share a vertex, G',. U G' has 4 i n angle involves in both G',. and G(" TI: violates the statement G,. and Gr are the maximal 4 dof subt- ---(es in GC- Or G(, U G.;, has 3 or fewer dof if at least one angle involves in both G' and G( This is ::: 1 t because no : 1 : has 3 or fewer dof in G;'. So the property holds. G,, has t trees: n(n 1)/2 (2n k) = ((n 2.5)2 6.25)/2 1 k. So when k is given, t is increasing for n > 3. Note that the tree could be consist of (c 1 one vertex. When n 3, t .k 3 > x + 1, that is for a given G,, with k dof, it has at least x i 1 trees. W\e give an algorithm to find the .:-tuple <.' : ified angles without forming an angle ( 1. or making ..:-* subgraph 3 or i- 0 dofs. Here is its pseudocode. While x>0 Find maximal 4 dof subsystems If there is no $G_{S_i}$ in $G_n$ add an angle between a pair of trees arbitrarily else add an angle between (vl, v2), where vl is in $G_{S_i}$ and v2 which is in another tree of vl and outside of $G_{Si x-- end If there is no GC' in G' at current stage, then we ca.n choose the angle in the x-' 1. of unsp. : : i angles between a pair of trees ar : : : without forming an :. .1. : or making subgraph 3 or fewer dofs. If there is a G'C, because the trees can't be totally contained in Gs, all together, we can al---. -.:: such a pair (v1, 'a2) such that. vi is in Gs, and v2 is in another tree of v, and outside of Cs,. i ensures it does not form an angle cycle. And because Gs s are 1.. pointed it does not make :: ;-: 1 :3 or fewer dof. We still need to prove G-, with .. ying that x-tuple the verifier. Conjecture 5.4.2 For an '.: constrint s '. G>+ that the iver .- ifn > 4, m is the number of angles involved in .. : that involves the least angles, then there exists an .... angle 7 in G', such that . one of the m '. involved in ; : to G, and .. '. in pG to get G1,n1 1 n+ i passes the Partial Proof: From the proof of Observation 5.3.7, we know n + 1 > F4k/(8 m)]. When m = 4, n > 3. But when n = 3, no G' satisfies that the number of angles involved in the point that involves the least angles is 4. In fact, it can be at most 3. So n > 4. When m = 4... 7, n > 4. Then we know G' has at least 4 points. G' has k, = k + (m 2) dofs. And G, has t = n (n 1)/2 (2n kT) = (n2 5n)/2 + k, trees. When n = 4, t = m+ (k 4) > m. Then the m 1 edges of Gn+1 \ G, is not enough to connect all these t trees to be a tree of G+,1. Then we know the vertices in G, can't be all in a tree of G,+1. Let G' be the ith maximal 4 dof -i1ii--l. in G" + which has at least 3 S i --- points. If pn+l is not in any G', then we add 7 by the way similar to Conjecture 5.4.1. If pno+ is in a G', we add 7 between the (11, 12), 11 is the edge in GC and 12 is in G' \ G' and 11 and 12 are not in the same tree of G This pair does exist because the vertices in G, can't be all in a tree of G, So G"s has no angle cycles and no subsystem has 3 or fewer dof. Also, we need to prove G passes the verifier. Conjecture 5.4.3 For an ,';,l,/ constraint system G" in 2D that passes the verifier, it is genet ,'/// independent. Partial Proof: Case 1: there exists a point pn+l has no ,1;.l/. involved. Case 2: there exists a point Pn+i which has 1 I,,;/l. involved. Case 3: there exists a point pn,+ which has 2 wig1, involved. In these 3 cases, G+,l) is generically independent. Refer to the proof of Theorem 5.2. Case 4: there exists a point pn+ which has m(> 3) or more ,..gl involved. ASSUMPTION: For an angle constraint system sG in 2D with 4 dof and no angle cycles and no subsystem has 3 or fewer dof, and G" with aI = I x I2 x ... x I has a valid solution, Ii is the interval of the specified angle i in G", s is the number of specified angles, for an unspecified angle 6 specifying which does not make any angle cycle, let 7 be the specified angle which is in the minimal 4 dof -,1ii.- ,-. in that contains all the lines participating 6, then for any v* E I\,, as 7 varies in I,, there exists a non-zero sized 6I for 6. If m = 3, call the three angles 61,62 and 63. From Conjecture 5.4.1, we know that there exists an unspecified angle 7 in GC that does not form an angle cycle involving some subset of the specified angles or make any -, ii'.-l ii 3 or fewer dof. Unspecify 63 and specify 7 to get G i. From case 3, we know GC with la = I x 12 x ... x ... x I x 16s x I62 has a valid solution, s is the number of angles in GC. And the minimal 4 dof -, 1i,--l. i:: of 63 must contain 7. Then from the assumption, we know for any v* E I\a, as 7 varies in I,, there exists a non-zero sized Is for 63. Let I, E I, and I|7l 0, i is the specified angle in G i. As v* varies in ' I does not change much because I', is relatively small. Then la3 n* j'\ I'K has non-zero size. Then we know GC,1 with 'I\, x 163 has a valid solution, so G'+I is generically independent. If m = 4, call the 4 angles 61,62, 63 and 64. Choose 7 as described in Conjecture 5.4.2. After specify 7 and unspecify 64 to get GCsI, and choose I similar to the case when m = 3, we know I64 that has non-zero size exists. Then GC, with ~\' x I64 has a valid solution, so G'+, is generically independent. We can also do the similar job for m 5... 7. CHAPTER 6 SOLUTION SPACE NAVIGATION In this chapter, we study the well-documented problem of systematically navigating the potentially exponentially many roots or realizations of well-constrained, variational geometric constraint systems. We give a scalable method called the ESM or Equation and Solution Manager that can be used both for automatic searches and visual, user-driven searches for desired realizations. The method incrementally assembles the desired solution of the entire system and avoids combinatorial explosion, by offering the user a visual walkthrough of the solutions to recursively constructed subsystems and by permitting the user to make gradual, adaptive solution choices. We isolate requirements on companion methods that permit (a) incorporation of many existing approaches to solution space steering or navigation into the ESM; and (b) integration of the ESM into a standard geometric constraint solver architecture. We address the latter challenge and explain how the integration is achieved. And we clarify these requirements essential and desirable for efficient, meaningful solution space navigation. Also, we sketch the ESM implementation as part of an opensource, 2D and 3D geometric constraint solver FRONTIER developed by our group. 6.1 Companion Methods Requirements In order to describe the ESM method and how it can be integrated into any geometric constraint solver (Figure 6-1), it is necessary to give well-defined essential and desirable requirements on the companion methods mentioned in the Introduction for the ESM method to be effective. We additionally point to known literature that provide the companion methods that meet these requirements. 6.1.1 DR-Planner In order to give the DR-planner requirements, we first need some preliminaries about combinatorial analysis of geometric constraint systems. A geometric con- straint p Ill, G = (V, E, w) corresponding to geometric constraint system is a weighted graph with vertex set (representing geometric objects) V and edge set (representing constraints) E; w(v) is the weight of vertex v and w(e) is the weight of edge e, corresponding to the number of degrees of freedom (dofs) available to an object represented by v and number of degrees of freedom removed by a constraint represented by e respectively. For example, Figure 1-1 shows a 2D constraint systems and their respective dof constraint graphs. Figure 1-4 shows a 3D constraint systems whose graph have vertices of weight 3 (points) and edges of weight 1. Note that the constraint graph could be a iT;,/' ,,'/l, each hyperedge representing a constraint involving any number of vertices. A vertex induced subgraph represents a subsystem of the entire constraint system. The subgraphs can be classified as being underconstrained, well-constrained, or well-overconstrained - the latter two are called rigid subgraphs or clusters. The meaning is that the corresponding subsystems have the corresponding constrainedness properties for generic parameter values. In many cases, this classification of the subgraphs can be done purely combinatorially, using the dof weights, but ignoring geometric parameters such as distance, angle and so on attached to the constraints. As mentioned in the introduction, any effective constraint solver combinatorially develops a plan for recursively decomposing the constraint system into small subsystems, whose solutions obtained from the algebraic/numeric solver can be recursively recombined by solving other small subsystems. Such a recombination is straightforward, provided all the -,l.-\- 14.-I generically have a finite number of solutions, that is, they are generically rigid. The DR-planner is typically a graph algorithm that outputs a decomposition- recombination plan (DR-plan) of the constraint graph. In the process of combinatorially constructing the DR-plan in a bottom up manner, at stage i, it locates a well-constrained subgraph or cluster Si in the current constraint graph Gi, and uses an abstract -.:,,,/i.: / ,rl/, n of Si to to create a transformed constraint graph Gi+l. While we rely on a rough correspondence between well-constrained subgraphs or clusters and rigid subsystems, the exact nature and limitations of this correspondence is a complex issue, especially in 3D, and is discussed later. Formally, a DR-plan of a constraint graph G is a directed .,. i' i, graph (DAG) whose nodes represent rigid clusters in G, and edges represent containment. The leaves or sinks of the DAG are all the vertices (primitive clusters) of G. The roots or sources are all the maximal clusters of G. For well or well-overconstrained graphs, the DR-plans have a single source, and for underconstrained graphs, the DR-plans have multiple sources. There could be many DR-plans for G (Figures 1-1, 1-4). Generally, for overconstrained clusters, a DR-plan is required to also contain information about which sets of overconstraints can be removed while retaining the rigidity of the cluster. These are called reducible overconstraints. Reducible overconstraint dir. ./11; associated with a cluster C refer to those that connect primitive elements occurring in different child clusters of C. Overconstraints that lie within any child cluster Ci are associated with that Ci, not with C. We describe essential and desirable properties that a good DR-plan(ner) should have for it to be useful in conceptual navigation of the solution space of general, cyclic 2D or 3D systems. It is desirable to be able to apply the ESM method to a large class of 2D and 3D constraint systems. For the method to work for any such class, it is essential that the DR-plan's nodes should correspond to rigid clusters or generically rigid subsystems, and all choices of reducible constraints of overconstrained clusters should be available. Recall that these clusters and their reducible constraints are picked by the DR-planner using just the constraint graph, that is, using purely combinatorial properties of the constraint system. To illustrate the level of challenge involved in doing this: to date, there is no known, tractable, characterization of generic rigidity of distance constraint (sub'-i--, if,, for 3 or higher dimensions, based purely on combinatorial properties of the constraint graph [19, 22], although several conjectures exist. Moreover, there are no known combinatorial characterizations of 2D rigidity, when other constraints besides distances are involved. It should be noted that in 2D, Laman's theorem [18], gives such a characterization if all geometric objects are points and all constraints are distances. However, the standard generalization of the Laman property for 3D, also called dof- .:1.:l/,I': is inadequate: while all rigid systems are dof-rigid, the converse is not the case in 3D. Standard counterexamples are systems that contain constraint dependence or inexplicit overconstraints hidden in so-called " I ,i ,i i- or !! ,!;, -" [19, 20, 21] (Figure 1-4). In fact, these are the only known types of counterexamples. The module-rigid Frontier vertex algorithm described by Sitharam and Zhou [12] and implemented in FRONTIER [15] is the first known polynomial time DR-planner that is not fooled by any known type of constraint dependence, specifically, the '- iin or hliii;u" type constraint dependence. It gives a DR-plan whose nodes are so-called module-rigid clusters. It is an open question whether there are any nonrigid subgraphs that are module-rigid. No counterexamples are known. The module-rigid Frontier vertex algorithm is crucially based on the so-called dof-rigid Frontier vertex algorithm analyzed by Lomonosov and Sitharam [2, 9, 24]. While the latter does not detect bananas and other constraint dependence, it is the first algorithm that gives a complete DR-plan, that is, a complete decomposi- tion of each cluster into maximal proper subclusters. A generalized version of this decomposition is the key starting point for detecting module-rigidity [12] and is also crucial for obtaining a tractable DR-plan that aids efficient solving (discussed next). The basic idea for the dof-rigid Frontier vertex DR-planners (without a complete formal analysis and without the fully general completeness property) was presented by Hoffmann et al. [6]. The method for obtaining all possible sets of reducible constraints for overconstrained clusters of dof-rigid Frontier vertex DR-plans, both for 2D and 3D, and modifying the DR-plan once they have been removed, is presented by Hoffmann and Sitharam [8]. The size of a cluster in a DR-plan is its fan-in (it represents the size of the corresponding -, 1i-i--I ii once its children are solved). Since the algebraic-numeric solvers take time exponential in the size of the subsystems they solve, and the number of solutions is also typically exponential, minimizing the size of a DR-plan is essential to the ESM method presented here. An optimal DR-plan is one that minimizes the maximum fan-in. It is shown by Lomonosov and Sitharam [9, 24], that the problem of finding the optimal DR-plan of even a 2D distance constraint graph is NP-hard, and approximability results are shown only in special cases. Nonapproximability results are not known. To get around this difficulty, we use the following alternative property. A tractable DR-plan for systematic navigation should ensure that each cluster C should be accompanied by a a small set of its children Ci that form an optimal covering set of maximal clusters properly contained in C. A covering set of clusters is one whose union contains all geometric elements within C. The size of the optimal covering set for C is the size of the cluster C, that is, its fan-in in the DR-plan. For scalability of the ESM method, we restrict ourselves to constraint graphs for which this size is typically constant independent of the original graph size. The ol'i.:h,,i./'l; here refers not only to the size, but also the algebraic complexity of the active constraint system for solving C, given the solutions of its child clusters. This optimization is the function of the combinatorial cluster-system optimizer (CCO) method (Figure 6-1) described later in this section. Note that in order to choose the optimal covering set of child clusters for a cluster C, the CCO needs as input a generalized complete decomposition of C into maximal proper subclusters, which was already seen to be an essential requirement for the generality of a DR-planner, now seen to be essential for tractability as well. Another crucial property of a DR-plan is its width i.e, number of clusters in the DR-plan. It is essential that this be small, preferably linear, certainly polynomial, in the size of G: this reflects the complexity of the planning process and also affects the complexity of the solving process that is based on the DR-plan. The module-rigid and dof-rigid Frontier vertex DR-planners analyzed by Sitharam and Yong and Lomonosov [2, 9, 12, 24], and implemented in FRONTIER [15], are the only ones that have quadratic (typically linear) width and output complete maximal decompositions of each cluster, whose optimal covering sets have typically constant size. For the user to effectively navigate the solution space just by inspecting the solutions to subsystems in the DR-plan, it is desirable that these subsystems include those (well or well-overconstrained clusters) that occur in an underlying conceptual decomposition. This is a feature, part or subassembly hierarchy that captures design intent, that is, a partial order, typically also represented as a directed .,, i' 1 graph. This incorporation of such an input decomposition is crucial also in order to allow independent and local manipulation of features, parts, subassemblies or subsystems within their local coordinate systems; for allowing the user to dictate Outer CAD System S____ Front End Eqn-Soln GUI Adaptor Manager (ESM UTU Navigator Const-Eq Combinatorial Proc (CEP Cluster-System Poc EP Optimizer(CCO). Simple DR- Algebraic Solver Planner Solver Figure 6-1: Standard geometric constraint solver architecture. the order of resolution (and solution space inspection) of the features, parts, subassemblies or subsystems. For example, parametric constraint solving can in fact be achieved as a special case, where the order is a complete, total order. In addition such a solving j ,.: ,.:/; order arises naturally in the case of module-rigid DR-plans [12] discussed in Section 6.1. These include clusters whose clusterhood depends on first solving other (nondescendant) clusters in the DR-plan. 6.1.2 Combinatorial Cluster-System Optimizer (CCO) This method is described in detail by Sitharam et al. [14]. Here we give its requirements and output. The CCO method takes its input from the DR-plan (Figure 6-1) one cluster C at a time, along with a complete maximal decomposition into subclusters Ci, and complete information on reducible overconstraints directly associated with each Ci and with C. The CCO method's output consists of: (i) a covering set of clusters among the Ci's that will be used for solving C, (ii) a subset of the cluster overlap constraints for the chosen covering set which together with a well-constrained set of original constraints, result in a system of algebraic equations (a) that is stable or independent and (b) whose complexity that is, number of variables and degree has been combinatorially minimized; typically this complexity is constant, independent of the size of the constraint graph. Note that the actual algebraic system for solving C is never generated or manipulated by the CCO method. All the output requirements are essential for tractability of solution and thus for the ESM method presented here, and are proven by Sitharam et al. [14], except for the Requirement (ii)(a) which is proven by Sitharam [48]. 6.1.3 Algebraic Solver This could be a purely algebraic or numeric solver. An essential property of the Algebraic Solver (Figure 6-1) is that it should be reasonably efficient in practice; numerically stable; output all real solutions to the input polynomial system; uses interval arithmetic, that is, can deal with interval values for the coefficients of the polynomials; and can search for solutions within specified intervals for each variable. Desirable properties depend on types of navigation constraints that we permit: incorporating overconstraints during solving to prune solution space; dealing with semi-algebraic sets, that is, dealing with polynomial inequalities during solving. The solver [49] satisfies all of these requirements. 6.1.4 Graphical User Interface (GUI) Interaction with the user through the GUI is central to the ESM method, and benefits from a well-designed GUI. The GUI requirements however are easy to describe: adequate text and menu interaction as well as 2D and 3D canvases to enable the following. The GUI is used to input: the constraint system and a conceptual decomposition or feature hierarchy, (these could have been partially solved and stored from an earlier session), any updates to these, and interactive user input during the constraint parsing and equation building stages and realization space navigation. The GUI is also used to modify the object, constraint and feature repertoire or constraint-to-equation parse tree. The GUI is used to output: the DR-plan of the input constraint system consistent with the input conceptual decomposition, the system of equations as they are being parsed in stages from the constraints, the -, i ,-i-- in solutions corresponding to the nodes of the DR-plan, a realization of the partially solved system as the navigation proceeds, and the final realization. A good example is the GUI implemented in FRONTIER [15, 50] and shown in the figures in Section 6.2. 6.2 Navigating the Solution Space This section has two parts. The first describes the overall Equation and Solution iJ.4,,j,r. r (ESM) navigation method and the common, augmented DR-plan datastructure used by this method and its companion methods that aids efficiency. The second part describes its integration into a standard constraint solver architecture (Figure 6-1) specifically, the dataflow, communication with the companion methods that satisfy the requirements given in Section 6.1, and a sketch of its implementation in the FRONTIER constraint solver [15]. 6.2.1 The Basic ESM Method The ESM takes as input the constraint graph, the DR-plan output of any DR-planner as in Section 6.1; a stable and combinatorially optimized system of constraints for each cluster in the DR-plan that is, the output of any combinatorial cluster-system optimizer as in Section 6.1; and finally navigation constraints, such as redundant or consistent overconstraints and chiralities. It generates an algebraic system of equations and inequalities for each cluster. Then, using its access to any algebraic-numeric solver as in Section 6.1, it offers the user a tractable, interactive visual walk-through of the solution space by outputting to the GUI and storing in the augmented DR-plan datastructure the partial realizations or solutions of the cluster subsystems in an efficient manner. Interactive input to the method includes the user's choice of solutions to the clusters and : 1 "i : navigation constraints added on by the user, using which the .i i method recursively assembles the desired solution of the entire system. met hod provides fully :. i- k backtrack ing redoing the user's choices starting from -- cluster. Finally, the method can be run ::: vy automatically, without :.-- user intervention, to output a realization of the entire constraint S including nav~i constraints that are:: :: . Ti.. Solveforest routine can be merged into the Solvecluster routine. It is not necessary, except for clarity, and : dealing with the case where the DR-plan has several roots in case the input constraint i was underconstrained. S, rI.st (set S of clusters) [1) At top level of recursion S represents a '::.ilete decomposition of given system into maximal, well-overconstrained subsystems. 2) At lower levels of recursion, S represents an optimal coveri--. set output by : ] For each cluster C in S, Solvecluster(C) Return user-chosen solution U(C) for each cluster C in S. [efficiently stored in an augmented DR-plan datastructure, described below] Solvecluser r (C) [The input is : :'s output for C: 1) at bottom level of recursion, a well-constrained system involving primitive geometric elements; 2) at ,',I'. :" levels, anoptimal ( : :. set S of solved child clusters Ci, and a stable, independent set of constraints between the Ci's, partitioned into tree overlap constraints and non tree constraints] Solveforest (set S of Ci's) i (C) [Gets from user additional navigation constraints for C. 1) In some iterations, especially the first, 79 ^i, _. ':^- J 1 -- p" I 1i1& I I A _,. ,1:'. i .*I-- I PRiIius I Bdllncdllin 1 2 Nexl uiscalion.. J RPSohre I Re Pik Figure 6-2: Solutions of the cluster formed by the 3 circles (Figure 1-1). it creates algebraic system Alg(C) for solving C, using the user-chosen solution for each Ci and the non-tree constraints in the stable set of constraints between the Ci's, output by the CCO. 2) In some later iterations, it prunes any already existing set Sol(C) using the most recently input navigation constraints. 3) It Interacts with user further for massaging this algebraic system to reduce complexity] Algebraic-Numeric Solver(Alg(C)) [Returns solution set Sol(C) for C: rotation of each Ci w.r.t. its parent in the tree of overlap constraints given by CCO for C. The coordinate system of C is the same as the home or root cluster of the tree of cluster overlap constraints output by the CCO: the home cluster's rotation/translation is fixed to be the identity.] Communicate the set Sol(C) visually to user via GUI Until user is satisfied and picks a solution U(C) Return user-chosen solution U(C) This visual walk-through is an interactive process, permitting the usual 3D visual tools such as 1p I zooii- zooming, rotation to visualize the various solution possibilities, which cannot be fully illustrated by the figures here. The interested reader is encouraged to download and run the (opensource) software [15] (Figures 6-2, 63, 65, 66, 67). 80 Enter tre cluster ID of Ite cluster you want Lo re-solve ..1. G r, I ' I I .. ,- I - ,i '- '- "I Figure 6 3: Complete solution of root cluster (Figure 1 1) after choosing subsolutions. 1. Group ID ointrs to the child 2. Cluster Type Pointers to the cdre 3. Navagation constraints 4. Vertices 5. Points to non-descendant clusters 1. Tree of overlap constraints 1. Solutions 2. Non-tree overlap and original constraints 2. Solved flag Figure 6-4: The structure of the cluster. A cluster object represents a DR-planner's simplification [2, 6, 9, 10, 11, 15] of a well-constrained or a well-overconstrained subgraph, as well as its original subgraph. Figure 6-4 shows the contents of the cluster. 1. H: ,1,i ,;, field. These cluster objects are hierarchical and contain pointers to their sub-DR-plan, a directed .... i ll graph (DAG), i.e, the DAG interrelationships are stored within each cluster C as a list of its immediate children Ci. 2. Combinatorial descriptive fields. The cluster C contains more descriptive fields, 1) a group ID corresponding to a feature, if any, that corresponds to this cluster C in the input feature hierarchy. Note that not every feature in the input feature hierarchy is a cluster; however, every cluster feature must appear in the output DR-plan, if the DR-planner satisfies the desirable feature incorporation property discussed in Section 6.1. 2) Another important descriptive field is the cluster type that indicates whether this cluster is well-constrained, well-overconstrained (combinatorially), and a list of reducible overconstraints directly associated with C. that is, does not lie within any of the child clusters of C. 3) Another field contains other navigation constraints that are directly associated with C (these are discussed later in this section). 4) Another field is a list of original vertices or geometric primitives that constitute this cluster. 5) In the case of module-rigid DR-planners [12], as mentioned in Section 6.1, some clusters become clusters only after other (non-descendant) clusters have been solved, inducing a solving priority order. Thus a cluster contains pointers to such non-descendant clusters. 3. Fields giving input/output to CCO. The cluster C stores the input to and the output of the CCO companion method, that is, a complete set of maximal rigid clusters within C, of which a subset have been picked by the CCO as the children of C. The cluster structure contains a stable, independent system of cluster overlap and original constraints between the (primitive elements of) children of C. These are partitioned into two parts, 1) a tree of overlap constraints, with a home or root cluster and a set of non-tree overlap and original constraints. 2) The original constraints include all non-reducible constraints in C. 4. Fields describing 'il, ib.. :. solution. The cluster object has several fields that store the solved degrees of freedom of the cluster. A list of strings is stored, one for each solution of the cluster returned from the algebraic-numeric solver (given fixed chosen solutions to each of the child clusters). When the user selects a desired solution, that string is parsed into a list of actual degree of freedom values for this cluster. Multiple copies of the list are permitted, one for each parent of the cluster in the DR-plan, if they exist. Note that especially when the DR-plan incorporates an input feature hierarchy or partial decomposition, the DR-plan could be a true DAG with child clusters shared by several parent clusters. The final field is a flag that indicates whether the current Cluster C has been solved or not. A crucial feature of the datastructure that maintains clarity and < : . .,: '". nav igation and backtracking is that each realization of the cluster C is not stored as positions of each geometric element in the cluster this would cost linear time and f fo r each child cluster but rather it is stored as the homogeneous rotation/translations (a constant number of matrix entries) of C's child clusters that resolves the constraints between them. ( i, constraints are the non-tree portion of the independent set of constraints output by the CCO cO .. : method and the rotations are associated with the overlap tree output by the CCO companion method, expressing a child cluster C 's rotation with respect to another child cluster Cy of C, namely C)'s parent in the tree of overlap constraints output .- the OC' O companion method. Only when the position ~. a primitive geometric element v, in a cluster ( is needed is it actually 1 .. T.: could be needed either by the constraint equation processor (( .' I) of the I : method described next, in order to construct a stable : !. of equations for C's parent in the DR-plan, or to prune the solution set of C, or when a --ticular realization of C needs to be ( : to the user. T: ... ... of a primitive element v in C is obtained by taking a nested product of rotations. (i) T: "o::: : product is a product taken over ( : of the paths that lead ..... the current cluster to a leaf/sink of the DR- .E that corresponds to that geometric element. T:: 7 path is not unique if the geometric element v is shared ".. more than one cluster appearing in the DR .! ... but all these paths provide the same, unique position for the geometric element v: this is ensured by the CCO companion method. (ii) Each : :. : product is associated with a single cluster D along the above path: it is a product of rotation matrices that I D within the coc: :: :.! system of its ent E in the DR-plan. Ti: is, it is the product of rotations along the unique *'!. to D from the root or home p10' P11 p15 1 p15 p10 p12 P i3 p14 p p12 p17 M p14 p p17 SPleviois BdIlllai. n 1 i Bdurll: 2.i 2 I IN xl Sel.E BiuIIcalium. r I Rr.Sol I. Re Ri S ih | I R- PI. C.anr. Figure 6-5: N ii;, i iiig by bottom-up traversal of G79 in DR-plan (Figure 1-4). p13 p17 p13 p150p5 p8 *- 17 pl2 p102 pp16 p1 p14 p16 IPfl Il Pl &v li^s Blicallon 1 '2 r BdlurelIuI2 2 lNtx S erlifireialinr 1i ReS IIv R R R _h'Mv I I R-Pi.k 11 cancr. Figure 6-6: N ii;, iiiin by bottom-up traversal of G82 in DR-plan (Figure 1-4). cluster in the tree of overlaps for E generated by the CCO companion method (Section 6.1). Thus the entire DR-Plan object is simply a pointer to the root node of a list of clusters as they are described above. In case the graph is underconstrained, the root node is a dummy node, whose children are the actual sources of the DR-plan, i.e, a complete set of maximal clusters (Section 6.1). The CEP method is a crucial part of the ESM method and has the following functionality: It generates a system of equations and inequalities for solving a cluster C, using (a) the output of the CCO companion method; (b) the user-chosen solutions for the child clusters Ci of C; and (c) navigation constraints directly associated with C, including reducible overconstraints which have been isolated by the DR-planner. In order to obtain algebraic systems of low complexity, it helps to permit user interaction during the process of building the system corresponding to Figure 6-7: Complete solution of constraint system (Figure 1-4). a cluster. The CEP is additionally editablee" since it permits modifications to the constraint repertoire as well as the constraint parsing mechanism to be input by the user systematically and efficiently instead of having to rewrite the code for the ESM. The CEP's user interaction is effected via the GUI text interface, discussed in the communication and integration section. The CEP has a two stage operation. The first conversion stage converts edges or constraints in the non tree portion of the output of the CCO into algebraic equation strings understandable by the AlgebraicSolver. These equations are between variables describing the positions of the primitive elements in the child clusters Ci of C. The second substitution stage of the CEP expresses the position variables corresponding to a primitive element v in a child cluster Ci in terms of the variable rotation and translation of the cluster Ci within C's coordinate system obtained from the tree portion of cluster overlaps returned by the CCO. The CCO's properties described in Section 6.1 guarantee that the resulting system from the conversion and substitution stages is a stable, independent system of algebraic equations for solving C. Conversion stage of the CEP proceeds in steps, so that at any step, the user can interfere and make substitutions that make the system of equations simpler. The heart of the CEP is a datastructure and look-up system, the constraint-to-equation parse tree (C tree), which takes the unique characteristics of each e l 1 or constraint and searches an index of user-defined equations strings for a match. T. CEP organizes those strings into a n-ary tree representing a natural hierarc -- of constraints this conceptual hierarci 1 is also mirrored in the representation of constraints used by ..:. standard constraint solver CUI. use of this tree data structure makes the searching of the constraint list, and conversion of constraint to e :: .1c :both i: : ::H and more interactive. Moreover, this datastructure can be input or moi -. -. by the user, making it -. -y editable and extensible, as discussed below. Ti.. CEP tree is organized by ..... ... classes and sub-classes. For instance, consider a distance constraint between two points and a I -: -: constraint between a two circles. 1T. distance has the e.-i:: : (xl x-2)2 + (yl y2)2 , and the i :: : has the equation (xl ..)2 .- :" .)2 (rl r2)2, where :xl, x2, y1, and y2 are either the locations of the points or the centers of the circles, d is the distance between the points, and rl and r2 are the radii (<. the two circles. equations fall into the same .: .1'. class because they are in a sense generated by the same basic template or ,. ... .." In this ( .1 the tangency equation would be a sub-class of the distance e : : : since its L ] could be created with the substitution of the d variable in the distance equation with the string (rl i r2). This relatib :: !:: would be represented in the ( : :' tree I- two nodes, one node r each .. ... and the tan node r an te tangn node would be a child node of the distance node. To complete the data structure, each node stores (a) a list of edge ob'. which map to an eq nation and (b) either an e.i:: : or a list of substitutions which create the new <1 :1-1 equation from the parent equation. By storing only the substitution information, the .: .:ess (.' converting the list of constraints to a list of : -.ns is highly simplified. When the equation system for a current cluster C is being built one equation at a time, that is, when single constraints are parsed one at a time, the actual variable names c.. :1: in the output :: ; are irrelevant during the conversion stage !.. will be appropriately modified during the substitution stage described below. However, the process of -sing a single constraint can be extended to parsing a system of constraints en bloc. T:: requires more care with preserving identical and ,-. c variable names that .:.ear in < ... ..: constraints. Generating the corresponding equation set involves traversing several paths of the parse tree in lock i with substitutions being made along the way. Ti. user can interfere at .nr- stage and make substitutions to : : : the entire algebraic system. Ti: user interaction proceeds through a simple GUI text interface discussed in the communication and integration section below. Substitution stage of the CiP re-, : the .. '. variables corresponding to primitive element v in a child cluster (C which occur in the equation system obtained t. the conversion stage. Ti. variables are expressed in terms (a) the variable rotation and translation of the cluster C,- within C's coordinate ---.et m obtained from the tree portion of cluster c :' I. returned by the CCO. and (b) the already solved, constant position of v within C.'s local coordinate ..-.-. Both (a) and (b) require products of rotation matrices, as in the I :' ition of the efficient, augmented DR-plan datastructure. In the case of (b), a nested product is required, with the "c :- : duct taken over the clusters on : : :'1: in the DR-plan from C, to v. In the case of (a), there is only an :: .: .: ..'i::. i of the rotation matrices along the path to i -. : the home or root cluster in the tree of ( : constraints for C returned the CCO : : : : method. S -m constraints are used not o~"-' to prune the search during user directed navigation, but more importantly, to convert the 5 method into a (tractable) automatic search for desired solutions for any cluster of the DR-plan. These constraints can either be given apriori or interactively during a user-directed navigation, to prune unwanted realizations of the DR-plan's clusters encountered thus far. Leveraging the modularity of the ESM method discussed above that is, its separation from the DR-planner, and its applicability to any input DR-plan as in Section 6.1 permits methods developed along with other DR-planners for incorporating navigation constraints to be transferred practically unchanged to the FA DR-planner and the ESM methods discussed above, for example relational and engineering constraints for triangle decomposable systems given by Fudos and Hoffmann [42]. We describe the two other common types of navigation constraints below. One type of constraint used for navigation or picking out desired solutions for any cluster C of the DR-plan are simply redundant or overconstraints directly associated with C, that is, connecting primitive elements that lie in different child clusters of C. These are isolated by any DR-planner as in Section 6.1. There is a well-developed theory of unique realizations and so-called rigidity circuits obtained, for isolating desired solutions from the solution space using redundant constraints [30]. The other type of common navigation constraints are chirality [4, 41], also called order type or relative orientation constraints. Chirality constraints can be infered from the input sketch. For example, for point objects, these constraints assign signs to the D + 1 by D + 1 determinants of the homogeneous coordinate matrices obtained from each set of D + 1 point objects. I.e, these constraints are D + 1 degree polynomial inequalities. These correspond to a complete oriented matroid specification [51]. Alternatively, a partial oriented matroid specification could be specified by the user: these assert intersection or separation of pairs of convex hulls of subsets of point ob'. ; (called respectively circuits and co-circuits in oriented matroid t,:::': 1 I ). or. 1- .two line segments could be constrained to intersect. or a ...' could be forced to lie in the convex hull of some other set of points. : ... too could be written as pc---nomial inequalities. ( i. : .::y constraints, like redundant overconstraints, are also directly associated with a uni( ..:. cluster C in the DP t- the smallest cluster that contains all the .:ive elements that in the (:: :T: constraint. Ti : also i: '' that not all of the p; : ': .. '. 've elements i .-i in .---- single *. cluster of C. Ti. navigation constraints associated with a cluster C are processed by the ('Ci using the same Conversion and Substitution stages described above. At the end of these I I the :- .. equations and ini : .: :: are not in terms of the primitive elements that they involve. ::: : t1 are in terms of the rotation matrix entries (variables) that place the children C, of C (in the DR-plan), within C's coordinate system. Thereafter, during each iteration in which the C('i i is called for cluster C, i': a are dealt with in one <." two .. If the algebraic system associated with the cluster has not yet been solved (in the :. iteration), or the number of solutions is beyond some 0 : .1 :: 'd threshold (in later iterations), and the ':. ebraicSolver is capable of .*.... .. redundant equations and ...1 -nomial li: ties, then these processed navigation equations and L : : lIties are tacked on to the stable, independent system for C generated as described above, and sent to the AlgebraicSolver. If not, i.e, if either of these conditions does not hold, these navigation e.-i: '. .: aind inequalities are ':.1,- used to : .. the solution set for C. that since the navigation e : ': and inequalities have alr been processed the Substitution stage of the C P ', this pruning can be done 1 directly using the solutions output by the ',;ebr .. over, i.e, using the rotation |

Full Text |

PAGE 1 COMBINATORIALDECOMPOSITION,GENERICINDEPENDENCEAND ALGEBRAICCOMPLEXITYOFGEOMETRICCONSTRAINTSSYSTEMS: APPLICATIONSINBIOLOGYANDENGINEERING By YONGZHOU ADISSERTATIONPRESENTEDTOTHEGRADUATESCHOOL OFTHEUNIVERSITYOFFLORIDAINPARTIALFULFILLMENT OFTHEREQUIREMENTSFORTHEDEGREEOF DOCTOROFPHILOSOPHY UNIVERSITYOFFLORIDA 2006 PAGE 2 Copyright2006 by YongZhou PAGE 3 Idedicatethisworktomyfamily. PAGE 4 ACKNOWLEDGMENTS Thankstoallfortheirhelpandguidance. iv PAGE 5 TABLEOFCONTENTS page ACKNOWLEDGMENTS .............................iv LISTOFFIGURES ................................viii ABSTRACT ....................................xi CHAPTER1INTRODUCTION ..............................1 1.1ConstraintGraphsandDegreesofFreedom ..............2 1.2FormalDenitionofDR-plansandEssentialProperties .......6 1.2.1Overconstraints .........................6 1.2.2Optimality ............................7 1.2.3Completeness ..........................8 1.2.4Complexity ...........................8 2PROBLEMS .................................9 2.1GeometricConstraintsSystemWithinFeatureHierarchi es .....9 2.2TractableCombinatorial3Drigiditycharacterization ........9 2.3A2DRigidityClassicationConjecture ................10 2.4SolutionSpaceNavigationforGeometricConstraintSys tems ....11 2.5CombinatorialOptimizationofAlgebraicComplexity ........11 2.6OptimizationofWellformedSystemsofIncidences ..........12 2.7EnumerationofPathwaysforMacromolecularStructures ......13 3GEOMETRICSYSTEMWITHINFEATUREHIERARCHIES ....14 3.1FormalProblemStatement .......................19 3.2TheFrontierVertexAlgorithm(FA)DR-Planner ..........23 3.2.1DistributingEdges .......................24 3.2.2SimplifyingClusters .......................25 3.2.3Datastructures ..........................26 3.2.4DistributingVerticesandClusters ...............27 3.2.5CombiningClusters .......................28 3.3IncorporatinganInputFeatureDecompositionintoFADR -plan ..28 3.3.1MoreDetailedRequirementsontheMethod .........28 3.3.2DistributingGroupsorFeatures ................30 v PAGE 6 3.3.3ProofofCorrectnessandComplexity .............34 3.3.4PreservingPropertiesoftheOldFADR-planner .......36 4COMBINATORIAL3DRIGIDITYCHARACTERIZATION .......41 4.1DeterminingDofRigidity:TheFrontierVertexAlgorith m(FA) ..41 4.1.1TheFrontierVertexDR-plan(FADR-plan) .........43 4.1.2TheFrontierVertexAlgorithm(FADR-planner) .......44 4.2Module-Rigidity:CharacterizationandAlgorithm ..........50 5CONJECTUREOFANGLECONSTRAINTSYSTEM .........56 5.1Denitions ................................56 5.2OneCombinatorialCharacterization .................58 5.3Observations ..............................62 5.4Conjectures ...............................65 6SOLUTIONSPACENAVIGATION ....................69 6.1CompanionMethodsRequirements ..................69 6.1.1DR-Planner ...........................70 6.1.2CombinatorialCluster-SystemOptimizer(CCO) .......75 6.1.3AlgebraicSolver .........................76 6.1.4GraphicalUserInterface(GUI) ................76 6.2NavigatingtheSolutionSpace .....................77 6.2.1TheBasicESMMethod ....................77 6.2.2ESM'sCommunicationwithUserandIntegration ......89 6.3Conclusions ...............................93 7COMBINATORIALOPTIMIZATIONOFALGEBRAICCOMPLEXITY 96 7.1AnInstructiveExample ........................96 7.1.1TheUnoptimizedPolynomialSystem .............98 7.1.2UsingQuaternions ........................99 7.1.3AnOptimizedAlternative ...................101 7.1.4Interpretation ..........................102 7.2OptimizingAlgebraicComplexityusingClusterTopolog y ......102 7.2.1ReductionofAlgebraicComplexitythroughOptimizat ion ..106 7.2.2RemovingAssumptionsMadeinSection1.2 .........106 7.3SolutionstoanOptimizedSystemofClusterConstraints ......107 8OPTIMAL,WELL-FORMEDRECOMBINATION ............112 8.1Introduction ...............................112 8.2Background:ConstraintSystemsandClusters ............113 8.2.1TheOptimalRecombinationAlgorithm ............116 8.2.2TheWellformedRecombinationAlgorithm ..........117 8.2.3SeamGraphs ..........................119 vi PAGE 7 8.3TheNewHybridAlgorithm ......................123 8.4Conclusion ................................128 9ENUMERATIONOFPATHWAYSFORMACROMOLECULAR ....129 9.1Introduction ...............................129 9.2ObtainingPathwayProbabilitiesbyCombinatorialEnum eration ..134 9.3ImplementationResults ........................136 9.4AnotherProbabilityMeasure .....................139 REFERENCES ...................................140 BIOGRAPHICALSKETCH ............................146 vii PAGE 8 LISTOFFIGURES Figure page 1{1One2Dconstraintsystemexample. ....................3 1{2Simple3Dexampledrawnon2DcanvaswithpointsanditsDR -plan ..3 1{3One3Dexampledrawnon2Dcanvaswithsolution. ............3 1{4Geometricconstraintsystemin3Dwith\bananas"type .........4 1{5ConstraintgraphG1andDR-planin2D. ..................7 3{1Small2Dconstraintgraphthatisnottriangledecomposa ble. .......15 3{2Constraintsystem S i andunderlyingfeaturehierarchy P i ........18 3{3Featurehierarchyanddirectedacyclicgraph. ...............18 3{4Constraintsystemandconstraintgraphshowingmultipl eviews. .....19 3{5Partialdecompositionsfor3Dconstraintsystem(Figur e1{3). ......20 3{6TwoDR-plansof3Dexamplewithinputfeatures. .............20 3{7Triangle-decomposable2DcounterexampleofChurch-Ro sserproperty. .22 3{8Constraintgraph G withedgeweightdistribution. .............25 3{9FrontierAlgorithm'ssimplicationofgraphgivingDRplan(Figure1{5). 26 3{10ConsistencybetweentheDR-plansof2groupsofgraph(F igure3{6). ..30 3{11ChildClustersdonotoverlap(Case1). ...................33 3{12Inputgroupsoverlaponfrontiervertices(Case2). .............34 3{13Theoverlappedpartincludesnon-frontiervertices(C ase3). .......35 4{1Finding W rstwillpreventdofmisclassicationwith2Dand3Dexampl e. 47 4{2EnsuringClusterMinimality. ........................48 4{3Preventaccumulationofclusters ......................49 4{4Exampleswheremodule-rigiditybeatsdofrigidity. ............54 viii PAGE 9 4{5ClassicHingeexample:notmodule-rigid,butdofrigid ..........55 5{1Geometricangleconstraintsystemandtheanglegraph. .........57 5{2Thenewpoint p n +1 isatthecircleorattheradial ............59 5{3Twonewangles: 1 and 2 ..........................59 5{4Onenewangle 1 andoneoldangle 2 ...................60 5{5Twooldanglesdonotshareapairofpointscontaining p n +1 .......61 5{6Twooldanglesshareapairofpointscontaining p n +1 ...........61 5{7Genericallyindependentsystemthatisnotgraduallyco nstructible ....62 5{8Implicitanglecycleisnottheonlytypeofdependency. ..........62 6{1Standardgeometricconstraintsolverarchitecture. .............75 6{2Solutionsoftheclusterformedbythe3circles(Figure1 {1). .......79 6{3Completesolutionofrootcluster(Figure1{1)aftercho osingsubsolutions. 80 6{4Thestructureofthecluster. ........................80 6{5Navigatingbybottom-uptraversalofG79inDR-plan(Fig ure1{4). ...83 6{6Navigatingbybottom-uptraversalofG82inDR-plan(Fig ure1{4). ...83 6{7Completesolutionofconstraintsystem(Figure1{4). ...........84 7{1Thechildclustersof hex tet andtheweightedoverlapgraph. ......97 7{2Constraintgraphandweightedoverlapgraphofproblem pent plat ..104 7{3Fivespanningtreesofthecoveringsetsoftheexample(F igure7{2). ..104 7{4Uniquesolutiontoproblem hex tet ...................108 7{5Diagramaticviewofthefoursolutionstoproblem( ii ). ..........108 7{6Diagramaticviewofthetensolutionstoproblem( iii ). ..........109 7{7Threeoftheeightsolutionstothe pent plat problem( iv ). ......110 7{8Diagramaticviewof8solutionstothe pent plat problem( iv ). ....110 8{1Schematicrepresentationofa3Dgeometricconstraints ystem. ......114 8{2Overlapgraphandtheminimalspanningtreeoftheexampl e(Figure8{1). 116 8{3Choosingwell-formedincidencesforthesystem(Figure 8{1)isnontrivial. 118 ix PAGE 10 8{4Seamgraph(Figure8{2)anditsseamtree. ................119 8{5Wellformedsetofincidencesobtainedfromtheseamtree (Figure8{4). .119 8{6Seamgraph,seamtreesandseamcycle. ..................121 8{7Wellformedincidencesmaynotbeoptimized. ...............122 8{8Spanningtreeofitsweightedoverlapgraphandtheseamg raph. ....125 9{1Examplemonomerprimitivesandconstraints. ..............132 9{2ThesimulatedassemblyofaT=1viralshell. ................133 9{3Facenumbersandvertexnumbers. ......................135 9{4Thehighestpathwaytypeandthewidestpathwaytypein20 00trials. ..137 9{5Pathwaysof2largestisomorphismclassesin2000trials .........138 x PAGE 11 AbstractofDissertationPresentedtotheGraduateSchool oftheUniversityofFloridainPartialFulllmentofthe RequirementsfortheDegreeofDoctorofPhilosophy COMBINATORIALDECOMPOSITION,GENERICINDEPENDENCEAND ALGEBRAICCOMPLEXITYOFGEOMETRICCONSTRAINTSSYSTEMS: APPLICATIONSINBIOLOGYANDENGINEERING By YongZhou December2006 Chair:MeeraSitharamMajorDepartment:ComputerandInformationScienceandEng ineering Thisdissertationcontributesto7problemsingeometricco nstraintssolving andapplications.Westudytheproblemofenablinggeneral2 Dand3Dvariational constraintrepresentationtobeusedinconjunctionwithaf eaturehierarchy representation,wheresomeofthefeaturesmayuseprocedur alorothernon-constraint basedrepresentations.Wegiveacombinatorial approximate characterization ofsuchgraphswhichwecall module-rigidity ,whichcanbedeterminedbya polynomialtimealgorithm.Thenewmethodhasbeenimplemen tedinthe FRONTIERandhasmanyusefulpropertiesandpracticalappli cations.We proposeacombinatorialcharacterizationconjectureof2D rigidityofangle constraintsystem.Wegivetheformalstatementofgenerica llyindependence. Wearetryingtoproveituseinductiononthenumberofpoints .Threeof fourcaseshavebeenproved.Wealsostudythewell-document edproblemof systematicallynavigatingthepotentiallyexponentially manyrootsorrealizations ofwell-constrained,variationalgeometricconstraintsy stems.Wegiveascalable methodcalledtheESMorEquationandSolutionManagerthatc anbeusedboth xi PAGE 12 forautomaticsearchesandvisual,user-drivensearchesfo rdesiredrealizations. Wealsoshowthat,especiallyfor3Dgeometricconstraintsy stems,afurther optimizationofthealgebraiccomplexityofthesubsystems isbothpossible,and oftennecessarytosolvethewell-constrainedsystemssele ctedbytheDR-plan.We giveanecientalgorithmtooptimizethealgebraiccomplex ityofthewellformed systemthatisconstructedbythealgorithmgivenbySithara m.weimplementa randomizedalgorithmtocomputeonemeasureoftheprobabil ityofthepathways andprospecttoincorporateanotherprobabilitymeasure,t hatwillbeobtained combinatoriallybyextendingHendricksonsTheoremonrigi ditycircuitsandunique graphrealizationintothisalgorithm. xii PAGE 13 CHAPTER1 INTRODUCTION Geometricconstraintsystemshavebeenstudiedintheconte xtofvariational constraintsolvinginCADfornearly2decades[ 1 2 3 4 ]. A geometricconstraintsystem consistsofanitesetofprimitivegeometric objectssuchaspoints,lines,planes,conicsandsoonanda nitesetofgeometric constraintsbetweenthemsuchasdistance,angle,incidenc eandsoon.The constraintscanusuallybewrittenasalgebraicequationsa ndinequalitieswhose variablesarethecoordinatesoftheparticipatinggeometr icobjects.Forexample, adistanceconstraintof d betweentwopoints( x 1 ;y 1 )and( x 2 ;y 2 )in2Diswritten as( x 2 x 1 ) 2 +( y 2 y 1 ) 2 = d 2 : Inthiscasethedistance d isthe parameter associatedwiththeconstraint.Mostoftheconstraintsolv erssofardealwith 2Dconstraintsystems.Withtheexceptionofworkrelatedto theFRONTIER geometricconstraintsolver[ 1 5 6 7 8 9 10 11 12 13 14 15 ],tothebestofour knowledge,workonstand-alone3Dgeometricconstraintsol versisrelativelysparse [ 16 17 ]. A solutionorrealization ofageometricconstraintsystemisthe(setof)real zero(es)ofthecorrespondingalgebraicsystem.Inotherwo rds,thesolutionisa classofvalidinstantiationsof(theposition,orientatio nandanyotherparameters of)thegeometricelementssuchthatallconstraintsaresat ised.Here,itis understoodthatsuchasolutionisinaparticulargeometry, forexamplethe Euclideanplane,thesphere,orEuclidean3dimensionalspa ce.Aconstraint systemcanbeclassiedas overconstrained wellconstrained ,or underconstrained Well-constrainedsystemshaveanite,albeitpotentially verylargenumberof rigid solutions;thatis,solutionsthatcannotbeinnitesimall yrexedtogiveanother 1 PAGE 14 2 nearbysolution:thesolutionspace(modulorigidbodytran sformationssuchas rotationsandtranslations)consistsofisolatedpointswh icharezero-dimensional. Underconstrainedsystemshaveinnitelymanysolutions;t heirsolutionspaceisnot zero-dimensional.Overconstrainedsystemsdonothaveaso lutionunlesstheyare consistentlyoverconstrained .Inthatcase,theycouldbeembeddedwithinoverall underconstrainedsystems.Systemsthatarenotunderconst rainedarecalled rigid systems. 1.1ConstraintGraphsandDegreesofFreedom DR-plans,formallydenedinthenextsection,providethef ormalbasis ofourfeaturehierarchyincorporationalgorithm.Geometr icconstraintgraph representationsofaconstraintsystemaretypicallyusedt odevelopDR-plans. Specicallythesegraphsareusedforcombinatorialanalys isofalgebraicproperties ofthesystem(suchaswellconstrainedness,rigidityandso on,),thathold generically ,thatis,forallgenericvaluesfortheconstraintparamete rs(forexample,for almostalldistancevalues,inthecaseofdistanceconstrai ntsystems). Ageometricconstraintgraph G =( V;E;w )correspondingtogeometric constraintsystemisaweightedgraphwithvertexset(repre sentinggeometric objects) V andedgeset(representingconstraints) E ; w ( v )istheweightofvertex v and w ( e )istheweightofedge e ,correspondingtothenumberofdegreesof freedomavailabletoanobjectrepresentedby v andnumberofdegreesoffreedom (dofs)removedbyaconstraintrepresentedby e respectively. Forexample,Figures 1{1 1{2 and 1{5 show2Dand3Dconstraintsystems andtheirrespectivedofconstraintgraphs.More3Dconstra intsystemswhose graphshaveverticesofweight3(points)andedgesofweight 1,3canbefoundin Figures 1{31{4 PAGE 15 3 Figure1{1:One2Dconstraintsystemexample. Figure1{2:Simple3Dexampledrawnon2Dcanvaswithpointsa nditsDR-plan Figure1{3:One3Dexampledrawnon2Dcanvaswithsolution. PAGE 16 4 Figure1{4:Geometricconstraintsystemin3Dwith\bananas "type Notethattheconstraintgraphcouldbea hypergraph ,eachhyperedge involvinganynumberofvertices.Asubgraph A G thatsatises X e 2 A w ( e )+ D X v 2 A w ( v )(1) iscalled dense ,where D isadimension-dependentconstant,tobedescribedbelow. Function d ( A )= P e 2 A w ( e ) P v 2 A w ( v )iscalled density ofagraph A Theconstant D istypically d +1 2 where d isthedimension.Theconstant D capturesthedegreesoffreedomofarigidbodyin d dimensions.For2Dcontexts andEuclideangeometry,weexpect D =3andforspatialcontexts D =6,in general.Ifweexpecttherigidbodytobexedwithrespectto aglobalcoordinate system,then D =0.A trivial subgraphissinglevertex(in2D)andavertexor edge(in3D). Nextwegivepurelycombinatorialpropertiesrelatedtoden sitythatareused todetectgenericalgebraicproperties.Adense,nontrivia lgraphwithdensity strictlygreaterthan D iscalled dof-overconstrained .Agraphthatisdense PAGE 17 5 andallofwhosesubgraphs(includingitself)havedensitya tmost D iscalled dof-wellconstrained. Agraph G iscalled dof-well-overconstrained ifitsatisesthe following: G isdense, G hasatleastoneoverconstrainedsubgraph,andhasthe propertythatonreplacingalloverconstrainedsubgraphsb ydof-wellconstrained subgraphs(inanymanner), G remainsdense.Intuitively,thisdenitionisused topreventsomeoverconstrainedsubgraphswithhighdensit yfromskewing theclassicationoftheentiregraph.Inparticular,anext remeexamplecould beagraphthathas2subgraphsthatareseverelyoverconstra ined,butwith noconstraintsbetweenthem.Bythisdenition,suchagraph wouldnotbe well-overconstrainedandwouldbecorrectlyclassiedasu nderconstrained.Agraph thatiswellconstrainedorwell-overconstrainediscalled dof-cluster .Anontrivial densegraphis minimal ifithasnonontrvialdensepropersubgraph.Allminimal densesubgraphsaredof-clustersbuttheconverseisnotthe case.Agraphthatis notadof-clusterissaidtobe underconstrained .Ifadensegraphisnotminimal, itcouldinfactbeanunderconstrainedgraph:aspointedout ,thedensityofthe graphcouldbetheresultofembeddingasubgraphofdensityg reaterthan D Nextwediscusshowthegraphtheoreticproperties degreeoffreedom(dof) analysis relatetocorrespondingpropertiesofthecorrespondingco nstraint system In2dimensions,accordingtoLaman'stheorem[ 18 ],ifallgeometricobjects arepointsandallconstraintsaredistanceconstraintsbet weenthesepointsthen anyminimaldenseclusterrepresentsagenericallyrigidsy stem.Ingeneral, however,whilegenericallyrigidsystemalwaysgivesaclus ter,theconverseis notalwaysthecase.Infact,therearewellconstrained,den seclusterswhose correspondingsystemsarenotgenericallyrigidandareinf actgenericallynot rigidduetothepresenceofgeneric constraintdependences .Oneexample(Figure 1{4 )with3Dpointsanddistanceconstraintsillustratestheso -called\bananas" problem[ 19 ],whichgeneralizestotheso-called\hinge"problem[ 20 21 ].Todate, PAGE 18 6 thereisnoknown,tractable,combinatorialcharacterizat ionofgenericrigidity ofsystemsfor3orhigherdimensionsevenwhenonlypointsan ddistancesare involved[ 19 22 ],althoughseveralconjecturesexist.Therearenoknownge neral combinatorialcharacterizationsof2Drigidity,whenothe rconstraintsbesides distances(suchasangles)areinvolved.Forconstraintsys temswithangleand incidenceconstraintsbutnodistances,suchacharacteriz ationisgiven[ 23 ].For 3Dpointsanddistances,thenotionof module-rigidclusters [ 12 ](anextensionof dof-rigidclustersdenedabove)dealswithallaspectsoft hebananasandhinge problems,andsoon,itcorrectlycharacterizesgenericrig idityinallknowncases. Currently,nocounterexamplesareknown-ofmodule-rigidc onstraintgraphsthat arenotgenericallyrigid. 1.2FormalDenitionofDR-plansandEssentialProperties HereweformallydeneandgiveessentialpropertiesofDR-p lansand DR-planners.Thissectionisimportantsincewerequireour featureincorporation algorithmtopreservetheseproperties.PleaserefertoHo mannetal.and Lomonosov[ 6 24 ]foradetaileddiscussionoftheseproperties. Formally,a dof-DR-plan ofaconstraintgraph G isadirectedacyclicgraph (dag)whosenodesrepresentdof-clustersin G ,andedgesrepresentcontainment. Theleavesorsinksofthedagareallthevertices(primitive dof-clusters)of G .The rootsorsourcesareacompletesetofthemaximaldof-cluste rsof G .Forwellor well-overconstrainedgraphs,theDR-planshaveasingleso urce.Therecouldbe manyDR-plansfor G (Figures 1{5 1{1 1{2 1{3 1{4 ). 1.2.1Overconstraints First,eachdof-cluster C intheDR-planshouldbeaccompaniedbyatractable representationofacompletelistof reducible overconstraintsetsdirectlyassociated with C .Thatis,setsofconstraintsthatdonotlieentirelywithin anychildcluster of C andcanberemovedwithoutaectingthedof-rigidityof C .TheDR-planner PAGE 19 7 22 i 5 10 8 C0 3 11 9 64 2 12 1 20 15 13 17 19 18 21 e f g C7 C6 C4 C21 16 14 7 23 h C15 C19 C14 C20 C13C10 C17 C12 C21 C8 C11 C18 C16 C9 4 2 12 9 8 6 5 3 10 11 7 1 C4 C3 14 C1 C2 20 1615171819 C6 C5 2223 21 C0=S(D(G1)) C7 13 Figure1{5:ConstraintgraphG1andDR-planin2D. shouldadditionallyadmitanecientmethodofremovingove rconstraintsby makingtheappropriatechangestotheDR-plan.1.2.2Optimality The size ofaclusterinaDR-planisitsfan-inornumberofitschildre n (itrepresentsthesizeofthecorrespondingsubsystem,onc eitschildrenare solved).Sincethealgebraic-numericsolverstaketimeexp onentialinthesizeofthe subsystemstheysolve,andthenumberofsolutionsisalsoty picallyexponential, minimizingthesizeofaDR-planis essential totheESMmethodpresented here.An optimal DR-planisonethatminimizesthemaximumfan-in.The problemofndingtheoptimalDR-planofevena2Ddistanceco nstraintgraph isNP-hard[ 9 24 ],andapproximabilityresultsareshownonlyinspecialcas es. Nonapproximabilityresultsarenotknown. Onemeasureusedinlieuofabsoluteoptimalityisbasedonth efactthat mostDR-plannersmakeadhocchoicesduringcomputation(sa ytheorderin whichverticesareconsidered)andwecanaskhowwell(close tooptimal)the best computationpathofsuchaDR-plannerwouldperform(onthew orstcaseinput). Wecallthisthe best-choiceapproximationfactor oftheDR-planner. Amoresatisfactorymeasureofoptimalityisbasedonthefol lowingalternative property.A tractable DR-planforsystematicnavigationshouldensurethateach cluster C shouldbeaccompaniedbyaasmallsetofitschildren C i thatforman PAGE 20 8 optimalcoveringset ofmaximalclustersproperlycontainedin C .A coveringset of clustersisonewhoseunioncontainsallgeometricelements within C .Thesizeof C issimplythesizeofthisoptimalcoveringset.The optimality hererefersnottothe sizeofthecoveringset,buttoanysuitablecombinatorialm easureofthealgebraic complexityoftheactiveconstraintsystemforsolving C ,giventhesolutionsof thechildclustersinthecoveringset.Thisleadstothenoti onof completeness of DR-plans,givenbelow.1.2.3Completeness Anymethodthatchoosesanoptimalcoveringsetforacluster C requiresas inputageneralized completedecompositionof C intomaximalpropersubclusters, formallydenedasfollows.Thedecompositionofanycluste r C fallsintoone of2types.AType1cluster C hasexactly2childclusters,whichintersectona nontrivialsubgraph,andtheirunioncoversallthegeometr icelementsin C .A Type2cluster C hasasetofchildclusters C i withthefollowingproperty.The unionof C i 'scoversallthegeometricelementsin C ;anypairof C i 'sintersecton atmostatrivialsubgraph;andevery C i isa propermaximal subclusterof C ,that is,thereisnopropersubclusterof C thatstrictlycontains C i .Completenessis alsoneededfordetectingimplicitconstraintdependences andformoreaccurate, module-rigidDR-planners.1.2.4Complexity AnotherbasicpropertyofaDR-planisits width i.e, number ofclustersinthe DR-plantobesmall,preferablylinearinthesizeof G :thisrerectsthecomplexity oftheplanningprocessandaectsthecomplexityofthesolv ingprocessthatis basedontheDR-plan.Clearly,thispropertycompeteswithc ompleteness. OtherdesirablepropertiesofDR-plannersnotmentionedab oveinclude systematiccorrectionofunderconstrainedsystems,andam enabilitytoecient updatesofgeometricprimitivesorconstraints. PAGE 21 CHAPTER2 PROBLEMS 2.1GeometricConstraintsSystemWithinFeatureHierarchi es Oneapplicationofgeometricconstraintssystemismechani calcomputer aideddesign.However,abottleneckinusinggeometriccons traintssystemisthat designersuseanotherrepresentationbasedontheconceptu alhierarchyoffeatures inapartorassembly. InChapter 3 ,westudytheproblemofenablinggeneral2Dand3Dvariation al constraintrepresentationtobeusedinconjunctionwithth efeaturehierarchy representation,wheresomeofthefeaturesmayuseprocedur alorothernon-constraint basedrepresentations.Wetracethechallengetoarequirem entonconstraint decompositionalgorithmsordecomposition-recombinatio n(DR)plannersusedby mostvariationalconstraintsolvers,formalizethefeatur ehierarchyincorporation problemforDR-planners,clarifyitsrelationshiptoother problems,andprovidean ecientalgorithmicsolution.Thenewalgorithmshavebeen implementedinthe general,2Dand3DopensourcegeometricconstraintsolverF RONTIER. 2.2TractableCombinatorial3Drigiditycharacterization Onebigopenproblemisthequestionofrigidityof3Dconstra intsystems evenwhenonlydistancesareinvolved.Theproblemisthatmo stcombinatorial characterizationsofrigiditywillmisshiddendependenci esbetweenconstraintsand willbewronglyclassifymanyclassicalnonrigidsystemsas rigid. InChapter 4 ,wegiveapolynomialtimecharacterizationcalled module-rigidity thatisnotfooledbyanyknownsuchcounterexampleofnonrig idsystems.We showthatthispropertyisnaturalandrobustinaformalsens e.Rigidityimplies module-rigidity,andmodule-rigiditysignicantlyimpro vesuponthegeneralized 9 PAGE 22 10 Lamandegree-of-freedomordensitycount.Specically,gr aphscontaining "bananas"or"hinges"[ 19 ]arenotmodule-rigid,whilethegeneralizedLaman countwouldclaimrigidity.Thealgorithmthatfollowsfrom ourcharacterizationof module-rigiditygivesacompletedecompositionofnonmodu le-rigidgraphsintoits maximalmodule-rigidsubgraphs. Toputtheresultinperspective,itshouldbenotedthat,pri ortotherecent algorithmof[ 9 ]therewasnoknownpolynomialtimealgorithmforobtaining all maximalsubgraphsofaninputconstraintgraphthatsatisfy thegeneralizedLaman count,specicallywhenoverconstraintsorredundantcons traintsarepresent. ThenewmethodhasbeenimplementedintheFRONTIER[ 10 11 15 ],[ 2 ] opensource3Dgeometricconstraintsolverandhasmanyusef ulpropertiesand practicalapplications[ 13 14 25 26 27 ].Specically,themethodisusedfor constructingaso-calleddecomposition-recombination(D R)planfor3Dgeometric constraintsystems,whichiscrucialtodefeattheexponent ialcomplexityofsolving the(sparse)polynomialsystemobtainedfromtheentiregeo metricconstraint system.TheDR-planguidesthealgebraic-numericsolverby ensuringthatonly smallsubsystemsareeversolved.Thenew,approximatechar acterizationof 3DrigiditypermitsFRONTIERtodealwithafarlargerclasso f3Dconstraint systems(aclassadequateformostapplications)thananyot hercurrentgeometric constraintsolver. 2.3A2DRigidityClassicationConjecture Laman'stheoremshowsonecombinatorialcharacterization of2Ddistance constraintsystem[ 18 ].Whenotherconstraintsareinvolved, forexample,angles thereisnocombinatorialcharacterization.InChapter 5 ,wegiveacombinatorial characterizationconjectureof2Drigidityofangleconstr aintsystem.First,wegive theformalstatementofgenericallyindependence.Weobser vethatforangiven angleconstraintsystem G in2 D with k dof,thereisatleastonepointinvolvedin PAGE 23 11 atmost7angles.Wedivideitinto4casesbasedonthereexist satleastonepoint with0,1,2ormoreanglesinvolved.Wearetryingtoproveitu seinductiononthe numberofpoints.Therstthreecaseshavebeenproved. 2.4SolutionSpaceNavigationforGeometricConstraintSys tems InChapter 6 ,westudythewell-documentedproblemofsystematically navigatingthepotentiallyexponentiallymanyrootsorrea lizationsofwell-constrained, variationalgeometricconstraintsystems.Wegiveascalab lemethodcalledthe ESMorEquationandSolutionManagerthatcanbeusedbothfor automatic searchesandvisual,user-drivensearchesfordesiredreal izations.Themethod incrementallyassemblesthedesiredsolutionoftheentire systemandavoids combinatorialexplosion,byoeringtheuseravisualwalkt hroughofthesolutions torecursivelyconstructedsubsystemsandbypermittingth eusertomakegradual, adaptivesolutionchoices. Weisolaterequirementsoncompanionmethodsthatpermit(a )incorporation ofmanyexistingapproachestosolutionspacesteeringorna vigationintothe ESM;and(b)integrationoftheESMintoastandardgeometric constraintsolver architecture.Weaddressthelatterchallengeandexplainh owtheintegrationis achieved.Andweclarifytheserequirementsessentialandd esirableforecient, meaningfulsolutionspacenavigation.Also,wesketchtheE SMimplementation aspartofanopensource,2Dand3Dgeometricconstraintsolv erFRONTIER developedbyourgroup. 2.5CombinatorialOptimizationofAlgebraicComplexity InChapter 7 weshowthat,Mostmajorgeometricconstraintsolversusea combinatorialorgraphalgorithmtogenerateadecompositi on-recombination (DR)plan.ADRplanrecursivelydecomposesthesystemofpol ynomialequations intosmall,genericallyrigidsubsystemsthataremorelike lytobesolvedby algebraic-numericsolvers. PAGE 24 12 Especiallyfor3Dgeometricconstraintsystems,afurthero ptimizationofthe algebraiccomplexityofthesesubsystemsisbothpossible, andoftennecessary tosolvethewell-constrainedsystemsselectedbytheDR-pl an.InChapter 7 ,to attackthisapparentlyundocumentedchallenge,weuseprin ciplesofrigidbody transformationandquaternionformsandwecombinatoriall yoptimizeafunction overtheminimumspanningtreesofagraphgeneratedfromDRplaninformation. Thisapproachfollowsaninterestingconnectionbetweenth ealgebraiccomplexity ofawell-constrainedsystemandthetopologyofitsmaximal well-constrained propersubsystems.Theoptimizationhastwosecondaryadva ntages:fornavigating thesolutionspaceoftheconstraintsystemandformappings olutionpathsinthe congurationspacesofthesubsystems. Wecomparethereductioninalgebraiccomplexityofthesubs ystemafter optimizationwiththatoftheunoptimizedsubsystemandill ustratethepractical benetwithnaturalexamplesthatcouldonlybesolvedafter optimization. 2.6OptimizationofWellformedSystemsofIncidences Fortractability,manymoderngeometricconstraintsolver srecursively decomposeaninputgeometricconstraintsystemintostanda rdcollectionsof smaller,genericallyrigidsubsystemsorclusters.Thesea rerecursivelysolvedand theirsolutionsorrealizationsarerecombinedtogivethes olutionorrealizationof theinputconstraintsystem. Therecombinationofastandardcollectionofsolvedcluste rstypicallyreduces topositioningandorientingtherigidrealizationsofthec lusterswithrespectto eachother,subjecttoincidenceconstraintsrepresenting primitive,sharedobjects betweentheclustersanddistanceconstraints. Thepaper[ 28 ]showsthatevenforgenericallywellconstrainedsystemsi n 3D,ndingawellconstrainedsystemofincidenceconstrain tsforrecombining itsclusterdecompositionisasignicanthurdlefacedbyge ometricconstraint PAGE 25 13 solvers.Ingeneral,wewouldlikeawellformedsystemofinc idencesthatpreserves theclassicationoftheoriginal,undecomposedsystemasa well,underor overconstrainedsystem.Theauthorformallystatesandgiv esanecient,greedy algorithmtondsuchawellformedsystem. 2.7EnumerationofPathwaysforMacromolecularStructures Weconsidertheproblemofexplicitlyenumeratingandcount ingtheassembly pathwaysbywhichanicosahedralviralshellformsfromiden ticalconstituent proteinmonomers.Thispoorlyunderstoodassemblyprocess isaremarkable exampleofsymmetricmacromolecularself-assemblyoccuri nginnatureand possessesmanyfeaturesthataredesirablewhileengineeri ngself-assemblyatthe nanoscale. SitharamandMckenna[ 25 29 ]givethenewmodelofthatemploysastatic geometricconstraintgraphtorepresentthedriving(weak) forcesthatcauseaviral shelltoassembleandholdittogether.Themodelwasdevelop edtoanswerfocused questionsaboutthestructuralpropertiesofthemostproba bletypesofsuccessful assemblypathways.Specically,themodelreducesthestud yofpathwaytypes andtheirprobabilitiestothestudyoftheorbitsoftheauto morphismgroupofthe underlyinggeometricconstraintgraph,actingonthesetof pathways.Theauthors givearandomizedalgorithmtocomputeonemeasureofthepro babilityofthese pathwaysbyfaithfullysamplingthem. InChapter 9 ,wegivetheimplementationofthealgorithmandproposeto incorporateanotherprobabilitymeasure,thatwillbeobta inedcombinatorially byextendingHendricksonsTheorem[ 30 ]onrigiditycircuitsanduniquegraph realizationintothisalgorithm.Thisinvolvesboththethe oryofgeometric constraintssystemandimplementationofthenewalgorithm PAGE 26 CHAPTER3 GEOMETRICSYSTEMWITHINFEATUREHIERARCHIES Designersnditintuitivetouseaspatialfeaturehierarch yrepresentation, whichincludes:aproceduralhistoryoranalmostlinearseq uenceofattachments, extrusions,sweeps;orCSGBooleanoperationssuchasinter sections;orparametric constraints,whileadditionallypermittingB-repandothe rrepresentationsofsome features.WeusetheFEMEXandotherstandarddenitionsoff eaturehierarchy, [ 31 32 ]andareconcernedprimarilywiththeconceptualdesignsta ge. Whiledesignersadditionallyappreciatetheexpressivene ssofvariational constraints,today'sCADsystemslargelyrestrictvariati onalconstraintrepresentations to2Dcrosssections.Thispersistsdespitethegeneralcons ensusthatadvocates ajudicioususeof3Dvariationalconstraintsfortheintuit iveexpressionand maintenanceofcertaincomplexandcyclicrelationshipsth atoftenoccurbetween features,partsorsubassemblies. Torectifythissituation,itwouldbedesirableifafeature hierarchycould simultaneouslyincorporate2Dand3Dvariationalconstrai nts.Inthischapter,we denotesuchrepresentationsas mixed representations(Figure 3{2 ). Previousworkonsuchmixedrepresentationscanbeclassie dintotwobroad types.Thersttype[ 33 34 ],dictatesauniedrepresentationlanguagewhichisan amalgamationofvariationalconstraintswithotherrepres entationlanguagessuchas CSGandBrep.Thesecondtype[ 35 ]wrestleswithaheterogeneousapproach,using manyservers,oneforeachrepresentationlanguage,sothat theappropriateonecan becalledwhenrequired.Bothapproaches,whilehighlygene ralinscope,havetheir drawbacks. 14 PAGE 27 15 L A B C D E F G HI J K 5L S S S S S S S 1 2 S 3 4 5 6 S 7 S 8 S 9 S 10 13 16 S 14 S 15 S S 12 11 3L 3R 3M 4R 4L 4M 5R 6R 6M 5M 6L Figure3{1:Small2Dconstraintgraphthatisnottrianglede composable. Ourapproachinthischapterhasanarrowerfocus:howtofree lyenable avariationalconstraintsolvertodealwithfeatureintera ctionsatanylevelof afeaturehierarchy,permittingthefeaturestobeindepend entlymanipulated. Recursively,thesefeaturescouldthemselvesberepresent edusingotherrepresentations, orinasimilar,mixedmanner,usingconstraintstorelateth esub-features.This isanaturalrepresentation,sinceregardlessofthewayinw hichthefeaturesat anygivenlevelarerepresented,constraintsbetweenfeatu resatthatlevelcouldbe speciedbetweenprimitivegeometricobjectsor handles belongingtothefeatures (Figure 3{2 ). Onemainchallengetoachievingthistypeofrepresentation isthefollowing competingpairofrequirementsonvariationalconstraints olvers.Eectively representingtheinteractionofindependentfeatures,esp eciallyin3D,wouldrequire theuseoffairlygeneral,cyclicconstraintsystems,which areoften(consistently) overconstrained. Todealwithandresolvesuchconstraintsystemstheecient generationof aclose-to-optimal decompositionandrecombination(DR)plan (formallydened inSection 1.2 )of general 2Dor3Dconstraintgraphsisneeded.Thesemaynot beamenabletodecompositionintotriangularorotherxedp atternswhichmany DR-plannersuse(Figure 3{1 ). PAGE 28 16 DR-plansarewidelyusedingeometricconstraintsolvingan darecrucialin ordertodealwiththetractabilitybottleneckinconstrain tsolving:minimizing thesizeofsimultaneouspolynomialequationsystems,ther ebycontrollingthe dependenceonexponentialtimealgebraic-numericsolvers whicharepractically crippledwhendealingwithevenmoderatelysizedsystems.E ectiveDR-plans areusedalsofornavigatingthesolutionspaceoftheconstr aintsystem[ 13 ], optimizingthealgebraiccomplexityofsubsystemssenttoa nalgebraic-numeric solver[ 14 ],fordealingwithexplicitinconsistencies(overconstra inedsystems)[ 8 ], implicitorgeometricredundanciesandconstraintdepende nces[ 12 23 ],ambiguities (underconstrainedsystems)andforecientupdatesandonl inesolving[ 2 11 ]. Inorderforvariationalconstraintstobeusedinconjuncti onwithafeature hierarchyrepresentation,theDR-plansofgeometricconst raintsystemsshouldnow bemadetoincorporatean input,featuredecomposition representingtheunderlying feature,partorsubassemblyhierarchy.Thisisapartialor der,typicallyrepresented asaDirectedAcyclicGraphor dag (Figures 3{2 3{3 3{4 ). Again,thisincorporationofanarbitraryinput,conceptua ldesigndecomposition intotheDR-planisonlypossibleiftheDR-planningprocess issucientlygeneral. Inparticular,theincorporationshouldbeinsensitivetot heorderinwhich theelementsintheconstraintgraphareconsideredduringt heDR-planning process,theso-calledChurch-Rosserproperty.Howeverth ispropertywhile necessary,isnotsucientasexplainedinSection 1.2 .Homannetal.[ 6 ]rst formalizedtheconceptofaDR-planaswellasseveralperfor mancemeasuresof DR-plannerssomeofwhicharerelevanttothis.Itadditiona llygivesatableof comparisonswhichshowsthatmanyofthepreviousDR-planne rsforexample [ 3 36 36 37 38 39 40 41 42 43 44 45 ],(oranyobviousmodicationsofthem) wouldinherentlyfailtoincorporateeventree-likeinputd esigndecompositionsor PAGE 29 17 featurehierarchies.WeexplaininSection 3.1 whatthedicultyisinthecaseof DR-plannersthatdependondecompositionbasedonxedpatt erns. Incorporationofinputdecompositionsiscrucialalsoinor dertocapturedesign intent,orassemblyorderandallowindependentandlocalma nipulationoffeatures, parts,subassembliesorsubsystemswithintheirlocalcoor dinatesystems.Itis alsocrucialforfacilitatingsolutionspacenavigation[ 13 ]inamannerthatrerects aconceptualdesignintent.Inaddition,itiscrucialforpr ovidingtheuserwith afeaturerepertoire,theabilitytopasteintoasketchalre adyresolvedfeatures andconstraintsubsystemsthatarespeciedinanotherrepr esentationorallowing certainfeaturesoreasiersubsystemstobesolvedusingoth er,simpler,methods suchastriangle-baseddecompositionorparametricconstr aintsolving.Sometimes theuserwouldprefertospecifyapriorityattheverticesof thedagwhichdictates theorderofresolutionofthefeatures,parts,subassembli esorsubsystems.This occursalsowhenonefeaturescanonlybedenedorgenerated basedonanother, asinproceduralorhistorybasedrepresentations.Also,no tethatparametric constraintsolvingcaninfactbeachievedasaspecialcase, wheretheorderis acomplete,totalorder.Moregenerally,thiscanbeusedint heCADdatabase maintenanceofmultipleproductviews[ 46 47 ],forexamplethedesignviewanda downstreamapplicationclient'sviewmaybesomewhatdier entconstraintsystems andthetwofeaturehierarchiesmaynotevenberenementsof oneanother, butintertwined(Figure 3{4 ).Furthermore,eachviewcouldcontaindierent referencingshapeelementsthatarenotpartofthenetshape andtherefore,not partoftheotherviews.Thisisparticularlythecasewhenth esereferencingshape elementsareactuallygeneratedduringtheoperationsofah istory-basedprocedural representation. PAGE 30 18 b e constraints internal constraints external f f f f f f f0 1 2 3 4 5 7 8 10f f d f6f f f01f4 2f f6f3 12fCSG mixed preceduralBREP f51011ff Procedural History BasedParametric Constraints2D Variational Constraints and Sweeps g a12f f9f13c f11 Si 0 2 3 f f f 1 4568 13 fff f ff f 9 f 7a b10 fc11 fd ee12 ff gPi Figure3{2:Constraintsystem S i andunderlyingfeaturehierarchy P i Figure3{3:Featurehierarchyanddirectedacyclicgraph. PAGE 31 19 Y D E F X A B C ABC EF Y D Y X F X Y A BC DE 3 3 3 3 3 3 3 3 3 3 3 32 2 22 1 Figure3{4:Constraintsystemandconstraintgraphshowing multipleviews. 3.1FormalProblemStatement Wenowdescribethealgorithmicproblemof featureincorporation inaDR-plan asaninput-outputspecication. Input: A2Dor3Dgeometricconstraintsystem(Section 1.1 ), S .A partial featuredecomposition oftheconstraintsystemgivenasadirectedacyclicgraph (dag) P obtainedfromoneormorefeature,partorsubassemblyhiera rchies ordesignviews.Afeatureorsubassemblyisanodeof P withitsimmediate subfeaturesrepresentedasitschildren(Figures 3{5 3{3 3{6 ). DesiredOutput: ADR-planfortheinputconstraintsystemwhose nodesincludethosefeaturesintheinputpartialfeaturede compositionthat aredof-clusters.Forfeaturesthatarenotdof-clusters,a completesetofmaximal dof-clusterswithinthemshouldappearasnodesintheDR-pl an. OtheroutputRequirements: OncetheoutputDR-planhasbeenobtained, updatestotheinputfeaturehierarchyshouldbeachievede cientlywithouthaving toredotheentireDR-plan. ThedesirablepropertiesofDR-plansandDR-plannersgiven inSection 1.2 mustbepreservedbythefeatureincorporationalgorithman ditsoutput DR-plan.Someofthesepropertiesrequirestraightforward re-denitionforfeature PAGE 32 20 Figure3{5:Partialdecompositionsfor3Dconstraintsyste m(Figure 1{3 ). Figure3{6:TwoDR-plansof3Dexamplewithinputfeatures. PAGE 33 21 incorporatingDR-plans,sinceoftennoDR-planevenexists thatincorporatesa giveninputfeaturedecompositionandpreservestheseprop ertiesassuch.For example,itmaynotbepossibletopreserveoptimalitysince certainfeatures maysimplyrequireclusterswithlargefan-in;similarlyit maynotbepossible topreservecomplexityandsmallwidth,sincethenumberofg ivenfeaturesmay forcealargewidth.However,wewouldliketoensurethatour algorithmgenerate DR-plansthat preservethesepropertiesasmuchaspossible ,giventherestriction thattheseDR-plansareforcedtoincorporateagiveninputf eaturedecomposition. TheabilityofaDR-plannertoincorporateanyinputfeature decomposition intoaDR-planofaconstraintgraph G impliesthattheDR-plannercannd theclustersofthegraphinanyorderthatisconsistentwith containment.This iscalledthe ChurchRosser propertyoftheDR-planner[ 6 41 42 ].Aformal denitionisthefollowing. AssumethataDR-planner P constructsitsoutputDR-plan(adag)fora constraintgraph G bottomup,thatis,ifacluster C containscluster D ,andboth appearinthedagoutput,then D hasbeenfoundandinsertedintotheDR-plan before C .Exceptforthisrestriction,theDR-plannerisallowedto ndandinsert anyclusterof G intotheoutputdagatanystage.TheDR-planner P hasthe Church-RosserpropertyifanydagthatitoutputsisavalidD R-planfortheinput graph G TheChurchRosserpropertyisweakeranddoesnotimplythefe ature incorporationproperty,especiallywhentheDR-plannerin questiondoesnot performageneralizedanalysis,butworksonlyongraphstha thavearestricted typeofDR-plan. Forexample,consideraDR-plannerthatrequiresthegraph G tobe decomposableintoclustersthathaveaspecicstructureor topological\pattern" [ 41 42 ],andonlyndssuchclusters.TheDR-plannercouldhaveaCh urch-Rosser PAGE 34 22 h a b cd e f g h abcdefg Figure3{7:Triangle-decomposable2DcounterexampleofCh urch-Rosserproperty. propertyinthatitwouldsuccessfullyndaDR-planregardl essoftheorderin which such clustersarefoundandprocessed.However,bysimplypickin gafeature whichisaclusterthatin G thatdoesnothavethatpattern,theDR-plannerwould notbeabletoincorporatethatfeatureinitsDR-planandhen cewouldnotpossess thefeatureincorporationproperty.Notethatinthespeci ccaseofFuddosand Homann[ 41 42 ],itcanbeshownthatagraphiswell-constrainedand\trian gle decomposable"ifandonlyif all clustersinitaretriangle-decomposable(although thisproofdoesnotappearinthepapersofFudosandHomann[ 41 42 ]).Soin thiscasetheChurch-Rosserpropertyimpliesthefeaturein corporationproperty; howeverinthiscasebothpropertiesdonotholdforovercons trainedgraphs (Figure 3{7 );andaspointedoutabove,thepresenceofconsistentoverc onstraints maybecrucialinordertoeectivelymixfeature-basedandc onstraint-based representations. Finally,evenifaDR-plannerhastheChurch-Rosserpropert yandisinfact showntobeamenabletofeatureincorporation,theactualal gorithmicproblem stillremains:of eciently incorporatingagiveninputfeaturedecompositioninto aDR-planwhileminimallyalteringitsotherdesirableprop erties.Thisisthe problemthatweaddresshere. PAGE 35 23 3.2TheFrontierVertexAlgorithm(FA)DR-Planner HerewesketchtheessentialalgorithmicdetailsofthedofrigidFrontier vertex(FA)DR-plannerwhichareabsolutelynecessarytode scribeourfeature incorporationalgorithm.Thedof-rigidFADR-plannersati sestheproperties discussedintheSection 1.2 .ThebasicideaofthisDR-planneranditsperformance waspresentedbyHomannetal.[ 6 ];acompleteformaldescriptionalongwith analysisofcorrectnessand(cubic)complexityandproofof thecompleteness propertyaregivenbyLomonosovandSitharam[ 2 9 24 ].Apseudocodeis providedbySitharam[ 11 ]andthedocumentedcodecanbefoundonherCISE andGNUwebsites[ 15 ].Amethodofcombinatoriallyobtaininganoptimal,stable algebraicsystemforsolving C ,thatis,forobtainingoptimalcoveringsetsisgiven bySitharametal.andSitharamandZhou[ 14 48 ].Themethodforobtaining allpossiblesetsofreducibleconstraintsforoverconstra inedclustersofdof-rigid FrontiervertexDR-plans,bothfor2Dand3D,andmodifyingt heDR-planonce theyhavebeenremoved,ispresentedbyHomannetal.[ 8 ].Otherdesirable propertiessuchassystematiccorrectionofunderconstrai nts,andamenability toecientupdatesofgeometricprimitivesorconstraintsa regivenbySitharam [ 2 11 ]. The input istheconstraintgraph G andthe output isaDR-planofquadratic width,satisfyingthecompletenessproperty,withconstan tbest-choiceapproximation factor.Repeat pickaclusterCfromclusterqueueCQDistributecluster(C)inclustergraphCGifnewclusterC'isfound(containingC)then Complete(C'G) [recursiveprocedurebuildscompletesubDR-planfor clustergraphrestrictedtoC',thatis,inputconstraintgraphrestrictedtoC',startingfromthosesubclustersofC'thatarealreadypresentinDR-plan; PAGE 36 24 modifiesDR-plan,insertingC'andnewfoundsubclustersofC'intoit.] insertC'attheendofCQCombineCQ(iterativeprocedurethatmodifiesbothDR-plan andCQuntilnofurthercombiningispossible) updateCGby(frontiervertex)Simplify(clustersinCQ)removeCfromCQ UntilCQisemptyifDR-planhasmorethan1root,thenComplete(CG) Wedescribethemethods: DistributeCluster,Simplify,andCombine tothe extentnecessarytodescribeandanalyzeourfeatureincorp orationalgorithm. DistributeCluster inturnrelieson3methodsbasedonnetworkrowforlocating dof-rigidclusters: DistributeVertex,DistributeEdgeandPushOutside .Itisnot necessarytodescribeCompletesinceitisunaectedbythef eatureincorporation algorithm.Forthese,thereaderisreferedtoLomonosovand Sitharam[ 9 24 ]. Briery:andCompleterecursivelycallsitselfaswellasDis tributecluster,Combine andSimplifyandrequirescaresincecompletenesscompetes withthesmallwidth propertyofDR-plansasmentionedinSection 1.2 3.2.1DistributingEdges Thedensesubgraphisolationalgorithmisusedrepeatedlyt onddof-rigid clusters.ItwasrstgivenbyHomannetal.[ 1 5 ]asamodiedincremental networkmaximumrowalgorithm.Weassumestandardworkingk nowledgeof networkrow.Thekeyroutineisthe distribution ofanedgeintheconstraintgraph G .Foreachedge,wetryto distribute theweight w ( e )+ D +1tooneorbothof itsendpointsas row withoutexceedingtheirweights,referredtoas\distribut ing theedge e ."andcalledthe DistributeEdge routine.Thisisbestillustratedona correspondingbipartitegraph G :verticesinoneofitspartsrepresentedgesin G andverticesinthesecondpartrepresentverticesin G ;edgesin G represent incidencein G .AsillustratedbyFigure 3{8 ,wemayneedtoredistribute(ndan augmentingpath). PAGE 37 25 e g f a c b 3 4 3 3 3 2 3 21 3 f e c b a g t3 3 3 2 3 4 2 1 3 3 0 0 s 2 s t2 3 4 3 3 3 1 2 1 2 1 3 s t *3 3 3 2 3 4 0 Figure3{8:Constraintgraph G withedgeweightdistribution. Ifweareabletodistributealledges,thenthegraphisnotde nse.Ifnodense subgraphexists,thentherowbasedalgorithmwillterminat ein O ( n ( m + n ))steps andannouncethisfact.Ifthereisadensesubgraph,thenthe reisanedgewhose weightplus D +1cannotbedistributed(edgesaredistributedinsomeorde r,for examplebyconsideringverticesinsomeorderanddistribut ingalledgesconnecting anewvertextoalltheverticesconsideredsofar).Thesearc hfortheaugmenting pathwhiledistributingthisedgemarkstherequireddenseg raph.Ifthefound subgraphisnotoverconstrained,thenitisinfactminimal. Ifitisoverconstrained, Homannetal.[ 1 5 ]giveanecientalgorithmtondaminimalclusterinsideit 3.2.2SimplifyingClusters Wenowdescribethemethod Simplify .Thisfrontiervertexsimplication wasgivenbyHomannetal.[ 6 7 ].Thefoundcluster C interactswiththerest oftheconstraintgraphthroughits frontiervertices ;thatis,theverticesofthe clusterthatareadjacenttoverticesnotinthecluster.The verticesof C thatare notfrontier,calledthe internalvertices ,arecontractedintoasingle core vertex. Thiscoreisconnectedtoeachfrontiervertex v ofthesimpliedcluster T ( C )by anedgewhoseweightisthesumoftheweightsoftheoriginale dgesconnecting internalverticesto v .Here,theweightsofthefrontierverticesandoftheedges connectingthemremainunchanged.Theweightofthecorever texischosensothat thedensityofthesimpliedclusteris D ,where D isthegeometry-dependent constant.Thisisimportantforprovingmanypropertiesoft heFADR-plan: evenif C isoverconstrained, T ( C )'soverallweightisthatofawellconstrained graph,(unless C isrotationallysymmetric-inwhichcase,itlacksonedof). PAGE 38 26 i 2 2 5 10 8 3 11 9 64 2 12 1 20 15 13 17 19 18 21 22 C4 3 7 23 h g f e 15 19 3 3 13 h 5 10 8 3 11 9 64 2 12 1 20 2 6 7 g f e g 13 3 1 10 15 19 20 ef 2 4 3 4 C7 4 h 1 3 C21 6 9 12 3 4 7 19 6 2 2 h C7 2 3 3 13 g f e 20 1 2 3 8 9 11 10 12 15 Figure3{9:FrontierAlgorithm'ssimplicationofgraphgi vingDR-plan(Figure 1{5 ). Technically, T ( C )maynotbewellconstrainedintheprecisesense:itmaycont ain anoverconstrainedsubgraphconsistingonlyoffrontierve rticesandedges,butits overalldofcountisthatofawellconstrainedgraph. Figure 3{9 illustratesthisiterativesimplicationprocessendingi nthenal DR-plan(Figure 1{5 ). Therowsontheinternaledgesandthecorevertexareinherit edfromtheold rowsontheinternaledgesandinternalvertices.Theundist ributedweightsonthe internaledgessimplydisappear.Theundistributedweight sonthefrontieredges aredistributed(withinthecluster)asmuchaspossible.Ho wever,undistributed weightsonthefrontieredges(edgesbetweenfrontierverti ces)maystillremainif thefrontierportionoftheclusterisseverelyoverconstra ined. 3.2.3Datastructures Fourdatastructuresaremaintained.The cluster datastructureforacluster C containsdataonthesimplicationofthecluster(frontier vertices,edgesand soon.),theoriginalgraphverticesandedgescorrespondin gto C ,andpointersto therootsofthecurrentsubDR-planrootedat C (mayormaynotbecomplete sub-DR-plandependingonthestageofthealgorithm).The DR-plan datastructure PAGE 39 27 justcontainspointerstotheclustersthatarecurrentlyth etop-levelclusters intheDR-plan.The roworclustergraph CG containsthecurrentsimplied graphwherethefoundclustershavebeensimpliedusingthe frontiervertex simplication.Italsocontainsallthecurrentrowinforma tionontheedges.a clusterqueue CQ whichisthetop-levelclustersoftheDR-planthathavenotb een consideredsofar,intheorderthattheywerefound. Westartwiththeoriginalgraphwhichservesastheclustero rrowgraph initially,wheretheclustersaresingletonvertices,TheD R-planconsistsofthe leaforsinknodeswhichareallthevertices.Theclusterque ueconsistsofallthe verticesinanarbitraryorder.3.2.4DistributingVerticesandClusters Themethod DistributeVertex distributesalledges(callsDistributeEdge) connectingthecurrentvertextoalltheverticesconsidere dsofar.Whenoneofthe edgescannotbedistributedaminimaldensecluster C isisolated,asdescribedin Section 3.2.1 Nowwedescribethemethod DistributeCluster .Assumealltheverticesin theclusterqueuehavebeendistributed(eithertheywerein cludedinahigher levelclusterintheDR-plan,ortheyfailedtocausetheform ationofacluster andcontinuetobeatoplevelnodeoftheDR-plan,buthavedis appearedfrom theclusterqueue).AssumefurtherthattheDR-planisnoten tire,thatis,itstop levelclustersarenotmaximal.Thenextlevelofclustersar efoundbydistributing the(completed)clusterscurrentlyintheclusterqueue.Th isisdonebyllingup the\holes"ortheavailabledegreesoffreedomofacluster C beingdistributed by D unitsofrow.Thenthe PushOutSide methodsuccessivelyconsiderseach edgeincidentontheclusterwith1endpointoutsidetheclus ter.Itdistributesany undistributedweightontheseedges+1extraweightunitone achoftheseedges. ItisshownbyLomonosovandSitharam[ 9 24 ]thatif C iscontainedinsidea PAGE 40 28 largercluster,thenatleastonesuchclusterwillbefoundb ythismethodonceall theclusterscurrentlyintheclusterqueuehavebeendistri buted. 3.2.5CombiningClusters Next,weemphasizethepartsofthealgorithmthatensureacr ucialproperty oftheoutputDR-planthatthefeatureincorporationalgori thmmustdealwith, namelysmallwidth,whilemaintainingcompletedecomposit ionofclusters(two types)denedinSection 1.2 .TheFADR-plannercontrolsthewidthofthe FADR-plantoensureFAachievesaquadraticboundonDR-plan widthby maintainingthefollowinginvariantoftheclusterqueue wheneverDistributeCluster iscalled,everypairofclustersintheclusterqueueandclu stergraphintersect onatmostatrivialsubgraph(thatis,asubgraphwhichonres olvingincidence constraintseitherrepresentstoasinglepointin2Doravar iableorxedlength linesegmentin3D). FAdoesthisbyrepeatedlyperformingthe Combine operation eachtimeanewclusterisisolated. Theoperationistoiteratively combine N [ D 1 withanyclusters D 2 ;D 3 ;::: basedonanontrivialoverlap.Inthiscase, N [ D 1 [ D 2 N [ D 1 [ D 2 [ D 3 andsoonentertheDR-planasastaircase,orchain,butonlyt hesinglecluster N [ D 1 [ D 2 [ D 3 [ ::::: enterstheclustergraphandclusterqueueafterremoving D 1 D 2 D 3 ::: 3.3IncorporatinganInputFeatureDecompositionintoFADR -plan Wedevelopanewalgorithmthatsolvesthealgorithmicprobl emofSection 3.1 .Thatis,itpermitstheFADR-planner(sketchedinSection 3.2 [ 9 24 ])to incorporateintoitsoutputDR-plananinputfeaturedecomp ositionorconceptual, designdecomposition.3.3.1MoreDetailedRequirementsontheMethod Arecursivemethodcalled DistributeGroup drivesthenewFADR-plannerItis calledontherootnodeoftheinputfeaturedecomposition,w hich,byconvention, PAGE 41 29 representstheentiregraph.Let G 1 ;G 2 ;::;G m bethechildrenofsomeparent feature G intheinputdecomposition. NowthattheFADR-planner'sstructurehasbeendescribed,w ecangivea moredetailedsetofrequirementsonthefeatureincorporat ionalgorithmbasedon theformalproblemrequirementsofSection 3.1 Firstofall,weneedtoensurethateachfeature G i itselfappearsinthe outputDR-planprovideditisavalidcluster.Ifitisnotacl uster,thenacomplete maximaldecompositionofitisobtained.Thisimpliesthata separateDR-planfor each G i needstobeobtainedandalloftheseDR-plansshouldappearw ithinthe DR-planfor G Secondly,whilewecannotmaintainthesamewidth W asanFADR-plan thatisnotrequiredtoincorporateanyfeatures(forthesam econstraintgraph), wewouldliketohaveawidthsignicantlysmallerthan O ( WF ),where F is thenumberoffeaturesintheinputfeaturehierarchy.Inste adofspecifyingthe desiredcomplexity,wesimplyrequirethe\bestpossible." thatis,werequirethat consistencybetweentheDR-plansofthedierent G i 'sneedstobeestablished,in casetheyhavesharedobjects.Inparticular,inthe3Dconst raintsystem(Figure 3{10 ),assume G 1 'sDR-planhasbeenobtainedandhasanintermediatecluster bcd WhentheDR-planfor G 2 isobtained,thesameclustershouldappear. Thirdly,foreciency,wewouldlikethenewDR-planner-whi leworkingon some G i -touseasmuchoftherow,clusterandDR-planinformationth atit alreadyobtainedwhileworkingonsomeearlier G k ,sothattheentirecomplexityis proportionaltothewidthornumberofclustersinthenalDR -plan. Thusthekeyissuesare:howaretheroworclustergraph(Sect ion 3.2 )and theoutputDR-planecientlymaintainedandmodiedaseach G i isworkedon,so thattheaboverequirementsaresatised. PAGE 42 30 Figure3{10:ConsistencybetweentheDR-plansof2groupsof graph(Figure 3{6 ). Finally,notethatsincetheinputdecompositionmaybea dag ,andnota tree,somechildrenmayhavemorethanone\parent."However DistributeGroup mustbeperformedonlyonceonanygivengroup G ;Whenanotherparentof G calls DistributeGroup( G ) atalaterpointintime,thestoredresultsfortherowor clustergraphandDR-planfor G shouldbereturned. 3.3.2DistributingGroupsorFeatures Wediscuss3distinctcasesthatneedtobedealtwithdieren tlyatthecrucial stepsofthealgorithm.Case1:thechildrenof G aremutuallypairwisedisjoint,i.e,donotoverlapeach otherCase2: G i 'soverlapwith G k (1 k i 1) consistsentirelyoffrontierverticesof thetoplevelclustersinthemergedDR-planofthe G k 's. Case3:foratleastoneofthe G 0k s (1 k i 1) G i 'soverlapwith G k includes vertices(oftheoriginalgraph)thatmaptothecoreofoneof theclustersof G k Themethod DistributeGroup ( G ).consistsof4steps.First,foreachchild group G i of G ,itperformsthefollowing3steps. Forclarityofexposition,weprefertonotgiveapseudocode for DistributeGroup ( G ), butratherexplainsuccessivelyeachofthe4stepsforallth reeofthecases.When werefertothe\old"DR-planner,wemeanthepseudocodeofSe ction 3.2 ;and the\new"referstotheoldFADR-planneraugmentedbythe DistributeGroup PAGE 43 31 driver.AdetailedpseudocodeoftheentireFADR-plannerin cludingthefeature incorporationalgorithmareprovidedbySitharam[ 11 ]. TheoldFADR-plannerofSection 3.2 iscalledon G i andstartsanew DR-planfor G i (whichwilleventuallygetmergedwiththeDR-plansoftheot her childrenof G afterStep3below).ThenthenewDR-plannerusesdierentop tions fortheroworclustergraphsforthethreecases.Case1 :Usethecurrentroworclustergraphbyfreezingalltheedge sandvertices outsideof G i ; Case2 :Usethecurrentroworclustergraph,modifytherowoncaref ully selectededgesandverticesoutsideof G i mark ingthemandfreezingthem;that isforeachedge e withoneendpointin G i andanotherendpointoutside G i ,if thereisanyrow f onthisedgetowards G i ,thenremoveitandinsteadadd f totheundistributedrowcapacityonthisedge e .Markthisedge e ashaving undistributedrow.Case3 :Createanewlocalcopyofarowgraphfor G i alone(whichwilleventually beusedtoupdatethecurrentrowgraphinStep3below). TheDR-plannercontinueswitharecursivecallto DistributeGroup( G i ) during whichitensuresthat DistributeEdge isrunontheundistributedrowonallmarked edgeswithin G i .Anedge e isun mark edonlyifdistributionissuccessfulonall undistributedunitson e TheDR-plannermergestheDR-Planof G i withtheDR-Plansof G 1 through G i 1 .Thisincludesmergingcopiesofclustersthatcouldhavebe enindependently foundbytheDistributeGroupmethodon2dierentgroups.It additionally includesputtingclusterstogethertoformlargerclusters ,basedonamountof overlap;augmentingcurrentrowgraph(mergedrowgraphsso far)usingthelocal roworclustergraphfor G i .Thislatterpartincludesnotonlycombiningclusters butalsomodifyingrows. PAGE 44 32 Morespecically,thefollowingmergingoperationsareper formed. First,ifaclusterintheDR-plansfor G 1 ;G 2 ;:::;G i 1 appearsagaininthe DR-planfor G i ,thetwocopiesarelinkedtopreventreplicationofeortdu ring thesolvingstage.Whilethedistinctgroupsoftheinputdec ompositionthatare presentinthesub-DR-planofeachclustercopywillhavetob esolved,thecluster itselfandanyclusterinitssub-DR-planthatisnotasubset ofagroupintheinput decomposition,willonlyhavetobesolvedonce.Notethatme rgingthecluster copies(bytakingtheunionoftheirparentsandunionofthei rchildren)willviolate theso-calledclusterminimalitypropertyofagoodDR-plan (mentionedinSection 3.1 ),sinceapropersubsetofthechildrenwouldalreadyformth ecluster. Next,theDR-plannerlooksatthetoplevelclustersoftheme rgedDR-plan for G 1 ;G 2 ;:::;G i 1 andthetoplevelclustersoftheDR-planfor G i .Ifanypairof thesesay C and D intersectnontrivially,onmorethan2pointsin2Dand3poin ts in3D,thencreateaparentcluster C [ D of C and D ,intheDR-plan;(thisisthe sameasthe Combine operationonclustersperformedbythebasicFA-Section 3.2 ),andmakingthecorrespondingsimplicationintheroworc lustergraph, describedbelow.Cases1and2 :Becausethelocalrowgraphisinheritedfromtherowgraphf or G noadditionalmodicationisneeded;Case3 :removesallrowfromthenon-clusteredgesthatareintheov erlappedpart between G i andthatpartof G thathasbeencompletedsofari.e: G 1 ;:::;G i 1 and mark stheirentireweightasundistributed.Theseedgeswillber edistributedwhen theclustersthatcontainthemaredistributed. OncetheDR-plansofallthe G i 'shavebeencombined,theDR-planner proceedsasdescribedinSection 3.2 ontheresultingroworclustergraphof G performing DistributeCluster ontheclustersinthem,potentiallyisolatingand PAGE 45 33 G2 1 1 1 a b c d e f g h G1 G2 1 1 1 e h G IV 1 1 1 I II III G1 a b c d e f g h G1 G2 1 1 1 a b c d e f g h a bc G1 dg f G2 a bc G1 dg f G2 a bc G1 dg f G2 Figure3{11:ChildClustersdonotoverlap(Case1). simplifyingnewclustersthatcontainthe G i 's,modifyingtheclusterqueueandthe DR-plan,untiltheDR-planfor G iscompleted. Wenowdescribehowtheabovealgorithmworkson3examplesth atrepresent the3cases.Forthe3Dexampleofpointsanddistanceconstra intsin Case1 Part Ishows(Figure 3{11 )therowgraphandtheclusterqueue(Section 3.2 )after theDR-planfor G 1 hasbeenconstructed.WhentheoldDR-plannerstartsto distribute G 2 ,itcreatesanewclusterqueuefor G 2 andinheritstherowgraphin Step1.AftertheoldDR-plannerinnishedwith G 2 ,inStep2,theDR-planof G 2 andtheroworclustergraphareshowninPartII.ThenthenewD R-plannertries tocombinetheminStep3andtheresultsareshowninPartIIIo fthegure.The nalDR-planof G whichisobtainedafterStep4isshowninPartIV. Forthe3Dexampleofpointsanddistanceconstraintsin Case2 (Figure 3{12 ),PartIshowstherowgraphandclusterqueueaftertheDR-pl anfor G 1 has beencompleted.WhentheDR-plannerstartstodistribute G 2 ,itcreatesanew clusterqueuefor G 2 andinheritstherowgraphinStep1.Italsoremovestherows ontheedge ce and cg and mark sthem.AftertheoldDR-plannerisnishedwith G 2 inStep2,theDR-planof G 2 andtherowgraphareshowninPartII.Since G 1 PAGE 46 34 a IV G G3 b a G1 c G2 h f g d e b G2 h f g d e G2 G1 G3 h g f e d c G2 e G1 G2 G1 G3 h g f e d c b a d h III II I G1 G3 g f e d c b a c g G1 c G2 h f g d e Figure3{12:Inputgroupsoverlaponfrontiervertices(Cas e2). and G 2 overlapon3points,thenewDR-plannercombinestheminStep 3andthe resultsareshowninPartIII.ThenalDR-planof G whichisobtainedafterStep4 isshowninPartIV. Forthe3Dexampleofpointsanddistanceconstraintsin Case3 PartIshows (Figure 3{13 )therowgraphandclusterqueueaftertheDR-planfor G 1 hasbeen constructed.WhentheoldDR-plannerstartstodistribute G 2 ,itcreatesanew clusterqueuefor G 2 andtherowgraphinStep1.AftertheoldDR-planneris nishedwith G 2 inStep2,theDR-planof G 2 andtherowgraphareshownin PartII.Since G 1 and G 2 overlapon4points,theDR-plannercombinesthemin Step3andtheresultsareshowninPartIII.ThenalDR-plano f G whichis obtainedafterStep4isshowninPartIV.3.3.3ProofofCorrectnessandComplexity Weshowhowthe3requirementsofSection 3.3.1 aremet. FromSteps1and2,weknowthatforeachdecomposition G i ,thealgorithm createsanewDR-plan.Thisensures,bythepropertiesofthe oldFADR-planner giveninSection 3.2 ,thateachfeature G i appearsintheoutputDR-planprovided PAGE 47 35 b c G1a G2 f g e d e d c b a f G2 f g e d c b G3 G2 G1 h g g f e d c b a h IV III II I h G3 G G1a G2 f g e d c b G3 G2 G1 c b a G3 G2 G1 h g f e d c b a d G1 e G1 e d c b a G3 G2 G1 h g f e d c b a Figure3{13:Theoverlappedpartincludesnon-frontierver tices(Case3). itisavalidcluster,andotherwiseacompletedecompositio nintomaximalclusters isobtained.InStep3,theDR-plannerchecksthepairofthet oplevelclusters ofDR-planfor G i andthoseofthecombinedDR-planfor G 1 ;G 2 ;:::;G i 1 and combinethemifpossible.Becausethisprocessisexecutedf oreach G i afterits DR-planisestablished,thealgorithmcombinestheDR-plan sforallthe G i 'sto givetheDR-planfor G .ThusRequirement1ismet. InStep3,thenewalgorithmlinkstwocopiesofthesameclust erindierent G i 's.Thus,thereisonlyonecopyofthisclusterintheDR-plan of G .So,the consistencybetweentheDR-plansisensured,satisfyingRe quirement2. Finally,therowinformationinthe3casesiseitherusedass uch,copiedand restored,orischalkedupasundistributedunitswhichwill bere-distributedin Step2bytheoldDR-planner.Thisguaranteesthatrowinform ationremains accuratethroughout,givencorrectnessofoldDR-planner. Also,noticethat foranygivenedge,thenumberoftimesitisre-distributedi snomorethanthe numberofgroupsorfeaturesinthefeaturehierarchythatsh arethatedge.This ensuresthatanyadditionaltimespent(beyondthatoftheor iginalDR-planner) PAGE 48 36 isproportionaltothenumberoffeaturesintheinputfeatur ehierarchy;thereby ensuringRequirement3.3.3.4PreservingPropertiesoftheOldFADR-planner IncorporationoffeaturesintotheDR-planleavesentirely unchangedmany desirablepropertiesofthetheoutputDR-planmentionedin Section 1.2 ,simply becausetheoldDR-planneriscalledbythe DistributeGroups driverateachstage toactuallyconstructtheDR-plan.Theseincludepropertie ssuchasdetectionand characterizationofoverandunderconstrainedness[ 6 8 ],completeness[ 9 24 ], systematiccorrectionofunderconstrainednessbygivings o-called completion constraints amenabilitytoecientupdates(additionordeletionormod ication)of geometricprimitivesorconstraints[ 2 11 ],ornavigationofthesolutionspace[ 13 ]. Next,webrierydiscusssomedesirablepropertiesoftheFAD R-planthatare aectedbythefeatureincorporationalgorithmaswellaspr opertiesthatareonly relevantinthepresenceoffeatures. Let n isthenumberofverticesoftheinputconstraintgraphand k isthe numberoffeaturesintheinputfeaturedecomposition.Usin gtheargument givenintheproofofcorrectnessandcomplexity,andthecom plexityoftheold DR-planner,thefollowinghold.Ifallthefeaturesareeith erdisjointorcontain oneanother(Case1).newalgorithm'stimecomplexityis O ( n 3 ),width O ( n 2 )(the complexityoftheoldDR-planner).Ifthefeaturesintersec tontrivialsubgraphs orcontainoneanother(Case2),thecomplexityis O ( n 3 + k ),width O ( n 2 + k ). Finallyifthefeaturescouldintersectonnontrivialsubgr aphs,thebestbound oncomplexityis O ( n 3 k ),width O ( n 2 k )(weomitaner,butsignicantlymore cumbersomecomplexityexpressionintermsofsizesofthein tersectionsandsoon.) Thesearethebestcomplexitiesonecanexpect.Therstfact oristhecomplexity oftheunderlyingoldFADR-plannerandintypicalcases,the secondfactoris insignicant. PAGE 49 37 Concerningoptimality,theFADR-planner'sbestchoiceapp roximationfactor isunaectedbythenewaugmentation.Theproofisthesameas fortheold DR-planner[ 6 ]. AmongallDR-plansthatincorporatethegiveninputfeature decomposition ,theFADR-planneraugmentedbythefeatureincorporation algorithmcanndonewhosemaximumfan-inclusterhasafaninthatisatmosta constantfactorlargerthantheoptimum. Also,asmentionedearlier,thefeatureincorporationdoes notaecthe completenessproperty,sothealgorithms[ 14 48 ]canstillbeusedtondan optimalcoveringset. AnotherpropertyofFADR-plansthatissuperciallyaecte dbythepresence offeaturesisthesystematiccorrectionofoverconstraint s,thatis,themethod presented[ 8 ].Clearlyfeatureincorporationdoesnotaecttheability todetect overconstraintsandisolateofacompletesetofoverconstr aintsthatcanbe removedwithoutmakingthe entire graphunderconstrained.However,correction ofoverconstraintstypicallyresultsinremovingsomeclus tersintheDR-plan,since theybecomeunderconstrained,althoughtheentiregraphre mainswell-constrained. Inthepresenceoffeatures,itisreasonabletorequirethat no featurethatwas previouslyaclusterismadeunderconstrainedbythecorrec tion,thatis,theset ofso-called reducible overconstraintsissmaller.However,theoverconstraint correctionmethod[ 8 ]explicitlyprovidesalistofreducibleoverconstraints directly associated witheachclusterintheDR-plan.Hence,therequiredmodic ationis straightforward:thenewsetofreducibleoverconstraints thatpreservefeaturesis theunionofallthereduciblesetsofoverconstraintsdirec tlyassociatedwitheach clusterfeatureintheDR-plan,togetherwiththeunionofal lthereduciblesetsof overconstraintsforclustersthatarenotdescendantsofan yclusterfeatureinthe DR-plan. PAGE 50 38 Finally,apropertylistedundertheoutputrequirementsof thefeature incorporationprobleminSection 3.1 istheabilitytoupdatetheinputfeature decompositionandcorrespondinglyecientlyupdatetheDR -plan. Removalofafeatureisstraightforward.Ifthefeatureisac lusteritsimply entailstheremovalofthecorrespondingnode C fromtheDR-plan,andallof itsdescendantsthatareinessentialchildrenoftheirothe rparentswhoarenot descendantsof C (Section 3.2 ).Ifthefeatureisnotacluster,thenallofits maximalproperclustersarepresentasnodesintheDR-plana ndthesearetreated like C above.TheDR-plannerdoesnotneedtobeinvolvedinthissim pleeditof theDR-plan. Additionofafeatureismoreinvolved.Therearetwocases.I nthecasewhere thefeatureisnotcontainedwithinanexistingclusterofth eDR-plan(itcould becontainedinthesinglerootifthegraphiswellconstrain ed),thentheaddition ofthefeatureisstraightforwardsinceitwillentertheupp ermostlevelofthe DR-plan.ItissimplytreatedbytheDistributegroupsmetho dasthoughitisa (last)childoftherootoftheinputfeaturedecomposition. Ifthefeaturecontains newgeometricelementsandconstraints,theseareprocesse dusingtheupdate methodforFADR-plans,givenbySitharam[ 2 11 ].Incasethenewfeature F iscontainedwithinoneormoreoftheexistingclusters C i intheDR-plan,itis rstassumedtobeaclusterandinsertedintheDR-planasach ildofthe C i andasaparentofallthemaximalclusters D i thatarecontainedin F andare presentinthesub-DR-planrootedatanyofthe C i 's.Since F liesinsideanalready processedcluster,norowinformationisavailable.Aclust erorrowgraphof F is createdbyusingthefrontiervertexsimplicationsofthes emaximalclusters.These frontierverticesareconnectedusingedgesfromtheorigin algraph.Aclusterqueue withtheseclustersiscreatedandtheseclustersaretreate dasthetoplevelofthe DR-planfor F constructedsofar.thatis,Steps3and4ofthe DistributeGroup PAGE 51 39 methodon F areexecuted,takingthesub-DR-planrootedat F astheinput featuredecompositionandassumingthat DistributeGroup hasalreadybeencalled onthechildrenof F inthisfeaturedecomposition.DuringStep4,sincenoneof theedgesintheroworclustergraphconstructedfor F havebeendistributed, Pushoutside andothermethodscannotassumethattheedgesinthecluster graph for F havebeendistributed, DistributeEdge isrunagainontheseedges. Adetailedpseudocodethatincludesthenewfeatureincorpo rationalgorithm isprovidedbySitharam[ 11 ].Documentedopensourcecodecanbedownloaded fromSitharam'swebsite[ 15 ](usepost-December-2003versionsfor3D)Touse thefeatureincorporationoptionafteropeningthemainske tcherwindow,and afterpullingup(ordrawing)asketch:press'ctrl'keyandl eftclicktheobjects whichshouldbeinthesamefeature.Youwillseethecolorofa llselectedobjectsis changed.Tip:youcanuseleftmousebuttontodrawarectangl etoselectobjects quickly,thenuse'ctrl'+leftclicktomodifyselectedset( 'ctrl'+leftclickon aselectedobjectwouldunselectit.)Click'Design'menu,t henclick'Makenew tree'tocreateeachfeaturehierarchy(independentfeatur ehierarchiesforthesame constraintgraphprovidedbydierent\users"ormultiplev iews,arecombinedto formasinglecompositefeaturehierarchy,internally).Th enclick'Makenewgroup' tocreatethefeature.Foreachfeatures,youcouldsimplyse lecttheprimitive objectsinthemandclick'Makenewgroup'.Youcancheckthef eaturesbyclicking the'group'tabinright-bottomofthewindow. Note. Recallthatthedof-rigidFADRplanner(Section 1.2 )considered heredoesnotdealwithimplicitconstraintdependences.Ho wever,themore general,module-rigidFADR-planner[ 12 ]dealswithallknowntypesofconstraint dependencessuchasbananasandhinges.Whileincorporatio nofafeature hierarchyintothethemodule-rigidFADR-planner[ 12 ]hasbeenimplemented inFRONTIER[ 10 15 ],itsdescriptionandanalysisarebeyondourcurrentscope PAGE 52 40 Wewouldliketonotethatthedetectionofmodule-rigidityc ruciallyreliesonthe completenessoftheunderlyingdof-rigidDR-planner,whic hisunchangedbythe featureincorporationalgorithm.Moresignicantly,then otionofamodule-rigid clusterincludesso-called dependent clustersthatarenotself-contained,butthey needtoberesolvedafterothers,imposinga solvingpriority order.DR-planners thatcandealwithsuchclustershaveanedgeinincorporatin gthosefeatures-as inproceduralhistorybasedrepresentations-whoseveryde nitionisbasedon previouslydenedfeatures. PAGE 53 CHAPTER4 COMBINATORIAL3DRIGIDITYCHARACTERIZATION Onebigopenproblemisthequestionofrigidityof3Dconstra intsystems evenwhenonlydistancesareinvolved.Theproblemisthatmo stcombinatorial characterizationsofrigiditywillmisshiddendependenci esbetweenconstraintsand willbewronglyclassifymanyclassicalnonrigidsystemsas rigid. Inthischapter,wegiveapolynomialtimecharacterization called modulerigidity thatisnotfooledbyanyknownsuchcounterexampleofnonrig id systems.Weshowthatthispropertyisnaturalandrobustina formalsense. Rigidityimpliesmodule-rigidity,andmodule-rigiditysi gnicantlyimproves uponthegeneralizedLamandegree-of-freedomordensityco unt.Specically, graphscontaining"bananas"or"hinges"[ 19 ]arenotmodule-rigid,whilethe generalizedLamancountwouldclaimrigidity.Thealgorith mthatfollowsfrom ourcharacterizationofmodule-rigiditygivesacompleted ecompositionofnon module-rigidgraphsintoitsmaximalmodule-rigidsubgrap hs. 4.1DeterminingDofRigidity:TheFrontierVertexAlgorith m(FA) Inthissection,werstgiveanalternativecharacterizati onofdofrigidity whichtranslatestoausefulpropertyofdofDR-planscalled dofcompleteness (Weomitproofs).ThenwesketchrelevantpropertiesofFron tiervertexDR-plans andthecorrespondingDR-planner(FADR-planner)[ 6 9 ]whichfollowsthis characterization. Let C beageometricconstraintgraph.Then Q = f C 1 ;:::;C m g ,asetof dofrigidpropersubgraphsof C ,isa complete,maximal,dofrigiddecomposition of C ifthefollowinghold.Ifthereisamaximal,dofrigidproper subgraphof C thenitmustcontainoneofthe C i in Q .Furthermore, Q shouldsatisfyoneof 41 PAGE 54 42 thefollowing. Case1: m =2and C 1 and C 2 intersectonanontrivialsubgraph andtheirunioninducesallof C Case2: Eachofthe C i 'sis nearlymaximalwith respecttotheset Q inthefollowingsense:theonlydofrigidpropersubgraphso f C thatstrictlycontain C i intersectalltheothersubgraphs C j j 6 = i onnontrivial subgraphs; Thenexttheoremgivesanalternatecharacterizationofdof rigidity. Theorem4.1.1 Let C beageometricconstraintgraphand Q = f C 1 ;:::;C m g ,be acomplete,maximal,dofrigiddecompositionof C .Then C isdofrigidifandonly if X S Q ( 1) j S j 1 Adj dof ( \ C i 2 S ( C i )) D; where(recall) D isthenumberofdofsofarigidbody,andAdj-dof ( C i ) iseither thenumberofdofs(negationofdensity)of C i if C i istrivial;orsimply D if C i is nontrivial.NotethatifCase1holds,then C isautomaticallydofrigid-infact,the rstpropertyof Q isredundant. Thenextlemmaexplainsthetractabilityofthismethodofde terminingdof rigidity.Lemma4.1.2 If C isnotdofrigid,thenonlyCase2intheDenition 4.1 applies.Furthermore,Case2impliesthatnopairof C i intersectonmorethana trivialsubgraph.Thus(usingasimpleRamseytheoreticarg ument), m isatmost O ( n 3 ) ,where n isthenumberofvertices C .Furthermore,thecomputationofthe inclusion-exclusionformulainTheorem 4.1.1 takes O ( n 3 ) time. ThisleadstoarobustpropertyofDR-plansusingwhichthech aracterization canbetranslatedtoanalgorithm. AdofDR-plan P forageometricconstraintgraph G is dofcomplete iftheset Q ofchildclustersofeverydofcluster C in P isacomplete,maximal,dofrigid decompositionof C .PartialdofcompleteDR-plansaredenedanalogouslyasin PAGE 55 43 Section 6.1 ,andjustasbefore,anypartialdof-complete)DR-planfora constraint graph G canbeextendedtoadof-complete)DR-planfor G 4.1.1TheFrontierVertexDR-plan(FADR-plan) Note. Throughoutthissection,unlessotherwisementioned,\clu ster"means \dofcluster,'"\rigid"means\dofrigid,"and\DR-plan"me ans\dofDR-plan." Intuitively,anFADR-planisbuiltbyfollowingtwostepsre peatedly: Isolate acluster C inthecurrentgraph G i (whichisalsocalledthe clustergraph or row graph forreasonsthatwillbeclearbelow).Checkandensureacomp lete,maximal, dofrigiddecompositionof C Simplify C into T ( C ),transforming G i intothenextclustergraph G i +1 = T ( G i )(therecombinationstep). Theisolationalgorithm,rstgivenbyHomannetal.[ 1 5 ]isamodied incrementalnetworkmaximumrowalgorithm.Thekeyroutine isthe distribution ofanedgeintheconstraintgraph G .Foreachedge,wetryto distribute theweight w ( e )+ D +1tooneorbothofitsendpointsas row withoutexceedingtheirweights, referredtoas\distributingtheedge e ."Thisisbestillustratedonacorresponding bipartitegraph G :verticesinoneofitspartsrepresentedgesin G andverticesin thesecondpartrepresentverticesin G ;edgesin G representincidencein G .As illustratedbyFigure 3{8 ,wemayneedtoredistribute(ndanaugmentingpath). Ifweareabletodistributealledges,thenthegraphisnotde nse.Ifnodense subgraphexists,thentherowbasedalgorithmwillterminat ein O ( n ( m + n ))steps andannouncethisfact.Ifthereisadensesubgraph,thenthe reisanedgewhose weightplus D +1cannotbedistributed(edgesaredistributedinsomeorde r,for examplebyconsideringverticesinsomeorderanddistribut ingalledgesconnecting anewvertextoalltheverticesconsideredsofar).Itcanbes hownthatthesearch fortheaugmentingpathwhiledistributingthisedgemarkst herequireddense graph.Itcanalsobeshownthatifthefoundsubgraphisnotov erconstrained,then PAGE 56 44 itisinfactminimal.Ifitisoverconstrained,Homannetal .[ 1 5 ]giveanecient algorithmtondaminimal(non-trivial,ifoneexists)dofc lusterinsideit.Then LomonosovandSitharam[ 9 ]givesamethodtoensureacomplete,maximal,dof rigiddecompositionof C ThesimplicationwasgivenbyHomannetal.[ 6 7 ].Thefoundcluster C interactswiththerestoftheconstraintgraphthroughits frontiervertices ;that is,theverticesoftheclusterthatareadjacenttovertices notinthecluster.The verticesof C thatarenotfrontier,calledthe internalvertices ,arecontracted intoasingle core vertex.Thiscoreisconnectedtoeachfrontiervertex v ofthe simpliedcluster T ( C )byanedgewhoseweightisthesumoftheweightsofthe originaledgesconnectinginternalverticesto v .Here,theweightsofthefrontier verticesandoftheedgesconnectingthemremainunchanged. Theweightofthe corevertexischosensothatthedensityofthesimpliedclu steris D ,where D is thegeometry-dependentconstant.Thisisimportantforpro vingmanyproperties oftheFADR-plan:evenif C isoverconstrained, T ( C )'soverallweightisthatof awellconstrainedgraph,(unless C isrotationallysymmetricandtrivial,inwhich case,itretainsitsdoforweight).Technically, T ( C )maynotbewellconstrained intheprecisesense:itmaycontainanoverconstrainedsubg raphconsistingonly offrontierverticesandedges,butitsoveralldofcountist hatofawellconstrained graph. Figure 3{9 illustratesthisiterativesimplicationprocessendingi nthenal DR-plan(Figure 1{5 ). 4.1.2TheFrontierVertexAlgorithm(FADR-planner) ThechallengemetbyFAisthatitprovablymeetsseveralcomp eting requirements.Specically,itgivesadofcompleteDR-plan .Thegraphtransformation performedbytheFAclustersimplicationisdescribedform allybyHomannetal. [ 6 7 ]thatprovidethevocabularyforprovingcertainpropertie sofFAthatfollow PAGE 57 45 directlyfromthissimplication.However,otherproperti esofFArequiredetailsof theactualDR-plannerthatensuresthem,andarebrierysket chedhere. Note: adetailedpseudocodeoftheFADR-planner(theexistingver sion, aswellasincorporatingthemodule-rigidityalgorithmoft hissection)isgiven bySitharam[ 11 15 ].Thepseudocodehasbeenimplementedaspartofthe downloadable,opensourceFRONTIERgeometricconstraints olver[ 2 10 11 15 ]. ThebasicFAalgorithmisbasedonanextensionofthe distribute routinefor edges(explainedabove)toverticesandclustersinorderfo rtheisolationalgorithm toworkatanarbitrarystageoftheplanningprocess,i.e,in theclusterorrow graph G i First,webrierydescribethisbasicalgorithm.Next,weske tchthepartsofthe algorithmthatensure3crucial,inter-relatedproperties oftheoutputDR-plan:(a) ensuringdofcompleteness;(b)forunderconstrainedgraph s:outputtingacomplete setofmaximalclustersassourcesoftheDR-plan;(c)contro llingwidthofthe DR-plantoensureapolynomialtimealgorithm. Threedatastructuresaremaintained.Thecurrent roworclustergraph G i the current DR-plan (thisinformationisstoredentirelyinthehierarchicalst ructureof clustersatthetopleveloftheDR-plan),anda clusterqueue ,whichisthetop-level clustersoftheDR-planthathavenotbeendistributedsofar ,intheorderthat theywerefound(belowgivesanexplanationofhowclustersa redistributed).We startwiththeoriginalgraph(whichservesastheclusteror rowgraphinitially, wheretheclustersaresingletonvertices).TheDR-plancon sistsoftheleaforsink nodeswhichareallthevertices.Theclusterqueueconsists ofalltheverticesinan arbitraryorder. Themethod DistributeVertex distributesalledges(callsDistributeEdge) connectingthecurrentvertextoalltheverticesconsidere dsofar.Whenoneof theedgescannotbedistributedandaminimaldensecluster C isdiscovered,its PAGE 58 46 simplication T ( C )(describedabove)transformstherowgraph.Therowsonthe internaledgesandthecorevertexareinheritedfromtheold rowsontheinternal edgesandinternalvertices.Noticethatundistributedwei ghtsontheinternaledges simplydisappear.Theundistributedweightsonthefrontie redgesaredistributed (withinthecluster)aswellaspossible.However,undistri butedweightsonthe frontieredges(edgesbetweenfrontiervertices)maystill remainifthefrontier portionoftheclusterisseverelyoverconstrained.Theseh avetobedealtwith carefully.ThenewclusterisintroducedintotheDR-planan dtheclusterqueue. Nowwedescribethemethod DistributeCluster Assumealltheverticesin theclusterqueuehavebeendistributed(eithertheywerein cludedinahigher levelclusterintheDR-plan,ortheyfailedtocausetheform ationofaclusterand continuetobeatoplevelnodeoftheDR-plan,buthavedisapp earedfromthe clusterqueue).AssumefurtherthattheDR-planisnotcompl ete,thatis,itstop levelclustersarenotmaximal.Thenextlevelofclustersar efoundbydistributing theclusterscurrentlyintheclusterqueue.Thisisdoneby llingupthe\holes" ortheavailabledegreesoffreedomofacluster C beingdistributedby D unitsof row.The PushOutSide methodsuccessivelyconsiderseachedgeincidentonthe clusterwith1endpointoutsidethecluster.Itdistributes anyundistributedweight ontheseedges+1extraweightunitoneachoftheseedges.Itc anbeshown thatif C iscontainedinsidealargercluster,thenatleastonesuchc lusterwillbe foundbythismethodoncealltheclusterscurrentlyinthecl usterqueuehavebeen distributed.Thenewclusterfoundissimpliedtogiveanew rowgraph,andgets addedintheclusterqueue,andtheDR-planasdescribedabov e. Eventually,whentheclusterqueueisempty,i.e,allfoundc lustershavebeen distributed,theDR-plan'stoplevelclustersareguarante edtobethecomplete setofmaximaldofrigidsubgraphsoftheinputconstraintgr aph.Lomonosovand Sitharamgivetheformalproofs[ 9 ]. PAGE 59 47 W f e d c b a C2 C1 C1 C2 W a bc d e f g h i j Figure4{1:Finding W rstwillpreventdofmisclassicationwith2Dand3D example. Note :Throughout,intheinterestofformalclarity,weleaveout adhoc,but highlyeectiveheuristicsthatndsimpleclustersbyavoi dingfull-redgedrow. Onesuchexampleiscalled\sequentialextensions"whichau tomaticallycreates alargerclustercontainingacluster C andavertex v providedthereareatleast D edgesbetween C and v .Thesecaneasilybeincorporatedintotherowbased algorithm,providedcertainbasicinvariantsaboutdistri butededgesismaintained. ThiscompletesthedescriptionofthebackboneofthebasicF ADR-planner. Nextweconsidersomedetailsensuringtheproperties(a){( c)above. Firstweintuitivelyexplainwhydofcompletenessisacruci alproperty.After C 1 and C 2 arefound(Figure 4{1 ),when C 1 isdistributed, C 1 and C 2 wouldbe pickedupasacluster,althoughtheydonotformacluster.Th eproblemisthat theoverconstrainedsubgraph W intersects C 1 onatrivialcluster,and W itselfhas notbeenfound.Had W beenfoundbefore C 1 wasdistributed, W wouldhavebeen simpliedintoawellconstrainedsubgraphandthismisclas sicationwouldnothave occurred. IthasbeenshownbyLomonosovandSitharam[ 9 ]thatthistypeofmisclassication canbeavoided( W canbeforcedtobefoundafter C 2 isfound),bymaintaining PAGE 60 48 d c b a e C' C C e d c b a C3 C2 C1 e d c b a C3 C2 C1 C1 C4 a b c d e f g hi j k bcdefg h ijk l C1C2 C3 C4 E C C a l C3 C2 abcdefg h ijk l C1C2 C3 C4 Figure4{2:EnsuringClusterMinimality. threeinvariants.Thersttwoaredescribedhere.Thethird ishighlyrelatedto property(b)andisdescribedinthenextsubsection. Therstisthefollowinginvariant:alwaysdistributeallu ndistributededges connectinganewfoundcluster C (orthelastdistributedvertexthatcaused C tobefound),toalltheverticesdistributedsofarthatareo utsidethecluster C Undistributedweightonedgesinside C arelesscrucial:iftheybecomeinternal edgesofthecluster,thenthisundistributedweight\disap pears"when C is simpliedintoawellconstrainedcluster;thereisalsoasi mplemethodoftreating undistributedweightonfrontieredgessothattheyalsodon otcauseproblems-the methodandproofaregivenbyLomonosovandSitharam[ 9 ]). Thesecondinvariantthatisusefulforensuringdofcomplet enessisthatfor anyclusterintheDR-plan,nopropersubsetofatleast2ofit schildclusters formsacluster.Wecallthisproperty clusterminimality .FAensuresthisusinga generalizationofthemethod Minimal givenbyHomannetal.[ 1 5 ]whichndsa minimaldensesubgraphinsideadensesubgraphlocatedby DistributeVertex and DistributeEdge Onceacluster C islocatedandhaschildren C 1 ;:::;C k ,for k 2,arecursive method clusMin removesonecluster C i atatime(replacingearlierremovals) from C andredoestherowinsidetherowgraphrestrictedto C ,before C 's simplication.Ifapropersubsetofatleast2 C j 'sformsacluster C 0 ,thenthe clusMinalgorithmisrepeatedinside C 0 andthereafterin C again,replacingtheset ofchildclustersof C thatareinside C 0 byasinglechildcluster C 0 .Ifinsteadno PAGE 61 49 suchclusterisfound,thentheremovedcluster C i the essential .Thatis,itbelongs toeverysubsetof C 'schildrenthatformsacluster.Whenthesetofclustersits elf formsacluster E (usingadofcount),then clusMin iscalledon C againwithanew childcluster E replacingallof C 'schildreninside E WhiletheDR-plannerdescribedsofarguaranteesthatatter mination,top levelclustersoftheDR-planaremaximal.Italsoguarantee sthattheoriginal graphisdofunderconstrainedonlyifthereismorethanonet oplevelclusterin theDR-plan.However,inordertoguaranteethat all themaximalclustersofan underconstrainedgraphappearastoplevelclustersoftheD R-plan,weusethe observationthatanypairofsuchclustersintersectonasub graphthatreduces (onceincidenceconstraintsareresolved)intoatrivialsu bgraph(asinglepointin 2Dorasingleedgein3D).Thisboundsthetotalnumberofsuch clustersandgives asimplemethodforndingallofthem.OncetheDR-plannerte rminateswitha setofmaximalclusters,othermaximalclustersarefoundby simplyperforminga Pushoutside of2unitsoneveryvertex(in2D)oreveryvertexandedge(in3 D), andcontinuingwiththeoriginalDR-planningprocessuntil itterminateswitha largersetofmaximalclusters.Thisisperformedforeachve rtexin2Dandeach edgein3Dwhichguaranteesthatallmaximalclusterswillbe found.Lomonosov andSitharamgivetheproofs[ 9 ]. d c b a e C5 C3 C4 C2 C1 bd gh e c i f a i h g f Figure4{3:Preventaccumulationofclusters FAachievesalinearboundonDR-planwidthbymaintainingth efollowing invariantoftheclusterorrowgraph: everypairofclustersintherowgraph(top PAGE 62 50 leveloftheDR-plan)atanystageintersectonatmostatrivi alsubgraph .FAdoes thisbyrepeatedlyperforming2operationseachtimeanewpo tentialclusteris isolated. Therstisan enlargement ofthefoundcluster.Ingeneral,anewfound cluster N isenlargedbyanycluster D 1 currentlyintherowgraph,iftheir nonemptyintersectionis not arotationallysymmetricortrivialsubgraph.Inthis case, N neitherenterstheclustergraphnortheDR-Plan.Only N [ D 1 entersthe DR-plan,asaparentofboth D 1 andtheotherchildrenof N .Itiseasytoseethat the sizes ofthesubsystemscorrespondingtoboth N [ D 1 and N arethesame, since D 1 wouldalreadybesolved. WhentheDR-plannds(Figure 4{3 )thecluster C 2 after C 1 ,theDR-planner willndthat C 1 canbeenlargedby C 2 TheDR-plannerformsanewcluster C 4 basedon C 1 and C 2 andputs C 4 intotheclusterqueue,insteadofputting C 2 to clusterqueue. Thesecondoperationistoiteratively combine N [ D 1 withanyclusters D 2 ;D 3 ;::: basedonanonemptyoverlapthatisnotrotationallysymmetr icor trivial.Inthiscase, N [ D 1 [ D 2 N [ D 1 [ D 2 [ D 3 andsoonentertheDR-plan asastaircase,orchain,butonlythesinglecluster N [ D 1 [ D 2 [ D 3 [ ::::: enters theclustergraphafterremoving D 1 D 2 D 3 ::: Ofcourse,bothoftheseprocessesaredistinctfromtheorig inalrow distributionprocessthat locates clusters. 4.2Module-Rigidity:CharacterizationandAlgorithm Wegivearecursivedenitionof3Dmodule-rigidity(alongw ithadenitionof module-completeDR-plans)andshowthatitisanaturalandr obustcharacterization. ThenwesketchanextensionoftheFAalgorithminordertodet erminemodule-rigidity byconstructingmodule-completeDR-plans.Wefollowwitha numberofexamples ofgraphsthataredofrigidbutnotmodule-rigid. PAGE 63 51 Let C bea3Ddistanceconstraintgraph.Let E;C 1 ;:::;C k beproper subgraphsof C .Wesaythat C 1 ;:::;C k ) r;C E (read: impliesrigidityof )ifby making C 1 ;:::;C m completegraphs(byaddingadditionaledges), E becomesrigid. Analogously,wedene ) d and ) m byassertingdofrigidityandmodule-rigidity (tobedenedbelow)astherighthandsideoftheimplication ,respectively. Let C bea3Ddistanceconstraintgraph. C is module-rigid if: Basecase: itistrivialanddofrigid.Orthefollowingholds.Let Q = f C 1 ;:::;C m g beany complete,maximal,moduledecomposition of C .Thisisdenedasfollows.Let m;C; bethetransitiveclosureoftheemptysetunder ) m;C ,thatis,ifthereisa propersubgraph E of C suchthateitheritismodule-rigid,orthereissomesetof module-rigidpropersubgraphs C 1 ;:::;C k of C suchthat C 1 ;:::;C k ) m;C; E ,then E belongsto m;C; .Let Q beanysubset f C 1 ;:::;C m g of m;C; suchthat Case1: m =2; C 1 and C 2 intersectonanontrivialsubgraphandtheirunioninducesa llof C .Or,thefollowingholds. Case2: Anymaximalsubgraphin m;C; mustcontain oneofthe C i in Q .Eachofthe C i 'sis nearlymaximal withrespecttotheset Q in thefollowingsense:theonlyelementsof m;C; thatstrictlycontain C i intersectall theothersubgraphs C j j 6 = i onnontrivialsubgraphs. Then C ismodule-rigidif X S Q ( 1) j S j 1 Adj dof ( \ C i 2 S ( C i )) D; where(recall) D isthenumberofdofsofarigidbody,and Adj-dof ( C i )iseither thenumberofdofs(negationofdensity)of C i if C i istrivial;orsimply D if C i is nontrivial.Observation4.2.1 Everymodule-rigidgraphisdofrigid;andeveryrigidgraph is module-rigid. Thenextlemmashowsthetractabilityoftheabovecharacter ization. PAGE 64 52 Lemma4.2.2 Let Q = f C 1 ;:::;C m g beanysetofpropersubgraphsof C thatform acomplete,maximal,moduledecompositionof C .Thisimpliesthatif m> 2 ,then nopairof C i intersectonmorethanatrivialsubgraph.Thus m isatmost O ( n 3 ) where n isthenumberofvertices C .Thus,thecomputationoftheinclusionexclusionformulainDenition 4.2 takes O ( n 3 ) time. Usingtheabovelemma,thefollowingdenitionshowstheuse ofso-called module-completeDR-planstoecientlydeterminemoduleri gidity. A module DR-plan P fora3Ddistanceconstraintgraph G isapartialorder whereeachnoderepresentsasubgraphin m;G; or G itself,if G ismodulerigid. Theorderingisbycontainment.Thesenodesarecalled moduleclusters (tobe cruciallydierentiatedfrommodule-rigidsubgraphsof G ,whichwecall inherent moduleclusters ).Theleavesaretheoriginalverticesof G .Eachnodeinthe subDR-planrootedatanode C representsasubgraphin m;C; or C itself,if C is module-rigid,oraninherentmodulecluster.If G ismodule-rigid,thereisasingle sourcecluster;if G isnotmodule-rigid,therootsorsourcesformisacomplete, maximal,moduledecompositionof G .ApartialmoduleDR-plandoesnothave tosatisfytheconditionsontherootsorsources.AmoduleDR -Planis modulecomplete iftheset Q ofchildclustersofeverymodulecluster C in P isacomplete, maximal,moduledecompositionof C AmoduleDR-planistypicallydenedtocontainadditionali nformation byincorporatinganotherpartialordercalledthe solvingpriorityorder ,whichis consistentwiththemoduleDR-plan'sDAGorder,butcouldbe morerened.The intentisthatmodule-rigidityofmoduleclustersthatappe arlaterintheorder dependonclustersthatappearearlier.Thatis,theorderin grerectsthenumberof applicationsof ) m requiredtondamodulecluster. PAGE 65 53 Thenexttheoremshowsthatmodule-rigidityisrobust.That is,theorderof bottom-upconstructionofmodule(-complete)DR-plansisi mmaterial,atypeof Church-Rosserproperty.Theorem4.2.3 Ifagraph G ismodule-rigid,theneverypartial,module(complete)DR-planfor G canbeextendedtoamodule(-complete)DR-plan. Theabovediscussioneectivelylaysoutatractablemethod fordetermining module-rigiditybycomputingmodule-completeDR-plansbo ttomup.Thisis donebyextendingthedof-completeDR-plannerFAgiveninth eprevioussection asfollows.FirstnotethatbyusingFAweguaranteenofalsen egatives,since module-rigidimpliesdof-rigid.Wenowsketchhowtoelimin atingdof-rigidgraphs thatarenotmodule-rigid.TheFADR-plannerrunningonanin putgraph G uses DistributeCluster(row)onthecurrentset S ofdofrigidclusterstoisolateadof clustercandidate C ,andthereafterconstructsaacomplete,maximal,dofrigid decompositionofit,afterwhichitdecideswhetheranewdof -rigidcluster C has beenfound,usingthedof-rigidcharacterizationofSectio n 4.1 .Thisisthekeypoint ofextension.Weusetheanalogybetweenthisdof-rigidchar acterizationandthe module-rigidcharacterizationatthebeginningofthisSec tion.Inductively,wecan assumethatthecurrentset S consistsofmodule-rigidsubgraphsof G orinherent moduleclusters.Themethodofconstructionofacomplete,m aximal,module decomposition Q ofthecandidate(inherentmodule)cluster C canbedonewithout constructing m;C; ,byconstructingasequenceof Q i 'seachofwhichsatisesthe aboveconditionson Q ,butwithrespectto m;C;i (i.e,closurewithrespectto i applicationsofthe ) m operation).Thissequencereachesaxedpointat Q Wegiveexamplesthatillustratetheuseofmodule-rigidity .InFigure 4{4 Top Left:thegraphisdofrigid,butnotmodule-rigid,asseenby thecompletemaximal moduledecompositionshown.TopRight:module-rigid,butn opairofinherent moduleclustersshownformsamodule-rigidsubgraph,theyd oformdof-rigid PAGE 66 54 j i h g f e d c b a C5 C4 C3 C2 C1 C1 C2 C3 a b f e d c b a C4 C3 C2 C1 C4 C3 C5 C6 C2 C1 Figure4{4:Exampleswheremodule-rigiditybeatsdofrigid ity. subgraphs.Bottom:notmodule-rigidbutdofrigid;complet emaximalmodule decompositionandsolvingpriorityordersasfollows:thep air C 1 ;C 2 isaninherent modulecluster C 5 butthat C 5 canbesolvedonlyafter C 3 issolved;Thatis,before thevirtualedge( c;d )isadded, C 1 and C 2 wouldnotbepickeduptogetherasa clustercandidate.Similarly,itwillalsodeterminethat C 5 ;C 3 formacluster C 6 butsolvingpriorityordershown.BottomRight:module-com pleteDR-planforleft constraintsystemwith2sourcesorroots: C 6 and C 4 Figure 4{5 showsaclassicgraphgivenbyCrapoetal.[ 20 21 ],with \hinges,"whichisnotmodule-rigidbutisdofrigid.Acompl etemaximal,module decompositionisshown.Themiddlecluster C 2 isnotaninherentmodulecluster, although C 1 and C 2 are. PAGE 67 55 k C1 C2 C3 a b c de f g h i j Figure4{5:ClassicHingeexample:notmodule-rigid,butdo frigid Aquestionthatimmediatelyarisesistorelatethecharacte rizationgiven heretorigiditymatroidsandstandardconjecturesoncombi natorialrigidity characterizationsfor3D[ 19 ]. PAGE 68 CHAPTER5 CONJECTUREOFANGLECONSTRAINTSYSTEM Lamanshowsacombinatorialcharacterizationof2Ddistanc econstraint system[ 18 ].Whenotherconstraintsareinvolved, forexample,angles ,thereis nocombinatorialcharacterization.Inthischapter,wers tgiveacombinatorial rigiditycharacterizationofaclassofangleconstraintsy stem.Wethenshow thischaracterizationisnotsucientforthegeneralangle constraintsystem. Thereafter,weproposeaconjecturetodeterminetherigidi tyofthegeneralangle system. 5.1Denitions Point: point p 2 R 2 ,isrepresentedas( x;y ). AngleConstraint: theangleconstraintbetween2orderedpairsofpoints,( P 1 i ;P 2 i ) and( P 1 j ;P 2 j ),satisesthat cos = ( P 1 i ;P 2 i ) ( P 1 j ;P 2 j ) j ( P 1 i ;P 2 i ) jj ( P 1 j ;P 2 j ) j = ( x 2 i x 1 i )( x 2 j x 1 j )+( y 2 i y 1 i )( y 2 j y 1 j ) p ( x 2 i x 1 i ) 2 +( y 2 i y 1 i ) 2 p ( x 2 j x 1 j ) 2 +( y 2 j y 1 j ) 2 GeometricAngleConstraintSystem: ageometricsysteminwhichtheobjectsare nitepointsandtheconstraintsareniteangleconstraint s. Solution: thesetvaluesofthevariables x i ;y i ofthesystemthatsatisfythe constraintsValidSolution: thesolutionofageometricsystemwhichdoesnotmakeanyang le0 orpointscoincidentiscalledavalidsolution.AngleGraph: Forageometricangleconstraintsystem,thegraphinwhicht he verticesrepresentthepairsofpointsandtheedgesreprese nttheanglesiscalledthe anglegraph(Figure 5{1 ). AngleCycle: Forageometricconstraintsystem,ifthereisananglecycle inits correspondinganglegraph,wesaythisangleconstraintsys temhasanangle 56 PAGE 69 57 p4 p1 p2 p3 v34 v12 v13 v24 v14 v23 Figure5{1:Geometricangleconstraintsystemandtheangle graph. cycle.Iftheanglegraphhasonemoreedgebetween v 13 and v 14 (Figure 5{1 ),its correspondingangleconstraintsystemhasananglecycle.AnglePseudoCycle: Forageometricconstraintsystem,ifthereisananglecycle withoneanglemissing,wesaythisangleconstraintsystemh asananglepseudo cycle.Thesystem(Figure 5{1 )hasananglepseudocycle. AngleClique: Forageometricconstraintsystem,ifthereexists n points( n 3) inwhichanytwopairsofpointshasanangleconstraintbetwe enthem,wesaythe systemhasanangleclique.ImplicitAngleCycle: Inanangleconstraintsystem,forananglecycleconsisting ofassignedangles 1 ::: s andunassignedangles r 1 :::r t s> 0 ;t 0,inits correspondinganglegraph,ifthereexists i 62 S r j for i 6 = j ,where S r j isthe minimal4dofsubgraphcontaining r j ,wesaythisangleconstraintsystemhasan implicitanglecycle.When t =0,implicitanglecycleturnsouttobeanangle cycle.DegreesofFreedomofPrimitiveGeometricObjects: degreesoffreedom(DOF) describesrexibilityofmotion.Itisthenumberofparamete rsoftheobjectwhich maybeindependentlyvaried.In2 D ,apointhas2DOF. DegreesofFreedomofaGeometricSystem: Forageometricsystem G ,itsDOF equals P p 2 G DOFofobject p P c 2 G DOFremovedbyconstraint c .InFigure 5{1 ,thesystemhas4pointsand3angleconstraints.Eachpointh as2DOFand eachangleconstraintremoves1DOF.Sothesystemhas5DOF. PAGE 70 58 AdjustedDegreesofFreedom(adof): Forageometricsystem,countthedofofthe subgraphsthatareanglecliquesas4,thendotheinclusionexclustiondofcounting, thetotaldofiscalledadjusteddegreesoffreedom.Genericallyindependent: Let S bethesetofanglesofageometricangleconstraint system.Thesystem G s isgenericallyindependent i thereisanassignment S =( 1 ;:::; s )ofvaluestotheset S suchthat G s hasavalidsolutionand foranysuchassignment S ,thereisarectangleneighborhoodof S ,thatis, I S = I 1 ::: I s ,wherethe I l =( l ; l + )areintervalsofanglevalues, forsome > 0,suchthatforanytupleofvalues( 0 1 ;:::; 0 s ) 2 I S G s hasavalid solution.Notations: Weuse G sn todenoteageometricangleconstraintsystemwith n points; G n todenotethecorrespondinganglegraphof G sn ; p todenotethepointin G sn ; v todenotethevertexin G n 5.2OneCombinatorialCharacterization Inthissection,wegiveacombinatorialcharacterizationo ftheangleconstraint systemthatcanbeobtainedbythefollowingconstruction. GradualConstruction: Startingwithapairofpoints,addapointwithatmost 2anglesconnectingitwiththeconstructedsystemateachst epuntilallpointsare added. Ifanangleconstraintsystem G s canbeconstructedbygradualconstruction,it is graduallyconstructible Theorem5.2.1 Angraduallyconstructiblegeometricangleconstraintsys temis genericallyindependentifitdoesnothaveimplicitcycles Proof Weproveitbyinductiononnumberofpoints n of G s : 1.Basecase:when G s hasonly2points,itisobviouslygenericallyindependent. PAGE 71 59 dots v_{n+1} G_n dt dots v_{n+1} G_n dt Figure5{2:Thenewpoint p n +1 isatthecircleorattheradial dots v_{n+1} dt1 dt2 G_n Figure5{3:Twonewangles: 1 and 2 2.Assume G sn has T anglesandisgenericallyindependent,because G s is graduallyconstructible,wecanndapoint p n +1 withatmost2anglesconnecting itwith G sn Case1:thereisnoangleconnecting p n +1 with G sn Obviously,thecaseholds. Case2:thereisanangleconnecting p n +1 with G sn p n +1 couldbeatthecircleorattheradialdeterminedbytheangle (Figure 5{2 ).Itiseasytoknowthereexistsavalueof whichtogetherwiththe T angles whichmake G sn haveavalidsolutionthatmake G sn +1 haveavalidsolution.From hypothesisweknow,when G sn hasavalidsolution,theseisacorresponding rectangle I T suchthat G sn withanytupleofvalues( 0 1 ;:::; 0 t ) 2 I T hasavalid solution.Asthepositionof p n +1 iscontinuous,thereexistsaninterval I for suchthat G sn +1 withanytupleofvaluesin I T I hasavalidsolution.So, G sn +1 is genericallyindependent.Case3:thereare2anglesconnecting p n +1 with G sn Callthe2angles 1 and 2 .Weprovecase3inthefollowing3subcases.We calltheanglesinvolvedin p n +1 new anglesandtheothers old angles. PAGE 72 60 dots v_{n+1} dt1 G_n dt2 c_1 l_1 Figure5{4:Onenewangle 1 andoneoldangle 2 Subcase1:Both 1 and 2 arenewangles(Figure 5{3 ). Thepositionof p n +1 shouldbeattheintersectionoftwocircleswhicharedeterm inedby 1 and 2 respectively.Fora T 2 I T ,choose i 2 (0 ; T i ), T i 0toensuretwocircles intersect.Iffor i p n +1 isinacorrespondinglineofapairofpointsof G sn ,we choose T i equalthis i toprevent p n +1 lieinthisline.Afterproceedingwithallthe lines,weensure p n +1 doesnotlieinanylineof G sn .If i p n +1 coincidentswitha pointof G sn ,wechoose T i equalthis i toprevent p n +1 coincidentwiththispoint. Afterproceedingwithallthepoints,weensure p n +1 doesnotcoincidentwithany pointin G sn .Let I i = T T 2 I T (0 ; T i )and I = I 1 I 2 2 .Weknow G sn +1 withany tupleofvaluesin I T I hasavalidsolution.So G sn +1 isgenericallyindependent. Subcase2: 1 isanewangleand 2 isanoldangle(Figure 5{4 ). Theposition of p n +1 shouldbeattheintersectionofthecirclewhichisdetermin edby 1 and theradialwhichisdeterminedby 2 .Fora T 2 I T ,choose 1 2 (0 ; T 1 ), T 1 0. 2 2 ( T 2 ; ). T 2 toensuretheradialintersectsthecircle.Iffor i p n +1 is inacorrespondinglineofapairofpointsof G sn ,wechoose T i equalthis i to prevent p n +1 lieinthisline.Afterproceedingwithallthelines,weensu re p n +1 doesnotlieinanylineof G sn .If i p n +1 coincidentswithapointof G sn ,wechoose T i equalthis i toprevent p n +1 coincidentwiththispoint.Afterproceeding withallthepoints,weensure p n +1 doesnotcoincidentwithanypointin G sn .Let I 1 = T T 2 I T (0 ; T 1 )and I 2 = T T 2 I T ( T 2 ; )and I = I 1 I 2 2 .Weknow G sn +1 PAGE 73 61 dots v_{n+1} G_n dt2 dt1 l_1 l_2 Figure5{5:Twooldanglesdonotshareapairofpointscontai ning p n +1 gm G_n dots v_{n+1} dt2 dt1 Figure5{6:Twooldanglesshareapairofpointscontaining p n +1 withanytupleofvaluesin I T I hasavalidsolution.So G sn +1 isgenerically independent. Subcase3:Both 1 and 2 areoldangles(Figure 5{5 ). Thepositionof p n +1 shouldbeattheintersectionoftworadialswhicharedeterm inedby 1 and 2 respectively.Fora T 2 I T ,choose 1 2 (0 ; T 1 ), T 1 0andchoose 2 2 ( T 2 ; ), T 2 makes l 1 k l 2 toensuretworadialsintersect.Iffor i p n +1 isinacorresponding lineofapairofpointsof G sn ,wechoose T i equalthis i toprevent p n +1 lieinthis line.Afterproceedingwithallthelines,weensure p n +1 doesnotlieinanylineof G sn .Iffor i p n +1 coincidentswithapointof G sn ,wechoose T i equalthis i to prevent p n +1 coincidentwiththispoint.Afterproceedingwithallthepo ints,we ensure p n +1 doesnotcoincidentwithanypointin G sn .Let I 1 = T T 2 I T (0 ; T 1 )and I 2 = T T 2 I T ( T 2 ; )and I = I 1 I 2 2 .Weknow G sn +1 withanytupleofvaluesin I T I hasavalidsolution.So G sn +1 isgenericallyindependent. Notethat 1 and 2 cannotbe2oldanglessharingapairofpointscontaining p n +1 (Figure 5{6 ),because G hasnoimplicitanglecycle. Fromabove,weknow G sn +1 isgenericallyindependentincase3. PAGE 74 62 Figure5{7:Genericallyindependentsystemthatisnotgrad uallyconstructible m S a b c d e f g h i j k l Figure5{8:Implicitanglecycleisnottheonlytypeofdepen dency. Soif G isgraduallyconstructibleandhasnoimplicitanglecycle, itis genericallyindependent. Ontheotherhand,if G isnotgraduallyconstructible,itmaystillbe genericallyindependent. G (Figure 5{7 )isnotgraduallyconstructiblebecause eachpointhas3anglesinvolved.But G isstillgenericallyindependent. Theimplicitanglecycleisnottheonlytypeofdependencyin theangle constraintsystem.Angle l (Figure 5{8 )isxedbyangles a;b;c;m andangle j is xedbyangles f;g;h;i .Thenthesubgraph S actuallyhas3degreesoffreedom becauseithas5angles( d;e;j;k;l )xed.Thus S isnotgenericallyindependent. Becausedetectingtheimplicitanglecycleisnotsucientt otellwhetheran angleconstraintsystemisgenericallyindependent,wepro posearigidityconjecture. 5.3Observations Thefollowingtwoobservationsarecrucialfortheproofoft heconjecture. First,wegiveanalgorithmthatisessentialinourdiscussi on. Verier: Takenageometricangleconstraintsystem G asinput, PAGE 75 63 1.If G hasa3orfewerdofsubgraph,return false 2.Ifthereexistsananglecyclewhichisnotcontainedinana ngleclique,return false 3.Findananglepseudocycleifitexists.Assignthemissing angle. 4.Ifthereexistsonesubgraphwith3orfeweradof,return false 5.Finda4adofsubgraphthatisnotananglecliqueifitexist s.Assignallthe unassignedangles. 6.repeat2,3,4and5,untilnomoreanglesareassigned,retu rn true NotethatVerermayhavedirentcomputationalpathsbased onwhichangle cyclechoseninStep3andwhich4adofsugraphchoseninstep5 Observation5.3.1 Foranunassignedangle r thatisassignedinapath P a of Verier,itwillbeassignedinanypathofVerierunlessVer ierreturnsfalse beforeitencounting r Assumethereexistsapath P b inwhich r isnotassignedandVerierreturnstrue. P b doesnotassignalltheanglesassignedin P a otherwise r isalsoassignedin P b violatingtheassumption.Let betherstangleassignedin P a butnotassignedin P b .Alltheanglesassignedbefore in P a thatarenecessaryforassigning arealso assignedin P b .Verieronlyreturnstrueifthereisnomoreangletobeassi gned. Butattheendof P b ,Veriercanstillassign becauseallanglesnecessaryfor assigning havebeenassignedin P b .ThatcontradictstheassumptionthatVerier returnstrueattheendof P b Observation5.3.2 Allpathsreturnthesameresult. Assumetherearetwopaths P a and P b that P a returnsfalseand P b returnstrue. P b doesnotassignalltheanglesassignedin P a otherwise P b willalsoreturnfalse.Let betherstangleassignedin P a butnotassignedin P b .Alltheanglesassigned before in P a thatarenecessaryforassigning arealsoassignedin P b .Verier onlyreturnstrueifthereisnomoreangletobeassigned.But attheendof P b Veriercanstillassign becauseallanglesnecessaryforassigning havebeen PAGE 76 64 assignedin P b .ThatcontradictstheassumptionthatVerierreturnstrue atthe endof P b Observation5.3.3 Allpathsthatreturntrueassignthesamesetofangles. Assumetherearetwopaths P a and P b thatbothreturntruebuttheyassign direntsetsofangles.Let betherstangleassignedin P a butnotassignedin P b .Alltheanglesassignedbefore in P a thatarenecessaryforassigning arealso assignedin P b .Verieronlyreturnstrueifthereisnomoreangletobeassi gned. Butattheendof P b ,Veriercanstillassign becauseallanglesnecessaryfor assigning havebeenassignedin P b .ThatcontradictstheassumptionthatVerier returnstrueattheendof P b Observation5.3.4 VerierhasChurch-Rosserproperty. FromObservation 5.3.2 ,weknowVerierhasChurch-Rosserproperty. Observation5.3.5 Verierhaspolynomialtimecomplexity. TouseMFAalgorithmnd3orfeweradofsubgraphinstep1,4an dthe4-adof subgraphinstep5,itrequires O ( n 3 ( n + m ))( n isthenumberofvertices, m isthe numberofedges).Tousedepth-rstsearchtondanglesinst ep2,3,itrequires O ( n + m ).Verierrunsatmost n 4 iterationsbecausethereareatmost n 4 angles andatleastoneangleisassignedateachiteration,thenthe timecomplexityis O ( n 7 ( n + m )).Actuallytheupboundofthetimecomplexityisveryloose Iftheverierreturnstrueforageometricangleconstraint system,wesaythe systempassestheverier.Thenwehavethefollowingobserv ations. Observation5.3.6 Ifageometricangleconstraintsystem G failstheverier,itis notgenericallyindependent. If G failstheverieratstep1,itisobviousthattheanglesinth e3or fewerdofsubgraphsarenotindependenttoeachother,thus G isnotgenerically independent. PAGE 77 65 If G failsatstep2,thenforanyangleoftheanglecycle,itsvalu eisxed byeverysettingofvaluesoftheotheranglesintheanglecyc le,thus G isnot genericallyindependent. If G failsatstep4,itisobviousthattheanglesinthesubgraphw ith3or feweradofarenotindependent,thus G isnotgenericallyindependent. Observation5.3.7 Givenanangleconstraintsystem G sn in 2 D with k ( 0) dof, thereisatleastonepointinvolvedinatmost7angles. Let m bethenumberofanglesinvolveinthepointthathastheleast number ofanglesinvolved.Asanangleinvolvesinatmost4pointsan d G sn haskdofs,the followinginequalityholds: m n 4 (2 n k ).Thenweget m 8 d 4 k=n e .So m 7. 5.4Conjectures Forthefollowingthreeconjectures,thersttwoareusedfo rtheproofofthe thirdonewhichisour2Drigidcharacterizationconjecture ofangleconstraints system.Conjecture5.4.1 Foranangleconstraintsystem G sn with k ( 4+ x ) dofthat passestheverier,thereexistsanx-tupleofunspeciedan gletuplesuchthat specifyingitdoesnotmakethesystemfailstheverier.PartialProof: Let G sS i bethe i thmaximal4dofsubsystemin G sn whichhasatleast3points. Thenthispropertyholds: G S i and G S j aredisjointedforany i 6 = j ,thatis G sS i and G sS j shareatmostonepoint. If G S i and G S j shareavertex, G sS i S G sS j has4dofifnoangleinvolvesin both G sS i and G sS j .Thisviolatesthestatement G sS i and G sS j arethemaximal4dof subsystemsin G sn ;Or G sS i S G sS j has3orfewerdofifatleastoneangleinvolvesin both G sS i and G sS j .Thisisimpossiblebecausenosubsystemhas3orfewerdofin G sn .Sothepropertyholds. PAGE 78 66 G n has t trees: t = n ( n 1) = 2 (2 n k )=(( n 2 : 5) 2 6 : 25) = 2+ k .Sowhen k isgiven, t isincreasingfor n 3.Notethatthetreecouldbeconsistofonlyone vertex.When n =3, t = k 3 x +1,thatisforagiven G n with k dof,ithasat least x +1trees. Wegiveanalgorithmtondthe x -tupleofunspeciedangleswithoutforming ananglecycleormakinganysubgraph3orfewerdofs.Hereisi tspseudocode. Whilex>0 Findmaximal4dofsubsystemsIfthereisno$G_{S_i}$in$G_n$ addananglebetweenapairoftreesarbitrarily else addananglebetween(v1,v2),wherev1isin$G_{S_i}$andv2whichisinanothertreeofv1andoutsideof$G_{S_i}$ x-end Ifthereisno G sS i in G sn atcurrentstage,thenwecanchoosetheangleinthe x -tupleofunspeciedanglesbetweenapairoftreesarbitrar ilywithoutforming ananglecycleormakinganysubgraph3orfewerdofs.Ifthere isa G sS i ,because thetreescan'tbetotallycontainedin G S i alltogether,wecanalwaysndsucha pair( v 1 ;v 2 )suchthat v 1 isin G S i and v 2 isinanothertreeof v 1 andoutsideof G S i Thatensuresitdoesnotformananglecycle.Andbecause G S i saredisjointed,it doesnotmakeanysubsystem3orfewerdof. Westillneedtoprove G sn withspecifyingthatx-tuplepassestheverier. Conjecture5.4.2 Foranangleconstraintsystem G sn +1 thatpassestheverier, if m 4 ,misthenumberofanglesinvolvedinpoint p n +1 thatinvolvestheleast angles,thenthereexistsanunspeciedangle r in G sn suchthatafterunspecifying oneofthe m anglesinvolvedin p n +1 toget G 0 s n +1 andspecifying r in G 0 s n +1 toget G 00 s n +1 G 00 s n +1 passestheverier. PartialProof: PAGE 79 67 FromtheproofofObservation 5.3.7 ,weknow n +1 d 4 k= (8 m ) e .When m =4, n 3.Butwhen n =3,no G s4 satisesthatthenumberofanglesinvolved inthepointthatinvolvestheleastanglesis4.Infact,itca nbeatmost3.So n 4.When m =4 ::: 7, n> 4.Thenweknow G sn hasatleast4points. G sn has k n = k +( m 2)dofs.And G n has t = n ( n 1) = 2 (2 n k n )= ( n 2 5 n ) = 2+ k n trees.When n =4, t = m +( k 4) m .Thenthe m 1edgesof G 0n +1 n G n isnotenoughtoconnectallthese t treestobeatreeof G 0n +1 .Thenwe knowtheverticesin G n can'tbeallinatreeof G 0n +1 Let G sS i bethe i thmaximal4dofsubsystemin G sn +1 whichhasatleast3 points.If p n +1 isnotinany G sS i ,thenweadd r bythewaysimilartoConjecture 5.4.1 .If p n +1 isina G sS i ,weadd r betweenthe( l 1 ;l 2 ), l 1 istheedgein G sS i and l 2 isin G sn n G sS i and l 1 and l 2 arenotinthesametreeof G 0 s n +1 .Thispairdoesexist becausetheverticesin G n can'tbeallinatreeof G 0n +1 .So G 00 s n +1 hasnoangle cyclesandnosubsystemhas3orfewerdof. Also,weneedtoprove G 00 s n +1 passestheverier. Conjecture5.4.3 Foranangleconstraintsystem G s in 2 D thatpassesthe verier,itisgenericallyindependent.PartialProof: Case1:thereexistsapoint p n +1 hasnoangleinvolved.Case2:thereexistsa point p n +1 whichhas1angleinvolved.Case3:thereexistsapoint p n +1 whichhas 2anglesinvolved. Inthese3cases, G sn +1) isgenericallyindependent.Refertothe proofofTheorem 5.2 Case4:thereexistsapoint p n +1 whichhas m ( 3) ormoreanglesinvolved. ASSUMPTION:Foranangleconstraintsystem G s in2Dwith4dofandno anglecyclesandnosubsystemhas3orfewerdof,and G s with I a = I 1 I 2 ::: I s hasavalidsolution, I i istheintervalofthespeciedangle i in G s s isthenumber ofspeciedangles,foranunspeciedangle specifyingwhichdoesnotmakeany PAGE 80 68 anglecycle,let r bethespeciedanglewhichisintheminimal4dofsubsystem thatcontainsallthelinesparticipating ,thenforany v 2 I a n r ,as r variesin I r thereexistsanon-zerosized I for If m =3,callthethreeangles 1 ; 2 and 3 .FromConjecture 5.4.1 ,weknow thatthereexistsanunspeciedangle r in G sn thatdoesnotformananglecycle involvingsomesubsetofthespeciedanglesormakeanysubs ystem3orfewer dof.Unspecify 3 andspecify r toget G 0 s n +1 .Fromcase3,weknow G 0 s n +1 with I a = I 1 I 2 :::I r ::: I s I 1 I 2 hasavalidsolution, s isthenumberof anglesin G 0 s n .Andtheminimal4dofsubsystemof 3 mustcontain r .Thenfrom theassumption,weknowforany v 2 I a n r ,as r variesin I r ,thereexistsanon-zero sized I v 3 for 3 Let I 0 i 2 I i and j I 0 i j! 0, i isthespeciedanglein G 0 s n +1 .As v variesin I 0 a n r I v 3 doesnotchangemuchbecause I 0 a n r isrelativelysmall.Then I 3 = T v 2 I 0 a n r I v 3 hasnon-zerosize. Thenweknow G sn +1 with I 0 a n r I 3 hasavalidsolution,so G sn +1 isgenerically independent. If m =4,callthe4angles 1 ; 2 ; 3 and 4 .Choose r asdescribedin Conjecture 5.4.2 Afterspecify r andunspecify 4 toget G 0 s n +1 ,andchoose I 0 i similartothecase when m =3,weknow I 4 thathasnon-zerosizeexists. Then G sn +1 with I 0 a n r I 4 hasavalidsolution,so G sn +1 isgenerically independent. Wecanalsodothesimilarjobfor m =5 ::: 7. PAGE 81 CHAPTER6 SOLUTIONSPACENAVIGATION Inthischapter,westudythewell-documentedproblemofsys tematically navigatingthepotentiallyexponentiallymanyrootsorrea lizationsofwell-constrained, variationalgeometricconstraintsystems.Wegiveascalab lemethodcalledthe ESMorEquationandSolutionManagerthatcanbeusedbothfor automatic searchesandvisual,user-drivensearchesfordesiredreal izations.Themethod incrementallyassemblesthedesiredsolutionoftheentire systemandavoids combinatorialexplosion,byoeringtheuseravisualwalkt hroughofthesolutions torecursivelyconstructedsubsystemsandbypermittingth eusertomakegradual, adaptivesolutionchoices. Weisolaterequirementsoncompanionmethodsthatpermit(a )incorporation ofmanyexistingapproachestosolutionspacesteeringorna vigationintothe ESM;and(b)integrationoftheESMintoastandardgeometric constraintsolver architecture.Weaddressthelatterchallengeandexplainh owtheintegrationis achieved.Andweclarifytheserequirementsessentialandd esirableforecient, meaningfulsolutionspacenavigation.Also,wesketchtheE SMimplementation aspartofanopensource,2Dand3Dgeometricconstraintsolv erFRONTIER developedbyourgroup. 6.1CompanionMethodsRequirements InordertodescribetheESMmethodandhowitcanbeintegrate dinto any geometricconstraintsolver(Figure 6{1 ),itisnecessarytogivewell-dened essential and desirable requirementsonthecompanionmethods-mentionedinthe Introduction-fortheESMmethodtobeeective.Weaddition allypointtoknown literaturethatprovidethecompanionmethodsthatmeetthe serequirements. 69 PAGE 82 70 6.1.1DR-Planner InordertogivetheDR-plannerrequirements,werstneedso mepreliminaries aboutcombinatorialanalysisofgeometricconstraintsyst ems.A geometricconstraintgraph G =( V;E;w )correspondingtogeometricconstraintsystemisa weightedgraphwithvertexset(representinggeometricobj ects) V andedgeset (representingconstraints) E ; w ( v )istheweightofvertex v and w ( e )istheweight ofedge e ,correspondingtothenumberof degreesoffreedom(dofs) availabletoan objectrepresentedby v andnumberofdegreesoffreedomremovedbyaconstraint representedby e respectively. Forexample,Figure 1{1 showsa2Dconstraintsystemsandtheirrespective dofconstraintgraphs.Figure 1{4 showsa3Dconstraintsystemswhosegraphhave verticesofweight3(points)andedgesofweight1. Notethattheconstraintgraphcouldbea hypergraph ,eachhyperedge representingaconstraintinvolvinganynumberofvertices .Avertexinduced subgraphrepresentsasubsystemoftheentireconstraintsy stem.Thesubgraphs canbeclassiedasbeing underconstrained,well-constrained,orwell-overconstr ained -thelattertwoarecalled rigid subgraphsor clusters .Themeaningisthatthe correspondingsubsystemshavethecorrespondingconstrai nednesspropertiesfor generic parametervalues.Inmanycases,thisclassicationofthes ubgraphscan bedonepurelycombinatorially,usingthedofweights,buti gnoringgeometric parameterssuchasdistance,angleandsoonattachedtothec onstraints. Asmentionedintheintroduction,anyeectiveconstraints olvercombinatorially developsaplanforrecursivelydecomposingtheconstraint systemintosmall subsystems,whosesolutions-obtainedfromthealgebraic/ numericsolver-canbe recursivelyrecombinedbysolvingothersmallsubsystems. Sucharecombination isstraightforward, providedallthesubsystemsgenericallyhaveanitenumber of solutions,thatis,theyaregenerically rigid PAGE 83 71 TheDR-planneristypicallyagraphalgorithmthatoutputsa decompositionrecombinationplan(DR-plan) oftheconstraintgraph.Intheprocessofcombinatorially constructingtheDR-planinabottomupmanner,atstage i ,itlocatesa well-constrainedsubgraphorcluster S i inthecurrentconstraintgraph G i andusesanabstract simplication of S i totocreateatransformedconstraint graph G i +1 .Whilewerelyonaroughcorrespondencebetweenwell-const rained subgraphsorclustersand rigid subsystems,theexactnatureandlimitationsofthis correspondenceisacomplexissue,especiallyin3D,andisd iscussedlater. Formally,aDR-planofaconstraintgraph G isadirectedacyclicgraph(DAG) whosenodesrepresentrigidclustersin G ,andedgesrepresentcontainment.The leavesorsinksoftheDAGareallthevertices(primitiveclu sters)of G .Theroots orsourcesare all themaximalclustersof G .Forwellorwell-overconstrained graphs,theDR-planshaveasinglesource,andforundercons trainedgraphs,the DR-planshavemultiplesources.TherecouldbemanyDR-plan sfor G (Figures 1{1 1{4 ).Generally,foroverconstrainedclusters,aDR-planisre quiredtoalso containinformationaboutwhichsetsofoverconstraintsca nberemovedwhile retainingtherigidityofthecluster.Thesearecalled reducible overconstraints. Reducibleoverconstraint directlyassociated withacluster C refertothose thatconnectprimitiveelementsoccurringindierentchil dclustersof C Overconstraintsthatliewithinanychildcluster C i areassociatedwiththat C i notwith C WedescribeessentialanddesirablepropertiesthatagoodD R-plan(ner) shouldhaveforittobeusefulinconceptualnavigationofth esolutionspaceof general,cyclic2Dor3Dsystems. Itis desirable tobeabletoapplytheESMmethodtoalargeclassof2Dand 3Dconstraintsystems.Forthemethodtoworkforanysuchcla ss,itis essential thattheDR-plan'snodesshouldcorrespondtorigidcluster sorgenericallyrigid PAGE 84 72 subsystems,andallchoicesofreducibleconstraintsofove rconstrainedclusters shouldbeavailable.Recallthattheseclustersandtheirre ducibleconstraintsare pickedbytheDR-plannerusingjusttheconstraintgraph,th atis,usingpurely combinatorialpropertiesoftheconstraintsystem. Toillustratethelevelofchallengeinvolvedindoingthis: todate,thereis noknown,tractable,characterizationofgenericrigidity ofdistanceconstraint (sub)systemsfor3orhigherdimensions,basedpurelyoncom binatorialproperties oftheconstraintgraph[ 19 22 ],althoughseveralconjecturesexist.Moreover, therearenoknowncombinatorialcharacterizationsof2Dri gidity,whenother constraintsbesidesdistancesareinvolved.Itshouldbeno tedthatin2D,Laman's theorem[ 18 ],givessuchacharacterizationifallgeometricobjectsar epointsand allconstraintsaredistances.However,thestandardgener alizationoftheLaman propertyfor3D,alsocalled dof-rigidity isinadequate:whileallrigidsystemsare dof-rigid,theconverseisnotthecasein3D.Standardcount erexamplesaresystems thatcontainconstraintdependencesorinexplicitovercon straintshiddeninso-called \bananas"or\hinges"[ 19 20 21 ](Figure 1{4 ).Infact,thesearetheonlyknown typesofcounterexamples. The module-rigid FrontiervertexalgorithmdescribedbySitharamandZhou [ 12 ]andimplementedinFRONTIER[ 15 ]istherstknownpolynomialtime DR-plannerthatisnotfooledbyanyknowntypeofconstraint dependence, specically,the\bananas"or\hinge"typeconstraintdepe ndences.Itgives aDR-planwhosenodesareso-calledmodule-rigidclusters. Itisanopen questionwhetherthereareanynonrigidsubgraphsthatarem odule-rigid.No counterexamplesareknown. Themodule-rigidFrontiervertexalgorithmiscruciallyba sedontheso-called dof-rigid FrontiervertexalgorithmanalyzedbyLomonosovandSithar am[ 2 9 24 ]. Whilethelatterdoesnotdetectbananasandotherconstrain tdependences,itis PAGE 85 73 therstalgorithmthatgivesa complete DR-plan,thatis,a completedecomposition ofeachclusterinto maximal propersubclusters.Ageneralizedversionofthis decompositionisthekeystartingpointfor detecting module-rigidity[ 12 ]andis alsocrucialforobtainingatractableDR-planthataidsec ientsolving(discussed next). Thebasicideaforthedof-rigidFrontiervertexDR-planner s(withouta completeformalanalysisandwithoutthefullygeneralcomp letenessproperty) waspresentedbyHomannetal.[ 6 ].Themethodforobtainingallpossiblesets ofreducibleconstraintsforoverconstrainedclustersofd of-rigidFrontiervertex DR-plans,bothfor2Dand3D,andmodifyingtheDR-planoncet heyhavebeen removed,ispresentedbyHomannandSitharam[ 8 ]. The size ofaclusterinaDR-planisitsfan-in(itrepresentsthesize ofthe correspondingsubsystem,onceitschildrenaresolved).Si ncethealgebraic-numeric solverstaketimeexponentialinthesizeofthesubsystemst heysolve,andthe numberofsolutionsisalsotypicallyexponential,minimiz ingthesizeofaDR-plan is essential totheESMmethodpresentedhere.An optimal DR-planisonethat minimizesthemaximumfan-in.ItisshownbyLomonosovandSi tharam[ 9 24 ], thattheproblemofndingtheoptimalDR-planofevena2Ddis tanceconstraint graphisNP-hard,andapproximabilityresultsareshownonl yinspecialcases. Nonapproximabilityresultsarenotknown. Togetaroundthisdiculty,weusethefollowingalternativ eproperty.A tractable DR-planforsystematicnavigationshouldensurethateachc luster C shouldbeaccompaniedbyaasmallsetofitschildren C i thatforman optimal coveringset ofmaximalclustersproperlycontainedin C .A coveringset of clustersisonewhoseunioncontainsallgeometricelements within C .Thesize oftheoptimalcoveringsetfor C isthesizeofthecluster C ,thatis,itsfan-in intheDR-plan.ForscalabilityoftheESMmethod,werestric tourselvesto PAGE 86 74 constraintgraphsforwhichthissizeistypicallyconstant independentofthe originalgraphsize.The optimality hererefersnotonlytothesize,butalsothe algebraiccomplexityoftheactiveconstraintsystemforso lving C ,giventhe solutionsofitschildclusters.Thisoptimizationisthefu nctionofthecombinatorial cluster-systemoptimizer(CCO)method(Figure 6{1 )describedlaterinthis section.Notethatinordertochoosetheoptimalcoveringse tofchildclustersfora cluster C ,theCCOneedsasinputageneralizedcompletedecompositio nof C into maximalpropersubclusters,whichwasalreadyseentobeane ssentialrequirement forthegeneralityofaDR-planner,nowseentobeessentialf ortractabilityaswell. AnothercrucialpropertyofaDR-planisits width i.e, number ofclusters intheDR-plan.Itis essential thatthisbesmall,preferablylinear,certainly polynomial,inthesizeof G :thisrerectsthecomplexityoftheplanningprocess andalsoaectsthecomplexityofthesolvingprocessthatis basedontheDR-plan. Themodule-rigidanddof-rigidFrontiervertexDR-planner sanalyzedbySitharam andYongandLomonosov[ 2 9 12 24 ],andimplementedinFRONTIER[ 15 ],are theonlyonesthathavequadratic(typicallylinear)widtha ndoutputcomplete maximaldecompositionsofeachcluster,whoseoptimalcove ringsetshavetypically constantsize. Fortheusertoeectivelynavigatethesolutionspacejustb yinspectingthe solutionstosubsystemsintheDR-plan,itis desirable thatthesesubsystems includethose(wellorwell-overconstrainedclusters)tha toccurinanunderlying conceptualdecomposition.Thisisafeature,partorsubass emblyhierarchythat capturesdesignintent,thatis,apartialorder,typically alsorepresentedasa directedacyclicgraph. Thisincorporationofsuchaninputdecompositioniscrucia lalsoinorder toallowindependentandlocalmanipulationoffeatures,pa rts,subassembliesor subsystemswithintheirlocalcoordinatesystems;forallo wingtheusertodictate PAGE 87 75 Algebraic Adaptor UTU GUI SimpleSolver Navigator Const-EqnProc (CEP) DR-Planner Eqn-SolnManager (ESM) OuterCADSystem Cluster-System Combinatorial Optimizer(CCO) Solver Front End Figure6{1:Standardgeometricconstraintsolverarchitec ture. theorderofresolution(andsolutionspaceinspection)oft hefeatures,parts, subassembliesorsubsystems.Forexample,parametriccons traintsolvingcanin factbeachievedasaspecialcase,wheretheorderisacomple te,totalorder.In additionsucha solvingpriorityorder arisesnaturallyinthecaseofmodule-rigid DR-plans[ 12 ]discussedinSection 6.1 .Theseincludeclusterswhoseclusterhood dependsonrstsolvingother(nondescendant)clustersint heDR-plan. 6.1.2CombinatorialCluster-SystemOptimizer(CCO) ThismethodisdescribedindetailbySitharametal.[ 14 ].Herewegive itsrequirementsandoutput.TheCCOmethodtakesitsinputf romtheDR-plan (Figure 6{1 )onecluster C atatime,alongwithacompletemaximaldecomposition intosubclusters C i ,andcompleteinformationonreducibleoverconstraintsdi rectly associatedwitheach C i andwith C .TheCCOmethod'soutputconsistsof:(i) acoveringsetofclustersamongthe C i 'sthatwillbeusedforsolving C ,(ii)a PAGE 88 76 subsetofthe clusteroverlap constraintsforthechosencoveringsetwhichtogether withawell-constrainedsetoforiginalconstraints,resul tinasystemofalgebraic equations(a)thatisstableorindependentand(b)whosecom plexity-thatis, numberofvariablesanddegree-hasbeen combinatorially minimized;typicallythis complexityisconstant,independentofthesizeoftheconst raintgraph.Notethat theactualalgebraicsystemforsolving C isnevergeneratedormanipulatedbythe CCOmethod.Alltheoutputrequirementsare essential fortractabilityofsolution andthusfortheESMmethodpresentedhere,andareprovenbyS itharametal. [ 14 ],exceptfortheRequirement(ii)(a)whichisprovenbySith aram[ 48 ]. 6.1.3AlgebraicSolver Thiscouldbeapurelyalgebraicornumericsolver.An essential property oftheAlgebraicSolver(Figure 6{1 )isthatitshouldbereasonablyecientin practice;numericallystable;outputallrealsolutionsto theinputpolynomial system;usesintervalarithmetic,thatis,candealwithint ervalvaluesforthe coecientsofthepolynomials;andcansearchforsolutions withinspecied intervalsforeachvariable. Desirable propertiesdependontypesofnavigation constraintsthatwepermit:incorporatingoverconstraint sduringsolvingtoprune solutionspace;dealingwithsemi-algebraicsets,thatis, dealingwithpolynomial inequalitiesduringsolving.Thesolver[ 49 ]satisesalloftheserequirements. 6.1.4GraphicalUserInterface(GUI) InteractionwiththeuserthroughtheGUIiscentraltotheES Mmethod, andbenetsfromawell-designedGUI.TheGUIrequirementsh oweverare easytodescribe:adequatetextandmenuinteractionaswell as2Dand3D canvasestoenablethefollowing.TheGUIisusedtoinput:th econstraintsystem andaconceptualdecompositionorfeaturehierarchy,(thes ecouldhavebeen partiallysolvedandstoredfromanearliersession),anyup datestothese,and interactiveuserinputduringtheconstraintparsingandeq uationbuildingstages PAGE 89 77 andrealizationspacenavigation.TheGUIisalsousedtomod ifytheobject, constraintandfeaturerepertoireorconstraint-to-equat ionparsetree.TheGUI isusedtooutput:theDR-planoftheinputconstraintsystem consistentwith theinputconceptualdecomposition,thesystemofequation sastheyarebeing parsedinstagesfromtheconstraints,thesubsystemsoluti onscorrespondingtothe nodesoftheDR-plan,arealizationofthepartiallysolveds ystemasthenavigation proceeds,andthenalrealization.AgoodexampleistheGUI implementedin FRONTIER[ 15 50 ]andshownintheguresinSection 6.2 6.2NavigatingtheSolutionSpace Thissectionhastwoparts.Therstdescribestheoverall Equationand SolutionManager(ESM) navigationmethodandthecommon,augmentedDR-plan datastructure-usedbythismethodanditscompanionmethod s-thataids eciency.Thesecondpartdescribesitsintegrationintoas tandardconstraint solverarchitecture(Figure 6{1 )specically,thedatarow,communicationwiththe companionmethodsthatsatisfytherequirementsgiveninSe ction 6.1 ,andasketch ofitsimplementationintheFRONTIERconstraintsolver[ 15 ]. 6.2.1TheBasicESMMethod TheESMtakesasinputtheconstraintgraph,theDR-planoutp utof any DR-plannerasinSection 6.1 ;astableandcombinatoriallyoptimizedsystem ofconstraintsforeachclusterintheDR-plan-thatis,theo utputof any combinatorialcluster-systemoptimizerasinSection 6.1 ;andnallynavigation constraints,suchasredundantorconsistentoverconstrai ntsandchiralities.It generatesanalgebraicsystemofequationsandinequalitie sforeachcluster. Then,usingitsaccessto any algebraic-numericsolverasinSection 6.1 ,itoers theuseratractable,interactivevisualwalk-throughofth esolutionspaceby outputtingtotheGUI-andstoringintheaugmentedDR-pland atastructure-the partialrealizationsorsolutionsoftheclustersubsystem sinanecientmanner. PAGE 90 78 Interactiveinputtothemethodincludestheuser'schoiceo fsolutionstothe clustersandadditionalnavigationconstraintsaddedonby theuser,usingwhich theESMmethodrecursivelyassemblesthedesiredsolutiono ftheentiresystem. Themethodprovidesfullyrexiblebacktrackingforredoing theuser'schoices startingfrom any cluster.Finally,themethodcanberunfullyautomatically withoutanyuserintervention,tooutputarealizationofth eentireconstraint system,includingnavigationconstraintsthatareinputap riori. TheSolveforestroutinecanbemergedintotheSolvecluster routine.Itisnot necessary,exceptforclarity,andfordealingwiththecase wheretheDR-planhas severalroots-incasetheinputconstraintsystemwasunder constrained. Solveforest (setSofclusters) [1)AttoplevelofrecursionSrepresentsacompletedecompositionofgivensystemintomaximal,well-overconstrainedsubsystems.2)Atlowerlevelsofrecursion,SrepresentsanoptimalcoveringsetoutputbyCCO] ForeachclusterCinS,Solvecluster(C)Returnuser-chosensolutionU(C)foreachclusterCinS. [efficientlystoredinanaugmentedDR-plan datastructure,describedbelow] Solvecluster (C) [TheinputisCCO'soutputforC: 1)atbottomlevelofrecursion,awell-constrainedsysteminvolvingprimitivegeometricelements;2)athigherlevels,anoptimalcoveringsetSofsolvedchildclustersCi,andastable,independentsetofconstraintsbetweentheCi's,partitionedintotreeoverlapconstraintsandnontreeconstraints] Solveforest(setSofCi's)Repeat CEP(C) [Getsfromuseradditionalnavigationconstraints forC.1)Insomeiterations,especiallythefirst, PAGE 91 79 Figure6{2:Solutionsoftheclusterformedbythe3circles( Figure 1{1 ). itcreatesalgebraicsystemAlg(C)forsolvingC,usingtheuser-chosensolutionforeachCiandthenon-treeconstraintsinthestablesetofconstraintsbetweentheCi's,outputbytheCCO.2)Insomelateriterations,itprunesanyalreadyexistingsetSol(C)usingthemostrecentlyinputnavigationconstraints.3)ItInteractswithuserfurtherformassagingthisalgebraicsystemtoreducecomplexity] Algebraic-NumericSolver(Alg(C)) [ReturnssolutionsetSol(C)forC:rotation ofeachCiw.r.t.itsparentinthetreeofoverlapconstraintsgivenbyCCOforC.ThecoordinatesystemofCisthesameasthehomeorrootclusterofthetreeofclusteroverlapconstraintsoutputbytheCCO:thehomecluster'srotation/translationisfixedtobetheidentity.] CommunicatethesetSol(C)visuallytouserviaGUI UntiluserissatisfiedandpicksasolutionU(C)Returnuser-chosensolutionU(C) Thisvisualwalk-throughisaninteractiveprocess,permit tingtheusual3D visualtoolssuchaspanning,zooming,rotationtovisualiz ethevarioussolution possibilities,whichcannotbefullyillustratedbythegu reshere.Theinterested readerisencouragedtodownloadandrunthe(opensource)so ftware[ 15 ](Figures 6{2 6{3 6{5 6{6 6{7 ). PAGE 92 80 Figure6{3:Completesolutionofrootcluster(Figure 1{1 )afterchoosing subsolutions. Pointers to the children 2. Cluster Type3. Navagation constraints4. Vertices5. Points to non-descendant clusters 2. Non-tree overlap and original constraints 1. Tree of overlap constraints1. Solutions 2. Solved flag 1. Group ID Figure6{4:Thestructureofthecluster. AclusterobjectrepresentsaDR-planner'ssimplication[ 2 6 9 10 11 15 ] ofawell-constrainedorawell-overconstrainedsubgraph, aswellasitsoriginal subgraph. Figure 6{4 showsthecontentsofthecluster. 1. Hierarchyeld .Theseclusterobjectsarehierarchicalandcontain pointerstotheirsub-DR-plan,adirectedacyclicgraph(DA G),i.e,theDAG interrelationshipsarestoredwithineachcluster C asalistofitsimmediate children C i 2. Combinatorialdescriptiveelds .Thecluster C containsmoredescriptive elds,1)agroupIDcorrespondingtoafeature,ifany,thatc orrespondsto thiscluster C intheinputfeaturehierarchy.Notethatnoteveryfeaturei n theinputfeaturehierarchyisacluster;however,everyclu sterfeaturemust appearintheoutputDR-plan,iftheDR-plannersatisesthe desirablefeature incorporationpropertydiscussedinSection 6.1 .2)Anotherimportantdescriptive eldistheclustertypethatindicateswhetherthiscluster iswell-constrained, PAGE 93 81 well-overconstrained(combinatorially),andalistofred ucibleoverconstraints directlyassociatedwith C .,thatis,doesnotliewithinanyofthechildclusters of C .3)Anothereldcontainsothernavigationconstraintstha taredirectly associatedwith C (thesearediscussedlaterinthissection).4)Anothereld is alistoforiginalverticesorgeometricprimitivesthatcon stitutethiscluster.5) Inthecaseofmodule-rigidDR-planners[ 12 ],asmentionedinSection 6.1 ,some clustersbecomeclustersonlyafterother(non-descendant )clustershavebeen solved,inducingasolvingpriorityorder.Thusaclusterco ntainspointerstosuch non-descendantclusters. 3. Fieldsgivinginput/outputtoCCO .Thecluster C storestheinputtoand theoutputoftheCCOcompanionmethod,thatis,acompletese tofmaximalrigid clusterswithin C ,ofwhichasubsethavebeenpickedbytheCCOasthechildren of C .Theclusterstructurecontainsastable,independentsyst emofclusteroverlap andoriginalconstraintsbetweenthe(primitiveelementso f)childrenof C .These arepartitionedintotwoparts,1)atreeofoverlapconstrai nts,withahomeor rootclusterandasetofnon-treeoverlapandoriginalconst raints.2)Theoriginal constraintsincludeallnon-reducibleconstraintsin C 4. Fieldsdescribingalgebraicsolution .Theclusterobjecthasseveralelds thatstorethesolveddegreesoffreedomofthecluster.Alis tofstringsisstored, oneforeachsolutionoftheclusterreturnedfromthealgebr aic-numericsolver (givenxedchosensolutionstoeachofthechildclusters). Whentheuserselectsa desiredsolution,thatstringisparsedintoalistofactual degreeoffreedomvalues forthiscluster.Multiplecopiesofthelistarepermitted, oneforeachparentof theclusterintheDR-plan,iftheyexist.Notethatespecial lywhentheDR-plan incorporatesaninputfeaturehierarchyorpartialdecompo sition,theDR-plan couldbeatrueDAGwithchildclusterssharedbyseveralpare ntclusters.Thenal eldisaragthatindicateswhetherthecurrentCluster C hasbeensolvedornot. PAGE 94 82 Acrucialfeatureofthedatastructurethatmaintainsclari tyandeciency duringnavigationandbacktrackingisthateachrealizatio nofthecluster C isnot storedaspositionsofeachgeometricelementinthecluster -thiswouldcostlinear timeandspaceforeachchildcluster-butratheritisstored asthehomogeneous rotation/translations(aconstantnumberofmatrixentrie s)of C 'schildclusters thatresolvestheconstraintsbetweenthem.Theconstraint sarethenon-tree portionoftheindependentsetofconstraintsoutputbytheC COcompanion methodandtherotationsareassociatedwiththeoverlaptre eoutputbytheCCO companionmethod,expressingachildcluster C i 'srotationwithrespecttoanother childcluster C j of C ,namely C i 'sparentinthetreeofoverlapconstraintsoutput bytheCCOcompanionmethod.Onlywhenthepositionofaprimi tivegeometric element v inacluster C isneededisitactuallycomputed.Thiscouldbeneeded eitherbythe constraintequationprocessor(CEP) oftheESMmethoddescribed next,inordertoconstructastablesystemofequationsfor C 'sparentinthe DR-plan,ortoprunethesolutionsetof C ,orwhenaparticularrealizationof C needstobedisplayedtotheuser. Thepositionofaprimitiveelement v in C isobtainedbytakinganested productofrotations.(i)The\outer"productisaproductta kenoveranyof thepathsthatleadfromthecurrentclustertoaleaf/sinkof theDR-planthat correspondstothatgeometricelement.Thispathisnotuniq ueifthegeometric element v issharedbymorethanoneclusterappearingintheDR-plan,b utall thesepathsprovidethesame,uniquepositionforthegeomet ricelement v :thisis ensuredbytheCCOcompanionmethod.(ii)Each\inner"produ ctisassociated withasinglecluster D alongtheabovepath:itisaproductofrotationmatrices thatplace D withinthecoordinatesystemofitsparent E intheDR-plan.That is,itistheproductofrotationsalongtheuniquepathto D fromtherootorhome PAGE 95 83 Figure6{5:Navigatingbybottom-uptraversalofG79inDR-p lan(Figure 1{4 ). Figure6{6:Navigatingbybottom-uptraversalofG82inDR-p lan(Figure 1{4 ). cluster-inthetreeofoverlapsfor E generatedbytheCCOcompanionmethod (Section 6.1 ). ThustheentireDR-Planobjectissimplyapointertotheroot nodeofalist ofclustersastheyaredescribedabove.Incasethegraphisu nderconstrained,the rootnodeisadummynode,whosechildrenaretheactualsourc esoftheDR-plan, i.e,acompletesetofmaximalclusters(Section 6.1 ). TheCEPmethodisacrucialpartoftheESMmethodandhasthefo llowing functionality:Itgeneratesasystemofequationsandinequ alitiesforsolvinga cluster C ,using(a)theoutputoftheCCOcompanionmethod;(b)theuse r-chosen solutionsforthechildclusters C i of C ;and(c)navigationconstraintsdirectly associatedwith C ,includingreducibleoverconstraintswhichhavebeenisol atedby theDR-planner.Inordertoobtainalgebraicsystemsoflowc omplexity,ithelpsto permituserinteractionduringtheprocessofbuildingthes ystemcorrespondingto PAGE 96 84 Figure6{7:Completesolutionofconstraintsystem(Figure 1{4 ). acluster.TheCEPisadditionally\editable"sinceitpermi tsmodicationstothe constraintrepertoireaswellastheconstraintparsingmec hanismtobe input by theusersystematicallyandecientlyinsteadofhavingtor ewritethecodeforthe ESM.TheCEP'suserinteractioniseectedviatheGUItextin terface,discussed inthecommunicationandintegrationsection. TheCEPhasatwostageoperation.Therst conversionstage convertsedges orconstraintsinthe nontree portionoftheoutputoftheCCOintoalgebraic equationstringsunderstandablebytheAlgebraicSolver.T heseequationsare betweenvariablesdescribingthepositionsoftheprimitiv eelementsinthechild clusters C i of C .Thesecond substitutionstage oftheCEPexpressestheposition variablescorrespondingtoaprimitiveelement v inachildcluster C i intermsof the variable rotationandtranslationofthecluster C i within C 'scoordinatesystem obtainedfromthe tree portionofclusteroverlapsreturnedbytheCCO. TheCCO'spropertiesdescribedinSection 6.1 guaranteethattheresulting systemfromtheconversionandsubstitutionstagesisastab le,independentsystem ofalgebraicequationsforsolving C Conversionstage oftheCEPproceedsinsteps,sothatatanystep,the usercaninterfereandmakesubstitutionsthatmakethesyst emofequations simpler.TheheartoftheCEPisadatastructureandlook-ups ystem,the PAGE 97 85 constraint-to-equationparsetree( CEPtree ),whichtakestheuniquecharacteristics ofeachedgeorconstraintandsearchesanindexofuser-den edequationsstrings foramatch.TheCEPorganizesthosestringsintoa n -arytreerepresentinga naturalhierarchyofconstraints-thisconceptualhierarc hyisalsomirroredin therepresentationofconstraintsusedbyanystandardcons traintsolverGUI. Theuseofthistreedatastructuremakesthesearchingofthe constraintlist,and conversionofconstrainttoequationbothecientandmorei nteractive.Moreover, thisdatastructurecanbeinputormodiedbytheuser,makin gitfullyeditable andextensible,asdiscussedbelow. TheCEPtreeisorganizedbyequationclassesandsub-classe s.Forinstance, consideradistanceconstraintbetweentwopointsandatang encyconstraint betweenatwocircles.Thedistancehastheequation( x 1 x 2) 2 +( y 1 y 2) 2 = d 2 andthetangencyhastheequation( x 1 y 2) 2 +( y 1 y 2) 2 =( r 1+ r 2) 2 ,where x 1 ;x 2 ;y 1 ; and y 2areeitherthelocationsofthepointsorthecentersofthec ircles, disthedistancebetweenthepoints,andr1andr2aretheradi iofthetwocircles. Theseequationsfallintothesameequationclassbecauseth eyareinasense generatedbythesamebasictemplateor\grammar."Inthisex ample,thetangency equationwouldbeasub-classofthedistanceequationsince itsequationcouldbe createdwiththesubstitutionofthe d variableinthedistanceequationwiththe string( r 1+ r 2).ThisrelationshipwouldberepresentedintheCEPtreeby two nodes,onenodeforeachequationformandthetangencynodew ouldbeachild nodeofthedistancenode.Tocompletethedatastructure,ea chnodestores(a) alistofedgeobjectswhichmaptoanequationand(b)eithera nequationora listofsubstitutionswhichcreatethenewchildequationfr omtheparentequation. Bystoringonlythesubstitutioninformation,theprocesso fconvertingthelistof constraintstoalistofequationsishighlysimplied. PAGE 98 86 Whentheequationsystemforacurrentcluster C isbeingbuiltoneequation atatime,thatis,whensingleconstraintsareparsedoneata time,theactual variablenamesoccuringintheoutputequationareirreleva ntduringtheconversion stage-theywillbeappropriatelymodiedduringthesubsti tutionstagedescribed below. However,theprocessofparsingasingleconstraintcanbeex tendedtoparsing asystemofconstraintsenbloc.Thisrequiresmorecarewith preservingidentical anddistinctvariablenamesthatappearindierentconstra ints.Generatingthe correspondingequationsetinvolvestraversingseveralpa thsoftheparsetreein lockstep,withsubstitutionsbeingmadealongtheway.Theu sercaninterfere atanystageandmakesubstitutionstosimplifytheentireal gebraicsystem.The userinteractionproceedsthroughasimpleGUItextinterfa cediscussedinthe communicationandintegrationsectionbelow. Substitutionstage oftheCEPre-expressesthepositionvariables-correspond ing toprimitiveelement v inachildcluster C i -whichoccurintheequationsystem obtainedaftertheconversionstage.Thesevariablesareex pressedintermsof(a) the variable rotationandtranslationofthecluster C i within C 'scoordinatesystem obtainedfromthe tree portionofclusteroverlapsreturnedbytheCCO.and(b) thealreadysolved, constant positionof v within C i 'slocalcoordinatesystem. Both(a)and(b)requireproductsofrotationmatrices,asin thedescriptionofthe ecient,augmentedDR-plandatastructure.Inthecaseof(b ),anestedproduct isrequired,withthe\outer"producttakenoverthecluster sonanypathinthe DR-planfrom C i to v .Inthecaseof(a),thereisonlyan\innerproduct"ofthe rotationmatricesalongthepathto C i fromthehomeorrootcluster-inthetreeof overlapconstraintsfor C returnedbytheCCOcompanionmethod. Navigationconstraintsareusednotonlytoprunethesearch duringuser directednavigation,butmoreimportantly,toconverttheE SMmethodintoa PAGE 99 87 (tractable)automaticsearchfordesiredsolutionsforany clusteroftheDR-plan. Theseconstraintscaneitherbegivenaprioriorinteractiv elyduringauser-directed navigation,topruneunwantedrealizationsoftheDR-plan' sclustersencountered thusfar. LeveragingthemodularityoftheESMmethoddiscussedabove -thatis, itsseparationfromtheDR-planner,anditsapplicabilityt o any inputDR-plan asinSection 6.1 -permitsmethodsdevelopedalongwithotherDR-plannersfo r incorporatingnavigationconstraints-tobetransferred practicallyunchanged to theFADR-plannerandtheESMmethodsdiscussedabove,forex amplerelational andengineeringconstraintsfortriangledecomposablesys temsgivenbyFudosand Homann[ 42 ].Wedescribethetwoothercommontypesofnavigationconst raints below. Onetypeofconstraintusedfornavigationorpickingoutdes iredsolutions foranycluster C oftheDR-planaresimplyredundantoroverconstraintsdire ctly associatedwith C ,thatis,connectingprimitiveelementsthatlieindieren tchild clustersof C .TheseareisolatedbyanyDR-plannerasinSection 6.1 .Thereisa well-developedtheoryofuniquerealizationsandso-calle drigiditycircuitsobtained, forisolatingdesiredsolutionsfromthesolutionspaceusi ngredundantconstraints [ 30 ]. Theothertypeofcommonnavigationconstraintsarechirali ty[ 4 41 ],also calledordertypeorrelativeorientationconstraints.Chi ralityconstraintscanbe inferedfromtheinputsketch.Forexample,forpointobject s,theseconstraints assignsignstothe D +1by D +1determinantsofthehomogeneouscoordinate matricesobtainedfromeachsetof D +1pointobjects.I.e,theseconstraints are D +1degreepolynomialinequalities.Thesecorrespondtoaco mplete orientedmatroidspecication[ 51 ].Alternatively,a partial orientedmatroid specicationcouldbespeciedbytheuser:theseassertint ersectionorseparation PAGE 100 88 ofpairsofconvexhullsofsubsetsofpointobjects(calledr espectivelycircuitsand co-circuitsinorientedmatroidterminology).Forexample ,twolinesegmentscould beconstrainedtointersect,orapointcouldbeforcedtolie intheconvexhullof someothersetofpoints.These,toocouldbewrittenaspolyn omialinequalities. Chiralityconstraints,likeredundantoverconstraints,a realsodirectlyassociated withauniquecluster C intheDR-plan:thesmallestclusterthatcontainsallthe primitiveelementsthatparticipateinthechiralityconst raint.Thisalsoimplies thatnotalloftheparticipatingprimitiveelementsfallin anysinglechildclusterof C Thenavigationconstraintsassociatedwithacluster C areprocessedbythe CEPusingthesameConversionandSubstitutionstagesdescr ibedabove.Atthe endofthesestages,thenavigationequationsandinequalit iesarenotintermsof theprimitiveelementsthattheyinvolve.Instead,theyare intermsoftherotation matrixentries(variables)thatplacethechildren C i of C (intheDR-plan),within C 'scoordinatesystem.Thereafter,duringeachiterationin whichtheCEPis calledforcluster C ,theyaredealtwithinoneoftwoways.Ifthealgebraicsyste m associatedwiththeclusterhasnotyetbeensolved(inther stiteration),orthe numberofsolutionsisbeyondsomepredenedthreshold(inl ateriterations),and theAlgebraicSolveriscapableofhandlingredundantequat ionsandpolynomial inequalities,thentheseprocessednavigationequationsa ndinequalitiesaretacked ontothestable,independentsystemfor C generatedasdescribedabove,and senttotheAlgebraicSolver.Ifnot,i.e,ifeitherofthesec onditionsdoesnothold, thesenavigationequationsandinequalitiesaresimplyuse dtoprunethesolution setfor C .Notethatsincethenavigationequationsandinequalities havealready beenprocessedbytheSubstitutionstageoftheCEP,thispru ningcanbedoneby directlyusingthesolutionsoutputbytheAlgebraicSolver ,i.e,usingtherotation PAGE 101 89 matrixentryvaluesforthechildrenof C .Nocomputationoftheactualpositionsof theprimitiveelementsin C isrequired. ThedesignoftheCEPpermitstheusertorexibly create and modify the parsetreedescribedabove,withouthardcodingit. Increatingtheparsetree,therstnodeisachildofapre-ex istingdummy node,Root.Newlycreatednodescanbethechildrenofanypre viouslyentered nodeorRoot.Aftertheuserhaschosenthepositionofthenod ewithinthe formingtree,allothernecessaryinformation,suchasthen ewlabelandequation, areobtained.Thenalstepinnodecreationistoattachalis toftheconstraint typesthatwillbeindexedtothisnewnode.Theuserinputate xtlistofallthe constrainttypeswhichmaptothisnode.Theuserrepeatsthe processofnode creationuntiltheentireCEPtreehasbeenentered.Theuser thensavestheentire CEPtreetobeusedforfutureparsing.6.2.2ESM'sCommunicationwithUserandIntegration Thestandardarchitectureofageometricconstraintsolver togetherwiththe ESMmoduleisgiven(Figure 6{1 ). NextwediscussthedetailsofthedatarowwhentheESMisinte grated withinsuchastandardarchitecture,includingcommunicat ionwiththeuser.We additionallysketchFRONTIERconstraintsolver'simpleme ntationoftheseaspects [ 15 ]. TheESMmustcontinuallyinteractwiththeusertoselectvar ioussubsystem solutionsandtodirectthepathtowardsnalsolution.Allc ommunicationbetween themodulestakesplaceviatheUTUortheuniversaltransfer unit,whichis alsothemaindriveroftheback-endmodules.Whilethereare numeroustypes ofinformationtheESMcanpassbacktotheGUI,theirprocess isalwaysthe same.First,thecurrentstateoftheDR-Planandalladditio nalcommunication informationissenttotheGUIviatheUTU.TheGUIreadsonlyt hecommunication PAGE 102 90 information,butstorestheresidualdatastructureinform ationwhileitprocesses thecommunicationinformation.Theresidualdatastructur einformationispassed backtotheUTU,ifnecessary,duringthenextrequest,andus ingit,theUTUcan rebuildthecurrentstateofthesolutionprocessandtheESM cancontinuewhere itlefto.ThedetailedactionsoftheGUI,UTU,andtheESMin eachmodeof communicationduringthesolvingphaseareoutlinedinthen extsections. OncetheDR-planningphaseisoverandtheDR-planhasbeendi splayedto theuser,andwhentheUTUreceivestheragindicatingthatth euserhasselected theuser-interactiveNavigateoption(asopposedtotheAut osolveoption),the UTUsimplysendstheconstraintgraphandDR-Plandirectlyt otheESM.When theESMreceivesthecontinuerag,itbeginsthesolution-na vigationprocessand thevisualwalk-throughorsteeringthroughthesolutionsp aceasexplainedin Section 6.2 .TheESMtraversestheDR-planbottomup,asexplainedabove ,until itreachesthepointwhereithasseveralclustersolutionst ooertotheuser.At thispoint,theusermustselectoneofseveralpossiblesolu tionsfortheclusterthat theESMwillusetocreatethenalsolutionfortheentiregra ph.Thisinformation mustbepassedfromtheESMbacktotheSketcherfordisplay.T heESMsends backtwolistsofinformationviatheUTU.First,foreachsol utionpossibility,the ESMwritesoutalistoftheprimitiveelementsinthecluster .Foreachelement, theESMwritestheobject'sID,andalistofitssolvedpositi onvariables.Second, theESMwritesalistoftheclusterscontainedinthecurrent DR-Plananda booleanragtoindicatewhethertheyhavebeensolvedornot. Thisinformation allowstheusertolocatewherethesolvingprocessisw.r.t. theDR-Planwhen makinghis/herchoiceofasolution.Asanalstep,theESMse tsaragtoindicate thattheinformationbeingsentisanewsolutionpossibilit yandreturns. TheSketcherdisplaysthesolutionpossibilitiestotheuse r,oneatatime,in aseparatewindow.Theoriginalsketchanda partiallysolvedsketch asinFigures PAGE 103 91 6{2 6{3 ,incorporatingthesubsystemsolutionschosensofarintot heunsolved originalsketcharealsodisplayedandallowstheusertomak eachoiceofseveral optionsdescribedbelow. 1.Selectasolutionandcontinuesolution -Inthiscase,theSketchersimply setstheESMcommunicationragtoindicateasolutionchoice andsendstheUTU thenumberofthechosensolution.TheESMusesthistoupdate stheDR-Plan tocontaintherotationmatrixvaluesforthechosensolutio nandcontinuesthe solutionnavigationprocess.Assumingthattheuseralways selectsasolution,this processofsolving,solutionselection,andDR-Planupdate wouldcontinueuntilall thesubsystemsintheDR-Planhavebeensolved. 2.Choosetobacktrack -Iftheuserdecidesthatnoneofthecurrentsolution choicesareappropriate,theymaychoosetoedittheirearli erselections.For editing,theuserhastwooptions:resolvethecurrentclust erwithnewchoicesfor itschildren'ssolutions,orrepeatthesolvingofsomeprev iousclusteraftermaking newchoicesforthesolutionsofitschildren.Ineithercase ,theSketchersendsa ragbacktotheUTUthatindicatesthatbacktrackingistoocc urandanIDof theclusterfromwhichtheuserswishestocontinuesolution .TheUTUeditsthe DR-Planandresetsthe\solved"ragsthatindicatethatthat clusteristhenext tobesolved.TheESMwillignoreanyprevioussolutionsifth enraghasbeen unset,andwhentheUTUcallsitwiththealtered\solved"lis t,itwillcontinue solvingfromanearlierpointexactlyasdescribedabove. 3.Choosetoupdate -Thisnaloptionpermitstheusertoupdatetheinput constraintgraphandfeaturehierarchy,becauseasubsyste misfoundtohave eitherzeroorinnitelymanysolutions(duetogenericorno ngenericconstraint dependenciesundetectedbytheDR-planner).Theuserbelie vesthereissomething wrongwiththeinputgraphitself,ratherthanthebifurcati onchoicesthathave beenmadeearlier.Manymodicationsofthegraphdonotrequ irerepeating PAGE 104 92 theDR-planningofthesystem.Thesechangescanbemadeinte ractivelyduring solutionnavigationprocessandmuchoftheoriginalDR-pla nandsolutionscanbe reused.ThisisoneoftheadvantagesoftheFrontiervertexb asedDR-planners[ 2 ]. Thethealgorithms,communicationsanddatarowforsuchupd atesaredescribed bySitharam[ 11 ]. Assumingasolutiontothecurrentsystemexistsandtheuser canselect subsystemsolutionstondit,allcommunicationendswhena lltherootclusters intheDR-Planhavebeensolvedandtheuserdoesnotwishtoba cktrack.Atthis point,theESMwritesaragtoindicatethatanalsolutionis tobereturned. Thenitreturnsaorderedlistofallobjects,theirID'sandt henalpositionsof theirdegreesoffreedom. Iftheuserchosetheautosolveasopposedtothenavigateopt ion,thereisno interactionbetweentheuserandtheESMaftertheDR-Planha sbeenaccepted. Theprocessofauto-solvingisthesameasthenavigatesolut ionoptionexcept thatwhentheESMwouldrequestarealizationchoicefromthe user,theESM automaticallychoosestherstsolutionthatsatisesthen avigationconstraints. Backtrackingautomaticallyoccurswhennosolutionisfoun dforacluster C forthecurrentchoicesofthesolutionsforthechildrenof C .Attheendofthe auto-solutionprocesstheESMeitherreturnsanalsolutio nexactlyasaboveorit returnsaragthatindicatesthatnovalidsolutionexists. TheCEPpermitstheusertobothsetuptheCEPtree,andtointe ractively buildsubsystemsofequationsthattheESMsendstotheAlgeb raicSolver.Both typesofcommunicationtakeplaceviatheUTU,andthroughth eGUI.TheGUI opensatextwindowforthiscommunication. TheGUIoptionsallowtheusertosetinteractive/automatic modeforthe CEPatanypointduringasession.Intheinteractivemodeoft heCEP,theuseris againgiventheoptionoftakingtheEntrymode(wheretheuse rcanedittheparse PAGE 105 93 tree,addnewtypesofconstraintsandsoon,)ortheParsemod e(forthenavigate optionofthesolvingphase).Inthelattercase,theuserisp romptedeachtime whenasubsystemofequationsisbuiltbytheESMtosendtothe AlgebraicSolver. Iftheautosolveoptionischosen,thedefaultchoiceistosh utoalluserinteraction withtheCEP. TheGUI,sometimesjustreferedtoasSketcher,iswrittenin Java,Java3D andisthemaindriverforFRONTIERandisusedforallinputan doutput.The DR-planner,CCO,UTU,ESMtogetherwithCEP,andsoon,arewr itteninC++. TheC++driveristheUTU,whichalsocoordinatesthecommuni cation.The AlgebraicSolveriso-the-shelf[ 49 ]andnotdiscussedhere. ImplementingtheCommunicationbetweentheModules TheDR-plan datastructureisphysicallysharedbytheC++modules,andi scommunicated, throughtheUTU,totheJavamodulesusingaJavaNativeInter face(JNIarrays); howeverthesamedatastructureisconceptuallymirroredin theobjectoriented hierarchiesusedbytheGUI'sJavamodules.TheGUIisusedfo ralluserinputand foralloutputdisplays.Allinformationpassedbetweenthe GUIandthebackend modules(C++)ispassedthroughaJNIinterfaceofthreearra ys,oneofintegers, oneofdoublesandoneofcharacters.TheGUIwritesinformat ionintothesethree arrays,andnativelycallstheC++codewiththesethreearra ysasparameters.The C++driver,theUTU,parsesthesearraysandfromthemcreate s(orrestores)the augmentedDR-Plandatastructuresdescribedearlier.TheU TUthendirectsthe ESMtoaccomplishthespecicrequestmadebytheuser,descr ibedabove,inthe Datarowsection.Thedierentrequestsareindicatedbythe useofanintegerrag thatispassedastherstintegerintheintegerarray. 6.3Conclusions WelistbelowthemainfeaturesofESM: PAGE 106 94 TheESMmethod recursivelyassembles thedesiredsolutionofthesystem G : it prunes thesolutionspaceof G byeliminatingsolutionsthatareinconsistentwith theuser'sinteractivesolutionchoicesforwellorwell-ov erconstrainedsubsystems S of G .Theseareselectedby visuallywalkingtheuserthrough allthesolutions-for acurrentsubsystem S -thatareconsistentwithhis/herprevioussolutionchoice s forsubsystems of S .Thesesubsystems S aretakenfromaDR-planof G .When thisDR-planisincorrespondencewithadesigndecompositi onof G ,theESM methodprovidestheuserconceptuallymeaningfulcontrol. TheESMmethodis typically fullyscalable inthatonlyasmall(constant,independentof j G j )number ofsolutionchoicesareoeredtotheuseratanystage,inatr actable(linearin j G j ) numberofstages. TheESMmethodpermitstheuserto backtrack andchangehis/herprevious solutionchoicesatanystage.Italsopermitsadditional navigationconstraints andotherinputsbytheuserthathelpreducethesolutioncho icesforthecurrent subsystem S ,orhelpspeedupthesolvingof S .Thesecouldbeprovidedapriori orinteractively.TheCEPpermitstheusertoedittherepert oireofnavigation constrainttypesandthemannerbywhichtheyareparsedinto algebraicequations forecientsolving.Alternatively,theentireESMmethodc anbeswitchedto automatic ,thatis,requiringnouserinteraction.Inthiscase,itse ciencyand scalabilitydependonthetightnessoftheaprioriinputnav igationconstraints. GivenaccesstothecompanionmethodsinSection 6.1 ,themodularESM methodisoriginal,butconceptuallysimple.Itinvolvessi gnicantinteractionwith theuserandwiththecompanionmethods.Hencethechallenge liesinitsclean integrationintothegeometricconstraintsolverarchitec ture(Figure 6{1 )[ 10 ], leveragingandnaturallyextendingthedatastructuresand datarow.Theoriginal contributionofthischapterisrepresentedbythedottedba llooninFigure 6{1 .A completeimplementation(Figure 6{1 )canbefoundintheFRONTIERopensource PAGE 107 95 software[ 15 ],whichistodatetheonlycomplete3Dgeometricconstraint solver available. PAGE 108 CHAPTER7 COMBINATORIALOPTIMIZATIONOFALGEBRAICCOMPLEXITY InChapter 7 weshowthat,Mostmajorgeometricconstraintsolversusea combinatorialorgraphalgorithmtogenerateadecompositi on-recombination (DR)plan.ADRplanrecursivelydecomposesthesystemofpol ynomialequations intosmall,genericallyrigidsubsystemsthataremorelike lytobesolvedby algebraic-numericsolvers. Especiallyfor3Dgeometricconstraintsystems,afurthero ptimizationofthe algebraiccomplexityofthesesubsystemsisbothpossible, andoftennecessary tosolvethewell-constrainedsystemsselectedbytheDR-pl an.Toattackthis apparentlyundocumentedchallenge,weuseprinciplesofri gidbodytransformation andquaternionformsandwecombinatoriallyoptimizeafunc tionoverthe minimumspanningtreesofagraphgeneratedfromDR-planinf ormation.This approachfollowsaninterestingconnectionbetweenthealg ebraiccomplexityofa well-constrainedsystemandthetopologyofitsmaximalwel l-constrainedproper subsystems.Theoptimizationhastwosecondaryadvantages :fornavigatingthe solutionspaceoftheconstraintsystemandformappingsolu tionpathsinthe congurationspacesofthesubsystems. Wecomparethereductioninalgebraiccomplexityofthesubs ystemafter optimizationwiththatoftheunoptimizedsubsystemandill ustratethepractical benetwithnaturalexamplesthatcouldonlybesolvedafter optimization. 7.1AnInstructiveExample Inthissection,weshowthreeincreasinglysophisticateda ndincreasingly ecientapproachesto representingtheactiveconstraints neededtoresolvea clusteroftheDR-plansatisfyingthepropertiesof 1.2 .Sincewewanttobeableto 96 PAGE 109 97 C6 C5 C4 C3 C2 C1 c C7 g h i d e a b f HOME ROOT C1 C2 C4 C3 2 22 4 4 4 C1 C2 C4 C3 2 2 2 Figure7{1:Thechildclustersof hex tet andtheweightedoverlapgraph. computeanyandallsolutions,thenumberofvariablesandth ealgebraicdegreeof theconstraintsplaysacrucialrole. Figure 7{1 showstheconstraintstructureandchildclusters C i ofaproblem wecall hex tet ,forreasonsthatwillbecomeobviouswhenwelookatspecic geometricinstanceslateron.Allverticesrepresentpoint swith3degreesoffreedom (dof)andalledgesaredistanceconstraintsremoving1dofe ach.Thechildclusters C 1 C 2 and C 3 aretetrahedraandallotherchildclustersaretriangles.T heactual distancevaluesarenotyetrelevantforthediscussioninth issection(butwillbe inSection 7.3 whenweactuallysolveinstances).Wemaythinkofthemasequ al (exceptforthe3distances ef gh and di whichneedtobelargerinorderfora solutiontoexist). Thecluster C satisestheDR-planpropertiesofSection 1.2 .Specically,the childclustersformacompletesetofmaximalclustersprope rlycontainedin C andtheirpairwiseintersectionsaretrivial.Minimalcove ringsetsare: f C 1 ;C 2 ;C 3 g f C 5 ;C 6 ;C 7 g PAGE 110 98 Inthefollowing,wedenoteby x a;C i := 266664 x a;C i y a;C i z a;C i 377775 2 R 3 thecoordinatesofpoint a in C i 'slocalcoordinatesystemandby x a;C;C i := 266664 x a;C;C i y a;C;C i z a;C;C i 377775 thecoordinatesofpoint a parameterized inthedof'sin C 'scoordinatesystem. Inparticular, x a;C;C i maydependonrotationanglesthatwillonlyberesolvedtoa nalposition x a;C incluster C bysolvingtheconstraintsystem. 7.1.1TheUnoptimizedPolynomialSystem Currentconstraintsolvers,suchasFRONTIER[ 15 ],constructthepolynomial systemcorrespondingto hex tet asfollows: Pickanarbitraryminimalcoveringsetofchildclusters.Fo rtheexample,we choose f C 1 ;C 2 ;C 3 g .Setthecoordinatesystemof C tooneofthechildclusters. Thischildclusteriscalledthe homecluster for C .Fortheexample,wechoose C 1 Eachoftheothertwoclusters'positionandorientationwit hin C 'scoordinate systemcanbeexpressedusingacomposite3Drotationmatrix M andatranslation vector t .Forexample,point i in C 2 canbewrittenas x i;C;C 2 = M C 2 x i;C 2 + t C 2 PAGE 111 99 where t C i 2 R 3 isatranslationthatpositions C i in C 'scoordinatesystemand M C i = 266664 s 2 s 3 s 2 c 3 c 2 s 1 c 2 s 3 c 1 c 3 c 1 s 3 + s 1 c 2 c 3 s 1 s 2 s 1 c 3 + c 1 c 2 s 3 s 1 s 3 + c 1 c 2 c 3 c 1 s 2 377775 isacompositionof3Drotationsthatorient C i in C 'scoordinatesystem.The entriesof M C i arepolynomialsoftotaldegreeatmost3inthesixvariables s 1 ;C i ;s 2 ;C i ;s 3 ;C i ;c 1 ;C i ;c 2 ;C i ;c 3 ;C i .Thesevariablesrepresentthesinesandcosinesof therotationanglesandarethereforerelatedbythree trig-relation equationsofthe form s 2i + c 2i =1. Since C 2 sharesthepoint a with C 1 andthecoordinatesof C 1 arexed, t C 2 = x a;C 1 x a;C 2 .Similarly, t C 3 = x b;C 1 x b;C 2 Thisleavessixactiveconstraintsfor C :threedistanceconstraintsoftype 2 i;C j ;C k = k x i;C;C j x i;C;C k k 2 where istheprescribeddistanceandthreeoverlapconstraints x `;C;C j = x `;C;C k ;j;k 2f 1 ; 2 ; 3 g : Thus,toresolve C ,weneedtosolveasystemof twelvepolynomialequationsof maximumdegree6 intwelvevariables s i;C j and c i;C j ,1 i 32 j 3.Thesix trig-relationshavedegree2.Thethreedistanceconstrain tseachhaveatotaldegree 6(since,forexample,therotationmatrixresultsincubice xpressionsforthevalue of x i;C;C 2 )andtheoverlapconstraintseachhavetotaldegree3. 7.1.2UsingQuaternions Amorecarefulapproachtostep3oftheprocedurecanreducet hedegreeof theequations.Eachofthetwoclusters C 2 and C 3 shareapointwiththehome cluster.Thentheirpositionandorientationwithin C 'scoordinatesystemcan PAGE 112 100 berepresentedasarotationaboutanarbitraryaxispivotin gthroughtheshared point. Itiswell-knownthatrotationaboutanaxis v 2 R 3 byanangle canbe expressedas q 1 (0 ; x ) q ; where q :=(cos( = 2) ; sin( = 2) v k v k ) : Here isthequaternionmultiplication.Infact,anyrotationmat rixcanbe expressedintermsofa(unit)quaternionas Q := 266664 1 2 q 2 2 2 q 2 3 2( q 1 q 2 + q 0 q 3 )2( q 1 q 3 q 0 q 2 ) 2( q 1 q 2 q 0 q 3 )1 2 q 2 1 2 q 2 3 2( q 2 q 3 + q 0 q 1 ) 2( q 1 q 3 + q 0 q 2 )2( q 2 q 3 q 0 q 1 )1 2 q 2 1 2 q 2 2 377775 ; 3 X i =0 q 2 i =1 : Forexample,therotationabout x -axisby isrepresentedintermsof q = ( c;s; 0 ; 0)where c :=cos( = 2), s :=sin( = 2)andhence Q x = 266664 10001 2 s 2 2 sc 0 2 sc 1 2 s 2 377775 ; sin( )=2 sc; cos( )=1 2 s 2 : Backtoourexample,instep 3 ,wetranslate C 2 sothat x a;C;C 2 = 0 ,thatisthe point a thatitshareswiththehomeclusterbecomestheorigin.Then weapplyto eachpoint i thequaternionmatrix Q C 2 (withunevaluated q i ).Finally,wetranslate tothetargetposition x a;C;C 1 of a inthehomecluster: x i;C;C 2 = x a;C;C 1 + Q C 2 ( x i;C 2 x a;C 2 ) : Weareleftwiththethreeoverlapandthreedistanceconstra intsasinthe previousformulation.However,wenowneedtoresolveonly eightequationsin eightvariablesofmaximumdegree4 !Moreover,thethreeoverlapequationsare onlyquadratic,asarethetwotrig-relationequationsfor C 2 and C 3 .Thedistance PAGE 113 101 equations di between C 1 and C 2 ,and ef between C 1 and C 3 arequadraticandonly thedistanceconstraint ih between C 2 and C 3 isoftotaldegree4. 7.1.3AnOptimizedAlternative Boththenumberofunresolvedconstraintsandthedegreeoft heequations canbefurtherreduced.Considerthefollowingconstructio nforaconstraint systemexpressing hex tet .Choose f C 1 ;C 2 ;C 3 ;C 4 g asthe(notminimal!) coveringset.Choose C 4 asthehomecluster.Withoutlossofgenerality,using basictrigonometry,thecoordinatesystemfor C is x a;C;C 4 = 0 ; x b;C;C 4 = 266664 dist( a;b ) 00 377775 ; x c;C;C 4 = 266664 dist( a;c ) c 23 dist( a;c ) s 23 0 377775 where c 23 and s 23 arethesineandcosineoftheanglebetweentheedge a;b andthe edge a;c Since C 4 andeach C k k =1 ; 2 ; 3sharetwopoints, p k ; ~ p k 2f a;b;c g ,the positionandorientationofthecluster C k arexedexceptforrotationaboutthe axisthroughthetwopoints.Thecoordinatesofanarbitrary point i incluster C k canthenberepresentedas x i;C;C k = x p k ;C + R C k ( x i;C k x p k ;C k ) : where R C k isalinearexpressionsin2variables s C k and c C k .Thevariables representthesineandcosineofrotationabout p k ~ p k andsatisfy c 2C k + s 2C k =1. Thisleavesonlythreedistanceconstraints.Toresolvethe cluster C ,wenow onlyneedtosolveasystemof sixquadraticconstraintsinthesixvariables s C j and c C j ,1 j 3sinceallconstraints,thethreedistanceconstraintsand thethree trig-relationconstraints,arequadratic! PAGE 114 102 7.1.4Interpretation Thereductioninalgebraiccomplexityfromtheoriginaltot heoptimized solutionissignicant.Noneofthealgebraicandnumerical solvers,wesurveyed, succeededinsolvingtheoriginalproblemformulationbuta llsolutionsofthe optimizedsystemwereobtainedinlessthanoneminute.Befo rewelookat individualinstancesinSection 7.3 ,wecharacterizetheprinciplesunderlyingthe optimizedsolutionandgiveageneralalgorithmforoptimiz ation. 7.2OptimizingAlgebraicComplexityusingClusterTopolog y InthisSection,weformulateacombinatorialoptimization ofthealgebraic complexityofthepolynomialsystemforresolvingacluster C .Werestrict ourselvestothe3Dcase{the2Dcaseissimilarandsimpler.O urdenitionof theoptimizationproblemisaccompaniedbyasketchofanopt imizationalgorithm. Weassumethatthecluster C ,forwhichtheoptimizedpolynomialsystem needstobeconstructed,satisestheDR-planpropertiesof Section 1.2 .Specically, weassumethatitschildclustersformacompletesetofmaxim alclustersproperly containedinawell-constrainedcluster C ;thatalloverconstraintsandhidden constraintdependencieshavebeenremovedasrequired.Wem ayalsoassume thatthepairwiseintersectionsoftheseclustersaretrivi alsubgraphssince,if C isformedfromapairofchildclusterswhoseintersectionis non-trivial,thehome clusterxestheotherclustersbyxingthreeofitspoints. Werstdeneanatural methodofdescribingthetopologyofthechildclustersofac luster. Denition7.2.1 Theoverlapgraphofasubset S ofchildclustersof C isan undirectedgraphwhoseverticesaretheclustersin S .Theedgesrepresentpairsof clusters.Iftheoverlapbetweenthepair C i ;C j isatrivialsubgraphthatreduces, afterresolvingincidenceconstraints,to k pointsthentheweightofanedgeis w ij ( k ):=6 2 k PAGE 115 103 Theweightofanedge( i;j )agreeswiththenumberofrotationvariablesneeded torepresentthecluster C i ,if C j weretobexedasthehomecluster. R ,the twovariablerotationof C i abouttheaxisformedbythetwosharedpointsinthe overlap; Q ,thefourvariablequaternionmatrixrepresentingrotatio nof C i about thesharedpointintheoverlap; M ,thesixvariablecombinationofrotationand translationoftheunoptimizedexample. Basedontheexamplesoftheprevioussection,weobservetha t(i)anychoice ofaset S ofchildclustersthatformsacoveringsetfortheparentclu ster C ,and (ii)anyspanningtree T oftheoverlapgraphoftheclustersin S inducesasystem ofequationsforresolving C Thechoice H ofatreerootrepresentsthehomeclustertobexed.Since C isassumedtobewellconstrained,thenumberofvariablesan dequationsequalsthe totaledgeweightofthethespanningtree.Mostsparsepolyn omialsystemsolvers [ 52 53 ](geometricconstraintsystemsaresparse)taketimeexpon entialinthe numberofvariables.Hencetheoverwhelmingfactorintheal gebraiccomplexity ofthesystemisthenumberofvariables.Degreeandthenumbe roftermsareless importantsincethetimecomplexityispolynomialinthesep arameters. Algorithmically,optimizationrequires ndingaspanningtreeofminimumtotalweightinthesubgraphoftheoverlapgraphinducedby S ,overallcoveringsets S .Alternately,if S arechosentobe minimal coveringsets,thentheoptimization requires ndingatreeofminimumtotalweightcontaining S ,overallcoveringsets S Forgeneralgraphsandeitherarbitrarysetsofvertices S ofaxedsizeor evenforaxedinputset S ,thisproblemiscalledthe Steinertree problemandit isNP-complete.Ouroverlapgraphs,however,arespecial;t hesets S arecovering sets,andmostimportantly,sincethecluster C isdecomposedintoitsmaximal clusters,thenumberofchildclustersinmostapplications isnomorethanten.So, PAGE 116 104 2 2 2 2 C1 C2 C5 C4C3 2 C5 C4 C3 C6 C2 C1 C5 C1 C2 C6 C3 C4 2 2 4 2 4 2 2 Figure7{2:Constraintgraphandweightedoverlapgraphofp roblem pent plat 2 2 C1 C2 C4C3 2 C2 C5 C3 4 4 4 4 6 2 2 C1 C2 C5 C3 2 2 2 C1 C2 C5 C4C3 2 2 C2 C5 C4C3 Figure7{3:Fivespanningtreesofthecoveringsetsoftheex ample(Figure 7{2 ). forourpurposes,thisproblemistractableifweusetheorig inalformulationinthe previousparagraph,evenifweexhaustivelysearchthrough allcoveringsets S Figure 7{3 showscoveringsetsandtreesfortheexample pent plat (Figure 7{2 )wherechildclusters C 1 ;:::;C 6 formacompletesetofmaximalchildclusters oftheparentcluster C .Weareinterestedinthosethathavetheminimumpossible weight(inthiscase8).Notetherightmostcoveringsetonly hasaspanningtreeof weight10. Wecanfurtheroptimizethedegreeamongtheset V C ofpolynomialsystems for C withminimumnumberofvariables(andequations).Theset V C canbe identiedwiththesetofspanningtreesforoptimalcoverin gsets S (thatis,those thathavespanningtreesofminimumweightoverall S ).Now,followingthe examplesofSection 7.1 ,givensuchanoptimalcoveringset S andaminimum weightspanningtree T for S ,theequationsneededtoresolve C aredeterminedby (a)theclusteroverlapsbetweenpairsofclustersin S ,correspondingtonon-tree edgesclustersin S ,(b)distanceconstraintsbetweenclustersin S and(c)quadratic PAGE 117 105 trig-relationconstraintsrelatingtherotationparamete rsofeachclusterin S except thehomecluster. Thedegreesoftheseequationsaredeterminedbythechoiceo fthehome cluster H ortherootof T .Todeterminethepolynomialdegreeofequations,let C j bethedirectpredecessorofacluster C i onthepathfromtherootto C i .Then anoverlapconstraintinvolvingapointincluster C i thatisnotin C j hasdegree deg( C i )atmost deg( C i )= 8>><>>: max f 2 ; deg( C j ) g if w ij =4 ; deg( C j )+1if w ij =2 : Adistanceconstrainthas,ofcourse,twicethedegree.Thus overall,agood intuitiveheuristicistouse,asaroot,ahomecluster H thatminimizesthedepth oftherootedtree. Fortheexampletrees(Figure 7{3 )choosinganyoftheleft4coveringsets, weget8equations,butchoosingtherightmostgives10equat ions.Bychoosing dierenthomeclusterssay C 4 versus C 5 fortheleft-mosttreewegetdierent maximumdegreesfortheactivedistanceconstraint.Thebes tchoiceoverallisthe leftmosttreewithhomecluster C 5 ,whichyields3overlapconstraints(between C 2 and C 3 )ofdegree2and1distanceconstraintofdegree4. Theexampleshowsthatcomputingthedegreesoftheequation s,thatresult foragiventreeandhomecluster,requirescare.Buttheopti mizationproblemand algorithmarestraightforward: overthespanningtreesin V C andthechoicesoftheirrootsorhomeclusters H we minimizethemaximumdegreeofthesystemofequations and, intheresultingsetofrootedtrees V DC we ndthosewiththeminimumnumberofequationsofmaximumdeg ree Keepingtrackofthespanningtreesin V C and V DC canbeachievedin polynomialtimeusingthedatastructures[ 54 ].However,inpractice,thebig PAGE 118 106 Ocomplexityforcreationandmaintenanceofthesedatastru ctureshideslarge constants.Thusforthesmallsizesofclustersandoverlapg raphsthatare typicalinmostapplications,anexhaustivealgorithm,alb eitofexponentialtime complexityworksbetter.7.2.1ReductionofAlgebraicComplexitythroughOptimizat ion Theformaldecreaseinthe numberofvariablesandequations obtained throughtheoptimizationiseasytoquantify.Withoutoptim ization,tosolvea wellconstrainedcluster C using k childclustersthatformaminimalcoveringset, wewouldneed6( k 1)variables,independentofthenumberofnonemptyoverlap s betweenclusters.Usingouroptimizationmethod,wewouldt ypicallyneedtwo fewervariablesforeachpointoverlapandfourfewerforeac hpairoverlap.Let k 1 bethenumberofpairoverlapedges,and k 2 thenumberofpointoverlapedgesina minimumweightspanningtree T oftheoverlapgraphofthechildclusters.Then weneedatmost2 k 1 +4 k 2 +6( k 1 k 1 k 2 )variables.If k 1 + k 2 = k 1,we reducethenumberofvariablesbyafactorlinearin k ,thenumberofchildclusters. The totaldegree ofallthedistanceequationsintheunoptimizedsystemis6. Letusassumetherootintheminimumspanningtree T thatmaintainsadistance ofatmost2(resp.1)toeachclusterinvolvedinadistanceco nstraint.Then,inthe optimizedsystem,thelargestdegreeofadistanceequation isatmost4(resp.2). 7.2.2RemovingAssumptionsMadeinSection 1.2 WeturntotwoassumptionsmadeinSection 1.2 .Therstistoensurethat thesystemofequationsconstructedbytheabovealgorithmi sstable[ 13 ].Inthe leftmosttree(Figure 7{3 ),althoughthecluster C iswellconstrainedandthedof countissix,therearetwonon-treeedgesrepresentingover laps.Choosingthe overlapconstraintsbetween C 2 and C 3 wouldresultinanindependentsystem forsolving C ,butchoosingtheoverlapbetween C 1 and C 4 wouldresultinthree dependentconstraints.Thisproblemisaddressedindepend entlyandsolvedby PAGE 119 107 Sitharametal.[ 13 ].Here,wedonotimposethisconstraintofstabilityintoou r optimizationproblem,sincethefeasibleregionforouropt imizationproblem correspondstochoosingordescribinganindependentset{a ndthisisnontrivial. Wesimplyassumethatanychoiceoftheappropriatenumberof overlapconstraints andotherconstraintsisavalidchoice. Thesecondassumptionmadein 1.2 isthattherearenoclusters(among thechildclustersof C )whoseclusterhooddependsonotherclusters.Infact,in ordertoobtaintractable,approximatecharacterizations ofcombinatorialrigidity [ 12 ],suchdependentclustersarenecessary.Inouroptimizati onproblem,these dependentclustershavetostaywiththeirpartnercluster, aectingthesetofvalid choicesforcoveringsets S .However,whileoutsidethescopeofthissection,there isarelativelystraightforwardextensionoftheaboveopti mizationalgorithmthat wouldremovebothoftheseassumptions. 7.3SolutionstoanOptimizedSystemofClusterConstraints Wenowsolveseveralgeometricinstancesoftheproblem hex tet from Section 7.1 andaninstanceof pent plat fromSection 7.2 Tobeabletobetterjudgetheoutputofourcalculations,wes electsymmetric setupfor hex tet :thethreeclusters C 1 C 2 and C 3 areinitializedwithidentical localvertexcoordinates c ij c i; 1 :=[ 1 1 1 ] ; c i; 2 :=[ 1 11 ] ; c i; 3 :=[ 1 1 1 ] ; c i; 4 :=[ 11 1 ] ;i =1 ; 2 ; 3 : Theverticesarethoseofaregulartetrahedronand c ij isthe j thvertexofcluster i .Theincidenceanddistanceconstraintsthatforcethetetr ahedraintoaspecic spatialarrangementare c i; 2 = c i +1 ; 1 ; and k c i; 3 c i +1 ; 4 k 2 = 2 i ; PAGE 120 108 -1 0 1 2 3 -2 -1 0 1 2 -1 -0.5 0 0.5 1 C4 d3 d2 d1 d1 d3 d2 C4 C3 C2 C1 Figure7{4:Uniquesolutiontoproblem hex tet Figure7{5:Diagramaticviewofthefoursolutionstoproble m( ii ). where i +1=1for i =3.Theunderlyinggeometryisvisualized(Figure 7{4 )for one,externalchoiceof i .Weconsiderthreecases.Ineachcase,itwasnecessaryto usetheoptimizedformulationofthesystemdescribedinSec tion 7.1 tobeableto solveitwithanumericalsolver[ 49 ]. Themaximalvaluefor 2 1 = 2 2 = 2 3 thatstillallowsforarealsolutionis 2 :=22+4 p 2 p 3.Thenthereisexactlyonesolution(Figure 7{4 ).Wejuxtapose thespatialviewwithamoreabstract,diagramaticviewofth esolution.Ingeneral, thespatialviewdoesnotyieldagoodvisualizationsinceth eclustersintersectand blocktheview.Especiallywhenpresentingsolutions,show ingjustthehomecluster andtheactivedistanceconstraintsoftenrevealstheunder lyingsymmetries. For 2 1 = 2 2 = 2 3 = (nosquare),weobtainfoursolutionswithevident symmetries(Figure 7{5 ). PAGE 121 109 Figure7{6:Diagramaticviewofthetensolutionstoproblem ( iii ). Finally,byalteringtheedgelengthsofonecluster,weobta intensolutions (Fgure 7{6 ). Toobtainaversionof pent plat ,whereweknowatleastonesolution (namelytheinitialpositionofallvertices),wedenetenv erticesas p i :=[ cos( i ) sin( i ) e i ] ; where :=2 = 10and e i := 8>><>>: 1if i isodd ; 0if i iseven : i =0 ; 1 ;:::; 9 : Weinitializetheclustersas C 1 :=[ p 0 ; p 1 ; p 2 ; p 3 ] ;C 2 :=[ p 2 ; p 3 ; p 4 ; p 5 ] ;C 3 :=[ p 5 ; p 6 ; p 7 ; p 8 ] ; C 4 :=[ p 7 ; p 8 ; p 9 ; p 0 ] ;C 5 :=[ p 9 ; p 0 ; p 1 ] : Thealgorithmselectstheleftmostminimumspanningtree(F igure 7{3 ),with C 5 asthehomecluster.Thatis,theminimumspanningtreehastw olevels: C 5 f C 1 ;C 2 gf C 4 ;C 3 g ,thatis C 2 isachildof C 1 and C 1 isachildof C 5 and C 3 isa childof C 4 and C 4 isachildof C 5 Thenon-treeedgesbetween C 2 and C 3 ,asmentionedearlier,representa stableorindependentset[ 13 ]ofactiveoverlapanddistanceconstraintsforthe cluster,thatforcetheremainingtetrahedralchildcluste rsclusters C 1 ;C 2 ;C 3 ;C 4 intospecicspatialarrangements: c 2 ; 4 = c 3 ; 1 (threeconstraints)and k c 2 ; 3 c 3 ; 2 k 2 = : PAGE 122 110 -1 -0.5 0 0.5 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -0.2 0 0.2 0.4 0.6 0.8 1 1.2 C5 C1 C2 C3 C4 del -0.5 0 0.5 1 -1 -0.5 0 0.5 1 1.5 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 -1 0 1 2 -1 -0.5 0 0.5 1 1.5 2 -1 -0.5 0 0.5 1 1.5 2 Figure7{7:Threeoftheeightsolutionstothe pent plat problem( iv ). iv. For =1 : 381966011 ::: ,thesquareofthelengthoftheedgeofaregularunit pentagon,thereareeightsolutions,includingtheinitial ization(Figures 7{7 7{8 ). Beyondtheobviouspracticalusefulness,theoptimization methodpresented heresuggeststhattheminimumspanningtreeoftheclustero verlapsandthe choiceofhomecluster(cluster C 4 for hex tet andcluster C 5 for pent plat )help understandthestructureandsymmetriesofthesolutionspa ce. Figure7{8:Diagramaticviewof8solutionstothe pent plat problem( iv ). PAGE 123 111 Theoptimizationmethodadditionallysuggestsavisualiza tionofasolution pathforthesolvedclusterasasequenceofoperationsonthe childclusters.The unoptimizedcaseexplicitlyresolvesoverlapconstraints betweenclustersaspartof asimultaneoussystemthatincludesactivedistanceconstr aintsandtherebyhides thesolutionpath. Bycontrast,theoptimizedmethodusesthechosenrootedspa nningtreeof Section 7.2 todenethesequenceofsolutionoperations.Themethodrs tapplies asequenceofunevaluatedorabstractrotationstoeachnonhomechildcluster, consideredinthetreeorder,andthentranslatesittoitsov erlappointswithits ancestorcluster.Thisleavesonlythe(quaternionoraxis) rotationstosolvefor, whenenforcingthedistanceconstraintsandtheremainingi ncidenceconstraints. PAGE 124 CHAPTER8 OPTIMAL,WELL-FORMEDRECOMBINATION 8.1Introduction Largealgebraicsystemsarise,forexample,inindustrialg eometricconstraint solving.Modernsolversemploysophisticatedrecursivede compositionstosolve subsystemspiecemealandthensolve recombination systemstocombinesolutions tothesubsystemsbackintoaglobalsolution.Arecombinati onsystemconsists ofbothoriginalconstraintsthatrelategeometricobjects appearingindierent subsystemsandadditionalconstraintsthatassertinciden cesbetweencopiesof sharedobjectsthatappearindierentsubsystemsinthedec omposition.The constraintsbetweenthesharedobjectsappearinallthesha ringsubsystems formallyleadtoconsistentlyoverconstrainedordependen trecombination systems.Thustheconstraintsbetweenthesharedobjectsar etypicallysatised inslightlyperturbedforminthesharingsubsystems.Dueto thisperturbation, theconsistencyofthedependentconstraintsisnowdicult todetect;andtheir solutionwillresistsolvers,suchasexactGroebnerbasisr eduction,thatuseexact computationsandrequireexactequivalence.Ontheotherha nd,duetothe freedominscaling,evensmallperturbationscancreatecon vergenceproblemsfor numericalsolversifthetolerancesaresettootight.There combinationsystemcan typicallyonlybesolvedbygeneratingniteprecisioninte rmediatesolutionsforthe subsystems.Thesebecomethecoecientsoftherecombinati onsystem. Sincetherecombinationsystemisusuallyconsistent,buti tishardtotrack theactualsourceoftheinconsistency,weneedan algorithmtoselectasubsetof equations toformawell-formedrecombinationsystemthathasnodepen dencies, butwhoserootscouldbeasmallsupersetofthesolutions.Th eoriginalconstraints 112 PAGE 125 113 arethenusedtoeasilyeliminateextraneoussolution.Such a well-formedrecombinationalgorithm thatavoidsnumericaloralgebraictreatment,butisobtain edby usingonlythetopologicalstructureoftheconstraintgrap h,hasrecentlybeengiven bySitharam[ 28 ].HoweveritwillbeseenlaterinSection 8.2 ,theresultingsystem isnotoptimizedwithrespecttoalgebraiccomplexity. Ontheotherhand,forwell-constrainedsystems,Sitharame tal.[ 14 55 ] giveanecientgraph-basedalgorithmtondarecombinatio nsystemwhose algebraiccomplexityisoptimized.Bypartialelimination ,thisapproachreduces therecombinationsystemtoamuchsmaller,denseroneandth erebymovesthe problemintotherangeoftractability.This optimalrecombinationalgorithm determinesaneliminationorderthatminimizesrstthenum berofvariablesand thenthedegreeintherecombinationsystem.However,theal gorithmis,ohand, notguaranteedtogiveawell-formedrecombinationsystemf reeofdependencies. Inthefollowing,wecombinetheoptimalrecombinationalgo rithmgivenby Sitharametal.[ 14 55 ]withthewell-formedrecombinationalgorithmgivenby Sitharam[ 28 ].Tostateandprovethecorrectnessofthenewalgorithm,we review thesalientmachinery[ 14 28 55 ]inSection 8.2 .Section 8.3 thenmotivatesthe algorithm,showscorrectnessanddiscussestheimplicatio ns. 8.2Background:ConstraintSystemsandClusters Geometricconstraintsystemsaresuccinct,conceptualand editablerepresentations ofgeometriccomposites.Theyariseinapplicationssuchas mechanicalcomputer aideddesign,robotics,molecularmodelingandteachingge ometry.Forrecent reviewsoftheextensiveliteratureongeometricconstrain tsolving[ 2 3 4 6 ]. A geometricconstraintsystem relatesanitesetofprimitivegeometricobjects (points,lines,linesegments,conics,andsoon)byanites etofconstraintson distance,angle,incidence,tangency.Thecoordinatesoft heobjectsthenappear asvariablesofalgebraicequationsandinequalities.Note wewillfocusonlyon PAGE 126 114 C1 C2 C3 C4 C5 C6 v1 v2 v3 v4 v5 v6 v8 v9 v10 v11 v7 Figure8{1:Schematicrepresentationofa3Dgeometriccons traintsystem. distance constraintssystemswheretheonlyconstraintsarebetween points.A distanceconstraintof d betweentwopoints( x 1 ;y 1 )and( x 2 ;y 2 )in2Diswrittenas ( x 2 x 1 ) 2 +( y 2 y 1 ) 2 = d 2 ,where d istheconstraintparameter. A solutionorrealization ofageometricconstraintsystemisa real zeroof thealgebraicsystem.Eachzerorepresentsapositioningan dorientationofthe objectswithrespecttoeachothersothatincidenceanddist anceconstraints hold. Wellconstrainedsystems haveanitebutpotentiallyverylargenumber ofzero-dimensionalsolutions. Underconstrainedsystems haveinnitelymany solutionsand overconstrainedsystems havenosolutionunlesstheyare consistently overconstrained.Wellconstrainedorconsistentlyoverco nstrainedsystemsarecalled rigid Fortractability,manymoderngeometricconstraintsolver s[ 6 ]represent geometricconstraintsystemsasgraphswheretheverticesr epresentthegeometric primitivesandtheedgespresenttheconstraintsbetweenth emandemploya decomposition-recombination(DR)plan ,acombinatorialstructurethatrecursively decomposesaninputgeometricconstraintsystemintocolle ctionsofsmaller, generically rigid,naturalsubsystems,called clusters .Theclustersarerecursively decomposedandsolvedandtheirsolutionsarerecombinedto yieldarealizationof PAGE 127 115 theinputconstraintsystem.Let G beageometricdistanceconstraintgraphand D := f C 1 ;C 2 ;::: g ;C i G; acollectionofrigidclusters C i of G Standardclusterdecompositions D havemany desirablepropertiesthathelpsolvingeciency,detectin grigidity,incorporating featurehierarchies,dealingwithunder-andoverconstrai nts,solutionnavigation[ 2 ]. [standarddecomposition]Thepair( G;D )isa standarddecomposition ofa3 D geometricdistanceconstraintsystemif(i)Theclustersin D arewellconstrained(or minimallyrigid)andaremaximalproperclustersubgraphso f G .(ii)Theclusters in D formacompletecoveringsetfor G .(iii)For i 6 = j j C i T C j j 2.Here(i) impliesthatthereisnopropersubgraphof G thatisrigidandproperlycontains anyofthem;In(ii), covering setmeanstheunionoftheclustersincludesallthe verticesandedgesof G andnoclusterisentirelycontainedinanothercluster;and (iii)statesthatclustersdonotsharemorethantwovertice s(sinceotherwisein3D wecouldcombinethemintoasinglerigidclusterwithoutusi ngarecombination systemwhere G hasnoover-constraints,whenever2clustersintersectona pairof vertices,theverticesareconnectedbyanedge). Note,fortheremainderofthismanuscript,theonlyinforma tionthatwillbe neededinastandarddecomposition( G;D )is( V D ;E D ; f c i g ),where V D and E D denotethesetofverticesandedgesof G thataresharedbymorethan1clusterin D .Anyotherinformationinadistanceconstraintgraph G andtheclustersin D ishenceforthirrelevant.Hencewewillsimplyidentifythi stuplewithastandard decomposition D Asystem C (Figure 8{1 )isdecomposedintosixclusters C i .Recombining therealizations c i oftheseclusters(themselvestypicallyobtainedbyrecurs ive decompositionandrecombination)toobtainarealization c of C meanschoosing acoordinatesystem,saythatof c 1 andrepositioning c 2 c 3 c 4 c 5 c 6 inthe PAGE 128 116 C1 C2 C3 C4 C5 C6 v1 v2 v3 v4 v5 v6 v8 v9 v10 v11 v7 2 C1 C3 C2 C4 C5 C6 2 2 2 4 2 2 4 4 C1 C3 C2 C4 C6 2 2 2 Figure8{2:Overlapgraphandtheminimalspanningtreeofth eexample(Figure 8{1 ). coordinatesystemof c 1 .Dene x i;c l 2 R 3 ,thecoordinatesof v i in c l 'slocal coordinatesystem.Giventhe x i;c l ,wecomputetranslations t c i 2R 3 andthesix freeparametersofa3 3matrix M i representingthecompositionofthreerotations sothat x i;c 1 = M i x i;c i + t i : TheoptimalrecombinationalgorithmgivenbySitharam etal.[ 14 55 ]beginswithanecientrepresentationofthetransformati onsyields thefollowing:Foreachedgesharedbytwoclusters,oneequa tioninonevariable andforeachsinglevertexsharedbytwoclusters,thatisnot partofashared edge,oneequationineachofthreevariables.Thenumberofv ariablesisassigned asweightstoan overlap graph(Figure 8{2 ) O ( H )ofastandarddecomposition H =( V H ;E H ; f c j g ):thisisanundirectedgraphwhoseverticesarethecluster s c j Itsedgesrepresentpairsofclusters.8.2.1TheOptimalRecombinationAlgorithm Theoptimalrecombinationalgorithm[ 14 55 ]takesastandarddecomposition H asinputandoutputsanotherstandarddecomposition D =( V D ;E D ; f c i g )by choosinganoptimalcoveringsetofclustersandfurtherano ptimalspanningtreeof theoverlapgraph O ( D )of D thatminimizesthesumofweights.Thisreducesthe realizationproblem(Figure 8{2 )from30equationsin30variablesto8equationsin 8variables. PAGE 129 117 Theedgeweightsoftheoverlapgraph O ( D )canbealsoviewedasfollows. Thedegreesoffreedom(dof)ofrigidclustersin3Dare: dof ( v )=3foranyvertex v; dof ( e )=5foranyedge e; dof ( C i )=6foranycluster C i unless C i isavertexoranedge. Sinceapairofverticesthathaveanedgebetweenthemcanbem ovedfreelybut havetoobeythedistanceconstraintdenedbytheedge,they have5degrees offreedomofpositionandorientation.Eachsingletonvert exhas3degreesof freedom.Theexample(Figure 8{1 )has30independentvariables.Duetothe shareddegreesoffreedomofsharededgesandsharedvertice sinastandard decomposition D ,anedgeofweight k intheoverlapgraphistheresultofapplying 6 k (singlecoordinate)incidenceconstraints. 8.2.2TheWellformedRecombinationAlgorithm The adjusted degreesoffreedom(adof)andthe removed degreesoffreedom (rdof)ofanysubset T ofclustersinastandarddecomposition D ofaconstraint graph G are adof( G;D;T ):= X Q T; j Q j 1 ( 1) j Q j 1 dof ( \ C 2 Q C ) =: X C 2 Q dof ( C ) rdof( G;D;T ) : ThekeyproblemaddressedbySitharam[ 28 ]isthatpickingawell-formed recombinationsysteminwhichthenumberofconstraintsmat chesthenumberof variablesmaycontainredundantconstraintsandleaveoute ssentialconstraints.If thesolutionsoftherecombinationsystemcontainalltheso lutionsoftheoriginal system,thenwecallit well-formed PAGE 130 118 Intheexample(Figure 8{1 ),wehaveonedistanceconstraintbetweenclusters c 4 and c 6 andneedtoselect29incidenceconstraintsforrecombinati on.Figure 8{3 bottom ,showstwowell-formedrecombinationsystems.Butthesele ction(Figure 8{3 )hasdependentincidenceconstraintsandishencenotwellformed C3 C4 C5 C6 v1 v2 v3 v4 v5 v6 v8 v9 v10 v11 v7 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2:y,z 2:x,y 3 2 3 2 2:x,z 1 C1 C2 Figure8{3:Choosingwell-formedincidencesforthesystem (Figure 8{1 )is nontrivial. Forasubsetofclusters T D I ( D ; T )isthesetofincidences( v;c i ;c j ;l )in I ( D )forwhich c i ;c j 2 T .Acycle ( v;c i 1 ;c i 2 ;l ) ;:::; ( v;c i k 1 ;c i k ;l ) ; ( v;c i k ;c i 1 ;l ) in I ( D )with k 3iscalled localcycle [well-formedsetofincidences]Asetofincidences I ( D )ofastandard decomposition D ofaconstraintgraphis well-formed ifit(a)hasnolocalcycle; (b)forany T D I ( D ; T ) rdof ( D;T );(c) I ( D )= rdof ( D;D ). FormalProblemStatement: Let D :=( V D ;E D ; f c i g )bethestandard decompositionoutputbytheoptimalrecombinationalgorit hm.Giveanecient PAGE 131 119 algorithmforndingawell-formedrecombinationsystem S ( D )thatisoptimal. Thatis,thealgorithmshouldminimizethenumberofequatio nsin S ( D )and, amongtheminimizers,minimizethedegreeofthepolynomial sintheconstraint equations. Wenowdescribetheunderlyingstructureofthewell-formed systemof incidencesthatispickedbythewell-formedrecombination algorithm.Thisis importanttounderstandourcontribution.8.2.3SeamGraphs v91 c1 c2 c3 c4 c6 v11 v21 v23 v13 v12 v22 v43 v33 v34 v44 v86 v96 v81 v91 v11 v21 v23 v13 v12 v22 v43 v33 v34 v44 v86 v96 v81 Figure8{4:Seamgraph(Figure 8{2 )anditsseamtree. A seamgraph G D ofthestandarddecomposition D =( V D ;E D ; f c i g )ofa3D constraintgraphisanundirectedgraph. 2 3 2 3 2 3 3 2 Figure8{5:Wellformedsetofincidencesobtainedfromthes eamtree(Figure 8{4 ). PAGE 132 120 Foreach v 2 V D S v isthesetof c i thatcontain v .Theseamgraph G D contains j S v j copiesofeachvertex v 2 D :foreachcluster c i in S v ,wecreateacopy v i ofthevertex v .Suchasetofverticesisdenoted V v Theset mathcalE of G D consistsoftwotypesofedges.Therstistheset PE of pointseam edgesthatconnecteverypairofvertices( u;w )intheset V v (forming acompletegraph)foreach v Foreach v 2 V D S v isthesetof c i thatcontain v .Thesecondistheset LE of lineseam edgeswhichconsistsof j S e j copiesofeveryedge e 2 E D .Thatis,foreach edge( u;w )in E D ,andeachcluster c i in S e thatshares e in G ,wecreateacopy ( u i ;w i )oftheedge( u;w ).Thesesetsofedgesaredenoted E e .Finally: V := [ v 2 V D V v ; PE := [ v 2 V D PE v = f ( u;w ): u;w 2V v g ; LE := [ e 2 E D E e ; E := PE [ LE ; G D :=( V ; E ) A seampath isdenedbetweenorconnectingapairofvertices u;w that belonginthesameset V v forsomevertex v oftheseamgraph G D .Wedenotea pathasasequenceofconsecutivelyincidentedges.Thepath assignseachofits edgesadirection.Aseampathbetween u and w u 6 = w ,isasimplepaththatis theconcatenationofsimplepathsegments h 0 ;g 1 ;:::;h 2 m ;g 2 m +1 ;:::;h 4 m ,where u and w aretherstandlastverticesoftherstandlastedgeonthep ath;and wherethe h 2 j 'scouldbeemptyandconsistonlyofpointseamedges(hencea ll edgesineach h 2 j necessarilyareinthesameset PE v forsome v ).Each g 2 j +1 isa singleedgein LE andhasauniquepartneredge g 2 l +1 suchthatbothedgesbelong PAGE 133 121 c3 c4 c5 c6 v11 v21 v23 v13 v12 v22 v43 v33 v34 v44 v54 v55 v65 v62 v75 v76 v86 v96 v81 v91 v13 c2 c1 v11 v34 v44 v54 v55 v65 v62 v75 v76 v86 v96 v81 v91 v11 v21 v13 v12 v22 v11 v21 v22 h0g1 g3 h2 h4 v12 v33 v21 v23 v13 v12 v22 v43 v33 v34 v44 v54 v55 v65 v62 v75 v76 v86 v96 v81 v91 v11 v21 v23 v13 v12 v22 v43 Figure8{6:Seamgraph,seamtreesandseamcycle. tothesameset E e forsome e =( x;y ) 2 E D .Whenassociatedwiththeclusters c i and c k in S e ,theyappeardirectedas( x i ;yi )and( y k ;x k )alongthepath.A seam cycle isaclosedseampath,thatis,aseampathbetween u and w ,where u = w Seamsubgraphs areedgeinduced,spanningsubgraphsthatis,theyincludea ll vertices,andarelineinclusive,thatis,theyincludeallo fthelineseamedgesin LE .A seamforest isaseamsubgraphthatdoesnotcontainanyseamcycles.A seamsubgraphis seamconnected ifitcontainsaseampathbetweeneverypairof verticesthatbelongtothesameset V v ,forevery v 2 V D .A seamtree isaseam forestthatisseamconnected(Figure 8{6 ). ThefollowingkeyresultfromSitharam[ 28 ](a)showsthatseamtrees andlocal-cycle-avoidingmaximalcompletionsofthemresu ltinwell-formed recombinationsystemsand(b)givesecientgreedyalgorit hmsexisttondthem. WewillusetheseresultsinSection 8.3 Theorem8.2.1 Let G D betheseamgraphofastandarddecomposition D .Take aseamforest F of G D andlet T beamaximalextensionorcompletionof F that PAGE 134 122 C1 C2 C3 C4 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12 v13 v41 v42 v101 v104 v114 v113 v103 v102 v41 v42 v102 v101 v104 v103 v114 v113 C1 C2 C3 C4 1 3 3 3 3 1 C1 C2 C3 C4 3 3 1 C1 C2 C3 C4 1 3 1 Figure8{7:Wellformedincidencesmaynotbeoptimized. avoidslocalincidencecycles.Constructthesetofinciden ces I asfollows.For eachpointseamedge ( v i ;v j ) in T ,putthepartialincidences ( v; f c i ;c j g ; 1) and ( v; f c i ;c j g ; 2) in I .Foreachpointseamedge ( v i ;v j ) in F putcompleteincidences in I byaddingontheincidence ( v; f c i ;c j g ; 3) .If F isaseamtree, I iswellformed;If F isaseamforestand T isnotnecessarilyamaximalextension, I satisestherst2propertiesofwell-formedincidences.T hereisagreedyalgorithm tocompleteanyseamforest F intoaseamtree T containing F intimeatmost O ( j G D j ) = O ( j V D + E D jj D j ) ,andastraightforwardalgorithmtocompleteany local-cycle-avoidingextension F of T intoamaximalsuchextension T intimeat most O ( j V D jj D j ) Infact,notallwellformedsetsofincidencesareoptimized w.r.t. algebraic complexity.Wewillshowlaterthatanyspanningtreeofasta ndarddecomposition hasitscorrespondingseamtree.Onlythewellformedincide ncesofthecorresponding seamtreeoftheminimumspanningtreeisoptimized.Thecorr esponding wellformedincidencesofthemiddleseamtree(Figure 8{7 )isunoptimizedbecause accordingtothereversecorrespondingspanningtree,itne eds7equationstosolve thesystem.Theequationsethas7variables,1rotationangl evariablebetween C 3 and C 4 ,3rotationanglevariablesbetween C 1 and C 4 ,3rotationanglevariables PAGE 135 123 between C 2 and C 3 .Thereversecorrespondingspanningtreeoftherightseamt ree needsonly5variables(1rotationanglevariablebetween C 1 and C 2 ,3rotation anglevariablesbetween C 1 and C 4 ,1rotationanglevariablebetween C 4 and C 3 ). 8.3TheNewHybridAlgorithm Theoptimalrecombinationalgorithmchoosesacoveringset andthusa standarddecomposition D =( V D ;E D ; f c i g )andndstheminimumspanningtree ST oftheoverlapgraphof D whichisusedtoconducttheoptimalrecombination system.Wenowproposeamethodtoreadotheincidencessyst emfromthis optimalrecombinationsystem-wewilllatershowthatthiss etofincidencescanbe greedilyextendedintoawell-formedrecombinationsystem Let D bethestandarddecompositionand ST bethespanningtreeofthe overlapgraph O ( D )outputbytheoptimalrecombinationalgorithm[ 14 55 ]. Proposedsystemofincidences J ( ST ) correspondingtothespanningtree(ST) outputbyoptimalrecombinationalgorithm. Theedgewithweight3thatconnectsclusters c i and c j in ST (thatis,when c i and c j overlapononevertex v ),yieldsthecompleteincidences( v; f c i ;c j g ; 1), ( v; f c i ;c j g ; 2),( v; f c i ;c j g ; 3).Theedgewithweight1thatconnectsclusters c i and c j in ST (thatis,when c i and c j overlapononeedge( u;v )),yields5incidences: thepartialincidencesof u ( u; f c i ;c j g ; 1),( u; f c i ;c j g ; 2)andthecompleteincidences of v ( v; f c i ;c j g ; 1),( v; f c i ;c j g ; 2),( v; f c i ;c j g ; 3). Wecallthissystemofincidences J ( ST ).Weproceedtoshowthatthissystem J ( ST )is partialwell-formedsystem .Thatis,itcanbeextendedtoawell-formed systemofincidencesforrecombinationof D .Wedothisin2steps.Theorem 8.3.2 showsthat J ( ST )satisesproperties(a)and(b)ofthewell-formedset ofincidences.Theseareexactlythepropertiesthatpermit extensibilityintoa wellformedsystem.Theorem 8.3.3 furthergivesasimplegreedyalgorithmto PAGE 136 124 extend J ( ST )intoacompletewell-formedsystem.Boththeoremstechnic allyusea crucialtechnicallemma. Tostatethelemma,weneedtorstcarefullydescribeacorre spondence betweentheedgesofaspanningtreeofanoverlapgraphofast andarddecomposition andtheedgesoftheseamgraphofthesamestandarddecomposi tion. Let D bethestandarddecomposition, G D betheseamgraphof D ST be thespanningtreeoftheoverlapgraph O ( D )of D .Theproposedcompleteand partialincidencesdenethecorrespondencefromtheedges of ST intotwosets ( V ( ST ) ;U ( ST )respectively)ofpointseamedgesintheseamgraph G D Overlapgraph-seamgraphedgecorrespondence:Thecorrespondenceofedgesof ST into G D :theedgewithweight3that connectsclusters c i and c j in ST ismappedin G D tothepointseamedge( v i ;v j ) 2 V ( ST ).theedgewithweight1thatconnectsclusters c i and c j in ST ismapped in G D tothepointseamedge( u i ;u j ) 2 U ( ST )andthepointseamedge( v i ;v j ) 2 V ( ST ).(Thatis,where c i and c j overlaponanedge( u;v ).) Thereversecorrespondencesofedgesof G D in ST :condenseallthevertices of G D thatbelongtoasingleclusterinto1vertex.Thiscondensat ionmaymap 2pointseamedges( u ki ;u kj )and( v ki ;v kj )(attheendsofthelineseamedgepair ( u ki ;v ki )and( u kj ;v kj ))of G D intooneedge( c i ;c j )in ST .Thepointseamedge ( v ki ;v kj ),thatisnotassociatedwithanylineseamedgepair,ismapp edintothe edge( c i ;c j )intheoverlapgraphof D Theedge e 2 (Figure 8{8 )inthespanningtreeismappedtothepointseam edge e 2 intheseamgraph.Theedge e 1 inthespanningtreeismappedtothe lineseamedges e 11 and e 16 andpointseamedges e v 8 and e v 9 ( e v 8 2 V ( ST ), e v 9 2 U ( ST )or e v 9 2 V ( ST ), e v 8 2 U ( ST )).Andforthereversecorrespondences, thevertices v 11 ;v 21 ;v 81 ;v 91 ofcluster c 1 intheseamgraphiscondensedintoone vertex C 1 intheoverlapgraph.thevertices v 76 ;v 86 ;v 96 ofcluster c 6 arecondensed PAGE 137 125 C1 C2 C3 C4 C5 C6 v1 v2 v3 v4 v5 v6 v8 v9 v10 v11 v7 C1 C3 C2 C4 C6 1 1 1 1 C5 3 c1 c2 c3 c4 c5 c6 v11 v21 v23 v13 v12 v22 v43 v33 v34 v44 v54 v55 v65 v62 v75 v76 v86 v96 v81 v91 e2 e2 ev9 ev8 e1 e16 e11 Figure8{8:Spanningtreeofitsweightedoverlapgraphandt heseamgraph. intoonevertex C 6 intheoverlapgraph.Thereversecorrespondenceofthetwo pointseamedges e v 8 and e v 9 resultsin e 1 intheoverlapgraph.Thevertices v 12 ;v 22 ;v 62 ofcluster c 2 arecondensedintoonevertex C 2 intheoverlapgraph.The vertices v 55 ;v 65 ;v 75 ofcluster c 5 arecondensedintoonevertex C 5 intheoverlap graph.Thereversecorrespondenceofthepointseamedge e 2 resultsin e 2 inthe overlapgraph.Lemma8.3.1 Forastandarddecomposition D ,theseamedgesin G ( D ) that correspondtotheedgesofinthespanningtree ST oftheoverlapgraph O ( D ) of D satisfy:1)Theset V ( ST ) ofseamedgesthatcorrespondtotheproposedcomplete incidencesfrom J ( ST ) formsaseamforest F ( ST ) inseamgraph G D 2)Theunionof V ( ST ) andtheset U ( ST ) ofseamedgesthatcorrespondto theproposedpartialincidencesfrom J ( ST ) avoidslocalincidencecycles 3)Foranycompletionof F ( ST ) intoaseamtree T F ( ST )= T [ U ( ST ) isa local-cycle-avoidingextensionof T Proof Forthetreeedgewithweight1in ST thatrepresentstwoclusters c i and c j overlappingontheedge( u k ;v k ),itscorrespondingedgesin G D arepoint seamedgesallocatedwith2lineseamedges( u ki ;v ki )and( u kj ;v kj ):oneofthese seamedgesis( u ki ;u kj )thatresultsinapartialincidenceandtheotherpointseam PAGE 138 126 edge( v ki ;v kj )thatresultsinacompleteincidence.Forthetreeedgewith weight 3in ST thatrepresentstwoclusters c i and c j overlappingonthevertex v k ,its correspondencesin G D isonepointseamedge( v ki ;v kj )thatresultsinacomplete incidence. Weshow V ( ST )formsaseamforest,thatis,itavoidsseamcycles.Ifthere isaseamcycle,let( v ki ;v kj )beapointseamedgeinthatseamcycle.Then thereexistsaseampathwith v ki and v kj astheendpointsthatdoesnotinvolve ( v ki ;v kj ).Fromthedenitionofreversecorrespondencefromthesea mgraph totheoverlapgraph,thereisacorrespondingpathbetweent hevertices c i and c j in ST thatdoesnotinvolvetheedgeconnecting c i and c j .Andthereverse correspondenceof( v ki ;v kj )isanedgethatconnects c i and c j in ST .Thenthereis acyclein ST contradictingitstreeproperty. Wealsoshowthatnosubsetof U ( ST ) [ V ( ST )formsalocalincidencecycle. Ifasubset f ( v k 1 ;v k 2 ) ; ( v k 2 ;v k 3 ) ;::: ( v km ;v k 1 ) g formsalocalincidencecyclein G D thereversecorrespondences( c 1 ;c 2 ) ; ( c 2 ;c 3 ) ::: and( c m ;c 1 )formacyclein ST contradictingthetreepropertyofthespanningtree. FromItem(1)ofthisTheoremandTheorem 8.2.1 ,wecanextend F ( ST ) greedilytoaseamtree T .Anyextensionof T with U ( ST )avoidslocalincidence cycles:Iftherewerealocalincidencecycle C ,thenreplacing( u ki ;u kj )inthecycle withtheuniquelength3seampathconnectingitsendpointsi n T ,whichconsists of2lineseamedges( u ki ;v ki )and( u kj ;v kj )and1pointseamedge( v ki ;v kj ) 2 V ( ST ),wouldgiveaseamcycletogetherwiththeedges C n ( u ki ;u kj ).This contractstheseamtreepropertyof T Theorem8.3.2 Giventhestandarddecomposition D andtheminimumspanning tree ST oftheoverlapgraphof D outputbyoptimalrecombinationalgorithm [ 14 55 ],theproposedsystemofincidences J ( ST ) satisestherst2propertiesof well-formedsystemofincidencesforrecombining D PAGE 139 127 Proof FromLemma 8.3.1 ,wegetasetofedgessuchthatthecorresponding incidences(asinTheorem 8.2.1 )giveapartialwell-formedsystemofincidences satisfyingtherst2propertiesofthewell-formedsystemo fincidences. Theorem8.3.3 Givenastandarddecomposition D ,thereisagreedyalgorithmfor ndinganoptimizedwell-formedsetofincidences. Proof Thealgorithmis:1.Determinetheoptimalspanningtreebyt he optimalrecombinationalgorithm.2.Let F ( ST )betheseamforestformedby thesetofpointseamedgesthatcorrespondtotheproposedco mpleteincidences from J ( ST ).Keepaddingpointseamedgeto F ( ST )thatdoesnotbelongin thetransitiveclosure(oftheseampaths)from F ( ST )untilnomoreedgescanbe added.Thisgivesseamtree T .3.Let U ( ST )bethesetofpointseamedgesthat correspondtotheproposedpartialincidencesfrom J ( ST ).Extend T [ U ( ST ) greedilytoamaximallocal-cycle-avoidingseamgraph F ( ST )byaddingtheedges fromeachcompletegraph PE v ofthepointseamedgesassociatedwithavertex v of V D .4.Foreach v andeachpointseamedge( v i ;v j ) 2P v T F ( ST ),addto I ( D )thetwoincidenceconstraints( v; f c i ;c j g ; 1)and( v; f c i ;c j g ; 2).5.Foreach v andeachpointseamedge( v i ;v j ) 2P v T F ( ST ),addto I ( D )oneincidence ( v; f c i ;c j g ; 3). Theoptimalrecombinationalgorithmoutputsaminimumspan ningtree ST whichoptimizesthealgebraiccomplexity.UsingTheorem 8.3.2 ,weknow thatthecorrespondingsystemofincidences J ( ST )satisestherst2properties ofwell-formedsystemofincidencesafterstep1ofthealgor ithm.Frompart3 ofLemma 8.3.1 ,weknowthatanygreedyextensionof J ( ST )bycompleting incidencestoform T S U ( ST )afterstep3ofthealgorithmislocal-cycle-avoiding andhencecanbeextendedtoamaximallocal-cycle-avoiding systemwhichby Theorem 8.2.1 givesawell-formedrecombinationsystem I ( D ). PAGE 140 128 8.4Conclusion Thischaptercombinestheoptimalrecombinationalgorithm [ 14 55 ]and thewellformedrecombinationalgorithm[ 28 ]togiveanoptimalwell-formed recombinationsystemforastandarddecomposition. PAGE 141 CHAPTER9 ENUMERATIONOFPATHWAYSFORMACROMOLECULAR Weconsidertheproblemofexplicitlyenumeratingandcount ingtheassembly pathwaysbywhichanicosahedralviralshellformsfromiden ticalconstituent proteinmonomers.Thispoorlyunderstoodassemblyprocess isaremarkable exampleofsymmetricmacromolecularself-assemblyoccuri nginnatureand possessesmanyfeaturesthataredesirablewhileengineeri ngself-assemblyatthe nanoscale. SitharamandMckenna[ 25 29 ]givethenewmodelofthatemploysastatic geometricconstraintgraphtorepresentthedriving(weak) forcesthatcauseaviral shelltoassembleandholdittogether.Themodelwasdevelop edtoanswerfocused questionsaboutthestructuralpropertiesofthemostproba bletypesofsuccessful assemblypathways.Specically,themodelreducesthestud yofpathwaytypes andtheirprobabilitiestothestudyoftheorbitsoftheauto morphismgroupofthe underlyinggeometricconstraintgraph,actingonthesetof pathways.Theauthors givearandomizedalgorithmtocomputeonemeasureofthepro babilityofthese pathwaysbyfaithfullysamplingthem. Inthischapter,wegivetheimplementationofthealgorithm andprospectto incorporateanotherprobabilitymeasure,thatwillbeobta inedcombinatorially byextendingHendricksonsTheorem[ 30 ]onrigiditycircuitsanduniquegraph realizationintothisalgorithm.Thisinvolvesboththethe oryofgeometric constraintssystemandimplementationofthenewalgorithm 9.1Introduction Icosahedralviralshellassemblyisanoutstandingexample ofnanoscale, macromolecularself-assemblyoccuringinnature[ 56 ].Mostlyidentical coatprotein 129 PAGE 142 130 monomersassemblewithhighrateofecacyintoaclosedicos ahedral capsid or shell ;onsetandterminationarespontaneous,andassemblyisrob ust,rapidand economical.Alloftheserequirementsarebothdesirablean ddiculttoachieve whenengineeringmacromolecularself-assembly. Howevertheviralassemblyprocess-justlikeanyotherspon taneous macromolecularassemblyprocesssuchasmolecularcrystal formation-ispoorly understood.Answeringquestionsaboutviralassemblypath wayscanhelpbothto encouragemacromolecularassembliesforengineering,bio sensorandgenetherapy applications,butandalsodiscourageassemblyforarresti ngthespreadofviral infection. Weusetheviralassemblypathwaymodel[ 25 29 ]thatemploysstatic geometricconstraintstorepresentthedriving(weak)forc esthatcauseaviral shelltoassembleandholdittogether.Themodelavoidsdyna micsandasaresult isbothtractableandtunable.Preliminarypredictionsoft hismodelconsistently explainexistingexperimentalobservationsaboutviralsh ellassembly.Thismodel wasdevelopedtoanswerfocusedquestionsaboutthestructu ralpropertiesof themostprobabletypesofsuccessfulassembly pathways ,whichareessentially directedacyclicgraphs(dags)representingvalidconstru ctions(ordecompositions) ofthevirus.Thenodesofthesedagsarebiochemically stable subassembliesof thecompleteassembly,partiallyorderedbycontainment.S pecically,themodel reducesthestudyofpathwaytypesandtheirprobabilitiest othestudyofthe orbitsoftheautomorphismgroupoftheunderlyinggeometri cconstraintgraph, actingonthesetofpathways.SitharamandMckenna[ 25 29 ]ecientrandomized algorithmsaregiventhatsamplethepathwaysettoprovidea pproximateanswers tothesequestions. Sincetheunderlyinggraphsarehighlysymmetricpolyhedra lgraphs,itseems aviableapproachtoinsteadexplicitlyenumeratethese(pe rhapssimplied)orbits PAGE 143 131 andcounttheirsizes.Theexpectationisthatahybridofthe twoapproaches canbedevelopedwhichleveragestheseadvantageswhileinc orporatingthefull generalityofthemodel[ 25 29 ]. Whilethereisawelldevelopedstructuretheoryof complete viralshells [ 57 58 ],veriedbyX-raycrystallographyandotherexperimental data,the processes ofviralshellassemblyarepoorlyunderstood.Fromanexper imental pointofview,thislackofunderstandingisduetotheextrem espeedofthe assemblysothatwet-labsnapshotsofintermediatesub-ass embliesaregenerally unsuccessful. Fromamodelingpointofview,thislackofunderstandingisd uetothe factthatpriortotherecentmodel[ 25 29 ],previouscomputationalmodels [ 59 60 61 62 63 64 65 66 67 ]generallyinvolvedynamicsof(simpliedversions) ofvirusassembly(furtherdescriptionoftheseapproaches andcomparisonwiththe approach[ 25 29 ],isgivenbySitharamandMckenna[ 25 ]).Dynamicswereused previouslyevenwhentheassemblymodelsonlysoughttoeluc idatethestructureof successfulpathways. Modelswhoseoutputparametersaredenedonlyastheendres ultofa dynamicalprocessarecomputationallycostly,oftenrequi ringoversimplicationsto ensuretractability.Inaddition,suchmodelsarealsonote asilytunableorrenable sincetheirinput-to-outputfunctionisgenerallynotanal yzableandthereforedonot provideasatisfactoryconceptualexplanationofthepheno menonbeingmodeled. Bycarefullydeningtheprobabilityspace,usingthesucce ssfulassemblyas agiven,thestaticmodel[ 25 29 ]givesamethodtoapproximatelycomputethe probabilitiesofsuccessfulpathwaytrees/dagseciently Themodels inputparameters are:informationextractedfrom(a)the geometricstructureofthecoatproteinmonomerthatformst heviralshell, includingallrelevant(rigid)conformations,Figure 9{1 ;(b)thegeometricand PAGE 144 132 c f b a e p p t d t d Figure9{1:Examplemonomerprimitivesandconstraints. weak-forceinteractions-betweenpairsofmonomers-thatd riveassembly.and(c) (optional)theinter-monomercontactorneighborhoodstru ctureofthecomplete viralshell,Figure 9{1 Theoutputinformationsoughtfromthemodel:rst,theprob abilitythat aspecic type ofsuccessfulassemblypathwayincorporatesaspecic type of subassembly,leadstothecompleteviralshellwithbounded construction eort ;in short,aprobabilitydistributionoversuccessful,bounde deortassemblypathways thatincorporatecertainsubstructures;thishasastraigh tforwardgeneralization[ 25 ] toadistributionoverallpossibleassemblypathways(notn ecessarilysuccessful) withinaneortbound.Themodelsatisesthefollowingrequ irements. Thedescriptionofthemodel-thatistheinput-to-outputfu nction-isstatic, thatisdoesnotrelyondynamicsoftheassemblyprocess.Thi sisachievedusing thestateofthearttheoryof3Dgeometricconstraintdecomp osition[ 2 11 ]andis essentialforforwardanalyzability. Theassumptionsofthemodelaremathematicallyandbiochem ically justiable.Thesejusticationsandrigorouscomparisons ofthemodelwith existingmodelsofviralshellassemblyaregivenbySithara mandMckenna[ 25 ]. PAGE 145 133 Figure9{2:ThesimulatedassemblyofaT=1viralshell. Themodeliscomputationallytractable,thatis thereisanecientrandomizedalgorithmforcomputing(aprovablygoodapproximatio nof)thepathway probabilitydistribution. Therequiredalgorithmsarecrucialmodicationsof state-of-theart3dgeometricconstraintdecompositional gorithms[ 2 11 ].Asa result,simulationsoftwareforthemodelisbuiltdirectly uponexistingopensource softwarefor3Dgeometricconstraintsolving[ 15 ](Figure 9{2 ). Tractablecomputationalsimulationbasedonprovablyaccu ratealgorithms isessentialforbackwardanalyzabilitywhichisneededfor tworeasons:rst, foriterativelyreningthemodelsothatitsoutputmatches knownbiochemical informationorexperimentalresults;andsecond,forengin eeringadesiredoutput, forexampleengineeringthemonomerstructuretopreventor encouragecertain subassemblies,inordertoforcecertainpathwaystobecome morelikelythan others,ortopreventsuccessfulassembly. Preliminarysimulationresults[ 25 ](Figure 9{2 )showthat,inprinciple,the model'spredictionsarequalitativelyconsistentwithkno wnstudiesofviruses.More conclusivebiochemicalvalidationusing3carefullychose n,ssDNAT=1virusesisin process[ 25 ]. PAGE 146 134 9.2ObtainingPathwayProbabilitiesbyCombinatorialEnum eration Inthissection,werstgivesimplieddenitionsof(icosa hedral)viralshell graphs,validpathwaysandpathwayisomorphismtypes.Fort hesedenitions, itisviabletoapproachthecorequestionofestimatingspec icpathwaytype probabilitiesusingexplicitcombinatorialenumerationa ndcountingofspecic typesofconstructions(ordecompositions)ofsymmetricpo lyhedralgraphs. Theseprobabilitiesareestimatedformoregeneraldeniti onsofpathwaysand moregeneralviralshell(geometricconstraint)graphstha tareusedinthemodel [ 25 29 ],usingarandomizedsamplingmethodappliedtoageometric constraint decompositionalgorithm.Themotivationoftheexpliciten umerationapproachis toaddress2drawbacksofthismethod.First,itdoesnotutil izetheicosahedral symmetryoftheseviruses,potentiallyapowerfultoolinde terminingthepathway isomorphismclasses;secondlyitdoesnoteasilyextendtop athwayswithadditional properties.Theexpectationisthatahybridofthesetwoapp roachescanbe developedwhichaddressesthesedrawbackswhileincorpora tingthefullgenerality ofthemodel[ 25 29 ]. An icosahedral T = m viralshellgraph isobtainedfroma T = m viralshellby representingeachmonomerasavertexandeachinterface(re levantforassembly) betweenapairofmonomersbyanedge. Theautomorphismgroupofthisgraphisisomorphictotheico sahedral symmetrygroupoftheviralshell.Infact,amoregeneralres ult[ 68 69 ]listing thepossibleautomorphismgroupsofgeneralpolyhedralgra phscouldbeuseful forcharacterizingsubgraphsofviralshellgraphsthatrep resentstablepartial assembliesorsubassemblies,whosesignicancewillbecle arbelow. A stablesubgraph S ofa T = m viralshellgraph G isdenedrecursively. Forthebasecase,asmallsetofatmost k (independentof m )small basestable subgraphsofsizeatmost3 m isspeciedandanysubgraph S thatisisomorphic PAGE 147 135 9 8 10 76 15 14 13 12 11 20 2 3 4 17 18 16 1 5 19 c l e d j i a k h f g b Figure9{3:Facenumbersandvertexnumbers. toabasesubgraphisstable.Theseconstitutethe baseset B ofstablesubgraphs of G .Fortherecursion, S isstableifandonlyifitcanbedecomposedintoa minimal constituentset Q ofvertexdisjointstablesubgraphs S i suchthatthere isasubgraph A of S thatisinthebasesetandisnotcontainedinthesubgraph inducedbyanypropersubsetof Q A stablesubgraphtype isanisomorphismclassobtainedastheorbitofthe naturalactionoftheautomorphismgroupof G onastablesubgraph. ForthesimpleT=1viralshellgraphobtainedfromtheinterf acesofFigure 9{1 ,thetwocommonbasestablesubgraphswouldbe5cyclesand3c yclesthat correspondrespectivelytothetwocommonstablesubassemb lies,pentamersand trimers,andlargerstablesubgraphswouldbeconnectedsub graphsbuiltfrom trimersofpentamersandpentamersoftrimersrespectively (Figure 9{3 A validpathway foraviralshellgraph G isatreewhereeachnodecorresponds toastablesubgraphof G ,thechildrenofaparentformaconstituentsetforthe parent,leavesaresingletonvertices,andhenceparentsof leavesaresubgraphsin thebaseset. A valid,successfulpathway isonewhoserootistheentireviralshellsubgraph. A validpathwaytype istheisomorphismclassobtainedastheorbitofthe naturalactionoftheautomorphismgroupof G onavalidpathway. PAGE 148 136 FromthemodelSection 9.1 [ 25 29 ],oneofthetwofactorsthatdecidesthe probabilityofasuccessfulpathwaytypeisthesizeofitsis omorphismclass. 9.3ImplementationResults Theexpectationisthatahybridoftheexplicitenumeration approachand therandomizedsamplingapproachcanbeobtainedwhichutil izestheicosahedral symmetryofthesevirusesandcanextendtopathwayswithadd itionalproperties whileincorporatingthefullgeneralityofthemodel[ 25 29 ]. Tobuildintuitionontheexplicitenumerationquestionfor thesimplied pathwaysdescribedabove,werstimplementedtherandomiz edpathwaysampling algorithm[ 25 29 ]tosamplethesesimpliedpathways. ImplementationResult1: Forexample,theimplementationresultsforabase stablesetoftrimersandpentamersilluminatesthestructu reofpathwaytypes.For example,weobtainedthehighestandwidestunusualpathway types(Figure 9{4 ). Furthermore,usingthesimpliedpathwaysdescribedabove ,webelievewecan begintoaddresstheseconddrawbackoftherandomizedalgor ithmof[ 25 29 ]given earlier.Specically,wearenowattemptingtomodifytheal gorithmtosampleonly (simplied)pathwaysthatcontainaparticularsub-pathwa ytype. ImplementationResult2: Forexample,theimplementationresultsfora basestablesetoftrimersandpentamersshowsthatover2000 trials,thelargest isomorphismclasshadsizeonly6(evenweenforcetheleafsu bassembliestobe pentamers)(Figure 9{5 ).Thistellsusthatthepathwaysamplingalgorithm's drawbackscanindeedbedebilitating:meaningfulresultsr equireustoconsider onlypathwaysthatcontainparticularsubpathwaytypes,or toconsiderisomorphism classesof\approximate"pathwaytypesforsomesuitablede nitionofpathway type.Fortherstapproach,atthemoment,weareabletohand lesimple subpathwaytypes:forexample,wecanfaithfullysamplepat hwaysthatare PAGE 149 137 16k 1a1b1c 2a3a4a5a 12f 12i 10g 10f 10e 13i 13l 5b 12b 13b 14b 4f 5f 11f 8e 8d 8h 9e 3e 4e 11g 11i 9g 9h 6j 7j 15j 16j 18j 17i 17l 17k 7h 18h 19h 3d 19g 20g 19k 2d 6d 7d 20i 20k 2c 6c 15c 15l 14c 14l 18k 16l 20lg 20i 1b 5b 12b 13b 14b 1a 2a 3a 4a 5a 1c 11g 11f 11i 4f 5f 10f 12f 12i2d 3d 6dd d 8d 6j 7j 15j16j18j 6c 7h 8h 9h18h19h 2c14c14c 3e4e8e9e10e 13l 13i 17k16k18k20k19k 16l17l14l15l 9g10g19g20g Figure9{4:Thehighestpathwaytypeandthewidestpathwayt ypein2000trials. PAGE 150 138 2d 3d 6d 7d 8d 1a 2a 3a 4a 5a 9g 10g 11g 19g 20g 11f 12f 19f 4f 5f8e 9e 3e 4e 10e 7h 8h 9h 18h 19h 11i 12i 13i 17i 20i 6j 7j 15j 16j 18j 1b 5b 12b 13b 14b 1c 2c 6c 14c 15c 16l 17l 13l 14l 15l 16k 17k 18k 19k 20k 11i 12i 13i 17i 20i 1a 2a 3a 4a 5a 1b 5b 12b 13b 14b 1c 2c 6c 14c 15c 2d 3d 6d 7d 8d 8e 9e 3e 4e 10e 6j 7j 15j 16j 18j 7h 8h 9h 18h 19h 9g 10g 11g 19g 20g 11f 12f 19f 4f 5f 16k 17k 18k 19k 20k 16l 17l 13l 14l 15l Figure9{5:Pathwaysof2largestisomorphismclassesin200 0trials. guaranteedtohaveatleastonespeciedelementofthebases tablesetatthe bottomlevel(forexampleatrimer). ImplementationResult3: Over2000trials,assigningequalprobabilitiesfor thechoiceoftrimersandpentamersateachstageoftheassem bly,ourresultsshow thatpathwaysfavoringonlytrimersatthebottomlevelares ignicantlylesslikely thanpathwaysfavoringonlypentamersatthebottomlevel.W henpentamers vs.trimerswerepickedwithprobabilityratio3/5,however ,thetrimerfavoring pathwayswereequallylikelyasthepentamerfavoringpathw ays.Itwouldbe nontrivialtoprovethistypeofresultformally. Thisbringsustothequestionofhowthelocalprobabilities areassignedby therandomizedalgorithm,thatis,theprobabilityforchoo singthebasestable subgraphthatisusedateachstageintheassembly.Inourcur rentimplementation, asmentionedabove,eitherallbasestablesubgraphsareequ allylikelytobepicked PAGE 151 139 ateachstage,orweassigntheprobabilityinverselytothes izeofthebasestable subgraph,undertherationalethatlargerassembliesaremo redicult. Clearlythelattertypeofadditionalfactorwouldaectthe trueprobability ofthatpathway,thatis,theprobabilitydistributionover pathwayswould incorporateanadditionalmeasuretoaccountforthedicul tyofformingparticular subassemblies,inadditiontojustthenumeracyoftheisomo rphismclasses.For thesamplingalgorithmtoprovideafaithfulsampleinsucha modiedprobability distributionoverpathways,itshouldbemodiedtocorresp ondinglytoincorporate suchameasureandstillprovideafaithfulsample. Inthenextsubsectionweproposeourplansforfutureworkon thisquestion. 9.4AnotherProbabilityMeasure Theprobabilityofonesubassembly,correspondingtotheno deinthepathway, isproportionaltothefactorofthenumberofitssolutionty pesoverthetotal numberofthesolutiontypesofitssubassemblies,correspo ndingtoitschildnodes inthepathway.Thatis,themoresolutiontypesithasandthe lesssolutiontypes itssubassemblieshave,thehigherprobabilitythesubasse mblyhas. Duetothehighdimensionalsolutionspaceofthepathway,it isnottractable tocountthesolutiontypesbysolvingit.Itisdesirabletoh aveacombinatorial methodtocountthesolutiontypesandthereaftertogetthep robabilitiesof subassemblies.Hendrickson[ 30 ]givesacombinatorialmethodtogetconditionsfor uniquegraphrealization.Weproposetoextenditsmethodto solveourproblem basedonthehighlyoverconstrainedpropertyoftheviralsh ell. PAGE 152 REFERENCES [1]C.M.Homann,A.Lomonosov,andM.Sitharam,\Geometric constraint decomposition,"in GeometricConstrSolvingandAppl ,B.B.andR.D.,Eds., 1998,pp.170{195. [2]M.Sitharam,\Graphbasedgeometricconstraintsolving :problems,progress anddirections,"in ToappearinAMS-DIMACSvolumeonComputerAided Design ,D.Dutta,R.Janardhan,andM.Smid,Eds.,2004. [3]G.Kramer, SolvingGeometricConstraintSystems ,MITPress,1992. [4]I.Fudos, Constraintsolvingforcomputeraideddesign ,Ph.D.dissertation, PurdueUniversity,DeptofComputerScience,1995. [5]C.M.Homann,A.Lomonosov,andM.Sitharam,\Findingso lvablesubsets ofconstraintgraphs,"in SpringerLNCS1330 ,S.G.,Ed.,1997,pp.463{477. [6]C.M.Homann,A.Lomonosov,andM.Sitharam,\Decomposi tionof geometricconstraintssystems,partii:newalgorithms," JournalofSymbolic Computation ,vol.31,no.4,2001. [7]C.M.Homann,A.Lomonosov,andM.Sitharam,\Planningg eometric constraintdecompositionsviagraphtransformations,"in AGTIVE'99(Graph TransformationswithIndustrialRelevance),Springerlec turenotes,LNCS 1779,edsNagl,Schurr,Munch ,1999,pp.309{324. [8]C.Homann,M.Sitharam,andB.Yuan,\Makingconstraint solversmore useable:theoverconstraintproblem," toappearinCAD ,2004. [9]A.LomonosovandM.Sitharam,\Graphalgorithmsforgeom etricconstraint solving,"in submitted,basedonLomonosov'sUnivFloridaPhDThesis,04 2004. [10]J.J.Oung,M.Sitharam,B.Moro,andA.Arbree,\Frontie r:fullyenabling geometricconstraintsforfeaturebaseddesignandassembl y,"in abstractin ProceedingsoftheACMSolidModelingconference ,2001. [11]M.Sitharam,\Frontier,anopensource3dgeometriccon straintsolver: algorithmsandarchitecture," monograph,inpreparation ,2004. [12]M.SitharamandY.Zhou,\Atractable,approximate,com binatorial3d rigiditycharacterization," FifthAutomatedDeductioninGeometry(ADG) 2004. 140 PAGE 153 141 [13]M.Sitharam,A.Arbree,Y.Zhou,andN.Kohareswaran,\S olution managementandnavigationfor3dgeometricconstraintsyst ems," acceptedto ACMTOG,availableuponrequest ,2004. [14]M.Sitharam,J.Peters,andY.Zhou,\Solvingminimal,w ellconstrained, 3dgeometricconstraintsystems:combinatorialoptimizat ionofalgebraic complexity," AutomateddeductioninGeometry(ADG)2004,availableupon request ,2004. [15]M.Sitharam,\Frontier,opensourcegnugeometriccons traintsolver: Version1(2001)forgeneral2dsystems;version2(2002)for 2dand some3dsystems;version3(2003)forgeneral2dand3dsystem s,"in http://www.cise.ur.edu/ sitharam,http://www.gnu.org ,2004. [16]B.Bruderlin,\Constructingthree-dimensionalgeome tricobjectdenedby constraints,"in ACMSIGGRAPH .1986,ChapelHill. [17]J.Owen,\www.d-cubed.co.uk/,"in D-cubedcommercialgeometricconstraint solvingsoftware [18]G.Laman,\Ongraphsandrigidityofplaneskeletalstru ctures," J.Engrg. Math. ,vol.4,pp.331{340,1970. [19]J.E.Graver,B.Servatius,andH.Servatius, CombinatorialRigidity ,Graduate StudiesinMath.,AMS,1993. [20]H.Crapo,\Structuralrigidity," StructuralTopology ,vol.1,pp.26{45,1979. [21]H.Crapo,\Thetetrahedral-octahedraltruss," StructuralTopology ,vol.7,pp. 52{61,1982. [22]W.Whiteley,\Rigidityandsceneanalysis,"in HandbookofDiscreteand ComputationalGeometry ,pp.893{916.CRCPress,1997. [23]M.SitharamandY.Zhou,\Characterizationofrigidity for2dangleand incidenceconstraints," Manuscript;availableuponrequest ,2005. [24]A.Lomonosov,\GraphandCombinatorialAnalysisforGe ometricConstraint Graphs,"Tech.Rep.,Ph.Dthesis,Univ.ofFlorida,Gainesv ille,Dept.of ComputerandInformationScience,Gainesville,FL,326116120,USA,2004. [25]M.SitharamandM.Agbandje-Mckenna,\Samplingvirusa ssemblypathway: Avoidingdynamics," acceptedtoJournalofComputationalBiology,available uponrequest ,2004. [26]M.Sitharam,J.Oung,andA.Arbree,\Ecientundercons trained completions,updatesandonlinesolutionofgeneralgeomet ricconstraint graphs," submitted,availableuponrequest ,2004. PAGE 154 142 [27]M.SitharamandY.Zhou,\Mixingfeaturesandvariation alconstraintsin3d," acceptedtoCAD,availableuponrequest ,2004. [28]M.Sitharam,\Characterizingwell-formedsystemsofi ncidencesforresolving collectionsofrigidbodies," Submitted;availableuponrequest ,2005. [29]M.SitharamandM.Agbandje-Mckenna,\Modelingvirusa ssemblypathways usingcomputationalalgebraandgeometry,"in Proceedingsofthe10th ApplicationsofComputerAlgebraconference ,2004. [30]B.Hendrickson,\Conditionsforuniquegraphrealizat ions," SIAMJ.Comput. vol.21,no.1,pp.65{84,1992. [31]G.BrunettiandB.Golob,\Afeaturebasedapproachtowa rdsanintegrated productmodelincludingconceptualdesigninformation," ComputerAided Design ,vol.32,pp.877{887,2000. [32]V.AlladaandS.Anand,\Feature-basedmodelingapproa chesforintegrated manufacturing:state-of-the-artsurveyandfutureresear chdirections," InternationalJournalforComputerIntegratedManugfactu ring ,vol.8,pp. 411{440,1995. [33]R.Klein,\Geometryandfeaturerepresentationforani ntegrationwith knowledgebasedsystems,"in GeometricmodelingandCAD .1996, Chapman-Hall. [34]R.Klein,\Theroleofconstraintsingeometricmodelin g,"in Geometricconstraintsolvingandapplications ,BruderlinandR.ed.s,Eds.1998, Springer-Verlag. [35]J.HanandA.Requicha,\Modeler-independentfeaturer ecognitionina distributedenvironment," ComputerAidedDesign ,vol.30,pp.453{463,1998. [36]W.Bouma,I.Fudos,C.Homann,J.Cai,andR.Paige,\Age ometric constraintsolver," ComputerAidedDesign ,vol.27,pp.487{501,1995. [37]J.Owen,\Algebraicsolutionforgeometryfromdimensi onalconstraints,"in ACMSymp.Found.ofSolidModeling ,Austin,Tex,1991,pp.397{407. [38]J.Owen,\Constraintsonsimplegeometryintwoandthre edimensions,"in ThirdSIAMConferenceonGeometricDesign .SIAM,November1993,To appearinIntJofComputationalGeometryandApplications. [39]C.M.HomannandP.J.Vermeer,\Geometricconstraints olvingin R 2 and R 3 ,"in ComputinginEuclideanGeometry ,D.Z.DuandF.Hwang,Eds. WorldScienticPublishing,1994,secondedition. [40]C.M.HomannandP.J.Vermeer,\Aspatialconstraintpr oblem,"in WorkshoponComputationalKinematics ,France,1995,INRIASophia-Antipolis. PAGE 155 143 [41]I.FudosandC.M.Homann,\Correctnessproofofageome tricconstraint solver," Intl.J.ofComputationalGeometryandApplications ,vol.6,pp. 405{420,1996. [42]I.FudosandC.M.Homann,\Agraph-constructiveappro achtosolving systemsofgeometricconstraints," ACMTransonGraphics ,pp.179{216, 1997. [43]S.Ait-Aoudia,R.Jegou,andD.Michelucci,\Reduction ofconstraint systems,"pp.83{92,1993. [44]J.Pabon,\Modelingmethodforsortingdependenciesam onggeometric entities,"in USStatesPatent5,251,290 ,Oct1993. [45]R.LathamandA.Middleditch,\Connectivityanalysis: atoolforprocessing geometricconstraints," ComputerAidedDesign ,vol.28,pp.917{928,1996. [46]C.M.HomannandR.Joan-Arinyo,\Distributedmainten anceofmultiple productviews," Manuscript ,1998. [47]K.deKraker,M.Dohmen,andW.Bronsvoort,\Maintainin gmultipleviews infeaturemodeling,"in ACM/SIGGRAPHSymposiumonSolidModeling FoundationsandCAD/CAMApplications .1997,pp.123{130,ACMpress. [48]M.SitharamandY.Zhou,\Determininganindependentse tofoverlap constraintsbetweenrigidbodies," Manuscript;availableuponrequest ,2005. [49]J.Gaukel,\Ezientelosungpolynomialerundnichtpol ynomialer gleichungssystememithilfevonsubdivisionsalgorithmen ," Ph.D.thesis 2003. [50]N.Kohareswaran,\Designofa3dgraphicaluserinterfa ceforfrontier,a geometricconstraintsolvergraphs," Tech.rep.,Mastersthesis,Univ.of Florida,Gainesville,Dept.ofComputerandInformationSc ience,Gainesville, FL,32611-6120,USA ,2003. [51]A.Bjorner,M.L.Vergnas,B.Sturmfels,N.White,andG. Ziegler, Oriented Matroids.EncyclopaediaofMathematics.Vol.46.Editedby G-C.Rota CambridgeUniversityPress,1993. [52]I.EmirisandJ.Canny,\Apracticalmethodforthespars eresultant,"in InternationalConferenceonSymbolicandAlgebraicComput ation,Proceedings ofthe1993InternationalSymposiumonSymbolicandAlgebra icComputation 1993,pp.183{192. [53]B.HuberandB.Sturmfels,\Apolyhedralmethodforsolv ingsparse polynomialsystem," Math.Comp. ,vol.64,pp.1541{1555,1995. PAGE 156 144 [54]D.Eppstein,\Representingallminimumspanningtrees withapplicationsto countingandgeneration,"Tech.Rep.95-50,Univ.ofCalifo rnia,Irvine,Dept. ofInformation&ComputerScience,Irvine,CA,92697-3425, USA,1995. [55]J.Peters,J.Fan,M.Sitharam,andY.Zhou,\Eliminatio ningenericallyrigid 3 d geometricconstraintsystems,"in ProceedingsofAlgebraicGeometryand GeometricModeling,Nice,27-29September2004 .2005,pp.1{16,Springer Verlag. [56]D.B.S.L.G.I.W.Goddard, Handbookofnanoscienceengineeringand technology ,CRCpress,2002. [57]F.CrickandJ.Watson,\Structureofsmallviruses," Nature ,vol.177,pp. 473{475,1956. [58]D.CasparandA.Klug,\Physicalprinciplesintheconst ructionofregular viruses," ColdSpringHarborSympQuantBiol ,vol.27,pp.1{24,1962. [59]B.Berger,P.Shor,J.King,D.Muir,R.Schwartz,andL.T ucker-Kellogg, \Localrule-basedtheoryofvirusshellassembly," Proc.Natl.Acad.Sci.USA vol.91,pp.7732{7736,1994. [60]B.BergerandP.Shor,\Localrulesswitchingmechanism forviralshell geometry," Technicalreport,MIT-LCS-TM-527 ,1995. [61]A.Zlotnick,J.Johnson,P.Wingeld,S.Stahl,andD.En dres,\Atheoretical modelsuccessfullyidentiesfeaturesofhepatitisbvirus capsidassembly," Biochemistry ,vol.38,pp.14644{14652,1999. [62]A.Zlotnick,R.Aldrich,J.M.Johnson,P.Ceres,andM.J .Young, \Mechanismsofcapsidassemblyforanicosahedralplantvir us," Virology vol.277,pp.450{456,2000. [63]A.Zlotnick,\Tobuildaviruscapsid:anequilibriummo deloftheself assemblyofpolyhedralproteincomplexes," J.Mol.Biol. ,vol.241,pp.59{67, 1994. [64]D.Rapaport,J.Johnson,andJ.Skolnick,\Supramolecu larself-assembly: moleculardynamicsmodelingofpolyhedralshellformation ," CompPhysics Comm ,1998. [65]J.E.JohnsonandJ.A.Speir,\Quasi-equivalentviruse s:aparadigmfor proteinassemblies," J.Mol.Biol. ,vol.269,pp.665{675,1997. [66]V.S.Reddy,H.A.Giesing,R.T.Morton,A.Kumar,C.B.Po st,C.L. Brooks,andJ.E.Johnson,\Energeticsofquasiequivalence :computational analysisofprotein-proteininteractionsinicosahedralv iruses," Biophys ,vol. 74,pp.546{558,1998. PAGE 157 145 [67]C.J.MarzecandL.A.Day,\Patternformationinicosahe dralviruscapsids: thepapovavirusesandnudaureliacapensis virus," Biophys ,vol.65,pp. 2559{2577,1993. [68]L.BabaiandW.Imrich,\Ongroupsofpolyhedralgraphs, DiscreteMath. vol.5,pp.101{103,1973. [69]L.BabaiandW.Imrich,\Sensepreservinggroupsofpoly hedralgraphs," Monatsh.Math. ,vol.79,pp.1{2,1975. PAGE 158 BIOGRAPHICALSKETCH YongZhouwasbornin1976inHubei,China.Hegrewupmostlyin Anlu, Hubei.HeearnedhisB.S.inInformationandControlandhisM .S.inElectrical TheoryfromtheShanghaiJiaotongUniversity(SJTU)in1999 and2002, respectively.HeearnedhisPh.D.inComputerSciencefromt heUnivecityof Florida(UFL)in2006. 146 xml version 1.0 encoding UTF-8 REPORT xmlns http:www.fcla.edudlsmddaitss xmlns:xsi http:www.w3.org2001XMLSchema-instance xsi:schemaLocation http:www.fcla.edudlsmddaitssdaitssReport.xsd INGEST IEID EQPPLNRRJ_3ZJV7J INGEST_TIME 2011-06-16T18:10:45Z PACKAGE UFE0015669_00001 AGREEMENT_INFO ACCOUNT UF PROJECT UFDC FILES |