Anda di halaman 1dari 22

PRAKTIKUM RISET OPERASI

Branch and Bound & Knapsack


Problem
Branch and Bound

Metode Branch and Bound (cabang dan batas) adalah salah satu metode untuk menghasilkan
penyelesaian optimal program linier yang menghasilkan variable-variable keputusan bilangan
bulat. Sesuai dengan namanya, metode ini membatasi penyelesaian optimum yang akan
menghasilkan bilangan pecahan dengan cara membuat cabang atas dan bawah bagi masing-
masing variable keputusan yang bernilai pecahan agar bernilai bulat sehingga setiap
pembatasan akan menghasilkan cabang baru.
Persoalan IP Murni dengan Teknik Branch and Bound

Dalam masalah Integer Proramming, jika model mengharapkan semua variabel basis bernilai
Integer (bulat positif atau nol), dinamakan Pure Integer Programming.

Contoh:

Maksimumkan Z: 8X1 + 5X2

Pembatas: 5,5X1 + 6X2 ≤ 33

9X1 + 5X2 ≤ 45

X1,X2 ≥ 0

X1,X2 Integer
Persoalan IP Campuran dengan Teknik Branch and Bound

Jika model mengharapkan variabel – variabel tertentu yang bernilai Integer,


dinamakan Mixed Integer Programming.
Contoh:

Maksimumkan Z: 2X1 + X2

Pembatas: 5X1 + 2X2 ≤ 8

X1 + X2 ≤ 3

X1,X2 ≥ 0

X1 Integer
Knapsack Problem

Knapsack Problem (KP) adalah masalah penempatan item (barang) ke dalam suatu


tempat (biasa disebut Knapsack) yang mempunyai kapasitas tertentu, dimana
setiap item memiliki berat dan nilai, sehingga total berat dari item-item yang
ditempatkan tidak melebihi kapasitas Knapsack dan nilai yang didapatkan
maksimum. 
Knapsack Problem dengan Teknik Branch and Bound

Bentuk Formulasi :

Maksimumkan Z = C1X1 + C2X2 + C3X3 + C4X4 + ….. + CnXn

Berdasarkan Pembatas :
a1X1 + a2X2 + a3X3 + a4X4 + …. + anXn ≤ b
Xi = 0 atau 1 (I = 1, 2, 3, … n)
Langkah Pengerjaan

1. Hitunglah seluruh rasio Ci/ai


2. Buatlah rangking untuk seluruh rasio Ci/ai
3. Pilihlah rasio terbesar dan masukan kedalam ransel
4. Lakukan sampai ransel penuh
5. Hitunglah nilai Maksimum
Contoh Soal :

Maksimumkan Z = 40X1 + 80X2 + 10X3 + 10X4 + 4X5 + 20X6 + 60X7

Berdasarkan Pembatas :
40X1 + 50X2 + 30X3 + 10X4 + 10X5 + 40X6 + 30X7 ≤ 100
Xi = 0 atau 1 ( i = 1,2,3,4,… n)
1. Buatlah rasio Ci/ai dari nilai terbesar
2. Buatlah Ranking berdasarkan nilai pembatas terbesar
3. Memasukkan dalam ransel sesuai dengan rasio

Pembatas ≤ 100

Maka :
Masuk kedalam ransel kapasitas 100
1) Ranking 1 Nilai Variable X7 = 30
 100 – 30 = 70 (Variable X7 masuk Ransel)
2) Ranking 2 Nilai Variable X2 = 50
Sisa  70 – 50 = 20 (Variable X2 masuk Ransel)
4. Memasukkan dalam ransel sesuai dengan rasio sampai penuh

3) Ranking 3 Nilai Variable X1 = 40


Sisa  20 Maka Variable X1 tidak memenuhi
(Variable X1 tidak masuk Ransel)
4) Ranking 4 Nilai Variable X4 = 10
Sisa  20 – 10 = 10 (Variable X4 masuk Ransel)
5) Ranking 5 Nilai Variable X6 = 40
Sisa  10 Maka Variable X6 tidak memenuhi
4. Memasukkan dalam ransel sesuai dengan rasio sampai penuh

6) Rangking 6 Nilai Variable X5 = 10


Sisa  10 – 10 = 0 (Variable X5 masuk Ransel)
7) Rangking 7 Variable X3 tidak masuk Ransel karena kapasitas
sudah 0

Variable yang masuk Ransel akan bernilai 1


Sedangkan yang tidak masuk Ransel akan bernilai 0
5. Menghitung nilai maksimum

Hasil diatas yang bernilai 1 = { X7, X2, X4, X5 } dan yang bernilai
0 = { X1, X3, X6 }

Menghitung nilai Maksimum Z =40X1 + 80X2 + 10X3 + 10X4 +


4X5 + 20X6 + 60X7

Maksimumkan Z = 40(0) + 80(1) + 10(0) + 10(1) + 4(1) + 20(0) +


60(1) = 154
Knapsack Problem dengan Teknik Branch and Bound

Ada kebakaran di Apartemen Andri. Dia memutuskan untuk membawa barang


yang berharga untuk dibawa keluar dari sana. Andri hanya membawa satu tas
yang memiliki berat maksimal 14 Ibs. Barang apa saja yang akan diambil?
Knapsack Problem dengan Teknik Branch and Bound

Maksimumkan Z: 16X1 + 22X2 + 12X3 + 8X4

Pembatas: 5X1 + 7X2 + 4X3 + 3X3 ≤ 14

Xi Integer

0 ≤ Xi ≤ 1
4

Anda mungkin juga menyukai