Date post: | 21-Dec-2015 |
Category: |
Documents |
View: | 216 times |
Download: | 0 times |
NEW APPROACH TO CALCULATION OF RANGE OF
POLYNOMIALS USING BERNSTEIN FORMS
2
SCOPE OF THE PRESENTATION INTRODUCTION BERNSTEIN FORMS :
1) DEFINITION2) PROPERTIES3) BASIS CONVERSION
RANGE CALCULATIONS1) IMPORTANT THEOREMS
2) SUBDIVISION NEW PROPOSITIONS EXAMPLES AND CONCLUSION FUTURE WORK
3
INTRODUCTION
POLYNOMIALS ARE USEFUL MATHEMATICAL TOOLS
IMPLICIT POWER FORM – LINEAR COMBINATION OF POWER BASIS
REPRESENTATION IN BERNSTEIN FORM – LINEAR COMBINATION OF BERNSTEIN BASIS
4
ADVANTAGES OF BERNSTEIN FORM AVOIDS FUNCTION EVALUATION –
COSTLY IMPROVEMENT OVER TAYLOR FORM
INFORMATION ABOUT SHARPNESS OF BOUNDS- TOLERANCE CAN BE
SPECIFIED FASTER RATE OF CONVERGENCE CAPABLE OF GIVING EXACT RANGE
5
BERNSTEIN FORM………….
DEFINTION – POLYNOMIAL OF DEGREE n
B nk ( x ) = ( n
k ) x k ( 1 - x ) n-k
k = 0 , 1 , ……….. , n
V = x ∈ [ 0 , 1 ]
6
BERNSTEIN FORM………. ANY POLYNOMIAL IN POWER FORM IS REPRESENTED AS
BERNSTEIN FORM OF REPRESENTATION IS
NnRaxaxp i ni
n
ii , , )(
0
[0,1] )( )(0
xxBbxp ni
n
i
ni
ininij
n
j
ni x)(x
i
n(x)B a
j
n
j
i
b
1,0
7
BERNSTEIN FORM…………
MULTIVARIATE CASE – POLYNOMIAL OF DEGREE n
p ni ( x ) = ∑ i ∈ K ∏ q
j = 1 ( nij
) x i j j ( 1 - x j ) n –
i j
i = ( i1 ……….. i q ) ∈ K
= ∑ i∈ K b ni p n
i ( x )
8
IMPORTANT PROPERTIES OF BERNSTEIN POLYNOMIALS INVARIANT UNDER AFFINE
TRANSFORMATIONS RECURSIVE GENERATION OF nth
ORDER BASIS FROM (n – 1)th ORDER BASIS IS POSSIBLE
ALL TERMS OF BERNSTEIN BASIS ARE POSITIVE AND THEIR SUM EQUALS 1
9
IMPORTANT PROPERTIES OF BERNSTEIN POLYNOMIAL
BETTER CONDITIONED AND BETTER NUMERICAL STABILITY
DEGREE ELEVATIONb n+1
k = k / n+1 * b nk-1 + ( 1 - k /
n+1 ) b nk
10
BASIS CONVERSION
p (x) = ∑ n k = 0 a k x k
= ∑ n k = 0 b n k B n
k ( x )
CONVERSION OF ONE SET OF COEFFICIENTS TO OTHER :-
a k = ∑ k j = 0 ( -1 ) k – j ( n k ) ( k j ) b
nj
b n k = ∑ k j = 0 ( k j ) / ( n
j ) a j
11
BASIS CONVERSION………MATRIX METHOD
•WE CAN WRITE P(X) = XA = BXB ,WHERE X IS THE VARIABLE(ROW) MATRIX
• A IS THE COEFFICIENT (COLUMN) MATRIX
• BX IS THE BERNSTEIN BASIS(ROW) MATRIX AND
• B IS THE BERNSTEIN COEFFICIENT(COLUMN) MATRIX.
• AFTER CERTAIN COMPUTATIONS,
BXB = XUXB
WHERE UX IS A LOWER TRIANGULAR MATRIX.
12
• BASIS CONVERSION……
FOR A GENERAL INTERVAL
BX = XWXVXUX
WHERE WX IS AN UPPER TRIANGULAR MATRIX AND VX IS A DIAGONAL MATRIX.XA = BXBTHUS, AND
BUVWXXA XXX
AWVUB XXX111
13
BASIS CONVERSION…….. FOR A BIVARIATE CASE, BY ANALOGY WITH UNIVARIATE CASE
TXXTXX BBBBBBXXp
I221),( 21
TT AXXAXXXXp 122121 ),(
1111 1 XXXX UVWXB
2222 2 XXXX UVWXB
14
BASIS CONVERSION……. USING PROPERTIES OF MATRICES
THE SAME LOGIC CAN BE EXTENDED TO AN L-VARIATE CASE
WE EXPLAIN WITH AN ILLUSTRATION FOR TRIVARIATE CASE
TT1X
1X
1X
1X
1X
1X AWVUWVUB
111222
TTAMM 12
15
BASIS CONVERSION……. FOR A TRIVARIATE CASE
HERE TRANSPOSE MEANS CONVERTING SECOND CO-ORDINATE DIRECTION TO FIRST, THIRD TO SECOND AND FIRST TO THIRD
SAME ANALOGY EXTENDS TO L-VARIATE CASE
TTTAMMMB321123
16
17
PROPOSED (MATRIX) METHOD
A NEW METHOD IS PROPOSED WHERE THE POLYNOMIAL COEFFICIENTS ARE INPUTTED IN A MATRIX FORM ‘A’ AND THE RESULTING BERNSTEIN COEFFICIENTS ARE COMPUTED IN MATRIX FORM ‘B’
FOR A 3-D CASE, INSTEAD OF CONSIDERING THE POLYNOMIAL COEFFICIENT MATRIX ‘A’ AS A 3-D ARRAY, IT CAN BE CONSIDERED AS A MATRIX WITH 0 TO n1 ROWS AND 0 TO (n2+1)(n3+1) –1 COLUMNS
18
MATRIX METHOD…… ORIGINAL ARRAY
19
THE 3-D ARRAY IN MATRIX FORM
AFTER FIRST TRANSPOSE AND RESHAPE
O TO n2 ROWS; 0 TO COLUMNS
32131
3
323
2111
2
2111
2
.............0
10
0................00
......................
1......1101
:
:
:
:.......111101
10......011001
0......1000
:
:
200
:.......110100
00......010000
nnnnn
n
nnn
nnnn
n
nnnn
n
A
32121
1
1
311
3112
3
3222
3
3
...............0
20
10
0...................00
......................
1......1101
:
:
120
:.......111110
10......101100
0......1000
:
:
020
01......011010
00......001000
nnnnn
n
n
nnn
nnnn
n
nnnn
n
n
A
111 13 nn
20
SIMILARLY AFTER SECOND AND THIRD TRANSPOSE AND RESHAPE, WE GET THE ORIGINAL MATRIX
32132
2
212
313
1
3133
1
1
...............0
:
:
:
10
0...................00
......................
1...........01
:
:
:012
:..................011
10................010
0......1000
::
::
:102002
01........101001
00........100000
nnnnn
n
nnn
nnn
n
nnnn
n
n
A
32131
3
323
2111
2
2111
2
.............0
10
0................00
......................
1......1101
:
:
:
:.......111101
10......011001
0......1000
:
:
200
:.......110100
00......010000
nnnnn
n
nnn
nnnn
n
nnnn
n
A
21
RANGE CALCULATION IMPORTANT THEOREMS
THEOREM 1 : THE MINIMUM AND MAXIMUM BERNSTEIN COEFFICIENT GIVE AN ENCLOSURE OF THE RANGE OF POLYNOMIAL IN THE GIVEN INTERVAL.
THEOREM 2 : VERTEX CONDITION : IF THE MINIMUM AND MAXIMUM BERNSTEIN COEFFICIENT OF POLYNOMIAL IN BERNSTEIN FORM OCCUR AT THE VERTICES OF THE BERNSTEIN COEFFICIENT ARRAY, THEN THE ENCLOSURE IS THE EXACT RANGE.
22
IMPORTANT THEOREMS
THEOREM 3 : BERNSTEIN APPROXIMATIONS CONVERGE TO THE RANGE AND THE CONVERGENCE IS AT LEAST LINEAR IN THE ORDER OF APPROXIMATIONS.
23
SUBDIVISION
VERTEX CONDITION NOT SATISFIED – SUBDIVIDE
UNIT BOX I INTO 2q SUBBOXES OF EDGE LENGTH ½
CALCULATE BERNSTEIN COEFFICIENT OF p(x) ON THESE SUBBOXES
CHECK VERTEX CONDITION ON EACH SUBBOX
FIND RANGE OF POLYNOMIAL
24
SWEEP PROCEDURE
25
DISADVANTAGES OF THE EXISTING ALGORITHM
FORTRAN 95 CAN NOT CATER TO MORE THAN SIX DIMENSIONAL ARRAYS
BERNSTEIN COEFFICIENT GENERATED ARE STORED IN MULTIDIMENSIONAL ARRAYS
FOR SHARP ENCLOSURES, SUBDIVISION CREATES LARGE DATA
SLOWS DOWN COMPUTATIONS
26
PROPOSITIONS
PROPOSE NEW METHODS FOR
ACCELERATION OF ALGORITHM
FASTER TERMINATION
27
PROPOSITION 1 : MATRIX METHOD
STORE BERNSTEIN COEFFICIENT IN SINGLE VECTOR, 2 DIMENSIONAL
NUMBER OF ELEMENTS OF VECTOR DEPEND ON NUMBER OF VARIABLES MAXIMUM POWER OF EACH VARIABLE
28
MATRIX METHOD
29
EXAMPLE : 3-D POLYNOMIAL
P(x)=2+4x1+5x12-x2+2x1x2+x1x3-
x2x3+6x12x2x3+2x3
2-x1x32+x1
2x2x32
n1=2 ; n2=1 ; n3=2 COEFFICIENT MATRIX
000 010 001 011 002 012
100 110 101 111 102 112
200 210 201 211 202 212
30
MATRIX METHOD……contd
BERNSTEIN COEFFICIENT ALSO STORED IN 3 6 MATRIX, NOT 3-D ARRAY
ALL OPERATIONS AND SUBDIVISION CARRIED OUT ON 2-D MATRICES
FASTER COMPUTATIONS NO RESTRICTION ON THE DIMENSION
OF POLYNOMIAL
31
PROPOSITION 2 : CUT OFF TEST AVOIDS UNNECCESARY SUBDIVISIONS FASTER TERMINATION OF ALGORITHM CHECK IF RANGE IN EACH NEW PATCH
INCLUDED IN ACTUAL RANGE STORED REJECT PATCH IF YES
32
PROPOSITION 3 : MONOTONICITY TEST
IF THE POLYNOMIAL IS MONOTONIC W.R.T ANY DIRECTION ON A BOX, AND IF THE BOX HAS NO EDGE IN COMMON WITH THE INITIAL INTERVAL, THEN THIS BOX CAN BE REJECTED
AVOIDS UNNECCESARY SUBDIVISIONS FASTER TERMINATION OF ALGORITHM
33
PROPOSITION 4 : NEW CONDITION
IF THE MIN BERNSTEIN COEFF OF A PATCH IS MINIMUM OF ALL THE COEFFS IN UNTESTED PATCHES AND APPEARS AT A VERTEX, THEN CHECK THE FOLLOWING
IF MAX BERNSTEIN COEFF IN THAT PATCH IS LESS THAN SUPREMUM OF SOLUTIONS EVALUATED SO FAR, THEN THE PATCH IS A SOLUTION
THIS PATCH NEED NOT BE SUBDIVIDED FURTHER
34
PROPOSED ALGORITHM1. Read the initial intervals & the
maximum degree for each variable in the polynomial
2. Read the Bernstein coefficients in matrix form.
3. Initialise list 'l' which contains all the patches to be tested; and list 'lsol' which consists the number of solutions i.e. the patches where vertex condition is satisfied. Solution patch contains min B (D) and max B(D).
4.Take the first patch from list 'l '
35
PROPOSED ALGORITHM5.Check the vertex condition. If 'true' then lsol = lsol +1 p_bar(lsol)= interval (minB(D), max
B(D)) delete the patch from 'l' else subdivide the patch in 1st
direction into two patches, each of which is a matrix and add the new entries at the end of the list 'l'. Delete the tested patch.
6. If 'l´ is empty go to step 12 else pick the first patch from 'l' and go to step 7.
36
PROPOSED ALGORITHM
7. Check the vertex condition. If 'true' then update 'lsol' and
'p_bar(lsol)' and delete the patch from 'l’ go to step 5
else go to step 8.8. Check the new condition If 'true' then update 'lsol' and
'p_bar(lsol)' and delete the patch from 'l‘ & go to step 5
else go to step 9.
37
PROPOSED ALGORITHM
9. Monotonicity test: Check for common edge with the original box. If no edge in common, test for monotonicity in all directions and delete the monotonic patch and go to step 5.
If common edge, test monotonicity in that direction-
If monotonic, retain patch; else go to step 1010. Reshape and then subdivide the patch
in next cyclic direction into two patches, each of which is a matrix.
38
PROPOSED ALGORITHM
11. Add the new entries at the end of the list 'l'. Delete the tested patch.
12. Carry out the cut off test and go to step 5.
13. Compute the exact range p(X) p(X)=interval(minval(inf(p_bar(1:lsol))),
maxval(sup(p_bar(1:lsol)))14. Output p(X)End
39
EXAMPLES AND RESULTS EXAMPLE 1 : 3-D POLYNOMIAL
Initial box [0,1] , [0,10] , [-1,1]USING THE MATRIX METHOD Total no. of solutions = 27 Total no. of subdivisions = 246 Range of function =
[1.8567633650742547,2672.0] cpu time = 0.18578312 sec
40
EXAMPLE 1……contd
RANGE OF THE POLYNOMIAL , USING VECTORIZED MOORE SKELBOE ALGORITHM
RANGE OF FUNCTION = [1.8567633669124248,2672]
CPU TIME = 258.01999 sec
41
EXAMPLE 2 : 4-D POLYNOMIAL
Initial box [-1,1], [0,1], [0,1], [-2,0]USING MATRIX METHOD Total no. of solutions = 1 Total no. of subdivisions = 0 Range of function = [-1.6666667,4.3333333999999999] cpu time = 9.51403E-4sec
42
EXAMPLE 2 ……..contd
RANGE OF THE POLYNOMIAL , USING VECTORIZED MOORE SKELBOE ALGORITHM
RANGE OF FUNCTION = [-1.6666666670000002,
4.3333333329999996]
CPU TIME = 4.2621371 sec
43
EXAMPLE 3 : 5 -D POLYNOMIAL
Initial box [-1,1], [0,1], [-1,1], [0,1], [-1,1]USING MATRIX METHOD Total no. of solutions = 12 Total no. of subdivisions = 27 Range of function = [-14.0,23.0] cpu time = 0.03255 sec
44
EXAMPLE 3 ……..contd
RANGE OF THE POLYNOMIAL , USING VECTORIZED MOORE SKELBOE ALGORITHM
RANGE OF FUNCTION = [-14.0,23.0]CPU TIME = 44.351025 sec
45
CONCLUSIONS
THE PROPOSED ALGORITHM CAN THEORETICALLY SOLVE PROBLEMS OF RANGE FINDING FOR ANY DIMENSION POLYNOMIAL.
THE PROPOSED ‘MATRIX METHOD’ ALONG WITH THE CUT- OFF TEST, MONOTONICITY TEST AND THE NEW CONDITION, CONSIDERABLY SPEEDS UP THE ALGORITHM
46
CONCLUSIONS
THE RANGE COMPUTED BY THE PROPOSED METHOD CAN BE MADE AS ACCURATE AS DESIRED, BY SPECIFYING THE TOLERANCE
47
FUTURE WORK DEVELOP CODE TO EXTEND TO 7-D
AND HIGHER INTEGRATE THE CODE WITH ‘COSY’
PACKAGE INTRODUCE MORE EFFICIENT
SUBDIVISION STRATEGY TO FURTHER SPEED UP THE ALGORITHM
APPLY THE METHOD TO CONTROL PROBLEMS
48
THANK YOU !