You are on page 1of 21

Program Integer

• Program Integer merupakan persoalan


program linear yang mensyaratkan bahwa
jawaban / solusi dari tiap variabel
keputusannya adalah integer (bilangan
bulat).
• Pada kondisi nyata di lapangan banyak
ditemui : misal jumlah kursi 6 atau 25
bukan 6,25 atau 25,8
Contoh
• Max : Z = 10X1 + 8X2
• ST
• 2X1 + 3 X2 ≤ 11
• X1 dan X2 ≥ 0 dan integer
• Daerah layak : (0;0) – (5,5;0) – (0;3,67)
• Z di (5,5;0) = 55 (belum solusi integer)

Z4=50

4
Z2=52,4 X2≤0
X1=5
2 X2=0
X1=5 X2≥1
Z1=55 X2=0,3 Z5=48
X1≤5
1 5
X1≥6 X1= 4
X1=5,5
X2=0 3 X2= 1

Tidak
layak
Bahan diambil dari Internet
Integer Linear Programming

When you need discrete


solutions
Discrete Variables
• Linear programming allows us to solve
large scale network problems. It gives
answers in terms of continuous
variables
• However, there are many situations
where we need solutions to network
problems which are not allowed to fall
in a continuous range
Design Problem
• For example, if we are designing a
network, we need to decide whether
to place a link between two particular
nodes
• In this case a decision is either “yes”
or “no”. We could represent this as a
variable which had only two possible
values, 0 or 1
Modular Equipment
• Equipment, such as switches, have to
be bought with quantised traffic
capacity
• For example, a switch could have
capacity equal to 100, 200,…400
Gbps, but it might be impossible to
purchase anything between these
numbers
No Separate Method
• No separate technique has been
developed to solve this type of
problem
• The best solutions adapt the
techniques of linear programming and
look for discrete solutions in the
vicinity of the continuous solution
LP with Discrete Variables
• Only
discrete
values
allowed
Branch and Bound
• The most popular and successful
method of obtaining discrete
solutions today is called “branch and
bound”
• This method relies on our being able
to solve a LP problem by the simplex
method
Branch and Bound
• The first step is to solve the problem
as a LP problem, using the simplex
method
• This will, in general produce solutions
with variables in a continuous range
• We take one of these variables and
constrain it to take the allowed value
below its current one
Branch and Bound
• This defines a new problem which can
also be solved by the simplex method
• However, it is also possible that the
allowed value above the LP solution
gives a better cost function
• Therefore we should also try this
constraint
Simple Example
• Maximise z = x1+x2 with constraints
• x1 + 3x2 ≤ 3
• 3x1 + x2 ≤ 6
• x1, x2 integers ≥ 0
• (This example comes from Eiselt and
Sandblom)
Simple Example
• The optimal solution to the LP
problem is
• x1 = 1.875
• x2 = 0.375
• z = 2.25
• We will choose x2 to constrain so that
x2 ≤ 0
Simple Example
• The new solution is
• x1 = 2
• x2 = 0
• z=2
• We still need to try solving with
constraint x2 ≥ 0
Simple Example
• The new solution is
• x1 = 0
• x2 = 1
• z=1
• Both of these solutions have given us
integral values of x1 also
• We choose the first solution because
it has a higher z
Branching Tree
• We do not need to explore any more
values in the region
• We can illustrate what we have just
done with a “branching tree”
x1 = 1.875
x2 = 0.375 x2 ≥ 1
x2 ≤ 0
z = 2.25
x1 = 0
x1 = 2
x2 = 1
x2 = 0
z=1
z=2
Integer programming example:
graphical solution (2D)
x2 6
5

2 optimal solutions! 0 1 2 3 4 5 6
x1
19
Integer programming example:
graphical solution (2D)
x2 6
5

2 optimal solutions! 0 1 2 3 4 5 6
x1
20
Branch and bound example 3
LP solution:

x2 6
5

obj: 3 obj: 3 3

0 1 2 3 4 5 6
x1
obj: 3 obj: 3 21

You might also like