2. Outline
1. Why Integer Programming
2. Introduction to All Integer Linear Programming Problem (AILP) and Mixed Integer Linear
Programming Problem (MILP)
3. Common Approach for solving AILP
4. Introduction to Gomoryโs Cutting Plane Method
5. Derivation of Gomoryโs Cutting Plane Method
6. Gomoryโs Cutting Plane Method Algorithms
7. Explaination of Gomoryโs Cutting Plane Method Algorithm with Example
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 2
3. Why Integer Programming
Production Problem
โฆ Items being produced may be in complete units
โฆ E.g. TV Sets of 21โ and 29โ
โฆ Therefore fractional number of item have no meaning
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 3
4. IPP Expression
PROBLEM DEFINITION
๐๐๐ฅ ๐ง = ๐=1
๐
๐๐ ๐ฅ๐
subject to
๐=1
๐
๐๐๐ ๐ฅ๐ = ๐๐ (๐ = 1, โฆ , ๐)
๐ฅ๐ โฅ 0 (j=1,โฆ,n)
and
๐ฅ๐ ๐๐๐ก๐๐๐๐ ๐๐๐ ๐1โ ๐
where j={1,2, โฆ ,n}
DEFINITION
All Integer LPP (AILP):- If all variable take
integer values only. (if ๐ ๐ = ๐)
(slack & surplus variable take integer value)
Mixed Integer LPP (MILP):- If some but not
all variable of the problem are constrained
Integer values.
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 4
5. IPP Example
EXAMPLE OF AILP
๐๐๐ฅ ๐ง = 4๐ฅ1 + 3๐ฅ2
subject to
๐ฅ1 + ๐ฅ2 โค 8
2๐ฅ1 + ๐ฅ2 โค 10
๐ฅ1, ๐ฅ2 โฅ 0
and
๐ฅ1 ๐๐๐ ๐ฅ2 ๐๐๐ก๐๐๐๐
๐ฅ1 and ๐ฅ2 are non-negative integer
slack variable
๐ฅ3 = 8 โ ๐ฅ1 โ ๐ฅ2 &
๐ฅ4 = 10 โ 2๐ฅ1 โ ๐ฅ2
are also non-negative integer
if we consider 2nd constraints is given as:
2๐ฅ1 + ๐ฅ2 โค 10;
๐ฅ4 = 10 โ 2๐ฅ1 โ ๐ฅ2
Then this problem no more AILP. But MILP
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 5
6. Common Approach (Rounding off)
PROBLEM
๐๐๐ฅ ๐ง = 21๐ฅ1 + 11๐ฅ2
subject to
7๐ฅ1 + 4๐ฅ2 โค 13
๐ฅ1, ๐ฅ2 โฅ 0
and
๐ฅ1 ๐๐๐ ๐ฅ2 ๐๐๐ก๐๐๐๐
The Feasible Set of discrete points
0,0 , 0,1 , 1,0 , 1,1 , 0,2 , 0,3 .
Lies inside feasible region, can be visualize in
figure
Optimal Soln. of ILP ๐ฅ1
โ
= 0, ๐ฅ2
โ
= 3, ๐งโ
= 33
Optimal Soln. of LLP (๐ฅ1
โ
= 13/7, ๐ฅ2
โ
= 0, ๐งโ
= 39)
Rounding LLP Soln. (๐ฅ1
โ
= 2, ๐ฅ2
โ
= 0, ๐งโ
= 42),
two obj. fn are not close in any meaningful sense
Rounding off is not correct approach to solve ILPโs5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 6
7. Common Approach (Convex Hull)
PROBLEM
๐๐๐ฅ ๐ง = 21๐ฅ1 + 11๐ฅ2
subject to
7๐ฅ1 + 4๐ฅ2 โค 13
๐ฅ1, ๐ฅ2 โฅ 0
and
๐ฅ1 ๐๐๐ ๐ฅ2 ๐๐๐ก๐๐๐๐
The Feasible Set of the given ILP is non convex, its convex hull is a
polytope whose corner points meet the integer requirements.
0,0 , 0,1 , 1,0 , 1,1 , 0,2 , 0,3 .
Lies inside feasible region, can be visualize in figure
Optimal Soln. of ILP ๐ฅ1
โ
= 0, ๐ฅ2
โ
= 3, ๐งโ
= 33
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 7
8. Common Approach (Convex Hull)
PROBLEM (ILP EQUIVALENT TO SOLVING LPP)
๐๐๐ฅ ๐ง = ๐=1
๐
๐๐ ๐ฅ๐
subject to
(๐ฅ1, โฆ , ๐ฅ ๐) โ ๐,
Where S is the polytope
๐=1
๐
๐๐๐ ๐ฅ๐ = ๐๐(๐ = 1, โฆ , ๐)
๐ฅ๐ โฅ 0 (j=1,โฆ,n)
and
๐ฅ๐ ๐๐๐ก๐๐๐๐ ๐๐๐ ๐ โ ๐ฝ1โ ๐ฝ = {1, โฆ , ๐}.
Optimal Soln. of ILP ๐ฅ1
โ
= 0, ๐ฅ2
โ
= 3, ๐งโ
= 33
This method is perfectly valid except that there are
certain practical difficulties in getting the convex
hull. When Euclidean space is more than two or
three
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 8
9. Gomoryโs Cutting Plane method for AILP
PROBLEM (ILP EQUIVALENT TO SOLVING LPP)
๐๐๐ฅ ๐ง = ๐ ๐
๐ฅ
subject to
๐ด๐ฅ = ๐,
๐ฅ โฅ 0
๐ฅ ๐๐๐ก๐๐๐๐
๐ด, ๐ ๐๐๐ ๐ are integer,
The objective function is automatically constrained to be integer.
Let
(๐ณ๐ท) ๐โ ๐จ๐๐๐๐๐๐๐๐๐ ๐ณ๐ท๐ท ๐๐๐ ๐จ๐ฐ๐ณ๐ท
๐(๐)
โ ๐ถ๐๐๐๐๐๐ ๐บ๐๐๐๐๐๐๐
(if all constrained are integer then it is optimal
solution.
Else according to Gomory,
A new constrained ๐ ๐ป
๐ โค ๐ append to new
(๐ณ๐ท) ๐ to get a new (๐ณ๐ท) ๐
The basic purpose of the cut constrained
โฆ Delete a part of the feasible region ๐บ ๐
โฆ Donโt delete the points which have integer
coordinates
Finitely many cut constrained will be needed to
solve the given AILP.
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 9
11. Gomoryโs Cutting Plane method for AILP
DERIVATION OF THE GOMORYโS CUT
CONSTRAINT
๐จ๐ฐ๐ณ๐ท ๐น๐๐๐๐๐๐๐๐๐๐๐๐ ๐๐๐ฅ ๐ง = ๐ ๐
๐ฅ
subject to
๐ด๐ฅ = ๐,
๐ฅ โฅ 0, ๐ฅ ๐๐๐ก๐๐๐๐ (Eq. 0)
๐จ๐๐๐๐๐๐๐๐๐ ๐ณ๐ท๐ท
๐๐๐ฅ ๐ง = ๐ ๐
๐ฅ
subject to
๐ด๐ฅ = ๐, ๐ฅ โฅ 0 (Eq. 1)
๐ ๐ฉ ๐
= ๐๐๐ โ
๐โ๐น
๐๐๐ ๐๐ ๐๐๐ ๐ = ๐, ๐, โฆ , ๐ (๐ฌ๐. ๐)
This holds for any feasible solution of LPP (Eq. 1) and (Eq. 0)
If for any real number a
Fractional part ๐ ๐ = ๐ โ ๐
[๐] โ ๐๐๐๐๐๐๐๐ ๐๐๐๐๐๐๐ ๐๐๐๐๐๐๐๐
๐ โค ๐ ๐ < ๐
For ๐ = โ๐ ๐ ๐ = ๐
But ๐ = โ๐. ๐,
๐ ๐ = โ๐. ๐ โ โ๐. ๐ = โ๐. ๐ โ โ๐ = ๐. ๐
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 11
12. Gomoryโs Cutting Plane method for AILP
๐ ๐ฉ ๐
= ๐๐๐ โ
๐โ๐น
๐๐๐ ๐๐ ๐๐๐ ๐ = ๐, ๐, โฆ , ๐ (๐ฌ๐. ๐)
๐โ๐น
๐๐๐ ๐๐ +
๐โ๐น
๐๐๐ โ ๐๐๐ ๐๐ + ๐ ๐ฉ ๐
= ๐๐๐ + (๐๐๐ โ [๐๐๐])
i.e.
๐โ๐น
[๐๐๐] ๐๐ + ๐ ๐ฉ ๐
โ ๐๐๐ = ๐๐๐ โ ๐๐๐ โ
๐โ๐น
๐๐๐ โ ๐๐๐ ๐๐
i.e.
๐โ๐น
[๐๐๐] ๐๐ + ๐ ๐ฉ ๐
โ ๐๐๐ = ๐๐๐ โ
๐โ๐น
๐๐๐ ๐๐ (๐ฌ๐. ๐)
(Eq. 5) holds for all feasible points of points LPP (Eq. 0) and for the given AILP.
Therefore the R.H.S must also be integer.
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 12
13. Gomoryโs Cutting Plane method for AILP
๐๐0 โ
๐โ๐
๐๐๐ ๐ฅ๐
๐ = 0 included because for the AILP, the objective function is also constrained to be integer.
๐๐๐ค ๐๐๐ โฅ 0 ๐๐๐ ๐ฅ๐ โฅ 0 ๐๐๐ ๐ โ ๐ . ๐โ๐๐๐๐๐๐๐
๐โ๐ ๐๐๐ ๐ฅ๐ โฅ 0 (Eq. 6)
๐๐0 < 1 ๐๐๐ ๐ธ๐. 6 ๐๐๐ฃ๐๐
๐๐0 โ ๐โ๐ ๐๐๐ ๐ฅ๐ < 1 is an integer
๐๐๐ โ ๐โ๐น ๐๐๐ ๐๐ โค ๐ (Eq. 7)
The inequality (Eq. 7) is satisfied by every integer feasible point of the given AILP.
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 13
14. Gomoryโs Cutting Plane method for AILP
If current b.f.s. ๐ ๐ฉ is not an integer. It doesnโt meet the requirement of AILP.
In that case, inequality is not satisfied.
โ It certainly deletes a part of the feasible region of the associated LLP ( at least the current
b.f.s. ๐ ๐ฉ and may be more points) but does not delete any feasible point with integer co-
ordinates. Hence it is valid cut constraint and it is called Gomoryโs cut constraintโ
โ๐๐0= ๐ ๐ โ
๐โ๐
๐๐๐ ๐ฅ๐
Append this to associated LPP, (๐ฟ๐)1 to get the new LPP (๐ฟ๐)2 Therefore we solve
(๐ฟ๐)2 ๐๐๐ ๐๐๐๐๐๐ก ๐กโ๐ ๐๐๐๐๐๐๐ข๐๐.
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 14
15. Stepwise Description
Step 1: Solve the associated LLP, say (๐ณ๐ท) ๐,by the simplex method. Set ๐ = ๐
Step 2:
โฆ If the optimal solution obtained at Step 1 is integer
โฆ Stop
โฆ Otherwise go to Step3
Step 3: For any updated constraint ๐ whose ๐๐๐ value is fractional (including ๐ = ๐, i.e. obj. fun.)
โฆ Generate Gomoryโs cut constraint as given at (6.13).
โฆ Select the value of ๐, ๐ โค ๐ โค ๐ for which ๐๐๐ value is maximum.
โฆ Theoretically we can choose any i for which ๐๐๐ > ๐ but the maximum of ๐๐๐ is chosen with the hope that it may give a
deeper cut
Step 4: Append the Gomoryโs cut constraint derived at Step 3 above the (๐ณ๐ท) ๐ to get the new LPP
(๐ณ๐ท) ๐+๐ .
โฆ Solve by the dual simplex method and return to Step2
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 15
16. Theorem
โThe number of Gomoryโs cut constraints needed to solve any
instance of all integer linear programming (AILP) problem is
always finiteโ
As the no. of cut constraints needed is always finite, we are solving
only finitely many LPP to get an optimal solution of the given AILP.
But unfortunately, even for a problem of โaverageโ size, the no. of
cut constraints needed may be โtoo manyโ as AILP belongs to the
class of Hard Problem.
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 16
17. Example
CONSIDER THE INTEGER LPP
๐๐๐ฅ ๐ง = 5๐ฅ1 + 2๐ฅ2
subject to
2๐ฅ1 + 2๐ฅ2 โค 9
3๐ฅ1 + ๐ฅ2 โค 11
๐ฅ1, ๐ฅ2 โฅ 0
๐ฅ1, ๐ฅ2integer
THE GIVEN ILP IS EQUIVALENT TO
๐๐๐ฅ ๐ง = 5๐ฅ1 + 2๐ฅ2 + 0๐ฅ3 + 0๐ฅ4
subject to
2๐ฅ1 + 2๐ฅ2 + ๐ฅ3 = 9
3๐ฅ1 + ๐ฅ2 + ๐ฅ4 = 11
๐ฅ1, ๐ฅ2, ๐ฅ3, ๐ฅ4 โฅ 0
all integer
๐ฅ3 = 9 โ 2๐ฅ1 โ 2๐ฅ2 and
๐ฅ4 = 11 โ 3๐ฅ1 โ ๐ฅ2
๐ฅ1, ๐ฅ2 ๐๐๐ ๐๐๐ก๐๐๐๐, ๐ ๐ ๐ฅ3, ๐ฅ4 ๐๐๐ ๐๐๐ ๐ ๐๐๐ก๐๐๐๐
5/8/2015 HTTPS://SITES.GOOGLE.COM/SITE/PIRYANIRAJESH/ 17