PENENTUAN JALUR TERCEPAT DAN TERPENDEK BERDASARKAN
KONDISI LALU LINTAS DI KOTA BOGOR MENGGUNAKAN
ALGORITME DIJKSTRA DAN ALGORITME
FLOYD-WARSHALL
RESTI SITI UTARI
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR
PERNYATAAN MENGENAI SKRIPSI DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA
Dengan ini saya menyatakan bahwa skripsi berjudul Penentuan Jalur Tercepat dan Terpendek Berdasarkan Kondisi Lalu Lintas di Kota Bogor Menggunakan Algoritme Dijkstra dan Algoritme Floyd-Warshall adalah benar karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir skripsi ini.
Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor.
ABSTRAK
RESTI SITI UTARI. Penentuan Jalur Tercepat dan Terpendek Berdasarkan Kondisi Lalu Lintas di Kota Bogor Menggunakan Algoritme Dijkstra dan Algoritme Floyd-Warshall. Dibimbing oleh MUSHTHOFA.
Bogor merupakan salah satu kota besar di Indonesia yang memiliki masalah kemacetan cukup besar di beberapa titik. Kemacetan tersebut diantaranya disebabkan oleh banyaknya jumlah kendaraan umum dan kendaraan pribadi (roda dua atau roda empat) yang beredar memenuhi jalan, keduanya dianggap telah melebihi kapasitas jalanan Kota Bogor. Salah satu alternatif yang dapat ditawarkan untuk menghadapi kemacetan ini ialah mengetahui jalur terbaik yang dapat dilalui. Jalur terbaik merupakan jalur tercepat maupun jalur terpendek yang digunakan untuk mencapai sebuah tempat di Kota Bogor sesuai dengan kondisi kepadatan lalu lintas jalan. Algoritme Dijkstra dan algoritme Floyd-Warshall sebagai algoritme shortest path yang sangat baik dalam memberikan nilai optimum digunakan untuk mendukung dihasilkannya rute perjalanan terbaik dengan waktu tempuh paling optimal. Penelitian ini menghasilkan sebuah sistem yang mampu menunjukkan jalur tercepat maupun jalur terpendek disertai dengan perkiraan jarak tempuh, waktu tempuh, serta waktu tiba. Pencarian jalur tercepat pada sistem ini mampu menghasilkan sebuah jalur tercepat yang dapat menyesuaikan hasil dengan perpindahan waktu, sehingga selalu memberikan jalur dengan waktu tempuh paling optimal.
Kata kunci: algoritme Dijkstra, algoritme Floyd-Warshall, jalur tercepat, jalur terpendek, Kota Bogor
ABSTRACT
RESTI SITI UTARI. Fastest and Shortest Path Determination Based on The Traffic Conditions in Bogor City Using Dijkstra’s Algorithm and Floyd-Warshall Algorithm. Guided by MUSHTHOFA.
Bogor is one of the major cities in Indonesia which have congestion problems large enough at some point. The congestion partly caused by the large number of public transport and private vehicles which circulating on the road, both are considered to have exceeded the capacity of the streets of the Bogor city . One alternative that can be offered to deal with this congestion is determine the best path to follow. The best path is the fastest path or the shortest path that used to achieve a place in the Bogor city in accordance with the conditions of the road traffic density. Dijkstra algorithm and Floyd algorithm Warshal as shortest path algorithm which is excellent in providing optimum value is used to support the of the best path with the most optimal travel time. The research resulted in a system that is able to produce the fastest path and the shortest path along with the approximate distance, estimated travel time and time of arrival. The function to determine the fastest path is capable of generating the fastest path adjusted to the results of the displacement time. Hence, the system always provide the path with the most optimal travel time.
Skripsi
sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer
pada
Departemen Ilmu Komputer
PENENTUAN JALUR TERCEPAT DAN TERPENDEK BERDASARKAN
KONDISI LALU LINTAS DI KOTA BOGOR MENGGUNAKAN
ALGORITME DIJKSTRA DAN ALGORITME
FLOYD-WARSHALL
RESTI SITI UTARI
DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR
Judul Skripsi : Penentuan Jalur Tercepat dan Terpendek Berdasarkan Kondisi Lalu Lintas di Kota Bogor Menggunakan Algoritme Dijkstra dan
Algoritme Floyd-Warshall Nama : Resti Siti Utari
NIM : G64090060
Disetujui oleh
Mushthofa, SKom MSc Pembimbing
Diketahui oleh
Dr Ir Agus Buono, MSi MKom Ketua Departemen
PRAKATA
Puji dan syukur penulis panjatkan kepada Allah subhanahu wa ta’ala atas segala karunia-Nya sehingga karya ilmiah ini berhasil diselesaikan. Tema yang dipilih dalam penelitian yang dilaksanakan sejak bulan September 2012 ini ialah kemacetan, dengan judul Penentuan Jalur Tercepat dan Terpendek Berdasarkan Kondisi Lalu Lintas Jalan di Kota Bogor Menggunakan Algoritme Dijkstra dan Algoritme Floyd-Warshall.
Terima kasih terbesar penulis ucapkan kepada ibunda penulis Linda Agustarina yang atas kasih sayang, doa, dan dukungannya sehingga penulis dapat menyelesaikan pendidikan di Institut Pertanian Bogor. Tidak lupa terima kasih penulis sampaikan kepada ayahanda Rusnaidi, adik-adik, serta seluruh keluarga, atas segala doa dan dukungannya. Ungkapan terima kasih sebesarnya juga penulis sampaikan kepada Bapak Mushthofa, S.Kom, M.Sc selaku pembimbing yang telah banyak memberikan masukan dan dukungan selama pengerjaan karya ilmiah ini. Terima kasih kepada sahabat penulis Nugraha Putra Rachmadhani yang telah membantu penulis dalam pengolahan data dan memberikan banyak saran bermanfaat dalam proses penelitian. Terima kasih juga kepada Tuti Zuhariyyah, Erlandy Ulfa, Viani Rahmawati, Gita Adhani, Nurdianti, Ginta, Fi Ismi, dan sahabat penulis lainnya yang telah membantu penulis dalam pengumpulan data karya ilmiah ini dan memberikan semangat, serta seluruh dosen dan mahasiswa Departemen Ilmu Komputer IPB khususnya angkatan 46 yang telah memberikan ilmu dan kenangan yang indah untuk penulis. Semoga karya ilmiah ini bermanfaat.
DAFTAR ISI
DAFTAR ISI vii
DAFTAR TABEL viii
DAFTAR GAMBAR viii
DAFTAR LAMPIRAN viii
PENDAHULUAN 1
Latar Belakang 1
Perumusan Masalah 1
Tujuan Penelitian 2
Manfaat Penelitian 3
Ruang Lingkup Penelitian 3
METODE PENELITIAN 3
Penentuan Wilayah Penelitian 4
Penentuan Data dan Sumber Data 5
Pengumpulan Data 5
Pemodelan Graf dari Data 6
Implementasi Menggunakan Algoritme Dijkstra dan 7
Algoritme Floyd-Warshall 7
Evaluasi Hasil 12
Implementasi Sistem 12
HASIL 14
Penentuan Wilayah Penelitian dan Pengumpulan Data 14
Pemodelan Graf dari Data 14
Implementasi Menggunakan Algoritme Dijkstra dan 15
Algoritme Floyd-Warshall 15
Evaluasi Hasil 16
Implementasi Sistem 17
PEMBAHASAN 19
SIMPULAN 20
SARAN 21
DAFTAR PUSTAKA 21
DAFTAR TABEL
1 Hasil Pengujian 16
2 Lanjutan 17
3 Running time beberapa contoh hasil pencarian 19
DAFTAR GAMBAR
1 Skema metode penelitian 4
2 Diagram alir algoritme Djiktra (Suherman et al 2011) 9 3 Diagram alir proses pencarian jalur tercepat 13 4 Graf yang menghubungkan antar wilayah penelitian, IPB Dramaga
(A), Laladon (B), Jalan Pajajaran (C), Stasiun Bogor (D), IPB
Baranangsiang (E) 15
5 Tampilan awal sistem hasil implementasi 18
6 Tampilan sistem hasil implementasi setelah dijalankan 18
DAFTAR LAMPIRAN
1 Daftar verteks yang digunakan 23
2 Daftar edge yang digunakan 24
3 Lanjutan 25
PENDAHULUAN
Latar Belakang
Kemacetan umum ditemukan pada daerah dengan kepadatan penduduk tinggi. Kepadatan penduduk di sebuah kota berkorelasi positif dengan meningkatnya jumlah kendaraan bermotor. Salah satu fakta yang mendukung pernyataan tersebut ialah meningkatnya laju pertumbuhan rata-rata penduduk di Indonesia per tahunnya sebesar 1.4% pada periode tahun 1990 – 2011, diikuti pula dengan kenaikan rata-rata jumlah kendaraan bermotor (roda empat maupun roda dua) sebesar 13% per tahun dalam periode waktu yang sama (Joyoprayitno 2012). Kemacetan bukan hanya menjadi masalah di negara-negara maju, namun juga masalah yang dihadapi oleh negara-negara berkembang seperti Indonesia dan Philipina. Sebagai contoh, Jakarta sebagai ibukota negara Indonesia saat ini berada pada peringkat ke-14 sebagai kota termacet di dunia (Astuti 2011). Beberapa kota besar lainnya seperti Bandung, Depok, Medan, dan Bogor juga termasuk kota termacet di Indonesia.
Bogor merupakan salah satu kota besar di Indonesia yang memiliki masalah kemacetan cukup besar di beberapa titik. Kemacetan tersebut diantaranya disebabkan oleh banyaknya jumlah kendaraan umum dan kendaraan pribadi (roda dua atau roda empat) yang beredar memenuhi jalan, keduanya dianggap telah melebihi kapasitas jalanan Kota Bogor (Falatehan 2005). Kemacetan di Bogor umumnya banyak terjadi di ruas jalan Baranangsiang-Dramaga. Kota Bogor dan Dramaga memiliki inter-koneksi yang sangat kuat sebab disana berada sebuah perguruan tinggi, yaitu kampus IPB Dramaga dan kampus IPB Baranangsiang. Dengan asumsi jumlah mahasiswa berbanding lurus dengan meningkatnya kendaraan, Dramaga diduga merupakan salah satu titik kemacetan di Bogor. Selain itu, keberadaan Stasiun Bogor yang menghubungkan pusat kota Bogor dengan Dramaga patut dipertimbangkan sebagai titik utama kemacetan. Titik-titik kemacetan lainnya menurut Astuti (2011) termasuk Bubulak, Jembatan Merah, Baranangsiang, Jambu Dua, dan Jalan Kapten Muslihat.
Apabila dikalkulasikan, kemacetan menimbulkan banyak kerugian seperti pemborosan waktu, meningkatnya konsumsi bahan bakar, yang berujung pada meningkatnya pengeluaran, meningkatnya polusi udara, dan meningkatnya stres bagi pengguna jalan. Masalah kemacetan bukan perkara mudah, butuh kebijakan dan strategi yang matang untuk mengatasi kemacetan sehingga hal itu menjadi tidak mudah (Felisiani 2012). Oleh karena itu, dibutuhkan suatu antisipasi untuk menghadapi kemacetan. Demi mengantisipasi hal tersebut, rute terbaik untuk sampai lokasi tujuan perlu diketahui, yaitu dengan membangun sebuah sistem yang dapat menunjukkan jalur tercepat dan jalur terpendek dari sebuah perjalanan. Jalur tercepat diambil berdasarkan kondisi lalu lintas pada setiap segmen jalan sesuai dengan waktu keberangkatan sehingga sistem akan menunjukkan rute jalan dengan kondisi lalu lintas terlancar dan waktu tempuh paling pendek.
Perumusan Masalah
2
Google Map dengan fitur traffic layer dapat menunjukkan kondisi lalu lintas pada sebuah jalan sesuai dengan waktu pengaksesannya. Selain itu, fitur traffic layer dapat memberikan gambaran kondisi lalu lintas di luar waktu pengaksesan berdasarkan pada database yang mereka miliki. Keakuratan untuk fitur ini dapat dijamin, karena data diambil berdasarkan kecepatan pergerakan pengguna aplikasi Google Map pada suatu jalan. Berdasarkan kumpulan data tersebut, dapat ditarik kesimpulan mengenai kondisi lalu lintas pada suatu jalan. Namun, fitur traffic layer pada Google Map untuk saat ini hanya berfungsi pada peta wilayah DKI Jakarta. Sementara itu, situs lewatmana[dot]com adalah suatu aplikasi berbasis web dan mobile. Aplikasi ini membangun sebuah sistem dengan data berasal dari penggunanya. Informasi mengenai kondisi lalu lintas pada suatu ruas jalan diketahui dari laporan yang saling dibagi oleh para penggunanya. Selain itu informasi kondisi lalu lintas didapatkan pula dari foto maupun video yang berasal dari kamera yang dipasang pada beberapa puncak gedung tinggi di Jakarta. Sama halnya dengan fitur traffic layer pada Google Map, lewatmana[dot]com juga baru berfungsi optimal untuk kawasan Jakarta.
Selain aplikasi-aplikasi di atas, metode lain juga banyak diterapkan untuk mencari shortest path pada suatu daerah. Salah satunya dengan menggunakan algoritme Dijkstra dalam pencarian rute terpendek jalan dan lokasi pariwisata di kota Surakarta (Nandiroh dan Haryanto 2007). Elghazaly dan Shukur (2010) menggunakan algoritme Dijkstra, algoritme Floyd-Warshall, dan algoritme A* untuk mencari rute terpendek pada beberapa daerah di Malaysia dan memperkirakan biaya perjalanan yang dibutuhkan. Merujuk pada kedua hasil penelitian tersebut, algoritme Dijkstra akan dicoba diterapkan dalam penentuan jalur tercepat dan terbaik untuk menghadapi kemacetan yang terjadi di Bogor.
Novandi (2007) menyatakan bahwa algoritme Dijkstra dan Floyd-Warshall merupakan salah satu bentuk algoritme yang popular dalam pemecahan persoalan yang terkait dengan masalah optimasi. Algoritme Dijkstra memiliki sifat yang
“greedy” hingga selalu berupaya mendapatkan nilai optimum lokal pada setiap langkahnya agar mendapatkan nilai optimum global, sedangkan algoritme Floyd-Warshall yang merupakan salah satu varian dari pemrograman dinamis mendapatkan solusi akhir sebagai solusi total optimal dari solusi optimal pada tahap sebelumnya. Berdasarkan pertimbangan tersebut muncul pertanyaan kunci yang melandasi penelitian ini. Dapatkah algoritme Dijkstra dan algoritme Floyd-Warshall diterapkan untuk menghadapi kemacetan di Kota Bogor? Jika ya, aplikasi seperti apakah yang dapat dibangun dengan mengimplementasikan algoritme tersebut? Dapatkah aplikasi tersebut memberikan nilai paling optimum? Berapa besar keefektifan dan usability aplikasi tersebut?
Tujuan Penelitian
Demi menjawab beberapa pertanyaan penelitian, tujuan yang ingin dicapai sebagai berikut:
3
2 Melakukan adaptasi terhadap algoritme Dijkstra sehingga dapat menangani kasus perubahan model graf pada setiap perpindahan range waktu untuk mendapatkan jalur tercepat.
Manfaat Penelitian
Hasil penelitian ini diharapkan dapat membantu pengguna jalan di Kota Bogor lebih mudah menemukan jalur tercepat dan jalur terpendek untuk sampai ke tempat tujuan. Pengguna dapat menghadapi kemacetan di Kota Bogor dengan menekan penggunaan waktu yang berlebihan di jalanan. Dengan demikian efisiensi dan efektifitas waktu pengguna dapat ditingkatkan dan mengurangi kerugian akibat kemacetan.
Ruang Lingkup Penelitian
Ruang lingkup pada penelitian ini meliputi:
1 Wilayah penelitian. Wilayah penelitian yang dipilih untuk penelitian ini yaitu rute yang menghubungkan antara IPB Dramaga Bogor, IPB Baranangsiang Bogor, dan Stasiun Bogor
2 Rentang waktu. Rentang waktu yang digunakan dalam penelitian ini yaitu per 30 menit. Dengan ini diasumsikan bahwa kondisi lalu lintas pada setiap jalan antarverteks tidak berubah terlalu signifikan per 30 menit. Untuk rentang waktu pukul 23.00 – 06.00 kecepatan rata-rata kendaraan ialah 50 km/jam dengan asumsi keadaan lalu lintas jalan masih lancar. Hari yang digunakan pada penelitian ini yaitu dari Senin hingga Minggu dengan kondisi hari normal. Diasumsikan tingkat konsistensi waktu perjalanan pada setiap segmen jalan untuk masing-masing hari setiap minggunya bernilai tinggi pada hari normal (bukan hari libur)
3 Subjek penelitian. Subjek penelitian untuk sistem ini adalah pengguna jalan Kota Bogor, khususnya pengguna kendaraan roda empat
4 Data. Data penelitian diperoleh dari Google Map dan hasil observasi. Data yang digunakan dari Google Map berupa rute-rute yang disarankan sebanyak 13 rute dan jarak antarverteks. Data yang diperoleh dari hasil observasi berupa kecepatan rata-rata kendaraan roda empat dan waktu tempuh ke setiap verteks. Edge yang digunakan minimal memiliki panjang 150 m, dengan asumsi kondisi lalu lintas pada edge berbeda. Data penelitian bersifat statis dengan hanya mempertimbangkan kondisi lalu lintas jalan di Kota Bogor pada umumnya tanpa memperhitungkan faktor eksternal penyebab kemacetan yang dapat sewaktu-waktu terjadi.
METODE PENELITIAN
4
tercepat dan jalur terpendek pada jalan yang menghubungkan IPB Dramaga Bogor, IPB Baranangsiang Bogor, dan Stasiun Bogor. Skema metode penelitian ini disajikan pada Gambar 1.
Gambar 1 Skema metode penelitian
Penentuan Wilayah Penelitian
5
graf yang memiliki sembarang titik yang dapat terhubung dengan titik yang lain. Ketiga titik tersebut dipilih sebagai titik acuan karena rute yang menghubungkan ketiga titik tersebut melewati beberapa titik rawan macet di Bogor, yaitu Bubulak, Jembatan Merah, Baranangsiang, Jambu Dua, Jalan Kapten Muslihat dan lain-lain (Astuti 2011). Pemilihan kampus IPB Dramaga dan IPB Baranangsiang sebagai titik utama melihat pada aktifitas belajar mengajar yang terkadang mengharuskan siswa maupun dosen harus berpindah kampus. Sementara itu, pemilihan Stasiun Bogor sebagai salah satu titik utama bersandar pada kenyataan bahwa Stasiun Bogor merupakan salah satu pusat transportasi di kota Bogor yang tidak pernah sepi dari pengunjung dan posisinya yang melewati titik rawan macet.
Penentuan Data dan Sumber Data
Jenis data yang digunakan pada penelitian ini berupa data primer dan data sekunder. Data primer adalah data yang diperoleh langsung dari responden (objek penelitian), sedangkan data sekunder adalah data yang diperoleh melalui data yang telah diteliti dan dikumpulkan oleh pihak lain yang berkaitan dengan permasalahan penelitian. Data primer pada penelitian ini didapatkan dari observasi di jalanan Kota Bogor, sedangkan data sekunder didapatkan dari Google Map. Data yang didapatkan dari Google Map yaitu rute-rute yang menghubungkan antara kampus IPB Dramaga, kampus IPB Baranangsiang dan Stasiun Bogor, serta jarak antar titik jalan. Data yang diperoleh dari hasil observasi berupa data mentah berisi kecepatan rata-rata kendaraan roda empat pada setiap edge serta waktu tempuhnya untuk waktu perjalanan yang berbeda-beda.
Pengumpulan Data
Pengumpulan data dilakukan secara berkala pada bulan Februari dan Maret 2013. Waktu yang digunakan sebagai bahan penelitian yaitu hari normal (Senin hingga Jumat), Sabtu, dan Minggu dengan masing-masing hari mewakili 48 jam. Metode pengumpulan data yang digunakan pada penelitian ini adalah metode observasi dan studi pustaka. Observasi dilakukan pada rute jalan yang menghubungkan tiga titik utama pada penelitian ini, dengan mengamati kondisi lalu lintas jalan, kecepatan rata-rata kendaraan dan waktu tempuh yang harus dihabiskan pada suatu rute perjalanan. Pengumpulan data dengan metode observasi dilakukan menggunakan alat berupa counter time, speedometer, dan alat tulis. Waktu tempuh antar jalan dihitung manual dengan menggunakan counter time, sedangkan kecepatan rata-rata kendaraan dihitung dengan berpatokan pada speedometer kendaraan. Kecepatan rata-rata kendaraan akan digunakan untuk mendapatkan perhitungan waktu tempuh antar jalan dengan menggunakan rumus gerak lurus beraturan (GLB). Hasil berupa waktu tempuh yang didapatkan dari perhitungan tersebut akan dijadikan acuan dari waktu tempuh yang dihasilkan dengan perhitungan menggunakan counter time.
6
Map, dipilih jalan dan lokasi penting yang akan digunakan sebagai verteks untuk pemodelan graf pada tahap selanjutnya. Penandaan sebuah verteks (titik jalan) dalam rute perjalanan didasarkan pada kondisi lalu lintas sehari – hari wilayah sekitar verteks. Verteks yang dipilih merupakan titik jalan yang memiliki kepadatan lalu lintas pada daerah di sekitarnya. Data lainnya yang didapatkan dari studi pustaka pada Google Map adalah data jarak antarverteks atau bobot jarak.
Pengumpulan data dilakukan tanpa memperhitungkan indeks waktu buffer (buffer time index). Indeks waktu buffer adalah waktu ekstra yang harus ditambahkan oleh pengguna jalan untuk tepat waktu sampai tempat tujuan. Selain itu reliabilitas waktu perjalanan pada wilayah penelitian diasumsikan memiliki variasi waktu perjalanan yang kecil sehingga konsistensi waktu perjalanan bernilai tinggi. Konsistensi waktu perjalanan merupakan suatu kondisi ketika variasi waktu perjalanan dari beberapa kali pengukuran tidak menunjukkan selisih yang besar. Dengan menggunakan asumsi konsistensi waktu perjalanan yang tinggi, maka waktu perjalanan untuk hari normal (Senin hingga Jumat) diasumsikan memiliki waktu perjalanan yang sama. Selain dua asumsi di atas, pada penelitian ini digunakan beberapa asumsi lainnya dalam proses perhitungan dan pengolah data. Beberapa asumsi tersebut antara lain sebagai berikut:
1 Diasumsikan tidak ada lampu merah antar jalan, sehingga perhitungan waktu tempuh dengan menggunakan stopwatch tidak menghitung terjadinya pemberhentian saat lampu merah
2 Diasumsikan kondisi lalu lintas di jalan besar pada rentang waktu pukul 23.00 - 05.30 WIB adalah lancar dengan kecepatan rata-rata kendaraan yang dapat ditempuh sebesar 50 km/jam sehingga perhitungan waktu tempuh pada beberapa jalan dilakukan secara manual dengan menggunakan rumus gerak lurus beraturan (GLB) tanpa menggunakan counter time.
Alasan tidak diperhitungkannya pemberhentian saat lampu merah dikarenakan peluang pengguna terkena lampu merah berbeda setiap waktu sehingga waktu ekstra untuk lampu merah yang harus ditambahkan pada setiap range waktu sulit untuk diprediksi. Meskipun demikian, pada penelitian ini antrean panjang kendaraan yang disebabkan oleh lampu merah tetap diperhitungkan sebagai kemacetan. Hal tersebut berdasarkan pada fakta bahwa jumlah kendaraan di Kota Bogor sangat banyak sehingga peluang pengguna terjebak dalan antrean ini cukup besar. Di samping itu pada kondisi sehari-hari peristiwa ini juga lebih sering terjadi pada pengguna dibandingkan dengan pemberhentian saat lampu merah dan lebih banyak menguras waktu pengguna di jalan. Perbedaan dari pemberhentian saat lampu merah dengan kemacetan adalah jika pengguna berada di antrian depan lampu merah maka hal tersebut dikategorikan sebagai pemberhentian saat lampu merah, sebaliknya jika pengguna berada jauh dari lampu merah yang mana saat lampu berwarna hijau pengguna masih harus terjebak dalam lampu merah maka hal tersebut dikategorikan sebagai kemacetan.
Pemodelan Graf dari Data
7
1 Satukan setiap verteks dari masing-masing rute yang telah dikumpulkan menjadi sebuah connected graph (graf terhubung)
2 Gunakan arah perjalanan pada rute sebagai aliran (flow) sehingga membentuk sebuah directed graph dari connected graph yang ada
3 Data berupa waktu tempuh dan jarak tempuh yang didapatkan pada tahap pengumpulan data masing-masing dijadikan sebagai bobot waktu dan bobot jarak. Implementasikan bobot – bobot tersebut sebagai aliran beban pada directed graph sehingga terbentuk sebuah weighted graph (graf berbobot).
Dari hasil perlakuan di atas, terbentuk sebuah graf terhubung yang memiliki aliran bobot weighted graph (graf berbobot). Terdapat dua buah jenis bobot yang digunakan pada penelitian ini yaitu bobot jarak dan bobot waktu. Bobot jarak adalah sebuah nilai atau aliran beban pada weighted graph yang mewakili panjang suatu edge, sedangkan bobot waktu mewakili waktu tempuh suatu edge. Satuan yang digunakan pada bobot jarak di penelitian ini adalah meter, sedangkan satuan bobot waktu yang digunakan adalah menit. Selanjutnya, graf dengan aliran bobot waktu akan diimplementasikan algoritme Dijkstra untuk mendapatkan jalur tercepat, sedangkan graf dengan aliran bobot jarak akan diimplementasikan algoritme Floyd-Warshall untuk mendapatkan jalur terpendek.
Implementasi Menggunakan Algoritme Dijkstra dan Algoritme Floyd-Warshall
Pada penelitian ini terdapat dua fungsi utama, yaitu fungsi pencarian jalur tercepat dan jalur terpendek. Fungsi pencarian jalur tercepat menggunakan data waktu tempuh sebagai bobotnya dan mengimplementasikan algoritme Dijkstra untuk proses kalkulasi pencarian jalur tercepat, sedangkan fungsi pencarian jalur terpendek menggunakan data jarak tempuh sebagai bobotnya dan mengimplementasikan algoritme Floyd-Warshall untuk proses kalkulasi pencarian jalur terpendek.
Algoritme Dijkstra adalah salah satu algoritme yang optimum menyelesaikan masalah single source shortest path. Masalah single source shortest path adalah suatu masalah yang muncul ketika diberikan sebuah graf G = (V, E), kemudian dari graf tersebut ingin dicari sebuah path terpendek dari sebuah verteks awal atau sumber yang mana sϵ V ke setiap verteks v ϵ V. Graf yang dapat digunakan pada algoritme ini adalah graf berarah dan memiliki bobot tidak negatif w(u,v)≥ 0 untuk setiap edge (u, v) ϵ E. Dengan implementasi yang baik, algoritme Dijkstra dapat memiliki running time yang lebih rendah dibandingkan algoritme lain yang menyelesaikan masalah serupa yaitu algoritme Bellman-Ford (Cormen et al. 2009).
8
sebuah verteks awal atau verteks berlabel permanen ke verteks berlabel sementara.
Properti agoritme Dijkstra (Widodo 2007): 1 Matriks ketetanggaan (matriks adjacent) M[mij],
mij = bobot sisi (i, j) mii = 0
mij = ∞, jika tidak ada sisi dari verteks i ke verteks j 2 Larik S = [si],
si = 1, jika verteks i merupakan jalur terpendek (verteks berlabel permanen) si = 0, jika verteks i bukan merupakan jalur terpendek (verteks berlabel
sementara) terpendek, sehingga pasti dilewati. Verteks a diberi label permanen
isi da = ∞, tidak ada jalur terpendek dari verteks a ke a
Langkah-langkah dari algoritme Dijkstra untuk lebih mudahnya dapat dilihat pada diagram alir pada Gambar 2. Misalkan diberikan sebuah graf berarah D = (V, A), V adalah himpunan verteks dan A adalah himpunan sisi berarah (arc) dengan V = {v1,v2, …, vn} dan dij≥ 0, vi,vj . Misalkan pula setiap verteks vidan vj anggota V terhubungkan oleh sisi berarah eij (kasus terburuk). Total banyaknya proses untuk setiap pasangan verteks adalah O (n2) dengan n adalah banyaknya jumlah verteks pada graf, sedangkan waktu eksekusi algoritme Dijkstra untuk pencarian jalur terpendek semua pasangan verteks pada kasus terburuk mempunyai kompleksitas O (n4) (Bahri 1997).
9
Gambar 2 Diagram alir algoritme Djiktra (Suherman et al. 2011)
Pada kasus terburuk, waktu eksekusi algoritme Floyd-Warshall untuk proses pencarian jalur terpendek semua pasangan simpul mempunyai kompleksitas O (n3) dengan n adalah banyaknya jumlah verteks pada graf (Bahri 1997). Hal tersebut bisa terjadi karena adanya perkiraan pengambilan keputusan (pemilihan jalur terpendek) pada setiap tahap antara dua simpul, hingga perkiraan tersebut diketahui bernilai optimal. Dalam proses penyelesaian menggunakan pemrograman dinamis, pendekatan yang dilakukan ada dua macam, yaitu pendekatan maju (forward) dan mundur (backward), dan solusi yang dihasilkan dari kedua pendekatan itu adalah sama. Solusi yang dihasilkan dari pemrograman dinamis bisa jadi lebih dari satu macam (Cormen et al. 2009).
Berikut adalah langkah-langkah algoritme Floyd-Warshall (Cormen et al. 2009):
10
2 Menuliskan biaya edge dari verteks asal ke verteks berikutnya
3 Menambahkan biaya edge pada setiap verteks berikutnya sampai ke verteks tujuan
4 Membandingkan biaya edge pada setiap kemungkinan rute yang ditemukan 5 Memilih rute dengan biaya edge paling optimal (kecil)
Algoritme Floyd-Warshall menggunakan sebuah fungsi shortestpath (i, j, k) untuk menemukan jalur terpendek dari i ke j dengan perantara simpul 1 s.d. k. Dari fungsi ini dapat dibangun sebuah notasi rekursif sebagai berikut:
Basis-0
shortestpath(i, j, 0) = edgeCost(i,j); Rekurens
Shortestpath(i, j, k) = min(shortestpath(i, j, k-1), shortestpath (i, k, k-1)+ shortestpath(k, j, k-1);)
Notasi rekursif ini merupakan inti dari algoritme Floyd-Warshall. Algoritme ini bekerja dengan menghitung shortestpath (i, j, 1) untuk semua pasangan (i, j), kemudian hasil tersebut akan digunakan untuk menghitung shortestpath (i, j, 2) untuk semua pasangan (i, j) dan seterusnya. Proses ini akan berlangsung hingga k=n dan telah ditemukan jalur terpendek untuk semua pasagan (i, j) menggunakan simpul-simpul perantara.
Data waktu yang bersifat dinamis membutuhkan suatu mekanisme update data. Cara kerja utama algoritme Dijkstra ialah mencari nilai optimal pada setiap pasangan verteks. Dengan cara kerja tersebut perubahan bobot pada graf tidak akan berpengaruh pada hasil yang telah didapatkan dari proses komputasi sebelumnya. Hal tersebut menjadi landasan algoritme Dijkstra digunakan untuk proses komputasi pencarian jalur tercepat pada penelitian ini. Cara kerja utama algoritme Floyd-Warshall bersebrangan dengan cara kerja algoritme Dijkstra. Pada proses komputasinya, algoritme Floyd-Warshall mencari nilai optimal pada seluruh pasangan verteks. Pencarian jalur tercepat dengan mekanisme update data di dalamnya akan memberatkan kerja sistem jika menggunakan algoritme Floyd-Warshall, karena dibutuhkan proses komputasi ulang pada seluruh pasangan verteks setiap kali terjadi update data.
Sebaliknya hal tersebut tidak berlaku jika data yang digunakan adalah data jarak tempuh yang bersifat statis seperti pada proses pencarian jalur terpendek. Pada proses ini, algoritme Floyd-Warshall hanya melakukan sekali proses komputasi untuk mendapatkan himpunan jalur terpendek dari seluruh pasangan verteks. Selanjutnya saat dilakukan proses pencarian, sistem hanya perlu menampilkan jalur terpendek sesuai dengan verteks awal dan verteks tujuan yang dimasukkan oleh user dari himpunan jalur terpendek yang telah didapatkan pada proses sebelumnya. Berbeda dari algoritme Floyd-Warshall, algoritme Dijkstra perlu melakukan proses komputasi setiap kali dilakukan pencarian jalur terpendek. Merujuk pada hal tersebut, dapat dilihat bahwa algoritme Floyd-Warshall memiliki efisiensi yang lebih baik dibanding algoritme Dijkstra dalam proses pencarian jalur terpendek dengan menggunakan data yang statis.
11
yang ada pada JGraphT 8.3.0 untuk menghasilkan sebuah jalur terpendek dari sebuah perjalanan. Khusus untuk fungsi pencarian jalur terpendek, proses implementasi algoritme dan komputasi sudah selesai pada tahap ini.
Fungsi pencarian jalur tercepat memiliki bobot waktu tempuh yang berbeda pada setiap rentang waktu. Hal ini disebabkan oleh kondisi lalu lintas antar jalan yang terus berubah setiap menitnya. Namun, mengacu pada ruang lingkup penelitian yang memiliki asumsi bahwa tidak terjadi perubahan kondisi lalu lintas yang sangat signifikan setiap 30 menit, maka perubahan bobot waktu tempuh pada setiap edge hanya terjadi jika terdapat perpindahan rentang waktu di dalam perjalanan menuju tempat tujuan.
Menggunakan graf yang telah dibuat dan library JGraphT 8.3.0, langkah-langkah proses pencarian jalur tercepat adalah sebagai berikut:
Langkah 1: Inisialisasi verteks awal (V0) atau lokasi berangkat, verteks tujuan (Vt) atau lokasi tujuan, serta hari dan waktu keberangkatan
Langkah 2: Analisis graf yang digunakan sesuai dengan hari dan waktu keberangkatan yang dimasukkan. Sebagai contoh, jika hari dan waktu keberangkatan dimasukkan adalah hari Jumat pukul 11.47, maka graf yang digunakan adalah graf yang berisi data waktu tempuh setiap edge pada hari Jumat rentang waktu pukul 11.30- 12.00
Langkah 3: Implementasikan algoritme Dijkstra pada graf dengan menggunakan library JGraphT 8.3.0. Keluaran yang dihasilkan pada proses ini adalah sebuah list edge dari verteks awal ke verteks tujuan dengan jalur tercepat berdasarkan dari perhitungan menggunakan algoritme Dijkstra
Langkah 4: Jumlahkan waktu tempuh pada setiap edge hingga verteks ke- n (Vn) atau verteks seterusnya setelah verteks awal sama dengan verteks tujuan (Vt). Bila saat proses penjumlahan Vn sudah merupakan Vt, maka total waktu tempuh adalah hasil penjumlahan waktu tempuh dari V0 sampai Vn, sebaliknya jika saat proses penjumlahan Vn belum sama dengan Vt namun didapatkan hasil waktu tempuh telah melebihi rentang waktu, maka proses penjumlahan berhenti sementara dan dilakukan perpindahan graf. Pada kondisi ini, graf yang digunakan berpindah ke graf yang memiliki data waktu untuk rentang waktu berikutnya. Menggunakan contoh seperti pada langkah 2, jika jumlah waktu tempuh sampai Vnmelebihi 13 menit sehingga melewati rentang waktu pukul 12.00, untuk verteks selanjutnya (Vn+1,Vn+2,.., Vt) akan digunakan graf representasi data waktu tempuh hari Jumat rentang waktu pukul 12.30 – 13.00
12
verteks awal (V0) sampai verteks tujuan (Vt) adalah total waktu tempuh V0 sampai Vnpada graf awal ditambah total waktu tempuh Vn+1 sampai Vt pada graf baru. Tampilkan list edge jalur tercepat dari iterasi pertama langkah 3 sebagai jalur tercepat dari verteks awal (V0) ke verteks tujuan (Vt).
Langkah-langkah di atas untuk lebih mudahnya dapat dilihat pada diagram alir pada Gambar 3.
Evaluasi Hasil
Evaluasi hasil dilakukan untuk mengevaluasi hasil yang dikeluarkan oleh sistem yaitu berupa jalur tercepat yang paling optimum dari sebuah perjalanan di Kota Bogor dan membuktikan bahwa jalur terpendek tidak selalu menjadi jalur tercepat pada suatu kondisi. Evaluasi hasil dilakukan dengan beberapa tahapan sebagai berikut:
1 Membandingkan waktu tempuh jalur tercepat yang dihasilkan sistem dengan waktu tempuh sebenarnya setelah dilakukan pengujian secara realtime
2 Menguji sebuah rute perjalanan yang merupakan jalur tercepat namun bukan merupakan jalur terpendek berdasarkan hasil yang dikeluarkan sistem.Pengujian dilakukan dengan membandingkan waktu tempuh kedua jalur setelah dilakukan pengukuran secara realtime
3 Menguji sebuah rute perjalanan yang bukan merupakan jalur tercepat maupun jalur terpendek yang dihasilkan oleh sistem. Pengujian dilakukan dengan cara mengukur waktu tempuh rute perjalanan tersebut secara realtime, kemudian membandingkan hasilnya dengan waktu tempuh jalur tercepat dan jalur terpendek yang dihasilkan sistem.
Implementasi Sistem
Implementasi sistem dilakukan dalam lingkungan pengembangan aplikasi menggunakan bahasa pemrograman Java, library komputasi JGraphT 0.8.3, dan NetBeans IDE 6.7.1. Sistem yang dikembangkan memiliki fungsi untuk mencari rute perjalanan terbaik, baik berupa jalur tercepat maupun jalur terpendek dari suatu lokasi keberangkatan ke lokasi tujuan sesuai dengan kondisi lalu lintas jalan pada hari dan waktu keberangkatan, serta mampu memperkirakan waktu tempuh total, jarak tempuh total, dan waktu tiba.
13
Gambar 3 Diagram alir proses pencarian jalur tercepat Masukkan: verteks awal (V0), verteks tujuan (Vt),
dan waktu berangkat Mulai
Menentukan graf yang sesuai dengan rentang waktu dan hari
berangkat
Jalankan algoritme Dijkstra pada graf berbobot waktu tempuh
List edge untuk jalur tercepat
Jumlahkan bobot setiap edge hasil
Vn = Vt
Total bobot sampai verteks tujuan (Vt) =
Total waktu tempuh
Tampilkan seluruh list edge untuk jalur
tercepat
Selesai Total bobot sampai
verteks ke-n (Vn)
melebihi rentang waktu
Graf sekarang = graf rentang waktu selanjutnya
14
HASIL
Penentuan Wilayah Penelitian dan Pengumpulan Data
Proses pengumpulan data pada penelitian ini menggunakan metode observasi dan studi pustaka. Studi pustaka yang digunakan berupa data-data yang disediakan pada Google Map. Data yang diperoleh dari studi pustaka yang dilakukan yaitu 13 rute yang disarankan oleh Google Map yang menghubungkan tiga titik acuan wilayah penelitian. Ketiga titik tersebut ialah IPB Dramaga, IPB Baranangsiang, dan Stasiun Bogor. Penggunaan rute yang disarankan oleh Google Map sebagai salah satu sumber data mengacu pada keefisienan data dengan hanya menggunakan rute perjalanan yang paling efektif baik dari segi jarak maupun waktu. Dari 13 rute perjalanan yang disarankan tersebut, diperoleh 36 buah verteks di dalamnya. Berdasarkan observasi langsung ke wilayah penelitian, data yang diperoleh yaitu satu buah rute perjalanan yang memiliki lima buah verteks di dalamnya. Rute tersebut dipilih karena memiliki keefisienan waktu perjalanan berdasarkan pengamatan dan pengalaman. Secara keseluruhan dari hasil pengumpulan data yang telah dilakukan, didapatkan 41 buah verteks dan 102 edge dari dua arah perjalanan yang menghubungkan tiga titik utama wilayah penelitian.
Pemodelan Graf dari Data
Data berupa verteks dan edge disertai bobot jarak dan waktu yang dihasilkan pada tahapan sebelumnya, pada tahap ini dibentuk menjadi beberapa graf. Pembuatan graf untuk fungsi pencarian jalur terpendek menggunakan data bobot jarak. Graf yang dihasilkan untuk fungsi ini sejumlah satu buah, karena data jarak yang statis atau tidak berubah. Untuk fungsi pencarian jalur tercepat menggunakan data bobot waktu. Graf yang dibuat untuk fungsi ini sejumlah 144 buah. Nilai tersebut didapatkan dari perkalian jumlah hari dengan jumlah range waktu dalam sehari. Pada penelitian ini dengan menggunakan asumsi reliabilitas waktu perjalanan yang tinggi, maka digunakan tiga buah variabel yang mewakili hari dalam seminggu. Hari normal atau hari kerja (Senin hingga Jumat) direpresentasikan oleh satu buah variabel hari Senin, sedangkan hari Sabtu dan Minggu masing – masing direpresentasikan oleh sebuah variabel hari Sabtu dan Minggu. Rentang waktu yang digunakan pada penelitian ini sebesar 30 menit sehingga dalam sehari terdapat 48 buah range waktu. Masing – masing graf mewakili setiap range waktu dari masing – masing variabel hari. Hal ini disebabkan oleh kondisi kepadatan lalu lintas yang bergerak dinamis dengan waktu, sehingga waktu tempuh dari sebuah perjalanan dapat berubah seiring waktu. Dari 145 buah graf yang diperoleh, masing – masing dibuatkan sebuah matriks adjacent. Untuk verteks yang tidak berhubungan satu sama lain akan
dikenakan biaya tidak terhingga (∞) untuk bobotnya. Graf yang terbentuk dari
15
Gambar 4 Graf yang menghubungkan antar wilayah penelitian, IPB Dramaga (A), Laladon (B), Jalan Pajajaran (C), Stasiun Bogor (D), IPB Baranangsiang (E)
Implementasi Menggunakan Algoritme Dijkstra dan Algoritme Floyd-Warshall
Graf yang telah dibuat pada tahap sebelumnya diimplementasikan menggunakan algoritme shortest path. Pada tahap ini proses komputasi dilakukan dengan menggunakan library JGraphT 8.3.0. Langkah pertama yang dilakukan pada tahap ini adalah mencari jalur terpendek dengan menggunakan grapt berbobot jarak. Untuk fungsi pencarian jalur terpendek digunakan algoritme Floyd-Warshall sebagai algoritme shortest path yang diimplementasikan ke sistem. Pada prosesnya, algoritme Floyd-Warshall yang telah disediakan di dalam library JGraphT 8.3.0 dalam bentuk class cukup dipanggil ke dalam main class java project dari penelitian ini. Namun, sebelumnya inisialisasikan terlebih dahulu data verteks dan edge ke dalam main class tersebut. Dari sini sudah dapat ditemukan jalur terpendek dari sebuah verteks awal menuju verteks tujuan.
16
Evaluasi Hasil
17
Jalan Brigadir Jenderal H Sapta Adjie Hadiprawira
18
terdapat icon berwarna merah yang menggambarkan posisi titik jalan (verteks) di atas peta Kota Bogor dan garis berwarna biru menggambarkan edge. Setelah
sistem dijalankan, kolom “Rute Hasil” akan menghasilkan sebuah rute perjalanan
terbaik baik berupa jalur terpendek maupun jalur tercepat sesuai dengan masukkan yang diisi oleh pengguna. Setiap verteks pada rute tersebut ditunjukkan oleh icon berwarna kuning pada peta Kota Bogor dan edge yang dilalui digambarkan dengan garis berwarna biru sedangkan edge lainnya yang tidak dilalui berwarna abu-abu. Di posisi bawah kolom “Rute Hasil” ditampilkan total waktu tempuh dan estimasi waktu tiba dari rute yang dihasilkan di kolom “Rute
Hasil”. Tampilan sistem setelah dijalankan dapat dilihat pada Gambar 6. Pada
tahap ini juga dilakukan perhitungan running time pada proses pencarian jalur tercepat dan pencarian jalur terpendek. Running time beberapa contoh hasil dari masing-masing pencarian dapat dilihat pada Tabel 3.
Gambar 5 Tampilan awal sistem hasil implementasi
19
Tabel 3 Running time beberapa contoh hasil pencarian
No. Proses Pencarian Hasil
Jumlah Verteks Running Time
Pada penelitian ini berhasil dibangun sebuah sistem yang dapat menampilkan sebuah rute perjalanan baik berupa jalur tercepat maupun jalur terpendek di wilayah Kota Bogor. Tidak diperhitungkannya indeks waktu buffer (buffer time index) serta digunakannya beberapa asumsi pada proses pengumpulan data, memungkinkan membuat perkiraan total waktu tempuh dan waktu tiba memiliki akurasi yang rendah pada keadaan realtime. Faktor eksternal penyebab kemacetan seperti kecelakaan lalu lintas, perbaikan jalan, acara khusus, dan lain sebagainya yang tidak diperhitungkan dalam penelitian ini, memungkinkan terjadinya kesalahan dari hasil sistem dalam kondisi realtime.
Dari hasil penelitian pada Tabel 1 dan Tabel 2, dapat dilihat bahwa estimasi total waktu tempuh yang dihasilkan oleh sistem memiliki selisih yang tidak jauh berbeda dengan total waktu tempuh dalam kondisi realtime yaitu selisih tidak lebih dari 10 menit. Hal tersebut dapat dilihat pada baris 1 dan 3. Pada baris 1 selisih total waktu tempuh dari estimasi total waktu tempuh dengan total waktu tempuh sebenarnya sebesar 0.4 menit, sedangkan pada baris 3 selisih total waktu tempuh sebesar 6 menit.
Pada baris 1 dan 2 membuktikan bahwa jalur terpendek tidak selalu menjadi jalur tercepat pada suatu kondisi. Hasil yang berbeda terjadi pada baris 3 dan 4. Pada baris tersebut membuktikan bahwa jalur terpendek dapat menjadi jalur tercepat. Kondisi lalu lintas yang padat pada ruas jalan dari jalur terpendek menjadi salah satu faktor yang menyebabkan jalur terpendek tidak selalu menjadi jalur tercepat, sedangkan jika kondisi lalu lintas ruas jalan pada jalur tersebut lancar maka jalur terpendek dapat menjadi jalur tercepat.
Baris 5 membuktikan bahwa jalur tercepat yang dihasilkan sistem memberikan total waktu tempuh paling optimal. Hal tersebut dapat dilihat dari total waktu tempuh jalur tercepat pada kondisi realtime paling kecil dibandingkan dengan jalur terpendek yang dihasilkan sistem maupun jalur lain yang dipilih berdasarkan jalur yang disarankan oleh Google Map untuk lokasi awal dan akhir yang sama.
20
tercepat, total waktu tempuh, estimasi waktu tiba, dan visualisasinya. Panjang jalur atau jumlah verteks yang dihasilkan mempengaruhi lamanya running time. Hal tersebut ditunjukkan pada Tabel 3 baris 1 dan 2. Jika jumlah verteks yang dihasilkan sedikit maka running time akan lebih cepat dibandingkan jika jumlah verteks yang dihasilkan banyak. Hal ini terjadi karena pada proses pencarian jalur tercepat algoritme Dijkstra mencari setiap pasangan verteks pada setiap prosesnya, sehingga banyak verteks yang dilalui mempengaruhi running time proses ini. Oleh sebab itu, waktu keberangkatan juga mempengaruhi panjang running time, karena panjang jalur yang dihasilkan dapat berbeda pada setiap waktu keberangkatan.
Hal berbeda terjadi pada proses pencarian jalur terpendek dengan menggunakan algoritme Floyd-Warshall. Panjang jalur atau banyaknya verteks yang dihasilkan tidak mempengaruhi panjang running time proses ini. Contohnya ditunjukkan pada Tabel 3 baris 4 dan 5. Saat jumlah verteks yang dihasilkan sedikit yaitu 5 verteks, dibutuhkan running time yang sama dengan saat jumlah verteks yang dihasilkan banyak yaitu 17 verteks. Hal tersebut terjadi karena algoritme Floyd-Warshall telah menghitung semua pasangan verteks dalam proses komputasi pertamanya sehingga menghasilkan himpunan jalur terpendek dari semua pasangan verteks. Pada Tabel 2 baris 3 menunjukkan bahwa running time yang dibutuhkan sistem pada proses pencarian jalur terpendek pertama kali untuk menghitung semua pasangan verteks sebesar 18 ms. Untuk proses pencarian jalur terpendek berikutnya, sistem hanya perlu menggunakan himpunan jalur terpendek yang telah didapatkan pada proses sebelumnya untuk menampilkan jalur terpendek yang dicari. Oleh sebab itu, running time yang dibutuhkan sistem untuk pencarian jalur terpendek sangat kecil yaitu 1 ms untuk jumlah verteks yang dihasilkan banyak maupun sedikit. Tidak berpengaruhnya panjang jalur atau jumlah verteks yang dihasilkan menyebabkan waktu keberangkatan juga tidak mempengaruhi proses ini, karena proses pencarian jalur terpendek tidak dipengaruhi oleh bobot waktu, melainkan bobot jarak antarverteks.
SIMPULAN
21
SARAN
Saran untuk penelitian selanjutnya antara lain:
1 Diperlukan penelitian lebih lanjut untuk membuktikan efektifitas hasil pencarian jalur tercepat menggunakan algoritme Dijkstra dengan membandingkan hasil menggunakan algoritme shortest path lainnya. 2 Membangun sebuah implementasi sistem yang lebih attractive dalam
penggunaannya secara real time.
3 Dalam penelitian ini masih diperlukan fungsi update data mengingat kondisi jalan maupun kondisi lalu lintas jalan yang dapat berubah dengan data yang lebih lengkap dan real.
DAFTAR PUSTAKA
Arifianto S. 2012. Sistem aplikasi penentuan rute terpendek pada jaringan multi moda transportasi umum menggunakan algoritma Dijkstra [tesis]. Semarang (ID): Universitas Diponegoro.
Astuti KD. 2011. Polresta Bogor Mendeteksi 23 Titik Kemacetan. Pikiran Rakyat Online [internet]. [diunduh 2012 Des 8]. Tersedia pada: http://www.pikiran-rakyat.com/node/156124.
Bahri S. 1997. Algoritma penentuan lintasan terpendek untuk semua pasangan simpul [skripsi]. Bogor (ID): Institut Pertanian Bogor.
Cormen TH, Leiserson CE, Rivest RL, Stein C. 2009. Introduction to Algorithms. Ed ke-3. Massachusetts (US): The MIT Press.
Elghazaly MBS, Shukur Z. 2010. Software design for route finder and travel cost estimation. European Journal of Scientific Research. 48(2):188-198. Falatehan AF.2005. Kebijakan mengatasi kemacetan lalu lintas di Kota Bogor:
suatu pendekatan analisis hirarki [tesis]. Depok (ID): Universitas Indonesia.
Felisiani T. 2012. Ini Rencana Cara Menghadapi Kemacetan di Jakarta. Tribun News [internet]. [diunduh 2013 Mei 29]. Tersedia pada: http://www.tribunnews.com/2012/12/02/ini-rencana-cara-mengatasi-kemacetan-di-jakarta.
Joyoprayitno HP. 2012. Tingkat Pemilikan Kendaraan di Indonesia. Harianto P Blog [internet]. [diunduh 2013 Mei 29]. Tersedia pada: http://hariantop.blogspot.com/2012/05/tingkat-pemilikan-kendaraan-di.html
Nandiroh S, Haryanto. 2009. Penentuan rute terpendek jalan dan lokasi pariwisata di kota Surakarta menggunakan algoritma Dijkstra dan WAP pada handphone. Di dalam: Simposium Nasional RAPI VIII 2009; 2009 Des 17; Surakarta, Indonesia. Surakarta (ID): Universitas Muhammadiyah Surakarta. hlm I75-I79.
22
Suherman E, Prasetijo AB, Sudjadi. 2011. Simulasi algoritma Dijkstra pada protokol routing open shortest path first [skripsi]. Semarang (ID): Universitas Diponegoro.
23
Lampiran 1 Daftar verteks yang digunakan
No. Nama Verteks
8 Jalan Sindang Barang Jero
9 Jalan Raden Kyai Haji Abdullah bin Nuh (komplek
IPB)
10 Laladon
11 Jalan Letnan Jenderal Ibrahim Adjie
12 Jalan Mayor Jenderal Ishak Djuarsa
13 Jalan Veteran
19 Jalan Raden Kyai Haji Abdullah bin Nuh
20 Jalan Kyai Haji Soleh Iskandar
21 Jalan Haji Soleh Iskandar
22 Jalan Pajajaran
28 Jalan Sindang Barang Dalem
29 Jalan Babakan Lebak
30 Jalan Kampus Dalem
31 Jalan Tawakal
32 Jalan Cibulang Tenggoh
33 Jalan Brigadir Jenderal H Sapta Adjie Hadiprawira
34 Jalan Dokter Semeru (RS.Karya Bakti)
35 Jalan Mawar
36 Jalan Merdeka
37 Jalan Taman Cimanggu
38 Jalan Raya Taman Cimanggu
39 Jalan Cimanggu Kaum
40 Jalan Cimanggu Pahlawan
24
Lampiran 2 Daftar edge yang digunakan
No. Verteks Awal Verteks Akhir Jarak (meter)
1 IPB Dramaga Jalan Babakan Raya 567
2 Jalan Babakan Raya Hotel Duta Berlian 500
3 Hotel Duta Berlian Pertigaan Jalan Ciherang 1000
4 Pertigaan Jalan Ciherang Jalan Dramaga 1000
5 Jalan Dramaga Jalan Raya Cifor 900
6 Jalan Raya Cifor Jalan Sindang Barang Jero 190
7 Jalan Sindang Barang Jero
Jalan Raden Kyai Haji Abdullah bin Nuh
900
8 Jalan Sindang Barang Jero
Jalan Letnan Jenderal Ibrahim
14 Jalan Veteran Jalan Kapten Muslihat 1660
15 Jalan Kapten Muslihat Stasiun Bogor 260
16 Stasiun Bogor Jalan.Ir.H.Juanda 350
17 Jalan.Ir.H.Juanda Jalan Jalak Harupat 550
18 Jalan Jalak Harupat Jalan Pangrango 1100
19 Jalan Raya Pajajaran IPB Baranangsiang 450
20
Abdullah bin Nuh Jalan Kyai Haji Soleh Iskandar
2000
22
Jalan Kyai Haji Soleh
Iskandar Jalan Haji Soleh Iskandar
3800
23 Jalan Haji Soleh Iskandar Jalan Pajajaran 600
24 Jalan Pajajaran Jalan Raya Pajajaran 3100
25 Jalan Pajajaran Jalan Malabar 2 3100
26 Jalan Malabar 2 IPB Baranangsiang 1000
27 Jalan Pangrango Jalan Raya Pajajaran 400
28 IPB Dramaga Jalan Cifor 600
29 Jalan Cifor Jalan Tawakal 1500
30 Jalan Tawakal Jalan Raya Rawajaha 350
31 Jalan Raya Rawajaha Jalan SBJ CIFOR 600
32 Jalan SBJ CIFOR Jalan Sindang Barang Jero 1900
33 IPB Dramaga Jalan Sindang Barang Dalem 500
34 Jalan Sindang Barang Dalem Jalan Babakan Lebak 300
25
Lampiran 3 Lanjutan
36 Jalan Sindang Barang Hotel Duta Berlian 600
37 Jalan Tawakal Jalan Cibulang Tenggoh 350
38 Jalan Cibulang Tenggoh Jalan Raya Cifor 2100
39
44 Jalan Merdeka Jalan Kapten Muslihat 650
45
Jalan Raden Kyai Haji
Abdullah bin Nuh Jalan Taman Cimanggu
2200
46 Jalan Taman Cimanggu Jalan Raya Taman Cimanggu 700
47
Jalan Raya Taman
Cimanggu Jalan Cimanggu Kaum
1100
48 Jalan Cimanggu Kaum Jalan Cimanggu Pahlawan 170
49 Jalan Cimanggu Pahlawan Jalan Tentara Pelajar 550
50 Jalan Tentara Pelajar Jalan Merdeka 850
51 Jalan Babakan Raya IPB Dramaga 567
52 Jalan Dramaga Pertigaan Jalan Ciherang 1000
53
57 Jalan Sindang Barang Jero Jalan Raya Cifor 190
58
Ibrahim Adjie Jalan Sindang Barang Jero
1400
60
Jalan Raden Kyai Haji
Abdullah bin Nuh Jalan Sindang Barang Jero
900
63 Jalan Haji Soleh Iskandar Jalan Kyai Haji Soleh Iskandar 3800
64 Jalan Pajajaran Jalan Haji Soleh Iskandar 600
65 Jalan Veteran
Jalan Mayor Jenderal Ishak Djuarsa
1000
26
Lampiran 4 Lanjutan
67 Stasiun Bogor Jalan Kapten Muslihat 260
68 Jalan.Ir.H.Juanda Stasiun Bogor 350
69 Jalan Raya Pajajaran Jalan Pajajaran 3100
70 Jalan Malabar 2 Jalan Pajajaran 3100
71 IPB Baranangsiang Jalan Malabar 2 1000
72 Jalan Jalak Harupat Jalan.Ir.H.Juanda 550
73 Jalan Cifor IPB Dramaga 600
74 Jalan Tawakal Jalan Cifor 1500
75 Jalan Raya Rawajaha Jalan Tawakal 350
76 Jalan SBJ CIFOR Jalan Raya Rawajaha 600
77 Jalan Sindang Barang Jero Jalan SBJ CIFOR 1900
78 Jalan Sindang Barang Dalem IPB Dramaga 500
79 Jalan Babakan Lebak Jalan Sindang Barang Dalem 300
80 Jalan Sindang Barang Jalan Babakan Lebak 1200
81 Hotel Duta Berlian Jalan Sindang Barang Dalem 600
82 Hotel Duta Berlian Jalan Babakan Raya 500
83 Pertigaan Jalan Ciherang Hotel Duta Berlian 1000
84 Jalan Cibulang Tenggoh Jalan Tawakal 350
85 Jalan Raya Cifor Jalan Cibulang Tenggoh 2100
86
91 Jalan Kapten Muslihat Jalan Merdeka 650
92 Jalan Taman Cimanggu
94 Jalan Cimanggu Kaum Jalan Raya Taman Cimanggu 1100
95 Jalan Cimanggu Pahlawan Jalan Cimanggu Kaum 170
96 Jalan Tentara Pelajar Jalan Cimanggu Pahlawan 550
97 Jalan Merdeka Jalan Tentara Pelajar 850
98 Jalan Malabar 2 Jalan Pangrango 400
99 Jalan Pangrango Jalan Jalak Harupat 1100
100 Jalan Pajajaran Jalan Pangrango 2700
101 Jalan Pangrango Jalan Pajajaran 2700
27
RIWAYAT HIDUP
Penulis dilahirkan di Medan pada tanggal 2 Februari 1992 sebagai anak tunggal dari pasangan Linda Agustarina dan Rusnaidi. Riwayat akademik penulis dimulai pada tahun 1997 dengan masuk ke SD Negeri Pondok Bambu 07 Pagi Jakarta. Tahun 2003 penulis lulus dari SD kemudian melanjutkan ke SMP Negeri 51 Jakarta dan lulus pada tahun 2006. Tahun 2009 penulis lulus dari SMA Negeri 71 Jakarta dan pada tahun yang sama diterima pada Jurusan Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor melalui Jalur Seleksi Masuk IPB (USMI).
Selama mengikuti perkuliahan di IPB, penulis selain aktif kuliah juga aktif pada organisasi kemahasiswaan di IPB khususnya di ruang lingkup Departemen Ilmu Komputer yaitu Himpunan Mahasiswa Ilmu Komputer (HIMALKOM). Penulis juga pernah ikut serta sebagai panitia di berbagai event di IPB maupun Ilkom, contohnya adalah Olimpiade Mahasiswa IPB (OMI) dan IT TODAY. Sebagai salah satu mata kuliah, penulis melaksanakan Praktek Kerja Lapang (PKL) di Badan Pemeriksa Keuangan Republik Indonesia (BPK RI), dengan
bidang kajian “ Pembuatan WEB Database Entitas Pemeriksaan”.