# Methods for Solving Systems of Polynomial Equations

AI and Robotics

Oct 18, 2013 (4 years and 6 months ago)

83 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
-

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