Metode Branch-and-Bound Penentuan Rute Bus Karyawan Menggunakan Pemrograman Linear Integer

Rute kendaraan + + + + + + + + + + + + + + Gambar 6 Solusi yang mungkin dari VRP pada Gambar 5 dengan tiga kendaraan. Tujuan dari VRP adalah menentukan sejumlah rute untuk melakukan pengiriman pada setiap konsumen, dengan mengikuti beberapa ketentuan antara lain : 1. setiap rute berawal dan berakhir di depot, 2. setiap konsumen dikunjungi tepat satu kali oleh tepat satu kendaraan, 3. jumlah permintaan tiap rute tidak melebihi kapasitas kendaraan, 4. meminimumkan biaya perjalanan, Cordeau et al. 2002 Definisi 17 Capacitated Vehicle Routing Problem Capacitated Vehicle Routing Problem CVRP merupakan salah satu variasi dari masalah VRP dengan penambahan kendala kapasitas kendaraan. Setiap kendaraan yang melayani konsumen disyaratkan memiliki batasan kapasitas sehingga banyaknya konsumen yang dilayani oleh setiap kendaraan dalam satu rute bergantung pada kapasitas kendaraan. CVRP bertujuan meminimumkan waktu tempuh rute perjalanan kendaraan dalam mendistribusikan barang dari tempat produksi yang dinamakan dengan depot ke sejumlah konsumen dan memenuhi batasan kapasitas.

2.8 Metode Branch-and-Bound

Dalam karya ilmiah ini, untuk memperoleh solusi optimum dari masalah PLI digunakan software LINGO 8.0, yaitu sebuah program yang dirancang untuk menentukan solusi model linear, taklinear, dan optimisasi integer. Software LINGO 8.0 ini menggunakan metode branch-and-bound untuk menyelesaikan masalah PLI. Prinsip dasar metode branch-and-bound adalah memecah daerah fisibel dari masalah relaksasi-PL dengan membuat subproblem- subproblem. Terdapat dua konsep dasar dalam algoritme branch-and-bound. • Branch Cabang Branching pencabangan adalah proses membagi permasalahan menjadi subproblem- subproblem yang mungkin mengarah ke solusi fisibel. • Bound Batas 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. Taha 1975 Metode branch-and-bound diawali dari menyelesaikan relaksasi-PL dari suatu pemrograman linear integer. Jika semua nilai variabel keputusan solusi optimal sudah berupa integer, maka solusi tersebut merupakan solusi optimal 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 oleh Winston 2004 untuk ≤ Depot masalah maksimisasi bahwa nilai fungsi objektif optimal untuk suatu kandidat solusi 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: a. Subproblem tersebut takfisibel, sehingga tidak dapat menghasilkan solusi optimum untuk PLI. b. 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. c. Nilai fungsi objektif optimum untuk subproblem tersebut tidak melebihi batas bawah saat itu untuk masalah maksimisasi, 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 dan • Langkah 1 Subproblem PL i dipilih sebagai bagian masalah berikutnya untuk diteliti. Subproblem PL i diselesaikan dan diukur dengan kondisi yang sesuai. a Jika PL i 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 diteliti, maka proses dihentikan. b Jika PL i tidak terukur, proses dilanjutkan ke langkah 2 untuk melakukan pencabangan PL i. • Langkah 2 Dipilih salah satu variabel x j dengan nilai optimumnya adalah x j yang tidak memenuhi batasan integer dalam solusi PL i . Bidang [x j ] x j [x j ] + 1 disingkirkan dengan membuat dua subproblem PL yang berkaitan menjadi dua subproblem yang tidak dapat dipenuhi secara bersamaan, yaitu x j ≤ [x j ] dan x j ≥ [x j ] + 1, dengan [x j ] didefinisikan sebagai integer terbesar yang kurang dari atau sama dengan x j . Jika PL i masih tidak terukur, maka kembali ke Langkah 1. Taha 1996 Untuk memudahkan pemahaman metode branch-and-bound diberikan contoh sebagai berikut. Contoh 3 Metode Branch-and-Bound Misalkan diberikan integer programming IP berikut: maks z = 5x 1 + 4x 2 terhadap x 1 + x 2 ≤ 5 10x 1 + 6x 2 ≤ 45 2.7 x 1 , x 2 ≥ 0 x 1 , x 2 integer. Solusi optimal relaksasi-PL dari masalah IP 2.7 adalah dan yang dapat dilihat di Lampiran 1. Batas atas nilai optimal fungsi objektif masalah ini adalah Daerah fisibel masalah 2.7 ditunjukkan pada Gambar 7. Gambar 7 Daerah fisibel untuk relaksasi-PL dari IP 2.7. Keterangan : = solusi optimal relaksasi-PL IP 2.7 = titik-titik fisibel bagi IP 2.7 Langkah berikutnya adalah memartisi daerah fisibel relaksasi-PL menjadi dua bagian berdasarkan variabel yang bernilai −∞ = z . = i 1 3.75, x = 2 1.25, x = 23.75 z = 23.75. z = pecahan non-integer. Karena nilai dari kedua variabel yang diperoleh bukan integer, maka dipilih salah satu variabel untuk dasar pencabangan. Misalkan dipilih x 1 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 Hal ini diilustrasikan secara grafis pada Gambar 8. Gambar 8 Daerah fisibel untuk Subproblem 2 dan Subproblem 3 dari IP 2.7. Setiap titik solusi fisibel dari IP 2.7 termuat dalam daerah fisibel Subproblem 2 atau Subproblem 3. Setiap subproblem ini saling lepas. Subproblem 2 dan Subproblem 3 dikatakan dicabangkan oleh x 1 . Sekarang dipilih subproblem yang belum diselesaikan. Misalkan dipilih Subproblem 2, kemudian diselesaikan. Solusi optimal untuk Subproblem 2 ini adalah dan lihat Lampiran 1. Karena solusi optimal yang dihasilkan Subproblem 2 bukan solusi integer, maka dipilih pencabangan pada Subproblem 2 atas sehingga diperoleh dua subproblem lagi, yakni: • Subproblem 4: Subproblem 2 ditambah kendala • Subproblem 5: Subproblem 2 ditambah kendala Saat ini subproblem yang belum diselesaikan adalah Subproblem 3, 4, dan 5. Salah satu subproblem dipilih, misalnya dengan aturan LIFO Last In First Out. Dengan adanya aturan ini berarti dipilih Subproblem 4 atau Subproblem 5. Karena Subproblem 4 takfisibel lihat pada Lampiran 1, maka subproblem ini tidak dapat menghasilkan solusi optimal, yang tersisa adalah Subproblem 3 dan Subproblem 5. Karena aturan LIFO, dipilih Subproblem 5, yang kemudian menghasilkan solusi optimal dan lihat pada Lampiran 1. Karena bukan integer, maka dilakukan kembali pencabangan atas x 1 , sehingga diperoleh: • Subproblem 6: Subproblem 5 ditambah kendala • Subproblem 7: Subproblem 5 ditambah kendala Misalkan dipilih Subproblem 6. Ternyata subproblem ini juga takfisibel lihat pada Lampiran 1, sehingga tidak dapat menghasilkan solusi optimal. Dengan demikian subproblem-subproblem yang belum diselesaikan adalah Subproblem 3 dan Subproblem 7. Karena aturan LIFO, dipilih Subproblem 7. Subproblem ini kemudian menghasilkan solusi optimal dan lihat pada Lampiran 1. Dapat dilihat bahwa solusi optimal subproblem ini semuanya berupa integer, sehingga merupakan kandidat solusi untuk IP 2.7. Nilai z pada kandidat solusi ini merupakan batas bawah bagi nilai optimal IP. Penyelesaian Subproblem 3 menghasilkan solusi optimal dan lihat pada Lampiran 1. Batas bawah yang ditetapkan dari solusi optimal Subproblem 7 terlalu lemah dan tidak lebih baik dari nilai solusi optimal yang dihasilkan oleh Subproblem 3. Dengan demikian, nilai solusi optimal Subproblem 3, yakni menjadi batas bawah yang baru. Semua solusi optimal telah berupa integer dan tidak perlu lagi dilakukan pencabangan, sehingga solusi optimal dari Subproblem 3 merupakan solusi optimal IP 2.7, yakni dan Pohon pencabangan yang menunjukkan penyelesaian masalah IP 2.7 secara keseluruhan ditunjukkan pada Gambar 9. 1 4; x ≥ 1 3. x ≤ 1 4, x = 2 0.83, x = 23.33 z = 2 , x 2 1; x ≥ 2 0. x ≤ 1 4.5, x = 2 0, x = 22.5 z = 1 4.5 x = 1 5; x ≥ 1 4. x ≤ 1 2 4, 0, x x = = 20 z = 1 2 3, 2, x x = = 23 z = 23 z = 1 3, x = 2 2, x = 23. z = Subproblem 2 Subproblem 3 Pada Gambar 9, solusi Subproblem 3 dan Subproblem 7 adalah kandidat solusi terbaik karena semua variabelnya bernilai integer. Namun, karena nilai z untuk Subproblem 3 lebih besar dari Subproblem 7 maka solusi dari Subproblem 3 merupakan solusi optimum untuk masalah IP pada Contoh 3. Tanda pada Subproblem 3 dan Subproblem 7 menyatakan kandidat solusi untuk masalah IP tersebut. III DESKRIPSI DAN FORMULASI MASALAH

3.1 Deskripsi Masalah Rute Bus Karyawan