• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2022

Membagikan "BAB II LANDASAN TEORI"

Copied!
34
0
0

Teks penuh

(1)

5 BAB II

LANDASAN TEORI

1.1 Distribusi

Distribusi merupakan suatu proses pengirimam barang dari pemasok ke pelanggan sebagai upaya mencapai keberhasilan penjualan dan kepuasan pelanggan (Osaba et al., 2017). Elemen distribusi merupakan elemen yang vital dalam aktivitas penyaluran barang atau jasa dari perusahaan atau produsen kepada konsumen. Oleh karena itu, pemilihan sistem distribusi yang tepat tidak bisa diabaikan. Menurut Anggarini, Hidayat, Sunyoto, and Wulandari (2015) fungsi saluran distribusi meliputi fungsi pertukaran, penyedia fisik, dan penunjang.

Kegiatan distribusi dipengaruhi oleh jumlah permintaan pelanggan dan kuantitas barang yang tersedia. Karena jika kuantitas yang dimiliki warehouse tidak mencukupi atau kurang dari jumlah permintaan, maka proses penyaluran barang bisa berjalan lebih dari sekali. Sehingga menambah beban biaya penyaluran.

Faktor-faktor penting pada kegiatan distribusi adalah fasilitas, transportasi, ketersediaan barang atau jasa, dan tingkat penjualan (Karundeng, Mandey, &

Sumarauw, 2018).

1.2 Transportasi

Transportasi dapat diartikan sebagai gabungan dari beberapa komponen atau objek yang saling berkaitan dalam hal pengangkutan barang oleh berbagai jenis kendaraan sesuai dengan kemajuan teknologi (Tjiptono, Chandra, & Adriana, 2012). Pengelolaan aktivitas transportasi yang efektif dan efisien akan memastikan pengiriman barang dari perusahaan ke pelanggan dilakukan dengan tepat waku, tepat jumlah, tepat kualitas, dan tepat penerima. Dalam proses transportasi terdapat dua pihak yang terlibat didalamnya, yaitu pengirim (shipper) dan pengangkut (carrier). Transportasi menyebabkan nilai barang menjadi lebih tinggi di tempat tujuan daripada ditempat asalnya. Biaya transportasi bisa mencapai 1/3 sampai 2/3 dari total biaya logistic. Pentingnya sistem transportasi yang efektif adalah sebagai berikut (Garside & Dewi, 2017): (Kesy & Dewi, 2014):

(2)

6 - Kemampuan bersaing yang lebih besar. Dengan adanya perbaikan pada sistem transportasi, biaya produk dapat bersaing dengan produk lain yang dijual dalam pasar yang sama.

- Skala ekonomi. Transportasi yang murah mengizinkan melakukan pemisahan antara lokasi produksi dan pasar, sehingga pemilihan lokasi produksi dapat dilakukan dimanapun dan menghasilkan keuntungan secara geografis.

- Pengurangan harga produk. Tranportasi merupakan salah satu komponen dari biaya produk selain biaya produksi.

Unsur-unsur yang harus ada didalam kegiatan transprortasi adalah ada muatan yang diangkut, tersedia kendaraan sebagai alat angkut, terdapat jalan yang dilalui, terdapat terminal asal dan terminal tujuan, dan terdapat sumber daya manusia dan organisasi atau manajemen yang menggerakkan Nasution (2004). Transportasi juga terkait dengan tingkat produktivitas. Kemajuan transportasi akan membawa peningkatan mobilitas manusia, faktor-faktor produksi, dan hasil olahan yang diedarkan. Semakin tinggi mobilitas, berarti pergerakan lebih cepat dan lebih sedikit waktu yang diperlukan untuk memindahkan barang dari tempat dimana barang tersebut kurang bermanfaat ke lokasi dimana manfaatnya lebih besar. Makin tinggi mobilitas dengan demikian maka lebih produktif.

1.3 Vehicle Routing Problem (VRP)

Vehicle Routing Problem (VRP) atau masalah perutean kendaraan adalah masalah optimasi untuk melayani sejumlah pelanggan dengan sejumlah armada kendaraan (Halassi Bacar & Rawhoudine, 2021). VRP diperkenalkan pertama kali oleh Dantzig and Ramser (1959) dan semenjak itu telah dipelajari secara luas. VRP dideskripsikan sebagai masalah perancangan rute pengiriman yang optimal dari satu atau lebih depot ke sejumlah pelanggan yang tersebar secara geografis (Laporte, 1992). VRP biasanya memiliki 𝑛 − kendaraan dengan kapasitas yang sama pada suatu depot untuk melayani sejumlah konsumen atau pelanggan. Depot akan menentukan rute yang akan dilalui oleh kendaraan untuk mengirim barang ke sejumlah pelanggan. Pada VRP seringkali diasumsikan bahwa perjalanan

(3)

7 kendaraan akan berawal dan berakhir di depot yang sama dengan mempertimbangkan permintaan pelanggan.

Permasalahan VRP berkaitan dengan pengiriman barang ke sekumpulan pelanggan melalui rute kendaraan dengan biaya yang minimal (Eydi & Ghasemi- Nezhad, 2021). Permasalahan VRP bertujuan untuk mencari rute yang optimal dengan biaya minimum dengan sejumlah kendaraan tertentu dan berangkat dari satu depot menuju satu set pelanggan (Takan & Kasimbeyli, 2021). Terdapat empat tujuan umum VRP, yaitu meminimalkan biaya transportasi, meminimalkan jumlah kendaraan, menyeimbangkan rute, dan meningkatkan kepuasan pelanggan. Dalam membuat konstruksi rute, terdapat beberapa kendala yang harus dipenuhi. Seperti jenis barang yang diangkut, kualitas dari pelayanan, juga karakteristik konsumen dan kendaraan. Beberapa kendala operasional yang sering ditemui adalah sebagai berikut:

1. Pada setiap rute, besar muatan yang diangkut oleh kendaraan tidak boleh melebihi kapasitas kendaraan.

2. Konsumen yang dilayani dalam sebuah rute hanya dapat melakukan pengiriman atau pengambalian, dan mungkin keduanya.

3. Konsumen mungkin hanya dapat dilayani pada rentang waktu tertentu (time windows) dan jam kerja dari pengemudi kendaraan yang melayaninya.

4. Kendala prioritas juga mungkin akan timbul ketika suatu konsumen harus dilayani sebelum konsumen lainnya.

1.4 Jenis-Jenis VRP

Model VRP saat ini sangat berbeda dari yang diperkenalkan oleh Dantzig and Ramser (1959), karena semakin tingginya kompleksitas dikehidupan nyata.

Seperti, waktu perjalanan yang bergantung pada kemacetan lalu lintas, time windows, dan informasi masukan yang berubah secara dinamis dari waktu ke waktu. Sejak pertama kali diperkenalkan hingga saat ini, VRP telah banyak memiliki variasi dalam perkembangannya, diantaranya adalah:

(4)

8 1. Capacitated Vehicle Routing Problem (CVRP)

CVRP merupakan perkembangan dari VRP dengan kendala utama yaitu masing-masing kendaraan memiliki maximum kapasitas angkut (Ibrahim, Lo, Abdulaziz, & Ishaya, 2019). Pada CVRP kendaraan tidak boleh melakukan perjalanan apabila melebihi kapasitas angkutnya.

2. Vehicle Routing Problem with Time Windows (VRPTW)

VRPTW merupakan pengembangan dan generalisasi VRP dengan tambahan batasan waktu yaitu jam buka dan tutup layanan pada pelanggan (Kallehauge, Larsen, Madsen, & Solomon, 2005). Tujuan VRPTW adalah untuk melayani semua pelanggan tanpa melanggar batasan waktu dengan jumlah kendaraan yang minimum.

3. Multi Agent Vehicle Routing Problem (MAVRP)

Kendala utama pada jenis MAVRP adalah satu distributor memiliki lebih dari satu atau banyak agen. Tujuan utama dari masalah ini adalah untuk meminimalkan jumlah kendaraan yang digunakan dan untuk memaksimalkan jumlah permintaan yang dikirimkan.

4. Vehicle Routing Problem with Pick-Up and Delivering (VRPPD)

VRPPD memiliki batasan yaitu kendaraan tidak hanya mengirimkan barang kepada konsumen tetapi mengambil barang dari konsumen secara bersamaan.

VRPPD memiliki dua aktivitas yaitu, pengiriman dan pengambilan yang dilakukan secara bersamaan oleh kendaraan yang sama. Oleh karena itu, beban pada kendaraan harus diperhatikan agar tidak melebihi beban angkut (Kachitvichyanukul, Sombuntham, & Kunnapapdeelert, 2015).

5. Split Delivery Vehicle Routing Problem (SDVRP)

Pada kasus SDVRP kebutuhan pelanggan diizinkan untuk dipisah dan dikirim dalam kendaraan terpisah untuk mengurangi biaya transportasi dan pemborosan sumber daya. Dengan cara ini, kapasitas muat kendaraan dapat dimanfaatkan sepenuhnya dan biaya kendaraan dapat dikurangi (Chen et al., 2020).

6. Stochastic Vehicle Routing Problem (SVRP)

(5)

9 SVRP terjadi apabila beberapa elemen, seperti customer demand dan travel times benilai acak. Teori probabilitas merupakan tool yang digunakan utnuk menyelesaikan ketidakpastian tersebut dalam model matematika.

7. Periodic Vehicle Routing Problem (PVRP)

Faktor utama dari permasalahan ini adalah pengantaran yang hanya dilakukan pada waktu atau periode tertentu. Tujuannya adalah untuk meminimalkan total jarak rute dan menyelesaikan masalah penentuan jadwal pelayanan konsumen.

Setiap konsumen memiliki waktu pelayanan secara berkala, misalnya sekali dalam seminggu atau pada hari kerja saja. Pada permasalahan PVRP, frekuensi, jadwal layanan, dan jumlah permintaan pada setiap kunjungan adalah tetap (Archetti, Fernández, & Huerta-Muñoz, 2017).

8. Multiple Product Vehicle Routing Problem (MPVRP)

Kendala dari permasalahan MPVRP adalah produk yang didistribusikan dalam satu kali pengiriman yaitu lebih dari satu jenis komoditi. Tujuan dari MPVRP adalah untuk mengoptimalkan jarak tempuh kendaraan dan meminimalkan jumlah kendaraan yang digunakan.

9. Time Dependent Vehicle Routing Problem (TDVRP)

TDVRP adalah salah satu varian VRP yang mencerminkan variasi kondisi lalu lintas. Tantangan dalam TDVRP adalah meminimalkan biaya dengan bergantung kepada kecepatan kendaraan, jarak, dan muatan kendaraan. (Huang, Zhao, Van Woensel, & Gross, 2017).

10. Multi-Depot Vehicle Routing Problem (MDVRP)

MDVRP merupakan salah satu varian dari VRP, dimana terdapat beberapa depot yang bertindak sebagai distributor suatu produk. Setiap depot cukup untuk menyediakan semua barang yang diminta oleh konsumen. Ketersediaan depot- depot ini bertujuan untuk meminimalkan jarak antara konsumen dan depot, sehingga konsumen dapat dilayani oleh kendaraan yang berasal dari depot terdekat.

Tujuan dari MDVRP ini adalah untuk meminimumkan biaya yang dikeluarkan perusahaan dalam proses pendistribusian (Surekha & Sumathi, 2011).

(6)

10 1.5 Capacitated Vehicle Routing Problem (CVRP)

Capacitated Vehicle Routing Problem (CVRP) merupakan salah satu permasalahan mendasar dalam optimasi kombinatorial dengan sejumlah aplikasinya yaitu dalam bidang transportasi, distribusi, dan logistik (Borcinova, 2017). CVRP merupakan masalah perancangan rute pengiriman yang optimal dari suatu depot ke sejumlah pelanggan dengan batasan kapasitas muatan kendaraan (Baldacci et al., 2012). Tujuan dari CVRP adalah untuk menemukan satu set rute yang paling optimal untuk kendaraan dengan kapasitas tertentu di satu depot dengan batasan setiap rute dimulai dan berakhir di depot yang sama, setiap pelanggan dikunjungi tepat satu kali dan total demand tiap perjalanan tidak melebihi kapasitas kendaraan.

CVRP biasanya memiliki sejumlah 𝑛 − kendaraan dengan kapasitas yang sama untuk melayani sejumlah konsumen atau retail. Depot akan menentukan rute kendaraan untuk dilakukan pengiriman barang ke sejumlah retail. Pada CVRP biasanya diasumsikan bahwa perjalanan kendaraan akan berawal dan berakhir di depot yang sama dan dengan mempertimbangkan kapasitas dari kendaraan yang digunakan. Dalam CVRP masalah utama yang dihadapi adalah menentukan rute kendaraan pada proses pendistribusian sehingga setiap pelanggan terlayani oleh tepat satu kendaraan, permintaan terpenuhi, muatan kendaraan tidak melebihi kapasitas kendaraaan, dan panjang rute minimal hingga kembali ke depot. Dalam penyelesaian kasus CVRP ada beberapa batasan dan asumsi dasar yang harus dipenuhi. Menurut Semet, Toth, and Vigo (2014) batasan dan asumsi tersebut adalah :

1. Perjalanan kendaraan untuk pendistribusian produk berawal dan berakhir di depot yang sama.

2. Setiap pelanggan atau konsumen harus dikunjungi hanya sekali dalam sehari.

3. Total permintaan dari konsumen yang diangkut dalam sebuah rute tidak melebihi kapasitas angkut kendaraan yang digunakan para rute tersebut.

4. Kapasitas kendaraan homogen (tidak berbeda satu dengan lainnya).

(7)

11 1.6 Optimasi Multi Objective

Dalam permasalahan Vehicle Routing Problem biasanya diselesaikan dengan mencari satu fungsi tujuan saja. Namun permasalahan sebenarnya dalam memodelkan suatu masalah, dapat menggunakan beberapa fungsi tujuan secara bersamaan. Dalam hal ini, penyelesaian masalah dengan mencari beberapa fungsi tujuan disebut sebagai Multi Objective (Collette & Siarry, 2004). Pada saat menyelesaikan permasalahan Multi Objective akan ditemukan lebih dari satu solusi.

Solusi ini bersifat tradeoff, artinya disaat meminimalkan beberapa tujuan secara bersamaan beberapa tujuan lainnya meningkat. Pada kasus Multi Objective biasanya memiliki beberapa solusi. Namun, dari berbagai solusi yang disajikan hanya sebagian yang menarik. Solusi dikatakan menarik jika terdapat hubungan dominasi antar solusi yang dipetimbangkan. Hubungan dominasi antar solusi akan tetapi tidak mendominasi dirinya sendiri, disebut solusi optimal atau non- dominated solution.

Berikut adalah contoh permasalahan Multi Objective dimana mempertimbangkan masalah dengan dua tujuan: yaitu memaksimalkan 𝑓1 dan meminimalkan 𝑓2. Himpunan solusi direpresentasikan dalam tabel 2.1. Untuk mewakili titik-titik 𝑓1, 𝑓2 sebagai sumbu seperti pada gambar 2.3 dan perbandingan berbagai solusi disajikan dalam tabel 2.2.

Tabel 2. 1 Set Solusi Dua Fungsi Tujuan

Point Objective f1 Objective f2

A 8 5

B 9 2

C 12 1

D 11 2

E 16 2

(8)

12 (Sumber: Collette and Siarry (2004))

Gambar 2. 1 Koordinat dan Fungsi Tujuan

Perbandingan antara dua solusi, katakan P dan Q, diwakili oleh sepasang simbol pada perpotongan baris P dan kolom Q. Pasangan ini terdiri dari dua simbol, yaitu terkait dengan dua fungsi tujuan 𝑓1 dan𝑓2. Masing-masing simbol ini dapat mengambil tiga nilai +, -, dan =. Simbol tersebut dapat diartikan apakah 𝑃 lebih baik dari, lebih buruk dari, atau sama dengan 𝑄 dengan mempertimbangkan tujuan yang terkait. Fungsi tujuan memaksimalkan 𝑓1 dan meminimalkan 𝑓2 harus dipertimbangkan lebih lanjut. Jika 𝑓1 (𝑃) memiliki nilai lebih tinggi dari 𝑓1(𝑄), maka titik 𝑃 lebih baik dari titik 𝑄. Lebih lanjut jika 𝑓2 (𝑃) memiliki nilai lebih kecil dari 𝑓2 (𝑄) maka harus dipertimbangkan. Berikut ini adalah contoh bagaimana melanjutkan dengan poin A dan B dari tabel 2.1.

- A lebih buruk dari B mengingat objektif 𝑓1. Oleh karena itu, elemen pertama dari pasangan dalam sel [A, B] adalah tanda -,

- A lebih buruk dari B mengingat objektif 𝑓2. Oleh karena itu, elemen kedua dari pasangan dalam sel [A, B] adalah tanda -,

Jika mengacu pada definisi sebelumnya, dapat disimpulkan bahwa solusi B mendominasi solusi A.

(9)

13 Tabel 2. 2 Klasifikasi Solusi

A B C D E

A (-,-) (-,-) (-,-) (-,-)

B (+,+) (-,-) (-,=) (-,=)

C (+,+) (+,+) (+,+) (-,+)

D (+,+) (+,=) (-,-) (-,=)

E (+,+) (+,=) (+,-) (+,=)

Tabel 2. 3 Klasifikasi Solusi

A B C

A (-,-) (-,-)

B (+,+) (-,-)

C (+,+) (+,+)

Catatan: pasangan dalam sel tabel 2.2 yang simetris terhadap principal diagonal adalah "komplementer". Berikut ini adalah percobaan untuk mengekstrak solusi yang tidak didominasi.

1. Titik A

• Poin ini didominasi oleh poin-poin berikut:

B (pasangan (-, -) pada perpotongan baris A dan kolom B), C (pasangan (-, -) pada perpotongan baris A dan kolom C), D (pasangan (-, -) pada perpotongan baris A dan kolom D) dan E (pasangan (-, -) pada perpotongan baris A dan kolom E).

2. Titik B

• Poin ini didominasi oleh poin-poin berikut:

C (pasangan (-, -) pada perpotongan baris B dan kolom C), D (pasangan (-, =) pada perpotongan baris B dan kolom D), dan E (pasangan (-, =) pada perpotongan baris B dan kolom E)

• Mendominiasi titik A (pasangan (+, +) pada perpotongan baris B dan kolom A.

(10)

14 Dapat dikatakan bahwa titik A tidak termasuk dalam himpunan solusi tak terdominasi peringkat 1, karena memungkinkan untuk menemukan titik B yang lebih baik daripada titik A untuk semua tujuan.

3. Titik C

• Titik ini tidak didominasi oleh titik E (pasangan (+, -) pada perpotongan baris E dan kolom C; dan juga tidak mendominasi titik E pasangan (-, +) pada perpotongan baris C dan kolom E; titik C dan E tidak didominasi.

• Ini mendominasi poin-poin berikut:

A (pasangan (+, +) pada perpotongan baris C dan kolom A), B (pasangan (+, +) pada perpotongan baris C dan kolom B), dan D (pasangan (+, +) pada perpotongan baris C dan kolom D).

Dapat disimpulkan bahwa titik A, titik D tidak termasuk dalam himpunan solusi tak terdominasi dari peringkat 1, karena dimungkinkan untuk menemukan titik C yang lebih baik dari dua titik untuk semua tujuan.

4. Titik D didominasi, sehingga tidak perlu dibandingkan dengan titik lainnya.

5. Titik E

• Titik ini tidak didominasi oleh titik C (pasangan (-, +) pada perpotongan baris C dan kolom E), dan juga tidak mendominasi titik C (pasangan (+, -) pada perpotongan baris dan kolom C).

• Ini mendominasi untuk poin-poin berikut:

A (pasangan (+, +) pada perpotongan baris E dan kolom A), B (pasangan (+, =) pada perpotongan baris E dan kolom B) dan D (pasangan (+, =) pada perpotongan baris E dan kolom D).

Poin E dan C tidak mendominasi. Titik-titik ini mendominasi titik A, B, dan D tetapi tidak mendominasi dirinya sendiri.

Sekarang dua titik ini (E dan C) diambil dan dihapus dari tabel, kedua titik ini termasuk dalam himpunan titik-titik yang tidak didominasi. Titik E dan C, mereka mendominasi semua titik lain tetapi tidak mendominasi diri mereka sendiri.

Sehingga titik E dan C merupakan solusi pareto optimal dan solusi yang tersisa setelah titik E dan C dihilangkan seperti pada tabel 2.4. Proses ini berhenti ketika

(11)

15 himpunan poin yang akan dibandingkan adalah kosong. Gambar 2.4 mewakili berbagai titik dan peringkatnya.

(Sumber: Callotte and Siarry (2004))

Gambar 2. 2 Solusi dan Ranking Pareto

Kode semu dari fungsi penetapan peringkat Pareto direpresentasikan dalam Algoritma 1. Dalam algoritma ini, variabel 𝑁 sesuai dengan jumlah titik dari set dimana perbandingan dilakukan (Collette & Siarry, 2004).

Tabel 2. 4 Assignment of the Pareto Rank Algorithm 1 Assignment of the Pareto rank.

CurrentRank = 1 𝑚 = 𝑁

while 𝑁 ≠ 0 do For 𝑖 = 1 to 𝑚 do

If 𝑋𝑖 is Nondominated

Rank(𝑋𝑖, 𝑡) = CurrentRank End For

For 𝑖 = 1 to 𝑚 do

If Rank(𝑋𝑖, 𝑡) = CurrentRank Store 𝑋𝑖 in a temporary set

𝑁 = 𝑁 − 𝑙 End For CurrentRank = CurrentRank + 1 𝑚 = 𝑁

End While

(12)

16 1.7 Fuel Consumption Vehicle Routing Problem

Konsumsi bahan bakar atau fuel consumption dalam permasalahan distribusi dan transportasi merupakan bidang studi yang penting. Konsumsi bahan bakar kendaraan dipengaruhi oleh berbagai faktor, antara lain jarak tempuh, berat kendaraan, kecepatan kendaraan, kemiringan jalan, hambatan aerodinamis, kemacetan lalu lintas, dan lain sebagainya (Gaur, Mudgal, & Singh, 2013). Sebuah faktor penting yang menentukan konsumsi bahan bakar adalah berat total kendaraan, yaitu berat kendaraan kosong ditambah berat muatan yang diangkut oleh kendaraan. Selain itu menurut Tavares, Zsigraiova, Semiao, and Carvalho (2008) hanya ada tiga level beban kendaraan yang dipertimbangkan: setengah muatan beban saat mengumpulkan barang, muatan penuh ketika menuju lokasi pengiriman, dan tidak ada beban muatan saat kembali. Berdasarkan penelitian Eglese and Bekta¸

s (2014) ada dua cara untuk mengetahui perkiraan jumlah konsumsi bahan bakar yang digunakan kendaraan:

1. On-Road Measurements, yang didasarkan pada pengumpulan data real-time dari emisi pada kendaraan yang sedang berjalan.

2. Analytical Fuel Consumption Models, yang memperkirakan konsumsi bahan bakar berdasarkan pada jenis kendaraan, muatan, kecepatan kendaraan, dan parameter lainnya.

Pada studi ini, model perhitungan konsumsi bahan bakar merujuk pada penelitian yang dilakukan oleh (Y. Xiao, Zhao, Kaku, & Xu, 2012). Menurut Y.

Xiao et al. (2012) jarak perjalanan per volume unit bahan bakar yang digunakan berkorelasi dengan berat kotor kendaraan, seperti yang ditunjukkan pada Gambar 2.1. Garis merah pada Gambar 2.1 menunjukkan bahwa jarak yang ditempuh per volume unit bahan bakar yang digunakan berbanding terbalik dengan berat kendaraan. Gambar 2.2 merupakan perubahan dari Gambar 2.1 yang mewakili fungsi Fuel Consumption Rate (FCR), di mana Koordinat X adalah berat kendaraan dalam kilogram dan Koordinat Y adalah FCR dalam liter/km.

(13)

17 (Sumber: Xiao et al (2012))

Gambar 2. 3 Data Statistik Jarak Tempuh Kendaraan

(Sumber: Xiao et al (2012))

Gambar 2. 4 FCR vs Kombinasi Berat Kotor Kendaraan

Untuk menentukan kapasitas berat maksimal kendaraan yang dapat dibawa dengan mempertimbangkan FCR sebagai berikut:

(14)

18 Set Indeks:

i : Menunjukkan node pelanggan i j : Menunjukkan node pelanggan j r : Menunjukkan rute

Parameter:

𝑐0 : Menunjukkan biaya bahan bakar/unit (Rp/liter) 𝑑𝑖𝑗 : Menunjukkan jarak dari node i ke j (km) 𝐹𝑥𝑜𝑗 : Menunjukkka biaya tetap (Rp)

𝑔𝑖 : Menunjukkan jumlah permintaan pelanggan i (kg) 𝑄0 : Menunjukkan berat kendaraan ketika tanpa beban (kg) 𝜌0 : Menunjukkan FCR tanpa muatan (liter/km)

𝜌 : Menunjukkan FCR ketika muatan penuh (liter/km) Variabel Keputusan:

𝑥𝑖𝑗 : Bernilai 1 ketika arc (i,j) ada dan 0 sebaliknya 𝐶𝑓𝑢𝑒𝑙𝑖𝑗 : Menujukkan biaya bahan bakar dari node i ke j (Rp)

𝑦𝑖𝑗 : Menunjukkan berat muatan yang dibawa kendaraan dari node i ke j (kg) 𝜌𝑖𝑗 : Menunjukkan FCR disepanjang rute dari node i ke j (liter/km)

H : Menunjukkan total biaya distribusi (Rp)

Dengan membagi berat kotor menjadi dua bagian, berat kendaraan ketika tanpa beban 𝑄0 dan beban yang dibawa 𝑄1. Maka dapat dirumuskan FCR sebagai fungsi linear bergantung pada beban 𝑄1:

𝜌(𝑄1) = 𝛼 (𝑄0+ 𝑄1) + 𝑏 (1) Menentukan kapasitas kendaraan (berat maksimal kendaraan yang dapat diangkut) sebagai 𝑄, FCR ketika muatan penuh sebagai 𝜌, dan FCR tanpa beban sebagai 𝜌0 dapat dilihat pada persamaan (1) bahwa 𝜌0 = 𝛼𝑄0 + 𝑏, 𝜌 = 𝛼(𝑄0+ 𝑄1) + 𝑏 , dan 𝛼 =𝜌− 𝜌0

𝑄 (2) Sehingga 𝜌(𝑄1) dapat ditulis kembali sebagai :

𝜌(𝑄1) = 𝜌0+ 𝜌−𝜌0

𝑄 𝑄1 (3)

(15)

19 Kedua parameter 𝜌0 dan 𝜌 dapat diperoleh dengan menggunakan persamaan (3) dengan diberi bobot kendaraan saat kosong dan terisi penuh dalam kondisi tertentu (dengan medan, kecepatan kendaraan, dan sebagainya bernilai tetap). Persamaan (3) menunjukkan bahwa: 1) hubungan linear dapat ditemukan antara FCR dan muatan kendaraan, di mana intersep sama dengan 𝜌0 dan kemiringannya adalah 𝜌 − 𝜌0/𝑄; dan 2) beban kendaraan sama penting untuk jarak yang ditempuh dalam meninimalkan biaya bahan bakar.

Untuk setiap arc (i,j) dalam rute, dimana node j adalah node kendaraan untuk melayani pelanggan berikutnya setelah meninggalkan node i, maka biaya bahan bakar untuk perjalanan dari node i ke j dapat dinyatakan sebagai :

𝐶𝑓𝑢𝑒𝑙𝑖𝑗 = 𝑐0𝜌𝑖𝑗𝑑𝑖𝑗 (4) Dimana 𝑐0 adalah unit biaya bahan bakar, 𝑑𝑖𝑗 adalah jarak dari node i ke j, dan 𝜌𝑖𝑗 adalah FCR sepanjang rute dari node i ke j. Menyatakan r sebagai himpunan dari pelanggan di rute, biaya bahan bakar satu kendaraan harus :

𝐶𝑓𝑢𝑒𝑙= ∑𝑟𝑖=1𝑟𝑗=1𝐶𝑓𝑢𝑒𝑙𝑖𝑗 𝑥𝑖𝑗= ∑𝑟𝑖=1𝑟𝑗=1𝑐0𝜌𝑖𝑗𝑑𝑖𝑗𝑥𝑖𝑗 (5) Dimana 𝑥𝑖𝑗 sama dengan 1 ketika arc (i,j) ada dan sebaliknya bernilai 0.

Dalam persamaan (5), karena 𝜌𝑖𝑗 dipengaruhi oleh urutan pembongkaran (atau urutan bongkar-muat), total biaya bahan bakar 𝐶𝑓𝑢𝑒𝑙 dapat diminimalkan dengan mengembangkan urutan bongkar-muat yang dioptimalkan. 𝑦𝑖𝑗menunjukkan berat muatan yang dibawa oleh kendaraan dari node i ke j, berdasarkan persamaan (3) maka:

𝜌𝑖𝑗= 𝜌0+ 𝜌−𝜌0

𝑄 𝑦𝑖𝑗= 𝜌0 + 𝛼𝑦𝑖𝑗, 𝑖, 𝑗 = 1, … , 𝑟 (6) Untuk meminimalkan biaya bahan bakar, berikut rumus yang digunakan merujuk dari penelitian yang dilakukan oleh (Y. Xiao et al., 2012):

Objective Function

𝑀𝑖𝑛 H = ∑𝑛𝑗=1𝐹𝑥0𝑗 + ∑𝑛𝑖=0𝑛𝑗=0𝑐0𝑑𝑖𝑗(𝜌0𝑥𝑖𝑗 + 𝛼𝑦𝑖𝑗) (7) Subject to

𝑛𝑗=0𝑥𝑖𝑗 = 1, 𝑖 = 1, . . . . , 𝑛, (8)

𝑛𝑗=0𝑥𝑖𝑗 − ∑𝑛𝑗=0𝑥𝑖𝑗= 0, 𝑖 = 0, . . . . , 𝑛, (9)

(16)

20

𝑛𝑗=0 𝑗≠𝑖𝑦𝑖𝑗 − ∑𝑛=0 𝑗≠𝑖𝑦𝑖𝑗= 𝑔𝑖, 𝑖 = 1, . . . . , 𝑛, (10) 𝑦𝑖𝑗 ≤ 𝑄𝑥𝑖𝑗, 𝑖𝑗 = 0, . . . , 𝑛, (11) 𝑥𝑖𝑗 ∈ (0 , 1) , 𝑖𝑗 = 1, . . . , 𝑛, (12) Pada persamaan (7) sampai dengan persamaan (12), terdapat 2 vaiabel keputusan yaitu 𝑦𝑖𝑗 dan 𝑥𝑖𝑗. Variabel 𝑥𝑖𝑗= 1 jika node j adalah poin pertama yang dikunjungi oleh kendaraan manapun setelah meninggalkan node i, jika tidak 𝑥𝑖𝑗= 0. 𝑦𝑖𝑗 adalah beban yang dibawa oleh kendaraan ketika bergerak dari node i ke j.

Item pertama dalam fungsi tujuan adalah biaya tetap kendaraan dan item kedua adalah jumlah biaya bahan bakar semua kendaraan. Batasan (8) mewakili setiap pelanggan yang harus dikunjungi dan hanya dapat dikunjungi oleh satu kendaraan.

Kendala (9) menunjukkan setiap kendaraan yang tiba di suatu titik harus berangkat dari titik itu juga. Kendala (10) menunjukkan pengurangan beban kendaraan setelah mengunjungi pelanggan, menyamai permintaan pelanggan, dan melarang sub-rute ilegal. Kendala (11) membatasi beban maksimal yang dibawa oleh kendaraan dan memaksa nilai 𝑦𝑖𝑗 0 saat 𝑥𝑖𝑗= 0. Kendala integral terdapat pada kendala (12).

1.8 Vehicle Routing Problem with Time Windows

Vehicle Routing Problem with Time Windows merupakan permasalahan VRP, dimana pelayanan untuk setiap kosumen harus dilayani dalam interval waktu yang disebut time windows atau jendela waktu (Desaulniers, Madsen, & Ropke, 2014).

Menurut Toth and Vigo (2002), Vehicle Routing Problem (VRP) with Time Windows adalah perluasan dari Capacitated Vehicle Routing Problem (CVRP) dimana pelayanan untuk setiap customer harus dimulai dalam interval waktu yang disebut time windows atau jendela waktu. Permasalahan VRP with time windows terdiri dari beberapa retail dan depot tunggal yang disebut dengan node (Ahmad & Garside, 2022). Permasalahan time windows dalam kasus VRP terbagi menjadi dua yaitu Hard Time Windows dan Soft Time Windows. Dalam kasus Hard Time Windows proses pengiriman barang akan mengalami penolakan apabila dilakukan diluar waktu pelayanan yang ditentukan (Garcia-Najera & Bullinaria, 2011). VRP dengan Hard Time Windows tidak terlalu realistis karena waktu perjalanan dapat sangat

(17)

21 bervariasi dan bergantung kepada faktor eksternal seperti kondisi jalan dan lalu lintas yang tidak dapat diprediksi (Taş, Dellaert, Van Woensel, & De Kok, 2013).

Sedangkan pada Soft Time Windows yaitu, pengiriman tetap akan diterima oleh pelanggan walaupun tidak sesuai dengan waktu yang telah ditentukan karena tidak dianggap sebagai pelanggaran kritis (Srivastava, Singh, & Mallipeddi, 2021).

Tujuan dari permasalahan VRP dengan time windows adalah untuk meminimalkan banyaknya kendaraan yang digunakan dan meminimalkan keterlambatan atau delay time pengiriman dengan tetap memenuhi batasan-batasan.

Batasan-batasan tersebut antara lain (Kumar & Panneerselvam, 2012):

1. Setiap customer hanya dilayani tepat satu kali.

2. Batasan time windows harus terpenuhi.

3. Total permintaan dari setiap rute tidak boleh melampaui kapasitas kendaraan.

4. Setiap perjalanan kendaraan harus dimulai dan berakhir di depot yang sama.

Vehicle Routing Problem with Time Windows memiliki tujuan salah satunya adalah untuk meminimalkan delay time jika jendela waktu bersifat soft time (Lau, Sim, & Teo, 2003). Untuk menyelesaikan permasalahan Vehicle Routing Problem with Time Windows adalah dengan mempertimbangkan batasan jendela waktu.

Dengan kata lain, mengizinkan kedatangan terlambat untuk meningkatkan pelanggan yang dapat dilayani.

Pada studi ini, model perhitungan delay time merujuk pada penelitian yang dilakukan oleh Srivastava et al. (2021). Menurut Srivastava et al. (2021) armada dari kendaraan berangkat dari depot untuk melayani pelanggan dan masing-masing kendaraan memiliki kapasitas C. Setiap pelanggan i dikaitkan dengan permintaan pelanggan, dimana 𝑔𝑖 > 0 dan jendela waktu [𝑏𝑖, 𝑒𝑖]. Batasan jendela waktu menyatakan bahwa pelanggan i harus dilayani diantara waktu bi dan ei. Dengan kata lain, ei adalah waktu layanan paling akhir. Sehingga kendaraan harus tiba di pelanggan sebelum ei. Jika kendaraan datang setelah ei pelanggan i perlu ditunda dan menyebabkan terjadinya delay time. Selain itu, jika kendaraan tiba di pelanggan sebelum waktu layanan paling awal bi, kendaraan harus menunggu sampai bi untuk melayani pelanggan i dan menyebabkan waiting time. Situasi ini akan menyebabkan kendaraan menunggu dan waktu tunggu adalah perbedaan waktu

(18)

22 antara waktu layanan paling awal bi dan waktu kedatangan kendaraan. Setiap pelanggan i memiliki waktu pelayanan si, yaitu waktu yang dibutuhkan dalam dalam pengiriman barang setelah kedatangan kendaraan di lokasi pelanggan i. Batasan jendela waktu untuk depot adalah [0, 𝑒0], yaitu kendaraan mulai dari depot pada waktu 0 dan harus kembali ke depot pada atau sebelum waktu 𝑒0. Dianggap bahwa permintaan barang untuk depot adalah 𝑔0= 0. Disini 𝑑𝑖𝑗 dan 𝑡𝑖𝑗 mewakili jarak tempuh dan lama perjalanan antara pelanggan i ke pelanggan j. 𝑟𝑗 mewakili 𝑗𝑡ℎ rute sedemikian rupa sehingga, 𝑟𝑗= 〈𝑐(1. 𝑗), … . . 𝑐(𝑁𝑗, 𝑗)〉 adalah urutan pelanggan yang dilayani di rute 𝑗𝑡ℎ yang memiliki pelanggan 𝑁𝑗 dan c(i,j) menentukan pelanggan yang dikunjungi di posisi 𝑖𝑡ℎ pada rute ini. Selanjutnya depot direpresentasikan sebagai c (0, j) = c (Nj + 1, j) = 0.

Total jarak tempuh 𝑗𝑡ℎ rute didefinisikan sebagai:

𝐷𝑖𝑠𝑡𝑗 = ∑ 𝑑𝑐(𝑖,𝑗)𝑐(𝑖+1𝑗) 𝑁𝑗

𝑖=0 (13) Dimana, 𝑖 = 0 = 𝑁𝑗+ 1 menunjukkan depot dan 𝑑𝑐(𝑖,𝑗)𝑐(𝑖+1𝑗) menunjukkan jarak antara pelanggan i dan pelanggan i + 1.

Untuk menentukan total waktu tempuh, perlu menentukan waktu kedatangan kendaraan dan waktu kendaraan meninggalkan pelanggan. 𝑎𝑐(𝑖,𝑗) menunjukkan waktu kedatangan kendaraan j dan 𝑙𝑐(𝑖,𝑗) menunjukkan waktu kendaraan j meninggalkan pelanggan di i pelanggan c(i,j) di rute ini. Penting untuk menyebutkan bahwa kendaraan j mewakili sub rute ke 𝑗𝑡ℎ. Waktu kedatangan kendaraan di definisikan sebagai:

𝑎𝑐(𝑖,𝑗) = 𝑙𝑐(𝑖−1,𝑗)+ 𝑡𝑐(𝑖−1,𝑗)𝑐(𝑖,𝑗) (14) Waktu kendaraan j meninggalkan depot dianggap sebagai 0, yaitu 𝑙𝑐(0,𝑗) = 0 dan 𝑡𝑐(𝑖−1,𝑗)𝑐(𝑖,𝑗) menunjukkan waktu tempuh antara pelanggan i-1 dan i.

Apabila kendaraan tiba lebih awal di pelanggan maka kendaraan harus menunggu sampai waktu layanan paling awal. Skenario ini menimbulkan waktu tunggu kendaraan. Waktu tunggu kendaraan j di ith pelanggan c(i,j) dapat dihitung sebagai:

𝑤𝑐(𝑖𝑗) = ∫𝑏0 ,𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒𝑖𝑓 𝑎𝑐(𝑖,𝑗)≥𝑏𝑐(𝑖,𝑗)

𝑐(𝑖,𝑗)−𝑎𝑐(𝑖,𝑗) (15)

(19)

23 Waktu kendaraan j meninggalkan pelanggan dari ith pelanggan c(i,j) adalah:

𝑙𝑐(𝑖,𝑗) = 𝑎𝑐(𝑖𝑗)+ 𝑤𝑐(𝑖+1,𝑗) + 𝑠𝑐(𝑖+1,𝑗) (16) Total waktu perjalanan rute rj dapat dihitung dengan persamaan:

𝑇𝑗 = ∑𝑁𝑖=0𝑗 (𝑡𝑐(𝑖,𝑗)𝑐(𝑖+1,𝑗)+ 𝑊𝑐(𝑖+1,𝑗)+ 𝑆𝑐(𝑖,1+𝑗) (17) 𝑆𝑐(𝑖,1+𝑗) menunjukkan waktu layanan pelanggan (i + 1) th di rute ke j. Waktu tunggu dan waktu layanan di depot adalah 0 yaitu 𝑊𝑐(𝑁

𝑗+1,𝑗) = 0 dan 𝑆𝑐(𝑁

𝑗+1,𝑗) = 0. Hal ini dikarenakan tidak ada layanan di depot.

Dengan menggunakan notasi diatas, maka total waktu tunggu rute adalah:

𝑊𝑗 = ∑𝑁𝑖=1𝑗 𝑤𝑐(𝑖,𝑗) (18) Terdapat dua jenis VRP dalam konteks waktu layanan paling akhir. Versi pertama adalah hard time windows yang tidak mengizinkan kendaraan untuk sampai ke pelanggan setelah waktu layanan paling akhir. Versi VRP ini tidak terlalu realistis karena waktu perjalanan dapat sangat bervariasi tergantung pada faktor- faktor eksternal seperti kondisi jalan dan lalu lintas yang bisa kacau dan tidak dapat diprediksi. Versi kedua adalah soft time windows yang memberikan kelonggaran dan memungkinkan sedikit pelanggaran jendela waktu, karena tidak dapat dianggap sebagai pelanggaran kritis. Penelitian ini membahas VRP dengan soft time windows, yaitu kendaraan diperbolehkan datang terlambat dalam waktu tertentu setelah waktu layanan terakhir. Keterlaambatan kedatangan kendaraan menyebabkan waktu tunda kendaraan. Delay time atau waktu tunda kendaraan j di pelanggan ith adalah:

𝑑𝑒𝑙𝑎𝑦𝑐(𝑖𝑗) = ∫𝑎0 ,𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒𝑖𝑓 𝑎𝑐(𝑖,𝑗)≤𝑒𝑐(𝑖,𝑗)

𝑐(𝑖,𝑗)−𝑒𝑐(𝑖,𝑗) (19) Total delay time dari sebuah rute adalah:

𝐷𝑒𝑙𝑎𝑦𝑗 = ∑𝑁𝑖=1𝑗 𝑑𝑒𝑙𝑎𝑦𝑐(𝑖,𝑗) (20)

Berdasarkan persamaan diatas, persamaan (13) menunjukkan total jarak tempuh kendaraan. Persamaan (14) menunjukkan waktu kedatangan kendaraan.

Waktu tunggu atau waiting time kendaraan didefinisikan melalui persamaan (15).

Persamaan (16) menunjukkan waktu kendaraan meninggalkan pelanggan. Total waktu tempuh kendaraan ditunjukkan melalui persamaan (17). Total waktu tunggu

(20)

24 atau waiting time kendaraan didefinisikan melalui persamaan (18). Sedangkan waktu tunda atau delay time kendaraan ditunjukkan oleh persamaan (19) dan total delay time ditunjukkan oleh persamaan (20).

Penting untuk diketahui bahwa kedatangan kendaraan lebih awal mengakibatkan waktu tunggu dan keterlambatan kedatangan kendaraan menimbulkan delay time dalam rute yang dicakup kendaraan. Berikut notasi yang digunakan dalam model matematika:

Set Indeks:

i : Menunjukkan node pelanggan j : Menunjukkan kendaraan dan rute Parameter:

𝑔𝑖 : Menunjukkan jumlah permintaan pelanggan i C : Menunjukkan kapasitas kendaraan

𝑏𝑖 : Menunjukkkan waktu layanan paling awal di pelanggan i 𝑒𝑖 : Menunjukkan waktu layanan paling akhir di pelanggan i 𝑠𝑐(𝑖,𝑗) : Menunjukkan waktu layanan di pelanggan i pada rute j

𝑑𝑐(𝑖,𝑗)𝑐(𝑖+1𝑗) : Menunjukkan jarak antara pelanggan i dan pelanggan i + 1 pada rute j

𝑡𝑐(𝑖−1,𝑗)𝑐(𝑖,𝑗) : Menunjukkan waktu tempuh antara pelanggan i-1 dan i pada rute j Variabel Keputusan:

𝑎𝑐(𝑖,𝑗) : Menunjukkan waktu kedatangan kendaraan j di pelanggan i 𝑙𝑐(𝑖,𝑗) : Menunjukkan waktu kendaraan j meninggalkan pelanggan i 𝑤𝑐(𝑖𝑗) : Menunjukkan waktu tunggu kendaraan j di pelanggan i 𝑑𝑒𝑙𝑎𝑦𝑐(𝑖𝑗) : Menunjukkan delay time kendaraan j di pelanggan i 𝐷𝑖𝑠𝑡𝑗 : Menunjukkan total jarak tempuh kendaraan j 𝑇𝑗 : Menunjukkan total waktu perjalanan di rute j 𝑊𝑗 : Menunjukkan total waktu tunggu kendaraan j 𝐷𝑒𝑙𝑎𝑦𝑗 : Menunjukkan total delay time kendaraan j

M : Menunjukkan jumlah rute yang terbentuk atau kendaraan yang digunakan

(21)

25 Berikut adalah model matematika Vehicle Routing Problem with Time Windows yang ditunjukkan pada persamaan dibawah ini (Srivastava et al., 2021):

Objective Function

Min= |R| = M (21)

Min= ∑𝑀𝑗=1𝐷𝑖𝑠𝑡𝑗 (22)

Min= max{𝑇𝑗| = 1, … , 𝑀}; (23)

Min= ∑𝑀𝑗=1𝑊𝑗; (24)

Min= ∑𝑀𝑗=1𝐷𝑒𝑙𝑎𝑦𝑗; (25)

Subject to

1. Batasan permintaan. Total permintaan setiap rute rj harus kurang dari atau sama dengan kapasitas kendaraan yang didefinisikan pada persamaan (26).

𝑁𝑖=1𝑗 𝑔𝑐(𝑖𝑗) ≤ 𝐶 ∀𝑗 ∈ {1, 2, . . . , 𝑀 } (26) 2. Batasan waktu pejalanan. Delay time untuk semua kendaraan disetiap pelanggan

harus kurang dari atau sama dengan delay time maksimum yang diizinkan didefinisikan pada persamaan (27).

𝑑𝑒𝑙𝑎𝑦𝑐(𝑖,𝑗) ≤ 𝑚𝑑 ∀𝑖 ∈ {1, 2, . . . , 𝑁 } ∀𝑗 ∈ {1, 2, . . . , 𝑀 } (27) 3. Batasan return time. Semua kendaraan harus kembali ke depot sebelum waktu

tutup didefinisikan pada persamaan (28).

𝑎𝑐(𝑁𝑗+1,𝑗) ≤ 𝑒𝑐(𝑁𝑗+1,𝑗) ∀𝑗 ∈ {1, 2, . . . , 𝑀 } (28) Fungsi tujuan dari model matematika terdiri dari 5 fungsi tujuan. Persamaan (21) fungsi tujuan untuk meminimalkan jumlah kendaran yang digunakan. Persamaan (22) fungsi tujuan untuk meminimalkan total jarak perjalanan. Persamaan (23) fungsi tujuan untuk meminimalkan makespan atau waktu perjalanan terpanjang dari semua rute. Persamaan (24) fungsi tujuan untuk meminimalkan total waktu tunggu karena kedatangan lebih awal. Persamaan (25) fungsi tujuan untuk meminimalkan total waktu terlambat karena kedatangan terlambat.

(22)

26 1.9 Model Matematis

Model matematis ini memformulasikan permasalahan Capacitated Vehicle Routing Problem (CVRP) with Time Windows dengan tujuan untuk meminimalkan konsumsi bahan bakar dan delay time. Model matematika ini dikembangkan dari model yang diajukan oleh Srivastava et al. (2021) untuk permasalahan mengenai delay time dan model yang diajukan oleh Y. Xiao et al. (2012) untuk pertimbangan konsumsi bahan bakar. Formulasi matematika untuk permasalahan ini adalah sebagai berikut:

Objective Function

𝑀𝑖𝑛 F𝐶 = ∑ ∑ 𝑑𝑖,𝑗 (𝜌0+ 𝜌−𝜌0

𝑄 𝑦𝑖𝑗)

𝑛𝑗=0

𝑛𝑖=0 (29)

𝑀𝑖𝑛 𝐷𝑇 = ∑𝑛𝑗=1𝑎𝑖,𝑗− 𝑒𝑖 (30)

Subject to 𝑛𝑗=0𝑥𝑖,𝑗 = 1 𝑖 = 1, … , 𝑛 (31)

𝑛𝑗=0𝑥𝑖,𝑗 − ∑𝑛𝑗=0𝑥𝑖,𝑗 = 0, 𝑖 = 0, . . . . , 𝑛, (32)

𝑛𝑗=0 𝑗≠𝑖𝑦𝑖,𝑗 − ∑𝑛=0 𝑗≠𝑖𝑦𝑖,𝑗= 𝐷𝑖, 𝑖 = 1, . . . . , 𝑛, (33)

𝑦𝑖,𝑗≤ 𝑄𝑥𝑖,𝑗, 𝑖, 𝑗 = 0, … . , 𝑛 (34)

𝑎0 ≤ 𝑒0 ∀𝑗 ∈ {1, 2, . . . , 𝑀 } (35)

𝑎𝑖− 𝑒𝑖 ≤ 𝑚𝑑 ∀𝑖 ∈ {1, 2, . . . , 𝑛 } ∀𝑗 ∈ {1, 2, . . . , 𝑀 } (36)

𝑥𝑖,𝑗 ∈ { 0, 1 } i, j=1,….,n (37) Set Indeks:

i : Menunjukkan node pelanggan j : Menunjukkan node pelanggan n : Menunjukkan jumlah pelanggan

M : Menunjukkan jumlah kendaraan atau rute Parameter:

𝜌0 : Menunjukkan FCR ketika kendaraan tanpa muatan (liter/km)

𝜌 : Menunjukkan FCR ketika kendaraan memiliki muatan penuh (liter/km) 𝑑𝑖,𝑗 : Menunjukkan jarak dari node i ke j (km)

Q : Menunjukkan kapasitas kendaraan (kg) 𝐷𝑖 : Menunjukkan permintaan pelanggan (kg)

(23)

27 md : Menunjukkan delay time maksimum yang diizinkan (menit)

ei : Menunjukkan waktu layanan paling akhir di pelanggan i e0 : Menunjukkan waktu layanan paling akhir di depot

Variabel Keputusan:

𝑦𝑖,𝑗 : Menunjukkan beban yang diangkut kendaraan dari node i ke j (kg) 𝑎𝑖 : Menunjukkan waktu kedatangan kendaraan pelanggan i

𝑎0 : Menunjukkan waktu kedatangan kendaraan di depot FC : Menunjukkan jumlah konsumsi bahan bakar (Liter) DT : Menunjukkan total delay time (Menit)

𝑥𝑖,𝑗 : Bernilai 1 ketika arc (i,j) ada dan 0 sebaliknya

𝑋𝑖,𝑗 bernilai 0 atau 1. Index i menunjukkan pelanggan i dan index j menunjukkan pelanggan selanjutnya dimana kedua index ini menunjukkan adanya rute i ke j yang dilayani dari titik i ke titik j. Jika 𝑋𝑖,𝑗 bernilai 1, berarti kendaraan dari pelanggan i akan langsung menuju konsumen j, dan jika bernilai 0, maka sebaliknya.

Persamaan (29) dan (30) menyatakan fungsi tujuan dari masalah Capacitated Vehicle Routing Problem (CVRP) with Time Windows untuk memiminalkan konsumsi bahan bakar dan delay time. Kendala dari model matematika Capacitated Vehicle Routing Problem (CVRP) with Time Windows, kendala (31) mewakili setiap pelanggan harus dikunjungi oleh satu kendaraan. Kendala (32) menunjukkan setiap kendaraan yang tiba di suatu titik harus berangkat dari titik itu juga.

Pengurangan beban kendaraan setelah mengunjungi pelanggan, menyamai permintaan pelanggan, dan melarang sub rute ilegal dirumuskan dalam kendala (33). Kendala (34) menunjukkan permintaan pelanggan yang diangkut kendaraan harus kurang dari atau sama dengan kapasitas kendaraan. Kendala (35) menunjukkan kendaraan harus kembali sebelum waktu tutup depot. Kendala yang menunjukkan delay time kendaraan di setiap pelanggan harus kurang dari atau sama dengan kerlambatan maksimal yang diizinkan adalah persamaan (36). Terakhir, kendala (37) adalah bilangan biner [0,1] dari variabel keputusan.

(24)

28 1.10 Large Rank Value (LRV)

Untuk mengubah posisi agen pencari menjadi urutan perjalanan, penelitian ini mengusulkan prosedur Large Rank Value (LRV). Prosedur ini adalah prosedur untuk mentransformasikan bilangan kontinu menjadi bilangan diskrit. Aturan LRV diusulkan berdasarkan kunci acak. Dalam aturan LRV nilai terbesar sebuah vektor dipilih sebagai urutan pertama permutasi pekerjaan, lalu nilai terbesar kedua dipilih sebagai urutan kedua (Li & Yin, 2013). Peneliti menggunakan contoh sederhana untuk mengilustrasikan aturan LRV merujuk pada penelitian yang dilakukan oleh Dewi and Utama (2021). Pada tahap mengubah posisi agen pencari menjadi travel sequences, posisi agen pencarian dibangkitkan secara acak. Harus dipastikan tidak ada pengulangan nomer agen pencarian yang sama, seperti ditunjukkan pada gambar 2.5.

(Sumber: Dewi & Utama (2021))

Gambar 2. 5 Posisi Agen Pencarian. (1) Populasi yang diterima. (2) Populasi yang ditolak

Dalam prosedur LRV, nilai agen pencarian diurutkan dari yang terbesar hingga terkecil. Ilustrasi LRV ditunjukkan pada Gambar 2.6. Gambar 2.6(b) memiliki urutan yang salah karena dalam satu rute, kendaraan mengunjungi tempat yang sama dua kali. Penentuan rute untuk setiap agen pencarian didasarkan pada urutan perjalanan yang dihasilkan dari LRV. Penataan rute mempertimbangkan permintaan setiap pelanggan dan kapasitas kendaraan. Ilustrasi penataan rute disajikan pada Gambar 2.7. LRV dan pengaturan rute diterapkan untuk setiap agen pencarian disetiap iterasi.

(Sumber: Dewi & Utama (2021))

Gambar 2. 6 Representasi LRV

(25)

29

(Sumber: Dewi & Utama (2021))

Gambar 2. 7 Ilustrasi Penataan Rute

1.11 Multi-Objective Harris Hawk Optimization (MOHHO) Algorithm

Multi-Objective Harris Hawk Optimization (MOHHO) Algorithm merupakan usulan versi baru dari algoritma Harris Hawk Optimization (HHO) yang dikembangkan oleh (Heidari et al., 2019). Algoritma Elang Haris dimodelkan sebagaimana aksi dan perilaku kooperatif mereka dalam menangkap mangsa.

Terdapat tiga step utama dalam algoritma ini: pertama adalah fase untuk menemukan mangsa atau discover the prey, kedua serangan mendadak atau susprise attack, dan terakhir pemilihan dan implementasi strategi penyerangan yang berbeda atau selection and implementation different attack strategies. Algoritma Harris Hawk Optimization menggunakan dua strategi yang berbeda dalam fase eksplorasi dan empat fase eskploitasi yang berbeda. Berikut adalah penjelasan dari algoritma ini (Abdollahzadeh & Gharehchopogh, 2021) :

1. Fase Eksplorasi

Algoritma Harris Hawk Optimization menggunakan dua strategi dalam fase eksplorasi. Untuk memilih setiap strategi q, dengan bilangan acak antara 0 dan 1, dihasilkan pada awal fase eksplorasi. Jika q lebih signifikan dari 0.5 atau sama, strategi pertama digunakan untuk mencari didekat salah satu Elang lainnya, yang

(26)

30 acak. Tetapi jika q kurang dari 0.5, strategi kedua digunakan untuk operasi pencarian. Hal ini dinyatakan dalam persamaan (38).

𝑋(𝑡 + 1) = { 𝑋𝑟𝑎𝑛𝑑(𝑡) − 𝑟1| 𝑋𝑟𝑎𝑛𝑑(𝑡) − 2𝑟2𝑋(𝑡)|𝑞 ≥ 0.5

(𝑋𝑟𝑎𝑏𝑏𝑖𝑡(𝑡) − 𝑋𝑚(𝑡)) − 𝑟3(𝐿𝐵 + 𝑟4(𝑈𝐵 − 𝐿𝐵))𝑞 < 0.5 (38) 𝑋𝑚(𝑡) pada persamaan (38) dikalkulasikan berdasarkan persamaan (39).

𝑋𝑚(𝑡) =𝑁1𝑁𝑖=1𝑋𝑖(𝑡) (39) Dimana

𝑋 (𝑡 + 1) : Vektor posisi Elang di iterasi t berikutnya, 𝑋𝑟𝑎𝑏𝑏𝑖𝑡 (𝑡) : Posisi Kelinci,

𝑋 (𝑡) : Vektor posisi Elang saat ini,

𝑟1, 𝑟2, 𝑟3, 𝑟4 : Angka acak (0,1) yang diperbarui pada tiap iterasi 𝐿𝐵 , 𝑈𝐵 : Menunjukkan batas variabel atas dan bawah, 𝑋𝑟𝑎𝑛𝑑 (𝑡) : Elang yang dipilih secara acak dari populasi, 𝑋𝑚 : Rata-rata posisi populasi Elang.

2. Transisi dari Fase Eksplorasi ke Fase Eksploitasi

Algoritma Harris Hawk Optimization dapat mentransfer fase eksplorasi ke fase eksploitasi. Kemudian mengubah antara perilaku eksploitatif yang berbeda berdasarkan pada pelepasan energi mangsa. Energi mangsa berkurang drastis selama melarikan diri. Untuk memodelkan hal tersebut, energi mangsa dimodelkan sebagai:

𝐸 = 2𝐸0(1 −𝑇𝑡) (40)

Dimana

E : Energi yang dikeluarkan oleh mangsa, T : Jumlah literasi maksimum,

E0 : Energi awal.

Dalam algoritma Harris Hawk Optimization, E0 secara acak berubah didalam interval (-1, 1) pada setiap iterasi. Ketika nilai E0 menurun dari 0 ke -1, Kelinci secara fisik melemah, sementara ketika nilai E0 meningkat dari 0 ke 1, itu berarti Kelinci menguat. Energi yang keluar dari mangsa secara dinamis memiliki tren menurun selama iterasi. Tahap eksplorasi terjadi ketika |𝐸| ≥ 1, dimana Elang mencari daerah yang berbeda untuk menjelajahi lokasi Kelinci. Sedangkan tahap

(27)

31 eksploitasi terjadi ketika |𝐸| < 1, dimana Elang mencoba untuk mengeksploitasi lingkungan solusi selama langkah-langkah eksploitasi. Singkatnya, eksplorasi terjadi ketika |𝐸| ≥ 1, sedangkan eksploitasi terjadi ketika |𝐸| < 1.

3. Fase Eksploitasi

Dalam fase ini, Elang menerkam mangsa dengan mendeteksi fase sebelumnya.

Namun, mangsa sering berusaha melarikan diri dari situasi berbahaya. Oleh karena itu, gaya mengejar yang berbeda terjadi dalam situasi nyata. Menurut perilaku melarikan diri dari mangsa, terdapat empat strategi yang diusulkan dalam Harris Hawk Optimization untuk memodelkan tahap serangan.

Mangsa selalu berusaha melarikan diri dari situasi yang mengancam. Misalkan r adalah kesempatan mangsa berhasil lolos (𝑟 < 0,5) atau tidak berhasil melarikan diri (𝑟 ≥ 0,5). Apa pun yang dilakukan mangsa, Elang akan melakukan pengepungan untuk menangkap mangsanya. Ini berarti kelompok Elang akan mengelilingi mangsa dari arah yang berbeda tergantung pada energi yang dikeluarkan mangsa. Dalam situasi nyata, Elang semakin dekat dan lebih dekat ke mangsa untuk meningkatkan peluang mereka dalam membunuh Kelinci secara kooperatif dengan melakukan terkaman mendadak. Setelah beberapa menit, mangsa yang melarikan diri akan kehilangan lebih banyak energi. Kemudian, Elang mengintensifkan proses pengepungan untuk menangkap mangsa yang kelelahan.

Untuk memodelkan strategi ini, Harris Hawks Optimization memiliki peralihan antara proses pengepungan lembut dan kasar. Dalam hal ini, |𝐸| ≥ 0.5, untuk pengepungan lembut , dan |𝐸| < 0.5 untuk pengepungan kasar.

a. Pengepungan Lembut

Ketika 𝑟 ≥ 0.5 dan |𝐸| ≥ 0.5, Kelinci masih memiliki energi yang cukup untuk melarikan diri dengan beberapa lompatan acak tetapi akhirnya tidak bisa lolos. Selama upaya ini, Elang mengitari Kelinci dengan lembut agar Kelinci lelah dan kemudian melakukan penerkaman. Perilaku ini dimodelkan oleh persamaan berikut :

𝑋(𝑡 + 1) = ∆𝑋(𝑡) − 𝐸| 𝐽𝑋𝑟𝑎𝑏𝑏𝑖𝑡(𝑡) − 𝑋(𝑡)| (41)

∆𝑋(𝑡) = 𝑋𝑟𝑎𝑏𝑏𝑖𝑡(𝑡) − 𝑋(𝑡) (42)

Dimana

(28)

32

∆𝑋 (𝑡) : Perbedaan antara vektor posisi Kelinci dan lokasi saat di dalam iterasi t,

𝑟 : Angka acak di dalam (0-1),

J : Mewakili kekuatan lompatan acak Kelinci selama pelarian, nilai J akan berubah pada setiap iterasi.

Pada persamaan (41), X yang diperoleh dengan menggunakan persamaan (42) menunjukkan jarak antara Elang yang dipilih dan Kelinci, dan E diperoleh dengan menggunakan persamaan (40). J juga merupakan energi lepas dari Kelinci, yang diperoleh dengan menggunakan persamaan J = 2(1-r)

b. Pengepungan Kasar

Ketika 𝑟 ≥ 0.5 dan |𝐸| < 0.5, Kelinci sangat kelelahan dan memiliki sedikit energi. Selain itu, Elang tidak mengepung Kelinci melainkan langsung menerkam Kelinci secara mendadak. Dalam situasi ini, posisi diperbarui menggunakan persamaan berikut :

𝑋(𝑡 + 1) = 𝑋𝑟𝑎𝑏𝑏𝑖𝑡(𝑡) − 𝐸|∆𝑋(𝑡)| (43)

c. Pengepungan Halus dengan Penyelaman Progresif Cepat

Ketika |𝐸| ≥ 0,5 dan 𝑟 < 0,5, Kelinci memiliki energi yang cukup untuk melarikan diri. Sementara Elang melakukan pengepungan lembut sebelum melakukan penerkaman secara mendadak. Prosedur ini lebih baik dari dua prosedur sebelumnya.

Untuk memodelkan secara matematis pola pelarian dari gerakan dan lompatan mangsa masuk dalam konsep retribusi Levy Flight (LF). Konsep ini digunakan dalam fase pelarian dan pengejaran Kelinci dengan gerakan berliku-liku (zig-zag) secara tidak teratur, tiba-tiba, dan cepat disekitar mangsa yang melarikan diri.

Sebenarnya, Elang melakukan beberapa penyelaman cepat disekitar Kelinci dan mencoba untuk mencari lokasi dan arah sehubungan dengan gerakan menipu (zig- zag). Mekanisme ini juga didukung oleh pengamatan nyata dalam situasi kompetitif lainnya di alam. Telah dikonfirmasikan bahwa kegiatan berbasis LF adalah taktik pencarian yang optimal untuk pengumpul pemangsa dalam kondisi mencari makan yang tidak merusak. Selain itu, telah terdeteksi pola berbasis LF dapat dideteksi

(29)

33 dalam kegiatan mengejar hewan seperti Monyet dan Hiu. Oleh karena itu, gerakan berbasis LF digunakan dalam fase teknik Harris Hawk Optimization Algorithm ini.

Terinspirasi oleh perilaku Elang, terdapat dugaan bahwa Elang secara progresif memilih penerkaman terbaik menuju mangsa ketika mereka ingin menangkap mangsa. Oleh karena itu, untuk melakukan pengepungan lembut, diperkirakan bahwa Elang dapat mengevaluasi (memutuskan) langkah selanjutnya berdasarkan aturan berikut dalam persamaan berikut:

𝑌 = 𝑋𝑟𝑎𝑏𝑏𝑖𝑡(𝑡) − 𝐸| 𝐽𝑋𝑟𝑎𝑏𝑏𝑖𝑡(𝑡) − 𝑋(𝑡)| (44) Kemudian, untuk membandingkan hasil dari gerakan penyerangan, Elang akan memilih apakah itu penyerangan yang bagus atau tidak. Jika itu tidak masuk akal (ketika mereka melihat bahwa mangsa melakukan gerakan yang lebih menipu), Elang juga mulai melakukan penyerangan tidak teratur, tiba-tiba, dan cepat ketika mendekati Kelinci. Dugaan sementara Elang akan menyelam berdasarkan pola berbasis LF menggunakan aturan berikut:

𝑍 = 𝑌 + 𝑆 × 𝐿𝐹(𝐷) (45)

Dimana

𝐷 : Dimensi masalah,

𝑆 : Vektor acak dengan ukuran 1 × 𝐷, 𝐿𝐹 : Fungsi retribusi.

Dalam persamaan (45), S adalah bilangan acak dalam dimensi masalah dikisaran 0 dan 1, dan nilai LF (D) adalah LF yang bermasalah dimensi, seperti yang ditunjukkan pada persamaan (43).

𝐿𝐹(𝑥) = 0.01 ×𝜇 × 𝜎

|𝜈|

1 𝜌

, 𝜎 = ((Γ (1+𝛽) × 𝑠𝑖𝑛 ( 𝜋𝛽2 ) Γ (1+𝛽2 ) × 𝛽 × 2(

𝛽−1 2 ))

)

1 𝛽

(46) Dalam persamaan (46), µ dan ν adalah bilangan acak antara 0 dan 1, dan β adalah angka tetap dan bernilai 1.5. Oleh karena itu, strategi akhir untuk memperbarui posisi Elang dalam fase pengepungan lunak dapat dilakukan oleh persamaan berikut:

𝑋(𝑡 + 1) = {𝑌𝑖𝑓𝐹(𝑌) < 𝐹(𝑋(𝑡))

𝑍𝑖𝑓𝐹(𝑍) < 𝐹(𝑋(𝑡)) (47)

(30)

34 Dimana Y dan Z diperoleh dengan menggunakan persamaan (44) dan (45). Sesuai dengan persamaan (47), persamaan (43) lebih baik dari solusi saat ini. Ini menggantikan solusi saat ini, tetapi sebaliknya, solusi yang diperoleh dengan menggunakan persamaan (47) dibandingkan dengan solusi saat ini tampaknya lebih baik daripada yang lain.

d. Pengepungan Kasar dengan Penyelaman Progresif Cepat

Ketika |𝐸| < 0.5 dan 𝑟 < 0.5, Kelinci tidak memiliki energi yang cukup untuk melarikan diri, sehingga Elang melakukan pengepungan yang keras sebelum menerkam dan membunuh mangsa. Situasi langkah ini mirip dengan pengepungan lunak, tetapi kali ini, Elang mencoba untuk mengurangi jarak lokasi rata-rata dengan Kelinci yang melarikan diri. Oleh karena itu, aturan berikut dilakukan dalam kondisi pengepungan keras dengan persamaan sebagai berikut :

𝑋(𝑡 + 1) = {𝑌𝑖𝑓𝐹(𝑌) < 𝐹(𝑋(𝑡))

𝑍𝑖𝑓𝐹(𝑍) < 𝐹(𝑋(𝑡)) (48)

Pada persamaan (48), Y dan Z diperoleh dengan menggunakan persamaan (49) dan (50).

𝑌 = 𝑋𝑟𝑎𝑏𝑏𝑖𝑡(𝑡) − 𝐸| 𝐽𝑋𝑟𝑎𝑏𝑏𝑖𝑡(𝑡) − 𝑋𝑚(𝑡)| (49)

𝑍 = 𝑌 + 𝑆 × 𝐿𝐹(𝐷) (50)

Berikut adalah pseudocode dari Algoritma MOHHO (Abdollahzadeh &

Gharehchopogh, 2021) :

Tabel 2. 5 Pseudocode Algoritma MOHHO

Algorithm 2 Pseudocode Multi-Objective Harris Hawk Optimization (MOHHO) Algorithm

Input: The population size N and maximum number of iterations T Output: The rep ant its fitness value

Initialize the random population Xi (i=1,2,…N)

Separating the non-dominated members of the population and store them in Rep Grinding the discovered target space

while (stopping condition is not met) do for (each hawk (Xi)) do

Update the initial energy Eo and jump strength J > E0 = 2 rand ()-1, J = 2 (1- rand())

Update the E using Eq.(40) Select Leader

if ( |E| ≥ 1) then

Update the location vector using Eq. (38) > Exploration Phase

(31)

35 if ( |E| < 1) then

if (r ≥ 0.5 and |E| ≥ 0.5 ) then > The Exploration Phase Update the location vector using Eq. (41) > Soft Besiege

else if (r ≥ 0.5 and |E| < 0.5 ) then

Update the location vector using Eq. (43) > Hard Besiege else if (r < 0.5 and |E| ≥ 0.5 ) then

Update the location vector using Eq. (47) > Soft Besiege with progressive rapid dives

else if (r < 0.5 and |E| < 0.5 ) then

Update the location vector using Eq. (48) > Hard Besiege with progressive rapid dives

The non-dominated members of the current population are added to the Rep.

The dominant members of the Rep are removed.

If the number of Rep members exceeds the specified capacity, the additional members are deleted.

Return rep

1.12 Literature Review

Penelitian-penelitian terdahulu menampilkan beberapa penelitian terkait Capacitated Vehicle Routing Problem with Time Windows. Studi Literatur ini berguna sebagai bahan rujukan bagi peneliti dalam melakukan penelitian ini.

Berikut adalah rangkuman penelitian terdahulu yang dapat dilihat pada Tabel 2.6.

Berdasarkan Tabel 2.6 diketahui bahwa penelitian yang dilakukan Lan, Liu, Ng, Zhang, and Gui (2020) menggunakan algoritma Decomposition-based multi- objective Variable Neighborhood Descent. Selanjutnya penelitian J. Xiao, Zhang, Du, and Zhang (2019) menggunakan algoritma Evolutionary Multiobjective Route Grouping. Selain itu penelitian Mutar et al. (2020) menggunakan algoritma Ant Colony System Algorithm. Lebih lanjut penelitian Pacheco, Caballero, Laguna, and

Molina (2013) menggunakan algoritma Multiobjective Adaptive Memory Programming and Non-dominated Sorting Genetic.

Kemudian penelitian Reiter and Gutjahr (2012) menggunakan algoritma Non- dominated Sorting Genetic -II. Penelitian Sahraeian and Esmaeili (2018)

menggunakan algoritma Mixed Integer Linear Programming. Selain itu penelitian Barma, Dutta, Mukherjee, and Kar (2021) menggunakan Non-dominated Sorting Genetic -II dan Strength Pareto Evolutionary Algorithm. Kemudian pada penelitian Sousa, Biswas, Brito, and Silveira (2011) menggunakan Mixed Integer Linear

(32)

36 Programming. Terakhir pada penelitian Sooktip and Wattanapongsakorn (2015)

menggunakan Non-dominated Sorting Genetic -II.

Berdasarkan algoritma yang digunakan, diketahui bahwa terdapat 5 penelitian yang menggunakan penyelesaian algoritma metaheuristic, 2 penelitian menggunakan algoritma heuristic, 2 penelitian mengimplementasikan algoritma hybrid, dan hanya 1 yang menggunakan algoritma exact. Dapat disimpulkan bahwa

penelitian dengan fungsi tujuan meminimasi konsumsi bahan bakar dan keterlambatan menggunakan algoritma MOHHO masih jarang dilakukan. Karena itu peneliti mengaplikasikan algoritma MOHHO untuk meminimasi konsumsi bahan bakar dan keterlambatan dalam permasalahan Multi-Objective CVRP with time windows.

Referensi

Dokumen terkait

Data-data yang dibutuhkan dalam melakukan analisis dan perhitungan efisiensi reaktor gasifikasi bonggol jagung, diperoleh melalui pengujian yang dilakukan di

Salomo mengatakan bahwa segala usaha yang dilakukan agar ia menjadi raja yang besar adalah sia-sia karena ketika ia mati, ia harus mewariskan semuanya kepada

Hasil penelitian menunjukan bahwa aplikasi disposisi surat berupa website dapat menunjang kebutuhan yang ada menjadi lebih terkomputerisasi pada kehidupan sehari-hari dan

Salah satu kategori YouTube yang mendapatkan perhatian luas dari pengguna adalah yang berkaitan dengan musik, ini bisa dilihat dengan menjamurnya tayangan-tayangan video

ًهع ولاطناو ةلاصناو ٍيّدناو بيَّدنا رىيأ ًهع ٍيعخطَ هبو ٍيًهعنا ّةر لله دًحنا دعب بيأ ٍيعًجا هبحصو هنا ًهعو دًّحي بَ ديض ٍيهضرًناو ءبيبَلاا فرشا Segala puji

Berdasarkan data curah hujan yang diterima dari stasiun / pos hujan kerjasama di Kalimantan Barat, analisis sifat hujan Februari 2017 dapat dilihat pada tabel

Pentingnya belajar grafik fungsi Aljabar di perguruan tinggi adalah menyediakan suatu konteks yang mana mahasiswa dapat melihat bahwa mata kuliah bidang Matematika merupakan

Memulai sebuah usaha, entah itu besar atau kecil memang gampang-gampang susah. Apalagi bagi kita yang belum pernah atau belum berpengalaman dalam bisnis. Sehingga