Fuzzy Node Combination untuk Menyelesaikan Masalah Pencarian Rute Terpendek. Studi Kasus : Antar Kota di Pulau Jawa Samodro Bagus Prasetyanto Bilqis Amaliah, S.Kom., M.Kom. Dr. Chastine Fatichah, S.Kom., M.Kom.
LATAR BELAKANG Shortesh Path Problem (SPP) Umumnya Dijkstra Tidak dapat mencari rute terpendek pada lingkungan yang tidak pasti Bobot pada tiap edge berjumlah 3 atau 4 bobot Fuzzy Node Combination
RUMUSAN MASALAH Bagaimana menambahkan dua jalur terhubung yang direpresentasikan oleh bilangan fuzzy? Bagaimana membandingkan dua rute yang direpresentasikan oleh bilangan fuzzy? Bagaimana mengkombinasikan metode node combination dengan teori himpunan fuzzy untuk mencari rute terpendek antar kota di Pulau Jawa? Bagaimana menampilkan rute terpendek antar kota di Pulau Jawa?
LINGKUP MASALAH Teori himpunan fuzzy yang digunakan adalah segitiga bilangan fuzzy dan trapesium bilangan fuzzy Jumlah bilangan fuzzy di tiap rute pada satu graph memiliki jumlah yang sama Jumlah node pada satu graph tidak melebihi 200 node
LINGKUP MASALAH (LANJUTAN) Bahasa pemrograman yang digunakan adalah bahasa C/C++ Angka pada bobot edge harus naik dan positif Studi kasus yang digunakan adalah antar kota di Pulau Jawa
DASAR TEORI Segitiga Bilangan Fuzzy (Tiga bobot pada tiap edge) P(Ã) = 1 6 (a 1 + 4a 2 + a 3 ) P(B) = 1 6 (b 1 + 4b 2 + b 3 ) P(Ã B) = P(Ã) + P(B) = 1 6 (a 1 + 4a 2 + a 3 ) + 1 6 (b 1 + 4b 2 + b 3 )
DASAR TEORI (LANJUTAN) Trapesium Bilangan Fuzzy (Empat bobot pada tiap edge) P(Ã) = 1 6 (a 1 + 2a 2 + 2a 3 + a 4 ) P(B) = 1 6 (b 1 + 2b 2 + 2b 3 + b 4 ) P(Ã B) = P(Ã) + P(B) = 1 6 (a 1 + 2a 2 + 2a 3 + a 4 ) + 1 6 (b 1 + 2b 2 + 2b 3 + b 4 )
DASAR TEORI (LANJUTAN) Node 1 3 -> 1 6 Node 1 5 -> 1 6 * (4 + 2 * 5 + 2 * 7 + 8) = 6 * (12 + 2 * 13 + 2 * 18 + 19) = 15,5
DASAR TEORI (LANJUTAN) Node 1 4 -> 1 6 1 6 1 6 * (4 + 2 * 5 + 2 * 7 + 8) + * (1 + 2 * 2 + 2 * 4 + 5) = * (5 + 2 * 7 + 2 * 11 + 13) = 9
FUZZY NODE COMBINATION Langkah 0. Inisialisasi. W[s,u] := 0, v u := v s, V := V {s}, fuzzy := 3 atau 4 Langkah 1. Memilih titik yang terdekat dengan V s. Jika tidak ada titik yang terhubung dengan V s, maka hentikan perulangan Langkah 2. Gabungkan titik tersebut dan hapus titik V u, V := V {u}. Langkah 3. Perbarui nilai bobot pada tiap sisi W[s,j], pilih yang lebih dekat antara dist(w[s,u], fuzzy) + dist(w[u,j], fuzzy) dan dist(w[s,j], fuzzy). Selanjutnya, pergi ke Langkah 1.
DATA SET Antar Kota di Pulau Jawa Google Maps November 2013 Tiga bobot pada tiap edge/rute 43 kota dan 64 rute antar kota
PENGUJIAN Pengujian 1 Pengujian metode fuzzy node combination pada studi kasus antar kota di Pulau Jawa Pengujian 2 Pengujian untuk membandingkan penggunaan memori dan waktu proses antara metode fuzzy node combination dengan algoritma fuzzy Dijkstra (50 kali pengujian, 1 pengujian 1000 graph)
HASIL PENGUJIAN 1 No Rute Jarak (km) 1 Surabaya->Mojokerto->Kediri->Blitar 177,03 2 Surabaya->Mojokerto->Kediri 131,52 3 Surabaya->Mojokerto->Jombang->Madiun 174,48 4 Surabaya->Malang 103,45 5 Surabaya->Mojokerto 54,38 6 Surabaya->Mojokerto->Jombang 85,08 7 Surabaya->Pasuruan 66,30 8 Surabaya->Pasuruan->Probolinggo 104,90 9 Surabaya->Surabaya 0,00 10 Surabaya->Pasuruan->Probolinggo->Banyuwangi 302,90 11 Surabaya->Tuban 96,50 12 Surabaya->Mojokerto->Jombang->Madiun->Magetan 201,67 13 Surabaya->Mojokerto->Jombang->Madiun->Ngawi 208,57 14 Surabaya->Mojokerto->Jombang->Madiun->Ponorogo 205,18
HASIL PENGUJIAN 1 (LANJUTAN) No Rute Jarak (km) 15 Surabaya->Mojokerto->Jombang->Madiun-> Ponorogo-> Pacitan 281,58 16 Surabaya->Pasuruan->Probolinggo->Jember 204,90 17 Surabaya->Mojokerto->Jombang->Madiun-> Ngawi-> Sragen->Surakarta ->Magelang 393,63 18 Surabaya->Mojokerto->Jombang->Madiun-> Ngawi-> Sragen->Surakarta ->Semarang-> Pekalongan 510,18 19 Surabaya->Mojokerto->Jombang->Madiun-> Ngawi-> Sragen->Surakarta ->Semarang 414,08 20 Surabaya->Mojokerto->Jombang->Madiun-> Ngawi-> Sragen->Surakarta 299,42 21 Surabaya->Mojokerto->Jombang->Madiun-> Ngawi-> Sragen->Surakarta ->Semarang-> Pekalongan->Tegal 573,88
HASIL PENGUJIAN 1 (LANJUTAN) No Rute Jarak (km) 22 Surabaya->Mojokerto->Jombang->Madiun->Ngawi->Sragen-> Surakarta->Yogyakarta 367,55 23 Surabaya->Mojokerto->Jombang->Madiun->Ponorogo-> Pacitan->Wonosari 352,68 24 Surabaya->Mojokerto->Jombang->Madiun->Ngawi->Sragen 263,92 25 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen-> Surakarta->Yogyakarta->Purworejo 430,23 26 Surabaya->Mojokerto->Jombang->Madiun->Ngawi->Sragen-> Surakarta->Yogyakarta->Purworejo->Purwokerto 547,90 27 Surabaya->Mojokerto->Jombang->Madiun->Ngawi->Sragen-> Surakarta->Yogyakarta->Purworejo-> Purwokerto->Cilacap 582,20 28 Surabaya->Mojokerto->Jombang->Madiun->Ngawi->Sragen-> Surakarta->Magelang->Temanggung->Wonosobo 457,88 29 Surabaya->Mojokerto->Jombang->Madiun->Ngawi->Sragen-> Surakarta->Magelang->Temanggung 417,78 30 Surabaya->Mojokerto->Jombang->Madiun->Ngawi->Sragen-> Surakarta->Semarang->Rembang 530,08
HASIL PENGUJIAN 1 (LANJUTAN) No Rute Jarak (km) 31 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta->Semarang->Pekalongan->Tegal-> Cirebon 649,33 32 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta->Yogyakarta->Purworejo-> Purwokerto->Tasikmalaya 696,40 33 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta->Semarang->Pekalongan->Tegal-> Cirebon->Subang 771,33 34 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta->Yogyakarta->Purworejo-> Purwokerto->Tasikmalaya->Bandung 819,90 35 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta->Semarang->Pekalongan->Tegal-> Cirebon-> Subang->Purwakarta 822,33 36 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta->Yogyakarta->Purworejo-> Purwokerto->Tasikmalaya->Bandung->Cianjur 886,50
HASIL PENGUJIAN 1 (LANJUTAN) No Rute Jarak (km) 37 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta ->Yogyakarta->Purworejo-> Purwokerto->Tasikmalaya->Bandung->Cianjur->Sukabumi 917,00 38 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta ->Yogyakarta->Purworejo-> Purwokerto->Tasikmalaya->Bandung->Cianjur->Bogor 946,10 39 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta ->Semarang->Pekalongan->Tegal-> Cirebon->Subang->Bekasi 898,33 40 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta ->Semarang->Pekalongan->Tegal-> Cirebon->Subang->Bekasi->Jakarta 939,27 41 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta ->Semarang->Pekalongan->Tegal-> Cirebon->Subang->Bekasi->Jakarta->Tangerang 971,92
HASIL PENGUJIAN 1 (LANJUTAN) No Rute Jarak (km) 42 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta->Semarang->Pekalongan->Tegal-> Cirebon-> Subang->Bekasi->Jakarta->Tangerang->Serang 1038,32 43 Surabaya->Mojokerto->Jombang->Madiun->Ngawi-> Sragen->Surakarta ->Semarang->Pekalongan->Tegal-> Cirebon-> Subang->Bekasi->Jakarta->Tangerang-> Serang->Merak 1072,32
HASIL PENGUJIAN 2 Algoritma Fuzzy Dijsktra
HASIL PENGUJIAN 2 (LANJUTAN) Metode Fuzzy Node Combination
HASIL PENGUJIAN 2 (LANJUTAN) Hasil Uji T
HASIL PENGUJIAN 2 (LANJUTAN) Penjelasan Hasil Uji T Nilai p-value hasil uji T kurang dari nilai alpha maka H0 ditolak sehingga kedua metode tersebut memiliki perbedaan waktu proses yang signifikan.
HASIL PENGUJIAN 2 (LANJUTAN) Pengunaan Memori
HASIL PENGUJIAN 2 (LANJUTAN) Penjelasan Pengunaan Memori Algoritma fuzzy Dijkstra membutuhkan memori tambahan untuk penyimpanan sementara jarak antar node (d) seperti pada Pembaruan jarak bobot edge (W) dilakukan oleh metode fuzzy node combination, sehingga metode ini tidak membutuhkan memori tambahan.
KESIMPULAN 1. Pencarian rute terpendek untuk studi kasus antar kota di Pulau Jawa dapat diselesaikan dengan metode fuzzy node combination 2. Metode fuzzy node combination dapat menambahkan dua jalur terhubung yang direpresentasikan oleh bilangan fuzzy 3. Metode fuzzy node combination dapat membandingkan dua rute yang direpresentasikan oleh bilangan fuzzy 4. Rute terpendek antar kota di Pulau Jawa juga dapat ditampilkan
KESIMPULAN 5. Metode fuzzy node combination memiliki waktu proses yang hampir sama dengan algoritma fuzzy Dijkstra, namun penggunaan memori pada metode fuzzy node combination lebih kecil
PENGEMBANGAN Perlu adanya pengembangan Tidak hanya terbatas pada variabel jarak secara geometri Variabel lain: Cuaca, Penggunaan Bahan Bakar, Kondisi jalan dan lain-lain
TERIMA KASIH