Anda di halaman 1dari 34

Pengantar Integer Programming

Dian Pratiwi Sahar


Institut Teknologi Kalimantan

Model integer programming

Permasalahan integer programming (IP) adalah suatu Program Linear (LP) yang
beberapa atau seluruh variabel yang digunakan merupakan bilangan integer positif

Jenis-jenis permasalahan IP:

Pure IP problem: jika semua variabel harus bernilai integer

Maximize z = 3x1 + 4x2


subject to 5x1 + 8x2 24
x1, x2 0, x1 dan x2 integer

Mixed IP problem: jika hanya beberapa variabel yang bernilai integer

Maximize z = 3x1 + 4x2


subject to 5x1 + 8x2 24
x1, x2 0, x1 integer

0-1 IP problem: jika semua variabel harus bernilai 0 atau 1

Maximize z = 3x1 + 4x2


subject to 5x1 + 8x2 24
x1, x2 = 0 or 1
2

Integer programming dan LP relaxation

Permasalahan IP biasanya lebih sulit untuk diselesaikan


dibandingkan dengan permasalahan LP.

LP relaxation dari IP adalah LP yang diperoleh dengan


menghilangkan pembatas semua bilangan integer atau pembatas.

Contoh Pure IP problem :

Maximize z = 3x1 + 4x2


subject to 5x1 + 8x2 24
x1, x2 0, x1 dan x2 integer

Contoh Pure IP problem yang telah di-longgarkan (relax):

Maximize z = 3x1 + 4x2


subject to 5x1 + 8x2 24
x1, x2 0
3

Pendekatan sederhana solusi IP


Pendekatan 1:
Cari seluruh kemungkinan solusi
Tentukan nilai fungsi tujuannya
Pilih nilai maksimum (atau minimum)
3
2

x2

7x1 + 4x2= 13

Pendekatan 2:
3
1
2
Selesaikan LP relaxation
x1
Bulatkan pada solusi integer yang feasibel terdekat
x

Solusi integer
programming

x2

Contoh Problem:

Max 1200 x1 + 2000 x2

ST:
4

2x1 + 6 x2 27
x2 2

3x1 + x2 19
2

x1 , x2 0 and Integer

LP Optimal
x1 = 5 7/16
x2 = 2 11/16
5

x1

LP relaxation,
kemudian
dibulatkan
x2

Max 1200 x1 + 2000 x2

Pembulatan?

x1 = 5
x2 = 3

ST:

Pembulatan ke atas?
x1 = 6
x2 = 3

Pembulatan
ke bawah?
x1 = 5
x2 = 2

LP Optimal
x1 = 5 7/16
x2 = 2 11/16

x1

2x1 + 6 x2 27
x2 2
3x1 + x2 19
x1 , x2 0 and Integer

x2

IP Optimal
x1 = 4
x2 = 3

x1

Untuk MAX problem:


nilai optimal dari IP nilai optimal dari LP relaxation
7

Pemodelan Integer Programming


Dian Pratiwi Sahar
Institut Teknologi Kalimantan

Contoh 1: Problem investasi

Perusahaan Stockco mempertimbangkan empat jenis investasi


Modal yang tersedia untuk investasi sebesar $ 14,000
Formulasikan model integer programming ini untuk memaksimumkan NPV
dari investasi-investasi berikut:

SOLUSI:
xi = banyaknya modal yang diinvestasikan pada jenis ke-i
Maximize
z = 16 x1+ 22 x + 12 x3 + 8 x4
Kendala:
5 x1 + 7 x2 + 4 x3 + 3 x4 14
x1, x2, x3, x4 = 0, 1
9

Pengembangan Problem investasi


Perusahaan Stockco mempertimbangkan batasan-batasan logis berikut ini:
1. Tepat 3 investasi yang terpilih.
2. Jika investasi ke-2 terpilih, maka investasi ke- 1 juga terpilih.
3. Jika investasi ke- 1 terpilih, maka investasi ke- 3 tidak terpilih.
4. Salah satu dari investasi ke- 3 atau ke-4 harus terpilih, tetapi tidak dapat keduaduanya.
Tambahan pembatas:
5. Tepat 3 investasi yang terpilih
x1+ x2+ x3+ x4 =3
2. Jika investasi ke-2 terpilih, maka investasi ke- 1 juga terpilih x1 x2
3. Jika investasi ke- 1 terpilih, maka investasi ke- 3 tidak terpilih
x1 + x3 1
4. Salah satu dari investasi ke- 3 atau ke-4 harus terpilih, tetapi tidak dapat keduaduanya
x3 + x4 = 1

Contoh 2: Pemilihan pemain bola basket


Perkumpulan bola basket Pasti Menang sedang
menghadapi kompetisi tingkat nasional. Sang pelatih hendak
memilih 5 dari 7 pemain yang akan diturunkan dalam
pertandingan malam nanti. Data-data pemain seperti terlihat
pada tabel dibawah ini:

11

Pemilihan pemain bola basket


Pembatas yang dialami pelatih adalah sebagai berikut:
1. Harus ada tepat lima pemain, dengan syarat:
Sedikitnya empat pemain sebagai penyerang.
Sedikitnya dua pemain sebagai pemain depan.
Sedikitnya satu pemain sebagai pemain tengah.

2. Rata-Rata tingkat ketrampilan pemain paling sedikit 2.


3. Salah satu dari pemain ke-2 atau pemain ke-3 harus
bermain.
4. Jika pemain ke-3 bermain, maka pemain ke-6 tidak bisa
bermain.
5. Jika pemain ke-1 bermain, maka pemain ke-4 dan ke-5
harus bermain juga.

Solusi : Pemilihan pemain bola basket (1)


Variabel Keputusan
Xi = 1, jika pemain ke-i diturunkan ke lapangan.
= 0, jika pemain ke-i tidak diturunkan
Fungsi tujuan:
Max 6 x1 + 4 x2 + 5 x3 + 4 x4 + 6 x5 + 5 x6 + 5 x7
Pembatas :
(1a) Harus ada tepat lima pemain turun ke lapangan
x1 + x2 + x3 + x4 + x5 + x6 + x7 = 5

(1b) Paling sedikit terdapat empat pemain penyerang (guard).


x1 + x3 + x5 + x7 4

(1c) Paling sedikit terdapat dua pemain depan (forward).


x3 + x4 + x5 + x6 + x7 2

(1d) Paling sedikit terdapat satu pemain tengah.


x2 + x4 + x6 1

Solusi : Pemilihan pemain bola basket (2)


2. Rata-Rata tingkat ketrampilan pemain paling sedikit 2
(a) Rata-rata ketrampilan pemain menggiring bola lebih dari dua.
(3 x1 + x2 + x3 + x4 + 2 x5 + x6 + x7)/5 2
3 x1 + x2 + x3 + x4 + 2 x5 + x6 + x7 10

(b) Rata-rata ketrampilan pemain menembak bola lebih dari dua.


x1 + 2 x2 + 3 x3 + 2 x4 + x5 + 3 x6 + 2 x7 10
(c) Rata-rata ketrampilan pemain menghadang lebih dari dua.
2 x1 + x2 + x3 + x4 + 3 x5 + x6 + 2 x7 10

3. Salah satu dari pemain ke-2 atau pemain ke-3 harus bermain
x2 + x3 1
Variabel kemungkinan yang terjadi:
x2 = 1 & x3 = 0 Feasible
x2 = 0 & x3 = 1 Feasible
x2 = 1 & x3 = 1 Feasible
x2 = 0 & x3 = 0 Infeasible

Solusi : Pemilihan pemain bola basket (3)


4. Jika pemain ke-3 bermain, maka pemain ke-6 tidak bisa
bermain
x3 + x6 1
Variabel kemungkinan yang terjadi:

Pemain 3 bermain, tetapi pemain 6 tidak bermain.

x3 = 1, x6 = 0
Feasible
Pemain 6 bermain, tetapi pemain 3 tidak bermain.
x3 = 0, x6 = 1
Feasible
Kedua-duanya bermain
x3 = 1, x6 = 1
Infeasible
Kedua-duanya tidak dapat bermain.
x3 = 0, x6 = 0
Feasible
15

Solusi : Pemilihan pemain bola basket (4)


5. Jika pemain ke-1 bermain, maka pemain ke-4 dan ke-5
harus bermain juga
x1 x4
x1 x5
Jika x1 = 1, maka x4 = 1 dan x5 =1.
Variabel kemungkinan yang terjadi:

Contoh 3 : Pengeboran Minyak


1. Pemilihan paling sedikit 5 lokasi dari 10 lokasi
pengeboran minyak yang telah direncanakan, dengan
variabel keputusan X1, X2,, X10 dan biaya
pengeboran C1, C2,, dan C10.
2. Batasan:
Paling banyak dua dari lokasi X5, X6, X7 dan X8 yang dapat
dipilih
Memilih lokasi X3 atau lokasi X4 akan mencegah untuk
memilih lokasi X5.
Memilih kombinasi lokasi X1 dan X7 akan mencegah untuk
memilih lokasi X8.

Solusi Pengeboran Minyak (1)


Variabel Keputusan:
Xi = 1, jika lokasi ke-i dilakukan pengeboran.
= 0, jika lokasi ke-i tidak dilakukan pengeboran.
Fungsi tujuan:
Min C1 x1 + C2 x2 + C3 x3 + C4 x4 +C5 x5 +
C6 x6 + C7 x7 + C8 x8 + C9 x9 + C10 x10
Kendala:
(1) Pemilihan paling sedikit 5 lokasi dari 10 lokasi pengeboran
x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 = 5
(2a) Paling banyak dua dari lokasi X5, X6, X7 dan X8 yang dapat
dipilih
x5 + x6 + x7 + x8 2

Solusi Pengeboran Minyak (2)


(2b) Memilih lokasi X3 atau lokasi X4 akan mencegah
untuk memilih lokasi X5
x3 + x5 1
x4 + x5 1

x3=1 atau x4=1, maka harus x5=0 (jika memilih lokasi


X3 atau lokasi X4, lokasi X5 tidak boleh dipilih).
x5=1, maka nilai x3=0 dan x4=0 (jika memilih lokasi
X5, maka lokasi X3 dan lokasi X4 tidak boleh dipilih).

Solusi Pengeboran Minyak (3)


(2c)
Memilih kombinasi lokasi X1 dan X7 akan mencegah
untuk
memilih lokasi X8
x1 + x7 + x8 2

20

Kasus 1: tidak memilih lokasi X8


x8 = 0, maka x1 + x7 2 (dapat memilih lokasi S1, S7,
atau kedua-duanya, atau tidak keduanya).

Solusi Pengeboran Minyak (4)


(2c)
Memilih kombinasi lokasi X1 dan X7 akan mencegah
untuk memilih lokasi X8
x1 + x7 + x8 2

21

Kasus 2: Menyelidiki lokasi S8


x8 = 1, maka x1 + x7 1 (dapat memilih lokasi x1atau
x7, tetapi tidak kedua-duanya)

Contoh 4 : Problem Western

Penerbangan western memutuskan untuk memiliki beberapa kota transit di USA.

Jalur penerbangan yang dimiliki mencakup kota-kota berikut: Atlanta, Boston,


Chicago, Denver, Houston, Los Angeles, New Orleans, New York, Pittsburgh, Salt
Lake City, San Francisco, dan Seattle.

Western menginginkan untuk mempunyai kota transit dalam 1000 mil dari tiap
kota-kota ini.

Hitunglah jumlah minimum dari kota transit.

22

Formulasi Set Covering Problems

Variabel keputusan:
Xi = 1 jika transit berlokasi di kota ke-i
0 jika transit tidak berlokasi di kota ke-I

Fungsi tujuan:
minimize XAT + XBO + XCH + XDE + XHO + XLA +
XNO + XNY + XPI + XSL + XSF + XSE

Kendala:
AT
BO
CH
DE
HO
LA
NO
NY
PI
SL
SF
SE

23

AT
1
0
1
0
1
0
1
1
1
0
0
0

BO
0
1
0
0
0
0
0
1
1
0
0
0

CH
1
0
1
0
0
0
1
1
1
0
0
0

DE
0
0
0
1
0
0
0
0
0
1
0
0

HO
1
0
0
0
1
0
1
0
0
0
0
0

LA
0
0
0
0
0
1
0
0
0
1
1
0

NO
1
0
1
0
1
0
1
0
0
0
0
0

NY
1
1
1
0
0
0
0
1
1
0
0
0

PI SL SF SE
Required
1 0 0 0 xAT >= 1
1 0 0 0 xBO >= 1
1 0 0 0 xCH >= 1
0 1 0 0 xDE >= 1
0 0 0 0 xHO >= 1
0 1 1 0 xLA >= 1
0 0 0 0 xNO >= 1
1 0 0 0 xNY >= 1
1 0 0 0 xPI >= 1
0 1 1 1 xSL >= 1
0 1 1 1 xSF >= 1
0 1 1 1 xSE >= 1

Metode Penyelesaian Integer


Programming
Dian Pratiwi Sahar
Institut Teknologi Kalimantan

Pendekatan untuk menyelesaikan IP


1. Enumeration. Tahapannya:
Hitung semua solusi yang mungkin.
Tentukan masing-masing-masing fungsi
tujuannya.
Pilih solusi dengan nilai maksimum (atau
minimum).
2.

25

Branch and Bound. Tahapannya:


. Selesaikan LP relaxation.
. Bulatkan solusi yang mendekati solusi
feasible integer.

Telfa Corporation

Telfa Corporation makes tables and chairs.


A table requires one hour of labor and 9 square board feet of
wood.
A chair requires one hour of labor and 5 square board feet of
wood.
Each table contributes $8 to profit and each chair contributes $5
to profit.
6 hours of labor and 45 square board feet is available.
Find a product mix to maximize the profit!

Solution:
Maximize z = 8X1 + 5X2
Subject to: X1 + X2 6
9X1 + 5X2 45
X1 0, X2 0 and X1, X2 integer
26

Feasible
regional for
Telfas problem
Subproblem 1: The
relaxation of regional
Optimal LP solution:
X1 = 3.75; X2 = 2.25;
and Z = 41.25
Subproblem 2:
Subproblem 1 +
constraint X1 4
Subproblem 3:
Subproblem 1 +
constraint X1 3

27

Feasible
regional of
subproblems
Branching: the process
of decomposing a
subproblems.
Optimal solution of
subproblem 2:
X1 = 4; X2 = 9/8 =
1.8; and z = 41
Subproblem 4:
subproblem 2 +
constraint X2 2
Subproblem 5:
Subproblem 2 +
constraint X1 1

28

Feasible regiona for subproblem 4 & 5

29

The branch and bound tree


1
X1 4
2
X2 2
3

Subproblem 4

Subproblem 2
Z = 41
X1 = 4
X2 = 1.8

Subproblem 1
Z = 41.25
X1 = 3.75
X2 = 2.25

X1 3
Subproblem 3

X2 1
Subproblem 5

Infeasible

Optimal solution of Subproblem 5:


z = 40.56; X1 = 4.44; X2 = 1
Subproblem 6: Subproblem 5 + constraint X1 5
Subproblem 7: Subproblem 5 + constraint X1 4
30

Feasible
regional for
Subproblems 6
&7
Optimal solution of
Subproblem 7:
Z = 37; X1 = 4; X2 = 1
Optimal solution of
Subproblem 8:
Z = 40; X1 = 5; X2 = 0

31

The branch and bound


1
X1 4
2
X2 2
3

Subproblem 4

4
X1 5

Infeasible

32

Subproblem 2
Z = 41
X1 = 4
X2 = 1.8

Subproblem 6
Z = 40
X1 = 5
X2 = 0, LB =
37

Subproblem 1
Z = 41.25
X1 = 3.75
X2 = 2.25

X1 3
Subproblem 3
Z = 39
X1 = 3
X2 = 3, LB =
39

X2 1
Subproblem 5
Z = 40.56
X1 = 4.44
X2 = 1

X1 4
6

Subproblem 7
Z = 37
X1 = 4
X2 = 1

Solving knapsack problems

Max z = 16X1 + 22 X2 + 12 X3 + X4
Subject to:
5X1 + 7X2 + 4X3 + 3X4 14
Xi = 0 or 1 for all i = 1,2,3,4

LP relaxation:
Max z = 16X1 + 22 X2 + 12 X3 + X4
Subject to:
5X1 + 7X2 + 4X3 + 3X4 14
0 Xi 1 for all i = 1,2,3,4
Solving the LP relaxation:
Order Xis in the decreasing order of ci/ai where ci are the cost
coefficients and ais are the coefficients in the constrain.
Select items in this order until the constraint is satisfied with
equality.
33

The branch and bound


1
X3 = 0
Subproblem 2
Z = 38.7
X1 = X2 = 1
X3 = 0; X4 = .
67

X4 = 0
8

Subproblem 8
Z = 38
X1 = X2 = 1
X3 = X4 = 0

Subproblem 1
Z = 44
X1 = X2 = 1
X3 = .5; X4 =
0

Subproblem 3
Z = 43.7
X1 = X3 = 1
X2 = .7; X4 =
0

X2 = 0

X4 = 1
Subproblem 9
Z = 35.9
X1 = X4 = 1
X3 = 0; X2 = .
86

X3 = 1

Subproblem 4
Z = 29
X1 = X3 = 1
X2 X1
= 0;
X44= 1

X1 = 0
5

34

Subproblem 6
Z = 35
X2 = X3 = 1
X1 = 0; X4 = 1

X2 = 1

Subproblem 5
Z = 43.6; LB =
29
X2 = X3 = 1
X1 = .6; X4 =
0

X1 = 1
Subproblem 7
Infeasible

Anda mungkin juga menyukai