Methods for Solving Systems of Polynomial Equations

unclesamnorweiganAI and Robotics

Oct 18, 2013 (3 years and 5 months ago)

64 views

Center for Machine Perception

Department of Cybernetics, Faculty of Electrical Engineering

Czech Technical University

in

Prague

Methods for Solving Systems of Polynomial
Equations

Zuzana Kúkelová

Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


2
/13

Motivation


Many problems in computer vision can be formulated using systems
of polynomial equations


5 point relative pose problem, 6 point focal length problem






Problem of correcting radial distortion from point correspondences






systems are not trivial
=
> special algorithms have to be designed to
achieve numerical robustness and computational efficiency


Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


3
/13

Polynomial equation in one unknown

-

Companion matrix


Finding the roots of the polynomial in one unknown, is equivalent to
determining the eigenvalues of so
-
called companion matrix


The
companion matrix

of the monic polynomial
in one unknown
x



is a

matrix defined as







The characteristic polynomial of
C(p)

is

equal to
p



T
he eigenvalues of
some matrix A

are precisely the roots of
its
characteristic polynomial




Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


4
/13

System of linear polynomial equations

-

Gauss elimination


System of
n

linear equations in
n

unknowns can be written as







We can represent this system in a matrix form


Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


5
/13


We can rewrite this






Perform Gauss
-
elimination on the matrix A => reduces the matrix A
to a triangular form






Back
-
substitution to find the solution of the linear system


System of linear polynomial equations

-

Gauss elimination

Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


6
/13

System of m polynomial equations in n
unknowns (non
-
linear)


A system of equations which are given by a set of
m
polynomials in
n

variables with coefficients from



Our goal is to solve this system



Many different methods


Groebner basis methods


Resultant methods



Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


7
/13

System of m polynomial equations in n
unknowns


An ideal


An
ideal
generated by polynomials


is the set
of polynomials of the form:




Contains all polynomials we can generate from F


All polynomials in the ideal are zero on solutions of F


Contains an infinite number of polynomials



-

generators of


Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


8
/13

Groebner basis method w.r.t. lexicographic
ordering


An ideal can be generated by many different sets of generators
which all share the same solutions









Groebner basis w.r.t. the lexicographic ordering which
generates the ideal
I

=
special set of generators which is easy to
solve
-

one of the generators is a polynomial in one variable only


Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


9
/13

Groebner basis method w.r.t. lexicographic
ordering


A system of initial equations
-

initial generators of
I


This system of equations can be written in a matrix form



M is the coefficient matrix








X

is the vector of all monomials



-

is a monomial


Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


10
/13

Groebner basis method w.r.t. lexicographic
ordering


Compute a Groebner basis w.r.t. lexicographic
ordering


Buchberger’s algorithm ~ Gauss elimination








Generator
-

polynomial in one variable only


Finding the roots of this polynomial using the companion matrix


Back
-
substitution to find solutions of the whole system

Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


11
/13

An Analogy



Solving system of linear

equations

System of equations

in triangular form

One polynomial equation

in one unknown

Gauss elimination

Solutions

Back
-
substitution

Solving system of

polynomial equations

Groebner basis

w.r.t lexicographic ordering

-

One polynomial equation

in one unknown

Buchberger’s algorithm

Solutions

Companion matrix +

Back
-
substitution

Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


12
/13

System of m polynomial equations in n
unknowns


An action matrix


For most problems
-

“Groebner basis method w.r.t. the lexicographic
ordering” is not feasible (double exponential computational
complexity in general)


Therefore for some problems


A Groebner basis
G
under another ordering, e.g. the graded reverse
lexicographic ordering is constructed


The properties of the
quotient ring

can be used


The “action” matrix of the linear operator of the
multiplication by a polynomial is constructed


The solutions to the set of equations
-

read off directly from the
eigenvalues and eigenvectors of this matrix


Polynomial

Equations

Gr
öbner

Basis

Action

Matrix

Solutions

Buchberger’s algorithm

Polynomial division

Eigenvectors

Zuzana K
ú
kelov
á

kukelova
@cmp.felk.cvut.cz


13
/13

An Analogy



Solving one Polynomial

Equation in one Unknown

Finding the Eigenvalues

of the Companion Matrix

Compute Companion

Matrix

Solutions

Solving System of

Polynomial Equations

Finding the Eigenvalues

of the Action Matrix

Compute Action Matrix in Quotient Ring A

(Polynomials modulo the Groebner basis)

Solutions

Requires a Groebner Basis


for Input Equations