A Special Homotopy Continuation Method For A Class of Polynomial Systems
Yu Wang, Wenyuan Wu, Bican Xia

TL;DR
This paper introduces a novel homotopy continuation method combining polyhedral and linear product techniques to efficiently compute solutions of specific polynomial systems, with applications in real algebraic geometry.
Contribution
It proposes a new homotopy method with a root bound between total degree and mixed volume, and implements it as the LPH program for improved efficiency.
Findings
The method computes all isolated solutions efficiently.
The root number bound is easily calculated and tighter than traditional bounds.
The algorithm can find witness points on real variety components.
Abstract
A special homotopy continuation method, as a combination of the polyhedral homotopy and the linear product homotopy, is proposed for computing all the isolated solutions to a special class of polynomial systems. The root number bound of this method is between the total degree bound and the mixed volume bound and can be easily computed. The new algorithm has been implemented as a program called LPH using C++. Our experiments show its efficiency compared to the polyhedral or other homotopies on such systems. As an application, the algorithm can be used to find witness points on each connected component of a real variety.
| T1 | T2 | RAT | ||
|---|---|---|---|---|
| 2 | 1 | 0.125s | 0.094s | 1.32 |
| 3 | 1 | 0.125s | 0.109s | 1.14 |
| 3 | 2 | 0.125s | 0.109s | 1.14 |
| 4 | 1 | 0.125s | 0.109s | 1.14 |
| 4 | 2 | 0.156s | 0.156s | 1.00 |
| 4 | 3 | 0.202s | 0.265s | 0.76 |
| 5 | 1 | 0.125s | 0.109s | 1.14 |
| 5 | 2 | 0.187s | 0.202s | 0.93 |
| 5 | 3 | 0.390s | 0.655s | 0.59 |
| 5 | 4 | 0.687s | 1.280s | 0.54 |
| 6 | 1 | 0.140s | 0.109s | 1.28 |
| 6 | 2 | 0.281s | 0.328s | 0.86 |
| 6 | 3 | 0.76s | 1.68s | 0.45 |
| 6 | 4 | 1.61s | 4.36s | 0.37 |
| 6 | 5 | 1.90s | 6.59s | 0.29 |
| 7 | 1 | 0.14s | 0.10s | 1.29 |
| 7 | 2 | 0.344s | 0.56s | 0.61 |
| 7 | 3 | 1.3s | 3.82s | 0.34 |
| 7 | 4 | 3.7s | 14.1s | 0.27 |
| 7 | 5 | 6.318s | 27.9s | 0.23 |
| 7 | 6 | 6.006s | 27.6s | 0.21 |
| 8 | 1 | 0.15s | 0.15s | 1.00 |
| 8 | 2 | 0.54s | 0.73s | 0.74 |
| 8 | 3 | 2.29s | 7.2s | 0.31 |
| 8 | 4 | 8.018s | 34.1s | 0.23 |
| 8 | 5 | 17.6s | 91.2s | 0.19 |
| 8 | 6 | 23.7s | 153s | 0.15 |
| 8 | 7 | 19.4s | 128s | 0.15 |
| 9 | 1 | 0.2s | 0.18s | 1.08 |
| 9 | 2 | 0.7s | 1.2s | 0.58 |
| 9 | 3 | 4.1s | 13.1s | 0.31 |
| 9 | 4 | 16.1s | 1m19s | 0.20 |
| 9 | 5 | 46.5s | 4m29s | 0.17 |
| 9 | 6 | 1m20s | 9m38s | 0.138 |
| 9 | 7 | 1m30s | 11m10s | 0.135 |
| 9 | 8 | 59.9s | 7m52s | 0.126 |
| 10 | 1 | 0.23s | 0.18s | 1.25 |
| 10 | 2 | 0.98s | 1.9s | 0.51 |
| 10 | 3 | 5.8s | 24.8s | 0.24 |
| 10 | 4 | 31.1s | 2m53s | 0.18 |
| 10 | 5 | 1m46s | 11m30s | 0.15 |
| 10 | 6 | 3m41s | 29m15s | 0.13 |
| 10 | 7 | 5m10s | 48m32s | 0.107 |
| 10 | 8 | 4m57s | 48m27s | 0.102 |
| 10 | 9 | 3m2s | 30m7.553s | 0.1 |
| Ex | term | #1 | #2 | # | T1 | T2 | RAT | |||
| C2 | 5 | 4 | 4-5 | 7-32 | 2*1767 | 692 | 383 | 16.6s | 19.4s | 0.85 |
| M3 | 9 | 5 | 2 | 2-7 | 2*2240 | 368 | 32 | 69s | 6s | 11 |
| G2 | 5 | 2 | 4 | 8-9 | 2*1080 | 17 | 15 | 8.4s | 0.2s | 31.8 |
| H1 | 8 | 6 | 1-3 | 2-4 | 2*400 | 15 | 15 | 9.8s | 0.18s | 52 |
| H2 | 8 | 5 | 2-4 | 3-5 | 2*12320 | 148 | 80 | 5m49s | 1.2s | 267 |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsPolynomial and algebraic computation · Advanced Numerical Analysis Techniques · Cancer Treatment and Pharmacology
\floatsetup
[table]capposition=top \newfloatcommandcapbtabboxtable[][\FBwidth]
11institutetext: LMAM & School of Mathematical Sciences, Peking University
11email: [email protected], [email protected]
22institutetext: Chongqing Inst. of Green and Intelligent Techn.
Chinese Academy of Sciences
22email: [email protected]
A Special Homotopy Continuation Method For A Class of Polynomial Systems
††thanks: The work is partly supported by the projects NSFC Grants 11471307, 11290141, 11271034 and 61532019.
Yu Wang 11
Wenyuan Wu Corresponding author.22
Bican Xia 11
Abstract
A special homotopy continuation method, as a combination of the polyhedral homotopy and the linear product homotopy, is proposed for computing all the isolated solutions to a special class of polynomial systems. The root number bound of this method is between the total degree bound and the mixed volume bound and can be easily computed. The new algorithm has been implemented as a program called LPH using C++. Our experiments show its efficiency compared to the polyhedral or other homotopies on such systems. As an application, the algorithm can be used to find witness points on each connected component of a real variety.
1 Introduction
In many applications in science, engineering, and economics, solving systems of polynomial equations has been a subject of great importance. The homotopy continuation method was developed in 1970s [1][2] and has been greatly expanded and developed by many reseachers (see for example [3][4][5][6][7]). Nowadays, homotopy continuation method has become one of the most reliable and efficient classes of numerical methods for finding the isolated solutions to a polynomial system and the so-called numerical algebraic geometry based on homotopy continuation method has been a blossoming area. There are many famous software packages implementing different homotopy methods, including Bertini[8], Hom4PS-2.0[9], HOMPACK[10], PHCpack[11], etc.
Classical homotopy methods compute solutions in complex spaces, while in applications, it is quite common that only real solutions have physical meaning. Computing real roots of an algebraic system is a difficult and fundamental problem in real algebraic geometry. In the field of symbolic computation, there are some famous algorithms dealing with this problem. The cylindrical algebraic decomposition algorithm [12] is the first complete algorithm which has been implemented and used successfully to solve many real problems. However, in the worst case, its complexity is of doubly exponential in the number of variables. Based on the ideas of Seidenberg [13] and others, some algorithms for computing at least one point on each connected component of an real algebraic set were proposed through developing the formulation of critical points and the notion of polar varieties, see [14][15][16] and references therein. The idea behind is studying an objective function (or map) that reaches at least one local extremum on each connected component of a real algebraic set. For example, the function of square of the Euclidean distance to a randomly chosen point was used in [17][18]. On the other hand, some homotopy based algorithms for real solving have been proposed in [19][20][21][22][23][24]. For example, in [23], a numerical homotopy method to find the extremum of Euclidean distance to a point as the objective function was presented. More recently, the Euclidean distance to a plane was proposed as a linear objective function in [25].
In this paper, we follow the work of [25][26] to extend complex homotopy methods to finding witness points on the irreducible components of real varieties. To obtain such witness points, we first need to solve a special class of polynomial systems. Combining the polyhedral homotopy and the linear product homotopy, we give a special homotopy method for solving the system of that type. The root number bound of this method is not only easy to compute but also much smaller than the total degree bound and close to the BKK bound [27] when the polynomials defining the algebraic set is not very sparse. This key observation enables us to design an efficient homotopy procedure to obtain critical points numerically. The ideas and algorithms we proposed in this article avoid a great number of divergent paths to track compared with the total degree homotopy and save the great time cost for mixed volume computation compared with the polyhedral homotopy. The new algorithm has been implemented as a program called LPH using C++. Our experiments show its efficiency compared to the polyhedral or other homotopies on such systems.
The rest of this paper is organized as follows. Section 2 describes some preliminary concepts and results. Section 3 introduces a special type of polynomial systems we are considering. The new homotopy for these polynomial systems is also presented. It naturally leads to an algorithm which is described in Section 4. Based on this algorithm, in Section 5, we present a method to find real witness points of positive dimensional varieties, together with an illustrative example. The experimental performance of the software package LPH, which is an implementation of the method in C++, is given in Section 6.
2 Preliminary
2.1 Algebraic Sets and Genericity
For a polynomial system , let and be the set of complex solutions and the set of real solutions of , respectively. A set is called an algebraic set if , for some polynomial system .
An algebraic set is irreducible if there does not exist a decomposition with of as a union of two strict algebraic subsets. An algebraic set is reducible, if there exist such decomposition. For example, the algebraic set is consisting of the two coordinate axes, and is obviously the union of and , hence reducible.
For an irreducible algebraic set , the subset of smooth (or manifold) points is dense, open and path connected (up to the Zariski topology) in . The dimension of an irreducible algebraic set is the dimension of as a complex manifold.
Let denote the Jacobian matrix of evaluated at . By the Implicit Function Theorem, for an irreducible algebraic set defined by a reduced system , . When , the system is said to be a square system. In this case, a point is nonsingular if , and singular otherwise.
On irreducible algebraic set, we can define the notion of genericity, adapted from[6].
Definition 1
Let be an irreducible algebraic set. Property P holds generically on , if the set of points in that do not satisfy property P are contained in a proper algebraic subset of . The points in are called nongeneric points, and their complements are called generic points.
Remark 1
From the definition, one sees that the notion of generic is only meaningful in the context of property P in question.
Every algebraic set has a (uniquely up to reordering) expression with irreducible and for . And are the irreducible components of . The dimension of an algebraic set is defined to be the maximum dimension of its irreducible components. An algebraic set is said to be pure-dimensional if each of its components has the same dimension.
2.2 Trackable Paths
In homotopy continuation methods, the notion of path tracking is fundamental, the following definition of trackable solution path is adapted from [28].
Definition 2
Let be polynomial in and complex analytic in , and let be nonsingular isolated solution of , we say is trackable for from 0 to 1 using if there is a smooth map such that , and for , is a nonsingular isolated solution of . The solution path started at is said to be convergent if , and the limit is called the endpoint of the path.
2.3 Witness Set and Degree of an Algebraic Set
Let be a pure -dimensional algebraic set, given a generic co-dimension affine linear subspace , then consists of a well-defined number of points lying in . The number is called the degree of and denoted by . We refer to as a set of witness points of , and call the associated -slicing plane, or slicing plane for short [6].
It will be convenient to use the notations adapted from ([6],Chapter 8), when we prove the theorems in Section 3.
Let be the dimensional vector space having basis elements with complex coefficients. That is, a point in this space may be written as , with for . Note that we have not specified anything about the basis elements, it could be individual variables, monomials, or polynomials. 2. 2.
Let be the product of two sets, that is, the set . In Section 3 we take this product as the image inside the ring of polynomials; that is, is just the product of two polynomials. 3. 3.
Define . Accordingly, we have . 4. 4.
For repeated products, we use the shorthand notations ,, and similar for three or more products. 5. 5.
For a square polynomial system , we denote by the mixed volume of the system .
2.4 Critical Points
Let be an algebraic set defined by a reduced polynomial system , and objective function is polynomial function restricted to .
Definition 3
A point is a critical point of if and only if and , where is the gradient vector of evaluated at .
Let denote the zero dimensional critical sets of . One way to compute the critical points is to introduce auxiliary unknowns and consider a zero dimensional variety and then project onto . We use Lagrange Multipliers to define a squared system as follows
[TABLE]
Note that if is a critical point of , then there exist , such that by the Fritz John condition[29]. In the affine patch where , the system becomes a square system, and its solution projects to critical point . We will use system (1) in Section 5 with an objective function defined by a linear function, and consider the affine patch where , to find at least one point on each component of .
3 Main Idea
In this section, we give a description of our idea. First we introduce a family of polynomial equations that we will be considering.
We consider the following class of polynomial systems:
[TABLE]
where
are polynomials in , and is a pure dimension algebraic set in . 2. 2.
J=\left({\begin{array}[]{*{20}{c}}{{g_{11}}}&\cdots&{{g_{1k}}}\\ \vdots&\ddots&\vdots\\ {{g_{n1}}}&\cdots&{{g_{nk}}}\end{array}}\right) and are polynomials in with . 3. 3.
is a nonzero constant vector in , are unknowns, and .
Remark 2
Note that, for any invertible matrix , and have the same solutions. It’s easy to know that there exists an invertible matrix such that . So without loss of generality, we may assume that . Then, has equations in and one equation in .
Theorem 3.1
Let be given as in (2), , and where . for ; where are linear functions in , with randomly chosen coefficient and are homogeneous linear functions in , , and . be the homotopy defined by where is a randomly chosen complex number for Gamma Trick (see [6] Chapter 7 for details). Then, generically the following items hold,
The set of roots of is finite and each is a nonsingular solution of . 2. 2.
The number of points in is equal to the maximum number of isolated solutions of as coefficients of , , (, ) and vary over . 3. 3.
The solution paths defined by starting, with , at the points in are trackable.
Proof
As for item 1, since has equations only in , and is a pure dimension algebraic set in . To solve system , it needs only linear functions in from different with to determine . is a square system, is a finite witness set for algebraic set , and each of the points is a nonsingular solution of (see [6] Chapter 13 for details). And, we finally determine by solving a square linear equations. As for item 2, and item 3, it’s a trivial deduction of Coefficient-Parameter Continuation [30].∎
Remark 3
From the proof of Theorem 3.1, the number of points of the finite set is the degree of , and is independent of the choice of . Thus, based on the number of different choices of , and item 2, we can give a root count bound of system as in the following theorem, which is similar to the bound in [26].
Theorem 3.2
For a system as in (2). The number of complex root of this system is bounded by
[TABLE]
where is the degree of .
Due to Theorem 3.1, its proof and the remarks, we can design an efficient procedure to numerically find the isolated solutions of system in the form of (2). First, we solve a square systems , where are randomly generated linear functions . Then for each group of linear functions chosen in from different with , we construct linear homotopy from to , starting from points of , and solve the square linear equation of respectively. Let be the set consist of all the pairs of and , i.e. . Finally construct linear homotopy starting from points in , thus the endpoints of the convergent paths of homotopy are isolated solutions of system . We put specific description of this procedure in the next section.
4 Algorithm
From Theorem 3.1, its proof and Remarks 2 & 3, we propose an approach for computing isolated solutions of system as described in the end of last section. For consideration of the sparsity, we use the polyhedral homotopy method for solutions of the square system . Actually, we use polyhedral homotopy method only once. Now we describe our algorithms.
Remark 4
\#C=\left({\begin{array}[]{*{20}{c}}{n-1}\\ {n-k}\end{array}}\right) , and in Step 5, has and only has entries . When , we choose linear equation in , and there are candidates to choose. It adds up to be \left({\begin{array}[]{*{20}{c}}{n-1}\\ {n-k}\end{array}}\right){d^{n-k}} different . Each has the same number of isolated roots as , so homotopy in Step 13 will have no path divergent. Thus we have \left({\begin{array}[]{*{20}{c}}{n-1}\\ {n-k}\end{array}}\right){d^{n-k}}D points in , which is the root bound we mention in Theorem 3.2. It would happen that some of the homotopy paths divergent in Step 16, the method of end games for homotopy should be used [31][32][33][34].
5 Real Critical Set
In this section, we will combine the LPH algorithm in Section 4 and methods in [25] to compute a real witness set which has at least one point on each irreducible component of a real algebraic set, and give an illustrative example.
5.1 Critical Points on a Real Algebraic Set
We make the following assumptions (adapted from [25]). Let be a polynomial system, and in satisfying the so-called Full Rank Assumption:
has dimension for ; 2. 2.
the ideal is radical for .
Under these assumptions, has rank for a generic point for .
The main problem we consider is finding at least one real witness point on each real dimensional components of . For this purpose, we choose in Definition 3 to be a linear function with , where is a random vector in , and is a random real number. Then system (1) becomes
[TABLE]
It may happen that there is no critical points of in some connected component of . In that case, we add to and construct a system with equations
[TABLE]
Then recursively, we choose another linear function , compute the critical points of with respect to ; and so on.
We give a concrete definition of the set of real witness points we are going to compute (see [25]).
Definition 4
Let be a polynomial system, , and in satisfying Full Rank Assumption. and defined as (4) and (5). We define as follows:
if ; 2. 2.
if .
It is obvious from the definition that we can recursively solve the square system (4), and apply plane distance critical points formulation of to finally get the set of witness points which contains finitely many real points on , and there is at least one point on each connected component of . Since the formulation introduces auxiliary unknowns, it increases the size of the system and leads to computational difficulties. For example, when and , the size of system (4) becomes , which is challenging for general homotopy software. Combining the LPH algorithm, Theorem 3.1 and Theorem 3.2, we have the following algorithm and an upper bound of number of points in , as in [26].
Remark 5
Algorithm 2 is essentially a recursive calling of Algorithm 1.
Theorem 5.1
([26] Theorem 2.1) For a system with variables and degrees for . The number of complex root of system (4) is bounded by
[TABLE]
*where and , is the degree of the pure dimensional component of .
Moreover, the total number of points in is bounded by*
[TABLE]
Obviously we have the following inequalities:
[TABLE]
If is dense, the equalities hold. And if is sparse, they vary considerably most of the time. For example, let with . We have , \left({\begin{array}[]{*{20}{c}}{n-1}\\ {k-1}\end{array}}\right){(d-1)^{n-k}}D=28, \left({\begin{array}[]{*{20}{c}}{n-1}\\ {k-1}\end{array}}\right){(d-1)^{n-k}}\prod\limits_{i=1}^{k}{{d_{i}}}=36, and .
5.2 Illustrative Example
In this subsection, we present an illustrative example for Algorithm 2.
Example 1
Consider the hypersurface defined by , . Clearly, is the combination of a cubic ellipse , and a cubic curve , as plotted in Fig. 1. We show how to compute by Algorithm 2.
- –
For computing , we randomly choose a line in and solve by polyhedral homotopy, which follows paths. Then to compute by linear homotopy, we follow \left({\begin{array}[]{*{20}{c}}{2-1}\\ {2-1}\end{array}}\right){(6-1)^{2-1}}6=30 convergent paths, and for by linear homotopy, we follow 30 paths, of which 6 are convergent and 19 divergent. Then
[TABLE]
- –
For computing , we solve by polyhedral homotopy, with and
[TABLE]
So , which has at least one point in each connected component of as in Fig. 1.
6 Experiment Performance
As shown in Section 5, to compute the set , the key and most time consuming steps are solving the system in Algorithm 1. In this section, given , we solve the square system . We compare our program LPH which implements Algorithm 1 to Hom4PS-2.0 (available at http://www.math.msu.edu/ li). All the examples were computed on a PC with Intel Core i5 processor (2.5GHz CPU, 4 Cores and 6 GB RAM) in the Windows environment. We mention that LPH is a program written in C++, available at http://arcnl.org/PDF/LHP.zip, and an interface of Maple is provided on this site.
6.1 Dense Examples
In Table 1, we provide the timings of LPH and Hom4ps-2.0 for solving systems , where consists of dense polynomials of degree 2, and . T1 ,T2 are the the timings for LPH and Hom4ps-2.0, respectively, and RAT is the ratio of T1 to T2. ‘overflow’ means running out of memory. When T2=overflow, we set RAT=.
It may be observed that LPH is much faster than Hom4ps-2.0 when . Note also that LPH is a little bit slower than Hom4ps-2.0 when . The main reason is obvious. That is, the root number bound of LPH, i.e. \left({\begin{array}[]{*{20}{c}}{n-1}\\ {n-k}\end{array}}\right){(d-1)^{n-k}}D, is close to the mixed volume when is dense but the computation of is very time-consuming.
6.2 Sparse Examples
In Table 2, we provide the timings of LPH and Hom4ps-2.0 on sparse examples: Czapor Geddes2, Morgenstern AS(3or), Gerdt2, Hairer1, and Hawes2 which are available at : http://www-sop.inria.fr/saga/POL/. #1 and #2 is the number of curves followed by LPH and Hom4ps-2.0, respectively. # is the number of roots of the Jacobian systems constructed from the examples. ‘’ means the minimal and maximal degree of the example. “term” means the minimal and maximal number of terms of the example. T1 and T2 are the timings of LPH and Hom4ps-2.0, respectively. RAT means the ratio of T1 to T2.
Note that LPH is much slower than Hom4ps on these sparse examples. The main reason is that LPH pays the overhead cost for the and homotopy
[TABLE]
Moreover, LPH executes 2*\left({\begin{array}[]{*{20}{c}}{n-1}\\ {k-1}\end{array}}\right){(d-1)^{n-k}}D times of curve following, while Hom4ps does only times of curve following. \left({\begin{array}[]{*{20}{c}}{n-1}\\ {k-1}\end{array}}\right){(d-1)^{n-k}}D is not tight for these sparse examples and much greater than .
6.3 RAT/Density
In Fig. 2, we present the changes of ratio of T1 to T2 as terms increase. We randomly generate with different and degrees, and increase the number of terms from 2 to dense.
It can be observed that, when the polynomials are not very sparse, e.g. the number of terms are more than of \left({\begin{array}[]{*{20}{c}}{n+d}\\ {d}\end{array}}\right), LPH is faster than Hom4ps-2.0. Actually, when the polynomials are not very sparse, the root number bound \left({\begin{array}[]{*{20}{c}}{n-1}\\ {k-1}\end{array}}\right){(d-1)^{n-k}}D is close to .
7 Acknowledgement
We gratefully acknowledge the very helpful suggestions of Hoon Hong on this paper with emphasize on Section 6. We also thank Changbo Chen for his helpful comments.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Garcia, C.B., Zangwill, W.I.: Finding all solutions to polynomial systems and other systems of equations. Mathematical Programming 16 (1) (1979) 159–176
- 2[2] Drexler, F.J.: Eine methode zur berechnung sämtlicher lösungen von polynomgleichungssystemen. Numerische Mathematik 29 (1) (1977) 45–58
- 3[3] Sommese, A.J., Verschelde, J., Wampler, C.W.: Numerical algebraic geometry. In: The Mathematics of Numerical Analysis, volume 32 of Lectures in Applied Mathematics, AMS (1996) 749–763
- 4[4] Allgower, E.L., Georg, K.: Introduction to numerical continuation methods. Reprint of the 1979 original. Society for Industrial and Applied Mathematics (2003)
- 5[5] Li, T.: Numerical solution of polynomial systems by homotopy continuation methods. In: Handbook of Numerical Analysis. Volume 11 of Handbook of Numerical Analysis. Elsevier (2003) 209 – 304
- 6[6] Sommese, A.J., Wampler, C.W.: The numerical solution of systems of polynomials arising in engineering and science /. World Scientific, (2005)
- 7[7] Morgan, A.: Solving Polynominal Systems Using Continuation for Engineering and Scientific Problems. Society for Industrial and Applied Mathematics, Philadelphia, PA, USA (2009)
- 8[8] Bates, D.J., Haunstein, J.D., Sommese, A.J., Wampler, C.W.: Numerically Solving Polynomial Systems with Bertini. Society for Industrial and Applied Mathematics, Philadelphia, PA, USA (2013)
