13.07.2015 Views

On the approximation of real rational functions via mixed-integer ...

On the approximation of real rational functions via mixed-integer ...

On the approximation of real rational functions via mixed-integer ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Applied Ma<strong>the</strong>matics and Computation 112 (2000) 113±124www.elsevier.nl/locate/amc<strong>On</strong> <strong>the</strong> <strong>approximation</strong> <strong>of</strong> <strong>real</strong> <strong>rational</strong><strong>functions</strong> <strong>via</strong> <strong>mixed</strong>-<strong>integer</strong>linear programmingNikos Papamarkos *Department <strong>of</strong> Electrical and Computer Engineering, Electric Circuits Analysis Laboratory,Democritus University <strong>of</strong> Thrace, 67100 Xanthi, GreeceAbstractThis paper is introducing a new method for <strong>the</strong> <strong>approximation</strong> <strong>of</strong> <strong>real</strong> <strong>rational</strong><strong>functions</strong> <strong>via</strong> <strong>mixed</strong>-<strong>integer</strong> linear programming. The formulation <strong>of</strong> <strong>the</strong> linear <strong>approximation</strong>problem is based on <strong>the</strong> minimization <strong>of</strong> a suitable minimax criterion, incombination with a branch and bound linear <strong>integer</strong> technique. The proposed algorithmcan be used in many <strong>rational</strong> <strong>approximation</strong> problems, where some coecients <strong>of</strong> <strong>the</strong><strong>rational</strong> function are required to take only <strong>integer</strong> values. The formulation <strong>of</strong> <strong>the</strong>problem ensures always <strong>the</strong> global solution. The proposed algorithm was extensivelytested on a variety <strong>of</strong> problems. An analytical example is presented to illustrate <strong>the</strong> useand e€ectiveness <strong>of</strong> <strong>the</strong> algorithm. Ó 2000 Elsevier Science Inc. All rights reserved.Keywords: Integer programming; Linear programming; Optimization; Rational <strong>approximation</strong>;Branch and bound tree search1. IntroductionThis paper is concerned with <strong>the</strong> problem <strong>of</strong> <strong>approximation</strong> <strong>of</strong> <strong>real</strong> <strong>rational</strong><strong>functions</strong> <strong>via</strong> <strong>integer</strong> linear programming. Many algorithms have been proposedfor <strong>the</strong> continuous linear programming case, where <strong>the</strong>re is no conditionfor <strong>the</strong> coecients to obtain <strong>integer</strong> values. The most important <strong>of</strong> <strong>the</strong>m are <strong>the</strong>* Tel.: +30 541 79566; fax: +30 541 26947; e-mail: papamark@voreas.ee.duth.gr0096-3003/00/$ - see front matter Ó 2000 Elsevier Science Inc. All rights reserved.PII: S0096-3003(99)00052-1


orG…x k † A…x k†B…x k † 6 d 8x k 2 S and B…x k † > 0; …3†where d, a suciently small positive value.To formulate <strong>the</strong> <strong>approximation</strong> problem, at each sampling point x k 2 S, <strong>the</strong>variables n 0 kare de®ned through <strong>the</strong> following relationjG…x k †B…x k † A…x k †j ˆ n 0 k : …4†Since we accept that B…x k † > 0 for every x k 2 S, <strong>the</strong> relation (4) may also bewritten in <strong>the</strong> formG…x k † A…x k†B…x k † ˆn0 kB…x k † :…5†From Eq. (5), it is clear that for a satisfactory <strong>approximation</strong> <strong>the</strong> quantitiesd 0 k ˆ B…x k†n 0 …6†kmust achieve large positive values. If, <strong>the</strong>refore,n 0 ˆ maximumfn 0 k g…7†x k 2Sand( )1d ˆ maximum n 0…8†x k 2SB k<strong>the</strong>n, <strong>the</strong> <strong>approximation</strong> problem may be formulated as follows:maximize dsubject to <strong>the</strong> constraintsjG…x k †B…x k † A…x k †j 6 n 0 ;n 0B…x k † 6 1 dfor k ˆ 1; 2; ...; K;where n 0 P 0 and d > 0.From <strong>the</strong> above formulation <strong>of</strong> <strong>the</strong> <strong>approximation</strong> problem, we can concludethat· For every x k 2 S <strong>the</strong> following relations always hold:G…x k † A…x k†B…x k † 6N. Papamarkos / Appl. Math. Comput. 112 (2000) 113±124 115n0B…x k † 6 1 d :…9†…10†· The second set <strong>of</strong> constraints guarantees <strong>the</strong> positiveness <strong>of</strong> B…x k † for everyx k 2 S.


116 N. Papamarkos / Appl. Math. Comput. 112 (2000) 113±124· The <strong>approximation</strong> problem (9) does not have a linear form.By using (1), <strong>the</strong> <strong>approximation</strong> problem (9) is rewritten in <strong>the</strong> followingform:maximize dsubject to! G…x k † 1 ‡ XMbj~B j …x k † XNa j~A j …x k †!6 n 0 ;…11†jˆ1jˆ1! 1 ‡ XMb j~B j …x k † ‡ dn 0 i 6 0 for k ˆ 1; 2; ...; K;jˆ1where n 0 P 0 and d > 0.The <strong>approximation</strong> problem, as formulated in (11), is not linear, but it maybe converted to a linear one <strong>via</strong> <strong>the</strong> transformations:n ˆ 1n 0 ;b 0 j ˆ bjn 0 ; for j ˆ 1; 2; ...; M;…12†a 0 j ˆ ajn 0 ; for j ˆ 1; 2; ...; N:Now, using (12), <strong>the</strong> <strong>approximation</strong> problem is reformulated asmaximize dsubject to!n ‡ XMb 0 ~ jB j …x k † XNa 0 ~ jA j …x k † 6 1;G k G kjˆ1n ‡ XMn ‡ XMjˆ1jˆ1b 0 j ~ B j …x k †!jˆ1‡ XNjˆ1a 0 j ~ A j …x k † 6 1;!b 0 ~ jB j …x k † ‡ d 6 0 for k ˆ 1; 2; ...; K;…13†where n 0 P 0 and d > 0.The above problem (13) shows that <strong>the</strong> <strong>approximation</strong> problem (11) can beeasily linearized by using relations (12). If some or all <strong>of</strong> <strong>the</strong> function coecientsmust take only <strong>integer</strong> values <strong>the</strong>n an <strong>integer</strong> <strong>approximation</strong> problemmust be formulated.


N. Papamarkos / Appl. Math. Comput. 112 (2000) 113±124 117Fig. 1. A typical structure <strong>of</strong> a binary tree.2.1. Formulation <strong>of</strong> <strong>the</strong> <strong>mixed</strong> <strong>integer</strong> linear programming algorithmThe Mixed Integer Linear Programming Algorithm (MILPA) used is basedon a tree search technique and speci®cally on <strong>the</strong> branch and bound binary treealgorithm. Fig. 1 shows <strong>the</strong> structure <strong>of</strong> a binary tree, where from each nodetwo branches are departed. Each branch <strong>of</strong> <strong>the</strong> tree ends into a ``child'' node.The initial node is <strong>the</strong> root node and is <strong>the</strong> practical continuous solution <strong>of</strong> <strong>the</strong>problem. At each node <strong>of</strong> <strong>the</strong> tree, a linear programming problem is solved inwhich all <strong>the</strong> variables are considered to be continuous and where additionallinear constraints are embedded in <strong>the</strong> constraints <strong>of</strong> <strong>the</strong> original (initial)problem. These constraints correspond to <strong>the</strong> speci®c path <strong>of</strong> <strong>the</strong> current node.The entire tree technique is based on a systematic search <strong>of</strong> <strong>the</strong> tree nodes andcan be followed by di€erent tasks. In this implementation, <strong>the</strong> so-called preordertechnique is used, which for <strong>the</strong> tree <strong>of</strong> Fig. 1 corresponds to <strong>the</strong> (AB-CDEFGHIJKLMNO) path. The pre-order technique speeds up <strong>the</strong> entireprocess by cutting branches <strong>of</strong> <strong>the</strong> tree. In addition, if a good estimation <strong>of</strong> <strong>the</strong>®nal <strong>integer</strong> solution is known from <strong>the</strong> beginning, <strong>the</strong>n <strong>the</strong> pre-order techniqueachieves <strong>the</strong> optimal solution faster.The tree search technique is implemented by using a three-dimensionalmatrix. This matrix de®nes for each node <strong>the</strong> additional linear constraintsthat must be added to <strong>the</strong> initial problem. The ®rst column <strong>of</strong> this matrixgives <strong>the</strong> consecutive number <strong>of</strong> <strong>the</strong> variables. The second column contains


118 N. Papamarkos / Appl. Math. Comput. 112 (2000) 113±124<strong>the</strong> constant values <strong>of</strong> <strong>the</strong> additional constraints. Finally, <strong>the</strong> third columncontains only <strong>the</strong> values 1 or 1, which de®ne if <strong>the</strong> additional constraintsare <strong>of</strong> type 6 or P , respectively. To de®ne <strong>the</strong> end <strong>of</strong> <strong>the</strong> path, all <strong>the</strong>elements <strong>of</strong> <strong>the</strong> last row <strong>of</strong> <strong>the</strong> matrix take <strong>the</strong> value 5. For example <strong>the</strong>following matrix231 5 12 8 167…14†4 3 14 1 55 5 5de®nes that we are in node E and that <strong>the</strong> constraintsx 1 6 5x 2 P 8x 3 6 14…15†must be added to <strong>the</strong> original linear problem.In each node, every <strong>integer</strong> variable produces two linear programmingproblems. More speci®cally, if in a node ~x j is <strong>the</strong> value <strong>of</strong> <strong>the</strong> variable x j <strong>the</strong>n<strong>the</strong> solution set Q <strong>of</strong> <strong>the</strong> <strong>integer</strong> problem is divided into two sets Q 1 and Q 2such aswithQ ˆ Q 1 [ Q 2 and Q 1 \ Q 2 ˆ 0 …16†Q 1 ˆ Q \fx j : x j 6 ‰~x j Šg;Q 2 ˆ Q \fx j : x j P ‰~x j Š‡1g;where [x] denotes <strong>the</strong> <strong>integer</strong> part <strong>of</strong> x. Obviously, every solution <strong>of</strong> Q belongsto Q 1 or to Q 2 .As it is analyzed, each node decomposes <strong>the</strong> problem to two new linearprogramming problems, which correspond to <strong>the</strong> two ``child'' nodes. This topdownprocess is ®nished when it is found a solution, which is(a) an <strong>integer</strong> solution,(b) a non-feasible solution,(c) a non-limited solution,(d) a non-<strong>integer</strong> solution, which is not better from a previous solution.The <strong>integer</strong> algorithm described above cannot be applied directly to <strong>the</strong>problem (13), because <strong>the</strong> variables <strong>of</strong> this problem are not <strong>the</strong> coecients <strong>of</strong><strong>the</strong> <strong>rational</strong> function but <strong>the</strong> coecients divided by <strong>the</strong> auxiliary variable n 0 .Ino<strong>the</strong>r words, we want <strong>integer</strong> values for <strong>the</strong> variables a j and b j and not(or > for instead <strong>of</strong>) for <strong>the</strong> variables a 0 j ˆ a j=n 0 and b 0 j ˆ b j=n 0 . However, if <strong>the</strong>


N. Papamarkos / Appl. Math. Comput. 112 (2000) 113±124 119tree search algorithm refers to <strong>the</strong> variables a j and b j , <strong>the</strong>n, at each tree node,additional constraints <strong>of</strong> <strong>the</strong> form:a j 6 p;a j P p;b j 6 p;…17†b j P p:can be transformed into <strong>the</strong> following form:qn ‡ a 0 j 6 0;qn a 0 j 6 0;rn ‡ b 0 j 6 0;…18†rn b 0 j 6 0:This form is suitable for <strong>the</strong> linear programming problem (13) and <strong>the</strong>reforecan be added to it. Doing this, at each tree node a linear programming problemis solved in <strong>the</strong> following form:maximize dsubject to!n ‡ XMb 0 ~ jB j …x k † XNa 0 ~ jA j …x k † 6 1;G kjˆ1!jˆ1…19†0; G k n ‡ XMb 0 ~ jB j …x k † ‡ XNa 0 ~ jA j …x k † 6 1; r m1 n ‡ b 0 j 6 0; r m 2n b 0 j 6 j 2‰1 ...MŠ;jˆ1jˆ1! n ‡ XMb 0 ~ jB j …x k † ‡ d 6 0;jˆ1 q n1n ‡ a 0 j 6 0; q n 2n a 0 j6 0; j 2‰1 ...NŠ;where q n1; q n2and r m1 ; r m2 <strong>integer</strong>s, n 0 P 0, d > 0 and k ˆ 1; 2; ...; K.It is noted that in <strong>the</strong> linear problem (19), <strong>the</strong> variables a 0 j and b0 jare unrestrictedin sign. <strong>On</strong> <strong>the</strong> o<strong>the</strong>r hand, linear programming algorithms, such as<strong>the</strong> RSA, require only non-negative variables. A simple way to overcome thisdiculty is to shift <strong>the</strong> variables by a suitable shift constant V > 0. Therefore,if we de®ne


120 N. Papamarkos / Appl. Math. Comput. 112 (2000) 113±124p j ˆ V ‡ a 0 jfor j ˆ 1; 2; ...; N;q j ˆ V ‡ b 0 jfor j ˆ 1; 2; ...; M;…20†<strong>the</strong>n, <strong>the</strong> linear problem (19) is reformulated asmaximize dsubject toG kn ‡ XMjˆ1q j~B j …x k †jˆ1! XN! G k n ‡ XMq j~B j …x k †jˆ1jˆ1‡ XNp j~ Aj …x k †‡d k y 6 1;jˆ1p j~A j …x k †d k y 6 1;! n ‡ XMq j~B j …x k † ‡ d ‡ h k y 6 0 y ˆ 1; q n1n ‡ p j 6 V ; q n2n ‡ p j P V ; j 2‰1 ...NŠ; r m1 n ‡ q j 6 V ; r m2 n ‡ q j P V ; j 2‰1 ...MŠ;…21†where q n1; q n2and r m1 ; r m2 known <strong>integer</strong>s, n 0 P 0, d > 0 and k ˆ 1; 2; ...; K.All <strong>the</strong> variables are positive, andh k ˆ V XMjˆ1~B j …x k †; …22†d k ˆG k V XM~B j …x k †‡V XNjˆ1jˆ1~A j …x k †ˆG k h k ‡ v XNjˆ1~A j …x k †: …23†Problem (21) is <strong>the</strong> linear programming problem that must be solved in eachnode. It corresponds to a total number <strong>of</strong> M ‡ N ‡ 3 variables and 3K ‡ D n ‡ 1linear constraints, where D n is <strong>the</strong> number <strong>of</strong> <strong>the</strong> additional linear constraints in<strong>the</strong> node n. Usually, M ‡ N ‡ 3 3K ‡ D n ‡ 1, which means that <strong>the</strong> linearprogramming problem must be solved by its dual, using a method such as <strong>the</strong>RSA.According to <strong>the</strong> above analysis, <strong>the</strong> <strong>mixed</strong> <strong>integer</strong> linear <strong>rational</strong> <strong>approximation</strong>algorithm consists <strong>of</strong> <strong>the</strong> following steps:Step 1. The <strong>integer</strong> and continuous coecients are de®ned and <strong>the</strong> LRA<strong>approximation</strong> problem (13) is formulated. If it is known from <strong>the</strong> beginning,we can give an estimation <strong>of</strong> <strong>the</strong> global-<strong>integer</strong> solution.Step 2. The LRA problem is solved as a continuous variable problem. Let X<strong>the</strong> vector <strong>of</strong> variables that must take <strong>integer</strong> values in <strong>the</strong> ®nal <strong>mixed</strong>-<strong>integer</strong>solution.


N. Papamarkos / Appl. Math. Comput. 112 (2000) 113±124 121Step 3. If all <strong>the</strong> elements <strong>of</strong> X are <strong>integer</strong>s <strong>the</strong>n <strong>the</strong> optimal <strong>integer</strong> solutionis found.Step 4. A new linear programming sub-problem <strong>of</strong> <strong>the</strong> form (21) is formulatedand solved by <strong>the</strong> RSA.Step 5. If <strong>the</strong> sub-problem does not have any solution or its solution is worsethan a previous solution, <strong>the</strong>n go to Step 6. If <strong>the</strong> sub-problem has an <strong>integer</strong>solution better than a previous <strong>integer</strong> solution <strong>the</strong>n put X in ˆ X and go to Step6. In any o<strong>the</strong>r case, go to Step 7.Step 6. Move to <strong>the</strong> next node <strong>of</strong> <strong>the</strong> tree and go to Step 7. If all <strong>the</strong> nodes <strong>of</strong><strong>the</strong> tree are examined <strong>the</strong>n go to Step 7.Step 7. De®ne <strong>the</strong> additional linear constraints and go to Step 4.Step 8. The optimal solution is found.3. ExampleThe proposed method was successfully tested on a variety <strong>of</strong> <strong>approximation</strong>problems. In this paper we use <strong>the</strong> MIRFA algorithm for <strong>the</strong> <strong>approximation</strong> <strong>of</strong><strong>the</strong> <strong>rational</strong> function with n ˆ m ˆ 3 coecients. The sampling data are producedfrom <strong>the</strong> <strong>rational</strong> function4 ‡ 0:2x ‡ 3x 2f …x† ˆ…24†1 ‡ 2x ‡ 0:8x 2 ‡ 4x 3in <strong>the</strong> rage [0,2]. Speci®cally, x k ; k ˆ 1; ...; K, with K ˆ 30, equal spaced valuesare used for <strong>the</strong> independent variable x, which from (24) produce 30 samplingdata for <strong>the</strong> function f(x). The values <strong>of</strong> f …x k †; k ˆ 1; ...; K are truncated to<strong>the</strong> ®fth decimal point.The A ~ i …x† and ~B i …x† <strong>functions</strong> have <strong>the</strong> following form~A i …x† ˆx i1 ; ~B i …x† ˆx i : …25†The application <strong>of</strong> <strong>the</strong> RFA algorithm, after 22 loops, gives <strong>the</strong> followingcontinuous optimal solutiond ˆ 336215:824n ˆ 2:97428 10 6a 1 ˆ 4:0 b 1 ˆ 1:99778a 2 ˆ 0:200093 b 2 ˆ 0:799946a 3 ˆ 3:00022 b 3 ˆ 4:00034Obviously, <strong>the</strong> values <strong>of</strong> <strong>the</strong> optimal coecients are not exactly <strong>the</strong> initial <strong>of</strong>(24) due to <strong>the</strong> truncating procedure.The application <strong>of</strong> <strong>the</strong> MIRFA algorithm, with V ˆ 100, gives <strong>the</strong> followingoptimal <strong>integer</strong> solution:


122 N. Papamarkos / Appl. Math. Comput. 112 (2000) 113±124Fig. 2. Approximation results.Fig. 3. Final <strong>approximation</strong> error.


N. Papamarkos / Appl. Math. Comput. 112 (2000) 113±124 123d ˆ 5:545848 n ˆ 0:18031509a 1 ˆ 4 b 1 ˆ 3a 2 ˆ 6 b 2 ˆ 5a 3 ˆ 2 b 3 ˆ 4Fig. 2 depicts <strong>the</strong> comparison between f(x) and <strong>the</strong> solutions <strong>of</strong> RFA andMIRFA. Fig. 3 shows <strong>the</strong> ®nal <strong>approximation</strong> error in each sampling point.4. ConclusionsThis paper has introduced a method for <strong>approximation</strong> <strong>of</strong> <strong>real</strong> <strong>rational</strong><strong>functions</strong> <strong>via</strong> <strong>mixed</strong> <strong>integer</strong> linear programming. The proposed algorithm extends<strong>the</strong> RFA algorithm to <strong>the</strong> case where some <strong>of</strong> <strong>the</strong> function coecientstake <strong>integer</strong> values. The conversion <strong>of</strong> <strong>the</strong> RFA linear programming problemto a <strong>mixed</strong> <strong>integer</strong> one, is not a simple task. Our approach is based on <strong>the</strong>branch and bound tree search technique and on a suitable transformation <strong>of</strong><strong>the</strong> additional constraints produced on tree nodes. Thus, on each tree node alinear programming problem is formulated and solved by using <strong>the</strong> dual formand <strong>the</strong> RSA.The formulation <strong>of</strong> <strong>the</strong> problem and <strong>the</strong> use <strong>of</strong> linear programming guaranteesthat <strong>the</strong> <strong>approximation</strong> problem has always a solution and that thissolution is <strong>the</strong> global optimal solution.References[1] H. Press, B.P. Flannery, S.A. Teukolsky, W.T. Vetterling, Numerical Recipes: The ArtScienti®c Computing, Cambridge University Press, Cambridge, 1986.[2] I. Barrodale, M.J. Powell, F.D.K. Roberts, The di€erential correction algorithm for <strong>rational</strong>l 1 <strong>approximation</strong>, SIAM Journal <strong>of</strong> Numerical Analysis 9 (1972) 493±504.[3] N. Papamarkos, G. Vachtsevanos, B. Mertzios, <strong>On</strong> <strong>the</strong> optimum <strong>approximation</strong> <strong>of</strong> <strong>real</strong><strong>rational</strong> <strong>functions</strong> <strong>via</strong> linear programming, Applied Ma<strong>the</strong>matics and Computation 26 (1988)267±287.[4] N. Papamarkos, A program for <strong>the</strong> optimum <strong>approximation</strong> <strong>of</strong> <strong>real</strong> <strong>rational</strong> <strong>functions</strong> <strong>via</strong>linear programming, Advances in Engineering S<strong>of</strong>tware 11 (1) (1989) 37±48.[5] N. Papamarkos, G. Vachtsevanos, A fast linear programming approach to <strong>the</strong> design <strong>of</strong> 1-DIIR digital ®lters, International Journal <strong>of</strong> Circuits Theory Applications 18 (1990) 325±333.[6] G. Vachtsevanos, N. Paramarkos, B.G. Mertzios, <strong>On</strong> <strong>the</strong> <strong>approximation</strong> <strong>of</strong> <strong>the</strong> magnituderesponse <strong>of</strong> 2-D IIR digital ®lters using linear programming, Circuits, Systems and SignalProcessing 6 (1987) 45±60.[7] N. Papamarkos, I. Spiliotis, A. Zoumadakis, Character recognition by signature <strong>approximation</strong>,International Journal <strong>of</strong> Pattern Recognition and Arti®cial Intelligence 8 (5) (1994) 1171±1187.


124 N. Papamarkos / Appl. Math. Comput. 112 (2000) 113±124[8] N. Papamarkos, B. Gatos, A new approach for multithreshold selection, Computer Vision,Graphics, and Image Processing-Graphical Models and Image Processing 56 (5) (1994) 357±370.[9] N. Papamarkos, Multi<strong>rational</strong> function <strong>approximation</strong> <strong>via</strong> linear programming, AppliedMa<strong>the</strong>matics and Computation, Applied Ma<strong>the</strong>matics and Computation 75 (1996) 75±89.[10] S. Walukiewicz, Integer Programming (Ma<strong>the</strong>matics and Its Applications), Kluwer AcademicPublishers, Dordrecht, 1990.[11] S.I. Gass, Linear Programming: Methods and Applications, 4th ed., McGraw-Hill, New York,1975.[12] D.J. Pannell, Introduction to Practical Linear Programming, Wiley, New York, 1996.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!