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 ...
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.