View
228
Download
0
Tags:
Embed Size (px)
Citation preview
25/6/2006
Solving Multivariate Nonlinear Polynomial Systems
Massarwi Fady
Computer Aided Geometric Design (236716)
Spring 2006
25/6/2006
References "Computation of the solutions of nonlinear polynomial
systems", by E. C. Sherbrooke and N. M. patrikalakis. Computer Aided Geometric Design, Vol 10, No 5, pp 379-405, 1993
"Geometric Constraint Solver using Multivariate Rational Spline Functions", by G. Elber and M. S. Kim. The Sixth ACM/IEEE Symposium on Solid Modeling and Applications, Ann Arbor, Michigan, pp 1-10, June 2001.
"Subdivision methods for solving polynomial equations", by B. Mourrain and J. P. Pavone, Technical Report 5658, Inria, Sophia-Antipolis, 2005.
25/6/2006
Problem definition Given a set of n rational polynomial
functions of m variables:
And m dimensional box
Find solution such that
ni0 ),,.....,,( 21 mi uuuf
Su
0,..1: ufni i
],[]......,[],[ 2211 mm bababaS
mRS
25/6/2006
Definitions Multi Index I is an ordered m-tuple of non-negative
integers Example : if M=(1,1) then
Bernstein i’th polynomial of degree m :
Bernstein basis function determined by multi index I and bounded by multi index M is defined by:
miii ,....,, 21
1,10,11,00,0 wwwwwM
II
imimi uu
i
mub
)1()(,
)().......()()( ,2,1,, 2211 nmimimiMI ubububuBnn
25/6/2006
Problem definition Since each function f is polynomial it can be
represented by a basis change in Bernstein basis
Define the graph F of the function f as :
tscoefficien realarewwhere
uBwuf
iI
M
IMI
iIi
i
i
)()(
)(
,
)()(
)(
)(,,....,,)(,)( 21 ufuuuufuuF imii
25/6/2006
Problem definition Since
We can write
And write the graph F of each function as :
The set of V are the control points of F, this representation is much powerful and allows to use different properties of Bernstein basis ( like convex hull property )
u is a solution to the polynomial system if the point (u,0) contained in all the graphs Fi
m
imi xb
m
ix
0, )(
)(
)( )(,)(
k
k
M
IMIk
j
jj uB
m
iu
)()()(
2
2)(
1
1)(
,
)(
,,.....,,
)()( )(
)(
kIk
n
nkk
kI
MI
M
I
kIk
wm
i
m
i
m
ivwhere
uBvuF k
k
25/6/2006
Subdivision-based techniques Numerical methods to find areas (box) where a single
root ( solution ) could be found In each step, If the current box dimensions are larger
than some tolerance split it into two boxes and search in each of them recursively.
Advantages: Speed Stability Simple
Disadvantages: Designed for zero dimensional solution set -- No
guarantee that all the roots are found Doesn’t supply information on the root multiplicity
25/6/2006
Subdivision-based techniques We will review The following:
Subdivision while restricting the search domain PP ( projection polyhedron ) , LP (linear
programming ) - ( Sherbrooke & Patrikalakis) Subdivision with numerical improvements ( Elber
& Kim ) Usage examples
Further improvements ( Mourrain & Pavoni)
25/6/2006
Subdivision with domain restriction Representing the graph of each function in the
Bernstein basis allows us to use the convex hull property – The graph is contained in the convex hull of its coefficients ( vi )
If there is a solution for all the equations then the point should be contained in all the graphs, thus in the intersection of the convex hulls of the graphs coefficients
)(
)()()(
2
2)(
1
1)(
,
)(
,,.....,,
)( )(
)(
kIk
kIk
n
nkk
kI
MI
M
I
kIk
vCHF
wm
i
m
i
m
iv
BvuF k
k
)0,,...,()0,( 1 nuuu
25/6/2006
Algorithm Assume domain box is B = [0,1]n Form the convex hulls of all Fk and intersect them with
one another and with the hperplane un+1=0, call the intersection set A, if A is smaller than a tolerance stop.
A=A’X{0}, find a box B’=[a1,b1] X[a2,b2] X….. X[an,bn] that encloses A’
If B’ is not singificantly smaller than [0,1]n, split B into equally sizes sub domains and work with each sub domain separately
For each k, define new function f’k by
Can be computed by De Casteljau multivariate subdivision
Update B with B’ and continue from step 2
))(,....,)(,)(()( 22221111'
nnnnkk uabauabauabafuf
25/6/2006
Algorithm ( cont’d) Step 2 contains two heavy operations
Computing the convex hull in dimension n
Intersecting all the convex hulls
Actually what we need is the bounding box of the intersection of the convex hulls, this can be achieved in different simple way
25/6/2006
Algorithm ( updated ) (1) -Start with initial search box (2) - Perform transformation that brings the search
box to [0,1]n
(3) - Find a sub box of [0,1]n which contains the roots (4) - Use the reverse of the transformation used in
step 2 to determine if the sub box is too small in Rn, if yes there is a root there and report for the mid point of the box.
(5) - if the dimensions of the box is close to 1 , split the box into two parts in each dimension.
(6) - Go back to step 2, once for each box.
25/6/2006
Finding the Bounding Box of the intersection of the CHs Projected Polyhedron ( PP )
Find the width of the bounding box in each dimension by projecting it in that dimension
For dimension j: For each graph Fk project each of it’s control points u
to (uj,un+1) ( call it x-y plane ) Form the convex hull in 2d of the projected points Return as [aj,bj] the intersection of the convex hull
with the X axis in the projection plane ( between 0 and 1 for all the graphs ).
Finally the bounding box will be B = [a1,b1]X [a2,b2]X…… X[an,bn]
25/6/2006
Finding the Bounding Box of the intersection of the CHs
Linear Programming ( LP ) minimization function - If we look at the
i’th coordinate of the points lying in the feasible area , what is the smallest ( ai ), and what is the biggest ( bi )
Constrains – for each point x in the feasible area , it must satisfy xn+1 =0 For each k between 1 and n , x is contained
in the convex hull of Vk (the control points of Fk)
25/6/2006
Linear Programming Formally Minimization functions: Constrains
Each point u is in the convex hull
iAu
iiAu
i ubua
max,min
)(
)(
)(
)(
1.3
0.2
. 1
somefor ,
)(
)()(
)()(
)()()(
k
k
k
k
M
I
kI
M
I
kI
kI
M
Ijk
j
jkI
kI
M
I
kI
kI
c
wc
um
ic
into translates which
cvcu
25/6/2006
Linear Programming The unknowns are the coefficients The number of the unknowns is
)(kIc
n
k
kn
kk mmm1
)()(2
)(1 )1()1)(1(
25/6/2006
Analysis The algorithm terminates
The subdivision factor (p) < 1 =>
Linear convergence in the PP method
Quadratic convergence in the LP method
NpN :.0
25/6/2006
Linear convergence in the PP method
Given a box B=[a1,b1]x[a2,b2]x…x[an,bn] which contains one and only one simple root x0 of a system of polynomials f0,k:[0,1]nR where k ranges from 1 to n. let fk represent the subdivision of f0,k over B. Let the new box after executing one step of the PP method, denoted by B’=[a’1,b’1]x[a’2,b’2]x…x[a’n,b’n].Let j be an integer between 1 and n, and let
( the lengths of the j’th side ) then jjjj abab ''' and
)(' O
25/6/2006
Linear convergence in the PP method - Proof
Let and g(u) is the linear approximation of f,
Then the following holds :
M
IMII uBPuf )()( ,
M
IMII
j
n
jj
uBqg(u)
: as writtenbe can g u
fufug
)(
),0()0()(
,
1
size dimension the is where of tindependen
constance positive somefor qp II
,
,2
25/6/2006
Linear convergence in the PP method - Proof The projected control points of the graphs of the functions
f, g ( (u,f(u)), (u,g(u)) ), are separated by vertical distances no more than
The projection of G on the (uj,un+1) plane is planar region ( because G is linear approximation ). For a fixed uj, the difference between the maximum y-coordinate and minimum y coordinate of this region is given by:
This is obtained from g(x1)-g(x0), where x0={0,0,…,xj,0,0,…,0} , x1={1,1,…,xj,1,1,…,1}
2
2 II qp
n
jii i
k
u
fdy
,1
)0(
25/6/2006
Linear convergence in the PP method - Proof
Then we can say that the whole projected control points of F are enclosed by two parallel lines that has a distance of from each other and slope of
Then if we look at the intersection of these two lines with the x axis ( between 0 and 1), the distance between the intersections ( which is translated to the box dimension later ) is :
)0(
2 2
juf
dydx
22dy)0(
ju
f
25/6/2006
Linear convergence in the PP method - Proof Since
But we do scaling to transform the box to Rn, by scaling by , and this is the new box we work with so the new box dimension is
)0(
2 2
juf
dydx
)1(
)(
),(
Odx
Ou
f
Ody
j
)(O
)()0()0( ,0
,1i
i
k
i
kn
jii i
k au
f
u
f and
u
fdy
25/6/2006
Quadratic convergence in the LP method Given a box B=[a1,b1]x[a2,b2]x…x[an,bn] which
contains one and only one root u0 of a system of polynomials f0,k:[0,1]nR where k ranges from 1 to n. let fk represent the subdivision of f0,k over B. After executing one step of the LP method, and let the new box denoted by B’=[a’1,b’1]x[a’2,b’2]x…x[a’n,b’n].Define . There exists a neighborhood U of u0 and a depending only on U such that if and
Let
Then
kkkkkk a'b'' and ab 0
UB 0
,...,,
,...,,det
21
21
n
n
xxx
fff
knkk
nk 'max',max 11
2'
25/6/2006
Quadratic convergence in the LP method-proof The linearization of the n fk is
Lets denote by p={p1,p2,…,pn,0} the intersection ( in Rn+1 ) of all gk (k=1..n) with xn+1=0 ( i.e g1=g2=…=gn=xn+1=0 ) ( such a point exists since the Jacobian matrix is not zero )
Pick a point q=(q0,q1,…,qn,0) that lies in the intersection of F1, F2,…, Fn with hyperplane xn+1=0
We know that Substitute (q0, q1,…, qn) for x, since all fk are zero there,
then
)0()0()(1
n
j j
kjkk x
fxfxg
nkk [0,1]x Oxgxf ),()()( 2
)()( 2Oxgk
25/6/2006
Quadratic convergence in the LP method-proof
letting rk=gk(q1,q2,…,qn), then there exists n points rk=(q1,q2,…,qn,rk) such that rk lies on linear approximation of Fk,
For point p we know that Subtracting * and **, and define
we get
n
j j
kjkk x
fqfr
1
)0()0( (*)
n
j j
kjk x
fpf
1
)0()0(0 (**)
kkk pq )0(
1
n
j j
kjk x
fr
25/6/2006
Quadratic convergence in the LP method-proof By Cramer’s rule we get ( assuming the
Jacobian matrix is non singular ) that where J is the Jacobian matrix , and Jk is the Jacobian matrix after exchanging k’th column with the column vector (r1,r2,…,rn)T
Since then and
since we get Then
J
J kk det
det
)(Ox
f
j
k )()det( nOJ
)( 2Ork )()det( 1 nk OJ
)( Ok
)0(1
n
j j
kjk x
fr
25/6/2006
Quadratic convergence in the LP method-proof q is chosen arbitrary and its distance from other
fixed point ( p ) is , then the distance between two points in the bounding box we want is also
Then the length of each side of the bounding box is also
The real size then ( in Rn ) is multiplied by factor of the bounding box ,then the dimensions of the new bounding box is
This hold for all K , then
)(O
)(O
)(O
)(O
)()()('' 2 OOOab kk
2'
25/6/2006
Subdivision with numerical improvements Subdivide the multivariate functions bounded within a
certain resolution Using the convex hull property if for a constrain Fi all
the control points have the same sign then it won’t have a roots.
For each cell with dimensions lower than the wanted resolution report for a root ( center of the cell )
Subdivision is terminated when it is known that there is an isolated root in the domain, in this case Newton-Raphson iterations is applied ( with quadratic convergence )
If the zero set has a dimension larger than 0, then fit a multivariate surface to the set of the discrete points found by means of least squares ( minimizing the L2 norm )
25/6/2006
Numerical improvement of the solution
for a given approximated solution u0 found , such that for each constrain Fi(u0)~0, using first order approximation, each graph Fi constrains the solution to be on the hyperplane which is defined in the point u0 as following : Consider the normal to the surface Fi(u) at the
point u0 :
Then the hyper plane at the point u0 is defined as
)(0 uPui
1,,...,,)(21
0m
iiii u
F
u
F
u
Fun
000 ),(),()(0 uunuunup iiui
25/6/2006
Numerical improvement of the solution
There are m such planes , and with the additional constraint that the component um+1=0, we end with n+1 linear equations( with m+1 variables)
If n=m then the system is full constrained and there is one solution
Otherwise if n < m a least square solution is found in an L2-norm ( finds the closest solution to u0 from the possible solutions set)
0)(0 upui
Uniqueness of a solution If it is known that there is a single solution
then it would be better to stop the subdivision and move to more efficient numerical procedure for root finding.
Definitions: Cone: normal cone of hypersurface Fi : set of all
possible normal vectors on Fi . Complementary (Tangent) cone:
2222cos,|),( vuvuuvC
niC
)90,(),(
0|ni
ni
ci
ni
ni
ni
ni
mci
vCC then vCC if
wu, that suchCuRwC
25/6/2006
Uniqueness of a solution Theorm:
Given m implicit hypersurfaces Fi(u)=0 . i=1,…m in Rm, there is at most one common solution if
Proof: Consider u0 (in Rm) is a common solution of the m
equations Fi(u)=0. Consider , from the relation we have
}0{1
ci
m
ic
)( 0uC ci
)(0)(| 0uCuFu cii
0011
)(0)(| uuCuFu ci
m
ii
m
i
25/6/2006
Examples Ray-Traps
Definition: Given a set of n planar curves, it’s ray-trap of length n is a set
of n points {Pi=Ci(ui)} such that a ray bouncing from Pi towards P(i+1)mod n will be reflected toward P(i+2)mod n
The incoming ray from Pi-1 and the outgoing ray towards Pi+1
should form an identical angle with the normal of Ci at Pi
This can be written as:
)(),()(
)()(
)(),()(
)()(
)(),()(
,,,
11
11
11
11
1
1
1
1
iiiiii
iiii
iiiiii
iiii
iiiiii
ii
iii
ii
iii
uxuyuN
as N take can we
uCuC
uNuCuC
uCuC
uNuCuC
orpp
Npp
pp
Npp
25/6/2006
Examples Surface-Surface
Bisectors Let S1(u,v) and S2(u,v)
be two regular rational surfaces in R3 The points B=(x,y,z) on the bisector surface of S1 and S2
must satisfy the following constraints
,),(),,(),(),,(
.0),(
),,(
,0),(
),,(
,0),(
),,(
,0),(
),,(
2211
22
22
11
11
tsSBtsSBvuSBvuSB
dt
tsdStsSB
ds
tsdStsSB
dv
vudSvuSB
du
vudSvuSB
25/6/2006
Examples-Bisectors Let
Then we can choose and the problem is reduced to
v
vuS
u
vuSvun
),(),(),( 21
1
),(),( 11 vunvuSB
),(),(),,(),(),(
),(),(),,()),(),((2
,,,
0),(
,,,,
0),(
,,,,
21211
21121
2
2
tsSvuStsSvuSvun
tsSvuSvuntsSvuS
tsvu
where
t
tsStsvu
s
tsStsvu
25/6/2006
Examples-Bisectors
4 variables with 2 equations – under constrained problem
Can fit a bi-variate surface to discrete points sampled on the solution space.
25/6/2006
Further improvements Preconditioning
Transformation of the system f=0 into equivalent system Mf=0 where M is nXn non singular matrix
global transformation Useful when two or more functions have closed
graphs on the domain, aims to increase the distance between them
The distance between two graphs is not trivial, so it is replaced by the distance between the vectors of the Bernstein basis coefficients
Local straightening: Interesting situation of reduction is when the
zero-set of the function fi are orthogonal to the xi direction
25/6/2006
Preconditioning-global transformation If then define the inner product between
functions
Let and let E be a matrix of unitary eigenvectors of Q. Then f’=Ef is a system of polynomials which are orthogonal for the inner product above.
Proof:
M
IMI
kIk uBbuf )()( ,
)(
M
I
jI
iIji bbff )()(,
njiji ffQ
,0
,
hpd) semiis Q ( Q of values eigen positive the are where
diagEQEEEffff
Qff
i
nTTTT
T
0
),...,,()')('( 21
25/6/2006
Preconditioning- Local straightening
Local straightening
A better domain reduction can be done when the zero level of the functions fi are orthogonal to the xi axis.
This can be done by transforming the system f=0 in order to be closed to case (b). Transform locally the system into a system Jf-1(u0)f, where Jf is the Jacobian matrix of f at the point u0
njijif ufxuJ
,000 )()(
25/6/2006
Further improvements - Reduction For a function f and j=1,…,n let
Then For any root u=(u1, u2 ,…, un) of the equation f(u)=0,
we have where t1/t2 is either a root of mj(f;uj)=0 or Mj(f;uj)=0 in [aj,bj]
or aj/bj if mj(f;uj)=0/ Mj(f;uj)=0 has no roots in [aj,bj] mj(f;uj)<=0<=Mj(f;uj)
j
j
j
jnkk
j
j
j
jnkk
d
ij
idiiijkdijj
d
ij
idiiijkdijj
uBbufM
uBbufm
0,...,,,0
0,...,,,0
)(max;
)(min;
21
21
);()();( jjjj ufMufufm
21 tut j
25/6/2006
Further improvements Reduction
Similar to the PP ( projected Polyhedron ) , reduce the domain of search
PP is based on the convex hull property The improvement consists in computing the
first/last root of the polynomial mj(fk,uj)/Mj(fk,uj) in the interval [aj,bj] and keep the intervals [t1,t2]
Analysis shows that with these improvements we get a quadratic convergence.