0% found this document useful (0 votes)
8 views

Topic 5 Integer Programming 5.11.24

Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Topic 5 Integer Programming 5.11.24

Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 23

Integer Programming

Adopted from Taha and other sources


Integer programming

In integer optimization, at least one variable is restricted to integer
values. But the decision variables can be linear and / or nonlinear.
We will consider only linear variables.

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.

Y1 = 0 means project P1 is not selected


Y2 = 1 means project P2 is selected and so on.

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.

Suppose the logical relation is: Select P2 or P5 or both.

We need only one constraint. Y2+Y5  1.


Relationship/Constraint(s) Explanation
Select P2 or P5, or both. If only P2 is selected, Y2 = 1.
Y2 + Y 5 ≥ 1 If only P5 is selected, Y5 = 1.
If P2, P5 selected, Y2+Y5 = 2 but when both are not
selected, Y2+Y5 = 0 and the constraint is not
satisfied.

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.

If P5 is selected, then P4 must be If P5 is selected, Y5 = 1 then Y4 must also be 1. If


as well. Y5=0, Y4 can be 0 or 1.
Y4 - Y 5  0 If Y5 =1 and Y4 = 0, the constraint is not satisfied.
Fixed-Charge Problem

Where,
is variable cost per unit,
is fixed cost, is number of units for the jth product
The objective criterion then becomes:

Because of discontinuity at the origin, Z becomes untractable from


the analytic stand point.
Cutting plane algorithm:
The general procedure for cutting plane method is as
follows:
Step1:find the original LP solution (using the simplex
method) ignoring the integer constraint.
Step 2:if the solution is integer stop. Otherwise ,
construct a “cut” derived from the row that has a
non integer variable with the largest fractional
value and add to the current final tableau. If there
is a tie select any row arbitrarily.
Step 3:solve the augmented LP problem ,and return
to step 2.

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

X2 0 1 7/22 1/22 7/2

X1 1 0 -1/22 3/22 9/2


X2+ X4 = 3

X2+(0+ )X4 = (3+ )

Hence the corresponding fractional cut is given by

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

x2 0 1 7/22 1/22 0 7/2

x1 1 0 -1/22 3/22 0 9/2

S1 0 0 -7/22 -1/22 1 -1/2


Basic x1 x2 x3 x4 S1 Solutio
n

Z 0 0 0 1 8 59

x2 0 1 0 0 1 3

x1 1 0 0 1/7 -1/7 32/7

x3 0 0 1 1/7 -22/7 11/7


Since the solution is still non-integer , a
new cut is constructed. The x1 -
equation is written as

which gives the cut


Basic x1 x2 x3 x4 S1 S2 R.H.S
.
Z 0 0 0 1 8 0 59

x2 0 1 0 0 1 0 3

x1 1 0 0 1/7 -1/7 0 32/7

x3 0 0 1 1/7 -22/7 0 11/7

S2 0 0 0 -1/7 -6/7 1 -4/7


Basic x1 x2 x3 x4 S1 S2 Soluti
on

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

Similarly for the second cut,

The equivalent terms in case of x1 & x2

You might also like