Upload
heather-young
View
216
Download
0
Tags:
Embed Size (px)
Citation preview
Salt Lake City, Oct. 14th, 2015
Re-parameterization reduces irreducible geometric constraint systems
H. Barki, L. Fang, D. Michelucci,S. Foufou
GDSPM’15
Summary
• Introduction and motivation
• Understanding Re-Parameterization (RP)
• How reduction speeds up Linear Algebra (LA)?
• How Re-Parameterization (RP) speeds up LA?
• How Re-Parameterization speeds-up P-adic methods?
• How Re-Parameterization speeds-up interval solvers?
• Experimental results
• Re-Parameterization at a higher level
• Conclusions, emerging questions and future work 2
Introduction and motivation
Background• Seminal work [8] about the Locus Intersection Method (LIM)
– Gao et al. generated all the possible irreducible and structurally well-constrained sys. involving up to 6 primitives (683 basic configurations)
– Basic configurations correspond to 3D sub-problems in GCSP and CAD but in general, they do not have a closed form solution
– Gao et al. proposed LIM1 and LIM2 with 1 and 2 key unknowns (parameters) for solving them -> Re-Parameterization (RP)
• Decomposition techniques of Ait Aoudia et al. [9]– Usage of bipartite graphs to decompose large systems into sub-systems– Efficient decompose or reduce well-constrained sys. into irreducible well-
constrained sys. -> efficient solving
3
Introduction and motivation
• Main problems– The methods of Ait Aoudia et al. [9] do not apply to (re-parameterized
irreducible) sys. of Gao et al. [8] and also those of [10-12]– For basic configurations with more than 6 primitives/complex primitives,
using LIM1 (k=1 key unknown) is not enough– LIMk (k >= 2) become much less convenient
• Contribution– We propose a technique for efficiently reducing/unlocking irreducible RP sys.
like those of [8,10–12] -> the decomposition methods proposed in [9] become applicable
– We also show that it is possible to benefit from the decomposition of [9] even when the values of the key unknowns are not known and also for k > 2 -> we propose to exploit RP at the lowest Linear Algebra (LA) level because a wide range of solvers uses these LA routines
4
Understanding Re-Parameterization
• A 2D example of a GCSP (9 edge lengths)– Under-constrained sys. (12 eqs./9 vars.) -> well-
constrained sys. (9 eqs./vars.) by fixing A’B’C’– Finite number of solutions for generic values– The sys. is structurally irreducible
• If the length u (key unknown) was known– The sys. would be easily solved by computing point
A, then B, then C (CC’ equation can be ignored)– The sys. becomes decomposable/reducible (1 eq.
in 1 unknown u)– Problem: the value of u is unknown!– Other complications due to multi-functions A(u),
B(u), and C(u)!
• A complex 3D hexahedron example (cf. paper) 5
Reduction speeds-up linear algebra
• Reduction/decomposition methods of [9]– Re-order unknowns/equations so that the Jacobian becomes block lower
triangular -> the decomposition becomes more visible– Consequence: the processes of solving a LS become more efficient, thanks to
the use of forward block substitution (complexity drop from O(n3) using Gauss pivoting to O(n2) for lower triangular sys. of size n [17])
– Consider the block lower triangular matrix
– Let us show how to exploit the decomposition of M in order to solve a system MX = B or to invert matrix M
– Note: floating point arithmetic is involved for Newton-Raphson or homotopy, interval arithmetic for interval solvers, or or rational/modular arithmetic for p-adic methods)
6
Reduction speeds-up linear algebra
• Inverting a block lower triangular matrix– K = M-1 is also block lower triangular
with and – It is it always possible to avoid the inversion of matrix M as it suffices to just
solve less than n linear systems (n is the size of M) as follows:
• Solving a linear sys. MX = B with X = (X1, X2, . . .)t, B = (B1, B2, . . .)t
– We have to successively solve the systems
– The smaller are the blocks Ml,l -> the greater is the number of null blocks under the diagonal -> the more important is the solving process speed-up
– For a matrix M of size n and blocks of small size t O(1)∈ , the complexity drops from n3 to n (full and detailed complexity study in the paper) -> the speed-up is considerable
7
RP speeds-up linear algebra
• Benefits of RP to Linear Algerba: case of Newton-Raphson method– Let us assume a well-constrained system of equations, with a known set of
key unknowns and its Jacobian structure already computed by [9]– Each Newton-Raphson iteration solves a linear system having the structure:
where A is non-singular block lower triangular, U is the vector of key unknowns, and X is the vector of other unknowns
8
❑⇔ {𝐻𝑈+𝐴𝑋=𝑅
𝐶𝑈+𝐿𝑋=𝑆
RP speeds-up linear algebra
• Concept of R-structure– Matrix is said to have the R-structure (R for Re-parameterization)
– Two matrices have the same R-structure iff the sizes of their four blocks H, A, C, and L are equal, and the block structures of their A parts are equal
– From what precedes, it follows that:
– By using re-parameterization, we could solve the last system for U and then deduce X (cf. paper for the detailed steps), without inverting A
• Conclusion: RP makes A highly reducible and the decomposition of A by methods of [9] allows to speed-up the solving process of a linear system Ax = B
9
RP speeds-up linear algebra
• Results– The cost of solving a RP linear system is O(k(α+kn+k2)), which equals O(kn2) in
the worst case and is always less than O(n3) (Gauss pivoting, LU) as k << n
– It is even less than the cost O(n2.8...) of the inversion by the Strassen method and less than the cost O(n2.375...) of Coppersmith–Winograd method
• Remarks– We assumed than k << n and we didn’t discuss a max value of k in order for
the speed-up of RP to remain interesting
– The complexity study suggests a bound k = O(n0.375...) so that our RP has the same complexity as that of Coppersmith–Winograd -> it is probably easier to find sets of key unknowns of size O(n0.375...) rather than sets of size O(1) or O(log n)
10
RP speeds-up p-adic methods
Used to solve diophantine problems [19–23], computer algebra, etc.
• RP benefits Hensel lifting used in P-adic methods– Assume X0 is a root of some RP alg. sys. F(X) = 0 modulo p and that we aim to
compute X such that X0 + p X1 is a root of F(X) = 0 modulo p2
– Then, F (X0) = 0 mod p implies that F (X0) (taken modulo p2) is a multiple of p
– After computing the vector λ = F (X0)/p, we find that F (X0 + p X1) = 0 which implies that λ + F (X′ 0)X1 = 0 [mod p] which is a linear sys. solvable modulo p
Conclusion: if F(x) = 0 is a RP system, then Hensel lifting can benefit from RP (as Hensel lifting is nothing else than the Newton–Raphson method but for the p-adics [26])
11
RP speeds-up interval solvers
• Interval analysis– Let f(x) = 0 be a large well-constrained RP system for which we want to
compute all its real roots within a given box B. If we denote by x0 the center of box B, then:
– To compute Δx solution of , where :1. We compute f (B)′ by intervals analysis (sparsity of the Jacobian f )′2. We solve Δx := solve(f (B)′ Δ x = −f (x0)) by using the Jacobian R-structure
• A main difficulty– Any of the sub-matrices of the diagonal of the Jacobian f (B)′ is singular
12
RP speeds-up interval solvers
• Solution: using the centered evaluation form– Let J = f (B)′ and J0 the center of J which is non-singular, if we denote by ΔJ = J
− J0, and substituting in what precedes, it follows after some computations:
– We have a non-singular linear sys. with unknown Δx with J0 having the R-structure of f -> solving this linear sys. can benefit from RP
• Conclusions– Interval solvers like ALIAS-C++ [27], RealPaver [28], IBEX [29], and QUIMPER
[30]) can benefit from RP– Further work needed to address the wrapping effect issue for RP systems
…
13
Experimental results
Benchmarks at the lowest linear Algebra level– Comparing to naïve Gaussian method for solving a Linear Sys. M=XB– Gaussian method implemented through Matlab command X=M\B
• 1st benchmark series: the hexahedron– No significant performance improvement -> sys. Too is small
• 2nd benchmark series: bigger random sys. Having R-structure– Different combinations of n (sys. size) and m (block size) parameters, 100
random sys./combination (k being the number of key unknowns)
14
Experimental results
• Results of 2nd benchmark series: bigger random sys.– RP is significantly faster (x26 average speed-up) over naïve Gaussian– The bigger is the sys., the more performant is our RP (x73.4 for n = 4002)
15
Experimental results
Benchmarks at the highest geometric level: the pentahedron [37, 38]– A GCSP of 6 vertices, 9 edges, and 5 faces -> 12 eqs. in 18 vars. -> an
irreducible sys. of 9 eqs. in 9 vars. (after placement rules)– Difficult to solve by interval solvers, Cayley-Manger determinants, and even
the re-parameterization technique of [9] with 1 key unknown
• Our RP of the pentahedron GCSP– By using the concurrency property at point I and law of cosines -> a new NLS
of 3 eqs. In 3 vars. Only!– A significant performance gain (x41) for our RP technique
16
RP at a higher level
• Benefits of RP the lowest level of LA– Simplicity and factorization -> reuse of classical LA methods at a small cost of
minor implementation modification or just by recompiling code
• RP can also be used at a higher level of interval solvers by– Handling only boxes involving the parameters U– Boxes involving variables X are computed in function of U through interval
computations– Main difficulty: a big change in the solver implementation
17
Conclusion
• A new RP technique for reducing geometric irreducible systems
• No need for the values of the key unknowns and no limit on their number as
opposed to the existing methods [8]-[12].
• Enabling the usage of decomposition methods [9] on irreducible RP systems
• Usage at the lowest level and significant performance improvement
• Benefits for numerous solvers (Newton–Raphson, homotopy, p-adic methods,
etc.) with only small implementation modifications -> solving larger systems
18
Emerging questions/future work
• Can interval Newton solvers benefit from both RP/preconditioning for limiting the wrapping effect? Is there any suitable contraction operator?
• Similar question for Bernstein-based solvers [40, 41]?
• Which redundant equations should be ignored (highest degree)?
• Is there a way to specify interesting values of k compared to n?
• How to compute a smaller set of key unknowns k? -> The generalization of the work done in [10, 12, 14] is an open problem!
• RP application for other LA computations (SVD and QR), for symbolic computations, and for (under-constrained) GCSPs?
• …19
Thanks for your attention
RP speeds-up linear algebra
• Steps for solving for U and X1. Zn×1 := solve(An×nZn×1 = Rn×1) costs O(α) and yields Z=A-1R, avoiding A-1
2. Kn×k := solve(An×nKn×k = Hn×k) costs O(kα) and yields K = A−1H, avoiding A-1
3. Compute C − LA−1H = Ck×k −Lk×nKn×k costs O(k2n)
4. Compute S − LA−1R = Sk×1 − Lk×nZn×1 costs O(kn)
5. Uk×1 := solve((C − LA−1H)k×k Uk×1 = (S − LA−1R)k×1), where only U is unknown, costs O(k3) and yields U
6. Compute Rn×1 − Hn×kUk×1 costs O(nk)
7. Xn×1 := solve(An×nXn×1 = (R − HU)n×1), where only X is unknown, costs O(α), and yields X, avoiding A−1 21