Topic 5 Integer Programming 5.11.24
Topic 5 Integer Programming 5.11.24
Linear
Linear Optimization
Optimization Classification
Classification
No Model Type Decision variables
1 Linear Programming (LP) Can take continuous value.
2 Integer Linear Programming (ILP) At least one variable is integer valued.
Within ILP, we can have either “all integer” or “mixed integer” model.
A variable restricted to 0 or 1 values is called a binary variable.
A Maximize 7x1+ 11x2 = Z
A simple
simple LP
LP example
example
Subject to x1 + x2 ≤ 6
x1 & x2 ≥ 0 18x + 34x ≤ 154
1 2
Optimal LP: x1= 3.125, x2 = 2.875 with Z = 53.5
9
Optimal ILP: x1= 1, x2 = 4 with Z = 51
8 Many approaches: Start with LP.
There is no efficient procedure 1. Cutting Plane: Add one
7 constraint at a time till you get
(like Simplex) available to find
6 the optimal solution. an optimal solution.
2. Branch and Bound: If the
5
current solution is not integer,
4 split the problem into two
problems (with one constraint
3
added to each) and solve again.
2 Repeat till you get integer
optimal solution. Solver uses
1
this approach.
1 2 3 4 5 6 7 8 9
Optimal may not be a corner
point
ILP: Maximize 7x1+ 11x2 = Z
ILP:B&B
B&B
Subject to x1 + x2 ≤ 6
Start with the LP solution. x1 & x 2 ≥ 0
18x1+ 34x2 ≤ 154
9 Add two branches with extra
constraints if there is a non- LP: Z = 53.5.
8 integer value and solve the (3.125, 2.875)
7 two sub-problems.
x2
≤ 2 ≥3
6 x2
5
Z = 50. Z = 53.222
4 (4, 2) (2.889, 3)
x2 ≥ 3
3
Feasible! No need
2
to expand this Add two
1 x2 ≤ 2 branch. This is a branches
lower bound.
1 2 3 4 5 6 7 8 9
Branch
Branch and
and bound
bound
methodology
methodology Root node
B & B methodology can LP: Z = 53.5
be applied to many other (3.125, 2.875)
problems besides ILP. x2
≥3
≤2
x2
Z = 50 Z = 52.222
(4, 2) (2.889, 3)
≤2 x1 ≥ 3
x1
Z = 52.176 Infeasible!
(2, 3.47059) Optimum!
x2 ≥ Z = 51.
≤3 4
Z = 47. x2 (1, 4)
(2, 3)
Binary
Binary Variables
Variables &
& Logical
Logical Relationships
Relationships
In many models, one or more constraints involving binary variables can be added to
satisfy desired logical relationship.
Suppose we have several projects P1 , P2, P3, etc. and we define binary variables Y1, Y2,
Y3, etc.
We need to add constraint(s) such that when the relationship is satisfied, all constraints
must be met and when the relationship is not satisfied, at least one of the constraint
must fail.
Select at most one project from If 0 or 1 projects are selected, the constraint is
P 3 , P 4 , P 5. satisfied.
Y3 + Y 4 + Y 5 ≤ 1 If two are selected, Y3+Y4 +Y5 will be equal to 2 and
the constraint is not satisfied. Same if you select all
three.
Where,
is variable cost per unit,
is fixed cost, is number of units for the jth product
The objective criterion then becomes:
12
CUTTING PLANE ALGORITHMS
The concept of the cutting will first be illustrated by an example.
Consider the integer linear programming problem
Maximize z = 7x1+ 9x2
Subject to
-x1 + 3x2 ≤ 6
7x1 + x2 ≤ 35
x1 ,x2 are nonnegative integers
The optimal continuous solution (ignoring the integrality condition) is
shown graphically. This is given by z = 63, x1=9/2, x2= 7/2 which
is non-integer.
Basic X1 X2 X3 X4 SOLUTIO
N
Z 0 0 28/11 15/11 63
S1 X4 =
a [a] f=a-[a]
3/2 1 ½
-7/3 -3 2/3
-1 -1 0
-2/5 -1 3/5
Basic x1 x2 x3 x4 S1 R.H.S.
Z 0 0 28/11 15/11 0 63
Z 0 0 0 1 8 59
x2 0 1 0 0 1 3
x2 0 1 0 0 1 0 3
z 0 0 0 0 2 7 55
x2 0 1 0 0 1 0 3
x1 1 0 0 0 -1 1 4
x3 0 0 1 0 -4 1 1
x4 0 0 0 1 6 -7 4
8
X2
7X 1
+ X2
6
≤ 35
primary
constraints
5
secondary
4 constraints
(9/2,7/2); Z = 63
fr
3
2≤6
(4,3); Z = 55
3X
2 -X1 +
0 X1
0 1 2 3 4 5 6 7
Can be expressed in terms of x1 and x2 only by using the appropriate
substitution as follows:
or
Which is equivalent to