Anda di halaman 1dari 5

F ORMULASI M AS A LAH I NTEGER PROGRAMMING

Contoh 1.
Binary Integer programming
Suatu perusahaan mempertimbangkan untuk berinvestasi di empat jenis proyek.
Keempatnya akan menghasilkan net present value (NPV) masing-masing Rp 16 juta , Rp
22 juta , Rp 12 juta dan Rp 8 juta. Setiap proyek perlu uang tunai dengan nilai Rp 5
juta , Rp 7 juta , Rp 4 juta dan Rp 3 juta. Sekarang ini tersedia dana sebesar Rp 14 juta
untuk diinvestasikan.Kita ingin menginvestasikan modal sehingga NPV yang diperoleh
maksimum.
Formulasikan dan selesaikan persoalan ini dengan BIP.
Persoalan ini adalah persoalan binary integer programming. Misal xi variabel biner.
Dalam hal ini nilai xi = 0 atau 1 (i = 1,2,3,4). Nilai 1 bila kita investasi di proyek i dan 0
sebaliknya. Sebagai contoh jika x1 = 1 artinya investasi dilakukan untuk proyek 1, dan x2
= 0 artinya investasi tidak dilakukan pada proyek 2. Fungsi tujuan dari persoalan ini
adalah perusahaan ingin memaksimasi profit. Sehingga fungsi tujuan bisa diformulasikan
sebagai
Max f ( x ) 16 x1 22 x 2 12 x3 8 x 4

Sedangkan dana yang tersedia untuk investasi adalah Rp 14 juta, sehingga pembatasnya
bisa diformulasikan sebagai
5 x1 7 x 2 4 x3 3 x 4 14

Jadi formulasi secara lengkap diberikan sebagai


Max f ( x ) 16 x1 22 x2 12 x3 8 x4

st

5 x1 7 x 2 4 x3 3 x 4 14
xi 0 atau 1, i 1,2,3,4.

Kasus serupa dengan ini sering disebut dengan knapsack. Dalam knapsack, seorang
pendaki gunung ingin membawa beberapa barang, tetapi ransel yang dibawanya
kapasitasnya terbatas. Untuk itu dia harus memutuskan barang-barang mana saja yang

akan dia bawa sehingga nilainya maksimum dengan tetap mempertimbangkan kapasitas
ranselnya.

Jika pada persoalan ini ada persyaratan tambahan sebagai berikut, bagaimana
formulasinya?
1. Perusahaan paling banyak bisa invest di 2 proyek
2. Jika invest di proyek 2, juga harus invest di proyek 1
3. Jika invest di proyek 2, tidak bisa invest di proyek 4
Berikut adalah konstrain tambahan untuk mengakomodasi tambahan syarat di atas
1. x1 + x2+ x3 + x4 2
2. x2 x1
3. x2 + x4 1
dengan syarat x1, x2, x3, x4 0 dan bernlai 1 atau 0.
Konstrain 1
Ini menjamin bahwa hanya ada maksimum 2 investasi. Karena masing-masing x bernilai
maksimum 1, maka hanya akan ada 2 x yang bernilai 1.
Konstrain 2
Ini menjamin jika investasi dilakukan di proyek 2 maka juga akan dilakukan di proyek 1.
Jika x2 =1 maka x1 pasti bernilai 1 tidak mungkin 0. Sebaliknya jika x2 = 0 maka x1 akan
bernilai 0, tidak akan bernilai 1.
Konstrain 3
Ini akan menjamin hanya salah satu diantara x2 dan x4 yang bernilai 1.

S E T C OV E R I N G PR O B LE M
Dalam set covering, kita ingin menempatkan satu set fasilitas di beberapa lokasi yang
mampu menjangkau (cover) semua lokasi yang dilayani. Masalahnya adalah berapa

jumlah fasilitas yang harus ditempatkan dan dimana. Berikut contoh sederhana mengenai
set covering.
Contoh
Di suatu wilayah pelayanan PDAM akan dibuka maksimum 6 fasilitas pembayaran di
enam kecamatan. Diharapkan 6 fasilitas ini bisa melayani semua pelanggan di wilayah
yang ditangani kantor PDAM. Waktu tempuh antar kecamatan diberikan sebagai berikut.
Disyaratkan bahwa waktu tempuh dari setiap kecamatan ke kecamatan dimana fasilitas
ditempatkan tidak boleh melebihi 15 menit. Tentukan formulasi IP yang meminimumkan
jumlah fasilitas yang dibangun dan di kecamatan mana fasilitas pembayaran akan
dibangun.

Kecamata
n

1
2
3
4
5
6

1
0
10
20
30
30
20

kecamatan
2
3
4
10
20
30
0
25
35
25
0
15
35
15
0
20
30
15
10
20
25

5
30
20
30
15
0
14

6
20
10
20
25
14
0

Dari tabel bisa dikelompokkan untuk setiap kecamatan, kecamatan mana yang waktu
tempuhnya kurang dari atau sama dengan 15 menit.
Kecamat
an
1
2
3
4
5
6

Waktu tempuh
15
1,2
1,2,6
3,4
3,4,5
4,5,6
2,5,6

Untuk dua kecamatan atau lebih yang jarak tempuhnya 15, maka akan ditempatkan
minimum satu fasilitas. Dari tabel pengelompokkan ini bisa kita wujudkan dalam
konstrain matematis sebagi berikut
Kec 1 : x1 + x2 1

Kec 2 : x1 + x2+ x6 1
Kec 3 : x3 + x4 1
Kec 4 : x3 + x4 + x5 1
Kec 5 : x4 + x5 + x6 1
Kec 6 : x2 + x5 + x6 1
Kita ingin meminimumkan jumlah fasilitas yang dibangun sehingga fungsi tujuannya
adalah
Min z = x1 + x2+ x3 + x4+ x5 + x6
Setelah kita selesaikan dengan LINDO, didapatkan solusi x2= x4=1, dan x1 = x3= x5 = x6 =
0, dimana z = 2. Dengan solusi ini, maka fasilitas pembayaran harus ditempatkan di
kecamatan 2 dan kecamatan 4 sehingga setiap kecamatan bisa membayar ke salah satu
dari kedua fasilitas itu agar waktu tempuh kurang dari atau sama dengan 15 menit.
PR
1
Ada 8 distrik. Akan ditempatkan 2 ambulans di dua distrik yang berbeda dimana lokasi
ambulans harus di dalam area dimana waktu tempuhnya maksimum 2 menit dari setiap
distrik yang dilayani. Berikut adalah data waktu tempuh dan jumlah populasi dari setiap
distrik. Gunakan integer programming untuk memilih lokasi sehingga memaksimumkan
jumlah penduduk yang bisa dilayani.
distr
ik

3 4 5 6 7

2
3
4
5
6

3
4
6
8
9

5
0
2
2
3

4
2
0
3
2

8
2
3
0
2

6
3
2
2
0

8
1
0

0
5
4
8
6
1
2

8
1
2
5
5
2
3

populasi(dalam
ribuan)
distrik
jumlah
1
40
2
30

8
1
0
9
7
4
4
2
2
0

3
4
5
6
7
8
2.Gunakan B&B
Min
Subject to
x1 , x2 integer

Z = -8x1 - 5x2
x1 + x2 6
9x1 + 5x2
45
x1 , x2 0;

35
20
15
50
45
60

Anda mungkin juga menyukai