maka matriks basis ,
, ,
Dengan menggunakan
matriks basis
tersebut, diperoleh
8
Solusi 8 merupakan solusi basis, karena solusi tersebut memenuhi kendala pada PL 7
dan kolom-kolom pada matriks kendala yang berpadanan dengan komponen taknol dari 8
yaitu adalah B bebas linear kolom yang satu bukan merupakan kelipatan dari kolom yang
lain. Solusi 8 juga merupakan solusi fisibel basis, karena nilai-nilai variabelnya lebih dari
atau sama dengan nol. 2.3 Pemrograman Linear Integer
Pemrograman linear integer adalah suatu model pemrograman linear dengan variabel
yang digunakan berupa bilangan bulat integer. Jika semua variabel harus berupa
integer, maka masalah tersebut dinamakan pure integer programming. Jika hanya
sebagian yang harus berupa integer, maka disebut mixed integer programming MIP.
PLI dengan semua variabelnya harus bernilai 0 atau 1 disebut 0-1 PLI.
Garfinkel Nemhauser 1972
Definisi 8 Relaksasi Pemrograman Linear
Relaksasi pemrograman linear atau sering disebut
relaksasi-PL merupakan
suatu pemrograman linear yang diperoleh dari suatu
PLI dengan menghilangkan kendala integer atau kendala 0-1 pada setiap variabelnya.
Untuk masalah
maksimisasi, nilai
optimum fungsi objektif relaksasi-PL lebih besar atau sama dengan nilai optimum fungsi
objektif PLI, sedangkan untuk masalah minimisasi, nilai optimum fungsi objektif
relaksasi-PL lebih kecil atau sama dengan nilai optimum fungsi objektif PLI.
Winston 2004
2.4 Metode branch and bound untuk menyelesaikan masalah IP
Dalam penulisan karya ilmiah ini, untuk memperoleh solusi optimum dari masalah PLI
digunakan software Wolfram Mathematica 7.0. Metode branch and bound adalah suatu
prosedur yang paling umum untuk mencari solusi optimal dari masalah PLI. Terdapat
dua konsep dasar dalam algoritma branch and bound .
1. Branch
Branching pencabangan adalah proses membagi permasalahan menjadi subproblem-
subproblem yang mungkin mengarah ke solusi.
2. Bound
Bounding pembatasan adalah suatu proses untuk mencari atau menghitung batas
atas dalam masalah minimisasi dan batas bawah dalam masalah maksimisasi untuk
solusi optimum pada subproblem yang mengarah ke solusi.
Metode branch-and-bound diawali dari menyelesaikan
relaksasi-PL dari
suatu pemrograman linear integer. Jika semua nilai
variabel keputusan solusi optimum sudah berupa
integer, maka
solusi tersebut
merupakan solusi optimum PLI. Jika tidak, dilakukan pencabangan dan penambahan
batasan pada relaksasi-PLnya kemudian diselesaikan.
Winston 2004 menyebutkan bahwa untuk masalah maksimisasi nilai fungsi
objektif optimum untuk PLI nilai fungsi
objektif optimum
untuk relaksasi-PL,
sehingga nilai fungsi objektif optimum relaksasi-PL merupakan batas atas bagi nilai
fungsi objektif optimum untuk masalah PLI. Diungkapkan pula dalam Winston 2004
untuk masalah maksimisasi bahwa nilai fungsi objektif optimum untuk suatu kandidat solusi
4 merupakan batas bawah nilai fungsi objektif optimum untuk masalah PLI asalnya. Suatu
kandidat solusi diperoleh jika solusi dari suatu subproblem sudah memenuhi kendala integer
pada masalah PLI, artinya fungsi objektif dan semua variabelnya sudah bernilai integer.
Sebelumnya akan dibahas terlebih dulu pengertian subproblem yang terukur. Menurut
Winston 2004, suatu subproblem dikatakan terukur fathomed jika terdapat situasi
sebagai berikut. 1.
Subproblem tersebut takfisibel, sehingga tidak dapat menghasilkan solusi optimum
untuk PLI.
2. Subproblem tersebut menghasilkan suatu
solusi optimum dengan semua variabelnya bernilai integer. Jika solusi optimum ini
mempunyai nilai fungsi objektif yang lebih baik daripada solusi fisibel yang
diperoleh sebelumnya, maka solusi ini menjadi kandidat solusi optimum dan nilai
fungsi objektifnya menjadi batas bawah dalam masalah maksimisasi dan batas
atas dalam masalah minimisasi nilai fungsi objektif optimum bagi masalah PLI
pada saat itu. Bisa jadi subproblem ini menghasilkan
solusi optimum untuk
masalah PLI. 3.
Nilai fungsi objektif optimum untuk subproblem tersebut tidak melebihi untuk
masalah maksimisasi batas bawah saat itu,
maka subproblem
ini dapat
dieliminasi. Berikut
ini adalah
langkah-langkah penyelesaian suatu masalah maksimisasi
dengan metode branch-and-bound. Langkah 0
Didefinisikan z sebagai batas bawah dari nilai fungsi objektif solusi PLI yang optimum.
Pada awalnya ditetapkan
z
dan .
Langkah 1 Subproblem
dipilih sebagai bagian masalah
berikutnya untuk
diperiksa. Subproblem
diselesaikan dan diukur dengan kondisi yang sesuai.
a Jika
terukur, batas bawah z diperbarui jika solusi PLI yang lebih baik
ditemukan. Jika tidak, bagian masalah subproblem baru i dipilih dan langkah 1
diulangi. Jika semua subproblem telah diperiksa, maka proses dihentikan.
b Jika
tidak terukur,
proses dilanjutkan
ke langkah
2 untuk
melakukan pencabangan Langkah 2
Dipilih salah satu variabel di mana nilai
optimumnya adalah yang tidak memenuhi
batasan integer dalam solusi Singkirkan
bidang pada dimana: ,
dengan membuat dua bagian masalah PL yang berkaitan menjadi dua batasan yang tidak
dapat dipenuhi secara bersamaan yaitu : ,
dengan didefinisikan sebagai integer
terbesar yang kurang dari atau sama dengan Jika
masih tidak terukur, maka kembali ke langkah 1.
Taha 1996 Untuk memudahkan pemahaman metode
branch-and-bound diberikan contoh sebagai berikut.
Contoh 2 Misalkan diberikan PLI berikut:
maksimumkan
dengan kendala integer 9
Solusi optimum relaksasi-PL dari masalah PLI 9 adalah
, , dan
lihat pada Lampiran 1. Batas atas nilai optimum fungsi objektif masalah ini
adalah . Daerah fisibel masalah 9
ditunjukkan pada Gambar 1. Solusi optimum berada pada titik perpotongan dua garis yang
berasal dari kendala pertidaksamaan masalah 9.
Gambar 1 Daerah fisibel daerah yang diarsir untuk relaksasi-PL dari PLI 9.
Langkah berikutnya adalah memartisi daerah fisibel relaksasi-PL menjadi dua
bagian berdasarkan variabel yang berbentuk pecahan tak-integer. Karena nilai dari kedua
variabel yang diperoleh bukan integer, maka dipilih salah satu variabel untuk dasar
pencabangan. Misalnya dipilih
sebagai dasar pencabangan. Jika masalah relaksasi-PL
diberi nama
Subproblem 1,
maka pencabangan
tersebut menghasilkan
2 subproblem, yaitu:
Subproblem 2: Subproblem 1 ditambah kendala
; Subproblem 3: Subproblem 1 ditambah
kendala .
Daerah fisibel
Hal ini diilustrasikan pada Gambar 2.
Gambar 2 Daerah fisibel untuk Subproblem 2 dan Subproblem3.
Setiap titik solusi fisibel dari PLI 9 termuat dalam daerah fisibel Subproblem 2
atau Subproblem 3. Setiap subproblem ini saling lepas. Subproblem 2 dan Subproblem 3
dikatakan dicabangkan oleh .
Sekarang dipilih subproblem yang belum diselesaikan. Misalkan dipilih Subproblem 2,
kemudian diselesaikan. Solusi optimum untuk Subproblem 2 ini adalah
, , dan
lihat Lampiran 1. Semua variabel bernilai integer solusinya memenuhi kendala
bilangan bulat, maka tidak perlu dilakukan pencabangan di Subproblem 2. Solusi dari
Subproblem 2 menjadi batas bawah dari solusi PLI yaitu sama dengan 34. Untuk gambar dan
hasi optimasi dari setiap subproblem dapat dilihat pada Lampiran 1.
Saat ini
subproblem yang
belum diselesaikan adalah Subproblem 3. Solusi
optimum untuk Subproblem 3 adalah ,
, dan lihat Lampiran 1.
Karena nilai pada Subproblem 3 lebih besar dibandingkan dengan Subproblem 2, maka
ada kemungkinan nilai pada Subproblem 3 lebih optimum. Oleh karena itu, dipilih
pencabangan pada Subproblem 3 atas
, sehingga diperoleh dua subproblem lagi,
yakni: Subproblem 4: Subproblem 3 ditambah
kendala ;
Subproblem 5: Subproblem 3 ditambah kendala
. Selesaikan masalah Subproblem 4 dan
Subproblem 5 satu per satu. Subproblem 5 takfisibel lihat Lampiran 1 pada Subproblem
5, maka subproblem ini tidak dapat menghasilkan solusi optimum.
Solusi optimum untuk Subproblem 4 adalah
, , dan
lihat Lampiran 1 bagian Subproblem 4. Karena
nilai z pada Subproblem 4 lebih besar dibandingkan dengan Subproblem 2, maka
dipilih pencabangan pada Subproblem 4 atas , sehingga diperoleh dua subproblem lagi,
yaitu: Subproblem 6: Subproblem 4 ditambah
kendala Subproblem 7: Subproblem 4 ditambah
kendala Penyelesaian subproblem 6 menghasilkan
solusi optimum ,
, dan lihat Lampiran 1 bagian subproblem 6.
Semua variabel bernilai integer solusinya memenuhi kendala integer maka tidak perlu
dilakukan pencabangan di Subproblem 6, akan tetapi solusi yang dihasilkan pada subproblem
ini tidak lebih baik dari batas bawah pada Subproblem
2 sehingga
solusi pada
Subproblem 6 tidak menjadi batas bawah yang baru.
Subproblem 7 menghasilkan solusi optimal ,
, dan lihat
lampiran 1. Solusi dari Subproblem 7 tidak integer dan lebih baik dari batas bawah pada
Subproblem 2, maka pada subproblem ini dilakukan pencabangan lagi atas
sehingga diperoleh subproblem baru lagi.
Subproblem 8: Subproblem 7 ditambah kendala
Subproblem 9: Subproblem 7 ditambah kendala
Penyelesaian dari
Subproblem 9
menghasilkan solusi
takfisibel lihat
Lampiran 1, maka subproblem ini tidak dapat
menghasilkan solusi
optimal. Subproblem 8 menghasilkan solusi optimal
, .4,
dan lihat
Lampiran 1. Solusi dari Subproblem 8 tidak integer dan lebih baik dari batas bawah pada
Subproblem 2, maka pada subproblem ini dilakukan pencabangan lagi atas
sehingga diperoleh subproblem baru lagi
Subproblem 10: Subproblem 8 ditambah kendala
Subproblem 11: Subproblem 8 ditambah kendala
Subproblem 10
menghasilkan solusi
optimal ,
, dan
. Subproblem ini menghasilkan solusi integer,
akan tetapi solusi yang dihasilkan pada subproblem ini tidak lebih baik dari batas
bawah sehingga solusi pada Subproblem 10 tidak menjadi batas bawah baru. Subproblem
11 menghasilkan solusi optimal
, , dan
. Solusi pada subproblem ini menghasilkan solusi integer dan lebih baik
dari batas bawah sehingga solusi pada
Subproblem 3 Subproblem 2
Subproblem 11 menjadi batas bawah baru. Karena sudah tidak ada lagi subproblem baru
yang dapat dibuat maka tidak perlu dilakukan pencabangan lagi. Dengan demikian, solusi
optimum pada PLI 9 adalah
, ,
dan . Pohon pencabangan yang
menunjukkan penyelesaian masalah PLI 9 secara keseluruhan dapat ditunjukkan pada
Gambar 3.
Gambar 3 Seluruh pencabangan pada metode Branch-and-Bound untuk menentukan solusi optimum dari PLI
.
Subproblem 9 Subproblem 8
Subproblem 10 Subproblem 11
2
5
x
2
4
x
Solusi takfisibel
x
1
= 1, x
2
= 4.4 dan z = 35.1
x
1
= 1, x
2
= 4 dan z = 32 x
1
= 0, x
2
= 5 dan z = 35 Subproblem 7
x
1
= 1.8, x
2
= 4 dan z = 35.2 Subproblem 6
x
1
= 3, x
2
= 3 dan z = 33
1
2
x
1
1
x
Subproblem 4 x
1
= 3, x
2
= 3.3 dan z = 35.3 Subproblem 5
Solusi takfisibel
2
4
x
2
3
x
Subproblem 2 x
1
= 5, x
2
= 2 dan z = 34 Subproblem 3
x
1
= 3.6, x
2
= 3 dan z = 35.4
1
4
x
1
3
x Subproblem 1
x
1
= 4.5, x
2
= 2.5 dan z = 35.5
2
2 x
2
3
x
III DESKRIPSI DAN FORMULASI MASALAH
3.1 Deskripsi Masalah