SlideShare a Scribd company logo
INTEGER PROGRAMMING
INTEGER PROGRAMMING – AN INTRODUCTION
• An integer programming problem is a mathematical optimization or
feasibility program in which some or all of the variables are restricted
to be integers.
• All the LPP assumptions are inherited except divisibility.
• In 1958, Ralph E. Gomory transformed the field of integer
programming when he published a short paper that described his
cutting-plane algorithm for pure integer programs and announced
that the method could be refined to give a finite algorithm for integer
programming.
• Applications: 1. Knapsack Problem
2. Production Planning
3. Scheduling
4. Telecommunication Networks
5. Cellular Networks
TYPES OF INTEGER PROGRAMMING PROBLEMS
• Pure – Integer Problems
- Require that all decision variables have integer solutions.
• Mixed – Integer Problems
- Require some, but not all, of the decision variables to have
integer values in the final solution, whereas others need not
have integer values.
• 0-1 Integer Problems
- Require integer variables to have value of 0 or 1, such as
situations in which decision variables are of the yes – no type.
METHODS FOR SOLVING ILP PROBLEMS
1. Rounding – off A non-integer solution (Enumeration Method)
• Developed by: A. M. Geoffrion
2. Cutting – Plane Method
• Developed by: Ralph E. Gomory
3. Branch and Bound Method
• Developed by: A. H. Land and A. G. Doing
4. The Additive algorithm for Zero-One integer programming problem
(Balas’ Method)
• Developed by: E. Balas
Maximize Profit = 7X1 + 6X2
Subject to:
2X1 + 3X2 <= 12
6X1 + 5X2 <= 30
X1, X2 >= 0 and Integer
1. ENUMERATION METHOD
• We found that optimal solution to LPP relaxation i.e. X1 =
3.75 and X2 = 1.5 do not have integer values.
• Rounding the values X1 = 4 and X2 = 2.
• However, this is not in feasible solution.
• Rounding X2 down to 1 gives a feasible solution, but it may
not be optimal.
• This could be solved using the enumeration method but it
is generally not possible for large problems.
1. ENUMERATION METHOD - Continue
• The Rounding solution of X1 = 4 and X2
= 1 gives a profit of 34
• Optimal solution to integer
programming problem is X1 = 5 and X2
= 0 with Maximum Z = 35
• The optimal integer solution is less
than the optimal LP solution.
• An integer solution can never be
better than the LP solution.
X1 X2 Z = 7X1 + 6X2
0 0
1
2
3
4
0
6
12
18
24
1 0
1
2
3
7
13
19
25
2 0
1
2
14
20
26
3 0
1
2
21
27
33
4 0
1
28
34
5 0 35*
1. ENUMERATION METHOD - Continue
• An Algorithm for solving pure and mixed integer programming problems
• Developed by Ralph E. Gomory
• Steps to solve:
1. Relax the integer requirements.
2. Solve the resulting LP problem using Simplex Method
3. If all the basic variables have integer values, Optimality of the Integer programming problem
is reached. So, go to step 7; otherwise go to step 4.
4. Examine the constraints corresponding to the current optimal solution. For each basic
variable with non – integer solution in the current optimal table , find the fraction part fi,
Therefore bi = [bi] + fi where [bi] is integer part and fi is fraction part of bi
5. Choose the largest fraction among various fi; i.e. Max (fi). Treat the constraint corresponding
to the maximum fraction as the source row. Based on the source row, develop an additional
constraint (Gomory’s constraint/ fractional cut) as shown:
-Summation[positive fraction for non-basic variables] + Si = -fi
6. Add the fractional cut as the last row in the latest optimal table and proceed further using
dual simplex method, and find the new optimum solution. If the new optimum solution is integer
then go to step 7; otherwise go to step 4.
7. Print the integer solution and optimal value
2. CUTTING – PLANE METHOD
Example: Max Z = 5X1 + 8X2
Subject to:
X1 + 2X2 <= 8
4X1 + X2 <= 10
X1, X2 >= 0 and Integers
Solution: Introducing slack variables
Max Z = 5X1 + 8X2
Subject to:
X1 + 2X2 + S1 = 8
4X1 + X2 + S2 = 10
X1, X2 >= 0 and Integers
2. CUTTING – PLANE METHOD - CONTINUE
Cj 5 8 0 0
CB XB X1 X2 S1 S2 RHS Ratio
0 S1 1 2 1 0 8 4
0 S2 4 1 0 1 10 10
Cj - Zj 5 8 0 0 0
Initial table
Iteration 1
Cj 5 8 0 0
CB XB X1 X2 S1 S2 RHS Ratio
8 X2 0.5 1 0.5 0 4 8
0 S2 3.5 0 -0.5 1 6 1.714286
Cj - Zj 1 0 -4 0 32
Iteration 2
Cj 5 8 0 0
CB XB X1 X2 S1 S2 RHS
8 X2 0 1 0.571429 -0.14286 3.142857
5 X1 1 0 -0.14286 0.285714 1.714286
Cj - Zj 0 0 -3.85714 -0.28571 33.71429
Optimal solution to relaxation problem is achieved as Cj – Zj <=0 for all j but both the variables have non –
integer values so,
XB bi [bi] fi
X2 3.142857 3 0.142857
X1 1.714286 1 0.714286
Maximum fraction is 0.714286 for X1
the we will make Gomory’s
fractional cut constraint
corresponding to second row
(1-0.14286)S1 + 0.285714S2 >= 0.714286
-0.85714S1 - 0.285714S2 <= -0.714286
-0.85714S1 - 0.285714S2 + S3 = -0.714286
Adding the constraint into the problem and then
2. CUTTING – PLANE METHOD - CONTINUE
Cj 5 8 0 0
CB XB X1 X2 S1 S2 S3 RHS
8 X2 0 1 0.571429 -0.14286 0 3.142857
5 X1 1 0 -0.14286 0.285714 0 1.714286
0 S3 0 0 -0.85714 -0.28571 1 -0.71429
Cj - Zj 0 0 -3.85714 -0.28571 0 33.7143
(Cj - Zj)/yrj {yrj<0} - - 4.5 1 - 47.2
Cj 5 8 0 0
CB XB X1 X2 S1 S2 S3 RHS
8 X2 0 1 1 0 -0.5 3.5
5 X1 1 0 -1 0 1 1
0 S2 0 0 3 1 -3.5 2.5
Cj - Zj 0 0 -3 0 -1 33
Iteration 3
Iteration 3
2. CUTTING – PLANE METHOD - CONTINUE
Now maximum fraction is 0.5 for X2 so we will use first row to make fractional cut constraint then new
constraint is -0.5S3 + S4 = -0.5
2. CUTTING – PLANE METHOD - CONTINUE
Cj 5 8 0 0 0 0
CB XB X1 X2 S1 S2 S3 S4 RHS
8 X2 0 1 1 0 -0.5 0 3.5
5 X1 1 0 -1 0 1 0 1
0 S2 0 0 3 1 -3.5 0 2.5
0 S4 0 0 0 0 -0.5 1 -0.5
Cj - Zj 0 0 -3 0 -1 0 33
(Cj - Zj)/yrj {yrj<0} 2
Cj 5 8 0 0 0 0
CB XB X1 X2 S1 S2 S3 S4 RHS
8 X2 0 1 1 0 0 -1 4
5 X1 1 0 -1 0 0 2 0
0 S2 0 0 3 1 0 -7 6
0 S4 0 0 0 0 1 -2 1
Cj - Zj 0 0 -3 0 0 -2 32
Iteration 5
Iteration 4
Optimal solution to integer programming is
achieved as
X1 = 0 and X2 = 6 and
Max Z = 32
2. CUTTING – PLANE METHOD - CONTINUE
• Creates and solves a sequence of sub – problems to the original problem that are
increasingly more restrictive until an optimal solution is found.
BRANCHING
• Selection of an integer value of a decision variable to examine for a possible integer
solution to a problem.
• If the solution to the LPP contains non – integer values for some or all decision
variables, then the solution space is reduced by introducing constraints with respect
to anyone of those decision variables. If the value of the decision variable X1 is 3.5,
then two more problems will be created by using each of the following constraints.
X1 <= 3 and X1>=4.
BOUND
• An upper or lower limit on the value of the objective function at a given stage of the
analysis of an integer programming problem.
• Lower Bound: Value of the objective function corresponding to the integer parts of
the decision variables in a node.
• Upper Bound: Value of the objective function corresponding to the LPP solution in
that node.
3. BRANCH-AND-BOUND METHOD
• FATHOMED NODE: A sub-problem is said to be fathomed if any of
the following three conditions is true:
1. The values of the decision variables of the problem are integer.
2. The upper bound of the problem which has non-integer values
for its decision variables is not greater than the current best
lower bound.
3. The problem has infeasible solution.
This means that further branching is not necessary.
• CURRENT BEST LOWER BOUND: This is the best lower bound among
the lower bounds of all the fathomed nodes. Initially, it is assumed
as infinity for the root node.
3. BRANCH-AND-BOUND METHOD (continue)
Branch and bound algorithm applied to maximization problem
1. Solve the given linear programming problem. Set, the current best lower bound ZB as ∞
2. Check, whether the problem has integer solution. If yes, print the current solution as the
optimal solution and stop; Otherwise go to step 3.
3. Identify the variable xk which has the maximum fractional part as the branching variable.
(In case of tie, select the variable which has the highest objective function coefficient.)
4. Create two more problems by including each of the following constraints to the current
problem and solve them.
a) Xk <= [Xk]
b) Xk >= [Xk] + 1
5. If any one of the new sub – problems has infeasible solution or fully integer values for the
decision variables, the corresponding node is fathomed. If a new node has integer values
for the decision variables, update the current best lower bound as the lower bound of
that node if its lower bound is greater than the previous current best lower bound.
6. Are all terminal nodes fathomed? If yes, go to step – 7; otherwise, identify the node with
the highest lower bound and go to step – 3.
7. Select the solution of the problem with respect to the fathomed node whose lower
bound is equal to the current best lower bound as the optimal solution.
3. BRANCH-AND-BOUND METHOD (continue)
Example: Max Z = 10X1 + 20X2
Subject to:
6X1 + 8X2 <= 48
X1 + 3X2 <= 12
X1, X2 >= 0 and Integers
3. BRANCH-AND-BOUND METHOD (continue)
Max Z = 96 at X1 = 4.8 and X2 = 2.4
Zupper = 96
Zlower = 80
Maximum fraction is 0.8 for X1
Sub-Problem 1: X1 <= 4
Sub-Problem 2: X1 >= 5
Extreme Points Z = 10X1 + 20X2
A (0, 4) 80
B(4.8, 2.4) 96
C(8, 0) 80
Sub-Problem 1: X1 >= 5
Zupper = 95 at X1 = 5 and X2 = 2.25
X2 is not integer then
Zlower = 80
Extreme Points Z = 10X1 + 20X2
A (5, 0) 50
B(5, 2.25) 95
C(8, 0) 80
3. BRANCH-AND-BOUND METHOD (continue)
Sub-Problem 2: X1 <= 4
Zupper = 93.333 at X1 = 4 and X2 = 2.667
X2 is not integer then
Zlower = 80
Zlower is same for both problems but
Zupper is highest in sub-problem 1 So,
Sub-Problem 3: X2 <= 2 and
Sub-Problem 4: X2 >= 3
Extreme Points Z = 10X1 + 20X2
A (0, 4) 80
B(4, 2.667) 93.333
C(4, 0) 40
3. BRANCH-AND-BOUND METHOD (continue)
Sub-Problem 3: X2 >= 3
No feasible solution exists. So, sub
– problem 4 is infeasible problem
and this node is fathomed
Now, we will make branches of
Sub – problem 2.
Sub-Problem 5: X2 <= 2 and
Sub-Problem 6: X2 >= 3
3. BRANCH-AND-BOUND METHOD (continue)
Sub-Problem 4: X2 <= 2
Zupper = 93.333 at X1 = 5.333 and X2
= 2
X1 is not integer then
Zlower = 90
Extreme Points Z = 10X1 + 20X2
A (5, 0) 50
B(5, 2) 90
C(5.333, 2) 93.333
D(8,0) 80
3. BRANCH-AND-BOUND METHOD (continue)
Sub-Problem 5: X2 <= 2
Zupper = 60<80 at X1 = 4 and X2 = 2
X2 is not integer then
Zlower = 60 So, it is fathomed.
Extreme Points Z = 10X1 + 20X2
A (0, 2) 20
B(4, 2) 60
C(4, 0) 40
3. BRANCH-AND-BOUND METHOD (continue)
Sub-Problem 5: X2 >= 3
Zupper = Zlower = 90 at X1 = 4 and X2 = 2
Both variables have integer values.
So, it is feasible solution. And this
node is terminated.
Sub – Problem 3 will be sub divided.
Extreme Points Z = 10X1 + 20X2
A (0, 4) 60
B(3, 3) 90
C(0, 3) 60
3. BRANCH-AND-BOUND METHOD (continue)
Max Z = 10X1 + 20X2
Subject to:
6X1 + 8X2 <= 48
X1 + 3X2 <= 12
X1, X2 >= 0
Max Z = 95
X1 = 4.8,
X2 = 2.4
Zlower = 80
Max Z = 10X1 + 20X2
S.t. 6X1 + 8X2 <= 48
X1 + 3X2 <= 12
X1<=4
X1, X2 >= 0
Max Z = 10X1 + 20X2
S.t. 6X1 + 8X2 <= 48
X1 + 3X2 <= 12
X1>=5
X1, X2 >= 0
X1>=5 X1<=4
Sub – Problem 1 Sub – Problem 2
Zupper = 95
X1 = 5,
X2 = 2.25
Zlower = 80
Zupper = 93.333
X1 = 4 and
X2 = 2.667
Zlower = 80
Max Z = 10X1 + 20X2
S.t. 6X1 + 8X2 <= 48
X1 + 3X2 <= 12
X1>=5
X2 >=3
X1, X2 >= 0
Max Z = 10X1 + 20X2
S.t. 6X1 + 8X2 <= 48
X1 + 3X2 <= 12
X1>=5
X2<=2
X1, X2 >= 0
Sub – Problem 3 Sub – Problem 4
X2>=3
Max Z = 10X1 + 20X2
S.t. 6X1 + 8X2 <= 48
X1 + 3X2 <= 12
X1<=4
X2>=3
X1, X2 >= 0
Max Z = 10X1 + 20X2
S.t. 6X1 + 8X2 <= 48
X1 + 3X2 <= 12
X1<=4
X2<=2
X1, X2 >= 0
Sub – Problem 5 Sub – Problem 6
X2<=2 X2<=2
X2>=3
Zupper = 93.333
X1 = 5.333
X2 = 2
Zlower = 90
Infeasible Problem
Fathomed
Zupper =
90
X1 = 3
X2 = 3
Zlower =
90
Zupper =
60
X1 = 4
X2 = 2
Zlower =
60
Feasible
Solution
Feasible
Solution
It will be terminate
at X1 = 5 and X2 = 2
with Z = 90
3. BALAS’ ALGORITHM
THANK YOU

More Related Content

PDF
Integer programming
PDF
Goal programming
PPT
Project Management: NETWORK ANALYSIS - CPM and PERT
PPTX
Predictive analytics
PPTX
Epidemiological modelling
PPTX
Goal Programming
PDF
Integer Programming, Goal Programming, and Nonlinear Programming
PPTX
Application of Operations Research
Integer programming
Goal programming
Project Management: NETWORK ANALYSIS - CPM and PERT
Predictive analytics
Epidemiological modelling
Goal Programming
Integer Programming, Goal Programming, and Nonlinear Programming
Application of Operations Research

What's hot (20)

PPTX
Sensitivity analysis linear programming copy
PPT
simplex method
PDF
Duality in Linear Programming Problem
PDF
Unit.4.integer programming
PPTX
Duality in Linear Programming
PPTX
Transportation problems
PPT
simplex method
PPTX
Transportation Problem
PPTX
NON LINEAR PROGRAMMING
PPTX
Solving Degenaracy in Transportation Problem
PDF
Simplex method
PPTX
Vogel's Approximation Method
PPTX
Solving linear programming model by simplex method
PPTX
Assignment Problem
PPTX
Dynamic Programming
PPTX
LINEAR PROGRAMMING Assignment help
PPTX
LINEAR PROGRAMMING
PPTX
Simplex method concept,
PPTX
Decision theory
PPTX
Decision theory
Sensitivity analysis linear programming copy
simplex method
Duality in Linear Programming Problem
Unit.4.integer programming
Duality in Linear Programming
Transportation problems
simplex method
Transportation Problem
NON LINEAR PROGRAMMING
Solving Degenaracy in Transportation Problem
Simplex method
Vogel's Approximation Method
Solving linear programming model by simplex method
Assignment Problem
Dynamic Programming
LINEAR PROGRAMMING Assignment help
LINEAR PROGRAMMING
Simplex method concept,
Decision theory
Decision theory
Ad

Similar to Integer Linear Programming (20)

PPTX
Linear programming
PPTX
daa-unit-3-greedy method
PDF
Integer Programming - MNIT Jaipur - Taha et al
 
PDF
LPP, Duality and Game Theory
PPT
5163147.ppt
PPTX
MFCS2-Module1.pptx
PDF
Mathematical linear programming notes
PPTX
Linear programming ppt on operertion research
PPTX
Linear Programming Quiz Solution
PPTX
Special Cases in Simplex Method
PPTX
Simplex method material for operation .pptx
PPT
BranchandBoundAlgorithms[1].ppt
PDF
Introduction to Greedy method, 0/1 Knapsack problem
PDF
Simplex method: Slack, Surplus & Artificial variable
PDF
Optimum Engineering Design - Day 4 - Clasical methods of optimization
PDF
Chapter 6-INTEGER PROGRAMMING note.pdf
PPT
Balaji-opt-lecture5-linear program sp13.ppt
PDF
Branch-and-Bound Technique for Solving Integer Programs
 
PPT
370_13735_EA221_2010_1__1_1_Simplex method.ppt
PPT
Balaji-opt-lecture6-act.ppt
Linear programming
daa-unit-3-greedy method
Integer Programming - MNIT Jaipur - Taha et al
 
LPP, Duality and Game Theory
5163147.ppt
MFCS2-Module1.pptx
Mathematical linear programming notes
Linear programming ppt on operertion research
Linear Programming Quiz Solution
Special Cases in Simplex Method
Simplex method material for operation .pptx
BranchandBoundAlgorithms[1].ppt
Introduction to Greedy method, 0/1 Knapsack problem
Simplex method: Slack, Surplus & Artificial variable
Optimum Engineering Design - Day 4 - Clasical methods of optimization
Chapter 6-INTEGER PROGRAMMING note.pdf
Balaji-opt-lecture5-linear program sp13.ppt
Branch-and-Bound Technique for Solving Integer Programs
 
370_13735_EA221_2010_1__1_1_Simplex method.ppt
Balaji-opt-lecture6-act.ppt
Ad

Recently uploaded (20)

PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PPTX
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
PDF
RMMM.pdf make it easy to upload and study
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
Pre independence Education in Inndia.pdf
PDF
O7-L3 Supply Chain Operations - ICLT Program
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PPTX
master seminar digital applications in india
PDF
TR - Agricultural Crops Production NC III.pdf
PPTX
Pharma ospi slides which help in ospi learning
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PDF
Anesthesia in Laparoscopic Surgery in India
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
Insiders guide to clinical Medicine.pdf
PPTX
Cell Structure & Organelles in detailed.
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PDF
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
PPTX
Microbial diseases, their pathogenesis and prophylaxis
102 student loan defaulters named and shamed – Is someone you know on the list?
The Healthy Child – Unit II | Child Health Nursing I | B.Sc Nursing 5th Semester
RMMM.pdf make it easy to upload and study
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
Pre independence Education in Inndia.pdf
O7-L3 Supply Chain Operations - ICLT Program
Final Presentation General Medicine 03-08-2024.pptx
master seminar digital applications in india
TR - Agricultural Crops Production NC III.pdf
Pharma ospi slides which help in ospi learning
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
Anesthesia in Laparoscopic Surgery in India
Pharmacology of Heart Failure /Pharmacotherapy of CHF
O5-L3 Freight Transport Ops (International) V1.pdf
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Insiders guide to clinical Medicine.pdf
Cell Structure & Organelles in detailed.
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
Microbial diseases, their pathogenesis and prophylaxis

Integer Linear Programming

  • 2. INTEGER PROGRAMMING – AN INTRODUCTION • An integer programming problem is a mathematical optimization or feasibility program in which some or all of the variables are restricted to be integers. • All the LPP assumptions are inherited except divisibility. • In 1958, Ralph E. Gomory transformed the field of integer programming when he published a short paper that described his cutting-plane algorithm for pure integer programs and announced that the method could be refined to give a finite algorithm for integer programming. • Applications: 1. Knapsack Problem 2. Production Planning 3. Scheduling 4. Telecommunication Networks 5. Cellular Networks
  • 3. TYPES OF INTEGER PROGRAMMING PROBLEMS • Pure – Integer Problems - Require that all decision variables have integer solutions. • Mixed – Integer Problems - Require some, but not all, of the decision variables to have integer values in the final solution, whereas others need not have integer values. • 0-1 Integer Problems - Require integer variables to have value of 0 or 1, such as situations in which decision variables are of the yes – no type.
  • 4. METHODS FOR SOLVING ILP PROBLEMS 1. Rounding – off A non-integer solution (Enumeration Method) • Developed by: A. M. Geoffrion 2. Cutting – Plane Method • Developed by: Ralph E. Gomory 3. Branch and Bound Method • Developed by: A. H. Land and A. G. Doing 4. The Additive algorithm for Zero-One integer programming problem (Balas’ Method) • Developed by: E. Balas
  • 5. Maximize Profit = 7X1 + 6X2 Subject to: 2X1 + 3X2 <= 12 6X1 + 5X2 <= 30 X1, X2 >= 0 and Integer 1. ENUMERATION METHOD
  • 6. • We found that optimal solution to LPP relaxation i.e. X1 = 3.75 and X2 = 1.5 do not have integer values. • Rounding the values X1 = 4 and X2 = 2. • However, this is not in feasible solution. • Rounding X2 down to 1 gives a feasible solution, but it may not be optimal. • This could be solved using the enumeration method but it is generally not possible for large problems. 1. ENUMERATION METHOD - Continue
  • 7. • The Rounding solution of X1 = 4 and X2 = 1 gives a profit of 34 • Optimal solution to integer programming problem is X1 = 5 and X2 = 0 with Maximum Z = 35 • The optimal integer solution is less than the optimal LP solution. • An integer solution can never be better than the LP solution. X1 X2 Z = 7X1 + 6X2 0 0 1 2 3 4 0 6 12 18 24 1 0 1 2 3 7 13 19 25 2 0 1 2 14 20 26 3 0 1 2 21 27 33 4 0 1 28 34 5 0 35* 1. ENUMERATION METHOD - Continue
  • 8. • An Algorithm for solving pure and mixed integer programming problems • Developed by Ralph E. Gomory • Steps to solve: 1. Relax the integer requirements. 2. Solve the resulting LP problem using Simplex Method 3. If all the basic variables have integer values, Optimality of the Integer programming problem is reached. So, go to step 7; otherwise go to step 4. 4. Examine the constraints corresponding to the current optimal solution. For each basic variable with non – integer solution in the current optimal table , find the fraction part fi, Therefore bi = [bi] + fi where [bi] is integer part and fi is fraction part of bi 5. Choose the largest fraction among various fi; i.e. Max (fi). Treat the constraint corresponding to the maximum fraction as the source row. Based on the source row, develop an additional constraint (Gomory’s constraint/ fractional cut) as shown: -Summation[positive fraction for non-basic variables] + Si = -fi 6. Add the fractional cut as the last row in the latest optimal table and proceed further using dual simplex method, and find the new optimum solution. If the new optimum solution is integer then go to step 7; otherwise go to step 4. 7. Print the integer solution and optimal value 2. CUTTING – PLANE METHOD
  • 9. Example: Max Z = 5X1 + 8X2 Subject to: X1 + 2X2 <= 8 4X1 + X2 <= 10 X1, X2 >= 0 and Integers Solution: Introducing slack variables Max Z = 5X1 + 8X2 Subject to: X1 + 2X2 + S1 = 8 4X1 + X2 + S2 = 10 X1, X2 >= 0 and Integers 2. CUTTING – PLANE METHOD - CONTINUE
  • 10. Cj 5 8 0 0 CB XB X1 X2 S1 S2 RHS Ratio 0 S1 1 2 1 0 8 4 0 S2 4 1 0 1 10 10 Cj - Zj 5 8 0 0 0 Initial table Iteration 1 Cj 5 8 0 0 CB XB X1 X2 S1 S2 RHS Ratio 8 X2 0.5 1 0.5 0 4 8 0 S2 3.5 0 -0.5 1 6 1.714286 Cj - Zj 1 0 -4 0 32
  • 11. Iteration 2 Cj 5 8 0 0 CB XB X1 X2 S1 S2 RHS 8 X2 0 1 0.571429 -0.14286 3.142857 5 X1 1 0 -0.14286 0.285714 1.714286 Cj - Zj 0 0 -3.85714 -0.28571 33.71429 Optimal solution to relaxation problem is achieved as Cj – Zj <=0 for all j but both the variables have non – integer values so, XB bi [bi] fi X2 3.142857 3 0.142857 X1 1.714286 1 0.714286 Maximum fraction is 0.714286 for X1 the we will make Gomory’s fractional cut constraint corresponding to second row (1-0.14286)S1 + 0.285714S2 >= 0.714286 -0.85714S1 - 0.285714S2 <= -0.714286 -0.85714S1 - 0.285714S2 + S3 = -0.714286 Adding the constraint into the problem and then 2. CUTTING – PLANE METHOD - CONTINUE
  • 12. Cj 5 8 0 0 CB XB X1 X2 S1 S2 S3 RHS 8 X2 0 1 0.571429 -0.14286 0 3.142857 5 X1 1 0 -0.14286 0.285714 0 1.714286 0 S3 0 0 -0.85714 -0.28571 1 -0.71429 Cj - Zj 0 0 -3.85714 -0.28571 0 33.7143 (Cj - Zj)/yrj {yrj<0} - - 4.5 1 - 47.2 Cj 5 8 0 0 CB XB X1 X2 S1 S2 S3 RHS 8 X2 0 1 1 0 -0.5 3.5 5 X1 1 0 -1 0 1 1 0 S2 0 0 3 1 -3.5 2.5 Cj - Zj 0 0 -3 0 -1 33 Iteration 3 Iteration 3 2. CUTTING – PLANE METHOD - CONTINUE
  • 13. Now maximum fraction is 0.5 for X2 so we will use first row to make fractional cut constraint then new constraint is -0.5S3 + S4 = -0.5 2. CUTTING – PLANE METHOD - CONTINUE Cj 5 8 0 0 0 0 CB XB X1 X2 S1 S2 S3 S4 RHS 8 X2 0 1 1 0 -0.5 0 3.5 5 X1 1 0 -1 0 1 0 1 0 S2 0 0 3 1 -3.5 0 2.5 0 S4 0 0 0 0 -0.5 1 -0.5 Cj - Zj 0 0 -3 0 -1 0 33 (Cj - Zj)/yrj {yrj<0} 2 Cj 5 8 0 0 0 0 CB XB X1 X2 S1 S2 S3 S4 RHS 8 X2 0 1 1 0 0 -1 4 5 X1 1 0 -1 0 0 2 0 0 S2 0 0 3 1 0 -7 6 0 S4 0 0 0 0 1 -2 1 Cj - Zj 0 0 -3 0 0 -2 32 Iteration 5 Iteration 4
  • 14. Optimal solution to integer programming is achieved as X1 = 0 and X2 = 6 and Max Z = 32 2. CUTTING – PLANE METHOD - CONTINUE
  • 15. • Creates and solves a sequence of sub – problems to the original problem that are increasingly more restrictive until an optimal solution is found. BRANCHING • Selection of an integer value of a decision variable to examine for a possible integer solution to a problem. • If the solution to the LPP contains non – integer values for some or all decision variables, then the solution space is reduced by introducing constraints with respect to anyone of those decision variables. If the value of the decision variable X1 is 3.5, then two more problems will be created by using each of the following constraints. X1 <= 3 and X1>=4. BOUND • An upper or lower limit on the value of the objective function at a given stage of the analysis of an integer programming problem. • Lower Bound: Value of the objective function corresponding to the integer parts of the decision variables in a node. • Upper Bound: Value of the objective function corresponding to the LPP solution in that node. 3. BRANCH-AND-BOUND METHOD
  • 16. • FATHOMED NODE: A sub-problem is said to be fathomed if any of the following three conditions is true: 1. The values of the decision variables of the problem are integer. 2. The upper bound of the problem which has non-integer values for its decision variables is not greater than the current best lower bound. 3. The problem has infeasible solution. This means that further branching is not necessary. • CURRENT BEST LOWER BOUND: This is the best lower bound among the lower bounds of all the fathomed nodes. Initially, it is assumed as infinity for the root node. 3. BRANCH-AND-BOUND METHOD (continue)
  • 17. Branch and bound algorithm applied to maximization problem 1. Solve the given linear programming problem. Set, the current best lower bound ZB as ∞ 2. Check, whether the problem has integer solution. If yes, print the current solution as the optimal solution and stop; Otherwise go to step 3. 3. Identify the variable xk which has the maximum fractional part as the branching variable. (In case of tie, select the variable which has the highest objective function coefficient.) 4. Create two more problems by including each of the following constraints to the current problem and solve them. a) Xk <= [Xk] b) Xk >= [Xk] + 1 5. If any one of the new sub – problems has infeasible solution or fully integer values for the decision variables, the corresponding node is fathomed. If a new node has integer values for the decision variables, update the current best lower bound as the lower bound of that node if its lower bound is greater than the previous current best lower bound. 6. Are all terminal nodes fathomed? If yes, go to step – 7; otherwise, identify the node with the highest lower bound and go to step – 3. 7. Select the solution of the problem with respect to the fathomed node whose lower bound is equal to the current best lower bound as the optimal solution. 3. BRANCH-AND-BOUND METHOD (continue)
  • 18. Example: Max Z = 10X1 + 20X2 Subject to: 6X1 + 8X2 <= 48 X1 + 3X2 <= 12 X1, X2 >= 0 and Integers 3. BRANCH-AND-BOUND METHOD (continue) Max Z = 96 at X1 = 4.8 and X2 = 2.4 Zupper = 96 Zlower = 80 Maximum fraction is 0.8 for X1 Sub-Problem 1: X1 <= 4 Sub-Problem 2: X1 >= 5 Extreme Points Z = 10X1 + 20X2 A (0, 4) 80 B(4.8, 2.4) 96 C(8, 0) 80
  • 19. Sub-Problem 1: X1 >= 5 Zupper = 95 at X1 = 5 and X2 = 2.25 X2 is not integer then Zlower = 80 Extreme Points Z = 10X1 + 20X2 A (5, 0) 50 B(5, 2.25) 95 C(8, 0) 80 3. BRANCH-AND-BOUND METHOD (continue)
  • 20. Sub-Problem 2: X1 <= 4 Zupper = 93.333 at X1 = 4 and X2 = 2.667 X2 is not integer then Zlower = 80 Zlower is same for both problems but Zupper is highest in sub-problem 1 So, Sub-Problem 3: X2 <= 2 and Sub-Problem 4: X2 >= 3 Extreme Points Z = 10X1 + 20X2 A (0, 4) 80 B(4, 2.667) 93.333 C(4, 0) 40 3. BRANCH-AND-BOUND METHOD (continue)
  • 21. Sub-Problem 3: X2 >= 3 No feasible solution exists. So, sub – problem 4 is infeasible problem and this node is fathomed Now, we will make branches of Sub – problem 2. Sub-Problem 5: X2 <= 2 and Sub-Problem 6: X2 >= 3 3. BRANCH-AND-BOUND METHOD (continue)
  • 22. Sub-Problem 4: X2 <= 2 Zupper = 93.333 at X1 = 5.333 and X2 = 2 X1 is not integer then Zlower = 90 Extreme Points Z = 10X1 + 20X2 A (5, 0) 50 B(5, 2) 90 C(5.333, 2) 93.333 D(8,0) 80 3. BRANCH-AND-BOUND METHOD (continue)
  • 23. Sub-Problem 5: X2 <= 2 Zupper = 60<80 at X1 = 4 and X2 = 2 X2 is not integer then Zlower = 60 So, it is fathomed. Extreme Points Z = 10X1 + 20X2 A (0, 2) 20 B(4, 2) 60 C(4, 0) 40 3. BRANCH-AND-BOUND METHOD (continue)
  • 24. Sub-Problem 5: X2 >= 3 Zupper = Zlower = 90 at X1 = 4 and X2 = 2 Both variables have integer values. So, it is feasible solution. And this node is terminated. Sub – Problem 3 will be sub divided. Extreme Points Z = 10X1 + 20X2 A (0, 4) 60 B(3, 3) 90 C(0, 3) 60 3. BRANCH-AND-BOUND METHOD (continue)
  • 25. Max Z = 10X1 + 20X2 Subject to: 6X1 + 8X2 <= 48 X1 + 3X2 <= 12 X1, X2 >= 0 Max Z = 95 X1 = 4.8, X2 = 2.4 Zlower = 80 Max Z = 10X1 + 20X2 S.t. 6X1 + 8X2 <= 48 X1 + 3X2 <= 12 X1<=4 X1, X2 >= 0 Max Z = 10X1 + 20X2 S.t. 6X1 + 8X2 <= 48 X1 + 3X2 <= 12 X1>=5 X1, X2 >= 0 X1>=5 X1<=4 Sub – Problem 1 Sub – Problem 2 Zupper = 95 X1 = 5, X2 = 2.25 Zlower = 80 Zupper = 93.333 X1 = 4 and X2 = 2.667 Zlower = 80 Max Z = 10X1 + 20X2 S.t. 6X1 + 8X2 <= 48 X1 + 3X2 <= 12 X1>=5 X2 >=3 X1, X2 >= 0 Max Z = 10X1 + 20X2 S.t. 6X1 + 8X2 <= 48 X1 + 3X2 <= 12 X1>=5 X2<=2 X1, X2 >= 0 Sub – Problem 3 Sub – Problem 4 X2>=3 Max Z = 10X1 + 20X2 S.t. 6X1 + 8X2 <= 48 X1 + 3X2 <= 12 X1<=4 X2>=3 X1, X2 >= 0 Max Z = 10X1 + 20X2 S.t. 6X1 + 8X2 <= 48 X1 + 3X2 <= 12 X1<=4 X2<=2 X1, X2 >= 0 Sub – Problem 5 Sub – Problem 6 X2<=2 X2<=2 X2>=3 Zupper = 93.333 X1 = 5.333 X2 = 2 Zlower = 90 Infeasible Problem Fathomed Zupper = 90 X1 = 3 X2 = 3 Zlower = 90 Zupper = 60 X1 = 4 X2 = 2 Zlower = 60 Feasible Solution Feasible Solution It will be terminate at X1 = 5 and X2 = 2 with Z = 90