Title: Geometric Constraint Solving Based on kconnected Graph Decomposition
1Geometric Constraint Solving Based on
k-connected Graph Decomposition
- Gui-Fang Zhang
- Beijing Forestry University, China
- Xiao-Shan Gao
- Chinese Academy of Sciences, China
2Contents
- Introduction
- D-tree Decomposition
- Merge
3Geometry Constraint Solving (GCS)
- One of the key techniques to parametric CAD
Methods for GCS
- Graph Analysis Methods
- Rule-based Methods
- Numerical Computation Methods
- Symbolic Computation Methods
4Applications of GCS
- Parametric CAD
- Linkage Design and Simulation
- Computer Vision
- Kinematic Analysis of Robotics
- Molecular Design
- Computer Aided
- Instruction(CAI),
5A Basic Idea of GCS Divide Conquer
- Reduce a large problem into smaller ones
- Divide QiDC(Pi)
- Graph analysis approach
- Rule-based approach
- Symbolic computation approach
- Conquer
- Merge Q1 ? Q2 ? ? Qm
- Numerical computation
- Rule-based approach
- Symbolic computation approach
Key Steps Decomposition and Merge
6Triangular DecompositionOwen, Hoffmann,
Joan-Arinyo
The method can only solve problems that can be
decomposed into triangles.
7Contents
- Introduction
- K-tree Decomposition
- Merge
8Graph Representation of Geometric problem
9Deficit of a Constrained Graph
- G(V,E,?) a geometric constraint graph
- deficit(G)(DOF(V)-D)- DOF(E)
- D is 3 in 2D or 6 in 3D.
- If G is a structurally well-constrained,
- deficit(G)0.
- If G is not structurally over-constrained,
- deficit(G) 0.
10Connectivity of a graph
- Two vertices x and y of graph G are said to be
k-connected if there exist k vertex-disjoint
paths from x to y in G. The connectivity of x and
y is denoted by ?(x,y), which is the number of
vertex disjoint paths from x to y in G. - Theorem of Whitney. A graph G(V,E) is
- k-connected iff ?(x,y) k
- that is?(G)min?(x,y) x,y? V
11Connectivity of well-constrained graph
- Let G(V,E) be a well-constrained graph for a
geometric constraint problem. We have - Theorem
- 3 in 2D
- ?(G) 5 in 3D for points planes
- 7 in 3D for points, planes
lines.
12Decomposition of k-connected well-constrained
Graph
- Separating graph Gs subgraph of G induced by a
separating k-tuple Vs v1, v2,,vk - Split graph
Gs
G1
G2
The relation of split graphs G1,G2 and cut graph
Gs
13 A Key Relation
- G k-connected structurally well-constrained
graph - Gs separating graph
- G1, G2 the split graphs.
- Theorem. deficit(G1)deficit(G2) deficit (Gs).
- Consequences
- G1, G2 are structurally well-constrained
- Gs is structurally well-constrained
- A structurally well-constrained bi-connected
constraint graph can always be split into two
structurally well-constrained graphs in 2D.
(This is the case of triangular decomposition of
Owen et al)
14Examples
- deficit(Gs)0 Two split graphs are rigid
- deficit(G_s)1 one split graph is rigid
15A bad split no rigid is generated
A good split one rigid is generated
16An K-tree decomposition
17A Decomposition Tree
- A D-tree for a structurally well-constrained
k-connected graph G(V,E,?) is a binary tree. - The root of the tree is the graph G.
- Left child L and right child R are defined as
follows. - For each node N in the tree, its left child L is
the split graph of N which is either a triangle
or a structurally well-constrained subgraph of N,
and the right child R is the(modified) split
graph of N with L which is either a triangle or a
structurally well-constrained graph. - All leaves are either a triangle or a
structurally well-constrained j-connected (j lt
8) constraint graph.
18The Algorithm to Find the Decomposition Tree
- Key Idea find the k-connected separating set and
split the graph with this set. - Complexity
- K2 O(n)
- K3 O(n2)
- Other cases O(nk)
19Contents
- Introduction
- D-tree Decomposition
- Merge
20Merge of Two Rigids R1 and R2 Sharing a
Separating Set S
Ss
R1
R2
G1
G2
- Computationally Easy Only need to do a
translation and a rotation - Key point for what kind of Ss, R1 and R2 can
merge into a larger rigid?
21Merge bi-connected graphs in 3D
- Ss a,b the separating pair
- R1 and R2 the split subgraphs of G
- Theorem. R is a rigid body iff
- a,b are of the following three cases
- a point and a line which are not incident
- a plane and a line which are not parallel,
perpendicular or incident to each other - two lines which are not parallel to each other.
22Cases that cannot be merged
- The Double Banana problem
23Merge tri-connected graphs in 3D
- Theorem. R is a rigid body iff
- Ssa,b,c are of the following cases
- Three points
- Three planes intersect at one point
- Three lines not parallel to each other
- Two points and one plane
- One line and two points not on the line at the
same time - One point and two lines
- One point and two planes
24Thanks