• Tidak ada hasil yang ditemukan

Metode Branch And Bound Dalam Pengoptimalan Jumlah Truk Pengangkut Sampah (Studi Kasus: Dinas Kebersihan dan Pertamanan Kota Padang)

N/A
N/A
Protected

Academic year: 2017

Membagikan "Metode Branch And Bound Dalam Pengoptimalan Jumlah Truk Pengangkut Sampah (Studi Kasus: Dinas Kebersihan dan Pertamanan Kota Padang)"

Copied!
11
0
0

Teks penuh

(1)

Bab 2

LANDASAN TEORI

2.1 Program Linier

Programasi Linier (Linear Pogramming) merupakan suatu model optimasi persamaan linier berkenaan dengan kendala-kendala linier yang dihadapinya. Model ini dikembangkan oleh George B. Dantzig, seorang matematisian Amerika Serikat, pada tahun 1947. Benih-benih model ini sesungguhnya sudah ditemukan jauh sebelumnya. Seorang matematisian Rusia bernama L.V. Kantotrovich memperkenalkan penerapan programasi linier dalam bidang produksi pada tahun 1939. Lebih dari seabad sebelumnya, pada tahun 1826, Fourier yang matematisian Perancis juga telah merumuskan masalah programasi linier. Akan tetapi, baru setelah Dantzig mengembangkan dan mempopulerkannya, model ini memperoleh perhatian yang berarti. Dantzig pulalah yang dikenal dunia sebagai “bapak programasi linier”. Masalah programasi linier berarti adalah masalah pencarian nilai-nilai optimum (maksimum atau minimum) sebuah fungsi linier pada suatu sistem atau sehimpun kendala linier. Fungsi linier yang hendak dicari nilai optimumnya, berbentuk sebuah persamaan, disebut fungsi tujuan. Sedangkan fungsi-fungsi linier yang harus terpenuhi dalam optimasi fungsi tujuan tadi, dapat berbentuk persamaan maupun pertidaksamaan, disebut dengan fungsi kendala. (Dumairy, 1999:343)

(2)

akan ditetapkan sebagai keputusan akhir dan siap untuk dilaksanakan. (P. Siagian, 1987).

Dalam kehidupan sehari-hari, linear programming merupakan bagian yang sangat penting dalam area matematika yang disebut teknik optimasi. Linear

programming umumnya diaplikasikan dalam permasalahan yang dapat

dimodelkan ke dalam suatu model matematika, misalnya dalam mencari keuntungan suatu usaha, pengoptimalan persediaan, juga dalam beberapa masalah industri maupun ekonomi. Adakalanya dalam situasi tertentu solusi yang diinginkan haruslah dalam bilangan bulat, misalnya pada perusahaan manufaktur, perusahaan tidak bisa memproduksi barang setengah, sepertiga, ataupun seperempat jadi. Masalah ini disebut dengan integer linear programming (ILP).

2.1.1 Bentuk Umum Model Programasi Linier

Sebagaimana telah dinyatakan sebelumnya, masalah programasi linier tak lain adalah masalah optimasi bersyarat, yakni pencarian nilai maksimum (maksimisasi) atau pencarian nilai minimum (minimisasi) suatu fungsi tujuan berkenaan dengan keterbatasan-keterbatasan atau kendala yang harus dipenuhi. Masalah-masalah tersebut secara umum dapat dirumuskan sebagai berikut (Dumairy, 1999):

a. Masalah Maksimasi Maksimumkan fungsi tujuan

Z = c1x1 + c2x2+ ... + cnxn terhadap kendala-kendala

a11x1 + a12x2 + ... + a1nxn b1

a21x1 + a22x2 + ... + a2nxn b2 .

(3)

.

amix1 + am2x2 + ... + amnxn bm di mana:

xj ≥ 0 j = 1, 2, ..., n

Ringkasnya, maksimumkan terhadap

xj≥ 0 i = 1, 2, ..., m b. Masalah Minimasi

Minimumkan fungsi tujuan

Z = c1x1 + c2x2+ ... + cnxn

(4)

2.1.2 Karakteristik Linear Programming

Karakteristik-karakteristik dalam linear programming yang biasa digunakan untuk memodelkan suatu masalah dan memformulasikannya secara matematik yaitu:

a. Variabel Keputusan

Variabel keputusan adalah variabel yang secara lengkap menguraikan keputusan-keputusan yang akan dibuat.

b. Fungsi Tujuan

Fungsi tujuan merupakan suatu hubungan linier dari variabel keputusan yang berupa fungsi maksimum atau minimum.

c. Kendala

(5)

2.2 Integer Linear Programming

Integer Linier Programming atau program bilangan cacah adalah suatu bentuk dari program matematikal. Ia adalah suatu kasus khusus dari program linier di mana semua (atau beberapa) variabel dibatasi sebagai bilangan cacah. Kalau semua variabel dibatasi sebagai bilangan cacah, problemanya disebut sebagai problem program bilangan cacah murni dan kalau beberapa variabel tertentu dibatasi sebagai bilangan cacah sedang yang lain tidak, problemanya disebut problem program bilangan cacah campuran. Suatu bentuk khusus dari program bilangan cacah ialah suatu kasus di mana variabel dibatasi harus berharga nol atau satu. Kalau variabel dibatasi seperti ini, maka problemnya disebut problem program nol-satu (0-1) (P. Siagian, 1987).

2.2.1 Bentuk Umum Integer Linear Programming

Maksimumkan:

Dengan kendala: i = 1, 2, ..., m

xj≥ 0 j = 1, 2, ..., n

xjmerupakan bilangan cacah(untuk beberapa atau semua j = 1,2, ..., n). Problema ini disebut sebagai integer linear programming (Stephen P. Bradley, Arnoldo C. Hax, Thomas L. Magnanti, 1977).

2.3 Metode Penyelesaian Masalah Integer Programming

Tampaknya cukup untuk mendapatkan solusi bulat dari masalah linear

programming, dengan menggunakan metode simpleks biasa dan kemudian membulatkan nilai-nilai pecah solusi optimum. Bukan tugas mudah untuk membulatkan nilai-nilai pecah variabel basis yang menjamin tetap memenuhi semua kendala dan tidak menyimpang cukup jauh dari solusi bulat yang tepat. Akibatnya diperlukan prosedur yang sistematis untuk mendapatkan solusi bulat

(6)

optimum terhadap masalah itu. Beberapa metode yang dapat digunakan untuk menyelesaikan masalah integer programming antara lain:

1. Metode Pendekatan Pembulatan 2. Metode Pendekatan Grafik 3. Metode Branch and Bound

2.3.1 Metode Pendekatan Pembulatan

Suatu pendekatan yang sederhana dalam menyelesaikan masalah integer programming adalah dengan membulatkan nilai variabel keputusan yang telah diperoleh pada penyelesaian linear programming. Pendekatan ini mudah dan praktis dalam usaha, waktu, dan biaya yang diperlukan untuk memperoleh solusi. Pendekatan pembulatan merupakan cara yang sering digunakan untuk masalah

integer programming apabila biaya perhitungan sangat tinggi atau untuk masalah yang memiliki nilai-nilai solusi variabel keputusan relatif besar.

Namun demikian sebab utama kegagalan pendekatan ini adalah bahwa solusi yang diperoleh mungkin bukan solusi integer optimum yang sesungguhnya. Dengan kata lain, solusi pembulatab dapat lebih jelek dibandingkan solusi integer optimum yang sesungguhnya atau mungkin merupakan solusi tak layak.

Tiga masalah berikut disajikan untuk mengilustrasikan prosedur pembulatan: Masalah 1:

Maksimumkan Kendala

Masalah 2:

Minimumkan Kendala

(7)

Masalah 3:

Maksimumkan

Kendala 4

Perbandingan antara solusi dengan metode simpleks tanpa pembatasan bilangan bulat, pembulatan ke bilangan bulat terdekat dan solusi integer optimum yang sesungguhnya untuk ketiga masalah tersebut adalah:

Tabel 2.1 Perbandingan dengan menggunakan metode simpleks, pembulatan terdekat, dan solusi integer optimum sesungguhnya

Masalah pertama adalah masalah maksimasi, di mana solusi pembulatan menghasilkan keuntungan 680, hanya lebih kecil 20 dibanding yang dihasilkan solusi bulat optimum 700. Masalah kedua adalah masalah minimasi di mana solusi pembulatan adalah tak layak. Ini menunjukkan bahwa meskipun pendekatan adalah sederhana, namun kadang-kadang menyebabkan solusi tak

Masalah Solusi dengan Metode simpleks

Dengan pembulatan

terdekat

Solusi integer optimum sesungguhnya 1

2

(8)

layak. Untuk mencegah ketidaklayakan, nilai solusi simpleks dalam masalah minimasi harus dibulatkan ke atas. Sebaliknya, pada masalah maksimasi nilai solusi simpleks semestinya dibulatkan ke bawah. Contohnya, pada masalah kedua jika solusi simpleksnya dibulatkan ke atas akan diperoleh dan dan merupakan solusi layak. Juga pada masalah ketiga, jika solusi simpleksnya dibulatkan ke bawah akan diperoleh dan dan merupakan solusi layak.

Nilai fungsi tujuan melalui simpleks tanpa pembatasan bilangan bulat akan selalu lebih baik dibanding solusi integer optimum karena terletak pada titik pojok luar dari batas ruang solusi layak. Suatu metode yang serupa dengan pendekatan pembulatan adalah prosedur coba-coba (trial and error). Dengan menggunakan cara ini, pengambil keputusan mengamati solusi integer dan memilih solusi yang mengoptimumkan nilai fungsi tujuan. Cara ini sangat tidak efektif jika masalahnya melibatkan sejumlah besar kendala dan variabel. Terlebih lagi, memeriksa kelayakan setiap solusi yang dibulatkan akan banyak memakan waktu.

2.3.2 Metode Pendekatan Grafik

Masalah integer programming yang melibatkan dua variabel dapat diselesaikan dengan metode pendekatan grafik. Metode ini identik dengan metode grafik yang biasa digunakan dalam linear programming. Metode grafik relatif lebih mudah untuk menyelesaikan masalah integer programming dua variabel yaitu dengan menggambar grafik di atas kertas grafik kemudian menggambarkan sekumpulan titik-titik integer dalam ruang solusi layak. Masalah berikut akan diselesaikan dengan pendekatan grafik.

(9)

Model ini serupa dengan model linear programming biasa. Perbedaannya terletak pada kendala terakhir yang menginginkan solusi bernilai non negatif integer.

Solusi grafik untuk masalah ini ditunjukkan pada gambar di bawah. Ruang solusi layak adalah OABC. Solusi optimum masalah linear programming

ditunjukkan pada titik B, dengan dan serta . Untuk mencari solusi intger optimum masalah ini, garis Z (slope = -9/10) digeser secara sejajar dari titik B menuju titik asal. Solusi integer optimum adalah titik integer pertama yang bersinggungan dengan garis Z. Titik itu adalah A, dengan

(10)

2.4 Branch and Bound

Branch and Bound pertama kali digunakan oleh A. Land dan G. Doig untuk menyelesaikan persoalan program bilangan cacah murni dan campuran. Kemudian pada tahun 1965, E. Balas mengembangkan algoritma tambahan untuk menyelesaikan ILP dengan bilangan biner murni (pure binary) atau variabel nol-satu. Penghitungan algoritma tambahan ini sangat sederhana (umumnya, penambahan dan pengurangan) yang dapat menghasilkan solusi penecahan untuk problema ILP. Akan tetapi, algoritma tambahan ini gagal untuk menghasilkan keuntungan penghitungan yang diharapkan. Selain itu, algoritma tersebut yang pada awalnya tampak tidak berhubungan dengan metode branch and bound, telah ditunjukkan, tetapi bukan merupakan problema khusus algoritma umum dari Land dan Doig. (Hamdy A. Taha, 2007)

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 .

a. Branch

Branching (pencabangan) adalah proses membagi permasalahan menjadi subproblemsubproblem yang mungkin mengarah ke solusi.

b. Bound

(11)

2.4.1 Prosedur Branch and Bound

Berikut ini adalah langkah-langkah penyelesaian suatu masalah maksimasi dengan metode branch and bound:

1. Formulasi permasalahan dalam model matematika, tentukan fungsi tujuan dan kendala.

2. Ubah model matematika tersebut ke dalam bentuk standar.

3. Selesaikan model yang baru dengan menggunakan metode simpleks.

4. Jika hasil yang ditemukan sudah berupa bilangan bulat, maka solusi optimum sudah didapatkan. Akan tetapi, apabila hasil yang didapat belum berupa bilangan bulat, maka akan dilakukan pencabangan.

5. Lakukan metode simpleks untuk mengoperasikan linear programming

dengan penambahan kendala yang baru dan tetapkan batas untuk setiap iterasi yang dilakukan.

Gambar

Tabel 2.1 Perbandingan dengan menggunakan metode simpleks,

Referensi

Dokumen terkait