2.8 Metode Branch and Cut
Banyak permasalahan optimisasi dapat diformulasikan sebagai masalah Integer Linear Programming ILP. Masalah tersebut dapat diselesaikan dengan metode
branch and bound dan metode branch and cut. Algoritma metode branch and cut dibuat dari kombinasi metode cutting-plane dengan metode branch and bound.
Prosedur metode branch and cut adalah menyelesaikan rangkaian relaksasi program linier dari masalah integer linear programming. Metode cutting plane
memperbaharui relaksasi dari masalah untuk lebih mendekati penyelesaian berupa integer, dan metode branch and bound memproses dengan membagi dan
menyelesaikan devide and conquer masalah.
Misalkan bahwa titik �
∗
adalah solusi layak untuk linear programming. Jika �
∗
berada pada daerah integral, maka � merupakan solusi optimal untuk integer
linear programming sudah diperoleh. Jika tidak, maka nilai fungsi objektif merupakan batas atas dari nilai optimum, tetapi dibutuhkan penyelesaian lebih
lanjut untuk memperoleh nilai optimum berupa integer. Dengan penambahan bidang pemotongan cutting plane atau membagi masalah tersebut menjadi
bagian-bagian masalah branch.
Mitchell 1999 menjelaskan bahwa secara umum algoritma branch and cut adalah sebagai berikut:
1. Inisialisasi: nyatakan persoalan awal ke dalam bentuk ILP
dan titik-titik aktif menjadi
� = {��� }. Tetapkan batas bawah menjadi
� = −∞. Tetapkan �
�
= + ∞ untuk sebuah persoalan � ∈ �.
2. Penghentian proses: jika � = ∅ maka solusi �
∗
yang menghasilkan nilai �
objektif yang terbaik merupakan solusi optimal. Jika tidak ditemukan �
∗
misalnya, � = −∞ maka ILP tidak layak.
3. Pemilihan masalah: pilih dan hilangkan masalah ���
�
dari L. 4.
Relaksasi: selesaikan relaksasi program linier dari ���
�
. Jika relaksasi tidak layak, tetapkan
�
�
= −∞ dan lanjut ke langkah 6. Misalkan � merupakan nilai
objektif optimal dari relaksasi dan misalkan �
��
merupakan jawaban optimal. Jika relaksasinya layak tetapkan
�
�
= �.
5. Tambahkan bidang pemotongan: jika diinginkan carilah bidang pemotongan
yang akan memenuhi �
��
, jika sudah ditemukan, tambahkan bidang pemotongan tersebut pada relaksasi dan kembali ke langkah 4.
6. Pengukuran dan pemangkasan:
a. Jika �
�
≤ � kembali ke langkah 2. b.
Jika �
�
� dan �
��
adalah integer yang layak, perbaharui nilai � dengan
melakukan teknik rounded down berdasarkan nilai �
�
, kemudian buang dari L seluruh masalah di mana
�
�
≤ �, dan lanjut ke langkah 2. 7.
Pemilihan: misalkan ��
��
�
� =1 � =�
adalah partisi dari kumpulan kendala �
�
dari masalah
���
�
. Tambahkan permasalahan ����
��
�
� =1 � =�
ke dalam L, di mana ���
��
adalah ���
�
dengan daerah layak yang terbatas pada �
��
dan �
��
di mana � = 1, … , � ditetapkan ke dalam nilai �
�
untuk permasalahan induk.
di mana: ILP
= Bentuk ILP dari permasalahan awal ���
�
= Bentuk ILP dari sebuah permasalahan l
∈ L L
= Himpunan titik-titik aktif dari persoalan ILP �
�
= Batas atas dari nilai fungsi tujuan suatu sub-masalah l
∈ L z
= Batas bawah dari nilai fungsi tujuan x
= Solusi dari suatu sub-masalah �
��
= Solusi optimal dari suatu sub-masalah �
�
= Kendala dari masalah ���
�
�S
Lj
�
J=1 J=k
= Partisi dari kumpulan kendala �
�
Dari masalah ���
�
���
��
= ���
�
dengan daerah layak yang terbatas pada �
��
dan �
��
di mana j = 1, … , k
Pada algoritma branch and cut, diberikan L yang merupakan himpunan titik aktif pada pencabangan branch and cut. Nilai objektif terbaik yang diperoleh
dari titik layak dinotasikan sebagai �. Lebih lanjut, �
�
adalah batas atas nilai optimal dari sub-masalah. Nilai dari sub-masalah tersebut digunakan untuk
memperbaharui �
�
. Dalam beberapa kondisi, sejumlah cutting plane ditemukan pada langkah 5, biasanya cutting plane yang diperoleh dipilah dan yang
ditambahkan pada persamaan adalah subsetnya. Sub-masalah yang terbentuk pada langkah 7 disebut sub-masalah anak dan sub-masalah pada node sebelumnya
sebagai sub-masalah induknya. Biasanya pembagian masalah tersebut menggunakan bentuk dari variabel penghubung
�
�
≤ � dan �
�
≥ � untuk suatu variabel
�
�
dan a merupakan integer. Kendala-kendala tersebut dapat diselesaikan dengan berbagai metode untuk ILP. Secara khusus pada langkah awal
diselesaikan dengan metode simpleks, jawaban berikutnya diperoleh dengan metode dual Simpleks. Solusi dual untuk jawaban sub-masalah akhir adalah layak
untuk sub-masalah awal. Lebih lanjut, ketika pemotongan cut ditambahkan pada langkah 5, juga memanfaaatkan iterasi dual Simpleks untuk mendapatkan solusi
optimal yang integer. Cutting plane yang ditambahkan pada salah satu vertex dari pohon branch and cut mungkin tidak berlaku untuk sub-masalah lain. Dalam hal
ini cut ini disebut cut lokal.
BAB 3 HASIL DAN PEMBAHASAN
3.1
Pengumpulan Data
Data yang diperlukan dalam penelitian ini adalah: 1.
Data penjualan pot bunga pada bulan Januari-Juni 2014. 2.
Data komposisi bahan baku yang diperlukan dari setiap jenis pot bunga. 3.
Data biaya produksi pot bunga. 4.
Data harga penjualan setiap jenis pot bunga pada UD. Mukhlis Rangkuti. 5.
Data jumah produksi pot bunga pada bulan Maret 2015.
Berikut disajikan data volume penjualan pot bunga bulan Januari-Juni 2014 pada UD. Pot Bunga Mukhlis Rangkuti
Tabel 3.1 Data Volume Penjualan Pot Bunga Bulan Januari – Juni 2014 No
Bulan Jenis Produk
Jumlah �
1
�
2
�
3
�
4
�
5
�
6
�
7
1 Januari
63 92
67 80
50 52
49 453
2 Februari
48 84
70 84
57 68
52 463
3 Maret
57 66
78 62
40 47
41 391
4 April
60 60
52 43
64 53
44 376
5 Mei
54 72
56 77
48 62
58 427
6 Juni
70 88
62 98
55 65
52 490
Jumlah 352
462 385
444 314
347 296
2.600 Sumber: UD. Pot Bunga Mukhlis Rangkuti
Keterangan: �
1
= Pot bunga jenis segi minimalis �
2
= Pot bunga jenis sampan minimalis �
3
= Pot bunga jenis petak segi besar bonsai �
4
= Pot bunga jenis bulat besar ukir bonsai �
5
= Pot bunga jenis segi ukir bonsai �
6
= Pot bunga jenis guci sedang �
7
= Pot bunga jenis guci kecil