Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 On Computing Ranges of Polynomials - Some Improvements to the Bernstein Approach P. S. V. Nataraj Shashwati Ray IIT Bombay Presented at the Second Taylor.

Similar presentations


Presentation on theme: "1 On Computing Ranges of Polynomials - Some Improvements to the Bernstein Approach P. S. V. Nataraj Shashwati Ray IIT Bombay Presented at the Second Taylor."— Presentation transcript:

1 1 On Computing Ranges of Polynomials - Some Improvements to the Bernstein Approach P. S. V. Nataraj Shashwati Ray IIT Bombay Presented at the Second Taylor Model Workshop, Miami, Dec. 2003  Indian Institute of Technology, Bombay 2003

2 2 SCOPE OF THE PRESENTATION  Introduction  Bernstein forms : Definition Properties Basis conversion  Range calculations Important theorems Subdivision Subdivision direction selection strategies  New propositions  Comparison with Globsol  Examples and conclusion  Future work

3 3 INTRODUCTION  Polynomials are encountered in Engineering and Scientific Applications.  Required to find bounds for the range of polynomials over an interval.  Our method based on expansion of multivariate polynomial into Bernstein form.

4 4 ADVANTAGES OF BERNSTEIN FORM  Avoids function evaluations – may be otherwise costly for polynomials of high degrees.  Nice features about range enclosures with Bernstein form:  Information when enclosure is exact.  Sharpness of enclosure can be improved by elevating the Bernstein degree or by subdivision of the domain

5 5 BERNSTEIN FORM Any polynomial in power form is represented as Bernstein form of representation is Bernstein coefficients are given by

6 6 BERNSTEIN FORM  Bernstein functions on [0,1] are defined by  On a general interval the Bernstein functions are defined as  Each set of coefficients a i or b i n can be computed from the other (i.e., power form to Bernstein form).

7 7 BASIS CONVERSION On unit interval a polynomial’s equivalent power and Bernstein forms Using matrix multiplication p(x) = XA = B X B – X is the variable (row) matrix. – A is the coefficient (column) matrix – B X is the Bernstein basis (row) matrix – B is the Bernstein coefficient (column) matrix After certain computations, B X B = XU X B – U X is a lower triangular matrix

8 8 BASIS CONVERSION B X = XW X V X U X – W X is an upper triangular matrix – V X is a diagonal matrix XA = B X B XA = XW X V X U X B B=(U X ) -1 (V X ) -1 (W X ) -1 A

9 9 BASIS CONVERSION  For a bivariate case  X 1 and X 2 are variable matrices  By analogy with univariate case

10 10 RANGE CALCULATION IMPORTANT THEOREMS  Theorem 1 : The minimum and maximum Bernstein coefficients give an enclosure of the range of polynomial on the given interval.  Theorem 2 : Vertex condition : If the minimum and maximum Bernstein coefficients of polynomial in Bernstein form occur at the vertices of the Bernstein coefficient array, then the enclosure is the exact range.  Theorem 3 : Bernstein approximations converge to the range and the convergence is at least linear in the order of approximations.

11 11 SUBDIVISION Minimum & maximum Bernstein coefficients enclose the range of the polynomial Vertex condition not satisfied – subdivide in the chosen component direction Calculate Bernstein coefficient of p(x) on all these subboxes Check vertex condition on each subbox Find range of polynomial

12 12 SWEEP PROCEDURE

13 13 SUBDIVISION DIRECTION SELECTION STRATEGIES EXISTING RULES  Rule A Direction chosen is cyclic  Rule B (derivative based) Find an upper bound for the absolute value of the partial derivative (from its Bernstein form) in the rth direction Compute the same for each direction The direction for which this is maximum is selected as the optimal direction for bisection

14 14 SUBDIVISION DIRECTION SELECTION STRATEGIES EXISTING RULES  Rule C (derivative based) Find an upper bound for the absolute value of the partial derivative (from its Bernstein form) in the rth direction Find the product of this upper bound and the degree of rth variable Compute the same for each direction The direction for which this is maximum is selected as the optimal direction for bisection

15 15 SUBDIVISION DIRECTION SELECTION STRATEGIES EXISTING RULES  Rule D (derivative based) Find an upper bound for the absolute value of the partial derivative (from its Bernstein form) in the rth direction Find the product of this upper bound and the edge length Compute the same for each direction The direction for which this is maximum is selected as the optimal direction for bisection

16 16 SUBDIVISION DIRECTION SELECTION STRATEGIES EXISTING RULES  Rule E (max width) Bisection is done along the component direction of maximal width  Rule F (randomized) Pick a box randomly from the current list Bisect it in all component directions Find the maximal width of the polynomial over both these boxes Choose the component direction where this width is least

17 17 DISADVANTAGES OF THE EXISTING METHODS OF BERNSTEIN COEFFICIENTS COMPUTATIONS  Conventional method is very inefficient for higher dimensional polynomials  Even the Matrix multiplication method cannot be generalized to higher dimensional polynomials

18 18 DISADVANTAGES OF THE EXISTING METHODS OF BISECTION DIRECTION SELECTION  The existing rules generally need large computation times.  Certain existing rules are grossly inefficient, especially for higher dimensional polynomials.

19 19 DISADVANTAGES OF THE EXISTING RANGE COMPUTATION ALGORITHMS  Fortran 95 can not readily cater to more than six dimensional arrays.  Bernstein coefficients generated are stored in multidimensional arrays  For getting sharp enclosures, subdivision usually creates large amount of data  All these are found to heavily slow down computations

20 20 NEW PROPOSITIONS We propose new tools for  Bernstein Coefficient Computations  Subdivision Direction Selection  Acceleration devices

21 21 PROPOSITION 1 Computation of Bernstein Coefficients  Matrix Method  This gives

22 22 PROPOSITION 1 Computation of Bernstein coefficients   Extending the above to trivariate case  where transpose means converting 3 rd coordinate direction to 2 nd, 2 nd coordinate direction to 1 st, 1 st coordinate direction to 3 rd  The same logic can be extended to the l-variate case

23 23 PROPOSED MATRIX METHOD  For a 3-dimensional case instead of considering the polynomial coefficient matrix A as a 3 dimensional array, it can be considered as a matrix with 0 to n 1 rows and 0 to (n 2 +1)(n 3 +1) –1 columns  After the third transpose and reshape the ‘A’ matrix would come in its original form  The same is shown as figures in the report.

24 24 Proposed Algorithm Bernstein Matrix  Inputs : Degree of each variable Widths of each interval component Lower end point of each interval component Polynomial coefficients “a” in matrix form  Output : Bernstein coefficient “a” in matrix form  BEGIN Algorithm Compute U X, V X and W X for each variable, j =1,2,…, n Compute their inverses (U X ) -1, (V X ) -1 and (W X ) -1 for j =1,2,…, n Compute their product M j for j =1,2,…, n FOR j =1,2,…, n Set a = M j a b= transpose(a) a = reshape(b) END FOR  END Algorithm

25 25 Comparison and results (Bernstein coefficients evaluation)  Comparison is done between conventional method and the proposed Matrix method  All problems are taken from Verschelde’s PHC pack (database of polynomial systems)  Both methods generate the same Bernstein coefficients  Proposed method gives results for all the examples  Conventional method takes much longer time; it does not give results for some examples even after a long time.

26 26 Time in seconds taken by the Matrix and the Conventional methods to compute Bernstein coefficients ExFunctionDimDomaint(Mat) 1Lot Volt 3[-1.5,2] 3 0.000197 2React Diff 3[-5,5] 3 0.00188 3Lot Volt 4[-2,2] 4 0.00207 4Capr sys 4[-.5,.5] 4 0.00213 5Wright 5[-5,5] 5 0.00213 6Reimer 5 5[-1,1] 5 0.02981 7Mag 6[-5,5] 6 0.00345 8Butcher 6[-10,10] 6 0.00285 9Reimer 6[-1,1] 6 0.61231 10Katsura 6 7[-5,5] 7 0.00741 11Reimer 7 7[-1,1] 7 25.1991 t(Con) 0.00113 0.00098 0.00527 0.00722 0.00482 214.0184 0.51627 0.12679 * 3.65736 * Ratio 0.5736 0.5213 2.5459 3.3897 2.2629 7179.4 149.64 44.48 >47,035 493.57 >1142.97 % Reduction -74.33 -91.83 60.72 70.49 55.80 99.98 99.33 97.75 99.99 99.80 99.91

27 27 Some Definitions  Solution box is the box where ‘vertex property’ of the Bernstein coefficients is satisfied.  Solution patch is given by enclosure of the Bernstein coefficients over the solution box.  Current range is the hull of all solution patches.

28 28 PROPOSITION 2 Subdivision Direction Selection  Proposed Rule 1 : Select patch with minimum hull  Find the patches with smallest and largest Bernstein coefficients from the entire list of patches  Find the respective distance of smallest and largest Bernstein coefficient to the infimum and supremum of the current range  Select that patch as the one which gives the largest distance, and bisect this selected patch in all component directions

29 29 EXAMPLE Distance Let a 3-d polynomial be given as The polynomial coefficient and the Bernstein coefficient matrices are given as Let at some stage the Current range be given by [1,20]

30 30 EXAMPLE Let the two existing patches in the entire list be Minimum and maximum value of Bernstein coefficients are 0.5 and 7.70 respectively The respective distances are (1-0.5) = 0.5 and (20-7.70) = 12.30 Select the patch which has 7.70 as the Bernstein coefficient

31 31 Subdivision Direction Selection  Select patch with minimum hull  Hull of the Bernstein coefficients over both the generated subboxes is found out in each direction  The selected bisection direction is the one which gives the minimal hull.

32 32 PROPOSITION 3 Subdivision Direction Selection  Proposed Rule 2 : Randomized box with minimum hull  Choose a box randomly from the current list.  The chosen box is bisected along each and every component direction.  Hull of the Bernstein coefficients over both the generated subboxes is found out in each direction.  The selected bisection direction is the one which gives the minimal hull.

33 33 RESULTS AND CONCLUSIONS Subdivision Direction Selection  All problems are taken from Verschelde’s PHC pack (database of polynomial systems)  Comparison of the bisection direction selection rules, on the basis of the following performance metrics Number of solution boxes where vertex property/simplified vertex condition is satisfied Number of subdivisions Maximum patch list length Computation time in seconds  With the proposed rules we are able to solve all the examples  With rules A, B, C, D, E and F we are able to solve 90%, 70%, 70%, 50%, 90% and 90% of the examples, respectively

34 34 RESULTS AND CONCLUSIONS Subdivision Direction Selection  Comparison is done with all the existing rules (except rule D, which is unable to solve half the problems).  Proposed rules are found to be the most efficient, in terms of every performance metric  Reduction in number of solution boxes compared to Rule A is 82%, Rule B is 83%, Rule C is 83%, Rule E is 81% and Rule F is 84%  Reduction in number of subdivisions compared to Rule A is 84%, Rule B is 83%, Rule C is 83%, Rule E is 81% and Rule F is 84%

35 35 RESULTS AND CONCLUSIONS Subdivision Direction Selection  Reduction in the maximum list length compared to Rule A is 85%, Rule B is 51%, Rule C is 46%, Rule E is 34% and Rule F is 63%  Reduction in the computational time compared to Rule A is 98%, Rule B is 93%, Rule C is 93%, Rule E is 91% and Rule F is 93%  Both the rules give the same amount of reductions

36 36 PROPOSITION 4 Accelerating Devices for Range Computation  Cut off test  Let the enclosure of Bernstein coefficients over a box be included in the current range.  This box can be deleted from further processing.  Any further subdivision of this box is not going to improve the current range.  Therefore, unnecessary subdivisions are eliminated

37 37 PROPOSITION 5 Accelerating Devices for Range Computation  Simplified Vertex Condition  Let smallest Bernstein coefficient in a patch appear at the vertex ; and the upper bound of this patch be included in the current range  This patch can be taken to be a solution patch  No further subdivision is required, as it would not give any further improvement in the current range  Same is true if the largest Bernstein coefficient in a patch is appearing at the vertex and the lower bound of the patch is included in the current range

38 38 PROPOSITION 6 Accelerating Devices for Range Computation  Monotonicity Test  If the polynomial is monotonic w.r.t any direction on a box  If the box is in the interior This box can be rejected  If the box is not in the interior This box is retained No subdivision of this box in that direction  Avoids unnecessary subdivisions

39 39 PROPOSED ALGORITHM Range  Inputs :  Maximum degree of each variable of the polynomial  Coefficients of the polynomial in the form of a matrix  Initial domain box  Accuracy tolerances  Outputs:  An enclosure of the range of the specified accuracy  Number of solution boxes  Number of subdivisions  Maximum patch list length used to store the patches

40 40 PROPOSED ALGORITHM Range  BEGIN Algorithm  Evaluate Bernstein coefficients in matrix form; put them as a patch in a list.  Set flags for simplified vertex condition, cut off test and monotonicity test  Take the first patch from the list and check for ‘vertex’/’simplified vertex’ condition. If ‘true’, then update current range. Else, perform ‘cut off test’. If list is not empty, choose a component direction based on a bisection rule

41 41 PROPOSED ALGORITHM Range  Take each patch from list, do the monotonicity test. If test is passed, proceed to next step; else discard tested box and choose next patch from the list.  Perform the necessary subdivision in the given direction and evaluate the new Bernstein coefficients  Update the list of patches and remove the tested box  Take the next patch from the list and perform the same operations, till the list is empty  Get the range of the polynomial from the current range  END Algorithm

42 42 COMPARISON WITH GLOBSOL  We compare our results with the results obtained with Globsol  All problems are taken from Verschelde’s PHC pack, a database of polynomial systems.  Comparison of the computation time required by both the algorithms in terms of values of : Ratio Percent reduction

43 43 COMPARISON WITH GLOBSOL    

44 44 Comparison of computation time by both the algorithms Ex.Test FunctionDimTime, sGlobsolBernstein 1Lotka3Number0.05000.0049 VolterraRatio10.20 System% Reduction90.20 2Reaction3Number0.01000.0101 DiffusionRatio0.9901 Problem% Reduction 3Lotka4Number0.35000.0058 VolterraRatio60.3448 System98.3429 4Caprasse’s4Number0.010.1940 SystemRatio1.9072 % Reduction47.57

45 45 Ex.Test FunctionDimTime, sGlobsolBernstein 5System of A.H. Wrightt 5Number0.010.0213 Ratio0.4695 % Reduction-113.0000 6System of Reimer 5Number7.83004.3274 Ratio1.8094 % Reduction44.7300 7Hunecke5Number2.03002.7163 Ratio0.7474 % Reduction-33.80 8Cyclic 5-roots Problem 5Number *0.0027 Ratio % Reduction 9Magnetism In Physics 6Number2.17001.9738 Ratio1.0994 % Reduction9.04

46 46 Ex.Test FunctionDim.Time, sGlobsolBernstein 10Camera6Number2.240.1062 DisplacementRatio21.0923 % Reduction95.26 11Butcher’s Problem 6Number1.130.2072 Ratio5.45054 % Reduction81.6637 12Hairer6Number0.02000.0037 Ratio5.4054 % Reduction81.5000 13System Of Reimer (6) 6Number1.27000.5885 Ratio2.1580 % Reduction53.6614 14Magnetism In Physics 7Number5.05007.0464 Ratio0.7167 % Reduction-39.533

47 47 Ex.Test FunctionDim.Time, sGlobsolBernstein 15Cyclic7Number108.75000.1180 7-rootsRatio921.6102 Problem% Reduction99.8915 16Heart Dipole Problem 8Number12.35001.1044 Ratio11.1825 % Reduction91.0575 17Virasoro Algebras 8Number222.76000.0039 Ratio5.37e+04 % Reduction99.9982 18Cyclic 8-roots Problem 8Number386.60000.0036 Ratio1.07e+05 % Reduction99.9991

48 48 RESULTS Comparison with Globsol  In one of the examples Globsol was unable to give any result (arithmetic exception core dumped) indicated by ‘*’ in the table.  Compared to Globsol, the improved Bernstein method gives an average percent reduction in computational time of 47.38%

49 49 CONCLUSIONS  The new algorithm Range is faster than Globsol in fourteen out of eighteen problems.  Further, on the average, we obtain considerable reductions in computation time with the proposed Algorithm Range.

50 50 FUTURE WORK  Modify the new algorithm after incorporating certain modifications in the Monotonicity test, thus further speeding up the algorithm Range  Integrate the code with COSY package of Berz et al.  Apply the method to Engineering problems, especially control engineering !

51 51 THANK YOU ! THANK YOU !


Download ppt "1 On Computing Ranges of Polynomials - Some Improvements to the Bernstein Approach P. S. V. Nataraj Shashwati Ray IIT Bombay Presented at the Second Taylor."

Similar presentations


Ads by Google