Algoritme Prim Penyelesaian open vehicle routing problem menggunakan metode heuristik

2.2 Algoritme Prim

Ada beberapa algoritme yang dapat digunakan untuk menentukan minimum spanning tree pada graf berbobot yang terhubung. Salah satu algoritme tersebut adalah algoritme Prim yang akan digunakan dalam karya ilmiah ini. Algoritme Prim digunakan pada graf berbobot yang taktrivial dengan p menyatakan order dari graf G dan q menyatakan size dari graf G. Metode dari algoritme Prim adalah mengganti tree T dalam graf berbobot G yang terhubungkan dengan tree baru. Tree baru dibentuk dengan menambahkan sebuah sisi yang memiliki bobot minimum yang menghubungkan verteks dari T ke verteks yang tidak di T. Langkah-langkah algoritme Prim adalah sebagai berikut : 1. [Inisialisasi tree T] Misalkan u sembarang simpul di G dan . 2. [Update tree T] Jika v adalah simpul dengan jarak minimum ke u, maka 3. [Memeriksa apakah sebuah minimum spanning tree sudah terbentuk] Jika dengan p adalah size dari graf T, maka keluarannya adalah Jika tidak, maka kembali ke Langkah 2. Chartrand Oellermann 1993 Contoh pemakaian algoritme Prim Diberikan G adalah graf berbobot seperti pada Gambar 12. a b c d e f g 5 6 7 9 8 7 15 5 8 9 11 Gambar 12 Graf berbobot G. Jika dipilih d sebagai simpul awal, maka dengan algoritme Prim didapat minimum spanning tree dengan proses sebagai berikut : 1. a adalah simpul yang terhubung ke d dengan bobot terkecil sehingga dipilih sisi da lihat Gambar 13. a b c d e f g 5 6 7 9 8 7 15 5 8 9 11 Gambar 13 Sisi da hasil dari algoritme Prim tahap ke-1. 2. Simpul berikutnya yang dipilih adalah simpul dengan bobot terkecil terhadap d atau a. Sisi ab memiliki bobot 7, db berbobot 9, de berbobot 15, dan df berbobot 6, sehingga sisi df dipilih sebagai sisi yang memiliki bobot terkecil lihat Gambar 14. a b c d e f g 5 6 7 9 8 7 15 5 8 9 11 Gambar 14 Sisi df hasil dari algoritme Prim tahap ke-2. 3. Algoritme dilanjutkan seperti tahap sebelumnya. Sisi ab dipilih sebagai sisi yang memiliki bobot terkecil terhadap sisi- sisi yang incident dengan simpul a dan d lihat Gambar 15. a b c d e f g 5 6 7 9 8 7 15 5 8 9 11 Gambar 15 Sisi ab hasil dari algoritme Prim tahap ke-3. 4. Sisi be dipilih sebagai sisi yang memiliki bobot terkecil lihat Gambar 16. a b c d e f g 5 6 7 9 8 7 15 5 8 9 11 Gambar 16 Sisi be hasil dari algoritme Prim tahap ke-4. 5. Sisi ec dipilih sebagai sisi yang memiliki bobot terkecil lihat Gambar 17. a b c d e f g 5 6 7 9 8 7 15 5 8 9 11 Gambar 17 Sisi ec hasil dari algoritme Prim tahap ke-5. 6. Sisi eg dipilih sebagai sisi yang memiliki bobot terkecil lihat Gambar 18. Jadi, dihasilkan suatu minimum spanning tree dari graf G seperti pada Gambar 18. a b c d e f g 5 6 7 7 5 9 Gambar 18 Solusi minimum spanning tree dengan bobot 39. III PEMBAHASAN Di dalam karya ilmiah ini akan diperkenalkan sebuah masalah manajemen distribusi, yang disebut open vehicle routing problem OVRP. Masalah manajemen distribusi OVRP berbeda dengan vehicle routing problem VRP. Ciri utama permasalahan yang membedakan OVRP dengan VRP adalah kendaraan tidak diharuskan kembali ke depot, namun jika kendaraan diperbolehkan kembali ke depot maka kendaraan akan mengunjungi kembali konsumen melalui rute sebelumnya secara terbalik. OVRP bisa dijelaskan sebagai berikut. Misalkan terdapat sebuah depot dan himpunan konsumen yang memiliki permintaan terhadap barang. Pada depot terdapat sejumlah kendaraan transportasi. Setiap kendaraan memiliki kapasitas maksimum barang yang bisa dibawa dan tiap kendaraan juga memiliki biaya operasional. Biaya perjalanan antara depot dan semua konsumen, seperti juga dari konsumen ke konsumen, diketahui. Permasalahannya adalah menentukan total biaya perjalanan yang minimum dan memenuhi tiga kriteria berikut: i. setiap rute berawal dari depot dan berakhir pada konsumen, ii. setiap konsumen hanya dikunjungi oleh tepat satu kendaraan dan permintaannya terpenuhi, iii. total permintaan konsumen yang dikunjungi di setiap rute kurang dari atau sama dengan kapasitas kendaraan yang bertugas di rute tersebut. Tujuannya adalah menentukan rute perjalanan yang meminimumkan total biaya perjalanan dan biaya pemakaian kendaraan. Di dalam OVRP terdapat beberapa kondisi yang mungkin muncul ketika kendaraan melakukan pendistribusian barang dari depot ke konsumen, di antaranya: i. kendaraan berangkat dari depot dan berhenti di konsumen akhir, ii. kendaraan berangkat dari depot dan berhenti di konsumen akhir, lalu kembali lagi ke depot dengan melalui rute yang telah dilewati sebelumnya secara terbalik. a b c d e f g 5 6 7 9 8 7 15 5 8 9 11 Gambar 16 Sisi be hasil dari algoritme Prim tahap ke-4. 5. Sisi ec dipilih sebagai sisi yang memiliki bobot terkecil lihat Gambar 17. a b c d e f g 5 6 7 9 8 7 15 5 8 9 11 Gambar 17 Sisi ec hasil dari algoritme Prim tahap ke-5. 6. Sisi eg dipilih sebagai sisi yang memiliki bobot terkecil lihat Gambar 18. Jadi, dihasilkan suatu minimum spanning tree dari graf G seperti pada Gambar 18. a b c d e f g 5 6 7 7 5 9 Gambar 18 Solusi minimum spanning tree dengan bobot 39. III PEMBAHASAN Di dalam karya ilmiah ini akan diperkenalkan sebuah masalah manajemen distribusi, yang disebut open vehicle routing problem OVRP. Masalah manajemen distribusi OVRP berbeda dengan vehicle routing problem VRP. Ciri utama permasalahan yang membedakan OVRP dengan VRP adalah kendaraan tidak diharuskan kembali ke depot, namun jika kendaraan diperbolehkan kembali ke depot maka kendaraan akan mengunjungi kembali konsumen melalui rute sebelumnya secara terbalik. OVRP bisa dijelaskan sebagai berikut. Misalkan terdapat sebuah depot dan himpunan konsumen yang memiliki permintaan terhadap barang. Pada depot terdapat sejumlah kendaraan transportasi. Setiap kendaraan memiliki kapasitas maksimum barang yang bisa dibawa dan tiap kendaraan juga memiliki biaya operasional. Biaya perjalanan antara depot dan semua konsumen, seperti juga dari konsumen ke konsumen, diketahui. Permasalahannya adalah menentukan total biaya perjalanan yang minimum dan memenuhi tiga kriteria berikut: i. setiap rute berawal dari depot dan berakhir pada konsumen, ii. setiap konsumen hanya dikunjungi oleh tepat satu kendaraan dan permintaannya terpenuhi, iii. total permintaan konsumen yang dikunjungi di setiap rute kurang dari atau sama dengan kapasitas kendaraan yang bertugas di rute tersebut. Tujuannya adalah menentukan rute perjalanan yang meminimumkan total biaya perjalanan dan biaya pemakaian kendaraan. Di dalam OVRP terdapat beberapa kondisi yang mungkin muncul ketika kendaraan melakukan pendistribusian barang dari depot ke konsumen, di antaranya: i. kendaraan berangkat dari depot dan berhenti di konsumen akhir, ii. kendaraan berangkat dari depot dan berhenti di konsumen akhir, lalu kembali lagi ke depot dengan melalui rute yang telah dilewati sebelumnya secara terbalik. Permasalahan pada kendaraan yang berhenti di konsumen akhir namun tidak kembali ke depot dapat terjadi pada perusahaan yang tidak memiliki kendaraan sendiri, atau kendaraan yang dimiliki tidak mencukupi untuk mendistribusikan barang ke konsumen, sehingga perusahaan diharuskan menyewa kendaraan lain. Kendaraan sewa akan mengunjungi konsumen dan tidak kembali lagi ke depot. Permasalahan pada kendaraan yang kembali ke depot dengan rute terbalik dapat ditemui dalam proses pengiriman dan pengumpulan tabung gas elpiji. Kendaraan mengunjungi setiap konsumen dan mengirimkan tabung gas elpiji yang telah dipesan. Ketika kendaraan mencapai konsumen akhir dan barang pesanan yang ada di dalam kendaraan telah kosong, maka kendaraan kembali ke depot sambil mengumpulkan tabung gas elpiji yang kosong dari konsumen dengan melalui rute yang sama namun dengan rute terbalik secara berurutan. Misalkan terdapat dua konsumen, dan diasumsikan bahwa jarak dari konsumen pertama ke konsumen kedua sama dengan jarak dari konsumen kedua ke konsumen pertama. Rute pengumpulan barang akan melalui rute yang sama dengan rute pengiriman, namun konsumen akhir pada rute pengiriman dikunjungi terlebih dahulu dan kendaraan berakhir di depot. Untuk selanjutnya hanya kondisi ii yang akan dibahas dalam karya ilmiah ini. Untuk menentukan rute kendaraan yang meminimumkan total biaya perjalanan dan meminimumkan biaya pemakaian kendaraan, akan digunakan suatu metode heuristik.

3.1 Metode Heuristik