SISTEM PENCARIAN JALUR TERPENDEK DI KOTA MEDAN
MENGGUNAKANALGORITMA
FLOYD-WARSHALL
SKRIPSI
ZULFIKRI PUTRA
081402009
PROGRAM STUDI TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
ABSTRAK
Transportasi adalah persoalan penting bagi masyarakat kota yang dinamis terutama Kota Medan. Salah satu kendala dalam transportasi ialah kemacetan, Untuk itu diperlukan suatu sistem yang dapat membantu dalam menentukan lintasan terpendek. Seiring dengan perkembangan ilmu pengetahuan dan teknologi,permasalahan pencarian lintasan terpendek ini dapat dipecahkan dengan berbagai algoritma, diantaranya adalah algoritma Floyd-Warshall. Algoritma ini menggunakan prinsip dinamis yang melakukan pemecahan masalah dengan memandang solusi yang akan diperoleh sebagai suatu keputusan yang saling terkait dan membandingkan semua kemungkinaan lintasan pada graf untuk setiap sisi dari semua simpul. Aplikasi yang dibangun menggunakan algoritma tersebutmampumenyelesaikanpermasalahanpencarianjalur optimal denganmenunjukkanlintasanterpendekantaraduanode.Aplikasi akan dibangun menggunakan bahasa pemograman javascript yang di operasikan pada android.
3
S
HORTEST PATH SEARCH SYSTEM IN THE MEDAN CITY
USING FLOYD-WARSHALL ALGORITHM
ABSTRACT
Transportation is an important issue for the community, especially the dynamic city of Medan. One of the constraints in transport is congestion, For that we need a system that can assist in determining the shortest path. Along with the development of science and technology, the problem of finding the shortest path has been solved by a variety of algorithms, including the Floyd-Warshall algorithm. This algorithm uses the dynamic principle of solving the problem by looking at a solution that would be obtained as an inter-related decisions and compare all kemungkinaan track on each side of the graph for all nodes.Applications built using the algorithm is able to resolve the finding optimal problem path to showing the shortest path between two nodes. The application will be built using the javascript programming language that has been operated on android
DAFTARISI
1.7. Sistematika Penulisan 5
Bab 2 Landasan Teori 6
2.6. Jenis Metode Optimasi Algoritma 11
2.7. Algoritma Floyd-Warshall 12
2.7.1. Karakteristik Algoritma Floyd-Warshall 12 2.7.2. Pseudocode Algoritma Floyd-Warshall 13
2.8. JavaScript 14
2.9. GIS (geographic information system) 14
2.10.Google-Map API 16
5
Bab 3 Analisis dan Perancangan Sistem 18
3.1. Analisis Masalah 18
3.2. Analisis Algoritma Floyd-Warshall pada Penentuan Jarak Terpendek 18
3.3. Analisis Kebutuhan Sistem 19
3.3.1. Kebutuhan fungsional 19
3.2.2. Kebutuhan nonFungsional 19
3.4. Perancangan Sistem 20
3.4.1. Arsitektur Umum (General Architecture) 22 3.4.2. Rancangan Pencarian Jalur Terpendek 22
3.4.3. Rancangan Halaman Utama 24
3.4.4. Rancangan Halaman Hasil Pencarian 25
Bab 4 Implementasi dan Pengujian Sistem 27
4.1. Implementasi 26
4.1.1. Konfigurasi Perangkat Keras 27
4.1.2. Konfigurasi Perangkat Lunak 28
ABSTRAK
Transportasi adalah persoalan penting bagi masyarakat kota yang dinamis terutama Kota Medan. Salah satu kendala dalam transportasi ialah kemacetan, Untuk itu diperlukan suatu sistem yang dapat membantu dalam menentukan lintasan terpendek. Seiring dengan perkembangan ilmu pengetahuan dan teknologi,permasalahan pencarian lintasan terpendek ini dapat dipecahkan dengan berbagai algoritma, diantaranya adalah algoritma Floyd-Warshall. Algoritma ini menggunakan prinsip dinamis yang melakukan pemecahan masalah dengan memandang solusi yang akan diperoleh sebagai suatu keputusan yang saling terkait dan membandingkan semua kemungkinaan lintasan pada graf untuk setiap sisi dari semua simpul. Aplikasi yang dibangun menggunakan algoritma tersebutmampumenyelesaikanpermasalahanpencarianjalur optimal denganmenunjukkanlintasanterpendekantaraduanode.Aplikasi akan dibangun menggunakan bahasa pemograman javascript yang di operasikan pada android.
3
S
HORTEST PATH SEARCH SYSTEM IN THE MEDAN CITY
USING FLOYD-WARSHALL ALGORITHM
ABSTRACT
Transportation is an important issue for the community, especially the dynamic city of Medan. One of the constraints in transport is congestion, For that we need a system that can assist in determining the shortest path. Along with the development of science and technology, the problem of finding the shortest path has been solved by a variety of algorithms, including the Floyd-Warshall algorithm. This algorithm uses the dynamic principle of solving the problem by looking at a solution that would be obtained as an inter-related decisions and compare all kemungkinaan track on each side of the graph for all nodes.Applications built using the algorithm is able to resolve the finding optimal problem path to showing the shortest path between two nodes. The application will be built using the javascript programming language that has been operated on android
BAB 1
PENDAHULUAN
1.1. Latar Belakang
Transportasi adalah persoalan penting bagi masyarakat kota yang dinamis. Terutama Kota Medan sebagai kota terbesar nomor tiga di Indonesia dan juga ibukota propinsi Sumatera Utara, memiliki perkembangan yang pesat dalam kegiatan ekonomi, sosial, budaya dan kegiatan lainnya. Maka hal yang wajar apabila aktivitas penduduknya relatif tinggi seiring dengan kebutuhan perjalanannya. Kebutuhan akan perjalanan ini menuntut adanya pemilihan rute terpendek dari suatu daerah ke daerah lainnya sehingga dapat mengefisiensikan jarak, waktu, dan biaya yang dibutuhkan untuk mencapai daerah tujuan tersebut. Banyaknya jalan terkadang menyulitkan seseorang untuk mencapai tempat tujuannya. Dengan Kemajuan teknologi informasi yang ada sekarang, dapat dipergunakan sebagai sarana untuk meningkatkan pelayanan umum, diantaranya para pengguna sarana transportasi untuk dapat memperoleh informasi lalu-lintas dengan cara yang mudah. Salah satu kendala dalam transportasi ialah kemacetan. Kemacetan lalu lintas merupakan suatu permasalahan yang sering muncul pada pengguna sarana transportasi, untuk itu para pengguna transportasi dalam melakukan perjalanan memerlukan suatu solusi untuk mendapatkan jalur terdekat untuk menghindari kemacetan sehingga dapat mengefisienkan waktu, tenaga, serta biaya.
disajikan dalam bentuk yang lebih sederhana serta terkomputerisasi sehingga memudahkan dalam penentuan lintasan terpendek.
Seiring berkembangnya teknologi, banyak muncul metode-metode pencarian rute terpendek yang cukup efektif dalam menyelesaikan permasalahan kemacetan lalu lintas. Secara umum, pencarian rute terpendek dapat dibagi menjadi dua metode yaitu metode konvensional dan metode heuristik. Metode konvensional cenderung lebih mudah dipahami karena merupakan perhitungan biasa. sedangkan metode heuristik diterapkan dengan menggunakan perhitungan kecerdasan buatan. Metode deterministik terdiri dari beberapa macam algortima. Salah satu metode deterministik yang sering digunakan dalam pencarian rute terpendek adalah Algoritma Floyd-Warshall.
eksekusi algoritma, akan didapatkan jarak sebagai jumlah bobot dari lintasan terpendek antar setiap pasang simpul yang ada.
1.2. Rumusan Masalah
Berdasarkan penjabaran latar belakang sebelumnya, maka rumusan masalah dalam tugas akhir ini adalah pemanfaatan teknologi informasi sebagai solusi penentuan jarak terpendek pada landmark menggunakan algoritma Floyd-Warshall.
1.3. Batasan Masalah
Untuk mengurangi ruang lingkup yang terlalui besar, maka pada tugas akhir ini dilakukan beberapa batasan masalah sebagai berikut :
1. Hambatan berupa lampu merah, kerusakan pada jalan diabaikan.
2. Graf yang dihitung adalah graf berarah (directed graph atau digraph)dan berbobot (weighted graph).
3. Data spasial yang digunakan hanya berupa peta kota medan dengan batas area 3 kecamatan.
4. Jalur yang digunakan tidak memasukkan jalan yang bukan jaalan utama dalam kota Medan.
5. Dalam Sistem Informasi Geografis, sistem hanya akan menampilkan peta jalan, gedung hotel yang ada di Kota Medan.
1.4. Tujuan Penelitian
8
1. menemukan rute mana yang paling terpendek menuju suatu tempat yang diwakili oleh satu titik awal(A) dan satu titik tujuan(B) sehingga dapat memberikan serta mennggunakan informasi tersebut kepada pengguna jalan di Kota Medan.
2. pengaplikasian metode Floyd Warshall untuk penetuan jalur terpendek pada pencarian hotel dan landmark-landmark yang ada di Kota Medan.
1.5. Manfaat Penelitian
a. Membantu masyarakat yang ada di Kota Medan terutama yang berhubungan langsung dengan transportasi seperti perusahaan bus, travel dan jasa sopir dalam menentukan jalur optimum saat mereka melaksanakan perjalanan sehingga dapat menghemat waktu, tenaga dan biaya.
b. Sebagai aplikasi alternatif dan bahan pembelajaran dalam memahami pencarian rute terpendek, untuk kemudahan proses mencari hotel, landmark di wilayah Kota Medan.
1.6. Metodologi Penelitian
Metode penelitian yang akan digunakan adalah: a. Studi Literatur
Pengerjaan tugas akhir ini dimulai dengan mengumpulkan bahan-bahan sebagai referensi baik dari buku, paper, jurnal, makalah, dan sumber-sumber lain yang berkaitan dan beberapa referensi lainnya untuk menunjang pencapaian tujuan tugas akhir.
b. Analisis Data
Pada tahap ini dilakukan penelitian yang bertujuan untuk menganalisis masalah yang ada di lapangan dan kebutuhan yang diperlukan sehingga dapat dilakukan perancangan dengan baik.
Pada tahap ini dilakukan perancangan proses jalur optimal yang akan dilauli menggunakan algoritma Floyd-Warshall.
d. Implementasi
Pada tahap ini dilakukan implementasi dari analisis dan perancangan yang dilakukan daalam kode program.
e. Pengujian dan Analisis sistem
Pada tahap ini akan dilakukan pengujian terhadap kinerja sistem dan kebenaran algoritma Floyd-Warshall yang digunakan untuk mencari lintasan terpendek serta analisis terhadap hasil routing dan output yang dihasilkan.
f. Penyusunan Laporan dan Kesimpulan Akhir
Metode ini akan dilaksanakan dengan melakukan pendokumentasian hasil analisis dan implementasi secara tertulis dalam bentuk laporan skripsi.
1.7. Sistematika Penulisan
Tugas akhir ini disusun dalam lima bab dengan sistematika penulisan sebagai berikut :
Bab I : Pendahuluan
Pada bab ini pendahuluan berisi tentang hal-hal yang mendasari dilakukannya penelitian serta pengidentifikasian masalah penelitian. Bagian-bagian yang terdapat dalam bab pendahuluan ini terdiri atas latar belakang masalah, perumusan masalah, batasan masalah, tujuan penelitian, dan manfaat penelitian.
10
Pada bab ini tinjauan pustaka berisi landasan teori, penelitian terdahulu, kerangka pikir dan hipotesis yang diperoleh dari acuan yang mendasari dalam melakukan penelitian ini.
Bab III : Analisis dan Perancangan Sistem
Pada bab ini analisis dan perancangan sistem berisi metodologi penelitian yang dilakukan dalam pengimplementasian algoritma Floywd Warshal pada pencarian hotel dan landmark di Kota Medan
Bab IV : Implementasi dan Pengujian Sistem
Pada bab ini hasil dan pembahsasan berisi penjelasan hasil dari pengujian algoritma Floyd Warshall yang telah dilakukan dalam menyelesaikan permasalahan dalam penentuan jalur optimal untuk pencarian hotel dan landmark di Kota Medan.
Bab V : Kesimpulan dan Saran
BAB 2
LANDASAN TEORI
2.1 Konsep Dasar Algoritma
2.1.1 Sejarah Algoritma
Para ahli berusaha menemukan asal kata algorism ini namun hasilnya kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal mula kata tersebut. Kata algorism berasal dari nama penulis buku Arab yang terkenal, yaitu Abu Ja’far Muhammad ibnu Musa al-Khuwarizmi (al-al-Khuwarizmi dibaca orang Barat menjadi algorism).
Al-Khuwarizmi menulis buku yang berjudul Kitab al jabar wal-muqabala, yang artinya “Buku pemugaran dan pengurangan” (The book of restoration and reduction). Dari judul buku itu diperoleh juga akar kata “aljabar” (algebra). Perubahan dari kata algorism menjadi alghorithm muncul karena kata algorism sering dikelirukan dengan arithmetic, sehingga akhiran –sm berubah menjadi –thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa, maka lambat laun kata algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna aslinya. Dalam bahasa Indonesia, kata alghorism diserap menjadi algoritma.
2.1.2 Definisi Algoritma
sehingga algoritma seseorang dapat juga berbeda dari algoritma orang lain. Sedangkan penekanan kedua adalah tertulis, yang artinya dapat berupa kalimat, gambar, atau tabel tertentu. Algoritma dapat dituliskan dalam berbagai notasi, misalnya dalam notasi kalimat-kalimat deskriptif. Dengan notasi kalimat deskriptif, deskripsi setiap langkah dijelaskan dengan bahasa sehari-hari secara jelas. Setiap langkah biasanya diawali dengan kata kerja seperti ‘baca’, ‘hitung’, ‘masukan’, ‘bagi’, ‘ganti’, dan sebagainya. Sedangkan pernyataan bersyarat dinyaakan dengan ‘jika’,’maka’, dan sebagainya.
2.2 Konsep Dasar Graf
2.2.1. Sejarah Graf
Menurut catatan sejarah, masalah jembatan Konigsberg adalah masalah yang pertama kali menggunakan graf (tahun 1736). Di kota konigsberg (sebelah timur negara bagian Prussia, Jerman), sekarang bernama kota Kaliningrad, terdapat sungai Pregal yang mengalir mengintari pulau Kneiphof lalu bercabang menjadi dua buah anak sungai.
Ada tujuh buah jembatan yang menghubungkan daratan yang dibelah oleh sungai tersebut. Masalah jembatan Konigsberg adalah : apakah mungkin melalui ketujuh buah jembatan itu masing-masing tepat satu kali, dan kembali lagi ketempat semula. Sebagian penduduk kota tersebut sepakat bahwa memang tidak mungkin melalui setiap jembatan itu hanya sekali dan kembali lagi ke tempat asal mula keberangkatan, tetapi mereka tidak dapat menjelaskan mengapa demikian jawabannya, kecuali dengan cara coba-coba. Tahun 1736, seorang matematikawan Swiss, L.Euler, adalah orang pertama yang berhasil menemukan jawaban masalah itu dengan pembuktian yang sederhana. Ia memodelkan masalah ini kedalam graf. Daratan (titik-titik yang dihubungkan oleh jembatan) dinyatakannya sebagai titik (noktah) yang disebut simpul (vertex) dan jembatan dinyatakan sebagai garis yang disebut sisi (edge).
Menurut Indra Yatini. B. dan Erliansyah Nasution, 2005 : 379 Graf penting sebagai model untuk berbagai jenis proses atau struktur. Kota-kota dan jalan-jalan yang menghubungkan membentuk graf, seperti juga komponen pada papan sirkuit yang berhubungan di antara mereka.
“Graf secara umum bisa didefinisikan sebagai kumpulan titik (nodes atau vertices) dan garis (arcs atau edges)” (P.Insap Santosa, 2004 : 497).
Graf G didefenisikan sebagai pasangan himpunan (V,E) yang dalam hal ini V adalah himpunan tidak kosong dari verteks (vertex atau node) = {v1, v2, ...,vn} dan E adalah himpunan sisi (edge) yang menghubungkan sepasang verteks = {e1, e2, ... ,en}, atau dapat ditulis singkat notasi G=(V,E). Hal ini berarti bahwa V tidak boleh kosong, sedangkan E boleh kosong.
Berikut adalah contoh gambar graf :
Gambar 2.1 Graf sederhana (a), Graf Ganda (b), Graf semu (c)
19
Menurut arah dan bobotnya, graf dibagi menjadi empat bagian, yaitu:
1. Graf berarah dan berbobot: tiap sisi mempunyai anak panah dan bobot.
Gambar 2.2 Graf Berarah dan Berbobot
Gambar 2.2 menunjukkan graf berarah dan berbobot yang terdiri dari lima verteks yaitu verteks A, B, C, D, dan E. Verteks A menujukkan arah ke verteks B, verteks C dan verteks D, verteks B menunjukkan arah ke verteks D, verteks C menunjukkan arah ke verteks D, dan seterusnya. Bobot antar verteks pun telah di ketahui.
2. Graf tidak berarah dan berbobot: tiap sisi tidak mempunyai anak panah tetapi mempunyai bobot.
Gambar 2.3 Graf Tidak Berarah dan Berbobot
Gambar 2.3 menunjukkan graf tidak berarah dan berbobot. Graf terdiri dari lima verteks yaitu verteks A, B, C, D, dan E. Verteks A tidak menunjukkan arah ke verteks B atau C, namun bobot antara verteks A dan verteks B telah diketahui. Begitu juga dengan verteks-verteks yang lain.
Gambar 2.4 Graf berarah dan tidak berbobot
4. Graf tidak berarah dan tidak berbobot: tiap sisi tidak mempunyai anak panah dan tidak berbobot.
Gambar 2.5 Graf Tidak Berarah dan Tidak Berbobot
2.3 Definisi Lintasan
Lintasan adalah hubungan antara titik dalam sebuah graf. Lintasan yang berawal dan berakhir pada simpul yang sama disebut lintasan tertutup (closed path), sedangkan lintasan yang tidak berawal dan berakhir pada simpul yang sama disebut lintasan terbuka (open path).
2.3.1 Lintasan Terpendek (Shortest Path)
21
Asumsi yang digunakan disini adalah bahwa semua bobot bernilai positif. Kata “terpendek” jangan selalu diartikan secara fisik sebagai panjang minimum, sebab kata “terpendek” berbeda-beda maknanya tergantung pada tipikal persoalan yang akan diseleseikan. Namun secara umum “terpendek” berarti meminimalkan bobot pada suatu lintasan di dalam graf.
Ada beberapa macam persoalan lintasan terpendek, antara lain : a. Lintasan terpendek antara dua buah simpul tertentu. b. Lintasan terpendek antara semua pasangan simpul.
c. Lintasan terpendek dari simpul tertentu ke semua simpul yang lain.
d. Lintasan terpendek antara dua buah simpul yang melalui beberapa simpul tertentu.
2.4 Definisi Jarak
Definisi jarak adalah angka yang menunjukkan seberapa jauh suatu benda berubah posisi melalui suatu lintasan tertentu. (Handaka, M.S. 2010) Dalam fisika atau dalam pengertian sehari-hari, jarak dapat berupa estimasi jarak fisik dari dua buah posisi berdasarkan kriteria tertentu (misalnya jarak tempuh antara Medan-Brastagi). Dalam bidang matematika, jarak haruslah memenuhi kriteria tertentu.
2.5 Definisi Node (Simpul)
Node atau titik simpul adalah titik pertemuan dari dua atau lebih elemen rangkaian. Junction atau titik simpul utama atau titik percabangan adalah titik pertemuan dari tiga atau lebih elemen rangkaian (Bovy, P. and E. Stern.1990).
2.6 Jenis Metode Optimasi Algoritma
1. Metode Konvensional (deterministik)
Metode konvensional adalah metode yang diterapkan menggunakan perhitungan matematika murni. Ada beberapa metode konvensional yang sering digunakan untuk menyelesaikan masalah optimasi, diantaranya: algoritma Djikstra, algoritma Floyd-Warshall, dan algoritma Bellman-Ford.
2. Metode Heuristik
Metode heuristik adalah salah satu dari bidang kecerdasan buatan yang digunakan untuk menyelesaikan masalah optimasi. Terdapat beberapa algoritma dari metode heuristik yang sering digunakan dalam permasalahan optimasi, diantaranya adalah algoritma genetika, algoritma pencarian tabu, jaringan saraf tiruan, algoritma semut dan lain-lain.
2.7 Algoritma Floyd Warshall
Algoritma Floyd-Warshall adalah sebuah algoritma analisis graf untuk mencari bobot minimum dari graf berarah. Dalam satu kali eksekusi algoritma, akan didapatkan jarak sebagai jumlah bobot dari lintasan terpendek antar setiap pasang simpul tanpa memperhitungkan informasi mengenai simpul-simpul yang dilaluinya. Algoritma ini yang juga dikenal dengan nama Roy-Floyd.
Dalam pengertian lain Algoritma Floyd-Warshall adalah suatu metode yang melakukan pemecahan masalah dengan memandang solusi yang akan diperoleh sebagai suatu keputusan yang saling terkait. Artinya solusi-solusi tersebut dibentuk dari solusi yang berasal dari tahap sebelumnya dan ada kemungkinan solusi lebih dari satu. (Novandi.R.A.D., 2007) Algoritma Floyd-Warshall ini akan memilih satu jalur terpendek dan teraman dari beberapa alternatif jalur yang telah dihasilkan dari proses kalkulasi. (Sukrisno A.T dan Rachman A., 2007)
23
hanya berdasarkan pada informasi yang terbatas sehingga nilai optimum yang diperoleh pada saat itu tidak memikirkan konsekuensi yang akan terjadi seandainya kita memilih suatu keputusan pada suatu tahap.
Dalam beberapa kasus, algoritma Dijkstra gagal memberikan solusi terbaik karena kelemahan yang dimilikinya tadi. Di sinilah peran algoritma Floyd-Warshall yang mencoba untuk memberikan solusi yang memiliki pemikiran terhadap konsekuensi yang ditimbulkan dari pengambilan keputusan pada suatu tahap. Algoritma Floyd-Warshall mampu mengurangi perhitungan yang tidak mengarah ke solusi. Prinsip yang dipegang oleh algoritma Floyd-Warshall adalah prinsip optimalitas, yaitu jika solusi total optimal, maka bagian solusi sampai suatu tahap (misalnya tahap ke-i) juga optimal. (Novandi.R.A.D., 2007)
2.7.1 Karakteristik Algoritma Floyd-Warshall
Beberapa karakteristik yang dimiliki oleh algoritma Floyd-Warshall antara lain:
1. Persoalan dibagi atas beberap tahap, yang setiap tahapnya hanya akan diambil satu keputusan. 2. Masing-masing tahap terdiri atas sejumlah status yang saling berhubungan dengan status tersebut. Status yang dimaksud di sini adalah berbagai kemungkinan masukan yang ada pada tahap tersebut.
3. Ketika masuk ke suatu tahap, hasil keputusan akan transformasi.
4. Bobot pada suatu tahap akan meningkat secara teratur seiring bertambahnya jumlah tahapan. 5. Bobot yang ada pada suatu tahap tergantung dari bobot tahapan yang telah berjalan dan bobot pada tahap itu sendiri.
6. Keputusan terbaik pada suatu tahap bersifat independen terhadap keputusan pada tahap sebelumnya.
7. Terdapat hubungan rekursif yang menyatakan bahwa keputusan terbaik dalam setiap status pada tahap k akan memberikan keputusan terbaik untuk setiap status pada tahap k + 1.
2.7.2 Pseudocode Algoritma Floyd Warshall
Pseudo-code algoritma Floyd Warshall adalah sebagai berikut:
function fw(int[1..n,1..n] graph) {
25
untuk menentukan isi web halaman, CSS untuk menentukan presentasi dari halaman tersebut, dan JavaScript untuk menentukan prilaku mereka (Flanagan,2012).
Program JavaScript yang ditulis menggunakan karakter Unicode yang di tetapkan. Unicode merupakan superset dari ASCII dan Latin dan mendukung hamper pada setiap bahasa pemograman yang ada.
2.9GIS (Geographic Information System)
GIS (Geographic Information System) adalah sistem yang bekerja dengan data yang tereferensi secara spasial atau koordinat-koordinat geografi (Ilham.R,Soetedjo.A& Faisol.A, 2011). Sistem ini mampu untuk mengolah data dan melakukan opreasi tertentu dengan menampilan dan menganalisa data. Aplikasi GIS ini menjadi beragam jenis aplikasinya. Selain jumlah aplikasinya yang juga bertambah. Kedepannya pengembangan aplikasi ini merambah ke aplikasi berbasis jaringan yang dikenal dengan web GIS. Ini dikarenakan lingkungan jaringan merupakan tempat subur berkembangnya geoinformasi. Contohnya adalah peta sebuah kota secara online yang tidak mengenal batas geografi penggunaannya.
Tujuan pokok dari pemanfaatan GIS adalah untuk mempermudah mendapatkan informasi yang telah diolah dan tersimpan sebagai atribut suatu lokasi atau obyek. Ciri utama data yang bisa dimanfaatkan dalam GIS adalah data yang telah terikat dengan lokasi dan merupakan data dasar yang belum dispesifikasi. Data-data yang diolah dalam GIS pada dasarnya terdiri dari data spasial dan data atribut dalam bentuk digital, dengan demikian analisis yang dapat digunakan adalah analisis spasial dan analisis atribut. Data spasial merupakan data yang berkaitan dengan lokasi keruangan yang umumnya berbentuk peta. Sedangkan data atribut merupakan data tabel yang berfungsi menjelaskan keberadaan berbagai objek sebagai data spasial.
kenampakan memanjang seperti sungai, jalan, kontus dan lain-lain. Sedangkan area adalah kenampakan yang dibatasi oleh suatu garis yang membentuk suatu ruang homogen, misalnya: batas daerah, batas penggunaan lahan, pulau dan lain sebagainya. Struktur data spasial dibagi dua yaitu model data raster dan model data vektor. Data raster adalah data yang disimpan dalam bentuk kotak segi empat (grid)/sel sehingga terbentuk suatu ruang yang teratur. Data vektor adalah data yang direkam dalam bentuk koordinat titik yang menampilkan, menempatkan dan menyimpan data spasial dengan menggunakan titik, garis atau area (polygon). Bentuk produk suatu GIS dapat bervariasi baik dalam hal kualitas, keakuratan dan kemudahan pemakainya. Hasil ini dapat dibuat dalam bentuk peta-peta, tabel angka-angka: teks di atas kertas atau media lain (hard copy), atau dalam cetak lunak (seperti file elektronik). Didalam GIS data dipelihara berbentuk digital sehingga data ini lebih padat dibanding dalam bentuk peta cetak, tabel atau dalam bentuk konvensional lainnya yang akhirnya akan mempercepat pekerjaan dan meringankan biaya yang diperlukan.
Sarana utama untuk penanganan data spasial adalah GIS. GIS didesain untuk menerima data spasial dalam jumlah besar dari berbagai sumber dan mengintergrasikannya menjadi sebuah informasi, salah satu jenis data ini adalah data pengindraan jauh. Pengindraan jauh mempunyai kemampuan menghasilkan data spasial yang susunan geometrinya mendekati keadaan sebenarnya dengan cepat dan dalam jumlah besar. Barus dan Wiradisastra (2000) mengatakan bahwa GIS akan memberi nilai tambah pada kemampuan pengindraan jauh dalam menghasilkan data spasial yang besar dimana pemanfaatan data pengindraan jauh tersebut tergantung pada cara penanganan dan pengolahan data yang akan mengubahnya menjadi informasi yang berguna.
2.10 Google-Map API
27
Maps dalam web kita sendiri dengan Google Maps API. Google Maps API adalah library JavaScript.
Dengan menggunakan google maps API, kita dapat menghemat waktu dan biaya untuk membangun aplikasi peta digital yang handal, karena pemogram hanya focus pada data-data yang akan dikostumisasikan saja.
2.11 Penelitian Terdahulu
Dalam melakukan penelitian, penulis membutuhkan beberapa bahan penelitian yang sudah pernah dilakukan peneliti-peneliti lainnya mengenai masalah penentuan jarak terpendek dengan algoritma Floyd Warshall.
Sondang stg (2010) telah mencoba membandingkan algoritma dijkstra dan Floyd-warshall dalam penelitian untuk pemilihan rute terpendek jaringan jalan. Irwan iftadi (2011) telah mencoba melakukan perancangan peta evakuasi menggunakan algoritma Floyd-warshall untuk penentuan lintasan terpendek. Untuk penelitian yang dilalkukan oleh peneliti sebelumnya dapat dilihat pada tabel berikut
Tabel 2.1. Tabel Penelitian Terdahulu
No Peneliti Judul Penelitian
1 Sondang stg
(2010)
Perbandingan Algoritma Dijksatra Dan Floyd-Warshall Dalam Pemilihan Rute Terpendek Jaringan Jalan
2 Irwan Iftadi
(2011)
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Masalah
Analisis sistem bertujuan untuk melakukan identifikasi persoalan - persoalan yang muncul dalam pembuatan sistem, selain itu hal ini juga dilakukan agar mampu meminimalisir kesalahan pada saat proses perancangan program simulasi pencarian rute optimal sehingga dalam pelaksanaannya bisa sesuai dengan waktu yang telah ditentukan serta dapat berjalan dengan baik. Dalam analisis sistem ini, sistem yang akan di analisa meliputi, analisis kebutuhan sistem dan spesifikasi aplikasi.
3.2 Analisis Algoritma Floyd-Warshall pada penentuan jarak terpendek
Algoritma Floyd-Warshall membandingkan semua kemungkinan lintasan pada graf untuk setiap sisi dari semua simpul. Menariknya, algoritma ini mampu mengerjakan proses perbandingkan ini sebanyak V³ kali (bandingkan dengan kemungkinan jumlah sisi sebanyak V² (kuadrat jumlah simpul pada graf, dan setiap kombinasi sisi diujikan). Hal tersebut bisa terjadi karena adanya perkiraan pengambilkan keputusan (pemilihan jalur terpendek) pada setiap tahap antara dua simpul, hingga perkiraan tersebut diketahui sebagai nilai optimal.
Ada dua kemungkinan yang terjadi:
1. Jalur terpendek yang sebenarnya hanya berasal dari simpul-simpul yang berada antara 1 hingga k.
2. Ada sebagian jalur yang berasal dari simpul-simpul i s.d. k+1, dan juga dari k+1 hingga j.
Untuk lebih jelasnya berikut adalah contoh dari algoritma Floyd-Warsahall.
Misalkan terdapat suatu graf berbobot yang merepresentasikan kondisi keterhubungan antar node di suatu kota, dengan ilustrasi sebagai berikut.
Gambar 3.1 Representasi keterhubungan antar kota dalam graf berbobot.
Misalkan seseorang akan melakukan perjalanan dari node A ke node C. Orang tersebut mencoba untuk menerapkan algoritma Floyd-Warshall dalam memilih rute terpendek didalam perjalanannya.
Tahap 2.
S2 F2(s) Solusi optimum
B F H F2 s x2
C 74 90 - 74 B
E - 56 - 56 F
G - 94 89 89 H
Dari hasil pencarian jalur terpendek dari A ke C menggunakan algoritma Floyd-Warshall ditemukan bahwa jarak terpendek dari A ke C adalah 74 km dengan jalur (A– B – C).
3.3 Analisis Kebutuhan Sistem
Pada tahapan Analisis kebutuhan sistem, penulis memaparkan secara garis besar tentang kebutuhan sistem yang akan dibangun.
3.3.1 Kebutuhan Fungsional
Dari tahapan perencanaan, analisis, perancangan, dan pembangunan yang telah dilakukan nanti, Sistem yang dihasilkan nanti diharapkan mampu memberikan suatu penyelesaian masalah dengan menampilkan gambar peta disertai dengan petunjuk arah yang akan dilalui pengguna.
29
waktu keberangkatan. Kemudian dari keseluruhan data tersebut akan dicari beberapa node terdekat dengan node awal, selanjutnya sistem melakukan pengelompokan node dari awal sampe node tujuan berupa rute yang memiliki jarak tertentu. Dari keseluruhan hasil analisis beberapa rute, sistem akan melakukan simulasi untuk menghasilkan rute terpendek pada peta.
3.3.2 Kebutuhan nonFungsional
Kebutuhan nonfungsional terdiri dari beberapa macam karakteristik, antara lain :
1. Performa
Aplikasi yang akan dibangun dapat menampilkan hasil dari fungsi sistem untuk jalur terpendek yang akan dilalui.
2. Efisiensi
Aplikasi yang akan dibangun diharuskan sederhana, agar memudahkan pengguna untuk memakainya.
3. Ekonomi
Aplikasi yang akan dibangun tidak mengeluarkan biaya tambahan dalam penggunaannya.
3.4Perancangan Sistem
3.4.1 Perancangan Database
Tabel lokasi : Menyimpan nama lokasi dan koordinat dalam peta yang sudah dimasukkan sebelumnya ke dalam database seperti pada Tabel 3.1. Pada koordinat, didapatkan dari Google Map.
Tabel 3.1 Tabel Lokasi
Id_lokasi Nama_lokasi_lengkap Koordinat
1 Polonia 3.563555, 98.676163
2 Lapangan Merdeka 3.590630, 98.677732
3 USU 3.567426, 98.659144
Rancangan tabel lokasi : Menyimpan nama lokasi, diskripsi lokasi, lang dan long dapat dilihat pada Tabel 3.2. Lang adalah titik X dan Long adalah titik Y.
Tabel 3.2 Rancangan Tabel Lokasi
Nama_Field Tipe_Data Ukuran_Field
Id Int 11
Tittle Varchar 50
Desc Varchar 80
Lat Float 10,6
Lng Float 10,6
Type Varchar 30
31
3.4.2 Arsitektur umum (general architecture)
Pada desain aplikasi ini digambarkan bagaimana setiap proses berlangsung dan membentuk sebuah sistem yang terbentuk dengan sistematis. Rancangan arsitektur dapat dilihat pada Gambar
Gambar 3.3 General Architecture
Dari gambar 3.3 dapat dilihat rancangan arsitektur sistem yang terdiri atas langkah-langkah seperti berikut:
1. Langkah awal adalah memasukkan input node awal dan node akhir (tujuan). 2. Kemudian melakukan kalkulasi perhitungan jalur terpendek.
3. Setelah dilakukan proses tersebut, sistem akan mengambil kesimpulan jalur mana yang diambil.
4. Kemudian dihasilkan rekomendasi jalur yang optimal.
3.4.3 Rancangan Pencarian Jalur Terpendek
Proses ini merupakan tahap-tahap untuk menyelesaikan pencarian rute terpendek sebagai pemecahan masalah untuk mencari rute terpendek terhadap jarak tempuh dan waktu kemacetan di kota Medan menggunakan algoritma Floyd Warshall, yang akan di sajikan dalam bentuk flowchart dalam gambar 3.4
33
Gambar 3.4 Flowchart Algoritma Floyd-Warsall
3.4.4 Rancangan halaman utama
User langsung memakai aplikasi dengan web browser. Setelah user membuat koneksi dengan internet maka aplikasi akan menampilkan halaman utama dengan tampilan tombol pilihan lokasi awal dan tujuan yang sudah tersedia. Lalu pilih tombol “go”. Rancangan dapat dilihat pada Gambar 3.5
Gambar 3.5 Rancangan Halaman Utama
35
Gambar 3.6 Rancangan Pemilihan Lokasi
3.4.5 Rancangan Halaman Hasil Pencarian
Gambar 3.7 Rancangan Hasil Pencarian
Dan pada rekomendasi jalur akan menampilkan hasil rekomendasi berupa map, dan akan muncul berupa peta (google map) hasil lokasi awal dan tujuan serta jalan yang akan dilewati. Rancangan peta dapat dilihat pada Gambar 3.8
37
Gambar 3.8 Rancangan Peta Pada Google
BAB 4
IMPLEMENTASI DAN PENGUJIAN
Setelah melakukan analisis dan perancangan pada bab sebelumnya, sekarang sudah dapat memulai untuk melakukan implementasi dan pengujian. Penjelasan tentang implementasi sistem dilakukan untuk mengetahui hasil rancangan aplikasi, dan pengujian dilakukan untuk membuktikan jika aplikasi dapat berjalan dengan baik.
4.1 Implementasi
Implementasi aplikasi pencarian jalur terpendek dibuat menggunakan bahasa pemrograman Java, dengan sub-varian javascript.
4.1.1 Konfigurasi Perangkat Keras
Adapun spesifikasi perangkat keras yang digunakan penulis dalam pembangunan aplikasi adalah:
1. Processor Intel Core 2 Duo 2. Memory RAM2 GB
3. Harddisk 250 GB
4.1.2 Konfigurasi Perangkat Lunak
Pada pengimplementasian aplikasi di komputer Perangkat lunak yang digunakan adalah :
1. Java Standart Edition Development Kit 6 2. XAMPP 1.8.3
4.2 Eksekusi Aplikasi
Berikut ini akan dijelaskan eksekusi aplikasi pencarian jalur terpendek.
muncul apabila user menginput lokasi awal yang dipilih dan lokasi akhir yang dipilih. a) User memilih lokasi asal dan tujuan terlebih dahulu:
lokasi tujuan : TE
Konfigurasi Perangkat Lunak
Pada pengimplementasian aplikasi di komputer, penulis menggunakan sistem operasi Windows 7 32 bit. Perangkat lunak yang digunakan adalah :
Java Standart Edition Development Kit 6
3. Windows 7 Ultimate 32
dijelaskan eksekusi aplikasi pencarian jalur terpendek. Hasil rekomendasi jalur akan menginput lokasi awal yang dipilih dan lokasi akhir yang dipilih.
memilih lokasi asal dan tujuan terlebih dahulu:
lokasi asal
Gambar 4.1 Graf Jalur
39
penulis menggunakan sistem operasi Windows 7 32 bit.
Windows 7 Ultimate 32-bit
Hasil rekomendasi jalur akan
Keterangan
Tabel 4.1 Keterangan Kode Node
Kode Keterangan
TA Tempat Awal (USU)
N1 Simp Siti Hajar
N2 Simp Abdullah Lubis
N3 Simp Gajah Mada
N4 Cambridge
N5 Patung Guru Patimpus
N6 Grand Palladium
N7 Simp Sriwijaya
N8 Simp Syailendra
N9 RS Herna
N10 Simp Sudirman
N11 Simp Rumah Dinas Wali Kota
N12 Sun Plaza
41
N14 SMU Negeri 1 Medan
N15 Simp Kejaksaan
N16 Simp Kantor Waspada
N17 Kesawan Square
N18 Simp Lonsum
TE (Tujuan Akhir) Merdeka Walk
b) Setelah mendapat lokasi awal menuju lokasi tujuan, maka diurutkan dari jarak yang terpendek. Pencarian jarak terpendek dihitung dengan algoritma Floyd-Warshall. Berdasarkan jarak yang didapat, akan diperoleh jalur terpendek. Berikut ini hasil perhitungan jarak terpendek menggunakan algoritma Floyd-Warshall.
Keterangan : Xi = Titik Simpul Si = Kandidat Solusi
43
Setelah dilakukan perencanaan Flow Chart atau bagan alir algoritma, maka dilakukan analisa perhitungan menggunakan algoritma Floyd – Warshall adalah sebagai berikut :
Tahap 1
Node Tujuan Node Asal
Tahap 4
S4 Node Asal
F4 (s) Solusi Optimum
N11 N7 N3 F4 (s) X4
N14 500 - - 2750 N11
N12 750 - - 300 N11
N16 1300 - - 3350 N11
N8 - 500 - 1800 N7
N4 - - 650 2250 N3
Tahap 5
S5 Node Asal
F5 (s) Solusi Optimum
N14 N12 N16 N8 N4 F5 (s) X5
N15 800 - - - - 3350 N14
N13 - 400 - - - 3700 N12
N17 - - 750 - - 4600 N16
N9 - - - - 600 2250 N4
45
Tahap 6
S6 Node Asal
F6 (s) Solusi Optimum
N15 N13 N17 N9 N5 F6 (s) X6
N13 450 - - - - 4300 N15
N6 - - - - 600 4150 N5
N18 - - 400 - - 3700 N17
N4 - - - - 1000 3850 N5
N6 - 500 - - - 4800 N13
Tahap 7
S7 Node Asal
F7 (s) Solusi Optimum
TE - 300 - - - 5100 N6
N5 1000 4800 N6
TE 100 5100 N18
Tahap 8
S8 Node Asal
F8 (s) Solusi Optimum
N6 N5 F8 (s) X8
TE 300 - 5100 N6
N6 - 600 4450 N5
Tahap 9
S9 Node Asal
F9 (s) Solusi Optimum
N6 F9 (s) X9
TE 300 4750 N6
Keterangan :
47
2. “F” merupakan jarak
Setelah dilakukan perhitungan, maka hasilnya dapat disajikan dalam tabel berikut:
Tabel 4.2 Tabel Hasil Perhitungan Rute Pencarian
Jalur Alur Total Jarak Tempuh
Jalur Satu TA-N1-N2-N3-N4-N5-N6-TE 4450 Jalur Dua TA-N1-N2-N7-N8-N9-N4-N5-N6-TE 4750 Jalur Tiga TA-N1-N10-N11-N14-N15-N13-N6-TE 4550 Jalur Keempat TA-N1-N10-N11-N12-N13-N6-TE 4650 Jalur Kelima TA-N1-N10-N11-N16-N17-N18-TE 5100
Jika dilihat dari data diatas maka dapat disimpulkan bahwa jalur tependek diantara semua jalur yang memungkinkan adalah jalur ke 1 yaitu TAN1N2N3N4N5N6TE dengan nilai bobot 4450, terkecil diantara semua jalur yang ada.
4.2.1 Tampilan Halaman Utama
Gambar 4.3 Halaman Utama
Evaluasi terhadap tampilan halaman utama. Hasil proses evaluasi dapat dilihat pada Tabel 4.3.
Tabel 4.3 Tabel Tampilan Halaman Utama No. SasaranPengujian Hasil yang
Diharapkan
Hasil Pengujian
Status
1 Uji tampilan aplikasi ketika dieksekusi
Menampilkan peta Menampilkan peta Berhasil
2 Uji tombol Memposes dan
4.2.2 Tampilan Form Pencarian
49
Gambar 4.4 Form Pencarian
Berikutnya ialah tampilan form drop-down. Jika di klik tanda panah, maka akan tampil seperti gambar 4.5.
Gambar 4.5 Form Pencarian menggunakan drop-down
Evaluasi terhadap tampilan form pencarian. Hasil proses evaluasi dapat dilihat pada tabel 4.4.
Tabel 4.4 Tabel Form Pencarian No. SasaranPengujian Hasil yang
Gambar 4.6 Tampilan Hasil Pencarian Rute
Selanjutnya dilakukanlah evaluasi terhadap tampilan halaman hasil pencarian rute. Hasil proses evaluasi dapat dilihat pada Tabel 4.5.
51
petunjuk arah pencarian jalur beserta petunjuk arah jalan
Setelah melakukan proses implementasi selanjutnya dilakukan pengujian sistem. Pengujian ini dilakukan untuk memperoleh hasil kinerja yang diharapkan dari tiap-tiap komponen sistem. Pengujian ini bertujuan untuk mengetahui bahwa aplikasi yang dibuat, telah sesuai dengan kebutuhan. Adapun pengujian yang akan dilakukan pada sistem ini adalah menampilkan jalur optimal yang akan dilalui beserta petunjuk arah. Berikut hasil pengujian yang dapat dilihat pada tabel 4.6.
Tabel 4.6 Tabel Pengujian
No Komponen yang akan di
uji
53
BAB 5
KESIMPULAN DAN SARAN
5.1.Kesimpulan
Berdasarkan analisis dari system dan pengujian system secara menyeluruh yang telah dilakukan pada bab sebelumnya, maka ada beberapa hal yang dapat dijadikan kesimpulan pada penelitian adalah
1. Algoritma Floyd Warshall dapat diterapkan pada aplikasi maping di web browser
2. Aplikasi yang dibangun mampu menyelesaikan permasalahan pencarian jalur terpendek dengan menunjukkan lintasan nilai terkecil antara dua node yang diinginkan.
5.2. Saran
Penulis menyarankan dalam pengembangan penelitian lebih lanjut untuk aplikasi pencarian rute terpendek sebagai berikut:
1. Untuk hasil lebih akurat sesuai dengan keadaannyata, sebaiknya dibuatdengan keadaan real time menggunakan satelit.
Kluwer Academic Publishers.
Flanagan, D., 2006, Javascript: The Definitive Guide, sixth edition, O’Reilly, Sebastopol.
Handaka, M.S. 2010. PerbandinganAlgoritmaDijkstra (Greedy), Bellman-Ford
(BFS-DFS), dan Floyd-Warshall (Dynamic Programming) dalam
PengaplikasianLintasanTerpendekpada Link-State Routing Protocol. Bandung: InstitutTeknologiBandung.
Ilham, R., Soetedjo, A. & Faisol, A. 2011. Pengembangan Aplikasi Pencarian Rute Terpendek Dengan Metode Algoritma A* Berbasis Web. Jurnal Elektro ELTEK Vol. 2, No. 2.
P. Insap Santosa, Ir., M.Sc., Interaksi Manusia dan Komputer, Teori dan praktek, Edisi kedua, 2004, Penerbit Andi Offset, Yogyakarta
Munir, Rinaldi. 2005. MatematikaDiskrit. Diktat, Bandung :SekolahTeknikElektro danInformatika, InstitutTeknologi Bandung.
Munir, Rinaldi. 2009. MatematikaDiskritEdisiKetiga. Informatika, Bandung.
55
Ray Rizaldi, Mohammad. 2007. Pencarian Jalu rTerpendekdalam GPS dengan Menggunakan Teori Graf. Bandung: Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung
Safaat H, Nazruddin. 2011. Android Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android. Informatika.Bandung.
Sukrisno, A.T. 2010.Perancangan Prototype Dinamyc Exit Sign dengan menggembangkan metode Floyd-Wharshall Algorithm Pada Perencanaan Proses Evakuasi Gedung Bertingkat . Surabaya: Institut Teknologi Sepuluh November.
Yatini B, Indra., Nasution, Erliansyah.2005. Algoritma ,Struktur Data. Graha Ilmu, Jogjakarta.