Download presentation
Presentation is loading. Please wait.
1
Searching for the Minimal Bézout Number Lin Zhenjiang, Allen zjlin@cse.cuhk.edu.hk Dept. of CSE, CUHK 3-Oct-2005 zjlin@cse.cuhk.edu.hk
2
1. Polynomial system problem 2. Homotopy method 3. Bézout theory and minimal Bézout number 4. Problems 5. Tabu search method for minimal Bézout number searching 6. Monte Carlo method for Bézout number calculating 7. Conclusion
3
1. Polynomial system problem 2. Homotopy method 3. Bézout theory and minimal Bézout number 4. Problems 5. Tabu search method for minimal Bézout number searching 6. Monte Carlo method for Bézout number calculating 7. Conclusion
4
1.Polynomial system problem Mission: Find out all solutions of P(X).
5
Application: very common in many engineering fields formula construction, geometric intersection problems, computation of equilibrium states, etc.
6
1. Polynomial system problem 2. Homotopy method 3. Bézout theory and minimal Bézout number 4. Problems 5. Tabu search method for minimal Bézout number searching 6. Monte Carlo method for Bézout number calculating 7. Conclusion
7
2.Homotopy method Homotopy Equation: Construct Q(x) that satisfy the conditions: 1. The solutions of Q(x) = 0 are either known or easy to known; 2. When 0≤t ≤1, the solutions of H(x,t) is consist of finite number of curves with parameter t; 3. Each solution of H(x, 1)= P(x) = 0 can be obtained by tracking curves starting from t = 0.
8
Figure 1: Illustration of Homotopy method Mission: Construct Q(X) with minimal number of solutions.
9
1. Polynomial system problem 2. Homotopy method 3. Bézout theory and minimal Bézout number 4. Problems 5. Tabu search method for minimal Bézout number searching 6. Monte Carlo method for Bézout number calculating 7. Conclusion
10
For a polynomial system P(X) = 0, where P = ( p 1, p 2, …, p n ), X = ( x 1, x 2, …, x n ), Bézout theory By dividing the n variables x 1, x 2, …, x n 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. 3.Minimal Bézout number
11
More detail --- Divide X = ( x 1, x 2, …, x n ) into m groups: X = (X ( 1 ), X ( 2 ), …,X ( m ) ), then we get a)the degree matrix D = ( d ij ), where d ij is the degree of X (j) in P i (X (1), X (2), …,X (m) ); b)and partition vector K = ( k j ) T, where k j is the number of variables that X (j) contains.
12
Example 1: ( n = 3 ) If X = ( x 1, x 2, x 3 ) is divide into 2 groups: X = ( { x 1, x 2 }, { x 3 } ), 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 *.
14
So, the Bézout number is where and In Example 1,
15
1. Polynomial system problem 2. Homotopy method 3. Bézout theory and minimal Bézout number 4. Problems 5. Tabu search method for minimal Bézout number searching 6. Monte Carlo method for Bézout number calculating 7. Conclusion
16
Searching the optimal one in all possible partition strategies Model: How many ways to put n balls into m (1≤m≤n ) boxes? The result is called the Bell number B(n), which has the following estimation (n / 2) (n / 2) < B(n) < n! 4.Problems Computing Bézout number (or permanent) The best-known algorithm is Ryser’s, O(n2 n ).
17
1. Polynomial system problem 2. Homotopy method 3. Bézout theory and minimal Bézout number 4. Challenges 5. Tabu search method for minimal Bézout number searching 6. Monte Carlo method for Bézout number calculating 7. Conclusion
18
Main idea: Construct neighbor relationship between partition strategies (or partitions), and apply Tabu (Taboo) search method to search the optimal partition. 5.Tabu search method for minimal Bézout number searching
19
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 } Two kinds of neighbor relationship A partition has O(n 2 ) neighbors.
20
Bézout number, right? Evaluation function But how can we calculate it ? That’s our next problem.
21
1. Polynomial system problem 2. Homotopy method 3. Bézout theory and minimal Bézout number 4. Challenges 5. Tabu search method for minimal Bézout number searching 6. Monte Carlo method for Bézout number calculating 7. Conclusion
22
Bézout number and permanent 6.Monte Carlo method for Bézout number calculating
23
Permanent where A is an n × n matrix, and S n is the set composed of all permutations of number 1, 2,…, n. Example 2.
24
More 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 a.any permutation of 1, 2,…, n, denoted by ω, corresponds to one product term g ( ω ); b.there’re totally n ! product terms. Let S n be the sample space Ω. We have Per(A) = θ · | Ω | = θ · n! (6.3) where θ = E( g ( ω )) is the expectation of g ( ω ).
26
MC (Monte Carlo) Method where is the approximation of by sampling uniformly from sample space Ω.
27
Disadvantage of MC method Too many zero-value product terms when matrix A is sparse, i.e., for an n × n matrix with sparsity p, p n ≤ p n →0, n → ∞ p n is the possibility of sampling a non-zero sample. Applying simple Monte Carlo approach to our problem is not very helpful.
28
Let to be the sample space, then we have where Advantage |Ω + | << |Ω| Question How to get and | Ω + | ? MC( Ω + ) algorithm
29
Let I A is a matrix that has the same structure as A except that the non-zero entries is 1. Obviously, we have | Ω + | = Per ( I A ) Thus we can calculate |Ω+ | with 0-1 permanent algorithms. How to get | Ω + | ?
30
The equivalent question is How can we choose a non-zero product term uniformly? How to get or ?
31
Expand a permanent on the first column For any matrix A= ( a ij ) n × n, we have Per(A) = ∏ a i1 Per(A c (a i1 )), ∨ a ∈ A where A c (a i1 ) is the complementary sub-matrix of A about a i1. Remember Laplace expansion on a determinant? How to get or ?
32
Example, then, Divide product terms into 3 groups! How to get or ?
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. How to get or ?
34
Layered MC( Ω + ) algorithm Basic Idea - Importance sampling Divide the sample space Ω + into several sub-spaces, in which the sample values are closer. A i – Keep the i largest entries of A, and others set to zero; Ω + is divided into n 2 sub-spaces according to the value of product terms. Product terms in sub-space are likely larger than those in sub-space.
35
Layered 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.
36
Numerical results
37
7.Conclusion Polynomial systems Homotopy method & Bézout theory Searching for minimal Bézout number Tabu search Computing Bézout number Monte Carlo method
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.