Fakultas Ilmu Komputer
3744
Penerapan Algoritma
Evolution Strategies
Dalam Permasalahan
VRPTW
Pada Optimasi Pendistribusian Pupuk
Lalu Muhammad Ivan Natania1, Randy Cahya Wihandika2, Suprapto3
Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email: 1[email protected], 2[email protected], 3[email protected]
Abstrak
Distribusi merupakan salah satu aspek yang sangat penting dalam kegiatan pemasaran. Distribusi adalah proses pemindahan barang yang dilakukan oleh pemasok barang menuju konsumen. Proses distribusi yang tidak terencana dapat menyebabkan kerugian bagi pihak distributor maupun pengecer. Untuk meminimalisir terjadinya kerugian, dibutuhkan suatu sistem yang dapat menentukan rute pengiriman dengan mempertimbangkan jarak tempuh dan waktu pelayanan dengan kapasitas angkut yang terbatas.
Vehicle Routing Problem with Time Windows (VRPTW) merupakan jenis permasalahan dalam penelitian ini. VRPTWmembutuhkan proses komputasi yang besar untuk menghasilkan kualitas solusi yang baik. Oleh karena itu dibutuhkan metode dalam menyelesaikan permasalahan VRPTW. Algoritma
Evolution Strategies merupakan salah satu algoritma yang dapat digunakan untuk mencari solusi dari permasalahan tersebut. Berdasarkan hasil pengujian, diperoleh nilai fitness tertinggi yaitu 0,52421 dengan parameter ukuran populasi sebesar 100, ukuran offspring sebesar 10, ukuran generasi sebesar 100, dan ukuran SP sebesar 5,00. Sedangkan nilai fitness terendah yaitu 0,45145 dengan ukuran populasi sebesar 100, ukuran offspring sebesar 1, ukuran generasi sebesar 50, dan ukuran SP sebesar 3,00.
Kata kunci: distribusi, vehicle routing problem with time windows, VRPTW, evolution strategies, optimas, elitism selection, self-adaptation, algoritma evolusi.
Abstract
Distribution is one of important aspects of marketing. Distribution is a process of transporting goods to consumers by supplier. Without good planning, the distribution process cause loss and damages for the distributor and also the retailers. The loss could be form the cost of fuel and also the time consumed. As for the retailers, goods supply is a crucial element for their business process. To minimize loss, a system is needed to determine the route of delivery with distance and service time as consideration due to limited capacity of container. Vehicle Routing Problem with Time Windows (VRPTW) is the main issue of this research. VRPTW needs great computational processing to deliver good quality of solution. Therefor methods are required to manage and solve the VRPTW issue. Evolution Strategies algorithm is one of many that could be use as a solution of this matters. Based on the experiments, the highest fitness is 0,52421 where the population size is 100, the offsprings size is 10, the generations size is 100, and the SP value is 5. The lowest fitness is 0,45145 where the offspring size is 1, populations size is 100, the generations size is 50, and the SP value is 3.
Keywords: optimization, distribution, vehicle routing problem with time windows, VTPTW, evolution strategies, elitism selection, self-adaptation, evolutionary algorithm.
1. PENDAHULUAN
Distribusi merupakan proses pemindahan barang dimana konsumen mendapatkan pasokan barang yang dikirim oleh pemasok barang atau produsen barang (Pujawan, 2010). Pendistribusian merupakan salah satu cara untuk meraih pemasukan bagi perusahaan (Suwarno,
waktunya, tentu akan meningkatkan kepuasan pelanggan. Aspek ini pula yang harus diperhatikan oleh pihak distributor agar tetap memiliki citra yang baik di mata pelanggan.
Kegiatan distribusi yang terencana, dapat meminimalisir terjadinya kerugian-kerugian seperti biaya bahan bakar yang besar serta waktu pelayanan yang terbuang karena salah memilih rute pendistribusian. Setiap toko memiliki waktu pelayanan yang berbeda, dan setiap kendaraan berangkat pada pukul 07.00 secara bersamaan. Sehingga jika tidak dilakukan perencanaan maka resiko keterlambatan pelayanan akan lebih besar. Untuk lebih mengoptimalkan proses distribusi maka pihak distributor tidak melakukan pengiriman terpisah, pengiriman terpisah adalah pengiriman dua atau lebih truk menuju satu konsumen jika kapasitasnya masih memadai sehingga satu konsumen hanya boleh dilayani oleh satu truk pengangkut. Seperti pada penelitian yang dilakukan oleh Munawaroh dan Mahmudy (2015), dimana dalam penelitian tersebut masih menggunakan pengangkutan terpisah sehingga dapat meningkatkan biaya distribusi. Selain itu pada penelitian tersebut tidak diperhitungkan waktu pelayanan yang dapat menjadi pelanggaran jika kendaraan tiba melebihi waktu pelayanan yang telah diberikan.
Vehicle Routing Problem with Time Windows merupakan salah satu jenis permasalahan dalam menentukan rute distribusi dimana terdapat satu produsen dan banyak konsumen dengan beberapa kendaraan yang memiliki kapasitas angkut barang dan waktu pelayanan yang berbeda. Time Windows
berfungsi sebagai batasan waktu pelayanan yang telah ditetapkan, sehingga jika melebihi batas waktu yang telah ditetapkan akan menjadi sebuah pelanggaran atau penalty. Permasalahan VRPTW secara eksak sangat tidak efisien sehingga membutuhkan proses komputasi yang besar (Potvin, 2009). Model VRPTW dapat dilihat pada Gambar 1.
Gambar 1 Model VRPTW
Beberapa manfaat dalam penerapan
VRPTW pada proses pendistribusian barang diantaranya :
• Meminimalisir biaya penggunaan bahan bakar.
• Meminimalisir jarak tempuh.
• Meminimalisir penalty waktu karena setiap konsumen memiliki batas waktu pelayanan yang berbeda.
• Meminimalisir jumlah penggunaan kendaraan.
Evolution Strategies (ES) merupakan metode pencarian yang bersifat stochastic yang berarti akan menghasilkan nilai yang berbeda dalam pencarian solusi setiap kali dijalankan (Hansen & Ostermeier, 2001). Proses reproduksi pada ES lebih mengutamakan proses mutasi, namun dalam beberapa kasus proses rekombinasi juga perlu digunakan. Proses dalam ES terbagi dalam 4 tipe siklus berdasarkan proses rekombinasi dan seleksi seperti pada Tabel 1 (Mahmudy, 2013).
Evolutionary Algorithms (EAs) merupakan salah satu metode yang dapat digunakan sebagai solusi dalam mengatasi masalah optimasi pendistribusian. Evolution Strategies sangat baik dalam mencari solusi pada proses perhitungan yang besar. Teknik dalam Evolution Algorithms
diinspirasi dari proses evolusi biologi. Hingga saat ini, ada empat jenis Evolution Algorithms
yang telah berkembang, diantaranya adalah
Genetic Algorithms (GA’s), Evolution Strategies
(ES), Genetic Programming (GP), dan
Evolutionary Programming (EP).
Tabel 1 Tipe Siklus ES
Siklus Rekombinasi Seleksi
(µ, λ) Tanpa Rekombinasi
Elitism Selection. Tanpa melibatkan parent,
hanya melibatkan individu dalam
offspring. (µ/r, λ) Menggunakan
Rekombinasi
Elitism Selection. Tanpa melibatkan parent,
hanya melibatkan parent dan offspring. (µ/r + λ) Menggunakan
Rekombinasi
Oleh karena itu, peneliti mengangkat topik optimasi pendistribusian pupuk sebagai tugas akhir. Pada skripsi ini, algoritma yang digunakan yaitu algoritma Evolution Strategies sebagai metode untuk mengoptimalkan pemilihan rute pengiriman pupuk berdasarkan jarak menuju setiap lokasi, waktu tempuh menuju setiap lokasi, waktu pelayanan, jumlah pemesanan yang dilakukan oleh konsumen, serta kapasitas angkut yang dimiliki oleh setiap kendaraan. Penggunaan ES ini diharapkan dapat menjadi solusi permasalahan dalam menentukan rute perjalanan yang paling optimal untuk melakukan proses distribusi barang pada PT Pupuk Kaltim Kantor Pemasaran Nusa Tenggara Barat.
2. METODOLOGI PENELITIAN
2.1 Tahapan Penelitian
Langkah-langkah dalam penelitian ini dapat dilihat pada Gambar 2.
Gambar 2 Diagram Metodologi Penelitian
Tabel 2 Contoh Representasi Kromosom
Kromosom 5-1-3-2-4-6
Jumlah Pesanan 20-40-30-20-20-40
Kendaraan 1 99-1-2-3
Jumlah Pesanan 0-20-40-30
Kendaraan 2 99-4-5-6
Jumlah Pesanan 0-20-20-40
2.2 Batasan Implementasi Sistem
Sistem ini memiliki beberapa batasan diantaranya sebagai berikut :
1. Data yang digunakan adalah data distribusi pupuk pada PT Pupuk Kaltim KP NTB yang hanya mencangkup Kota Mataram dan Kabupaten Lombok Barat. 2. Proses reproduksi yang digunakan adalah
exchange mutation.
3. Seleksi untuk memilih individu baru yang bertahan untuk generasi berikutnya menggunakan metode seleksi elitism selection.
4. Jumlah kendaraan bersifat statis yaitu sebanyak 7 kendaraan dengan kapasitas masing-masing 140 karung.
2.3 Spesifikasi Kebutuhan Sistem
Untuk mendukung kinerja sistem, dibutuhkan spesifikasi yang meliputi :
a. Perangkat Keras
• Processor Intel (R) Core i3-2120 CPU @ 3.30 GHz
• Memory 8192MB RAM
• Mouse dan Keyboard
b. Perangkat Lunak
• Sistem Operasi Windows 10 64-bit
• Mozilla Firefox sebagai media untuk menjalankan sistem
• XAMPP sebagai pembentuk server lokal
Database DBMS MySQL sebagai media penyimpanan data
2.4 Representasi Kromosom
Sebuah kromosom memiliki kumpulan gen-gen yang merepresentasikan sebuah solusi. Dalam penelitian ini, toko pemesan merupakan gen dalam ES, sehingga urutan gen menentukan kualitas solusi yang dihasilkan. Untuk representasi kromosom pada permasalahan kombinatorial ini, ES sudah mampu menyelesaikan permasalahan ini dengan menggunakan representasi permutasi. (Mahmudy, 2013). Tabel 2 menunjukkan contoh representasi kromosom.
gen berupa id toko. Kromosom [5 1 3 2 4 6 ] menunjukkan urutan rute toko dengan jumlah pesanan masing-masing. Urutan id toko sesuai dengan jumlah pesanan masing-masing toko. Id 99 merupakan id sumber sehingga tidak memiliki jumlah pesanan.
Tabel 3 Contoh Individu Awal
Rute Besar Strategy Parameter (σ)
1-2-3-4-5-6-7-8-9 2,4468
1-3-5-4-7-9-8-2-6 2,2874
3-5-4-1-2-8-9-7-6 3,3541
Gambar 3 Teknik Inversion Mutation
Gambar 4 Teknik Insertion Mutation
Gambar 5 Teknik 2-Exchange Mutation
Gambar 6 Teknik Shifting Mutation
2.5 Inisialisasi
Tahap ini merupakan tahap pembangkitan individu awal secara random. Dalam ES, setiap individu memiliki nilai strategy parameter yang digunakan untuk beradaptasi pada generasi berikutnya. Nilai ES pada awal generasi terbentuk secara random untuk setiap individu.
Nilai ES akan berubah seiring bertambahnya jumlah generasi. Individu yang dibangkitkan sebanyak jumlah populasi yang diinputkan, individu awal yang dibangkitkan tersebut akan menjadi parent pada generasi pertama. Setiap individu yang dibangkitkan menyatakan urutan rute yang dituju, gen pada setiap individu menyatakan id pada setiap toko. Tabel 3 menunjukkan contoh individu yang dibangkitkan pada populasi awal.
2.6 Reproduksi
Reproduksi merupakan proses dalam menghasilkan himpunan keturunan (offspring) yang diperoleh melalu proses mutasi maupun rekombinasi. Algoritma ES dalam menghasilkan keturunan lebih mengutamakan proses mutasi, namun dalam beberapa kasus terdapat pula penggunaan proses rekombinasi dalam menghasilkan keturunan (offspring).
Dalam penelitian ini, menggunakan jenis representasi permutasi sebagai proses mutasi. Dalam representasi permutasi, terdapat 4 teknik mutasi pada ES yaitu :
1. Inversion Mutation
Teknik ini dilakukan dengan cara memilih 2 titik potong secara acak, kemudian urutan gen yang berada di antara kedua titik potong tersebut dibalik sesuai urutan dari gen yang terpilih. Teknik Inversion Mutation dapat dilihat pada Gambar 3.
2. Insertion Mutation
Teknik ini dilakukan dengan memilih satu gen secara acak, kemudian gen tersebut dipindahkan secara acak pula. Teknik
Insertion Mutation dapat dilihat pada Gambar 4.
3. 2-Exchange Mutation
Teknik ini dilakukan dengan memilih dua gen secara acak, kemudian gen tersebut ditukar posisinya. Teknik 2-Exchange Mutation dapat dilihat pada Gambar 5.
4. Shifting Mutation
Teknik ini dilakukan dengan memilih 3 titik potong secara acak, kemudian gen yang berada diantara titik potong 1 dan 2 tersebut dipindahkan ke ke titik potong ke-3. Teknik
Shifting Mutation dapat dilihat pada Gambar 6.
Dalam penelitian ini menggunakan teknik
2-Exchange Mutation dalam menghasilkan
berupa penukaran id toko secara acak. Jumlah pesanan akan mengikuti posisi id toko sesuai jumlah pesanan yang dilakukan oleh toko tersebut.
2.7 Nilai Fitness
Nilai fitness menyatakan seberapa baik solusi yang dihasilkan. Semakin besar nilai
fitness sebuah individu, maka semakin baik solusi dari individu tersebut sehingga semakin besar kesempatan bagi individu tersebut untuk lolos ke generasi berikutnya. VRPTW dikategorikan kedalam masalah minimasi. Nilai pembilang yang digunakan adalah 1000 untuk menjaga agar nilai fitness yang dihasilkan tidak terlalu kecil. Rumus untuk memperoleh nilai
fitness dalam penelitian ini dapat dilihat pada
• TT = Tidak Terlayani (Karung)
S
etiap kendaraan berangkat pada pukul 07:00 dengan kecepatan rata-rata 60 KM/Jam. Jumlah penalty merupakan rata-rata dari dua jenis pelanggaran yaitu penalty tardy danpenalty tunggu. Penalty tardy merupakan total keterlambatan pelayanan yang dilakukan oleh seluruh kendaraan, sedangkan penalty tunggu merupakan total selisih antara waktu tunggu seluruh kendaraan dengan waktu buka toko. Jika waktu pelayanan melebihi waktu tutup, maka selisih tersebut merupakan tardy. Sedangkan jika waktu kendaraan tiba sebelum waktu buka, selisih tersebut merupakan penalty tunggu. Waktu bongkar muatan dibulatkan menjadi 15 menit untuk kelipatan 20 karung.
Total jarak adalah jumlah jarak yang ditempuh seluruh kendaraan mulai dari gudang menuju toko pelanggan hingga kembali lagi ke gudang. Penalty tidak terlayani merupakan jumlah pesanan yang tidak terlayani dalam satuan karung. Untuk menjaga agar seluruh pesanan terkirim, maka penalty tidak terlayani diberikan bobot yang lebih besar dibanding
panalty lainnya yaitu sebesar 50 (Zhang & Chen,
2014)
2.8 Seleksi
Proses seleksi merupakan proses pemilihan nilai fitness terbaik sebanyak jumlah populasi yang telah ditentukan untuk lolos menuju generasi berikutnya. Proses seleksi menggunakan teknik elitism selection. Elitism selection merupakan teknik seleksi dengan mengambil nilai fitness terbaik sebanyak populasi awal yang telah diinputkan. Pada penelitian ini menggunakan tipe (µ + λ), sehingga seleksi yang dilakukan melibatkan
parent dan offspring yang dipilih berdasarkan nilai fitness nya. Sehingga parent juga memiliki peluang untuk masuk ke generasi berikutnya.
3. HASIL DAN PEMBAHASAN
Pengujian pada penelitian ini meliputi pengujian pengaruh ukuran populasi terhadap
fitness, pengaruh ukuran offspring terhadap
fitness, pengaruh ukuran strategy parameter
terhadap fitness, dan pengaruh ukuran generasi terhadap fitness. Rute dikatakan optimal jika seluruh pesanan terlayani, jika terdapat barang yang tidak terkirim, maka akan dilakukan pengujian ulang hingga seluruh pesanan terlayani. Hasil terbaik dalam pengujian merupakan rute dengan penalty terkecil.
3.1 Pengujian Ukuran Populasi
Pada uji coba pengaruh ukuran populasi terhadap fitness, ukuran populasi yang diujikan yaitu 10, 20, 30, 40, 50, 60, 70, 80, 90, dan 100 populasi. Pengujian dilakukan sebanyak 10 kali dan kemudian akan dihitung rata-rata nilai
fitness nya. Pengujian ini menggunakan ukuran
offspring 3, ukuran SP 3,00, dan ukuran generasi sebesar 50 generasi. Parameter uji yang digunakan pada pengujian pertama bernilai
random berdasarkan penelitian sebelumnya. Grafik hasil pengujian dapat dilihat pada Gambar 7.
Berdasarkan
pengujian
pengaruh
ukuran populasi terhadap nilai
fitness
variasi solusi baru yang muncul sehingga kemungkinan munculnya kualitas solusi yang lebih baik akan semakin besar. Nilai fitness
tertinggi dalam pengujian ini ditemukan pada ukuran populasi sebesar 100 populasi dengan nilai 0,50749, sedangkan untuk nilai terendah yaitu 0.45004 dengan ukuran populasi sebesar 10 populasi.
Gambar 7 Grafik Hasil Pengujian Ukuran Populasi Terhadap Fitness
Gambar 8 Grafik Hasil Pengujian Ukuran
Offspring Terhadap Fitness
Gambar 9 Grafik Hasil Pengujian Ukuran SP Terhadap Fitness
Gambar 10 Grafik Hasil Pengujian Ukuran
Generasi Terhadap Fitness
4.2. Pengujian Ukuran Offspring
Pada pengujian pengaruh ukuran offspring
terhadap fitness, ukuran offspring yang diujikan yaitu 1, 2, 3, 4, 5, 6, 7, 8, 9, dan 10. Pengujian dilakukan sebanyak 10 kali dam kemudian akan dihitung rata-rata nilai fitness nya. Ukuran populasi yang digunakan yaitu 100 populasi yang merupakan ukuran populasi dengan nilai
fitness terbaik pada pengujian sebelumnya. Nilai SP yang digunakan adalah 3,00 dan ukuran generasi sebesar 50 generasi. Grafik hasil pengujian dapat dilihat pada Gambar 8.
Berdasarkan pengujian tersebut, nilai
fitness cenderung meningkat meskipun terdapat penurunan kualitas solusi pada ukuran offspring
8. Hal tersebut karena sifat random yang dimiliki ES. Nilai terendah terletak pada ukuran offspring
sebanyak 1 dengan nilai 0,44636, sedangkan nilai tertinggi terletak pada ukuran offspring
sebesar 10 dengan nilai 0,49954.
4.3. Pengujian Ukuran Strategy Parameter
Uji coba ketiga adalah pengujian pengaruh ukuran SP terhadap fitness. Ukuran SP yang diujikan yaitu 1, 2, 3, 4, dan 5. Ukuran populasi dan offspring yang digunakan diambil dari ukuran terbaik pada pengujian sebelumnya. Ukuran generasi yang digunakan sebesar 50 generasi. Pada pengujian ini, ukuran strategy parameter yang diujikan hanya berpengaruh pada awal generasi saja sehingga untuk generasi selanjutnya akan tetap mengikuti mekanisme
self-adaptation pada ES. Grafik hasil pengujian pengaruh ukuran SP terhadap fitness dapat dilihat pada Gambar 9.
Berdasarkan pengujian tersebut, kualitas nilai fitness menurun pada ukuran SP sebesar 4. Hal tersebut dipengaruhi oleh nilai fitness yang diinputkan hanya berpengaruh pada generasi awal saja. Untuk generasi berikutnya tetap mengikuti mekanisme self-adaptation. Nilai
fitness tertinggi dan terendah terletak pada ukuran SP yang sama yaitu 1. Nilai fitness
terendah sebesar 0,46136 dan nilai fitness
tertinggi sebesar 0,49456.
4.4. Pengujian Ukuran Generasi
Pengujian ukuran generasi yang diujikan sebesar 10, 20, 30, 40, 50, 60, 70, 80, 90, dan 100 generasi. Ukuran populasi dan offspring
sebelumnya. Sedangkan ukuran SP yang digunakan sebesar 5,00. Grafik hasil pengujian pengaruh ukuran generasi terhadap fitness dapat dilihat pada Gambar 10.
Berdasarkan pengujian tersebut, nilai
fitness meningkat seiring bertambahnya jumlah generasi. Hal ini membuktikan bahwa semakin besar ukuran generasi, maka semakin besar pula variasi solusi yang dihasilkan. Nilai fitness
terendah terdapat pada ukuran generasi sebesar 10 dengan nilai fitness 0,45145 dan nilai fitness
tertinggi terdapat pada ukuran generasi sebesar 100 dengan nilai fitness 0,52421.
4. PENUTUP
Berdasarkan seluruh pengujian yang telah dilakukan, kesimpulan yang dapat diambil pada penelitian ini adalah :
1. Algoritma ES dapat diterapkan dalam permasalahan VRPTW dengan memperhitungkan aspek jarak, waktu, jumlah pemesanan, serta jumlah kendaraan yang tersedia.
2. Algoritma ES merepresentasikan id sumber dan toko tujuan dengan representasi permutasi integer menjadi sebuah gen.
3. Semakin besar parameter ukuran populasi,
offspring dan generasi yang diinputkan, maka semakin besar pula peluang keluarnya kualitas solusi yang lebih baik. Karena semakin banyak variasi solusi yang dihasilkan. Namun tidak menutup kemungkinan terjadinya kualitas solusi yang dihasilkan, dikarenakan oleh sifat
random pada ES tersebut.
5. DAFTAR PUSTAKA
Endarwati, D. A., Mahmudy, W. F., & Ratnawati, D. E. (2014). Pencarian Rute Optimum Dengan Evolution Strategies.
Universitas Brawijaya.
Hansen, N., & Ostermeier, A. (2001).
Completely Derandomized Self-Adaptation in Evolution Strategies. Technische University. Berlin.
Mahmudy, W. F. (2013). Algoritma Evolusi.
Universitas Brawijaya. Malang.
Munawaroh, F., & Mahmudy, W. F. (2015).
Optimasi Distribusi Pupuk Menggunakan Evolution Strategies.
Universitas Brawijaya. Malang.
Pujawan, L, & Mahendrawati. (2010). Supply Chain Management. Surabaya: Guna Wdya.
Potvin, J. Y. (2009). Evolutionary Algorithm for Vehicle Routing. University de Montreal. Canada.
Suwarno, H. L. (2006). Sembilan fungsi saluran distribusi: Kunci pelaksanaan kegiatan distribusi yang efektif. Universitas Kristen Maranatha. Bandung.