A General Solver Based on Sparse Resultants Ioannis Z. Emiris - - PowerPoint PPT Presentation

a general solver based on sparse resultants
SMART_READER_LITE
LIVE PREVIEW

A General Solver Based on Sparse Resultants Ioannis Z. Emiris - - PowerPoint PPT Presentation

A General Solver Based on Sparse Resultants Ioannis Z. Emiris presented by Pavel Trutman <pavel.trutman@cvut.cz> August 30, 2019 Czech Institute of Informatics, Robotics, and Cybernetics Czech Technical University in Prague P. Trutman


slide-1
SLIDE 1

A General Solver Based on Sparse Resultants

Ioannis Z. Emiris presented by Pavel Trutman <pavel.trutman@cvut.cz> August 30, 2019

Czech Institute of Informatics, Robotics, and Cybernetics Czech Technical University in Prague

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 1 / 13

slide-2
SLIDE 2

Motivation

Motivation

◮ Problems from computer vision lead to polynomial system solving. ◮ Efficiency is needed for real time applications or for RANSAC framework. ◮ Current SOTA are Gr¨

  • bner basis solvers.

◮ Well known and fine-tuned for many years.

◮ Maybe for some problems different approach may be faster or more stable.

Table: Comparison of some common minimal problems. Courtesy: Z. K´ ukelov´ a et al. Unpublished work in review.

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 2 / 13

slide-3
SLIDE 3

Resultants

Resultant of two univariate polynomials

Given f, g ∈ C[x] f = a0xl + · · · + al, a0 = 0 l > 0 g = b0xm + · · · + bm, b0 = 0 m > 0 (1) the resultant Res(f, g) is Res(f, g) = det

              

a0 a1 a2 · · · al a0 a1 a2 · · · al a0 a1 a2 · · · al ... . . . . . . . . . ... a0 a1 a2 · · · al b0 b1 b2 · · · bm b0 b1 b2 · · · bm b0 b1 b2 · · · bm ... . . . . . . . . . ... b0 b1 b2 · · · bm

                     

m rows

      

l rows (2) The resultant vanishes iff f and g have a common root.

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 3 / 13

slide-4
SLIDE 4

Resultants

Example

Res(x3 + 4x − 1, 2x2 + 3x + 7) = det

      

1 4 −1 1 4 −1 2 3 7 2 3 7 2 3 7

      

= 159 (3) No common root.

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 4 / 13

slide-5
SLIDE 5

Resultants

Multivariate example

Polynomials f, g ∈ C[x, y]: f = xy − 1, (4) g = x2 + y2 − 4. (5) Resultant with respect to x: Res(f, g) = det

  

y −1 y −1 1 y2 − 4

  

(6) = −y4 + 4y2 − 1. (7) Solve −y4 + 4y2 − 1 = 0 to find y-coordinates of the roots.

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 5 / 13

slide-6
SLIDE 6

Resultants

Resultant as a Macaulay matrix

f = a0xl + · · · + al a0 = 0 l > 0 g = b0xm + · · · + bm b0 = 0 m > 0 (8) The Macaulay matrix Md of degree d = l + m is a coefficient matrix.

              

f xf x2f . . . xd−mf g xg x2g . . . xd−lg

              

= Md

    

xd . . . x2 x 1

    

=

 

. . .

 

(9) Res(f, g) = det(Md) (10)

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 6 / 13

slide-7
SLIDE 7

Sparse resultants

Sparse resultants

◮ Exploit sparsity of the given polynomials. ◮ Lead to resultants with smaller degrees. For polynomials f1, . . . , fn ∈ C[x1, . . . , xn−1]: Res(f1, . . . , fn) = det(M) (11)

   

. . . xpfip . . .

    = M    

. . . xq . . .

    =   

. . .

   , q, p ∈ E, ip ∈ {1, . . . , n}

(12) Two algorithms [1, 2] by I. Z. Emiris and J. F. Canny to obtain the matrix M.

[1] J. F. Canny, I. Z. Emiris. A Subdivision-Based Algorithm for the Sparse Resultant. [2] I. Z. Emiris, J. F. Canny. Efficient Incremental Algorithms for the Sparse Resultant and the Mixed Volume.

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 7 / 13

slide-8
SLIDE 8

Sparse resultants

Example on sparse polynomials

f = x2y − x2 + xy − x = 0 (13) g = x2y + xy2 + 2xy + 2y2 = 0 (14) B´ ezout’s bound: Number of solutions is at most equal to the product of the degrees. ◮ We expect at most 9 solutions. BKK bound: Sparse version of the B´ ezout’s bound.

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 8 / 13

slide-9
SLIDE 9

Sparse resultants

Example on sparse polynomials

f = x2y − x2 + xy − x = 0 (13) g = x2y + xy2 + 2xy + 2y2 = 0 (14) Newton polytope Qf: Convex hull of exponent vectors of monomials with nonzero coefficients in a polynomial f.

1 x x2 x3 x4 y y2 y3 Qg Qf

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 8 / 13

slide-10
SLIDE 10

Sparse resultants

Example on sparse polynomials

f = x2y − x2 + xy − x = 0 (13) g = x2y + xy2 + 2xy + 2y2 = 0 (14) Minkowski sum: A + B = {a + b | a ∈ A, b ∈ B}

1 x x2 x3 x4 y y2 y3 Qg Qf Qf + Qg

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 8 / 13

slide-11
SLIDE 11

Sparse resultants

Example on sparse polynomials

f = x2y − x2 + xy − x = 0 (13) g = x2y + xy2 + 2xy + 2y2 = 0 (14) Minkowski sum: A + B = {a + b | a ∈ A, b ∈ B}

1 x x2 x3 x4 y y2 y3 Qg Qf Qf + Qg

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 8 / 13

slide-12
SLIDE 12

Sparse resultants

Example on sparse polynomials

f = x2y − x2 + xy − x = 0 (13) g = x2y + xy2 + 2xy + 2y2 = 0 (14) Minkowski sum: A + B = {a + b | a ∈ A, b ∈ B}

1 x x2 x3 x4 y y2 y3 Qg Qf Qf + Qg

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 8 / 13

slide-13
SLIDE 13

Sparse resultants

Example on sparse polynomials

f = x2y − x2 + xy − x = 0 (13) g = x2y + xy2 + 2xy + 2y2 = 0 (14) Mixed volume: In two-dimensional space leads to: MV(A, B) = Vol(A + B) − Vol(A) − Vol(B). In our example MV(Qf, Qg) = 5 − 1 − 1 = 3.

1 x x2 x3 x4 y y2 y3 Qg Qf Qf + Qg

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 8 / 13

slide-14
SLIDE 14

Sparse resultants

Example on sparse polynomials

f = x2y − x2 + xy − x = 0 (13) g = x2y + xy2 + 2xy + 2y2 = 0 (14) BKK bound: The number of nontrivial solutions is at most equal to MV(Qf1, . . . , Qfn). In our example MV(Qf, Qg) = 3, i.e. at most three nontrivial solutions.

  • x

y

  • =

−1 1

  • ,
  • −1
  • ,
  • −2

1

  • ,
  • ,
  • 1

x x2 x3 x4 y y2 y3 Qg Qf Qf + Qg

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 8 / 13

slide-15
SLIDE 15

Hiding a variable

Hiding a variable

◮ System of n polynomials in n variables, but forming a resultant requires an

  • verconstrained system!

◮ Hide one of the variables (xn) in the coefficient field. New variables are x =

  • x1

· · · xn−1

⊤.    

. . . xpfip(x, xn) . . .

    = M(xn)    

. . . xq . . .

    =   

. . .

  

(15) ◮ Let (α, αn) be a solution, then M(αn) is singular and vector

  • · · ·

αq · · ·

⊤ lies in the

right kernel of M(αn).

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 9 / 13

slide-16
SLIDE 16

Hiding a variable

M(xn) (16)

  • row and column permutation
  • M11

M12(xn) M21(xn) M22(xn)

  • (17)

  • Gaussian elimination
  • M11

M12(xn) M′(xn)

  • (18)

Where M′(xn) = M22(xn) − M21(xn)M−1

11 M12(xn) is the Schur complement.

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 10 / 13

slide-17
SLIDE 17

Hiding a variable

  • M11

M12(αn) M′(αn) v v′

  • =
  • (19)

◮ M′(αn)v′ = 0 is a polynomial eigenvalue problem. Find v′ and αn. ◮ Then v = −M−1

11 M12(αn)v′.

◮ Recover α from

  • v

v′⊤.

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 11 / 13

slide-18
SLIDE 18

Application

Relative camera pose

◮ Minimal solver from 5 point matches. ◮ BKK bound on number of solution is 20. ◮ Eigendecomposition of matrix 20 × 20. ◮ Before D. Nist´ er [3] in 2004.

Table: Camera motion from point matches: running times are measured on a DEC Alpha 3000 except for the second system which is solved on a Sun Sparc 20.

[3] D. Nist´

  • er. An efficient solution to the five-point relative pose problem.
  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 12 / 13

slide-19
SLIDE 19

Bibliography

Bibliography

[1] John F. Canny and Ioannis Z. Emiris. A subdivision-based algorithm for the sparse resultant.

  • J. ACM, 47:417–451, 05 2000.

[2] Ioannis Z. Emiris and John F. Canny. Efficient incremental algorithms for the sparse resultant and the mixed volume.

  • J. Symb. Comput., 20:117–149, 08 1995.

[3] David Nist´ er. An efficient solution to the five-point relative pose problem. IEEE transactions on pattern analysis and machine intelligence, 26(6):0756–777, 2004.

  • P. Trutman (CIIRC)

A General Solver Based on Sparse Resultants August 30, 2019 13 / 13