C. Penyelesaian Model Capacitated Vehicle Routing Problem (CVRP)
7. Pembentukan Populasi Baru
Setelah langkah-langkah di atas dilakukan, maka dibentuk populasi
selanjutnya di generasi kedua. Individu terbaik dengan nilai fitness tertinggi pada
populasi awal dibawa ke populasi selanjutnya, proses ini dinamakan sebagai
elitism. Proses elitism bertujuan untuk menjaga agar individu bernilai fitness
tertinggi tersebut tidak hilang selama proses evolusi. Prosedur pembentukan
populasi selanjutnya terdapat dalam lampiran 6 dan hasil pembentukkan populasi
baru bisa dilihat pada lampiran 11 dengan bantuan software Matlab. Berikut
88
Individu 1 = 17 20 10 8 13 22 21 3 25 16 24 5 2 23
15 6 9 4 18 12 7 11 19 1 14
Setelah didapatkan generasi baru maka proses selanjutnya adalah mencari
nilai fitness generasi baru dengan bantuan software Matlab (hasil perhitungan
pada lampiran 12. Iterasi dilakukan hingga mendapatkan nilai fitness yang
optimum dan konvergen digenerasi tertentu. Algoritma genetika bersifat random
generator, sehingga setiap melakukan proses seleksi maka akan selalu
menghasilkan solusi yang berbeda. Dalam hal ini diperlukan beberapa kali
percobaan dalam mengaplikasikan algoritma genetika dengan software Matlab
agar didapatkan solusi yang optimum, yaitu dengan mencoba beberapa nilai
ukuran populasi dan jumlah generasi. Berikut tabel percobaan dengan
menggunakan beberapa nilai ukuran populasi dan jumlah generasi yang berbeda.
Tabel 3.9 Hasil Uji coba Menggunakan Software Matlab
Percobaan Ke- Ukuran Populasi Jumlah Generasi Nilai Fitness Total Jarak 1 15 100 0,0061 166,100 2 150 0,0057 176,400 3 200 0,0056 179,500 4 500 0,0061 165,000 5 1000 0,0068 146,550
89 6 20 100 0,0063 159,400 7 150 0,0062 162,300 8 200 0,0061 165,100 9 500 0,0068 146,900 10 1000 0,0080 123,650 11 25 100 0,0059 168,200 12 150 0,0060 167,700 13 200 0,0061 163,100 14 500 0,0063 159,850 15 1000 0,0071 141,000
Berdasarkan Tabel 3. dilakukan uji coba dengan beberapa ukuran populasi
random yaitu 15, 20 dan 25. Jumlah iterasi yang digunakan adalah 100, 150, 200,
500, 1000 dan parameter yang digunakan dibuat sama yaitu dengan crossover rate
0,8 dan mutation rate 0,05. Berdasarkan tabel ukuran populasi percobaan dengan 15
populasi menghasilkan nilai fitness terbaik yaitu sebesar 0,0068 pada iterasi ke-1000,
dengan ukuran 20 populasi nilai fitness yang dihasilkan sebesar 0,0080 pada iterasi
ke 1000, sedangkan dengan ukuran 25 populasi nilai fitness terbaik sebesar 0,0071
juga pada iterasi ke-1000. Dapat terlihat dari setiap percobaan semakin bertambah
ukuran populasi dan jumlah generasinya maka nilai fitness yang dihasilkan juga akan
semakin baik. Ukuran populasi dan jumlah generasi mempengaruhi kinerja dan
90
menyediakan cukup materi untuk mencakup ruang permasalahan, sehingga pada
umumnya kinerja algoritma genetika menjadi buruk. Penggunaan populasi yang
lebih besar dapat membuat kinerja algoritma genetika semakin baik dan dapat
mencegah terjadinya konvergensi pada wilayah lokal. Begitu juga dengan jumlah
generasi, jumlah generasi yang besar dapat mengarahkan ke arah solusi yang lebih
optimal, namun akan membutuhkan waktu running yang lama. Sedangkan jika
jumlah generasinya terlalu sedikit maka solusi yang dihasilkan akan terjebak dalam
lokal optimal.
Dapat disimpulkan bahwa yang menyebabkan hasil solusi optimal setiap
iterasi berubah karena dalam algoritma genetika, solusi optimal dapat dihasilkan
disetiap generasi yang dibentuk dari generasi sebelumnya sangat dipengaruhi oleh
populasi awal, seleksi, pindah silang dan mutasi. Maka disetiap proses generasi akan
selalu dihasilkan individu baru atau representasi solusi optimal dari permasalahan
yang dihadapi. Proses tersebut akan selalu berulang-ulang hingga didapatkan solusi
yang mendekati optimal. Solusi dikatakan mendekati optimal jika dalam proses
generasi didapatkan individu-individu yang memiliki nilai fitness terbaik.
Berdasarkan Tabel 3.9 pada percobaan ke-10 dengan ukuran populasi 20 dan
jumlah iterasi ke-1000 didapatkan nilai fitness sebesar 0,0080 yang artinya nilai
fitness yang didapatkan belum mencapai nilai fitness maksimum. Nilai fitness terbaik
hanya mencapai 0,0080. dengan total jarak tempuh 123,650 km. Berikut grafik
91
Gambar 3.9 Grafik Generasi Ke-1000
Kurva yang berada diatas merupakan nilai fitness pada generasi ke-1000. Dan
kurva yang berada dibawah merupakan nilai fitness rata-rata dari 1000 generasi.
Pergerakan nilai fitness akan semakin baik dan konstan dari generasi ke generasi dan
mencapai konvergen di generasi ke-850, untuk generasi setelah 850 sampai generasi
ke-1000 tetap didapatkan nilai fitness terbaik sebesar 0,0080, sehingga didapatkan
solusi optimal rute terpendek. Berikut rute yang dihasilkan pada percobaan ke-10
92
Tabel 3.10 Pembagian rute pada percobaan ke-10
Keterangan :
1) Rute kendaraan 1 (Total kapasitas 5750 kg dan Total Jarak Tempuh 52,95 km)
Depot - Jalan Raya Wates No.256 - Jl. Madukismo Ngupasan - Jl. Sultan Agung
No.10 Wirogunan Mergangsan - Jl. Mayor Suryotomo No.29 Ngupasan - Jl.
HOS Cokroaminoto No.176 Tegalrejo – Jl Raya Seturan Kav.IV Depok Sports
Centre – Jl Ringroad Utara Maguwoharjo – Jl Raya Solo Km 8 No.234
Maguwoharjo – Depot.
Kendaraan Rute Permintaan Jarak Tempuh
1 0 11 13 18 17 6 24 9 16 0 5750 52,95 2 0 25 5 3 22 21 23 4 20 7 10 0 5425 56,40 3 0 15 2 8 19 1 12 14 0 5700 38,6
93
Gambar 3.10 Graf Pendistribusian Rute I
Selanjutnya dari rute yang telah diperoleh, dihitung catatan waktu yang
dihabiskan selama pendistribusian pada rute 1 dan setiap agen dilayani selama 15
menit.
Tabel 3.11 Lama waktu pendistribusian pada rute 1
Agen Waktu Kedatangan Waktu Keberangkatan
0 08.00 11 08.07 08.22 13 08.29 08.44 18 08.45 09.00 17 09.01 09.16 6 09.22 09.37
94
2) Rute kendaraan 2 (Total kapasitas 5425 kg dan Total Jarak Tempuh 56,40 km)
Depot– Jl Yogya Solo KM 7 Babarsari – Jl Kebon Agung No 88 Tlogodadi –
Jl Magelang Km 15,5 Kemloko – Triharjo Sleman – Jalan Palagan Tentara
pelajar No 31 – Jl Kaliurang Km 6,2 No 51 – Jl Colombo No.26 – Jl C.
Simanjutak No.70 Terban – Jl Urip Sumoharjo No.38A Klitren - Jl Urip
Sumoharjo Klitren – Depot.
Gambar 3.11 Graf Pendistribusian Rute II
24 09.47 10.02
9 10.09 10.24
16 10.30 10.45
95
Selanjutnya dari rute yang telah diperoleh, dihitung catatan waktu yang
dihabiskan selama pendistribusian pada rute 2 dan setiap agen dilayani selama 15
menit.
Tabel 3.12 Lama waktu pendistribusian pada rute 2 Agen Waktu Kedatangan Waktu Keberangkatan
0 08.00 25 08.18 08.33 5 08.50 09.15 3 09.24 09.39 22 09.43 09.58 21 10.08 10.23 23 10.28 10.43 4 10.47 11.02 20 11.04 11.19 7 11.21 11.36 10 11.37 11.52 0 12.03
96
3) Rute kendaraan 3 (Total kapasitas 5700 kg dan Total Jarak Tempuh 38,06 km)
Depot– Plaza Ambarukmo LG – Jl Pramuka No.84 Giwangan – Jl Ngeksigondo
No.7 Prenggan – Jl Panjaitan No.54 Suryodiningratan – Pacar Sewon Trimulyo
– Jl Parangtritis Km 11 Sabdodadi – Jl Bantul Pendowoharjo – Depot.
Gambar 3.12 Graf Pendistribusian Rute III
Selanjutnya dari rute yang telah diperoleh, dihitung catatan waktu yang
dihabiskan selama pendistribusian pada rute 2 dan setiap agen dilayani selama 15
97
Tabel 3.13 Lama waktu pendistribusian pada rute 3