^{1}

^{2}

^{1}

^{2}

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.

Many researchers [

In 1971, Lisy [

Brearly et al. [

A brief introduction to the redundant constraints of linear programming problems is presented in Section

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

Let

Let

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

The constraint

The constraint

Binding constraint is the one which passes through the optimal solution point. It is also called a relevant 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.

Consider the following linear inequality constraints:

(1)

(2)

(3)

(4)

(5)

(6)

where

In Figure

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 [

Brearly et al. [

The general form of an LPP with bounded variables is

Compute upper and lower bounds for each constraint by

Test whether

Consider the following LPP:

Define

Compute

Caron et al. [

Let

Let

Find the optimal objective function value to the problem

Check whether

Otherwise, it is not redundant.

Consider the Example

By solving the above Example

For

Using the simplex method,

the solution of problem

Here

Telgan [

Assume that a basic feasible solution is given, and the corresponding contracted simplex tableau is set up. Let

Let

If the solution is nondegenerate, all

In a degenerate solution check all nonbasic variables

Check all basic variables

Check all basic variables

If

If there is no basic variable

Select a basic variable

Consider Example

Contracted simplex table, see Table

Now, divide the RHS values by the first column and take the minimum of it

Select

Divide the RHS values by the 2nd column and take minimum of it.

Selecting

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

RHS | ||||
---|---|---|---|---|

2 | 1 | 1 | 30 | |

3 | 1 | 1 | 26 | |

0 | 1 | 1 | 13 | |

1 | 2 | 1 | 45 |

Here

RHS | ||||
---|---|---|---|---|

−2/3 | 1/3 | 1/3 | 38/3 | |

1/3 | 1/3 | 1/3 | 26/3 | |

0 | 1 | 1 | 13 | |

−1/3 | 5/3 | 2/3 | 109/3 |

RHS | ||||
---|---|---|---|---|

−2/3 | −1/3 | 0 | 25/3 | |

1/3 | −1/3 | 0 | 13/3 | |

0 | 1 | 1 | 13 | |

−1/3 | −5/3 | −1 | 44/3 |

This method is proposed by Stojković and Stanimirović [

Compute

If

Else, if there exist

Consider the Example

Here

Paulraj et al. [

Let

Let

Construct an intercept matrix “

Determine the entering variables making use of the following steps.

Calculate

Let

Compute

(i) Let

(ii) If

(iii) Otherwise, take away the element

(iv) Let

(v) Take away the element l from the set

(vi) Find

If

If

Consider the Example

(i)

[see Table

[see Table

[see Table

Basic variables | |||||||

Decision variables | |||||||

15 | 8.67 | — | 45 | −4 | 8.67 | −34.68 | |

30 | 26 | 13 | 22.5 | −2 | 13 | −26 | |

30 | 26 | 13 | 45 | −1 | 13 | −13 |

Iteration number | |||||
---|---|---|---|---|---|

1 | 1 | 2 | |||

2 | 2 | 3 | |||

3 | 3 | 3 |

The comparative results of the five methods are presented in the following tables. Table

Comparison of five methods: small-scale problems.

S. no. | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | |
---|---|---|---|---|---|---|---|---|---|---|---|

No. of constraints | 3 | 3 | 3 | 4 | 4 | 3 | 4 | 5 | 5 | 7 | |

No. of variables | 2 | 2 | 2 | 3 | 3 | 3 | 5 | 2 | 4 | 10 | |

Brearly’s method (constraint no.) | 0 | 0 | 0 | 1 (4) | 1 (4) | 1 (3) | 1 (4) | 0 | 0 | 2 (3,7) | |

No. of multiplication/divisions | With redundant | 93 | 93 | 93 | 311 | 311 | 336 | 336 | 505 | 535 | 1894 |

Without redundant | 93 | 93 | 93 | 167 | 167 | 186 | 186 | 505 | 535 | 883 | |

Linear programming method (constraint no.) | 1 (3) | 0 | 1 (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 redundant | 93 | 93 | 93 | 311 | 311 | 336 | 336 | 505 | 535 | 1894 |

Without redundant | 42 | 93 | 42 | 76 | 75 | 97 | 88 | 70 | 50 | 161 | |

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

No. of multiplication/divisions | With redundant | 93 | 93 | 93 | 311 | 311 | 336 | 336 | 505 | 535 | 1894 |

Without redundant | 42 | 93 | 42 | 168 | 75 | 88 | 88 | 159 | 50 | 1894 | |

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

No. of multiplication/divisions | With redundant | 93 | 93 | 93 | 311 | 311 | 336 | 336 | 505 | 535 | 1894 |

Without redundant | 93 | 93 | 93 | 311 | 167 | 178 | 336 | 159 | 167 | 1894 | |

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/divisions | With redundant | 93 | 93 | 93 | 311 | 311 | 336 | 336 | 505 | 535 | 1894 |

Without redundant | 42 | 42 | 42 | 76 | 75 | 97 | 88 | 70 | 50 | 161 |

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

problems and large size problems are shown graphically. Figure

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

In this paper, the heuristic approach [