Implementasi Metode Branch and Bound untuk Mengoptimalkan Keuntungan Produksi pada PT. Pabrik ES Siantar

BAB 2
LANDASAN TEORI

2.1 Program Linier
Program linier adalah suatu teknik penyelesaian optimal atas suatu problema
keputusan

dengan

cara

menentukan

terlebih

dahulu

fungsi

tujuan


(memaksimalkan atau meminimalkan) dan kendala-kendala yang ada ke dalam
model matematik persamaan linier. Program linier sering digunakan dalam
penyelesaian problema-problema alokasi sumber daya, seperti dalam bidang
manufacturing,

pemasaran,

keuangan,

personalia,

administrasi dan

lain

sebagainya (Sitorus, 1997).
Siagian (2006) mengemukakan bahwa pokok pikiran yang paling utama
dalam menggunakan program linier adalah merumuskan masalah dengan jelas
menggunakan sejumlah informasi yang tersedia. Kemudian menerjemahkan
masalah tersebut ke dalam model matematis yang cara pemecahan masalahnya

lebih mudah dan terstruktur agar didapatkan solusinya.
Suatu masalah dikatakan sebagai masalah program linier apabila :
1. Tujuan (objective) yang akan dicapai harus dapat dinyatakan dalam bentuk
fungsi linier yang disebut sebagai fungsi tujuan (objective function).
2. Harus ada alternatif pemecahan. Pemecahan yang membuat fungsi tujuan
optimum (laba yang maksimum, biaya yang minimum, dan sebagainya)
yang harus dipilih.
3. Sumber-sumber tersedia dalam jumlah yang terbatas (bahan mentah
terbatas, modal terbatas, ruangan untuk menyimpan barang terbatas, dan
sebagainya).

Pembatasan-pembatasan

harus

dinyatakan

di

dalam


ketidaksamaan yang linier (linear inequality).
Menurut Mulyono (2004), setelah masalah diidentifikasikan dan tujuan
ditetapkan, langkah selanjutnya adalah formulasi model matematik yang meliputi:
1. Tentukan variabel yang tidak diketahui (variabel keputusan) dan nyatakan
dalam simbol matematik.

Universitas Sumatera Utara

6

2. Membentuk fungsi tujuan yang ditunjukkan sebagai suatu hubungan linier
(bukan perkalian) dari variabel keputusan.
3. Menentukan semua kendala masalah tersebut dan mengekspresikan dalam
persamaan atau pertidaksamaan yang juga merupakan hubungan linier dari
variabel keputusan yang mencerminkan keterbatasan sumber daya masalah
tersebut.
Umumnya masalah program linier dapat diselesaikan dengan menggunakan
dua metode, yaitu :
1. Metode grafik

Metode ini digunakan apabila jumlah variabel keputusan hanya dua dan
jumlah kendala dalam model relatif sedikit (umumnya tidak lebih dari 4
kendala). Apabila jumlah kendalanya relatif banyak (> 4 kendala), maka
akan sukar untuk melukiskan garis kendalanya dalam grafik.
2. Metode simpleks
Metode ini dapat digunakan untuk jumlah variabel keputusannya 2 atau
lebih dan jumlah kendalanya 2 atau lebih. Metode simpleks adalah suatu
prosedur ulang yang bergerak dari satu jawab layak basis ke jawab
berikutnya sedemikian rupa hingga harga fungsi tujuan terus menaik
(dalam persoalan maksimasi) dan akan berkelanjutan sampai dicapai
jawab optimal (bila ada) yang memberi harga maksimum. Metode
simpleks didasarkan pada langkah seperti berikut :
a. Dimulai pada suatu titik pojok yang layak, biasanya titik asal ( yang
disebut sebagai solusi awal).
b. Bergerak dari satu titik pojok layak ke titik pojok layak lain yang
berdekatan. Pergerakan ini akan menghasilkan nilai fungsi tujuan yang
lebih baik (meningkat untuk masalah maksimasi dan menurun untuk
masalah minimasi). Jika solusi yang lebih baik telah diperoleh,
prosedur simpleks dengan sendirinya akan menghilangkan semua
solusi-solusi lain yang kurang baik.

c. Proses ini diulang-ulang sampai suatu solusi yang lebih baik tak dapat
ditemukan. Proses simpleks kemudian berhenti dan solusi optimum
diperoleh.

Universitas Sumatera Utara

7

2.1.1 Model Program Linier
Model persamaan umum dalam program linier dapat dirumuskan sebagai berikut
(Aminudin, 2005):
Maksimalkan atau minimumkan:
=



Dengan kendala :


Untuk




≥ 0

= 1, 2, 3, … ,

= 1, 2, 3, … ,

Atau dapat ditulis secara lengkap sebagai berikut:
Maksimalkan atau minimumkan:
=



+



+




+ … +



Dengan kendala :
+

+

+

+ … +

+




+ … +











.

.

.

.


.

.

.

.

.

.

.

.

.

.


.

.

.

.

.

.

.





+


+
untuk

+ … +

≥ 0







= 1, 2, 3, … ,

Keterangan :
Z = Fungsi tujuan yang harus dicari nilai optimalnya (maksimal atau minimal)
xj = tingkat kegiatan ke- j
cj = Kenaikan nilai Z terjadi apabila ada pertambahan tingkat kegiatan



dengan

satu satuan unit atau sumbangan setiap
aij = Banyaknya sumber i yang diperlukan untuk menghasilkan setiap unit
keluaran kegiatan j

Universitas Sumatera Utara

8

bi = Kapasitas sumber i yang tersedia untuk dialokasikan ke setiap unit kegiatan
n = macam kegiatan yang menggunakan sumber atau fasilitas yang tersedia
m = macam batasan sumber atau fasilitas yang tersedia

2.1.2 Terminologi Umum dan Asumsi-Asumsi Dasar Program Linier
Terminologi umum untuk model program linier dapat dirangkum sebagai berikut:
1. Fungsi yang akan dicari nilai optimalnya (Z) disebut sebagai fungsi tujuan
(objective function).
2. Fungsi-fungsi batasan dapat dikelompokkan menjadi dua macam, yaitu :
a. Fungsi batasan fungsional, yaitu fungsi-fungsi batasn sebanyak m.
b. Fungsi batasan non-negatif (non-negative constrains) yaitu variabel
≥ 0.
3. Variabel-variabel

disebut sebagai variabel keputusan (decision

variables).
4. Parameter model yaitu masukan konstan

,

dan .

Agar penggunaan model program linier di atas memuaskan tanpa terbentur
pada berbagai hal, makan diperlukan asumsi-asumsi dasar program linier sebagai
berikut :
1. Proportionality, asumsi ini berarti naik turunnya nilai Z dan penggunaan
sumber atau fasilitas yang tersedia akan berubah secara sebanding dengan
perubahan tingkat kegiatan.
2. Additivity, berarti nilai tujuan tiap kegiatan tidak saling mempengaruhi,
atau dalam program linier dianggap bahwa kenaikan suatu kegiatan dapat
ditambahkan tanpa mempengaruhi bagian nilai Z yang diperoleh dari
kegiatan lain.
3. Divisibility, berarti keluaran yang dihasilkan oleh setiap kegiatan dapat
berupa bilangan pecahan.
4. Deterministic (certainty), berarti bahwa semua parameter (

,

, dan

)

yang terdapat pada program linier dapat diperkirakan dengan pasti,
meskipun dalam kenyataannya tidak sama persis.

Universitas Sumatera Utara

9

2.2 Program Integer
Menurut Sitorus (1997), program linier bilangan bulat atau disebut juga sebagai
program integer merupakan suatu model program linier yang khusus digunakan
untuk menyesuaikan suatu masalah program linier di mana nilai variabel-variabel
keputusan dalam menyelesaikan optimal harus merupakan bilangan integer
(bulat). Karakteristik model matematika program linier integer adalah sama
dengan model linier biasa, kecuali dalam program linier integer harus ada memuat
suatu persyaratan bahwa variabel keputusan tertentu harus bilangan integer.
Program linier integer mensyaratkan bahwa:
1. Semua keputusan harus merupakan bilangan integer disebut All integer linear
programming (AILP).
2. Hanya sebagian keputusan yang merupakan bilangan integer disebut Mixed
integer linear programing (MILP).
3. Jika variabel keputusan harus bernilai 0 dan 1 disebut Zero one integer linear
programming (ZOILP).
Ada banyak kasus dalam masalah program integer yang membatasi variabel
model bernilai nol atau satu. Dalam kasus demikian, pengambil keputusan hanya
memiliki dua pilihan yaitu menerima atau menolak suatu usulan kegiatan.
Penerimaan atau penolakan yang sifatnya parsial (sebagian) tidak diperbolehkan.
Jika variabel keputusan bernilai satu, kegiatan diterima. Jika variabel berilai nol,
kegiatan ditolak. (Mulyono, 2004)

Bentuk umum program integer dapat dirumuskan sebagai berikut :
Maksimumkan atau minimumkan :
=



Dengan kendala :
≥, =, ≤!
≥ 0 semua bilangan cacah

Universitas Sumatera Utara

10

Untuk

= 1, 2, 3, … ,

= 1, 2, 3, … ,
Keterangan:
Z = Fungsi tujuan yang harus dicari nilai optimalnya (maksimal atau minimal)
xj = tingkat kegiatan ke- j
cj = Kenaikan nilai Z terjadi apabila ada pertambahan tingkat kegiatan



dengan

satu satuan unit atau sumbangan setiap satuan keluaran kegiatan Z terhadap j
aij= Banyaknya sumber i yang diperlukan untuk menghasilkan setiap unit
keluaran kegiatan j
bi = Kapasitas sumber i yang tersedia untuk dialokasikan ke setiap unit kegiatan
n = macam kegiatan yang menggunakan sumber atau fasilitas yang tersedia
m = macam batasan sumber atau fasilitas yang tersedia

2.3 Metode Branch and Bound (Pencabangan dan Pembatasan)
Metode Branch and Bound pertama kali diperkenalkan oleh Land dan Doig
(1960). Ide dasarnya adalah untuk membagi daerah solusi fisibel menjadi daerah
solusi fisibel yang lebih kecil. Ini merupakan prosedur sederhana yang
menetapkan batasan yang lebih tinggi dan rendah menjadi solusi saat
menyelesaikan sub masalah secara sistematis. Kemudian metode ini dimodifikasi
oleh Dakin (1965) dan dengan sukses menerapkannya di dalam kitab undangundang hukum dagang banyak orang dalam memecahkan persoalan program
integer.
Metode Branch and Bound adalah metode umum untuk mencari solusi
optimal dari berbagai permasalahan optimasi. Pendekatan Branch and Bound
didasarkan pada prinsip bahwa himpunan total solusi layak dapat dipartisi menjadi
subset yang lebih kecil dari solusi. Subset yang lebih kecil ini kemudian dapat
dievaluasi secara sistematis sampai solusi terbaik ditemukan.
Metode ini sering digunakan untuk menyelesaikan suatu masalah program
integer karena hasil yang diperoleh dalam penyelesaian optimal lebih teliti dan
lebih baik dari kedua metode lainnya. Kelemahan pokok metode ini adalah
prosedur untuk mencapai hasil optimal sangat panjang. Prosedur penyelesaian

Universitas Sumatera Utara

11

masalah maksimasi program integer dengan metode Branch and Bound adalah
sebagai berikut :
1. Langkah 1 : penyelesaian optimal dengan metode program linier biasa.
Masalah yang dihadapi diselesaikan terlebih dahulu menggunakan metode
program linier biasa (menggunakan metode grafik atau metode simpleks)
sampai diperoleh hasil yang optimal.
2. Langkah 2 : pemeriksaan penyelesaian optimal.
Hasil optimal pada langkah 1 diperiksa apakah variabel keputusan yang
diperoleh bernilai integer (bilangan bulat) atau pecahan. Apabila ternyata
nilai semua variabel keputusan tersebut merupakan bilangan bulat positif
(nonnegative integer), maka penyelesaian optimal telah dicapai. Apabila
tidak, maka proses iterasi dilanjutkan.
3. Langkah 3 : penyusunan sub masalah (branching).
Apabila penyelesaian optimal belum tercapai, maka masalah tersebut
dimodifikasikan ke dalam dua sub masalah (branching) dengan
memasukkan kendala baru ke masing-masing sub masalah tersebut.
Variabel kendala baru tersebut harus bersifat saling pengecualian
(mutually

exclusive

constraints)

sehingga

memenuhi

persyaratan

penyelesaian integer.
4. Langkah 4 : penentuan nilai batas (bounding).
Hasil optimal yang diperoleh dengan metode program linier biasa (non
integer) merupakan nilai batas atas (upper bound) bagi setiap sub masalah.
Sedangkan hasil optimal dengan penyelesaian integer merupakan nilai
batas bawah (lower bound) bagi masing-masing sub masalah. Selanjutnya,
apabila sub masalah yang memiliki batas atas yang lebih rendah dari batas
bawah yang berlaku, maka sub masalah tersebut tidak perlu dianalisi lagi.
Apabila dalam penyelesaian integer menghasilkan hasil yang sama atau
lebih baik daripada nilai batas atas dari setiap masalah, maka penyelesaian
optimal integer telah tercapai. Apabila tidak, maka sub masalah yang
memiliki nilai batas atas yang terbaik dipilih selanjutnya menjadi sub
masalah baru. Proses iterasi ini kembali kepada langkah 2, sehingga
demikian seterusnya (Sitorus, 1997).

Universitas Sumatera Utara