MPEMathematical Problems in Engineering1563-51471024-123XHindawi Publishing Corporation72340210.1155/2010/723402723402Research ArticleA Comparative Study of Redundant Constraints Identification Methods in Linear Programming ProblemsS.Paulraj1P.Sumathi2JúdiceJoaquim J.1Department of MathematicsMadras Institute of Technology CampusAnna UniversityChromepet, Chennai, Tamil Nadu 600 044Indiaannauniv.edu2Anna UniversityChennai, Tamil NaduIndiaannauniv.edu20101210201020100701201015042010210920102010Copyright © 2010 Paulraj S and Sumathi P.This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

The objective function and the constraints can be formulated as linear functions of independent variables in most of the real-world optimization problems. Linear Programming (LP) is the process of optimizing a linear function subject to a finite number of linear equality and inequality constraints. Solving linear programming problems efficiently has always been a fascinating pursuit for computer scientists and mathematicians. The computational complexity of any linear programming problem depends on the number of constraints and variables of the LP problem. Quite often large-scale LP problems may contain many constraints which are redundant or cause infeasibility on account of inefficient formulation or some errors in data input. The presence of redundant constraints does not alter the optimal solutions(s). Nevertheless, they may consume extra computational effort. Many researchers have proposed different approaches for identifying the redundant constraints in linear programming problems. This paper compares five of such methods and discusses the efficiency of each method by solving various size LP problems and netlib problems. The algorithms of each method are coded by using a computer programming language C. The computational results are presented and analyzed in this paper.

1. Introduction

Many researchers  have proposed different algorithms to identify the redundancies and removed them to get a reduced model for linear programming. In 1965, Zionts  suggested some improvements upon the implementation of Boot method, but not to the point where it achieved practical value. In addition, a number of other methods were developed that deal with redundancy, among which the geometric vertex enumeration method is the most well known. In geometric vertex enumeration method, the essential characteristic is the establishment of a number of situations in which redundancy can be recognized immediately without further computations.

In 1971, Lisy  used the rules given by Ziont to identify all redundant constraints in systems of linear constraints. Gal  enlarged this approach by adding rules for situations in which constraints can be identified immediately as being nonredundant. Gal proposed another method to classify constraints as redundant or necessary. They produce results that are unconditionally correct; they perform iterations of an active set linear programming algorithm. Later Caron et al.  appended the above methods by adding rules to deal with degeneracy.

Brearly et al.  proposed a simple method to identify redundant constraints from a system of linear constraints. This method involves the lower and upper bounds of the variables. Telgan  proposed a deterministic method to identify redundant constraints by using minimum ratio criteria as in simplex method. Stojković and Stanimirović  proposed a method to identify redundant constraints by applying the maximum and minimum principle. Paulraj et al.  proposed a heuristic method to identify redundant constraints by using the intercept matrix of constraints of a linear programming problem. Gutman and Ioslovich  described a new approach to preprocess nonnegative large-scale problems so as to reduce the dimensions considerably by defining and removing redundant constraints and variables. This test is applicable to all nonnegative large-scale linear programming problem with group constraints. Group constraints only contain zeros and ones coefficients. Constraints and variables are removed by primal and dual tests. This method is applicable to constraints of knapsack problems.

A brief introduction to the redundant constraints of linear programming problems is presented in Section 2. Section 3 discusses the methods for identifying redundant constraints in linear problems. Section 4 deals with the computational results of the methods, and Section 5 concludes the paper.

2. Redundant Constraints

A redundant constraint is a constraint that can be removed from a system of linear constraints without changing the feasible region.

Consider the following system of m nonnegative linear inequality constraints and n variables (mn): AXb,X0, where ARmxn,bRm,XRn, and 0Rn.

Let AiXbi be the ith constraint of the system (2.1) and let S={XRn/AiXbi,X0} be the feasible region associated with system (2.1).

Let Sk={XRn/AiXbi,  X0,  ik} be the feasible region associated with the system of equations AiXbi,  i=1,2,,m,  ik. The kth constraint AkXbk(1km) is redundant for the system (2.1) if and only if S=Sk.

Definition 2.1.

Redundant constraints can be classified as weakly and strongly redundant constraints.

Weakly Redundant Constraints

The constraint AiXbi is weakly redundant if it is redundant and AiX=bi for some XS.

Strongly Redundant Constraints

The constraint AiXbi is strongly redundant if it is redundant and AiX<bi for all XS.

Binding Constraint

Binding constraint is the one which passes through the optimal solution point. It is also called a relevant constraint.

Nonbinding Constraint

Nonbinding constraint is the one which does not pass through the optimal solution point. But it can determine the boundary of the feasible region.

Example 2.2.

Consider the following linear inequality constraints:

(1) 2x1+1x28,

(2) 4x1+0x215,

(3) 1x1+3x29,

(4) 1x1+2x214,

(5) 1x24,

(6) 1x1+1x25,

where x1+x20.

In Figure 1, the region OABCD is the feasible region and the vertex C is the optimal point. The constraints (1), (3), and (6) are binding, (4) and (5) are strictly redundant. The 2nd constraint is non-binding. Among the binding constraints, (6) is weakly redundant.

3. Methods for Identification of Redundant Constraints

Many methods are available in the literature to identify the redundant constraints in linear programming problems. In this paper, the following five methods are discussed and compared

bounds method 

linear programming method 

deterministic method 

stojković and Stanimirović method 

heuristic method .

3.1. Bounds Method

Brearly et al.  proposed a simple method for identifying redundant constraints for a Linear Programming Problem (LPP) with bounded variables. This method involves the lower and upper bounds of the variables. The upper and lower bounds of each constraint are computed and compared with the right-hand side of that constraint to decide if it is a redundant constraint or not.

Procedure of the Method.

The general form of an LPP with bounded variables is maxz=j  =1ncjxj,Subject  toj  =1naijxjbi(i=1,2,,m),ljxjuj(j=1,2,,n).

Step 1.

Compute upper and lower bounds for each constraint by Ui=jPiaijuj+jNiaijlj,Li=jPiaijlj+jNiaijuj, where Pi={j;aij>0}, and Ni={j;aij<0}, Li may be 0, and Ui may be +.

Step 2.

Test whether Uibi,i=1,2,,m. The ith constraint j  =1naijxjbi is redundant if Uibi.

Example 3.1.

Consider the following LPP: maxz=4x1+2x2+x3,subject  to2x1+x2+x330,3x1+x2+x326,x2+x313,x1+2x2+x345,0x18.67,0x213,0x313.

Solution 1.

Step 1.

Define P1={1,2,3},N1=φ,P2={1,2,3},N2=φ,P3={2,3},N3=φ,P4={1,2,3},N4=φ, where φ is the empty set.

Step 2.

Compute L1=0,U1=17.34+13+13=43.34,L2=0,U2=26.01+13+13=52.01,L3=0,U3=13+13=26,L4=0,U4=8.67+26+13=47.67. Since all Uibi, i=1,2,3,4, there is no redundant constraint found by this method.

3.2. Linear Programming Method

Caron et al.  developed an algorithm for identifying redundant constraints. This method will take more computational effort to identify the redundant constraints. To identify the redundant constraints, the left-hand side of each constraint is optimized subject to the remaining constraints. The optimal objective functional value is compared with the right-hand side value of corresponding constraints to decide if it is redundant or not. In this method, the objective function of the original LPP is not considered.

Let P denote the given linear programming problem.

Let Pi denote the LP Problem without the ith constraint j=1naijxjbi of P and let the objective function of LP problem Pi be maxzi=j=1naijxj.

Step 1.

Find the optimal objective function value to the problem Pi, i=1,2,,m, by using the simplex method. Let zi be the optimal objective function value of problem Pi.

Step 2.

Check whether zibi. The ith constraint j=1naijxjbi is redundant if zibi.

Otherwise, it is not redundant.

Example 3.2.

Consider the Example 3.1 presented in Section 3.1.

Solution 2.

By solving the above Example 3.2, we get z=43.33,  x1=4.33,  x2=13.00, and x3=0.Step 1.

For i=1,2,3,4, consider the problem Pi as follows: maxzi=left-hand  side  of  constraint  i,subject  to3x1+x2+x326,x2+x313,x1+2x2+x345,x1,x2,x30.

Using the simplex method,

the solution of problem P1 is z1=21.67, x1=4.33, x2=13.00, and x3=0.00.

Step 2.

Here z1<b1,z2>b2,z3>b3, and z4<b4. Therefore, the constraints (1) and (4) are redundant.

3.3. Deterministic Method

Telgan  developed an algorithm for identifying redundant constraints and implicit equalities in system of linear constraints using minimum ratio criteria as in the simplex method.

Procedure of the Method

Assume that a basic feasible solution is given, and the corresponding contracted simplex tableau is set up. Let yij be the entries of this tableau with yi0 the right-hand side coefficients, and let xjB and xjN represent the basic and nonbasic variables, respectively. Let H be the set of all indices of constraints to be identified as either redundant or nonredundant.

Let uk be the slack variable corresponding to the kth constraint.

Step 1.

If the solution is nondegenerate, all uk=xjN correspond to nonredundant inequalities, remove k from H and continue with Step 3.

Step 2.

In a degenerate solution check all nonbasic variables uk=xpN with kH. Check the property yip0 for all  i with yi0=0. If this holds, then the constraint Akxbk is not redundant, and remove k from H.

Step 3.

Check all basic variables uk=xrB with kH for the property yij 0 for all j. If this holds, then the constraint Akxbk is redundant, and remove k from H.

Step 4.

Check all basic variables uk=xiB with kH for the property yr0/yrs=min{yio/yis,yis>0} is attained at a unique r for some s. If this holds, the constraint Akxbk is not redundant, and remove k from H.

Step 5.

If H=φ, then stop. Else, go to Step 6.

Step 6.

If there is no basic variable uk=xiB with kH, then introduce a nonbasic variable uk=xjN with kH (e.g., the one with the smallest index k) into the basis and continue with Step 1.

Step 7.

Select a basic variable uk=xjB with kH (e.g., the one with the smallest index k) and perform a feasible pivot step in column p with yip=maxyij. Continue with Step 1.

Example 3.3.

Consider Example 3.1 presented in Section 3.1.Solution 3.

Iteration.

Contracted simplex table, see Table 1.Step 1.

x10,x20, and x30 are not redundant.

Step 4.

Now, divide the RHS values by the first column and take the minimum of it min{15,8.66,-,45}=8.66, which corresponds to the 2nd row. Therefore, constraint (2) is not redundant. Now, H={1,3,4}.

Step 7.

Select u1 and find the maximum {2,1,1}=2, which corresponds to the 1st column. Therefore, pivoting on y21, we obtain, see what is Table 2.

Iteration.

Divide the RHS values by the 2nd column and take minimum of it. min{38,26,13,21.8}=13, which corresponds to the 3rd row. Therefore, constraint (3) is not redundant. Now, H={1,4}.Step 4.

Selecting u1,u3 we cannot pivot. So select u4 and the maximum {-1/3,5/3,2/3}=5/3 corresponds to the 2nd column. Therefore, pivoting on y32, we obtain, see what is Table 3.

Step 3.

In the first and last row, all the coefficients are ≤0.

Step 5.

H=φ. Therefore, Constraints (1) and (4) are redundant.

x1x2x3RHS
u121130
u231126
u301113
u412145

Here H={1,2,3,4}.

u2x2x3RHS
u1−2/31/31/338/3
x11/31/31/326/3
u301113
u4−1/35/32/3109/3
u2u3x3RHS
u1−2/3−1/3025/3
x11/3−1/3013/3
x201113
u4−1/3−5/3−144/3
3.4. Stojković and Stanimirović Method

This method is proposed by Stojković and Stanimirović . It is a simple method. It verifies the existence of the saddle point of payoff matrix for the game problem by applying the maxmin and minmax principles.

Procedure of the Method

Step 1.

Compute dij=aij/bicj,  i=1,2,,m, and j=1,2,,n.

Step 2.

If max1im  min1jndij=min1in  max1imdij, then there are no redundant constraints. Stop.

Else, if there exist k and l such that dkjdlj, for all j=1,2,, then the kth constraint is redundant.

Example 3.4.

Consider the Example 3.1 presented in Section 3.1.Solution 4.

Step 1.

dij==min[0.016660.016660.03330.028850.019230.03850.00.03850.07690.00550.02220.0222]0.016660.019230.00.0055.max0.028850.03850.0769

Step 2.

max1i4  min1j3dij=0.01923,min1j3  max1i4dij=0.02855,max1i3  min1j4dijmin1j4  max1i4dij. There must be at least one redundant constraint in the above problem.

Here d1jd2j, j=1,2,3, hence the constraint (1) is redundant.

3.5. Heuristic Method

Paulraj et al.  proposed a heuristic method to identify redundant constraint by using the intercept matrix of constraints of a linear programming problem.

Procedure of the Method

Step 1.

Let I be the set of subscripts associated with the initial basic variables (slack variables). Initially let that set be I={1,2,,m}.

Let J be the set of subscripts associated with the initial decision variables. Initially let that set be J={1,  2,,n}.

Step 2.

Construct an intercept matrix “θ” using the following relationship θji=biaij,  aij>0,  for  jJ,  iI.

Step 3.

Determine the entering variables making use of the following steps.

Calculate zj-cj=CBB-1aj-cj for all nonbasic variables aj=(a1j,a2j,,amj)T.

Let βj=min{θji},   for  jJ,  iI.

Compute zj-cj=βj(zj-cj) for  jJ.

Step 4.

(i) Let zk-ck=minjJ{zj-cj}.

(ii) If zk-ck0, then the problem has no redundant constraints and stop.

(iii) Otherwise, take away the element k from the set J, that is, J=J-{k}.

(iv) Let θkl=miniI{θki}=βk.

(v) Take away the element l from the set I, that is, I=I-{l}.

(vi) Find p such that min {θpl}=βp for pJ. If so, take away such p elements from the set J, that is, J=J-{p}.

Step 5.

If J=φ, then go to Step 6. Otherwise, go to Step 4.

Step 6.

If I=φ, then the problem has no redundant constraints and stop. Otherwise, all the constraints iI whose intercepts on coordinate axis j satisfy the condition θjimax{βj} where iI and j=1,2,,n are redundant. Stop.

Example 3.5.

Consider the Example 3.1 presented in Section 3.1Solution 5.

Step 1.

(i) I={1,2,3,4}, (ii) J={1,2,3}.

Step 2.

[see Table 4].

Step 3.

[see Table 4].

Step 4.

[see Table 5].

Step 5.

J=φ. Constraints (1) and (4) are redundant constraints.

 Basic variables Decision variables S1 S2 S3 S4 zj-cj βj zj′-cj′ X1 15 8.67 — 45 −4 8.67 −34.68 X2 30 26 13 22.5 −2 13 −26 X3 30 26 13 45 −1 13 −13
Iteration numberkJlIJ
11{2,3}2{1,3,4}{2,3}
22{3}3{1,4}{3}
33Φ3{1,4}φ
4. Numerical Results

The comparative results of the five methods are presented in the following tables. Table 6 shows the comparison results of small-scale problems, Table 7 shows the comparison results of medium-scale problems, and Table 8 shows the comparison results of netlib problems . Comparison results of large size problems from OR library  are presented in Table 9.

Comparison of five methods: small-scale problems.

S. no.12345678910
No. of constraints3334434557
No. of variables22233352410
Brearly’s method (constraint no.)0001 (4)1 (4)1 (3)1 (4)002 (3,7)

No. of multiplication/divisionsWith redundant9393933113113363365055351894
Without redundant939393167167186186505535883

Linear programming method (constraint no.)1 (3)01 (3) 2 (3,4)2 (1,4)1 (3)2 (3,4)4 (2,3, 4,5)2 (2,4)5 (2,3, 4,6,7)

No. of multiplication/divisions With redundant9393933113113363365055351894
Without redundant429342767597887050161

Deterministic method (constraint no.)1 (3)01 (3)1(3)2 (1,4)2 (2,3)2 (3,4)2 (3,5)1 (2)0

No. of multiplication/divisionsWith redundant9393933113113363365055351894
Without redundant429342168758888159501894

Stojković-Stanimirović method (constraint no.)00001 (1)002 (2,3)1 (2)0

No. of multiplication/divisionsWith redundant9393933113113363365055351894
Without redundant9393933111671783361591671894

Heuristic method (constraint no.)1 (3)1 (1)1 (3)2 (3,4)2(1,4)1 (3)2 (3,4)3 (3,4,5)3 (2,3,4)5 (2,3,4,6,7)

No. of multiplication/divisionsWith redundant9393933113113363365055351894
Without redundant424242767597887050161

Comparison of five methods: medium-scale problems.

 S. no. Size of the problem Number of redundant constraints identified by no. of constraints no. of variables Brearly’s method linear programming method deterministic method Stojković- Stanimirović method heuristic method 1 16 6 14 13 5 1 14 2 20 5 17 18 1 0 17 3 25 6 17 23 3 0 23 4 30 3 24 29 18 0 29 5 37 5 29 35 12 0 35 6 40 2 38 39 38 0 39 7 45 3 34 43 10 0 43 8 50 5 28 49 11 0 49

Comparison of five methods: netlib problems.

 S. no. and File name Size of the problem Number of redundant constraints identified by No. of constraints No. of variables Brearly’s method Linear programming method Deterministic method Stojković- Stanimirović method Heuristic method (1) afiro 20 20 9 3 0 0 4 (2) fit1d 24 24 2 10 0 0 13 (3) fit2d 25 25 0 19 0 7 19 (4) sc50b 28 28 0 7 0 0 10 (5) sc50a 29 29 1 11 0 2 11 (6) kb2 39 39 3 13 0 14 14 (7) vtpbase 51 51 1 21 0 4 30 (8) bore3d 52 52 42 17 0 22 18

Comparison of five methods: Large Size Problems.

 S. no. and File name Size of the problems Number of redundant constraints identified by No. of constraints No. of variables Brearly method Linear programming method Deterministic method Stojković Stanimirović method Heuristic method (1) scpcyc06 240 192 197 235 201 0 236 (2) scpe2 50 500 31 40 38 0 43 (3) scp43 200 1000 142 195 136 143 196 (4) scp52 200 2000 187 197 163 98 198 (5) scpa3 300 3000 165 181 123 93 293 (6) scpd3 400 4000 243 305 315 64 395 (7) scpcyc08 1792 1024 800 1512 1328 54 1780 (8) scpc1r13 4095 715 1023 3608 3204 0 4083

In Figures 2, 3, 4 and 5, the comparative results of small scale problems, medium scale problems, netlib

problems and large size problems are shown graphically. Figure 2 shows that the heuristic and linear programming methods identify more redundant constraints than the other three methods. Figure 3 indicates that the Stojkovic and stanimirovic method identifies no redundant constraints where as deterministic method identifies very low redundant constraints compared with other methods. Figure 4 indicates that the deterministic method identifies nothing; brearly’s, Stojkovic and stanimirovic methods identify very low redundant constraints and the remaining methods more or less coincide. Figure 5 shows that the Stojkovic and stanimirovic method identifies very less redundant constraints where as heuristic method identify more redundant constraints than the others.

The tables deal with the identification of the number of redundant constraints in linear programming problems by using the five methods. It is very easy to identify quickly the best method in finding redundant constraints of LP problems. Heuristic method seems to be less time consuming, and it requires less computational effort. It also finds more redundant constraints when compared with the other four methods. So this method would be easy and reliable method for identifying redundant constraints. Even though the LP method identifies more redundant constraints, it needs more computational work and takes more time. Brearly’s method identifies less redundant constraints with less computational effort than heuristic and LP methods. Deterministic methods identify more redundant constraints with more computational effort. So time consumption is bigger when compared with heuristic method. Stojković and Stanimirović identified a smaller number of redundant constraints than the others.

The efficiency of the algorithms was also tested by solving the first set of Linear Programming Problems mentioned before and after removing the redundant constraints, identified by each method. Table 6 gives the computational results.

5. Conclusions

In this paper, the heuristic approach  for identifying redundant constraints has been compared with other four methods. Each method has its own role in viewing computational effort and time factor. Linear programming method  and deterministic method  more or less coincide with heuristic method in most of the problems. Brearly et al.  method depends on the upper and lower bounds of the decision variables for identifying the redundant constraints. Hence, the heuristic method is more useful than the other methods.

AndersenE. D.AndersenK. D.Presolving in linear programmingMathematical Programming. Series B199571222124510.1007/BF015860001373365ZBL0846.90068BalinskiM. L.An algorithm for finding all vertices of convex polyhedral setsJournal of the Society for Industrial and Applied Mathematics19619172880142057ZBL0108.33203BootJ. C. G.On trivial and binding constraints in programming problemsManagement Science1962844194410184733BrearleyA. L.MitraG.WilliamsH. P.Analysis of mathematical programming problems prior to applying the simplex algorithmMathematical Programming197585483039849810.1007/BF01580428ZBL0317.90037BonehA.BonehS.CaronR. J.Constraint classification in mathematical programmingMathematical Programming1993611617310.1007/BF015821391236424ZBL0782.90104CaronR. J.McDonaldJ. F.PonicC. M.A degenerate extreme point strategy for the classification of linear constraints as redundant or necessaryJournal of Optimization Theory and Applications198962222523710.1007/BF009410551009067ZBL0651.90047GalT.Weakly redundant constraints and their impact on post optimal analysisEuropean Journal of Operational Research197960315326GutmanP. O.IsolovichI.Robust redundancy determination and evaluation of the dual variables of linear programming problems in the presence of uncertainty, on the generalized wolf problem: preprocessing of nonnegative large scale linear programming problems with group constraintsTechnion-Israel Institute of Technology200768814011409GreenbergH. J.Consistency, redundancy, and implied equalities in linear systemsMathematics and Artificial Intelligence199617378310.1007/BF02284624ZBL0887.90114KarwanM. H.LotfiV.TelgenJ.ZiontsS.Redundancy in Mathematical Programming: A State-of-the-Art Survey1983Berlin, GermanySpringerMattheisT. H.An algorithm for determining irrelevant constraints and all vertices in systems of linear inequalitiesOperations Research19732124726010.1287/opre.21.1.247LisyJ.Metody pro nalezini redundantnich omezeni vulohach linerniho programovani. Ekonomicko MatematicSObzor197173285298StojkovićN. V.StanimirovićP. S.Two direct methods in linear programmingEuropean Journal of Operational Research200113124174392-s2.0-003537223810.1016/S0377-2217(00)00083-7ZBL0991.90087PaulrajS.ChellappanC.NatesanT. R.A heuristic approach for identification of redundant constraints in linear programming modelsInternational Journal of Computer Mathematics2006838-96756832-s2.0-3454778224810.1080/00207160601014148ZBL1128.90040TelgenJ.Identifying redundant constraints and implicit equalities in system of linear constraintsManagement Science19832910120912222-s2.0-0020829377ZBL0527.90066ThompsonG. L.TongeF. M.ZiontsS.Techniques for removing nonbinding constraints and extraneous variables from linear programming problemsManagement Science1996127588608ZiontsS.Size of reduction techniques of linear programming and their applications, Dissertation1965Carnegie Institute of TechnologyNetlib problemshttp://ftp.zib.de/pub/mp-testdata/madlib/node2.htmlBeasleyJ. E.Distributing test problems by electronic mailJournal of Operational Research Society19904110691107