• Tidak ada hasil yang ditemukan

PENYELESAIAN CAPACITATED VEHICLE ROUTING PROBLEM MENGGUNAKAN ALGORITMA GENETIKA DAN NEAREST NEIGHBOUR PADA PENDISTRIBUSIAN ROTI DI CV JOGJA TRANSPORT.

N/A
N/A
Protected

Academic year: 2017

Membagikan "PENYELESAIAN CAPACITATED VEHICLE ROUTING PROBLEM MENGGUNAKAN ALGORITMA GENETIKA DAN NEAREST NEIGHBOUR PADA PENDISTRIBUSIAN ROTI DI CV JOGJA TRANSPORT."

Copied!
121
0
0

Teks penuh

(1)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Pendistribusian barang merupakan salah satu kegiatan yang sering dilakukan oleh suatu perusahaan tertentu. Aspek yang diperhatikan dalam pendistribusian barang adalah bagaimana cara mendistribusikan barang ke sejumlah pelanggan dengan tujuan mengoptimalkan jarak dan waktu tempuh sehingga dapat meminimumkan total biaya pendistribusian barang. Menentukan rute optimal merupakan salah satu cara untuk meminimumkan total biaya pendistribusian.

Permasalahan menentukan rute optimal dengan tujuan meminimumkan total biaya perjalanan dengan memenuhi kendala-kendala yang diberikan, termasuk dalam permasalahan Traveling Salesman Problem (TSP) yang kemudian berkembang atau diperluas menjadi Vehicle Routing Problem (VRP). VRP didefinisikan sebagai masalah penentuan rute optimal untuk pendistribusian barang/jasa ke pelanggan-pelanggan dengan lokasi yang berbeda dan dengan permintaan yang sudah diketahui, dari satu atau lebih depot yang memenuhi beberapa kendala (Liong et al, 2008).

(2)

2

minimum. Penentuan rute optimum kendaraan tersebut harus memperhatikan beberapa batasan yaitu setiap kendaraan harus memulai rute perjalanan dari depot dan setelah melayani sejumlah pelanggan juga harus kembali ke depot. Setiap pelanggan hanya dilayani tepat satu kali oleh satu kendaraan yang memiliki kapasitas tertentu. Panjang rute yang dilalui oleh setiap kendaraan dalam melayani setiap pelanggan sesuai dengan kapasitasnya agar suatu sistem pelayanan pada penentuan rute distribusi yang optimum menjadi lebih efektif, efisien dan dapat meningkatkan kemampuan perusahaan untuk dapat memenuhi permintaan barang/jasa secara lebih cepat agar kepercayaan dan kepuasan pelanggan meningkat.

Permasalahan penentuan rute kendaraan yang optimum menjadi lebih sulit dengan adanya kendala-kendala seperti batasan kapasitas kendaraan, batasan waktu, dan jumlah depot. Beberapa contoh metode pendekatan yang digunakan untuk menyelesaikan masalah yang kompleks antara lain yaitu Nearest Neighbour, Algoritma Sweep, Algoritma Saving, Algoritma Genetika, dan Algoritma Ant Colony Optimization (ACO).

(3)

3

algoritma ini tidak mempunyai kriteria khusus dalam menyaring kualitas solusi sehingga dapat menghasilkan banyak alternatif solusi dengan nilai objektif yang sama baik. Proses Algoritma Genetika secara umum untuk semua kasus adalah mendefinisikan individu, mendefinisikan nilai fitness, menentukan proses pembangkitan populasi awal, menentukan proses seleksi, menentukan proses perkawinan silang dan mutasi gen yang akan digunakan (Ahmad Basuki, 2003: 4).

Terdapat beberapa metode dalam penentuan proses seleksi, salah satunya adalah Roulette Wheel. Metode seleksi Roulette Wheel merupakan metode yang sangat akurat dalam memilih kromosom untuk dijadikan sebagai induk. Setiap kromosom dalam suatu populasi memiliki tempat yang sesuai dengan proporsinya terhadap total nilai fitnessnya, sehingga semakin besar nilai fitness suatu kromosom maka semakin besar juga kesempatan kromosom tersebut untuk terpilih (Zainudin, 2014). Selain itu, metode seleksi Roulette Wheel ini juga mudah diimplementasikan dalam pemrograman.

(4)

4

terpilih jika bilangan random yang dibangkitkan berada dalam interval kumulatifnya (Zainudin, 2014).

Selanjutnya Rian Anggara Putra (2014) membandingkan antara Metode Sequential Insertion dan Metode Nearest Neighbour dalam penentuan rute kendaraan pengangkut sampah di Kota Yogyakarta. Hasil dari penelitian tersebut menunjukkan bahwa Metode Nearest Neighbour menghasilkan rute yang lebih efektif dibandingkan Metode Sequential Insertion berdasarkan perbandingan efektivitas terhadap volume kapasitas kendaraan dan jarak tempuh. Dipilih Metode Nearest Neighbour karena metode ini memiliki karakteristik pembentukan rute distribusi yang sesuai dengan keadaan nyata pada kondisi di lapangan. Menurut Nissa dkk (2014), Metode Nearest Neighbour merupakan suatu metode yang paling alami dalam menyelesaikan permasalahan Vehicle Routing Problem. Kendaraan bergerak menuju ke pelanggan-pelanggan terdekat yang belum dikunjungi dengan permintaan dari pelanggan-pelanggan tersebut tidak melebihi kapasitas kendaraan, tetapi apabila melebihi maka pengiriman dilakukan lebih dari satu kali namun setelah itu kendaraan menuju depot untuk loading kemudian menuju ke pelanggan terdekat selanjutnya.

(5)

5

55153. CV. Jogja Transport setiap harinya mendistribusikan produk Sari Roti ke berbagai toko di Kotamadya.

Roti adalah suatu jenis makanan yang dibuat dari fermentasi tepung terigu dengan ragi atau bahan pengembang lain yang kemudian dipanggang dalam oven sampai matang (Eddy dan Lilik, 2004). Roti banyak digemari oleh berbagai kalangan usia, mulai anak kecil hingga lanjut usia. Selain dimakan sebagai camilan, roti sering dijadikan makanan utama untuk sarapan sehari-hari. Oleh sebab itu, sekarang ini kebutuhan akan roti sangat tinggi. Dibutuhkan roti yang dengan kandungan yang baik dan terjamin kualitasnya. Sari Roti merupakan sebuah merek roti ternama di Indonesia yang diproduksi oleh PT. Nippon Indosari Corpindo. Saat ini CV. Jogja Transport telah mendistribusikan berbagai jenis Sari Roti seperti roti tawar, roti sandwich, roti sobek dengan varian rasa yang bermacam macam. Data yang digunakan pada penulisan skripsi ini adalah data pendistribusian Sari Roti jenis roti sandwich karena roti jenis ini mempunyai permintaan paling banyak dari pelanggan.

(6)

6

dengan terbentuknya rute yang baru maka waktu tempuh dalam perjalanan akan semakin cepat dan biaya penggunaan bahan bakar kendaraan pun dapat berkurang.

Permasalahan pendistribusian ini dapat dimodelkan dengan Capacitated Vehicle Routing Problem (CVRP) kemudian model tersebut akan diselesaikan menggunakan Algoritma Genetika dan Metode Nearest Neighbour. Hasil yang diperoleh pada penulisan skripsi ini diharapkan dapat dijadikan sebagai rute alternatif dalam proses pendistribusian roti CV Jogja Transport di Kota Yogyakarta agar lebih efektif. Gambar 1.1 berikut menunjukkan diagram alur penelitian ini.

Gambar 1.1 Diagram Alir Penelitian Studi Literatur

Perumusan Masalah ke dalam Model CVRP

Penyelesaian Model dengan Nearest Neighbour Penyelesaian Model dengan

Algoritma Genetika

Analisis dan Interpretasi Hasil Penyelesaian

(7)

7

1.2 Pembatasan Masalah

Beberapa hal yang menjadi batasan permasalahan dalam skripsi ini adalah sebagai berikut.

1. Kendaraan yang digunakan untuk mendistribusikan memiliki kapasitas maksimum seragam.

2. Permasalahan Capacitated Vehicle Routing Problem dengan satu depot. 3. Tidak ada batasan waktu dan total jarak pada suatu rute.

4. Metode seleksi yang digunakan dalam Algoritma Genetika adalah seleksi Roulette Wheel.

1.3 Perumusan Masalah

Berdasarkan latar belakang masalah dapat dirumuskan permasalahan sebagai berikut:

1. Bagaimana membentuk model matematika Capacitated Vehicle Routing Problem untuk distribusi roti di CV. Jogja Transport?

2. Bagaimana menyelesaikan model dengan Algoritma Genetika dan Metode Nearest Neighbour?

(8)

8

1.4 Tujuan Penelitian

Adapun tujuan dari penelitian ini adalah:

1. Membentuk model matematika Capacitated Vehicle Routing Problem untuk distribusi roti di CV. Jogja Transport.

2. Menyelesaikan model dengan Algoritma Genetika dan Metode Nearest Neighbour. 3. Membandingkan hasil penyelesaian model dengan Algoritma Genetika dan Metode

Nearest Neighbour.

1.5 Manfaat Penelitian

Berbagai manfaat dari skripsi ini adalah sebagai berikut.

1. Bagi perusahaan

Membantu perusahaan dalam menentukan rute pendistribusian yang efektif dengan batasan kapasitas kendaraan yang ditentukan sehingga dapat meminimumkan biaya distribusi.

2. Bagi pembaca

Menambah pengetahuan tentang Capacitated Vehicle Routing Problem, Algoritma Genetika, dan Metode Nearest Neighbour sebagai referensi untuk pengembangan aplikasi selanjutnya.

3. Bagi penulis

(9)

9

BAB II

KAJIAN TEORI

Berikut diberikan beberapa teori pendukung untuk pembahasan selanjutnya.

2.1. Distribusi

Menurut Chopra dan Meindl (2010:86), distribusi adalah suatu kegiatan untuk memindahkan barang dari pihak supplier kepada pihak pelanggan dalam suatu supply chain. Distribusi merupakan suatu kunci dari keuntungan yang akan diperoleh perusahaan karena distribusi secara langsung akan mempengaruhi biaya dari supply chain dan kebutuhan pelanggan. Jaringan distribusi yang tepat dapat digunakan untuk mencapai berbagai macam tujuan dari supply chain, mulai dari biaya yang rendah sampai respon yang tinggi terhadap permintaan pelanggan.

(10)

10

pendistribusian, namun ada kendala time window dan kendala maksimum jarak tempuh tiap kendaraan, disamping kendala lain seperti kapasitas atau kendala lainnya.

2.2. Graf

Berikut akan diberikan pengertian graf dan jenis – jenis graf.

2.2.1. Pengertian Graf

Menurut Rinaldi (2010:356), sebuah graf � = �, � terdiri atas sekumpulan objek � = {� , � , … , �} yang disebut himpunan simpul, dan sebuah himpunan lain

� = { , , … , �} yang merupakan himpunan rusuk, sedemikian hingga setiap rusuk

dikaitkan dengan suatu pasangan tak terurut � , � .

Banyaknya simpul dalam Graf G disebut order Graf G, sedangkan banyaknya rusuk dalam Graf G disebut size atau ukuran Graf G. Simpul-simpul pada graf dapat merepresentasikan sebuah objek sembarang seperti kota. Sedangkan rusuk-rusuk pada graf dapat menunjukkan hubungan sembarang seperti ruas jalan raya penghubung antar dua kota.

2.2.2. Jenis – Jenis Graf

Berdasarkan ada atau tidaknya loop atau rusuk ganda pada suatu graf, maka graf digolongkan menjadi dua jenis, yaitu sebagai berikut (Rinaldi, 2010:357):

1. Graf sederhana (Simple Graph)

(11)

11 Contoh 2.1:

Gambar 2.1 Graf G1

Graf � pada Gambar 2.1 adalah graf sederhana dengan

� = { , , , }

� = { , , , , , , , , , }

2. Graf tak-sederhana (Multi Graph)

Graf tak-sederhana adalah graf yang mengandung loop atau rusuk berganda. Contoh 2.2:

Gambar 2.2 Graf G2

Graf � pada Gambar 2.2, adalah graf tak-sederhana dengan

� = { , , , }

� = { = , , = , , = , , = , ,

(12)

12

Rusuk = , dan = , pada Graf � , dinamakan rusuk berganda atau ruas sejajar (multiple edges atau parralel edges), karena kedua rusuk ini menghubungi dua buah titik yang sama, yaitu titik 1 dan titik 2.

2.3. Vehicle Routing Problem

Vehicle Routing Problem (VRP) didefinisikan sebagai masalah penentuan rute optimal untuk pendistribusian barang/jasa ke pelanggan-pelanggan dengan lokasi yang berbeda dengan permintaan yang sudah diketahui, dari satu atau lebih depot yang memenuhi beberapa kendala (Liong et al, 2008). Satu pelanggan tidak dapat dilayani oleh lebih dari satu kendaraan dalam satu periode permintaan sehingga akan ada rute untuk memenuhi permintaan pelanggan karena keterbatasan kapasitas kendaraan. Hal tersebutlah yang menyebabkan VRP sering disebut sebagai permasalahan -TSP (Chairul dkk, 2014).

Menurut Toth dan Vigo (2002) terdapat empat tujuan umum dari VRP, yaitu sebagai berikut:

1. Meminimumkan biaya transportasi, terkait dengan jarak dan biaya tetap yang berhubungan dengan kendaraan.

2. Meminimumkan jumlah kendaraan (atau pengemudi) yang dibutuhkan untuk melayani setiap pelanggan.

3. Menyeimbangkan rute, untuk waktu perjalanan dan muatan kendaraan.

(13)

13

(sumber : Takes, 2010:12)

Gambar 2.3 Contoh Solusi VRP dengan 13 Pelanggan dan 3 Kendaraan

Terdapat beberapa variasi dalam permasalahan utama VRP (Toth dan Vigo, 2002) yaitu:

1. Capacitated Vehicle Routing Problem (CVRP)

CVRP merupakan jenis VRP yang setiap kendaraannya memiliki kapasitas terbatas.

2. Vehicle Routing Problem with Pick up and Delivery (VRPPD)

VRPPD merupakan jenis VRP dengan pelayanan jemput dan pelayanan antar dalam setiap permintaan pelanggan.

3. Distance Constrained Vehicle Routing Problem (DCVRP)

DCVRP merupakan jenis VRP dengan kendala batasan panjang rute. 4. Vehicle Routing Problem with Multiple Depot (MDVRP)

MDVRP merupakan jenis VRP yang memiliki banyak depot dalam melakukan pelayanan terhadap pelanggan.

(14)

14

SDVRP merupakan jenis VRP dimana pelayanan terhadap pelanggan dilakukan dengan menggunakan kendaraan yang berbeda-beda.

6. Vehicle Routing Problem with Time Windows (VRPTW)

VRPTW merupakan jenis VRP dengan kendala kapasitas kendaraan dan batasan waktu (time windows) pada setiap pelanggan dan depot.

2.4. Capacitated Vehicle Routing Problem

Capacitated Vehicle Routing Problem (CVRP) merupakan salah satu jenis permasalahan VRP. CVRP memiliki kendala berupa batasan kapasitas angkut kendaraan. Setiap kendaraan dengan kapasitas angkut tertentu harus melayani permintaan pelanggan tanpa melebihi kapasitas angkut kendaraan tersebut. Selain meminimumkan total jarak tempuh kendaraan, CVRP juga bertujuan untuk meminimumkan jumlah kendaraan yang digunakan dalam melayani pelanggan.

(15)

15

Pemodelan untuk CVRP memiliki parameter-parameter sebagai berikut : : banyaknya jumlah pelanggan,

: kapasitas setiap kendaraan,

: jumlah permintaan pelanggan ; dan

: jarak tempuh perjalanan dari pelanggan i ke pelanggan j.

Model matematika dari CVRP didefinisikan sebagai suatu graf � = �, � . Himpunan � terdiri atas gabungan himpunan pelanggan � dan depot, � =

{ , , … , , + }. Himpunan � berupa pelanggan 1 sampai dengan , � =

{ , … , }, dan depot dinyatakan dengan 0 dan + . Jaringan jalan yang dilalui oleh kendaraan dinyatakan sebagai himpunan rusuk berarah � yaitu penghubung antar pelanggan, � = { , | , ∈ �, ≠ }. Semua rute dimulai dan berakhir di depot. Himpunan kendaraan � merupakan kumpulan kendaraan yang homogen dengan kapasitas �. Setiap pelanggan untuk setiap ∈ � memiliki permintaan sehingga panjang rute dibatasi oleh kapasitas kendaraan. Setiap rusuk , ∈ � memiliki jarak tempuh , dan juga bahwa = = 0.

Untuk setiap , ∈ �, ≠ ≠ dan untuk setiap kendaraan didefinisikan variabel:

� =

(16)

16

Meminimumkan � = ∑ ∑ ∑ � ∈� ∈� ∈�

.

dengan kendala

1. Setiap pelanggan dikunjungi tepat satu kali oleh suatu kendaraan:

∑ ∑ � ∈� ∈�

= , ∀ ∈ � .

2. Total permintaan semua pelanggan dalam satu rute tidak melebihi kapasitas kendaraan: ∑ ∈� ∑ � ∈� ≤ �, ∀ ∈ � .

3. Setiap rute berawal dari depot 0:

∑ � ∈�

= , ∀ ∈ � .

4. Setiap kendaraan yang mengunjungi satu pelanggan pasti akan meninggalkan pelanggan tersebut: ∑ � ∈� − ∑ � ∈� = , ∀ ∈ � .

5. Setiap rute berakhir di depot + :

∑ � �+ ∈�

= , ∀ ∈ � .

6. Variabel � merupakan variable biner :

(17)

17

Menurut Takes (2010:14), terdapat dua jenis CVRP. Jenis CVRP yang pertama adalah Homogeneous CVRP. Homogeneous CVRP adalah masalah CVRP dengan kapasitas tiap kendaraan sama. Jenis CVRP yang kedua adalah Heterogeneous CVRP. Heterogeneous CVRP adalah masalah CVRP yang kapasitas kendaraannya berbeda satu sama lain.

2.5. Algoritma Genetika

Berikut akan diberikan pengertian, istilah-istilah, komponen, dan parameter dari Algoritma Genetika.

2.5.1 Pengertian Algoritma Genetika

Algoritma Genetika merupakan suatu metode heuristic yang dikembangkan berdasarkan prinsip genetika dan proses seleksi alamiah Teori Evolusi Darwin. Metode optimasi dikembangkan oleh John Holland sekitar tahun 1960-an dan dipopulerkan oleh salah seorang mahasiswanya, David Goldberg, pada tahun 1980-an (Haupt dan Haupt, 2004:22).

(18)

18 2.5.2 Istilah – istilah dalam Algoritma Genetika

Berikut diberikan beberapa definisi dari istilah penting yang perlu diperhatikan dalam menyelesaikan masalah menggunakan Algoritma Genetika (Satriyanto, 2009:70):

1. Gen (Genotype) merupakan sebuah nilai yang menyatakan satuan dasar yang membentuk arti tertentu dalam satu kromosom. Gen dapat direpresentasikan dengan bilangan biner, float, integer, karakter, dan kombinatorial.

2. Kromosom merupakan gabungan gen-gen yang membentuk nilai tertentu.

3. Individu merupakan suatu nilai atau keadaan yang menyatakan salah satu solusi yang mungkin dari permasalahan yang diangkat.

4. Populasi merupakan sekumpulan individu yang akan diproses bersama dalam satu siklus proses evolusi. Populasi terdiri dari sekumpulan kromosom.

5. Induk adalah kromosom yang akan dikenai operasi genetika (crossover).

6. Crossover atau pindah silang adalah operasi genetika yang mewakili proses perkembangbiakan antar individu.

7. Offspring yang juga dikenal sebagai keturunan atau anak adalah kromosom yang merupakan hasil dari pindah silang.

(19)

19

9. Proses seleksi merupakan proses yang mewakili proses seleksi alam (natural selection) dari teori Darwin. Proses ini dilakukan untuk menentukan induk dari operasi pindah silang yang akan dilakukan untuk menghasilkan anak.

10. Nilai fitness merupakan penilaian yang menentukan bagus tidaknya sebuah kromosom.

11. Fungsi evaluasi adalah fungsi yang digunakan untuk menentukan nilai dari nilai fitness. Fungsi evaluasi ini merupakan sekumpulan kriteria-kriteria tertentu dari permasalahan yang ingin diselesaikan.

12. Generasi merupakan satuan dari populasi setelah mengalami operasi-operasi genetika, berkembang biak, dan menghasilkan keturunan. Kromosom-kromosom yang mempunyai nilai fitness yang rendah dan memiliki peringkat dibawah nilai minimal akan dihapus dari populasi pada akhir dari setiap generasi, untuk menjaga agar jumlah kromosom dalam populasi tetap konstan.

2.5.3 Komponen Algoritma Genetika

Algoritma Genetika memiliki beberapa komponen, diantaranya yaitu: 1. Penyandian Gen (Pengkodean)

(20)

20

Penelitian ini menggunakan teknik pengkodean permutasi pada representasi gen, yaitu tiap gen dalam kromosom merepresentasikan suatu urutan (Samuel, dkk, 2005).

Contoh 2.3: kromosom 1 = 2 3 4 5 1 6 7

Keterangan: kromosom 1 berisi urutan secara acak gen kesatu sampai ke tujuh. Gen direpresentasikan dengan sebuah bilangan dan bilangan-bilangan tersebut representasi dari masing-masing kota.

2. Membangkitkan Populasi Awal

Membangkitkan populasi awal dilakukan dengan membangkitkan sejumlah individu secara acak atau melalui prosedur tertentu. Ukuran populasi tergantung pada masalah yang akan diselesaikan dan jenis operator genetika yang akan diterapkan. Setelah ukuran populasi ditentukan, kemudian dilakukan pembangkitan populasi awal menggunakan teknik tertentu (Sri Kusumadewi, 2003: 281).

Teknik dalam pembangkitan populasi awal ini ada beberapa cara, diantaranya adalah random generator, pendekatan tertentu, dan permutasi gen. Skripsi ini menggunakan teknik pembangkitan populasi berupa random generator, yaitu dengan melibatkan pembangkitan bilangan random untuk nilai setiap gen sesuai dengan representasi kromosom yang digunakan.

3. Menentukan Nilai Fitness

(21)

21

tersebut menandakan seberapa optimal solusi yang diperoleh. Algoritma Genetika bertujuan mencari individu dengan nilai fitness tertinggi (Ahmad Basuki, 2003: 6).

Permasalahan CVRP bertujuan meminimalkan jarak, sehingga nilai fitness adalah inversi dari total jarak dari jalur yang didapatkan atau menggunakan rumus:

Nilai fitness =

� (2.8)

atau

Nilai fitness = . − � (2.9) dimana x adalah total jarak dari jalur yang didapatkan.

4. Seleksi

Seleksi bertujuan untuk memilih dua buah kromosom secara proporsional sesuai dengan nilai fitness-nya untuk dijadikan sebagai induk (Michalewicz, 1996:75). Proses pemilihan tersebut dapat dipilih berdasarkan probabilitas dari masing – masing individu. Probabilitas dari setiap individu tersebut ditentukan oleh nilai fitnessnya masing – masing.

Menurut Kusumadewi (2003:105), terdapat beberapa metode yang dapat digunakan dalam melakukan seleksi, yaitu rank-based fitness assignment, roulette wheel selection, stochastic universal sampling, local selection, truncation selection, dan tournament selection. Skripsi ini menggunakan metode seleksi Roulette Wheel.

(22)

22

lingkaran pada roda roulette secara proporsional sesuai dengan nilai fitnessnya. Kromosom yang memiliki nilai fitness lebih besar menempati potongan lingkaran yang lebih besar dibandingkan kromosom bernilai fitness rendah. Sehingga semakin besar nilai fitness suatu kromosom maka semakin besar juga kesempatan kromosom tersebut untuk terpilih. Cara kerja metode seleksi ini yaitu dengan membuat interval nilai kumulatif dari nilai fitness masing masing kromosom dibagi total nilai fitness dari semua kromosom. Sebuah kromosom akan terpilih jika bilangan random yang dibangkitkan berada dalam interval kumulatifnya (Zainudin, 2014). Selain itu, metode seleksi Roulette Wheel ini juga mudah diimplementasikan dalam pemrograman. 5. Crossover (Pindah Silang)

Crossover atau pindah silang merupakan operator Algoritma Genetika yang bertujuan untuk membentuk kromosom baru dengan melibatkan dua induk yang telah terseleksi sebelumnya. Pindah silang akan menghasilkan sepasang anak baru dari dua induk. Setiap pasang induk akan dibangkitkan sebuah bilangan acak. Jika bilangan acak tersebut bernilai kurang dari Probabilitas crossover � antara 0,6 s/d 0,95 maka induk tersebut akan dikenai pindah silang. Jika pindah silang tidak dilakukan, maka nilai dari induk akan diturunkan sepenuhnya kepada anak (Michalewicz, 1996: 35).

(23)

23

Gambar 2.4 Skema alur proses crossover

Teknik crossover yang digunakan dalam skripsi ini adalah teknik order crossover. Order crossover (OX) diperkenalkan oleh Davis (Wira, 2010: 47). Teknik ini dijelaskan dalam contoh sebagai berikut:

Contoh 2.4:

Dari 2 induk diketahui:

Induk 1 = 1 2 3 | 4 5 6 7 |8 9 Induk 2 = 4 5 2 | 1 8 7 6 |9 3

Dibangkitkan 2 bilangan acak sebelum gen Induk 1 dan setelah gen Induk 1. Hal yang sama juga dilakukan untuk Induk 2. Didapatkan anak dengan gen yang sama:

Anak 1 = x x x | 4 5 6 7 |x x Anak 2 = x x x | 1 8 7 6 |x x

ya Induk 1 Induk 2 p = random[0,1]

p < Pc

Crossover

(24)

24

Langkah berikutnya untuk mendapatkan Anak 1 adalah mengurutkan gen yang berada pada Induk 2 dengan urutan gen yang berada pada posisi setelah bilangan acak kedua diikuti dengan gen yang berada pada posisi sebelum bilangan acak pertama dan diakhiri dengan gen yang berada pada posisi diantara kedua bilangan acak.

9-3-4-5-2-1-8-7-6

Kemudian gen yang telah diurutkan tersebut dibandingkan dengan Anak 1. Apabila gen tersebut ada pada Anak 2 maka abaikan gen tersebut dari urutan itu. Kemudian urutan yang baru saja didapat dimasukkan pada anak dengan cara memasukkan urutan gen pada posisi setelah bilangan acak kedua terlebih dahulu dan sisanya dimasukkan pada posisi sebelum bilangan acak pertama. Begitu juga untuk menghasikan Anak 2. Anak 1 diperoleh:

Anak 1 = x x x | 4 5 6 7 |x x Anak 1 = 2 1 8 | 4 5 6 7| 9 3

dengan jalan yang sama dibuat Anak 2 sehingga: Anak 2 = x x x | 1 8 7 6 |x x

Anak 2 = 3 4 5 | 1 8 7 6 |9 2 6. Mutasi

(25)

25

banyaknya gen baru yang akan dimunculkan untuk dievaluasi. Jika � terlalu kecil, banyak gen yang mungkin berguna tidak pernah dievaluasi. Tetapi jika � terlalu besar, maka akan terlalu banyak gangguan acak, sehingga anak akan kehilangan kemiripan dari induknya, dan juga algoritma akan kehilangan kemampuan untuk belajar dari pencarian sebelumnya (Sri Kusumadewi, 2003:296).

Ada beberapa teknik dalam melakukan mutasi. Teknik mutasi yang digunakan dalam skripsi ini adalah teknik swapping mutation. Teknik ini diawali dengan memilih dua bilangan acak kemudian gen yang berada pada posisi bilangan acak pertama ditukar dengan gen yang berada pada bilangan acak kedua dalam probabilitas tertentu (Suyanto, 2005: 65). Secara skematis, proses mutasi dapat dilihat pada gambar 2.5.

Gambar 2.5 Skema alur proses mutasi tidak Individu

p = random[0,1]

p < Pm

(26)

26 7. Elitism

Elitism merupakan proses untuk menjaga agar individu bernilai fitness tertinggi tidak hilang selama evolusi. Proses evolusi merupakan proses Algoritma Genetika mulai dari pembentukan populasi awal hingga evaluasi nilai fitness dari populasi baru yang terbentuk. Elitism dilakukan karena proses seleksi dilakukan secara random sehingga tidak ada jaminan bahwa individu dengan nilai fitness tertinggi akan selalu dipilih. Walaupun individu bernilai fitness tertinggi terpilih, mungkin saja individu tersebut akan menurun nilai fitnessnya karena proses pindah silang atau mutasi. Oleh sebab itu perlu dibuat satu atau beberapa copynya untuk menjaga agar individu bernilai fitness tertinggi tersebut tidak hilang selama evolusi (Suyanto, 2005: 14).

Berikut diberikan skema alur Algoritma Genetika pada Gambar 2.6.

Gambar 2.6 Skema alur Algoritma Genetika Membangkitkan Populasi Awal

Evaluasi Fungsi Tujuan

Individu Terbaik

Seleksi

Perkawinan Silang

Mutasi Optimal

Ya

Tidak Mulai

Selesai

(27)

27 2.5.4 Parameter Algoritma Genetika

Proses Algoritma Genetika membutuhkan parameter – parameter yang ideal untuk digunakan selama pemrosesan Algoritma Genetika. Pemilihan parameter tersebut akan menentukan kinerja Algoritma Genetika dalam memecahkan masalah. Ada empat parameter dasar dari algoritma genetika, yaitu ukuran populasi, jumlah generasi, probabilitas crossover (Pc), dan probabilitas mutasi (Pm).

1. Ukuran populasi

Ukuran populasi menyatakan jumlah kromosom yang ada pada populasi. Ukuran populasi yang ideal berbeda-beda untuk setiap permasalahan. Menurut Obitko (1998), ukuran populasi yang ideal yaitu berkisar antara 20 sampai 30 kromosom. 2. Jumlah Generasi

Jumlah generasi menyatakan jumlah proses yang dijalani untuk suatu rangkaian proses Algoritma Genetika mulai dari proses seleksi, crossover, mutasi hingga pembentukan populasi baru. Jadi proses Algoritma Genetika akan berhenti jika jumlah generasi terpenuhi. terdapat solusi yang dicari yaitu individu dengan nilai fitness terbaik pada generasi terakhir.

3. Probabilitas Crossover (Pc)

(28)

28

antara 80% sampai 95%. Sedangkan menurut Michalewicz (1996:35), probabilitas crossover yang ideal yaitu berkisar antara 60% sampai 95%.

4. Probablitas Mutasi (Pm)

Probabliltas mutasi menyatakan seberapa sering bagian-bagian kromosom akan dimutasikan. Sama halnya seperti proses crossover, proses mutasi juga membangkitkan sebuah bilangan acak p, jika p < Pm maka sebuah gen acak r dimutasi dan sebaliknya. Menurut Obitko (1998), probabilitas mutasi yang ideal yaitu berkisar antara 0,5% sampai 1%. Sedangkan menurut Suyanto (2009:14), probabilitas mutasi yang ideal adalah 1/jumlah gen.

Sri Kusumadewi (2003:283) mengemukakan ada beberapa rekomendasi nilai parameter yang bisa digunakan dalam proses Algoritma Genetika, yaitu sebagai berikut:

a. Untuk permasalahan yang memiliki kawasan solusi cukup besar, De Jong dalam Sri Kusumadewi (2003:283) merekomendasikan untuk nilai parameter kontrol:

(ukupop; Pc; Pm) = (50;0.6;0.001)

b. Bila rata-rata fitness setiap generasi digunakan sebagai indikator, maka Grefenstette dalam Sri Kusumadewi (2003:283) merekomendasikan:

(ukupop; Pc; Pm) = (30;0.95;0.01)

c. Bila fitness dari individu terbaik dipantau pada setiap generasi, maka usulannya adalah:

(ukupop; Pc; Pm) = (80;0.45;0.01)

(29)

29

2.6. Metode Nearest Neighbour

Metode Nearest Neighbour merupakan metode yang digunakan untuk memecahkan masalah pemilihan rute dengan cara mencari jarak terpendek untuk menempuh lokasi pengiriman (Chairul, dkk. 2014). Prinsip dasar dari metode Nearest Neighbour yaitu membentuk rute perjalanan dengan memilih pelanggan yang terdekat dari lokasi awal. Metode Nearest Neighbour pertama kali diperkenalkan pada tahun 1983 dan merupakan metode yang sangat sederhana. Setiap iterasi dilakukan pencarian pelanggan terdekat dengan pelanggan yang terakhir untuk ditambahkan pada akhir rute tersebut. Rute baru dimulai dengan cara yang sama jika tidak terdapat posisi yang fisibel untuk menempatkan pelanggan baru karena kendala kapasitas atau time windows (Braysy & Gendreau, 2005).

Menurut Nissa dkk (2014), metode Nearest Neighbour merupakan suatu metode yang paling alami dalam menyelesaikan permasalahan VRP. Kendaraan bergerak menuju ke pelanggan-pelanggan terdekat yang belum dikunjungi dengan permintaan dari pelanggan tersebut tidak melebihi kapasitas kendaraan, tetapi apabila melebihi maka pengiriman dilakukan lebih dari satu kali namun setelah itu kendaraan menuju depot untuk loading kemudian menuju ke pelanggan terdekat selanjutnya.

Langkah-langkah metode Nearest Neighbour (Pop, 2011) adalah sebagai berikut:

(30)

30

2. Ke pelanggan lain yang memiliki jarak terdekat dari pelanggan yang terpilih sebelumnya dan jumlah pengiriman tidak melebihi kapasitas kendaraan.

a. Apabila ada pelanggan yang terpilih sebagai pelanggan berikutnya dan terdapat sisa kapasitas kendaraan, kembali ke langkah (2).

b. Bila kendaraan tidak memiliki sisa kapasitas, kembali ke langkah (1). c. Bila tidak ada lokasi yang terpilih karena jumlah pengiriman melebihi

kapasitas kendaraan, maka kembali ke langkah (1). Dimulai lagi dari depot dan mengunjungi pelanggan yang belum dikunjungi yang memiliki jarak terdekat.

[image:30.612.146.495.377.681.2]

3. Bila semua pelanggan telah dikunjungi tepat satu kali maka algoritma berakhir. Gambar 2.7 berikut menunjukkan skema alur Metode Nearest Neighbour.

Gambar 2.7. Diagram Alir Metode Nearest Neighbour Secara Umum Ya

Mulai

Depot

Memilih pelanggan yang belum dikunjungi yang memiliki jarak

terdekat dari depot

Selesai

Memilih pelanggan lain yang memiliki jarak terdekat dari pelanggan yang terpilih sebelumnya

Tidak Semua pelanggan

(31)

31

BAB III

PEMBAHASAN

Berikut akan diberikan pembahasan mengenai penyelesaikan CVRP dengan Algoritma Genetika dan Metode Nearest Neighbour pada pendistribusian roti di CV. Jogja Transport.

3.1 Model Matetematika CVRP pada Pendistribusian Roti di CV. Jogja

Transport

CV. Jogja Transport merupakan sebuah perusahaan yang bergerak dalam bidang pendistribusian roti. Roti yang dimaksud di sini adalah produk Sari Roti yang sudah mempunyai nama besar di industri makanan Indonesia. Sari Roti merupakan sebuah produk roti yang memiliki banyak varian jenis roti seperti roti tawar, roti sobek, sandwich, dan lain lain. Pendistribusian roti oleh perusahaan ini dibedakan berdasarkan jenis rotinya.

(32)

32

sedangkan 1 rak dapat memuat maksimal 60 buah roti sandwich, sehingga sebuah sepeda motor dapat mengangkut 7 x 60 = 420 buah roti sandwich. Pukul 09.00 WIB para sales mulai berangkat untuk mendistribusikan roti tersebut.

Pendistribusian yang diteliti pada skripsi ini adalah pendistribuisan roti jenis sandwich karena roti jenis ini mempunyai permintaan paling banyak dari pelanggan. Data yang digunakan adalah data pendistribusian roti sandwich pada hari Sabtu di Kota Yogyakarta. Perusahaan ini biasanya menempuh total jarak sejauh 40 km untuk mendistribusikan semua permintaan roti pada hari Sabtu. Rute yang terbentuk menggunakan Algoritma Genetika dan Nearest Neighbour dikatakan efektif apabila total jarak yang dihasilkan lebih pendek dari 40 km. Terdapat 26 pelanggan di Kota Yogyakarta, data alamat pelanggan, jumlah permintaan roti sandwich, dan jarak antar pelanggan dan depot dapat dilihat pada Lampiran 1, 2, dan 3.

(33)

33

memiliki permintaan sehingga panjang rute dibatasi oleh kapasitas kendaraan. Setiap rusuk , ∈ � memiliki jarak tempuh , dan juga bahwa = = 0.

Asumsi yang digunakan dalam masalah CVRP ini adalah sebagai berikut: 1. Setiap pesanan pelanggan dapat dipenuhi oleh perusahaan dan jumlah permintaan

setiap pelanggan tetap.

2. Jumlah simpul pendistribusian (n) diketahui yaitu berjumlah 27 (26 simpul pelanggan dan 1 simpul depot).

3. Jumlah kendaraan yang tersedia untuk melakukan pendistribusian adalah 2 sepeda motor.

4. Kendaraan yang digunakan mempunyai kapasitas angkut yang sama yaitu 7 buah rak, dimana 1 rak = 60 buah roti sandwich.

5. Setiap pelanggan terhubung satu sama lain dan jarak antar pelanggan simetris

= .

Untuk setiap , ∈ �, ≠ ≠ dan untuk setiap kendaraan didefinisikan variabel :

� =

Formula matematis CVRP untuk pendistribusian roti di CV. Jogja Transport adalah sebagai berikut:

Meminimumkan � = ∑ ∑ ∑ � = = =

(34)

34 dengan kendala

1. Setiap pelanggan dikunjungi tepat satu kali oleh suatu kendaraan:

∑ ∑ � = =

= , ∀ ∈ � − { } .

2. Total permintaan semua pelanggan dalam satu rute tidak melebihi kapasitas kendaraan:

∑ =

∑ � =

, ∀ ∈ � .

3. Setiap rute berawal dari depot 0:

∑ � =

= , ∀ ∈ � .

4. Setiap kendaraan yang mengunjungi satu pelanggan pasti akan meninggalkan pelanggan tersebut:

∑ � =

− ∑ � =

= , ∀ ∈ � .

5. Setiap rute berakhir di depot 27:

∑ � =

= , ∀ ∈ � .

6. Variabel � merupakan variabel biner:

(35)

35

3.2 Penyelesaian Model Matetematika CVRP pada Pendistribusian Roti di

CV. Jogja Transport

[image:35.612.190.449.343.644.2]

Setelah menentukan model matematika CVRP pada pendistribusian Roti di CV. Jogja Transport, langkah selanjutnya adalah menyelesaikan model tersebut. Data pelanggan yang menjadi tujuan pendistribusian beserta jumlah permintaan Roti terlampir pada Lampiran 1 dan 2. Berdasarkan data pelanggan pada Lampiran 1 dan bantuan google maps maka diperoleh letak pelanggan dan depot seperti pada Gambar 3.1.

(36)

36

[image:36.612.194.447.207.508.2]

Gambar 3.1 diasumsikan bahwa setiap jalan memiliki kualitas jalan yang sama dan tingkat kemacetan yang sama. Selanjutnya dilakukan pengambilan lokasi depot dan pelanggan sebagai simpul dan dapat dibuat graf kosong seperti pada gambar 3.2.

Gambar 3.2 Graf Pendistribusian Roti

(37)

37

yang dipilih adalah rute dengan jarak terpendek dan tidak satu jalur, sehingga asumsi = berlaku. Tabel matriks jarak terlampir pada Lampiran 1. Setelah diketahui tabel jarak, maka dapat dilakukan penyelesaian model menggunakan Algoritma Genetika dengan bantuan software Matlab, dan Metode Nearest Neighbour.

3.2.1 Penyelesaian Model Menggunakan Algoritma Genetika

Sebelum memulai untuk menyelesaikan model dengan Algoritma Genetika, akan diberikan beberapa contoh dari istilah penting dalam membangun penyelesaian masalah menggunakan Algoritma Genetika, yaitu sebagai berikut:

1. Gen, direpresentasikan dengan bilangan real yang masing-masing bilangan menunjukkan depot dan pelanggan-pelanggan.

Contoh: Gen 0 = Depot Gen 1 = Pelanggan 1

2. Kromosom, direpresentasikan dengan gabungan dari beberapa gen. Contoh: Kromosom 1 = 6 3 7 5 1 2 4

3. Individu, merupakan kromosom yang membentuk suatu rute perjalanan. Contoh: Individu 1 = 0 4 7 1 6 2 3 5 0

4. Nilai fitness, inversi dari total jarak dari rute yang didapatkan atau 1/x, dimana x adalah total jarak dalam suatu rute.

5. Populasi, direpresentasikan dengan sekumpulan individu.

(38)

38 Individu 2 = 0 2 3 7 5 1 4 6 0

Individu 3 = 0 1 7 4 6 5 2 3 0

Individu 4 = 0 4 6 7 2 5 1 3 0

Individu 5 = 0 5 3 7 6 2 1 4 0

6. Induk, merupakan kromosom yang akan dipindah silang. 7. Anak, merupakan kromosom hasil pindah silang.

8. Generasi, menyatakan satu siklus proses evolusi atau satu iterasi dalam Algoritma Genetika.

Setelah mengetahui beberapa istilah yang akan digunakan dalam Algoritma Genetika, langkah selanjutnya adalah menyelesaikan model CVRP. Berikut merupakan urutan langkah-langkah yang digunakan untuk menyelesaikan CVRP dengan menggunakan Algoritma Genetika:

1. Penyandian Gen (Pengkodean)

[image:38.612.133.505.611.704.2]

Tiap gen dalam kromosom merepresentasikan depot yang merupakan tempat awal pendistribusian dan pelanggan, dengan kata lain gen adalah simpul suatu graf. Berikut merupakan representasi gen yang ditunjukkan oleh tabel 3.1:

Tabel 3.1 Representasi Gen

Gen Depot/Pelanggan Gen Depot/Pelanggan

0 Depot CV. Jogja Transport 14 Toko Irma

1 Pamela 1 15 N Mart

2 Pamela 4 16 Amani MM

(39)

39

Gen Depot/Pelanggan Gen Depot/Pelanggan

4 Pamela 8 18 Toko 62

5 Pamela 2 19 Ramai Mall

6 Karuma 20 HS Camilan

7 Bintaran Mart 21 Toko AFI

8 Kemkid Mart 22 Vivo Mini Market

9 Jogja Mart 23 Kios Dani Blok B2

10 WS Kotagede 24 Kantin Amanah RSI

11 Taman Siswa Mart 25 Progo

12 Sun Mart 26 Kokarda

13 TWIN

2. Membangkitkan Populasi Awal

Langkah ini membangkitkan sejumlah individu secara acak sehingga membentuk satuan populasi. Satu individu terdapat 26 gen yang berisi gen dari 1 sampai 26 yang membentuk rute pendistribusian roti. Dibangkitkan beberapa rute secara acak sesuai dengan ukuran populasi menggunakan software Matlab. Script prosedur pembangkitan populasi awal terdapat pada lampiran 4. Hasil pembangkitan secara acak rute pendistribusian yang membentuk populasi pada generasi awal adalah sebagai berikut dan selengkapnya terdapat pada lampiran 5.

Individu 1 = 22 6 3 16 11 7 17 14 8 5 21 25 26 19 15 1 23 2 4 18 24 13 9 20 10 12

3. Menentukan Nilai Fitness

(40)

40

[image:40.612.182.476.212.486.2]

Ditentukan nilai fitness dari setiap individu dalam populasi menggunakan software matlab. Script prosedur dan perhitungannya terdapat pada lampiran 4. Berikut merupakan nilai fitness yang didapat dari generasi awal.

Tabel 3.2 Nilai Fitness Individu Populasi Awal Individu Nilai Fitness Individu Nilai Fitness

1 0,0091 11 0,0106

2 0,0104 12 0,0097

3 0,0099 13 0,0089

4 0,0109 14 0,0094

5 0,0096 15 0,0090

6 0,0097 16 0,0094

7 0,0096 17 0,0093

8 0,0094 18 0,0114

9 0,0106 19 0,0093

10 0,0090 20 0,0086

Setelah dihitung nilai fitness dari setiap individu dengan bantuan software matlab, maka didapatkan nilai fitness terbaik dari populasi awal yaitu pada individu ke-18 dengan nilai fitness sebesar 0,0114. Individu dengan nilai fitness terbaik dari populasi generasi pertama akan dipertahankan dan dibawa ke generasi selanjutnya. 4. Seleksi

(41)

41

dilakukan proses pindah silang dengan individu lain yang terpilih. Metode yang digunakan dalam proses seleksi ini adalah metode Roulette Wheel selection. Langkah dari metode ini yaitu dengan membuat interval nilai kumulatif dari nilai fitness masing masing kromosom dibagi total nilai fitness dari semua kromosom. Kemudian sebuah kromosom akan terpilih jika bilangan random yang dibangkitkan berada dalam interval kumulatifnya.

Dipilih beberapa induk untuk dilakukan proses crossover dengan metode seleksi Roulette Wheel menggunakan software matlab. Induk-induk yang kemudian terpilih selengkapnya bisa dilihat pada lampiran 6 dan script prosedur seleksi terdapat pada lampiran 4. Berikut merupakan salah satu individu yang terpilih sebagai induk: Induk 1 = Individu 1 = 22 6 3 16 11 7 17 14 8 5 21 25 26

19 15 1 23 2 4 18 24 13 9 20 10 12 Induk 2 = Individu 7 = 18 19 14 9 4 10 20 15 7 26 1 16 3

6 8 24 25 13 23 21 22 5 17 2 11 12 5. Crossover (Pindah Silang)

(42)

42

Pindah silang ini diimplementasikan dengan skema order crossover. Proses pindah silang ditentukan oleh � (Probabilitas Crossover) antara 0,6 s/d 0,95 (Michalewicz, 1996: 35) dan nilai probabilitas pasangan induk. Setiap pasang induk akan diberikan suatu bilangan acak [0,1], jika probabilitas pasangan induk kurang dari � maka dilakukan pindah silang dan berlaku sebaliknya. Apabila tidak terjadi pindah silang maka anak untuk generasi berikutnya adalah induk tersebut.

Berikut hasil pindah silang berupa anak menggunakan software Matlab yang selengkapnya bisa dilihat pada lampiran 7:

Sebelum dilakukan pindah silang:

Induk 1 = Individu 1 = 22 6 3 16 11 7 17 14 8 5 21 25 26

19 15 1 23 2 4 18 24 13 9 20 10 12

Induk 2 = Individu 7 = 18 19 14 9 4 10 20 15 7 26 1 16 3

6 8 24 25 13 23 21 22 5 17 2 11 12

Setelah dilakukan pindah silang, diperoleh sepasang anak sebagai berikut: Anak 1 = 11 7 14 26 19 15 1 4 18 9 20 10 12 6

8 24 25 13 23 21 22 5 17 2 3 16

Anak 2 = 7 26 16 3 6 8 25 21 22 5 17 11 12 19

15 1 23 2 4 18 24 13 9 20 14 10

(43)

43

yang belum ada pada anak 1. Sebaliknya, gen selain gen inti pada anak 2 diisi oleh gen dari induk 1 yang belum ada pada anak 2.

6. Mutasi

Setelah dilakukannya proses pindah silang, anak yang dihasilkan dari proses tersebut selanjutnya akan diproses ke tahap mutasi. Terdapat beberapa teknik mutasi seperti swapping mutation, inversion mutation, reciprocal exchange mutation, dan uniform mutation. Teknik mutasi yang digunakan dalam skripsi ini adalah teknik swapping mutation, karena teknik mutasi ini sangat mudah dan sederhana untuk diimplementasikan. Teknik ini diawali dengan memilih dua bilangan acak kemudian gen yang berada pada posisi bilangan acak pertama ditukar dengan gen yang berada pada bilangan acak kedua dalam probabilitas tertentu (Suyanto, 2005: 65). Proses mutasi dilakukan pada anak hasil pindah silang dengan tujuan untuk memperoleh individu baru sebagai kandidat solusi pada generasi selanjutnya dengan fitness yang lebih baik, dan akhirnya menuju solusi optimum yang diinginkan. Berikut individu hasil mutasi yang diperoleh menggunakan software Matlab dan selengkapnya terdapat pada lampiran 8:

Sebelum di mutasi:

Anak 1 = 11 7 14 26 19 15 1 4 18 9 20 10 12 6 8 24 25 13 23 21 22 5 17 2 3 16

Anak 2 = 7 26 16 3 6 8 25 21 22 5 17 11 12 19 15 1 23 2 4 18 24 13 9 20 14 10

(44)

44

Anak 1 = 11 7 14 26 19 15 5 4 18 9 20 10 12 6 24 8 25 13 23 21 22 1 17 2 3 16

Anak 2 = 7 26 16 3 6 8 25 21 22 5 17 11 12 19 15 1 9 2 4 18 24 13 23 20 14 10

7. Elitism

Setelah langkah-langkah di atas dilakukan, maka langkah selanjutnya adalah membentuk populasi selanjutnya di generasi kedua, proses ini dinamakan sebagai elitism. Proses elitism bertujuan untuk menjaga agar individu bernilai fitness tertinggi tersebut tidak hilang selama proses evolusi. Proses evolusi merupakan proses Algoritma Genetika mulai dari pembentukan populasi awal hingga evaluasi nilai fitness dari populasi baru yang terbentuk. Prosedur pembentukan populasi selanjutnya terdapat dalam lampiran 4. Berikut merupakan hasil pembentukan populasi baru menggunakan software Matlab di generasi kedua yang selengkapnya dapat dilihat pada lampiran 9.

(45)

45

[image:45.612.144.498.213.703.2]

berbeda. Hal ini karena Algoritma Genetika akan selalu menghasilkan solusi yang berbeda dalam setiap proses seleksi. Berikut tabel percobaan dengan menggunakan beberapa nilai ukuran populasi dan jumlah generasi yang berbeda:

Tabel 3.3 Hasil Percobaan Algoritma Genetika Percobaan

ke-

Ukuran Populasi

Jumlah

Generasi Fitness

Total Jarak

1 20

100

0.0164745 60.7

2 30 0.0154083 64.9

3 40 0.0164474 60.8

4 50 0.0155763 64.2

5 20

250

0.0169205 59.1

6 30 0.0186567 53.6

7 40 0.0188324 53.1

8 50 0.018315 54.6

9 20

500

0.0201207 49.7

10 30 0.0202429 49.4

11 40 0.018622 53.7

12 50 0.0192308 52

13 20

1000

0.0218818 45.7

14 30 0.0220751 45.3

15 40 0.0229358 43.6

16 50 0.0215054 46.5

17 20

2500

0.02457 40.7

18 30 0.0238663 41.9

19 40 0.0217865 45.9

20 50 0.026455 37.8

(46)

46 Percobaan ke- Ukuran Populasi Jumlah

Generasi Fitness

Total Jarak

22 30 0.0269542 37.1

23 40 0.0265957 37.6

24 50 0.0228311 43.8

25 20

7500

0.0286533 34.9

26 30 0.0257069 38.9

27 40 0.0273224 36.6

28 50 0.0252525 39.6

29 20

10000

0.0248756 40.2

30 30 0.025974 38.5

31 40 0.0240385 41.6

32 50

0.0229885 43.5

Tabel 3.3 merupakan hasil percobaan Algoritma Genetika dengan beberapa ukuran populasi random sesuai rekomendasi parameter Algoritma Genetika pada bab sebelumnya yaitu 20, 30, 40, dan 50. Jumlah iterasi yang digunakan adalah 100, 250, 500, 1000, 2500, 5000, 7500, dan 10000. Parameter yang digunakan dibuat sama yaitu dengan probabilitas crossover 0,65 dan probabilitas mutation 0,038. Probabilitas crossover sebesar 0,65 berarti peluang suatu individu akan dikenai proses crossover adalah sebesar 65%. Sedangkan probabilitas mutation sebesar 0,038 berarti peluang suatu gen akan dimutasi adalah sebesar 3,8%.

[image:46.612.144.500.110.387.2]
(47)

47

dengan ukuran 40 populasi nilai fitness terbaik yang dihasilkan sebesar 0,0273224 pada iterasi ke-7500, sedangkan dengan ukuran 50 populasi nilai fitness terbaik yang dihasilkan sebesar 0,026455 pada iterasi ke-2500.

Dapat dilihat dari percobaan yang telah dilakukan bahwa ukuran populasi dan jumlah generasi sangat mempengaruhi solusi yang dihasilkan. Pada permasalahan ini, semakin besar jumlah generasi, maka peluang untuk mendapatkan solusi yang optimal semakin tinggi, dan sebaliknya. Sedangkan ukuran populasi yang besar tidak menjamin solusi yang dihasilkan akan semakin baik. Hal ini terlihat dari tabel percobaan dengan jumlah generasi sebanyak 7500 bahwa solusi yang dihasilkan ukuran populasi paling kecil yaitu 20 lebih baik dari solusi yang dihasilkan dengan ukuran populasi yang lebih besar lainnya. Sementara dengan jumlah generasi sebanyak 2500, solusi yang dihasilkan ukuran populasi paling besar yaitu 50 lebih baik dari solusi yang dihasilkan dengan ukuran populasi yang lebih kecil lainnya. Dibutuhkan ukuran populasi yang tepat pada setiap permasalahan untuk mendapatkan solusi yang optimal.

Dapat disimpulkan bahwa solusi optimal yang dihasilkan oleh setiap iterasi dapat berubah. Hal ini disebabkan karena setiap generasi yang dibentuk dari generasi sebelumnya sangat dipengaruhi oleh populasi awal, seleksi, pindah silang, dan mutasi. Sehingga di setiap proses generasi akan selalu dihasilkan solusi optimal yang berbeda-beda. Proses tersebut akan selalu berulang-ulang hingga didapatkan individu dengan nilai fitness terbaik.

(48)

48

[image:48.612.150.492.246.511.2]

merupakan nilai fitness terbaik yang dapat dihasilkan oleh Algoritma Genetika, artinya nilai fitness yang didapatkan belum mencapai nilai fitness optimum. Nilai fitness terbaik hanya mencapai 0,0286533. dengan total jarak tempuh 34,9 km. Berikut grafik percobaan ke-25 seperti gambar 3.3:

Gambar 3.3 Grafik pergerakan nilai fitness

Kurva pada Gambar 3.3 merupakan pergerakan nilai fitness hingga generasi ke-7500. Dan kurva yang berada dibawah merupakan pergerakan nilai rata-rata fitness dari 7500 generasi. Pergerakan nilai fitness akan semakin baik dan konstan dari generasi ke generasi dan mencapai konvergen di generasi ke-7000, untuk generasi setelah 7000 sampai generasi ke-7500 tetap, dan diperoleh nilai fitness terbaik sebesar 0,0286533,

1000 2000 3000 4000 5000 6000 7000 8000 9000 0

0.005 0.01 0.015 0.02 0.025 0.03

fitness terbaik: 0.028653 fitness rata-rata: 0.013556 panjang jalur terbaik: 34.900 ukuran populasi: 20 probabilitas mutasi: 0.038

generasi

fi

tn

e

s

(49)

49

[image:49.612.114.527.191.456.2]

sehingga didapatkan solusi optimal yaitu rute dengan jarak tempuh minimum. Berikut merupakan rute yang dihasilkan pada percobaan ke-25 seperti pada tabel 3.4:

Tabel 3.4 Pembagian rute percobaan ke-25

Pembagian Rute Jarak

Tempuh

Jumlah Permintaan

1

0 4 2 10 17 16 23 1 24 5 11 6 0

39,5 km

353 roti 0 7 25 19 15 26 3 22 13 12 18 8

14 20 9 21 0 410 roti

2

0 4 2 10 17 16 23 1 24 5 11 6 7 0

41,9 km

358 roti 0 25 19 15 26 3 22 13 12 18 8

14 20 9 21 0 405 roti

3

0 4 2 10 17 16 23 1 24 5 11 6 7 25 0

42,7 km

393 roti 0 19 15 26 3 22 13 12 18 8 14

20 9 21 0 370 roti

Berdasarkan tabel 3.4 dapat diketahui solusi dari model CVRP pada pendistribusian roti di CV. Jogja Transport yaitu:

Rute 1: 0 4 2 10 17 16 23 1 24 5 11 6 0,

Depot – Pamela 8 – Pamela 2 – WS Kotagede – Betta Swalayan – Amani MM – Kios Dani Blok B2 – Pamela 1 – Kantin Amanah RSI – Pamela 2 – Taman Siswa Mart – Karuma – Depot.

Rute 2: 0 7 25 19 15 26 3 22 13 12 18 8 14 20 9 21 0

(50)

50

[image:50.612.219.456.166.446.2]

– Jogja Mart – Toko Afi – Depot, dengan total jarak tempuh kedua rute tersebut yaitu 39,5 km.

Gambar 3.4 Rute Pendistribusian dengan Algoritma Genetika

Keterangan: : Rute 1

: Rute 2

3.2.2 Penyelesaian Model Menggunakan Metode Nearest Neighbour

(51)

51

motor � . Berikut langkah-langkah pembentukan rute pendistribusian roti dengan Metode Nearest Neighbour.

1. Pembentukan Rute Pertama ( = 1)

Pada pembentukan rute pertama, sales mengawali perjalanan dari depot CV. Jogja Transport (0) kemudian pelanggan berturut-turut dilayani sesuai dengan kapasitas angkut maksimum kendaraan ��� � = hingga mengakhiri perjalanan kembali ke depot. Adapun langkah-langkah pembentukan rute pertama sebagai berikut: a. Pada langkah ini, karena sales mengawali perjalanan dari depot (0), maka dipilih pelanggan yang paling dekat dengan 0. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 0 adalah pelanggan 21 dengan jarak 0,4 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 0 dengan kapasitas angkut 5 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 21 masuk dalam kategori layak, sehingga

rute 0 − 21 − 0 dianggap layak.

b. Pada langkah ini, karena lokasi terakhir yang dikunjungi sales adalah pelanggan 21, maka dipilih pelanggan yang paling dekat dengan 21. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 21 adalah pelanggan 4 dengan jarak 0,9 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 4 – 0 dengan kapasitas angkut 5 + 45 = 50 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 4

(52)

52

c. Pada langkah ini, karena lokasi terakhir yang dikunjungi sales adalah pelanggan 4, maka dipilih pelanggan yang paling dekat dengan 4. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 4 adalah pelanggan 6 dengan jarak 1,3 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 4 – 6 – 0 dengan kapasitas angkut 50 + 50 = 100 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 6

masuk dalam kategori layak, sehingga rute 0 − 21 – 4 – 6 – 0 dianggap layak. d. Pada langkah ini, karena lokasi terakhir yang dikunjungi sales adalah pelanggan 6,

maka dipilih pelanggan yang paling dekat dengan 6. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 6 adalah pelanggan 11 dengan jarak 0,9 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 4 – 6 – 11 - 0 dengan kapasitas angkut 100 + 35 = 135 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan

11 masuk dalam kategori layak, sehingga rute 0 − 21 – 4 – 6 – 11 - 0 dianggap layak.

e. Pada langkah ini, karena lokasi terakhir yang dikunjungi sales adalah pelanggan 11, maka dipilih pelanggan yang paling dekat dengan 11. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 11 adalah pelanggan 7 dengan jarak 0,8 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 4 – 6

(53)

53

pelanggan 7 masuk dalam kategori layak, sehingga rute 0 − 21 – 4 – 6 – 11 – 7 - 0 dianggap layak.

f. Pada langkah ini, karena lokasi terakhir yang dikunjungi sales adalah pelanggan 7, maka dipilih pelanggan yang paling dekat dengan 7. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 7 adalah pelanggan 25 dengan jarak 1 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 4 – 6 – 11 – 7

– 25 - 0 dengan kapasitas angkut 140 + 35 = 175 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan

pelanggan 25 masuk dalam kategori layak, sehingga rute 0 − 21 – 4 – 6 – 11 – 7 – 25 - 0 dianggap layak.

g. Pada langkah ini, karena lokasi terakhir yang dikunjungi sales adalah pelanggan 25, maka dipilih pelanggan yang paling dekat dengan 25. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 25 adalah pelanggan 19 dengan jarak 0,9 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 4 – 6

– 11 – 7 – 25 – 19 - 0 dengan kapasitas angkut 175 + 40 = 215 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka

pemilihan pelanggan 19 masuk dalam kategori layak, sehingga rute 0 − 21 – 4 – 6

– 11 – 7 – 25 – 19 - 0 dianggap layak.

(54)

54

dengan jarak 0,7 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 4 – 6

– 11 – 7 – 25 – 19 – 18 - 0 dengan kapasitas angkut 215 + 13 = 228 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 18 masuk dalam kategori layak, sehingga rute 0 − 21 – 4 – 6 – 11 – 7 – 25 – 19 – 18 - 0 dianggap layak.

i. Pada langkah ini, karena lokasi terakhir yang dikunjungi sales adalah pelanggan 18, maka dipilih pelanggan yang paling dekat dengan 18. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 18 adalah pelanggan 8 dengan jarak 0,6 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 4 – 6

– 11 – 7 – 25 – 19 – 18 – 8 - 0 dengan kapasitas angkut 228 + 45 = 273 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 8 masuk dalam kategori layak, sehingga rute 0

− 21 – 4 – 6 – 11 – 7 – 25 – 19 – 18 – 8 – 0 dianggap layak.

j. Pada langkah ini, karena lokasi terakhir yang dikunjungi sales adalah pelanggan 8, maka dipilih pelanggan yang paling dekat dengan 8. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 8 adalah pelanggan 12 dengan jarak 0,6 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 4 – 6 – 11 – 7 – 25 – 19 – 18 – 8 - 12 – 0 dengan kapasitas angkut 273 + 12 = 285 buah roti

��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 12 masuk dalam kategori layak, sehingga rute 0

(55)

55

k. Pada langkah ini, karena lokasi terakhir yang dikunjungi sales adalah pelanggan 12, maka dipilih pelanggan yang paling dekat dengan 12. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 12 adalah pelanggan 15 dengan jarak 0,7 km. Dengan demikian rute yang terbentuk 0 − 21 – 4 – 6 – 11 – 7

– 25 – 19 – 18 – 8 - 12 – 15 - 0 dengan kapasitas angkut 285 + 25 = 310 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 15 masuk dalam kategori layak, sehingga rute 0

− 21 – 4 – 6 – 11 – 7 – 25 – 19 – 18 – 8 - 12 – 15 – 0 dianggap layak.

l. Pada langkah ini, karena lokasi terakhir yang dikunjungi sales adalah pelanggan 15, maka dipilih pelanggan yang paling dekat dengan 15. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 15 adalah pelanggan 26 dengan jarak 2 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 4 – 6 – 11 – 7 – 25 – 19 – 18 – 8 - 12 – 15 – 26 - 0 dengan kapasitas angkut 310 + 50 = 360 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 26 masuk dalam kategori layak,

sehingga rute 0 − 21 – 4 – 6 – 11 – 7 – 25 – 19 – 18 – 8 - 12 – 15 – 26 - 0 dianggap layak.

(56)

56

– 11 – 7 – 25 – 19 – 18 – 8 - 12 – 15 – 26 – 3 - 0 dengan kapasitas angkut 360 + 40 = 400 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 3 masuk dalam kategori layak,

sehingga rute 0 − 21 – 4 – 6 – 11 – 7 – 25 – 19 – 18 – 8 - 12 – 15 – 26 – 3 - 0 dianggap layak.

(57)

57

masuk dalam kategori layak, sehingga rute 0 − 21 – 4 – 6 – 11 – 7 – 25 – 19 – 18 – 8 - 12 – 15 – 26 – 3 – 23 - 0 dianggap layak.

o. Pada langkah ini, karena lokasi terakhir yang dikunjungi sales adalah pelanggan 23, maka dipilih pelanggan yang paling dekat dengan 23. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 23 adalah pelanggan 16 dengan jarak 0,6 km. Dengan demikian rute yang terbentuk menjadi 0 − 21 – 4 – 6

– 11 – 7 – 25 – 19 – 18 – 8 - 12 – 15 – 26 – 3 – 23 - 16 - 0 dengan kapasitas angkut 410 + 10 = 420 buah roti = ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � = ��� �, maka pemilihan pelanggan 16 masuk dalam kategori

layak, sehingga rute 0 − 21 – 4 – 6 – 11 – 7 – 25 – 19 – 18 – 8 - 12 – 15 – 26 – 3 – 23 - 16 - 0 dianggap layak dan tidak dapat disisipi pelanggan lagi.

Dengan demikian rute pertama yang terbentuk adalah 0 – 21 – 4 – 6 – 11 – 7 – 25 – 19 – 18 – 8 - 12 – 15 – 26 – 3 – 23 - 16 – 0. Total jarak yang ditempuh pada rute pertama adalah 20 km dengan melayani 15 pelanggan. Dengan demikian, pelanggan yang belum dilayani ada sebanyak 11 pelanggan. Oleh karena masih terdapat pelanggan yang belum dilayani, maka akan dibentuk rute kedua sebagai berikut. 2. Pembentukan Rute Kedua ( = 2)

(58)

58

a. Pada langkah ini, karena sales mengawali perjalanan dari depot (0), maka dipilih pelanggan yang paling dekat dengan 0. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 0 adalah pelanggan 2 dengan jarak 2 km. Dengan demikian rute yang terbentuk menjadi 0 − 2 – 0 dengan kapasitas angkut 45 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 2 masuk dalam kategori layak,

sehingga rute 0 − 2 − 0 dianggap layak.

b. Pada langkah ini, karena sales mengawali perjalanan dari depot 2, maka dipilih pelanggan yang paling dekat dengan 2. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 2 adalah pelanggan 10 dengan jarak 1.4 km. Dengan demikian rute yang terbentuk menjadi 0 − 2 – 10 - 0 dengan kapasitas angkut 45 + 35 = 75 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 10 masuk dalam

kategori layak, sehingga rute 0 − 2 – 10 - 0 dianggap layak.

c. Pada langkah ini, karena sales mengawali perjalanan dari depot 10, maka dipilih pelanggan yang paling dekat dengan 10. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 10 adalah pelanggan 17 dengan jarak 0.8 km. Dengan demikian rute yang terbentuk menjadi 0 − 2 – 10 – 17 - 0 dengan kapasitas angkut 75 + 15 = 90 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 17 masuk dalam

(59)

59

d. Pada langkah ini, karena sales mengawali perjalanan dari depot 17, maka dipilih pelanggan yang paling dekat dengan 17. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 17 adalah pelanggan 24 dengan jarak 2.1 km. Dengan demikian rute yang terbentuk menjadi 0 − 2 – 10 – 17 – 24 – 0 dengan kapasitas angkut 90 + 13 = 103 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 24

masuk dalam kategori layak, sehingga rute 0 − 2 – 10 – 17 – 24 – 0 dianggap layak. e. Pada langkah ini, karena sales mengawali perjalanan dari depot 24, maka dipilih pelanggan yang paling dekat dengan 24. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 24 adalah pelanggan 5 dengan jarak 0.5 km. Dengan demikian rute yang terbentuk menjadi 0 − 2 – 10 – 17 – 24 – 5 - 0 dengan kapasitas angkut 103 + 45 = 148 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 5

masuk dalam kategori layak, sehingga rute 0 − 2 – 10 – 17 – 24 – 5 - 0 dianggap layak.

(60)

60

masuk dalam kategori layak, sehingga rute 0 − 2 – 10 – 17 – 24 – 5 – 1 - 0 dianggap layak.

g. Pada langkah ini, karena sales mengawali perjalanan dari depot 1, maka dipilih pelanggan yang paling dekat dengan 1. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 1 adalah pelanggan 22 dengan jarak 4.6 km. Dengan demikian rute yang terbentuk menjadi 0 − 2 – 10 – 17 – 24 – 5 – 1 – 22 - 0 dengan kapasitas angkut 203 + 37 = 240 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan

22 masuk dalam kategori layak, sehingga rute 0 − 2 – 10 – 17 – 24 – 5 – 1 – 22 - 0 dianggap layak.

h. Pada langkah ini, karena sales mengawali perjalanan dari depot 22, maka dipilih pelanggan yang paling dekat dengan 22. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 22 adalah pelanggan 13 dengan jarak 2 km. Dengan demikian rute yang terbentuk menjadi 0 − 2 – 10 – 17 – 24 – 5 – 1 – 22 – 13 - 0 dengan kapasitas angkut 240 + 40 = 280 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan

pelanggan 13 masuk dalam kategori layak, sehingga rute 0 − 2 – 10 – 17 – 24 – 5

– 1 – 22 – 13 - 0 dianggap layak.

(61)

61

Dengan demikian rute yang terbentuk menjadi 0 − 2 – 10 – 17 – 24 – 5 – 1 – 22 – 13 – 14 - 0 dengan kapasitas angkut 280 + 8 = 288 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka pemilihan pelanggan 14 masuk dalam kategori layak, sehingga rute 0 − 2 – 10 – 17 – 24 – 5

– 1 – 22 – 13 – 14 - 0 dianggap layak.

j. Pada langkah ini, karena sales mengawali perjalanan dari depot 14, maka dipilih pelanggan yang paling dekat dengan 14. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 14 adalah pelanggan 20 dengan jarak 2.1 km. Dengan demikian rute yang terbentuk menjadi 0 − 2 – 10 – 17 – 24 – 5 – 1 – 22 – 13 – 14 – 20 - 0 dengan kapasitas angkut 288 + 5 = 293 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka

pemilihan pelanggan 20 masuk dalam kategori layak, sehingga rute 0 − 2 – 10 – 17

– 24 – 5 – 1 – 22 – 13 – 14 – 20 - 0 dianggap layak.

k. Pada langkah ini, karena sales mengawali perjalanan dari depot 20, maka dipilih pelanggan yang paling dekat dengan 20. Berdasarkan Matriks Jarak (Lampiran 3), pelanggan yang paling dekat dengan 20 adalah pelanggan 9 dengan jarak 2.2 km. Dengan demikian rute yang terbentuk menjadi 0 − 2 – 10 – 17 – 24 – 5 – 1 – 22 – 13 – 14 – 20 – 9 - 0 dengan kapasitas angkut 293 + 50 = 343 buah roti ��� � berdasarkan Tabel Data Permintaan (Lampiran 2). Oleh karena � ��� �, maka

pemilihan pelanggan 0 masuk dalam kategori layak, sehingga rute 0 − 2 – 10 – 17

(62)

62

Semua pelanggan telah dilayani pada tahap ini, dengan demikian pembentukan rute kedua selesai. Adapun rute kedua yang terbentuk adalah 0 − 2 – 10 – 17 – 24 – 5

– 1 – 22 – 13 – 14 – 20 – 9 - 0 dengan total jarak yang ditempuh sejauh 25,9 km. Dari perhitungan yang telah dilakukan menggunakan Metode Nearest Neighbour, permasalahan proses pendistribusian roti di CV. Jogja Transport menghasilkan 2 rute sebagai berikut:

Rute 1: Depot – Toko Afi – Pamela 8 – Karuma – Taman Siswa Mart – Bintaran Mart

– Progo – Ramai Mall – Toko 62 – Kemkid Mart – Sun Mart – N Mart – Kokarda – Citrouli 2 – Kios Dani Blok B2 – Amani MM – Depot, dengan total jarak tempuh 20 km dan mengangkut 420 buah roti.

[image:62.612.211.430.425.683.2]

Rute 2: Depot – Pamela 4 – WS Kotagede – Betta Swalayan – Kantin Amanah RSI – Pamela 2 – Pamela 1 – Vivo Mini Market – Twin – Toko Irma – HS Camilan – Jogja Mart – Depot, dengan total jarak tempuh 25,9 km dan mengangkut 343 buah roti.

(63)

63

Keterangan: : Rute 1

: Rute 2

[image:63.612.127.520.238.389.2]

Adapun rekapitulasi hasil penyelesaian masalah menggunakan Metode Near

Gambar

Gambar 1.1 Diagram Alir Penelitian
Gambar 2.1 Graf G1
Gambar 2.3 Contoh Solusi VRP dengan 13 Pelanggan dan 3 Kendaraan
Gambar 2.4 Skema alur proses  crossover
+7

Referensi

Dokumen terkait

Selain itu, ucapan terima kasih juga ditujukan kepada semua pensyarah di Fakulti Bahasa Moden dan Komunikasi, UPM yang telah banyak mencurahkan ilmu dan pengalaman

Bagian Keuangan / Umum selaku pembantu Kepala Wilayah bertanggung jawab menyusun rencana dan melaksanakan kegiatan pengelolaan keuangan, fungsi kebendaharaan, penyusunan

demand to an area where water is available, or to shift to increasingly expensive sources, such as desalination or imports of goods produced in regions with adequate water

Penemuan yang serupa telah dilaporkan oleh iverson dan Evans (2007) yang mengkaji pengeluaran vokal bahasa inggeris dalam kalangan penutur Perancis, sepanyol, Jerman dan

Problematika ekonomi manusia dalam perspektif Islam adalah pemenuhan kebutuhan (need) dengan Sumber Daya Alam (SDA) yang tersedia, dengan adanya konsep maslahah

Dari hasil temuan dan analisis penelitian, ada beberapa hal yang dapat dijadikan sebagai saran atau masukan, antara lain bagi (1) Kepala sekolah hendaknya

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

Indikator Kinerja Utama (IKU) Dinas Kesehatan tahun 2013-2018, yang tertuang dalam dokumen RPJMD Kota Sukabumi tahun 2013-2018 ditetapkan berdasarkan Keputusan