Title: Searching for the Minimal B
1Searching for the Minimal Bézout Number Lin
Zhenjiang, Allenzjlin_at_cse.cuhk.edu.hk Dept. of
CSE, CUHK 3-Oct-2005
2- Polynomial system problem
- Homotopy method
- Bézout theory and minimal Bézout number
- Problems
- Tabu search method for minimal Bézout number
searching - Monte Carlo method for Bézout number calculating
- Conclusion
3- Polynomial system problem
- Homotopy method
- Bézout theory and minimal Bézout number
- Problems
- Tabu search method for minimal Bézout number
searching - Monte Carlo method for Bézout number calculating
- Conclusion
4Polynomial system problem
Mission Find out all solutions of P(X).
5Application very common in many engineering
fields
- formula construction,
- geometric intersection problems,
- computation of equilibrium states,
- etc.
6- Polynomial system problem
- Homotopy method
- Bézout theory and minimal Bézout number
- Problems
- Tabu search method for minimal Bézout number
searching - Monte Carlo method for Bézout number calculating
- Conclusion
7Homotopy method
Construct Q(x) that satisfy the conditions
- The solutions of Q(x) 0 are either known or
easy to known - When 0t 1, the solutions of H(x,t) is consist
of finite number of curves with parameter t - Each solution of H(x, 1) P(x) 0 can be
obtained by tracking curves starting from t 0.
8Figure 1 Illustration of Homotopy method
Mission Construct Q(X) with minimal number of
solutions.
9- Polynomial system problem
- Homotopy method
- Bézout theory and minimal Bézout number
- Problems
- Tabu search method for minimal Bézout number
searching - Monte Carlo method for Bézout number calculating
- Conclusion
10Minimal Bézout number
- For a polynomial system
- P(X) 0,
- where P (p1, p2, , pn), X (x1, x2, , xn),
Bézout theory By dividing the n variables x1,
x2, , xn into several groups (called a partition
strategy), we can get the corresponding Q(X) and
an upper bound of its solution number - Bézout
number.
Mission Find out the partition strategy which
corresponds to the minimal Bézout number.
11More detail ---
- Divide X (x1, x2, , xn) into m groups
- X (X (1), X(2), ,X(m)),
- then we get
- the degree matrix D ( dij ), where dij is the
degree of X (j) in Pi(X (1), X(2), ,X(m)) - and partition vector K (kj)T, where kj is the
number of variables that X (j) contains.
12Example 1 ( n 3)
If X (x1, x2, x3) is divide into 2 groups
X ( x1, x2 , x3 ), or ( 1, 2 ,
3 ),then we have
and
13- The formula for Bézout number B(D,K) is
where
and Per(D) is the permanent of matrix D.
14and
In Example 1,
where
15- Polynomial system problem
- Homotopy method
- Bézout theory and minimal Bézout number
- Problems
- Tabu search method for minimal Bézout number
searching - Monte Carlo method for Bézout number calculating
- Conclusion
16Problems
- Searching the optimal one in all possible
partition strategies - Model How many ways to put n balls into m
(1mn ) boxes? The result is called the Bell
number B(n), which has the following estimation - (n / 2) (n / 2) lt B(n) lt n!
- Computing Bézout number (or permanent)
- The best-known algorithm is Rysers, O(n2n).
17- Polynomial system problem
- Homotopy method
- Bézout theory and minimal Bézout number
- Challenges
- Tabu search method for minimal Bézout number
searching - Monte Carlo method for Bézout number calculating
- Conclusion
18Tabu search method for minimal Bézout number
searching
- Main idea
- Construct neighbor relationship between partition
strategies (or partitions), and apply Tabu
(Taboo) search method to search the optimal
partition.
19Two kinds of neighbor relationship
- split 1, 3, 6 5 2, 4
- ? ?
- 1, 3 6 5 2, 4
- merge 1, 3, 6 5 2, 4
- ? ?
- 1, 3 , 6 5, 2, 4
A partition has O(n2) neighbors.
20Evaluation function
But how can we calculate it ?
Thats our next problem.
21- Polynomial system problem
- Homotopy method
- Bézout theory and minimal Bézout number
- Challenges
- Tabu search method for minimal Bézout number
searching - Monte Carlo method for Bézout number calculating
- Conclusion
22Monte Carlo method for Bézout number calculating
- Bézout number and permanent
23- Permanent
- where A is an nn matrix, and Sn is the set
composed of all permutations of number 1, 2,,n. - Example 2.
24More about the permanent
- The computation of permanents has been studied
fairly extensively in algebraic complexity
theory. - The complexity of the best-known algorithms grows
as the exponent of the matrix size. - Application Counting problems
- The number of perfect matching -- 0-1 permanent
- The number of Latin squares -- general
permanent
25- We can see in the definition of permanent
- any permutation of 1, 2,,n, denoted by?,
corresponds to one product term g(?) - therere totally n! product terms.
- Let Sn be the sample space ?. We have
- Per(A) ? ? ? n! (6.3)
- where? E(g(?)) is the expectation of g(?).
26MC (Monte Carlo) Method
- where
- is the approximation of by sampling
uniformly from sample space ?.
27Disadvantage of MC method
- Too many zero-value product terms when matrix A
is sparse, i.e., for an nn matrix with sparsity
p, - pn pn?0, n ?8
- pn is the possibility of sampling a non-zero
sample. - Applying simple Monte Carlo approach to our
problem is not very helpful.
28MC(?) algorithm
Let to be the sample space, then we
have where Advantage ? ltlt ? Question
How to get and ? ?
29How to get ? ?
Let IA is a matrix that has the same structure as
A except that the non-zero entries is
1. Obviously, we have ? Per(IA) Thus we can
calculate ? with 0-1 permanent algorithms.
30How to get or ?
The equivalent question is How can we choose a
non-zero product term uniformly?
31Expand a permanent on the first column For any
matrix A(aij) nn, we have Per(A) ?
ai1Per(Ac(ai1)), ?a?A where Ac(ai1) is the
complementary sub-matrix of A about ai1. Remember
Laplace expansion on a determinant?
32Example,
then,
Divide product terms into 3 groups!
33 ? ?
? 1 product term
2 terms 0 term
Choose 3 (group 1) with the probability
1/3, 2 (group 2) with 2/3, and 0 (group 3)
with 0. By iterating this procedure, we can
finally sample uniformly a none-zero product term.
34Layered MC(?) algorithm
- Basic Idea - Importance sampling
- Divide the sample space ? into several
sub-spaces, in which the sample values are closer.
Ai Keep the i largest entries of A, and others
set to zero
? is divided into n2 sub-spaces according to the
value of product terms.
35Layered MC(?) algorithm
- How to assign sampling number to sub-spaces?
- Based on
- the dimension of sub-spaces
- the sums of product terms that have already been
estimated in sub-spaces - Lead to two algorithms M1 and M2.
36Numerical results
37- Conclusion
- Polynomial systems
- Homotopy method Bézout theory
- Searching for minimal Bézout number
- Tabu search
- Computing Bézout number
- Monte Carlo method