Anda di halaman 1dari 78

PERTEMUAN XI RISET OPERASIONAL

Program Bilangan Bulat Metode Cabang-Batas


(Branch-Bound)
Program Bilangan Bulat
 Permasalahan program linear bilangan bulat muncul ketika
kita harus memutuskan jumlah barang yang kita perlukan
berbentuk bilangan bulat, seperti menentukan banyaknya
mesin untuk suatu pabrik, banyaknya foto copy untuk layanan
di suatu kantor, banyaknya komputer di suatu ruangan untuk
mengerjakan sejumlah pekerjaan, banyaknya orang yang
mengerjakan suatu proyek, dan sebagainya.

 Tidaklah mungkin banyaknya mesin giling padi di suatu


pabrik 2,38 buah untuk menggiling padi di suatu wilayah
tertentu, keputusan akan menjadi 3 buah, atau 2 buah dengan
kerja lembur, dan sebagainya.
Program Bilangan Bulat
 Secara umum, penyelesaian program linier bukanlah bilangan
bulat.

 Apabila variabel keputusannya merupakan kuantitas yang


harus bulat (misalkan jumlah mobil, jumlah almari, dll),
maka model program linier tidak dapat dipakai.

 Untuk lebih melihat perbandingannya, perhatikan contoh 1


dan contoh 2.
Contoh 1
 Suatu perusahaan obat nyamuk memproduksi 2 macam obat
pembunuh nyamuk cair, yaitu jenis “super” dan jenis “biasa”.
Keduanya dibuat dari bahan dasar yang sama yaitu cairan A dan B,
namun dengan komposisi yang berbeda-beda. Untuk membuat 1
liter jenis super dibutuhkan 10 cc bahan A dan 4 cc bahan B,
sedangkan 1 liter jenis biasa membutuhkan 2 cc bahan A dan 2 cc
bahan B. Penjualan tiap liter obat nyamuk jenis super memberikan
keuntungan sebesar Rp 5000, sedangkan jenis biasa sebesar Rp
2000. Perusahaan tersebut ingin membuat sebanyakbanyaknya,
namun ia memiliki keterbatasan dalam hal penyediaan bahan
pembuatnya. Tiap minggu ia hanya mampu menyediakan 100 cc
bahan A dan 50 cc bahan B. Tentukan jumlah obat yang harus
dibuat (dengan kendala yang ada) agar keuntungan yang
didapatkannya maksimum !
Contoh 1
 Penyelesaian
 Misalkan
x1 = jumlah cairan jenis super
x2 = jumlah cairan jenis biasa yang dibuat

 Model yang sesuai adalah:


 Maksimumkan f x1, x2 = 5 x1 + 2 x2 (dalam ribuan)
 Dengan kendala : 10 x1 + 2 x2 ≤ 100
4 x1 + 2 x2 ≤ 50
x1, x2 ≥ 0
Contoh 1
 Gambar dibawah ini menunjukkan daerah fisibel dengan titik
sudut masing-masing: O (0, 0) dengan f(O) = 0, A (0, 25)
dengan f(A) = 50, E ( , ) dengan f(E) = dan D (10,0)
dengan f(D)= 50.
Contoh 1
 Titik maksimumnya adalah E ( , ) dengan f(E) = .

 Jika dikembalikan ke soal aslinya, berarti pengusaha tersebut


harus memproduksi liter cairan super dan liter cairan
biasa.
Contoh 2
 Seorang tukang jahit membuat baju dan rok yang keduanya
dibuat dari bahan dasar yang sama yaitu A dan B. Untuk
membuat satu set baju dibutuhkan 10 m bahan A dan 4 m
bahan B, sedangkan pembuatan satu set rok membutuhkan 2
m bahan A dan 2 m bahan B. Penjualan tiap set baju
memberikan keuntungan sebesar Rp 5000, sedangkan tiap set
rok sebesar Rp 2000. Tukang jahit tersebut ingin membuat
sebanyak-banyaknya, namun ia memiliki keterbatasan dalam
hal penyediaan bahan pembuatnya. Tiap minggu ia hanya
mampu menyediakan 100 m bahan A dan 50 m bahan B.
Tentukan jumlah baju dan rok yang harus dibuat (dengan
kendala yang ada) agar keuntungan yang didapatkannya
maksimum !
Contoh 2
 Penyelesaian
 Misalkan
x1 = jumlah baju
x2 = jumlah rok

 Model yang sesuai adalah:


 Maksimumkan f x1, x2 = 5 x1 + 2 x2 (dalam ribuan)
 Dengan kendala : 10 x1 + 2 x2 ≤ 100
4 x1 + 2 x2 ≤ 50
x1, x2 ≥ 0
Contoh 2
 Perhatikan bahwa model tersebut sama persis dengan model
pada contoh 1.

 Ini berarti penyelesaian optimalnyapun sama, yaitu (x1, x2) =


( , ). Jika dikembalikan ke soal aslinya, berarti tukang jahit
tersebut harus membuat baju dan rok.
Pembahasan
 Pada contoh 1, penyelesaian optimal dapat diaplikasikan
karena jumlah cairan obat nyamuk dapat berupa pecahan.

 Akan tetapi penyelesaian contoh 2 tidak dapat dilakukan


karena jumlah baju maupun rok yang dibuat haruslah
merupakan bilangan bulat.

 Pembulatan/pemotongan hasil yang didapat dari penyelesaian


optimal program linier secara umum tidak dapat dilakukan
karena mungkin terdapat beberapa penyelesaian pembulatan
dan pembulatan/pemotongan tersebut belum tentu tetap
merupakan penyelesaian optimalnya.
Pembahasan
 Dalam contoh 2, ada beberapa pembulatan penyelesaian
antara lain (8, 8), (8, 9), (9, 8), (9, 9).

 Tidak jelas mana yang merupakan titik yang terletak di


daerah fisibel sehingga tidak dapat ditentukan titik mana yang
merupakan penyelesaian optimalnya.

 Penyelesaian program linier yang mensyaratkan semua


variabelnya bulat dilakukan dengan model Program Bilangan
Bulat.
Program Bilangan Bulat
 Program bilangan bulat merupakan perluasan program linier
dengan penambahan kendala semua variabel penyusunnya
harus merupakan bilangan bulat.

 Dalam bentuk matematika, model program bilangan bulat


adalah sebagai berikut :
Program Bilangan Bulat
 Metode yang sering dipakai untuk menyelesaikan model
Program Bilangan Bulat adalah metode Cabang-Batas
(Branch-Bound).

 Secara umum, algoritma penyelesaian model program


bilangan bulat adalah sebagai berikut :
Program Bilangan Bulat
1. Selesaikan model program bilangan bulat dengan program
linier (grafik ataupun simpleks). Abaikan syarat semua
variabel penyusunnya bilangan bulat.

2. Jika penyelesaian langkah (1) merupakan bilangan bulat,


maka penyelesaian tersebut merupakan penyelesaian
program bilangan bulat. Jika tidak, lanjutkan ke langkah
(3).

3. Ubah soal semula dengan menambahkan kendala/variabel


baru sesuai dengan algoritma Cabang – Batas.

4. Kembali ke langkah (1).


Metode Cabang-Batas (Branch-Bound)
 Prinsip kerja metode Cabang-Batas (Branch & Bound) adalah
mencabangkan soal yang tidak memiliki penyelesaian bulat.

 Percabangan dilakukan terus hingga diperoleh penyelesaian


bulat.
Metode Cabang-Batas (Branch-Bound)
 Pencabangan (Branching)

 Percabangan berarti memecah soal menjadi 2 soal baru


(masing-masing ditambah dengan kendala baru) dan
menyelesaikan keduanya.

 Misalkan penyelesaian optimal program bilangan bulat


memuat variabel xj yang tidak bulat dengan i1 < xj < i2 (i1
dan i2 merupakan 2 bilangan bulat berurutan).
Metode Cabang-Batas (Branch-Bound)
 Maka program dicabangkan menjadi 2 soal baru.

 Cabang kiri ditambah dengan kendala xj ≤ i1, sedangkan


cabang kanan ditambah dengan kendala xj ≥ i2.

 Perhatikan penambahan kendalanya agar tidak terbalik.


Metode Cabang-Batas (Branch-Bound)
 Pembatasan (Bounding)

 Misalkan soal adalah memaksimumkan.

 Pencabangan dilakukan terus hingga ditemukan penyelesaian


bilangan bulat (misal X* dengan nilai maksimum f(X* )).

 X* menjadi batas bawah.

 X* belum tentu merupakan penyelesaian optimal masalah


mula-mula.
Metode Cabang-Batas (Branch-Bound)
 Akan tetapi apabila Xa adalah penyelesaian lain (bulat ataupun
tidak) dengan f(Xa) < f(X*) maka pencabangan dari titik Xa
pasti tidak akan menghasilkan penyelesaian bilangan bulat
yang optimal sehingga percabangan tidak perlu dilakukan.

 Jika masalahnya adalah meminimumkan maka penyelesaian


bulat X* yang pertama kali ditemukan menjadi batas atas.
Semua penyelesaian lain (bulat ataupun tidak) yang memiliki
nilai fungsi lebih besar dari f(X*) diabaikan dan tidak perlu
dicabangkan.
Metode Cabang-Batas (Branch-Bound)
 Logikanya adalah sebagai berikut.

 Dalam soal memaksimumkan, misalkan titik X memiliki nilai


fungsi f(X) = A.

 Semua pencabangan dari titik X pasti memberikan nilai fungsi


yang lebih kecil dari A (ingat bahwa pencabangan dilakukan
dengan penambahan kendala baru. Semakin banyak kendala,
nilai fungsinya semakin kecil).
Metode Cabang-Batas (Branch-Bound)
 Jika X merupakan penyelesaian bulat dan Xa adalah
penyelesaian lain dengan f(Xa) < f(X), maka Xa pastilah
bukan penyelesaian optimal masalah semula.

 Apalagi jika Xa memiliki cabang Xb, maka pastilah f(Xb) <


f(Xa) < f(X) sehingga Xb pasti lebih tidak optimal lagi.

 Ini berarti bahwa pencabangan Xa percuma jika dilakukan.


Metode Cabang-Batas (Branch-Bound)
 Kasusnya berbeda jika X merupakan penyelesaian bulat dan
Xa adalah penyelesaian lain dengan f(Xa) > f(X).

 pencabangan dari Xa perlu dilakukan karena mungkin saja


pencabangan dari Xa akan menghasilkan Xb dengan f(Xa) >
f(Xb) > f(X).
Metode Cabang-Batas (Branch-Bound)
 Pemilihan titik dan variabel yang akan dicabangkan.

 Misalkan Xa dan Xb merupakan 2 titik yang penyelesaian


optimalnya bukan merupakan bilangan bulat sehingga
keduanya perlu dicabangkan.

 Apabila soalnya memaksimumkan, pilihlah titik yang nilai


fungsinya lebih besar.

 Sebaliknya jika soalnya meminimumkan, pilihlah titik yang


nilai fungsinya lebih kecil.
Metode Cabang-Batas (Branch-Bound)
 Misalkan X = (x1, x2, …, xn) adalah penyelesaian soal
dengan beberapa diantara x1, x2, ..., xn bukan merupakan
bilangan bulat sehingga perlu dicabangkan.

 Untuk mempercepat proses, percabangan dilakukan pada


variabel xj yang pecahannya paling dekat dengan 0,5 (paling
jauh dari bilangan bulat).

 Jika ada beberapa xj yang pecahannya sama dekatnya dengan


0,5 maka pilihlah salah satunya secara sembarang.
Contoh 3
 Maksimumkan Z = 3 x1 + 4 x2
 Dengan kendala : 2 x1 + x2 ≤ 6
2 x1 + 3 x2 ≤ 9
x1, x2 bilangan bulat tidak negatif

 Penyelesaian
 Karena soal terdiri dari 2 variabel maka penyelesaian akan
dilakukan dengan metode grafik.
Contoh 3
 Program I (masalah mula-mula)

 Gambar dibawah ini menunjukkan grafik kendala soal mula-


mula.

 Titik-titik dalam daerah fisibel adalah penyelesaian bulatnya.

 Titik E merupakan titik perpotongan kedua kendala.

 Daerah fisibelnya adalah segi empat OAED yang titik sudut


dan nilai fungsinya adalah :
Contoh 3
 O (0, 0) dengan f(O) = 3 (0) + 4 (0) = 0
 A (0, 3) dengan f(A) = 3 (0) + 4 (3) = 12
 D (3, 0) dengan f(D) = 3 (3) + 4 (0) = 9
 E (2,25 , 1,5) dengan f(E) = 3 (2,25) + 4 (1,5) = 12,75
Contoh 3
 Titik maksimumnya adalah titik E = (x1, x2) = (2,25 , 1,5)
dengan f(E) = 12,75.

 Baik x1 maupun x2 bukan merupakan bilangan bulat sehingga


proses percabangan harus dilakukan.

 Pecahan x1 adalah 0,25 sedangkan pecahan x2 adalah 0,5.

 Pencabangan dilakukan pada titik xj yang pecahannya paling


dekat dengan pecahan 0,5, yaitu pada x2.
Contoh 3
 Karena x2 = 1,5 terletak antara 1 dan 2, maka pencabangan
pertama dilakukan dengan menambahkan kendala x2 ≤ 1
(program 2) sedangkan pencabangan kedua dilakukan dengan
menambahkan kendala x2 ≥ 2 (program 3).
Contoh 3
 Program II (Program I + kendala x2 ≤ 1)

 Maksimumkan Z = 3 x1 + 4 x2
 Dengan kendala : 2 x1 + x2 ≤ 6
2 x1 + 3 x2 ≤ 9
x2 ≤ 1
x1, x2 bilangan bulat tidak negatif

 Gambar dibawah ini merupakan grafik penyelesaian program II.

 Daerah fisibel adalah segi empat OFGD yang titik sudut dan nilai
fungsinya adalah
Contoh 3
 O (0, 0) dengan f(O) = 3 (0) + 4 (0) = 0
 F (0, 1) dengan f(F) = 3 (0) + 4 (1) = 4
 D (3, 0) dengan f(D) = 3 (3) + 4 (0) = 9
 G (2,5 , 1) dengan f(G) = 3 (2,5) + 4 (1) = 11,5
Contoh 3
 Nilai maksimum terletak pada titik G = (x1, x2) = (2,5 , 1)
dengan f(G) = 11,5.

 Penyelesaian program II belum merupakan bilangan bulat


sehingga bukanlah batas bawah penyelesaiannya.
Contoh 3
 Program III (Program I + kendala x2 ≥ 2 )

 Maksimumkan Z = 3 x1 + 4 x2
 Dengan kendala : 2 x1 + x2 ≤ 6
2 x1 + 3 x2 ≤ 9
x2 ≥ 2
x1, x2 bilangan bulat tidak negatif

 Gambar dibawah ini merupakan grafik penyelesaian program II.

 Daerah fisibelnya adalah segitiga AHI dengan titik sudut dan nilai
fungsi :
Contoh 3
 A (0, 3) dengan f(A) = 3 (0) + 4 (3) = 12
 H (0, 2) dengan f(H) = 3 (0) + 4 (2) = 8
 I (1,5 , 2) dengan f(I) = 3 (1,5) + 4 (2) = 12,5
Contoh 3
 Nilai maksimum terletak pada titik I = (x1, x2) = (1,5 , 2)
dengan f(I) = 12,5.

 Penyelesaian program 3 juga belum merupakan bilangan


bulat sehingga bukanlah batas bawah penyelesaiannya.

 Percabangan program I menjadi program II dan program III


dapat digambarkan dalam gambar berikut.
Contoh 3

 Tampak dalam gambar diatas bahwa baik titik 2 maupun 3


(menyatakan program 2 dan program3) belumlah
menghasilkan penyelesaian bulat sehingga keduanya memiliki
kemungkinan untuk dicabangkan.
Contoh 3
 Karena soalnya memaksimumkan, maka titik yang terlebih
dahulu dicabangkan adalah titik yang nilai fungsinya lebih
tinggi yaitu titik 3.

 Dalam penyelesaian program 3, satu-satunya variabel yang


tidak bulat adalah x1 = 1,5 yang terletak antara 1 dan 2.

 Maka percabangan dilakukan dengan menambah kendala x1 ≤


1 (program 4) dan x1 ≥ 2 (program 5)
Contoh 3
 Program IV (Program III + kendala x1 ≤ 1)

 Maksimumkan Z = 3 x1 + 4 x2
 Dengan kendala : 2 x1 + x2 ≤ 6
2 x1 + 3 x2 ≤ 9
x2 ≥ 2
x1 ≤ 1
x1, x2 bilangan bulat tidak negatif
Contoh 3
 Daerah berarsir pada gambar dibawah ini (segi empat AJKH)
menunjukkan daerah fisibel program IV dengan koordinat
dan nilai fungsi sebagai berikut :

 A (0, 3) dengan f(A) = 3 (0) + 4 (3) = 12


 J (1, 7/3) dengan f(J) = 3 (1) + 4 (7/3) = 12,33
 K (1, 2) dengan f(K) = 3 (1) + 4 (2) = 11
 H (0, 2) dengan f(H) = 3 (0) + 4 (2) = 8

 Titik maksimumnya adalah titik J (1, 7/3) dengan f(J) =


12,33.
Contoh 3
Contoh 3
 Program V (Program III + kendala x1 ≥ 2 )

 Maksimumkan Z = 3 x1 + 4 x2
 Dengan kendala : 2 x1 + x2 ≤ 6
2 x1 + 3 x2 ≤ 9
x2 ≥ 2
x1 ≥ 2
x1, x2 bilangan bulat tidak negatif
Contoh 3
 Kendala dalam program V tidak menghasilkan daerah fisibel
sehingga tidak memiliki penyelesaian.
 Keadaan ini dapat digambarkan dalam gambar berikut.
Contoh 3
 Tampak bahwa ada 2 titik yang mungkin dicabangkan yaitu
titik 2 (dengan nilai fungsi 11,5) dan titik 4 (dengan nilai
fungsi 12,33).

 Keduanya bukan batas bawah penyelesaian karena keduanya


tidak memiliki penyelesaian bulat.

 Akan tetapi titik 4 memiliki nilai fungsi yang lebih besar


sehingga titik 4 lebih dahulu dicabangkan.
Contoh 3
 Variabel yang tidak bernilai bulat pada titik 4 adalah x2 = 7/3
(terletak antara 1 dan 2).

 Maka percabangan dilakukan dengan menambahkan kendala


x2 ≤ 2 (program 6) dan x2 ≥ 3 (program 7).
Contoh 3
 Program VI (Program IV + kendala x2 ≤ 2 )

 Maksimumkan Z = 3 x1 + 4 x2
 Dengan kendala : 2 x1 + x2 ≤ 6
2 x1 + 3 x2 ≤ 9
x2 ≥ 2
x1 ≤ 1
x2 ≤ 2
x1, x2 bilangan bulat tidak negatif
Contoh 3
 Perhatikan bahwa kendala ketiga dan terakhir dapat
digabungkan menjadi kendala x2 = 2 yang berupa sebuah
garis horisontal.

 Dalam gambar program IV, daerah fisibelnya berupa garis HK


dengan koordinat dan nilai fungsi :

 K (1, 2) dengan f(K) = 3 (1) + 4 (2) = 11


 H (0, 2) dengan f(H) = 3 (0) + 4 (2) = 8
Contoh 3
 Nilai maksimum fungsi adalah titik K (1, 2) dengan nilai
fungsi = 11.

 Karena koordinat titik K merupakan bilangan bulat maka titik


K merupakan batas bawah dari soal semula.

 Semua titik (penyelesaian bulat ataupun tidak) yang memiliki


nilai fungsi lebih kecil dari f(K) = 11 akan diabaikan dan tidak
perlu dicabangkan.
Contoh 3
 Perhatikan bahwa hingga titik K ditemukan, satu-satunya titik
yang belum dicabangkan adalah titik 2 dengan nilai fungsi
11,5.

 Karena nilai fungsi ini lebih besar dari f(K) maka titik 2
belum dapat diabaikan.

 Berikutnya harus dihitung terlebih dahulu cabang kedua dari


titik 4 (dengan penambahan kendala x2 ≥ 2 (program 7)
Contoh 3
 Program VII (Program IV + kendala x2 ≥ 3)

 Maksimumkan Z = 3 x1 + 4 x2
 Dengan kendala : 2 x1 + x2 ≤ 6
2 x1 + 3 x2 ≤ 9
x2 ≥ 2
x1 ≤ 1
x2 ≥ 3
x1, x2 bilangan bulat tidak negatif
Contoh 3
 Perhatikan bahwa kendala 2 dan kendala 5 bersama-sama
dapat diringkas sebagai x2 ≥ 3.

 Revisi kendala ini dalam gambar program IV menghasilkan


sebuah titik fisibel yaitu titik A (0, 3) dengan nilai fungsi =
3(0) + 4(3) = 12.

 Percabangan selengkapnya dapat dilihat pada gambar berikut.


Contoh 3
Contoh 3
 Karena program 7 menghasilkan penyelesaian bulat dengan
nilai fungsi yang lebih besar dari nilai fungsi program 6,
maka sekarang penyelesaian program 7 menjadi batas bawah
penyelesaian soal mula-mula.

 Titik yang belum dicabangkan (titik 2 dan titik 6) memiliki


nilai fungsi yang lebih kecil dibanding nilai fungsi program 7
sehingga bisa diabaikan.

 Berarti titik 7 merupakan penyelesaian optimal soal mula-


mula.
Contoh 4
 Selesaikan program bilangan bulat berikut ini :
 Maksimumkan Z = - x1 + 4 x2
 Dengan kendala : -10 x1 + 20 x2 ≤ 22
5 x1 + 10 x2 ≤ 49
8 x1 - x2 ≤ 36
x1, x2 bilangan bulat tidak negatif
Contoh 4
 Penyelesaian

 Gambar dibawah ini merupakan grafik daerah fisibel soal


semula jika syarat bilangan bulat ditiadakan.

 Titik-titik pada daerah fisibel menunjukkan penyelesaian


bulatnya.
Contoh 4
 Dengan meneliti nilai fungsi di ke-4 titik sudut daerah
fisibel, didapat penyelesaian optimal di titik (3,8 , 3) dengan
z* 1 = -3,8 + 4 (3) = 8,2.

 Karena x1 = 3,8 bukan merupakan penyelesaian bulat, maka


soal harus dicabangkan dengan menambah kendala x1 ≤ 3
(program 2) dan x1 ≥ 4 (program 3)
Contoh 4
 Program 2 (Program 1 + kendala x1 ≤ 3 )

 Maksimumkan Z = - x1 + 4 x2
 Dengan kendala : -10 x1 + 20 x2 ≤ 22
5 x1 + 10 x2 ≤ 49
8 x1 - x2 ≤ 36
x1 ≤ 3
x1, x2 bilangan bulat tidak negatif
Contoh 4
 Gambar dibawah ini menunjukkan daerah fisibelnya.
Penyelesaian optimalnya adalah titik (3, 2,6) dengan z*2 =
7,4.
Contoh 4
 Program 3 (Program 1 + kendala x1 ≥ 4)

 Maksimumkan Z = - x1 + 4 x2
 Dengan kendala : -10 x1 + 20 x2 ≤ 22
5 x1 + 10 x2 ≤ 49
8 x1 - x2 ≤ 36
x1 ≥ 4
x1, x2 bilangan bulat tidak negatif
Contoh 4
 Gambar dibawah menunjukkan daerah fisibelnya.
Penyelesaian optimalnya adalah titik (3, 2,6) dengan z*2 =
7,4.
Contoh 4
 Percabangan yang dilakukan dapat dinyatakan dalam gambar
dibawah ini.
Contoh 4
 Karena kedua titik cabang (titik 2 dan titik 3) bukan
merupakan penyelesaian bulat, maka percabangan berikutnya
dilakukan pada titik 3 yang memiliki nilai fungsi yang lebih
besar (ingat, soalnya memaksimumkan).

 Pada titik 3, variabel yang tidak bernilai bulat adalah x2 =


2,9.

 Maka Percabangan titik 3 dilakukan dengan menambahkan


kendala x2≤ 2 (program 4), x2 ≥ 3 (program 5).
Contoh 4
 Program 4 (Program 3 + kendala x2 ≤ 2 )

 Maksimumkan Z = - x1 + 4 x2
 Dengan kendala : -10 x1 + 20 x2 ≤ 22
5 x1 + 10 x2 ≤ 49
8 x1 - x2 ≤ 36
x1 ≥ 4
x2≤ 2
x1, x2 bilangan bulat tidak negatif
Contoh 4
 Gambar dibawah ini merupakan grafik daerah fisibelnya.
Contoh 4
 Penyelesaian optimal terjadi pada titik (4, 2) dengan z1* = 4.

 Karena penyelesaian optimalnya program 4 merupakan


bilangan bulat, maka z4* = 4 merupakan batas bawah
penyelesaian optimal soal mula-mula.

 Jika kemudian didapatkan titik lain dengan nilai fungsi kurang


dari z4*, maka titik tersebut pastilah bukan penyelesaian
optimal soal semula dan tidak perlu dicabangkan lagi.
Contoh 4
 Program 5 (Program 3 + kendala x2 ≥ 3)

 Maksimumkan Z = - x1 + 4 x2
 Dengan kendala : -10 x1 + 20 x2 ≤ 22
5 x1 + 10 x2 ≤ 49
8 x1 - x2 ≤ 36
x1 ≥ 4
x2 ≥ 3
x1, x2 bilangan bulat tidak negatif
Contoh 4
 Soal dalam program 5 tidak fisibel sehingga tidak memiliki
penyelesaian optimal.

 Gambar dibawah ini menunjukkan percabangan yang


dilakukan pada titik 3.

 Karena z2* = 7,4 > z4*, maka titik 2 tetap perlu dicabangkan.

 Percabangan titik 2 dilakukan dengan menambahkan kendala


x2≤ 2 (program 6) dan x2 ≥ 3 (program 7).
Contoh 4
Contoh 4
 Program 6 (Program 2 + kendala x2≤ 2 )

 Maksimumkan Z = - x1 + 4 x2
 Dengan kendala : -10 x1 + 20 x2 ≤ 22
5 x1 + 10 x2 ≤ 49
8 x1 - x2 ≤ 36
x1 ≤ 3
x2 ≤ 2
x1, x2 bilangan bulat tidak negatif
Contoh 4
 Titik optimal program 6 adalah (1,8 , 2) dengan nilai fungsi
z6* = 6,2.
Contoh 4
 Program 7 (Program 2 + kendala x2 ≥ 3)

 Maksimumkan Z = - x1 + 4 x2
 Dengan kendala : -10 x1 + 20 x2 ≤ 22
5 x1 + 10 x2 ≤ 49
8 x1 - x2 ≤ 36
x1 ≤ 3
x2 ≥ 3
x1, x2 bilangan bulat tidak negatif
Contoh 4
 Program 7 bukan merupakan soal yang fisibel sehingga tidak
memiliki penyelesaian.

 Satu-satunya titik yang penyelesaiannya tidak bulat adalah


titik 6.

 Karena z6* = 6,2 > z4* (batas bawah penyelesaian), maka titik
6 perlu dicabangkan lagi.

 Percabangan titik 6 dilakukan dengan menambahkan kendala


x1 ≤ 1 (program 8) dan x1 ≥ 2 (program 9).
Contoh 4
 Program 8 (Program 6 + kendala x1 ≤ 1)

 Maksimumkan Z = - x1 + 4 x2
 Dengan kendala : -10 x1 + 20 x2 ≤ 22
5 x1 + 10 x2 ≤ 49
8 x1 - x2 ≤ 36
x1 ≤ 3
x2 ≤ 2
x1 ≤ 1
x1, x2 bilangan bulat tidak negatif
Contoh 4
 Perhatikan bahwa kendala 4 pada program 7 sebenarnya
dapat dihilangkan karena sudah tercakup dalam kendala
terakhir.

 Program 8 menghasilkan penyelesaian optimal di titik (1,


1,6) dengan nilai fungsi z8* = 5,4.
Contoh 4
 Program 9 (Program 6 + kendala x1 ≥ 2)

 Maksimumkan Z = - x1 + 4 x2
 Dengan kendala : -10 x1 + 20 x2 ≤ 22
5 x1 + 10 x2 ≤ 49
8 x1 - x2 ≤ 36
x1 ≤ 3
x2 ≤ 2
x1 ≥ 2
x1, x2 bilangan bulat tidak negatif
Contoh 4
 Penyelesaian optimal program 9 adalah titik (2,2) dengan
nilai fungsi z9* = 6.
Contoh 4
 Karena penyelesaian program 9 bulat dan z9* > z4* (batas bawah
sebelumnya) maka z9* menjadi batas bawah baru.

 Satu-satunya titik yang mungkin dicabangkan adalah titik 8.

 Akan tetapi karena z9* > z8* (=5,4), maka percabangan tidak
perlu dilakukan.

 Penyelesaian program 9 menjadi penyelesaian masalah semula.

 Gambar dibawah ini menunjukkan secara lengkap percabangan


yang dilakukan hingga diperoleh penyelesaian optimal.
Contoh 4

Anda mungkin juga menyukai