340 likes | 468 Views
Subdivision Termination Criteria in Subdivision Multivariate Solvers. Iddo Hanniel, Gershon Elber CGGC, CS, Technion. The Problem. Consider the following set of d polynomial equations: In R d . We seek the simultaneous solution, ,
E N D
Subdivision Termination Criteria in Subdivision Multivariate Solvers Iddo Hanniel, Gershon Elber CGGC, CS, Technion
The Problem Consider the following set ofdpolynomial equations: InRd. We seek the simultaneous solution, , such that for alli =1,…,d.
Motivation for the Solver • Many geometric problems are reduced to the • simultaneous solution of a set of constraints. • Ray-surface, curve-curve and surface-surface intersections. • Voronoi diagram of curves. • Curve-curve bi-tangents, convex hull of curves. • Minimum enclosing circle/sphere of a set of curves/surfaces.
Example – Intersection of 3 Explicit Surfaces in R3 Here, one can find four solutions that satisfy the equations. We are interested in finding all solutions.
Previous Work on Multivariate Polynomial Solvers Algebraic Solvers: Grobner bases [Cox et al., 1992]. Multivariate Sturm sequences [Milne, 1992]. Geometric Solvers: Based on the Bernstein/Bezier/Bspline properties. Bezier clipping methods [Sherbrooke and Patrikalakis, 1993], [Mourrain and Pavone, 2005]. Subdivision step and numeric improvement [Elber and Kim, 2001].
The Bezier/B-Spline Solver A subdivision stage in a multidimensional space, using B-spline/Bezier subdivision. A multivariate Newton-Raphson (NR)numeric step. Elber and Kim, 2001: Geometric Constraint Solver using Multivariate Rational Spline Functions
Subdivision Illustration – Univariate Case Subdivision. CH containment.
The Termination Question Question: When do we stop the subdivision? We can identify domain cells with no root by the CH property. Can we do any better? • If we know there is at most a single root in some domain cell, we can move to the NR step. How can we know that?
Extension to Higher Dimensions Theorem: Givendimplicit hyper-surfacesFi(u) = 0, i = 1,….,d, inRd, there is at most one common solution if where0is the origin. Elber and Kim, 2001: Geometric Constraint Solver using Multivariate Rational Spline Functions
Implementing the Single Solution Test How can this condition be tested efficiently inRd? Clearly the gradient field of Fi(u) provides a bound on the normal space of Fi(u). Optimal bounding cones over vectors in Rd could be found in average linear time.
Implementing the SST ( Cont.) The complementary cone can easily be derived, given the normal cone. and share the same axis but with complementary angles.
Implementing the SST (Cont.) But now we have to test for the intersection of d complementary cones in Rd. A difficult task, even in R3 ! d = 3
Implementing the SST (Cont.) Reexamine the univariate case (two curves): …intersect iff the parallel lines domain’s Intersection… ….is not confined to the unit circle Two cones of two planar curves…
Two infinite parallel hyper-planes in Rd. Implementing the SST (Cont.) The efficient solution is found by using a different representation for the complementary cones.
Implementing the SST - Main Lemma Lemma: contains a vector other than {0}, if and only if the intersection of the unit hyper-sphere Sd-1 with the regions between the bounding hyper-planes is non-empty. Implication: In order to test for a single solution, we do not have to intersect d-dimensional cones.
Implementing the SST (Cont.) Two options: The entire intersection is inside the unit sphere. Then SST holds. Otherwise, SST failed. Hence, only test if all the vertices of the intersection are inside the unit sphere.
Implementing the SST (Cont.) SST holds SST failed
Implementing the SST (Cont.) The set of 2d hyper-plane intersection (HPI) equations to solve is: Or in matrix (d d) form:
Implementing the SST (Cont.) Due to symmetry, only 2d-1hyper-plane intersection (HPI) tests are required. 4HPI tests for d = 3 (x, y, z) constraints in R3.
Implementing the SST (Cont.) An efficient way to solve the 2d-1 systems of equations is due to the inherent symmetry of the problem: Therefore, given one solution (e.g., {-,-,…,-,-}), computing a second solution that differs by a single sign (e.g., {-,-,…,-,+}), takes only O(d) operations and not O(d2 ).
Implementing the SST – Example Without SST With SST
Implementing the SST – Example (Zoom) Without SST With SST
Purging Away Zero-solution Domains Problem: SST does not guarantee that a solution exists in the sub-domain. We might start the numerical iterations only to find that no root exists in this sub-domain.
Purging Away Zero-solution Domains (Cont.) Therefore, we seek to purge away, as much as possible, sub-domains that contain no solution. We present a second criterion, in addition to the CH criterion, for identifying no-solution sub-domains.
Purging Away Zero-solution Domains (Cont.) The basic idea: Bound the function Fi=0 by a pair of parallel hyper-planes in Rd. If the intersection of the hyper-planes is entirely outside the sub-domain, then the solution is outside the sub-domain. F1 F2
Purging Away Zero-solution Domains (Cont.) Problem: In order to bound Fi=0 inRd we need to have at least a sample point uonFi=0. Solution: Bound FiinRd+1 and intersect the resulting (d+1)-dimensional hyper-planes with ud+1=0, resulting bounding hyper-planes in Rd.
Purging Away Zero-solution Domains (Cont.) • Promote Fi from a scalar function to a hyper-surface in Rd+1, . • Evaluate the gradient (i.e., the normal) at the sub-domain mid-point and project all control points of the hyper-surface onto it. • The two hyper-planes orthogonal to the gradient and passing through the extreme • projection points, bound Fi.
Purging Away Zero-solution Domains Illustration (d=1) [ ] ud+1 = 0 Center for Graphics and Geometric Computing, Technion
Purging Away Zero-solution Domains (Cont.) How to determine whether the intersection is entirely outside the sub-domain? Possible solutions: Linear programming techniques. Similarly to the SST for finding all vertices of the intersection.
Purging Away Zero-solution sub-domains – Example With hyper-plane test Without hyper-plane test
Future Work • Compare the SST with algebraic/numeric termination criteria (Kantorovich). • Use the vertices, which were computed for purging away zero-solutions, for clipping the sub-domain. • Extend the presented ideas for under- and over-constrained systems. • Search for tighter bounding volumes on the solutions (not just cones).