Implementasi Tauhid Dalam KeluargaFull description
Full description
Implementasi Kebudayaan Dalam Asuhan Keperawatan Implementasi Kebudayaan Dalam Asuhan Keperawatan kunjungi http://warungbidan.blogspot.com/Deskripsi lengkap
IMPLEMENTASIALGORITMAFLOYD WARSHALL IMPLEMENTASIALGORITMAFLOYD DALAM MENENTUKAN JARAK TERPENDEK (MEDAN - BANDARA KUALA NAMU)
SKRIPSI
RINI CHAIRANI HARAHAP 121421090
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2015
Universitas Sumatera Utara
IMPLEMENTASI ALGORITMA FLOYD WARSHALL DALAM MENENTUKAN JARAK TERPENDEK (MEDAN - BANDARA KUALA NAMU) SKRIPSI Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
RINI CHAIRANI HARAHAP 121421090
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2015
Universitas Sumatera Utara
IMPLEMENTASI ALGORITMA FLOYD WARSHALL DALAM MENENTUKAN JARAK TERPENDEK (MEDAN - BANDARA KUALA NAMU) SKRIPSI Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
RINI CHAIRANI HARAHAP 121421090
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2015
Universitas Sumatera Utara
ii PERSETUJUAN
Judul
Kategori
: IMPLEMENTASI ALGORITMA FLOYDWARSHALL DALAM MENENTUKAN JARAK TERPENDEK (MEDAN - BANDARA KUALA NAMU) : SKRIPSI
Nama
: RINI CHAIRANI HARAHAP
Nomor Induk Mahasiswa : 121421090 Program Studi
: EKSTENSI S1 ILMU KOMPUTER
Fakultas
: ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
Komisi Pembimbing
:
Pembimbing II
Pembimbing I
Dr. Syahril Efendi, SSi, MIT. NIP.196711101996021001 NIP.196711101996021001
IMPLEMENTASI ALGORITMA FLOYD WARSHALL DALAM MENENTUKAN JARAK TERPENDEK (MEDAN - BANDARA KUALA NAMU)
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan,
September 2015
Rini Chairani Harahap NIM. 121421090
Universitas Sumatera Utara
iv PENGHARGAAN
Segala puji dan syukur penulis ucapkan kehadirat Allah SWT yang telah memberikan rahmat dan hidayah-Nya kepada penulis sehingga dapat menyelesaikan skripsi ini tepat waktu sesuai dengan instruksi dan peraturan yang berlaku di Fakultas Ilmu Komputer dan Teknologi Informasi serta shalawat dan salam penulis hadiahkan kepada Nabi Besar Muhammad SAW.
Dalam penyusunan dan penulisan skripsi ini, penulis banyak mendapat bantuan, dukungan, dan bimbingan dari berbagai pihak. Pada kesempatan ini penulis ingin mengucapkan rasa terima kasih dan penghargaan kepada :
1.
Ayahanda M.O Harahap, S.Sos I, Ibunda Dahlia dan Abang saya Ridwan Fahlevi Harahap atas doa restunya da kasih sayangnya yang tiada habisnya diberikan pada penulis serta dukungan moril dan materil yang tanpa jasanya tak mungkin penulis sampai pada saat sekarang.
2.
Bapak Prof. Drs. Subhilhar, M.A, Ph.Dselaku Rektor Universitas Sumatera Utara.
3.
Bapak Prof. Dr. Muhammad Zarlis, M.Kom selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi.
4.
Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer.
5.
Ibu Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi Ilmu Komputer.
6.
BapakDr. Syahril Efendi, SSi, M.IT.selaku Dosen Pembimbing I dan Ibu Dian Rachmawati, S.Si, M.Komselaku Dosen Pembimbing II yang telah meluangkan waktu, tenaga, dan pikiran dalam membimbing, mengarahkan, menasehati, memotivasi, dan menyemangati penulis agar dapat menyelesaikan skripsi ini.
7.
Bapak Drs. Marihat Situmorang, M.Kom selaku dosen Pembanding I dan Bapak Amer Sharif, S.Si, M.Kom selaku dosen Pembanding II yang telah memberikan kritik dan saran terhadap skripsi penulis.
Universitas Sumatera Utara
v 8.
Seluruh staf pengajar dan pegawai Fakultas Ilmu Komputer dan Teknologi Informasi.
9.
Sahabat-sahabat luar biasa Chasika Rani Purba, Fitria Andhika, Tengku Zikri Rachman, Nugra Atsaury Saragih dan Rudi Setiawan selalu menemani dan memberi motivasi kepada penulis.
10. Teman – teman seperjuangan mahasiswa/i S1 Ekstensi Ilmu Komputer stambuk 2012 yang selalu memberi dukungan. 11. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu per satu yang telah membantu menyelesaikan skripsi ini.
Penulis menyadari bahwa skripsi ini masih memiliki banyak kekurangan, baik dari segi teknik, tata penyajian ataupun dari segi tata bahasa. Oleh karena itu penulis bersedia menerima kritik dan saran dari pembaca dalam upaya perbaikan skripsi ini. Semoga skripsi ini dapat bermanfaat bagi penulis dan pembaca, khususnya rekan-rekan mahasiswa lainnya yang mengikuti perkuliahan di Universitas Sumatera Utara.
Medan, Penulis
September 2015
Rini Chairani Harahap
Universitas Sumatera Utara
vi ABSTRAK
Bandara internasional Kuala Namu merupakan Bandar udara Internasional yang melayani kota medan dan sekitarnya. Komputer banyak digunakan untuk melakukan pencarian lintasan terpendek ( shortest path), yang ditampilkan dalam model simulasi.Ide dari penelitian ini berawal dari masalah jarak tempuh untuk menuju Bandara Kuala Namu.Faktor ketepatan dalam memilih jarak terpendek untuk sampai pada bandara sangat penting untuk mencegah ketinggalan pesawat.Pencarian jarak terpendek ini memfokuskan hanya untuk mencari jalur terdekat menuju Bandara Kuala Namu yang disimbolkan dengan sebuah titik (vertex).Algoritma yang digunakan untuk pencarian jarak terpendek adalah Floyd Warshall .Hasil yang diperoleh dalam pencarian jarak terpendek antar verteks adalah rute-rute yang dilalui.
Kata kunci: Algoritma Floyd Warshall , Shortest Path, Bandara Internasional Kuala
Kuala Namu International Airport is an international airport serving Medan and surrounding areas. Computers are widely used to search the shortest path, which is shown in the simulation model. The idea of this study originated from mileage problem to get to the Kuala Namu Airport. Accuracy factor in choosing the shortest path to arrive at the airport is very important to prevent miss the plane. The shortest path focused only to find the nearest path towards Kuala Namu Airport that is symbolized by a point(vertex). The algorithm used to search the shortest path is Floyd Warshall. The results obtained in the search for the shortest path between vertex are the passed routes. Keywords: Floyd Warshall algorithm, Shortest Path, Kuala Namu International
Airport.
Universitas Sumatera Utara
viii DAFTAR ISI
Halaman Persetujuan Pernyataan Penghargaan Abstrak Abstract Daftar Isi Daftar Tabel Daftar Gambar
ii iii iv vi vii viii x xi
Bab 1 Pendahuluan 1.1 Latar Belakang 1.2 Rumusan Masalah 1.3 Batasan Masalah 1.4 Tujuan Penelitian 1.5 Manfaat Penelitian 1.6 Metode Penelitian 1.7 Sistematika Penulisan
1 1 2 2 3 4 4 5
Bab 2 Landasan Teori 2.1 Graph 2.1.1 Macam – macam Graph Menurut Arah dan Bobotnya 2.2 Lintasan Terpendek (Shortest Path) 2.3 Algoritma 2.3.1 Pegertian Algoritma 2.3.2 Algoritma Floyd Warshall 2.3.3 Analisis Algoritma Floyd Warshall
7 7 8 11 11 11 13 15
Bab 3 Analisis dan Perancangan Sistem 3.1 Analisis Sistem 3.1.1 Analisis Masalah 3.1.2 Analisis Persyaratan 3.2 Pemodelan Aplikasi 3.2.1 Use-Case Diagram 3.2.2 Activity Diagram 3.2.3 Sequence Diagram 3.3 Flowchart 3.4 Perancangan Interface 3.5 Database 3.6 Entity Relationship Diagram (ERD)
17 17 17 19 20 20 21 23 24 25 26 28
Bab 4 Implementasi Dan Pengujian Sistem 4.1 Implementasi Sistem 4.1.1 Tampilan Halaman Utama 4.1.2 Tampilan Menu Floyd 4.1.3 Tampilan Login Admin Pengelola Data
29 29 29 30 30
Universitas Sumatera Utara
ix 4.1.4 Tampilan Data Lokasi 4.2 Graph Yang Digunakan Untuk Menentukan Rute Terpendek 4.3 Perhitungan Algoritma Floyd Warshall 4.3.1 Iterasi Pertama 4.3.2 Iterasi Ke Dua 4.3.3 Iterasi Ke Tiga 4.3.4 Iterasi Ke Empat 4.3.5 Iterasi Ke Lima 4.3.6 Iterasi Ke Enam 4.3.7 Iterasi Ke Tujuh 4.3.8 Iterasi Ke Delapan 4.3.9 Iterasi Ke Sembilan 4.3.10 Iterasi Ke Sepuluh 4.3.11 Iterasi Ke Sebelas 4.3.12 Iterasi Ke Dua Belas 4.4 Tampilan Rute 4.4.1 Focal Point – KNIA 4.4.2 Pinang Baris – KNIA 4.4.3 Medan Plaza – KNIA 4.4.4 Sun Plaza – KNIA 4.4.5 Hermes Place – KNIA 4.4.6 Amplas – KNIA 4.4.7 Paladium – KNIA 4.4.8 Centre Point – KNIA 4.4.9 Thamrin Plaza – KNIA 4.4.10 Medan Mall – KNIA Bab 5 Kesimpulan dan Saran 5.1 Kesimpulan 5.2 Saran
Tabel tbljarak Tabel tbljlhpengguna Tabel tblpengunjung Tabel tblmap Tabel tblnode Perhitungan algoritma Floyd Iterasi Pertama Perhitungan Algoritma Floyd Iterasi Ke Dua Perhitungan Algoritma Floyd Iterasi Ke Tiga Perhitungan Algoritma Floyd Iterasi Ke Empat Perhitungan Algoritma Floyd Iterasi Ke Lima Perhitungan Algoritma Floyd Iterasi Ke Enam Perhitungan Algoritma Floyd Iterasi Ke Tujuh Perhitungan Algoritma Floyd Iterasi Ke Delapan Perhitungan Algoritma Floyd Iterasi Ke Sembilan Perhitungan Algoritma Floyd Iterasi Ke Sepuluh Perhitungan Algoritma Floyd Iterasi Ke Sebelas Perhitungan Algoritma Floyd Iterasi Ke Dua Belas
Gambar 2.1 Gambar 2.2 Gambar 2.3 Gambar 2.4 Gambar 2.5 Gambar 2.6 Gambar 2.7 Gambar 3.1 Gambar 3.2 Gambar 3.3 Gambar 3.4 Gambar 3.5 Gambar 3.6 Gambar 3.7 Gambar 4.1 Gambar 4.2 Gambar 4.3 Gambar 4.4 Gambar 4.5 Gambar 4.6 Gambar 4.7 Gambar 4.8 Gambar 4.9 Gambar 4.10 Gambar 4.11 Gambar 4.12 Gambar 4.13 Gambar 4.14 Gambar 4.15
Graph dengan 4 Vertex dan 5 Edge Graph Berarah dan Berbobot Graph Tidak Berarah dan Berbobot Graph Berarah dan Tidak Berbobot Graph Tidak Berarah dan Tidak Berbobot Graph Sederhana Graph Tidak Sederhana Ishikawa Diagram Use Case Sistem Penentuan Jalur Terpendek Menuju KNIA Activity Diagram Algoritma Floyd Warshall Sequence Diagram Diagram Alur Algoritma Floyd Warshall Perancangan Interface Entity Relationship Diagram (ERD) Tampilan Halaman Utama Tampilan Menu Floyd Tampilan Login Admin Tampilan Data Lokasi Graph Yang Digunakan Untuk Menghitung Jarak Terpendek Menuju KNIA Tampilan Rute Focal Point – KNIA Tampilan Rute Pinang Baris – KNIA Tampilan Rute Medan Plaza – KNIA Tampilan Rute SUN Plaza – KNIA Tampilan Rute Hermes Polonia – KNIA Tampilan Rute Amplas – KNIA Tampilan Rute Paladium – KNI Tampilan Rute Centre Point – KNIA Tampilan Rute Thamrin Plaza – KNIA Tampilan Rute Medan Mall – KNIA
Bandara internasional Kuala Namu merupakan Bandar udara Internasional yang melayani kota medan dan sekitarnya. Komputer banyak digunakan untuk melakukan pencarian lintasan terpendek ( shortest path), yang ditampilkan dalam model simulasi.Ide dari penelitian ini berawal dari masalah jarak tempuh untuk menuju Bandara Kuala Namu.Faktor ketepatan dalam memilih jarak terpendek untuk sampai pada bandara sangat penting untuk mencegah ketinggalan pesawat.Pencarian jarak terpendek ini memfokuskan hanya untuk mencari jalur terdekat menuju Bandara Kuala Namu yang disimbolkan dengan sebuah titik (vertex).Algoritma yang digunakan untuk pencarian jarak terpendek adalah Floyd Warshall .Hasil yang diperoleh dalam pencarian jarak terpendek antar verteks adalah rute-rute yang dilalui.
Kata kunci: Algoritma Floyd Warshall , Shortest Path, Bandara Internasional Kuala
Kuala Namu International Airport is an international airport serving Medan and surrounding areas. Computers are widely used to search the shortest path, which is shown in the simulation model. The idea of this study originated from mileage problem to get to the Kuala Namu Airport. Accuracy factor in choosing the shortest path to arrive at the airport is very important to prevent miss the plane. The shortest path focused only to find the nearest path towards Kuala Namu Airport that is symbolized by a point(vertex). The algorithm used to search the shortest path is Floyd Warshall. The results obtained in the search for the shortest path between vertex are the passed routes. Keywords: Floyd Warshall algorithm, Shortest Path, Kuala Namu International
Airport.
Universitas Sumatera Utara
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Bandara internasional Kuala Namu merupakan Bandar udara Internasional yang melayani kota medan dan sekitarnya. Bandara ini terletak 39 KM dari kota medan. Bandar udara Intenasional Kuala Namu termasuk bandara terbesar ke dua di Indonesia Setelah Bandar Udara Internasional Soekarno-Hatta.
Komputer banyak digunakan untuk melakukan pencarian lintasan terpendek ( shortest path), yang ditampilkan dalam model simulasi. Pencarian lintasan terpendek merupakan suatu masalah yang paling banyak dibahas dan dipelajari sejak akhir tahun 1950. Pencarian lintasan terpendek ini telah diterapkan di berbagai bidang untuk mengoptimasi
kinerja
suatu
sistem,
baik
untuk
meminimalkan
biaya
atau
mempercepat jalannya suatu proses (Purwananto, 2005).
Pada penelitian ini dilakukan studi kasus pencarian rute terpendek untuk menuju Bandara Kuala Namu.Ide dari penelitian ini berawal dari masalah jarak tempuh untuk menuju Bandara Kuala Namu.Faktor ketepatan dalam memilih jarak terpendek untuk sampai pada bandara sangat penting untuk mencegah ketinggalan pesawat.Pencarian jarak terpendek ini memfokuskan hanya untuk mencari jalur terdekat menuju Bandara Kuala Namu yang disimbolkan dengan sebuah titik (vertex).Algoritma yang digunakan untuk pencarian jarak terpendek adalah Floyd Warshall .Hasil yang diperoleh dalam pencarian jarak terpendek antar verteks adalah rute-rute yang dilalui.
Universitas Sumatera Utara
2
Untuk itu diperlukan suatu sistem yang dapat membantu dalam menemukan rute terpendek yang dapat merepresentasikan data yang ada.Data tersebut dapat disimpan, diolah, dan disajikan dalam bentuk yang lebih sederhana serta terkomputerisasi sehingga memudahkan dalam penentuan rute terpendek.
1.2 Rumusan Masalah
Berdasarkan latar belakang yang telah dipaparkan maka rumusan masalah yang akan dibahas pada penelitian ini adalah pemanfaatan teknologi informasi sebagai solusi penentuan jarak terpendek untuk menuju Bandara Kuala Namu.
1.3 Batasan Masalah
Adapun batasan masalah yang diangkat adalah sebagai berikut: 1. Setiap jalan yang dilalui dianggap satu arah 2. Posisi user yang akan menjadi titik awal harus berada di satu wilayah yang ditentukan layanan yaitu kota medan 3. Tidak membahas keadaan lalu lintas, waktu tempuh dan keadaan jalan dari tempat asal ke tempat tujuan. 4. Aplikasi yang dikembangkan membutuhkan koneksi internet untuk Google MapsApi dan mengunduh data dari server. 5. Input pada sistem ini adalah titik asal dan titik tujuan dimana titik asal berupa tempat-tempat penting di kota Medan (beberapa terminal dan beberapa pusat perbelanjaan), dan titik tujuan adalah Bandara Kuala Namu.
Universitas Sumatera Utara
3
Output berupa rute perjalanan, jalur yang harus dilewati pada peta, dan pewarnaan pada jalur yang ditempuh. a. Terminal : 1. Terminal Amplas 2. Terminal Pinang Baris b. Pusat perbelanjaan: 1. Paladium
5. Medan Fair
2. SUN
6. Medan Mall
3. Centre Point
7. Hermes
4. Focal Point
8. Thamrin Plaza
6. Moda yang digunakan adalah transportasi motor dan mobil. 7. Dari kota asal ke kota tujuan tidak ada hambatan seperti lampu merah atau hambatan lain. 8.
Menggunakan bahasa pemrograman PHP dan MySQL sebagai DataBase Management System (DBMS).
9. Perhitungan yang dilakukan hanya berdasarkan jarak tempuh.
1.4 Tujuan Penelitian
1. Membangun suatu aplikasi yang dapat membantu menentukan jarak terpendek (shortest part) dalam menuju bandar udara Kuala Namu. 2. Menerapkan algoritma Floyd warshall pada penentuan jalur terpendek menuju Bandar udara Kuala Namu.
Universitas Sumatera Utara
4
1.5 Manfaat Penelitian
Manfaat penelitian ini adalah sebagai berikut: 1. Manfaat bagi penulis a. Dapat menerapkan ilmu yang di dapat di Universitas Sumatera Utara
2. Manfaat bagi masyarakat a. Dapat menggunakan aplikasi berbasis web untuk menentukan jarak terpendek menuju titik Bandar udara Kuala Namu dari titik awal yaitu kota medan.
1.6 Metode Penelitian
Metode peneltian yang digunakan dalam penulisan tugas akhir ini adalah sebagai berikut: a.
Studi Literatur Pada tahap ini dilakukan dengan mempelajari bahan-bahan ataupun buku-buku referensi, skripsi, jurnal dan sumber lain yang berkaitan dengan penulisan tugas akhir ini. Topik yang di bahas dalam skripsi ini menyangkut dengan graph, dan algoritma Floyd Warshall dalam menentukan rute terpendek.
b.
Observasi Observasi dilakukan dengan melakukan menggunakan aplikasi google maps, dan aplikasi here maps. Pada aplikasi here maps digunakan untuk mengambil informasi jarak dan google maps digunakan untuk penerapan peta pada aplikasi.
c.
Analisis dan Perancangan Pada metode ini dilakukan analisis sesuai dengan
kebutuhan seperti cara
membangun aplikasi yang mengimplementasikan Algoritma Floyd Warshall , jenis perangkat yang digunakan, pembuatan desain interface, target pengguna, dan hasil yang diinginkan.
Universitas Sumatera Utara
5
d.
Implementasi Sistem Metode ini dilaksanakan dengan mengimplementasikan rancangan sistem yang telah dibuat pada analisis dan perancangan sistem kedalam program komputer dengan menggunakan bahasa pemrograman PHP dan MySQL.
e.
Penguji Sistem Metode
ini
dilaksanakan
dengan
mengimplementasikanAlgoritma Floyd
Warshhall dalam penentuan jalur kBandar Udara Kuala Namu. Hasil program diuji kemudian dianalisis perbandingan kecepatan dan ketepatan pencarian f.
Dokumentasi Metode ini berisi laporan dan kesimpulan akhir dari hasil analisis dan pengujian dalam bentuk penulisan tugas akhir beserta kesimpulannya dan menampilkan data-data sebagai bukti dalam bentuk hard copy.
1.7 Sistematika Penulisan
Sistematika penulisan dari skripsi ini terdiri dari beberapa bagian utama sebagai berikut:
BAB I: PENDAHULUAN
Bab ini akan menjelaskan mengenai latar belakang pemilihan judul skripsi “Implementasi Algoritma Floyd Warshall Untuk Menentukan Rute Terpendek (Studi Kasus : Medan – Bandara Kuala Namu)”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, serta sistematika penulisan.
BAB II: LANDASAN TEORI
Bab ini akan membahas teori-teori yang berkaitan dengan Lintasan Terpendek, Graph, Algoritma Floyd Warshall , Database Management System (DBMS)MySQL dan pemrograman PHP.
Universitas Sumatera Utara
6
BAB III: ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini berisikan langkah-langkah penelitian yang dilakukan, serta analisis terhadap fokus permasalahan penelitian. Pada bab ini juga akan dibahas perancangan sistem yang merupakan tindak lanjut dari tahapan analisis, termasuk didalamnya pemodelan proses dan pemodelan data yang dibangun berdasarkan pendekatan terstruktur.
BAB IV: IMPLEMENTASI SISTEM
Bab ini berisi proses pembangunan perangkat lunak berdasarkan hasil perancangan pada bab sebelumnya dan pengimplementasiannya ke sistem nyata.
BAB V: KESIMPULAN DAN SARAN
Bab terakhir akan memuat kesimpulan isi dari keseluruhan uraian bab-bab sebelumnya dan saran-saran dari hasil yang diperoleh yang diharapkan dapat bermanfaat dalam pengembangan selanjutnya untuk perbaikan di masa yang akan datang.
Universitas Sumatera Utara
BAB 2
LANDASAN TEORI
2.1 Graph
Graf adalah struktur data yang terdiri dari atas kumpulan vertex (V) dan edge (E), biasa ditulis sebagai G=(V,E), di mana vertex adalah node pada graf, dan edge adalah rusuk / jaring yang menghubungkan dua node. Jaring terdefenisi melalui pasangan node (v,w), di mana v disebut tail dan w disebut head dari jaring tersebut. (Dr.Suarga,2012.) Beberapa istilah yang sering digunakan dalam masalah graf antara lain : 1. Adjacent vertex: adalah dua node berdekatan, terhubung langsung oleh vertex. 2. Path: jalur melalui edge yang menghubungkan suatu vertex ke vertex yang lain, panjang suatu jalur ditentukan oleh jumlah jaring (edge) yang menghubungkan dua vertex. 3. Complete graph: adalah graf di mana semua vertex terhubung langsung satu dengan yang lain. 4. Weighted graph: graf yang setiap edgenya memiliki bobot/ nilai. 5. Cycle: adalah jalur yang mulai dari suatu vertex dan berakhir pada vertex yang sama.( Dr.Suarga,2012.)
Universitas Sumatera Utara
8
v
e1
v4
e4
e5
e2
v2
e3
v3
Gambar 2.1 Graph dengan 4 verteks dan 5 edge.
Pada gambar 2.1 diatas graph G = (V, E) dimana: 1. V adalah himpunan titik, simpul, verteks atau nodes dari G, yaitu V = {v1, v2, v3, v4} 2. E adalah himpunan rusuk, edges, atau sisi dari G, yaitu E = {e1, e2, e3, e4, e5}
2.1.1 Macam – macam Graph Menurut Arah dan Bobotnya Menurut arah dan bobotnya, graph dibagi menjadi enam bagian, yaitu : 1. Pada gambar 2.2 menjelaskan Graph berarah (digraph) dan berbobot: setiap edges mempunyai arah (yang ditunjukkan dengan anak panah) dan bobot.
Gambar 2.2 Graph Berarah Dan Berbobot.
Universitas Sumatera Utara
9
2. Pada gambar 2.3 menjelaskan Graph tidak berarah dan berbobot: setiap edges tidak mempunyai arah tetapi mempunyai bobot.
Gambar 2.3 Graph Tidak Berarah Dan Berbobot.
3. Pada gambar 2.4 menjelaskan Graph berarah (digraph) dan tidak berbobot: setiap edges mempunyai arah tetapi tidak mempunyai bobot.
Gambar 2.4 Graph Berarah Dan Tidak Berbobot
Universitas Sumatera Utara
10
4. Pada gambar 2.5 menjelaskan Graph tidak berarah dan tidak berbobot: setiap edges tidak mempunyai arah dan tidak mempunyai bobot
Gambar 2.5 Graph Tidak Berarah Dan Tidak Berbobot
5.
Pada gambar 2.6 menjelaskanGraph sederhana : Graph yang tidak memiliki garis paralel ataupun loop. Titik-titik pada Graph sederhana dihubungkan tepat dengan satu garis ke setiap titik yang lain dan tidak ada garis yang titik awal dan akhirnya sama (Adelina, 2014).
Gambar 2.6 Graph Sederhana (Adelina,2014)
6.
Pada gambar 2.7 menjelaskanGraph tidak sederhana : Graph yang memiliki loop atau garis paralel. Graph tidak sederhana kemudian terbagi lagi menjadi Graph semu (pseudoGraph) dan multiple Graph (Adelina, 2014).
a. Graph Semu (pseudo Graph)
b. MultipleGraph
Gambar 2.7 Graph Tidak Sederhana(Adelina,2014)
Universitas Sumatera Utara
11
2.2 Lintasan Terpendek (Shortest Path)
Persoalan mencari lintasan terpendek di dalam Graph merupakan salah satu persoalan optimasi.Graph yang digunakan dalam pencarian lintasan terpendek adalah Graph suatu nilai atau bobot. Bobot pada sisi Graph dapat menyatakan jarak antar kota, waktu pengiriman pesan, ongkos pembangunan, dan sebagainya. 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 meminimisasi bobot pada suatu lintasan di dalam Graph. (Anik Andriani, 2014) 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 si mpul yang lain. d. Lintasan terpendek antara dua buah simpul yang melalui beberapa simpul tertentu.
2.3 Algoritma
2.3.1 Pengertian Algoritma
Ahli sejarah matematika menemukan kata algoritma berasal dari nama penulis buku Arab terkenal, yaitu Abu Abdullah Muhammad Ibnu Musa Al-Khuwarizmi seorang ahli matematika, astrologi, astronomi, geoGraphi.
Algoritma adalah sekumpulan langkah (tahapan) logis untuk menyelesaikan suatu pekerjaan ( permasalahan).
Universitas Sumatera Utara
12
Terdapat beberapa defenisi dari algoritma: 1. Algoritma adalah teknik penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat dengan jumlah kata terbatas tetapi tersusun seccara logis dan sitematis. 2. Algoritma adalah suatu proses yang jelas untuk menyelesaikan suatu persoalan degan menggunakan langkah-langkah tertentu dan terbatas jumlahnya. 3. Algoritma adalah susunan langkah yang pasti, yang bila diikuti maka akan mentrasformasikan data input menjadi output yang berupa informasi (Indrawoko Kurniadi,2011).
Suatu Algoritma yang terbaik “Suatu algoritma harus menghasilkan output yang tepat guna (efektif) dalam waktu yang relative singkat dan penggunaan memori yang relative sedikit (efesien) dengan langkah yang berhingga dan prosedurnya berakhir baik dalam keadaan diperoleh suatu solusi ataupun tidak ada solusinya”.
Algoritma yang baik harus mampu memberikan hasil yang optimal. Dalam pemilihan algoritma ada beberapa hal yang perlu dipertimbangkan yaitu : 1. Algoritma haruslah benar. Algoritma harus bisa memberikan hasil sesuai dengan yang dikehendaki dari sejumlah masukan yang diberikan 2. Seberapa baik hasil yang dicapai. Artinya algoritma yang baik harus mampu memberikan hasil yang sedekat mungkin dengan nilai sebenarnya. 3. Efisiensi algoritma. Efisiensi algoritma ditinjau dari dua hal yaitu : a. Efisiensi waktu. Mampu memberikan keluaran atau hasil yang cepat. b. Efisiensi memori. Semakin banyak memori yang dibutuhkan sebuah algoritma untuk memecahkan suatu masalah maka makin buruklah algoritma itu (Siang, 2006).
Universitas Sumatera Utara
13
Harga perangkat keras saat ini cenderung menurun.Maka efisiensi waktu lebih diutamakan
daripada
efisiensi
memori.
Hal-hal
yang
berhubungan
dengan
kompleksitas waktu yang digunakan oleh sebuah algoritma adalah : 1. Perancangan. Yang termasuk dalam bagian perancangan adalah : a. Deskripsi algoritma pada suatu tingkatan yang memiliki arti bahasa semu ( pseudo) b. Pembuktian kebenaran bahwa sebuah algoritma bisa menyelesaikan masalah yang diberikan. 2. Analisis. Memberikan evaluasi kinerja algoritma terhadap permasalahan yang diberikan (Purwanto, 2008)
2.3.2
Algoritma Floyd Warshall
Algoritma Floyd Warshall adalah salah satu varian dari pemrograman dinamis, yaitu suatu metode yang melakukan pemecahan masalah dengan memandang solusi yang akan diperoleh sebagai suatu keputusan yang saling terkait. (Thomas H. Cormen,2003).
if k = 0 , if k ≥ 1
Keterangan : menyatakan nilai jalur terpendek dari i ke j yang melalui titik ke 1 ,...., k (Thomas H. Cormen,2003).
Algoritma ini bekerja dengan menghitung shortest path (i,j,k) untuk semua pasangan (i,j), kemudian hasil tersebut akan digunakan untuk menghitung shortest path (i,j,k) untuk semua pasangan (i,j), dst. Proses ini akan terus berlangsung hingga k=n dan kita telah menemukan jalur terpedek untuk semua pasangan (i,j) menggunakan simpul-simpul perantara. (Thomas H. Cormen,2003).
Salah satu algoritma Graph yaitu algoritma Floyd Warshall .Algoritma Floyd Warshall menghitung jalur terpendek antara semua simpul dengan menghitung dari
Universitas Sumatera Utara
14
satu sumber simpul sampai simpul tujuan melalui beberapa jalur (Baras & Theodorakopoulos, 2010).Algoritma Floyd Warshall dapat digunakan untuk mencari panjang lintasan terpendek antara semua pasangan simpul dalam Graph sederhana yang terhubung tetapi algoritma Floyd Warshall tidak dapat digunakan untuk membuat lintasan terpendek (Rosen, 2011).
Cara kerja dari algoritma Floyd Warshall adalah dengan membandingkan semua lintasan yang mungkin terjadi dalam Graph untuk setiap pasang simpul dan melakukan pengujian dari setiap kombinasi simpul yang diperoleh.Misalkan adalah matriks ketetanggaan awal Graph berarah berbobot. adalah matriks ketetanggaan berbobot terpendek dengan sama dengan path terpendek dari titik ke (Siang, 2009). Beberapa karakteristik yang dimiliki oleh algoritma Floyd Warshall antara lain: 1. Persoalan dibagi atas beberapa 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 disini adalah berbagai kemungkinan masukan yang ada pada tahap tersebut. 3. Ketika masuk ke suatu tahap, hasil keputusan akan ditransformasi. 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. 8. Prinsip optimalitas berlaku pada persoalan yang dimaksud.
Universitas Sumatera Utara
15
Kelebihan dari algoritma Floyd Warshall antara lain (Adams, 2012): 1. Algoritma Floyd Warshall dapat digunakan untuk mencari jarak terpendek ( shortest path) dari setiap pasangan node 2. Algoritma Floyd Warshall menggunakan matriks bobot n x n sebagai masukan, dimana n merupakan jumlah node 3. Algoritma Floyd Warshall dapat mentolerir negative edge.
Dari beberapa penelitian tentang perbandingan algoritma Floyd Warshall dengan algoritma Djikstra adalah pada algoritma Dijkstra hanya memikirkan solusi terbaik yang akan diambil pada setiap langkah tanpa memikirkan konsekuensi ke depan. Dan hasil yang diberikan tidak selalu memberikan hasil yang optimal.sedangkan algoritma Floyd warshall memandang solusi yang akan diperoleh sebagai suatu keputusan yang saling terkait sehingga lebih menjamin keberhasilan penemuan solusi optimum untuk kasus penentuan lintasan terpendek (Sondang, 2011).
2.3.3 Analisis Algoritma Floyd Warshall
Dalam iterasinya untuk mencari lintasan terpendek, algoritma Floyd-Warshall membentuk n matriks sesuai dengan iterasi-k. Algoritma Floyd-Warshall sering dipergunakan
untuk
menghitung
lintasan
terpendek
karena
kesederhanaan
algoritmanya. Algoritma ini menghitung bobot terkecil dari semua jalur yang menghubungkan sebuah pasangan titik, dan melakukannya sekaligus untuk semua pasangan titik. Dengan kata lain pada saat perhitungan rute optimum yang akan dilalui terlebih dahulu. Algoritma Floyd-Warshall bekerja berdasarkan formulasi dinamic programming . Setiap langkahnya akan memeriksa lintasan antara vi dan vjapakah bisa lebih pendek jika melalui vi-vk dan vk-vj.
Universitas Sumatera Utara
16
Proses Penentuan Nilai Minimum Algoritma Floyd-Warshall dapat dituliskan sebagai berikut: 1. Pada iterasi ke-1, setiap sel matriks dilakukan pengecekan apakah jarak antar dua titik mula mula lebih besar dari penjumlahan antar jarak titik asal ke titik tujuan (titik tujuan=iterasi ke-1) dengan jarak titik asal (titik asal=iterasi ke-1) ke titik tujuan. Dengan kata lain apakah W[i,j] > W[i,k] + W[k,j]. 2. Jika iya maka jarak antar dua titik mula mula diganti dengan penjumlahan antar jarak titik asal ke titik tujuan (titik tujuan=iterasi ke-1) dengan jarak titik asal (titik asal=iterasi ke-1) ke titik tujuan (W[i,k] + W[k,j]). 3. Jika tidak, maka jarak yang digunakan yaitu jarak antar dua titik mula mula (W[i,j]). 4. Proses iterasi dilakukan hingga pada iterasi terakhir (jumlah iterasi=jumlah total titik).
Universitas Sumatera Utara
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Analisis sistem merupakan bagian dari proses pembuatan sistem yang memiliki beberapa tahapan. Berikut merupakan tahapan - tahapan dari analisis sistem.
3.1.1. Analisis masalah Masalah yang dibahas dalam penelitian ini adalah, sulitnya seseorang dalam memilih informasi tentang jalur yang diinginkan dengan menggunakan algoritma Floyd warshall .Maka dari itu, sebelum membangun program dilakukan analisis masalah dengan menggunakan Ishikawa Diagram seperti yang ditunjukkan di gambar 3.1.
Ishikawa Diagram (diagram fishbone) berbentuk tulang ikan yang merupakan buah pikiran dari Kaoru Ishikawa.Ishikawa Diagram adalah sebuah alat grafis yang digunakan untuk mengidentifikasi, mengeksplorasi dan mengambarkan suatu masalah, sebab dan akibat dari masalah itu. Sering disebut diagram sebab-akibat atau diagram tulang ikan ( Fishbone diagram) karena menyerupai tulang ikan.
Universitas Sumatera Utara
18
Konsep dasar dari diagram Ishikawa adalah nama masalah yang mendapat perhatian dicantumkan di sebelah kanan diagram (atau pada kepala ikan) dan penyebab masalah yang mugkin digambarkan sebagai tulang-tulang dari tulang utama. Secara khusus tulang-tulang ini mendeskripsikan empat kategori dasar yaitu material, mesin kekuatan, manusia, dan metode).Kategori alternative atau tambahan meliputi tempat prosedur, kebijakan, dan orang atau lingkungan sekeliling, pemasok, system dan keterampilan.(Jeffery, 2004).
Berdasarkan gambar 3.1 , merupakan masalah pencarian rute terpendek menuju bandara Kuala Namu. Dalam diagram perhatikan bahwa masalah yang dipecahkan berada di kotak sebelah kanan. Empat area yang diidentifikasi sebagai kategori penyebab (material, metode, machine dan people) dituliskan di kotak sebelah atas dan bawah kerangka ikan dan dihubungkan dengan panah (tulang) menuju ke tulang ikan.Sebab aktual dari masalah unntuk setiap kategori di gambarkan sebagai panah ke panah kategori (bone).
Universitas Sumatera Utara
19
3.1.2. Analisis persyaratan Analisis persyaratan dibagi menjadi dua yaitu persyaratan fungsional dan non fungsional.
a.
Fungsional
Persyaratan fungsional merupakan persyaratan yang dimiliki oleh sistem dalam menyelesaikan suatu masalah.Dalam hal ini persyaratan fungsional yang harus dimiliki sistem yaitu:
1. Pada proses input , sistem ini menggunakan lintasan terpendek yang rutenya di lihat dari jalan yang terbaca oleh google maps. 2. Metode yang diimplementasikan dalam sistem ini ialah proses pencarian lintasan terpendek dengan menggunakan Algoritma Floyd-Warshall pada lintasan terpendek yang akan dicari.
b.
Non-fungsional
Kebutuhan non-fungsional yang harus dipenuhi aplikasi yang dirancang adalah sebagai berikut: a. User Friendly Sistem yang dibangun harus User Friendly, artinya sistem ini dapat dengan mudah digunakan dan dimengerti oleh user sehingga menjadi salah satu solusi dalam mencari lintasan terpendek. b. Software Pendukung Sistem yang dibangun oleh penulis menggunakan semua Software Pendukung bersifat freeware sehingga tidak memerlukan izin atau hal-hal yang dapat merugikan pihak lain.
Universitas Sumatera Utara
20
c. Fitur Tambahan Sistem ini menambah beberapa fitur tambahan yaitu menyediakan beberapa fungsi yang akan menyimpan hasil dari pencarian lintasan terpendek. d. Performa Pencarian lintasan terpendek yang dilakukan oleh sistem akan mampu menunjukkan hasil akhir dari proses, yaitu jarak terpendek
3.2 Pemodelan Aplikasi
Pemodelan aplikasi yang dirancang bertujuan untuk menggambarkan semua kondisi dan bagian-bagian yang berperan dalam sistem yang dirancang.Pemodelan Aplikasi dilakukan dengan membuat Use-Case Diagram, Activity Diagram, dan Sequence Diagram.
3.2.1 Use-Case Diagram
Use case diagram akan menjelaskan apa saja fungsi-fungsi yang akan dikerjakan oleh sistem. Hal ini dikarenakan use case diagram akan merepresentasikan bagaimana interaksi antara actor (user )dengan sistem.
System
Floyd Warshall
user
> > d s t e n x e < <
<>
Evaluasi node demi node
Jarak terpendek
Input daerah asal
< < e x t e n d s > >
< < i c l u d e > >
Bandingkan semua rute yang dilalui
> e > l u d c i < <
Gambar 3.2 Use Case Diagram Sistem Penentuan Jalur Terpendek Menuju Bandara Kuala Namu
Universitas Sumatera Utara
21
Use case diagram pada gambar 3.2 menjelaskan user melakukan pencarian lintasan terpendek dengan menginputkan daerah asal dengan menggunakan Algoritma Floyd Warshall kemudian melihat hasil dari lintasan terpendek yang telah dicari setelah membandingkan node node yang telah di evaluasi.
3.2.2 Activity Diagram
UML menawarkan sebuah diagram tambahan yang disebut activity diagram atau diagram aktivitas. Activity diagram adalah sebuah diagram yang dapat digunakan untuk menggambarkan secara grafis aliran proses bsnis, langkah-langkah sebuah use case atau logika behavior (metode) object. Diagram ini seupa dengan flowchart dimana secara grafis diagram ini menggambarka diagram aliran sekuensial dari kegiatan. Perbedaan diagram ini dengan flowchart dimana diagram ini menyediakan sebuah mekanisme untuk menggambarkan kegiatan yang tampak secara pararel. Diagram ini sangat berguna untuk memodelkan kegiatan yang akan dilakukan saat sebuah operasi dieksekusi dan memodelkan hasil-hasil dari kegiatan-kegiatan ini. (Jeffery , 2004)
Universitas Sumatera Utara
22
User
System
Input daerah asal
Evaluasi node demi node
Bandingkan semua rute yang dilalui
Tampilkan jarak terpendek yang di lalui
Proses pencarian rute dengan menggunakan algoritma floyd warshall menuju KNIA
Gambar 3.3 Activity Diagram Algoritma F loyd Warshall
Diagram activity pada gambar 3.3 ini menjelaskan tentang pencarian jarak terpendek menggunakan alggoritma Floyd Warshall , yang mana user akan menginput daerah asal dan sistem akan mulai mengevaluasi node demi node dan membandingkan node terdekat menuju bandara Kuala Namu dengan menggunakan algoritma Floyd Warshall . Setelah mendapat perhitungan jarak terpendek maka akan ditampilkan jarak tersebut ke user dan sistem akan berhenti.
Universitas Sumatera Utara
23
3.2.3 Sequence Diagram
Sequence diagram diagram adalah diagram UML yang memodelkan logika sebuah use case dengan cara menggambarkan interaksi pesan di antara objek-objek dalam rangkaian waktu. Pada gambar 3.4 akan dijelaskan dijelas kan sequence sequence diagram.
User
Interface
Floyd Warshall
Proses Lintasan
Start
Proses Perhitungan Floyd Warshall
Bandingkan semua vertex yang terhubung
Tampil jalur terpendek ditemukan oleh Algoritma Floyd Warshall
Gambar 3.4 Sequence Sequence Di agram
Universitas Sumatera Utara
24
3.3 Flowchart
Pengertian dari flowchart atau digram alir adalah sebuah diagram dengan simbolsimbol grafis yang menyatakan aliran algoritma aliran algoritma atau proses atau proses yang menampilkan langkah-langkah yang disimbolkan dalam bentuk kotak, beserta urutannya dengan menghubungkan
masing
masing
langkah
tersebut
menggunakan
tanda
panah. Flowchart panah. Flowchart Floyd Warshall digambarkan digambarkan oleh gambar 3.5
Start
Input daerah asal
Evaluasi vertex demi vertex
Bandingkan semua rute yang dilalui
Proses pencarian jarak terpendek menggunakan Algoritma Floyd-warshall
Tampilkan rute jarak terpendek
end
Gambar 3.5 Diagram Alur Algoritma Floyd-Warshall
Universitas Sumatera Utara
25
3.4 Perancangan Interface
Sistem ini dirancang dengan tampilan awal yang langsung bisa diakses tanpa melalui login.
bagian paling atas dar website yang yang biasanya berisi gambar gambar website, alamat, dan nama website.
Menu
: Untuk menyambungkan halaman yang satu dengan halaman yang lainnya.
Peta
:
Menampilkan gambar peta yang berfugsi menunjukkan rute / jalan menuju bandara KNIA
Jumlah Pengunjung& pengguna
:
Database yang menampilkan jumlah pengunjung pengunjung dan pengguna aplikasi ini
untuk
Universitas Sumatera Utara
26
Daerah asal
: Berupa combo box yang menampilkan titik-titik awal/ asal untuk menuju bandara KNIA
Daerah tujuan
:
KNIA
3.5 Database
Database adalah tempat media penyimpanan data dalam membuat sebuah program yang berisikan tabel, field dan record , yang di selimuti namanya DBMS (DataBase Managemet Systm).
Database terdiri dari tabel – tabel yang dibuat menggunakan program MySQL. Database yang dirancang penulis adalah database db_floyd yang terdiri dari 5 tabel.
Entity Relationship Diagram (ERD) merupakan suatu teknik pemodelan data yang menggambarkan entitas dan hubugan antar entitas dalam sebuah sistem informasi.
Tabel Node Tabel Map
Kdnode
Nama Koor1 Koor2 keterangan
ambil
Awal akhir
Tabel Jarak
ambil
Tabel Pengunjung
Awal Akhir Arah jarak
Tabel Pengguna
Id
Id
Waktu ip
Waktu ip
Gambar 3.7 Enti ty Relationship D iagram (ERD)
Universitas Sumatera Utara
BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM
4.1 I mplementasi Sistem
Web server merupakan sebuah perangkat lunak dalam server yang berfungsi menerima permintaan (request ) berupa halaman web melalui HTTP atau HTTPS dari klien yang dikenal dengan browser web dan mengirimkan kembali (response) hasilnya dalam bentuk halaman-halaman web yang umumnya berbentuk document HTML.
4.1.1
Tampilan halaman utama
Tampilan ini merupakan tampilan yang pertama kali muncul pada saat aplikasi dijalankan.
Gambar 4.1 Tampilan Halaman Utama
Universitas Sumatera Utara
30
4.1.2
Tampilan Menu Floyd Tampilan ini hanya menampilkan cara proses perhitungan jarak dari algoritma Floyd warshall
Gambar 4.2 Tampilan Menu Floyd
4.1.3
Tampilan Login Admin Pengelola Data Tampilan ini akan muncul ketika si pengguna mengklik menu data lokasi. Dan tampilan ini hanya bisa dikelola oleh admin.
Gambar 4.3 Tampilan Login Admin
Universitas Sumatera Utara
31
4.1.4
Tampilan data lokasi Tampilan ini berisikan titik (node) yang dapat diinput , edit dan hapus oleh admin
Gambar 4.4 Tampilan Data Lokasi
4.2 GraphYang Digunakan Untuk Menentukan Rute Terpendek
Gambar 4.5 Graph yang digunakan untuk menghitung jarak terpendek menuju KNIA
Universitas Sumatera Utara
32
Keterangan gambar 4.5 FP
PB
MP
SUN
Hermes Amplas
:
:
:
:
:
: Jalan Arteri Ringroad, Medan, Sumatera Utara
Pinang Baris
: Jl. Pinang Baris, Selalas, Medan, Sumatera Utara
Medan Plaza
: Jl. Jend. Gatot Subroto Medan Sumatera Utara
SUN Plaza
: Jl. H. Zianul Arifin No. 7 Medan Sumatera Utara
Hermes Polonia
: Jl. Wolter Monginsidi Medan Sumatera Utara
No.
30
No.45
: Terminal Amplas
: JL. Menteng, No. 7 Medan Sumatera Utara
: Paladium
: Jl. Kapten Maulana Lubis No. 8 Petisah Tengah Medan Petisah Medan Sumatera Utara
Centre Point
: Jl. Timor Blok H No. 1, Medan, Sumatera Utara
Palad
CP
Focal Point
:
TP
: Thamrin Plaza
: Jl. Thamrin No. 75 R, Sumatera Utara
MM
: Medan Mall
: JL. MT Haryono No. 8 - 9, Sumatera Utara
KNIA
: Kuala
Namu :
Internasional Airport
Jl. Bandara Internasional Medan, Sumatera Utara
Kualanamu,
Universitas Sumatera Utara
33
4.3 Perhitungan algoritma Floyd Warshall
4.3.1 Iterasi Pertama Tabel 4.1 Perhitungan Algoritma Floyd iterasi pertama
Ke Dari FP PB MP SUN HERMES PALAD CP TP MM AMPLAS KNIA
Pada tabel 4.3Iterasi ke tiga dilakukan dengan cara yang sama seperti iterasi ke dua hanya saja perantaranya adalah titik PB. Pada titik [FP,MP]= ∞ [FP,MP] > [FP,PB]+ [PB,MP] 4.4+7.1= 11.5 maka nilai [FP,MP] akan diganti dengan nilai 11.5 Pada titik [FP,SUN]=8 [FP,SUN] > [FP,PB]+[PB,SUN] 4.4+9.1 = 13.5 maka nilai [FP,SUN] tidak diganti dikarenakan hasil penjumlahan dari [FP,PB]+[PB,SUN] lebih besar dari jarak sebenarnya. Perhitungan dilakukan seteruskan dengan cara yang sama sampai semua node memiliki jumlah node yang paling kecil dari titik perantara PB
4.3.4 Iterasi ke Empat Tabel 4.4 Perhitungan Algoritma Floyd Iterasi Ke Empat
Ke Dari FP PB MP SUN HERMES PALAD CP TP MM AMPLAS KNIA
Pada tabel 4.4Iterasi ke empat dilakukan dengan cara yang sama seperti iterasi ke tiga hanya saja perantaranya adalah titik MP. Pada titik [FP,PALAD]= ∞
Universitas Sumatera Utara
∞ ∞ ∞ 27.5 29.4 26.6 ∞ 25.4 25.4 27.7 0
36
[FP,PALAD] > [FP,MP]+ [MP,PALAD] 11.5+2.2= 13.7 maka nilai [FP,PALAD] akan diganti dengan nilai 13.7 karena nilai [FP, PALAD] 13.7 < ∞ Pada titik [PB,PALAD]= ∞ [PB,PALAD] > [PB,MP]+ [MP,PALAD] 7.1+2.2= 9.3 maka nilai [PB,PALAD] akan diganti dengan nilai 13.7, karena nilai [PB,PALAD] 9.3 < ∞ Perhitungan
dilakukan
seteruskan
dengan
cara
yang
sama
sampai
semua
nodememiliki jumlah node yang paling kecil dari titik perantara MP.
4.3.5 Iterasi ke Lima Tabel 4.5 Perhitungan Algoritma Floyd Iterasi Lima
Ke Dari FP PB MP SUN HERMES PALAD CP TP MM AMPLAS KNIA
Pada tabel 4.5Iterasi ke lima dilakukan dengan cara yang sama seperti iterasi ke empat hanya saja perantaranya adalah titik SUN
Pada titik [FP, Hermes]= 6 [FP,Hermes > [FP,SUN]+ [SUN,Hermes]
Universitas Sumatera Utara
35.5 36.6 29.5 27.5 29.4 26.6 ∞ 25.4 25.4 27.7 0
37
8+1.9
=
9.9
maka nilai [FP,Hermes] tidak diganti
dikarenakan
hasil
penjumlahan
dari
[FP,SUN]+[SUN,Hermes] lebih besar dari jarak sebelumnya. Pada titik [PB,Hermes]= ∞ [PB,Hermes] > [PB,SUN]+ [SUN, Hermes] 9.1+ 1.9 = 11 maka nilai [PB,Hermes] akan diganti dengan nilai 11, karena nilai [PB,Hermes] 11 < ∞ Perhitungan dilakukan seteruskan dengan cara yang sama sampai semua node memiliki jumlah node yang paling kecil dari titik perantara SUN.
4.3.6 Iterasi ke enam Tabel 4.6 Perhitungan Algoritma Floyd Iterasi Ke Enam
Ke Dari FP PB MP SUN HERMES PALAD
FP
PB
0 ∞ ∞ ∞ ∞ ∞
CP TP MM AMPLAS KNIA
∞ ∞ ∞ ∞ ∞
MP
HERMES
PALAD
CP TP
MM
AMPLAS
KNIA
4.4 11.5 8 0 7.1 9.1 ∞ 0 2 ∞ ∞ 0 ∞ ∞ ∞ ∞ ∞ 1
6.6 11 3.9 1.9 0 2.9
13.7 9.3 2.2 ∞ ∞ 0
∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞ 2.1 2.3
∞ ∞ ∞ ∞ ∞ ∞
12.1 19.6 12.5 10.5 8.6 11.5
35.5 36.6 29.5 27.5 29.4 26.6
∞ ∞ ∞ ∞ ∞
∞ ∞ ∞ ∞ ∞
∞ ∞ ∞ ∞ ∞
0 ∞ ∞ ∞ ∞
∞ 0.15 0 ∞ ∞
∞ ∞ ∞ 0 ∞
∞ 25.4 25.4 27.7 0
∞ ∞ ∞ ∞ ∞
SUN
∞ ∞ ∞ ∞ ∞
1 0 ∞ ∞ ∞
Pada tabel 4.6Iterasi ke enam dilakukan dengan cara yang sama seperti iterasi ke lima hanya saja perantaranya adalah titik Hermes Pada titik [FP, Amplas]=12.1 [FP, Amplas] > [FP,Hermes]+ [Hermes, Amplas]
Universitas Sumatera Utara
38
6.6 + 8.6 = 15.2 maka nilai [FP,Amplas] tidak diganti dikarenakan hasil penjumlahan dari [FP,Hermes]+[Hermes, Amplas] lebih besar dari jarak sebelumnya. Pada titik [PB,Amplas]= ∞ [PB,Amplas] > [PB,Hermes]+ [Hermes, Amplas] 11+ 8.6 = 19.6 maka nilai [PB,Amplas] akan diganti dengan nilai 19.6, karena nilai [PB,Amplas] 19.6 < ∞ Perhitungan dilakukan seteruskan dengan cara yang sama sampai semua node memiliki jumlah node yang paling kecil dari titik perantara Hermes.
4.3.7 Iterasi ke tujuh Tabel 4.7 Perhitungan Algoritma Floyd Iterasi Ke Tujuh
Ke
FP PB
MP
SUN HERMES PALAD CP
TP
MM AMPLAS KNIA
Dari FP
0
4.4 11.5 8
6.6
13.7
15.8 16
∞
12.1
35.5
PB
∞
0
7.1
9.1
11
9.3
11.4 11.6
∞
19.6
35.9
MP
∞
∞
0
2
3.9
2.2
4.3
4.5
∞
12.5
28.8
SUN
∞
∞
∞
0
1.9
∞
∞
∞
∞
10.5
27.5
HERMES ∞
∞
∞
∞
0
∞
∞
∞
∞
8.6
29.4
PALAD
∞
∞
∞
1
2.9
0
2.1
2.3
∞
11.5
26.6
CP
∞
∞
∞
∞
∞
∞
0
1
∞
∞
∞
TP
∞
∞
∞
∞
∞
∞
∞
0
0.15
∞
25.4
MM
∞
∞
∞
∞
∞
∞
∞
∞
0
∞
25.4
AMPLAS ∞
∞
∞
∞
∞
∞
∞
∞
∞
0
27.7
KNIA
∞
∞
∞
∞
∞
∞
∞
∞
∞
0
∞
Pada tabel 4.7Iterasi ke tujuh dilakukan dengan cara yang sama seperti iterasi ke enam hanya saja perantaranya adalah titik Palad Pada titik [FP, CP]= ∞ [FP,CP] > [FP,Palad]+ [Palad, CP] 13.7+ 2.1 = 15.8 maka nilai [FB,CP] akan diganti dengan nilai 15.8 , karena nilai [FB,CP] 15.8 < ∞ Pada titik [FB,TP]= ∞
Universitas Sumatera Utara
39
[FB, TP] > [FP,Palad]+ [Palad, TP] 13.7+ 2.3 = 16 maka nilai [FB,TP] akan diganti dengan nilai 16 , karena nilai [FB,TP] 16 < ∞ Perhitungan dilakukan seteruskan dengan cara yang sama sampai semua node memiliki jumlah node yang paling kecil dari titik perantara Palad
4.3.8 Iterasi ke delapan Tabel 4.8 Perhitungan Algoritma Floyd Iterasi Ke Delapan
Ke Dari FP PB MP SUN HERMES PALAD CP TP MM AMPLAS KNIA Pada
tujuh hanya saja perantaranya adalah titik CP Pada titik [FP, TP]= 16 [FP,TP] > [FP,CP]+ [CP, TP] 15.8 + 1 = 16.8 maka nilai [FP,TP] tidak diganti dikarenakan hasil penjumlahan dari [FP,CP]+ [CP, TP] lebih besar dari jarak sebelumnya. Pada titik [PB, TP]= 11.6 [PB, TP] > [PB,CP]+ [CP, TP] 11.6 + 1 = 12.1 maka nilai [PB,TP] tidak diganti dikarenakan hasil penjumlahan dari [PB,CP]+ [CP, TP]lebih besar dari jarak sebelumnya.
Universitas Sumatera Utara
40
Perhitungan dilakukan seteruskan dengan cara yang sama sampai semua node memiliki jumlah node yang paling kecil dari titik perantara CP
4.3.9 Iterasi ke sembilan Tabel 4.9 Perhitungan Algoritma Floyd Iterasi Ke Sembilan
Ke Dari FP PB MP SUN HERMES PALAD CP TP MM AMPLAS KNIA
Pada tabel 4.9Iterasi ke sembilan dilakukan dengan cara yang sama seperti iterasi ke delapan hanya saja perantaranya adalah titik TP Pada titik [FP, MM]= ∞ [FP,MM] > [FP,TP]+ [TP, MM] 16 + 0.15 = 16.15 maka nilai [FB,MM] akan diganti dengan nilai 16.15, karena nilai [FB,MM] 16.15 < ∞ Pada titik [PB,MM]= ∞ [PB, MM] > [PB,TP]+ [TP, MM] 11.6 + 0.15 = 11.75maka nilai [PB, MM)] akan diganti dengan nilai 11.75 , karena nilai [PB, MM] 11.75 < ∞ Perhitungan dilakukan seteruskan dengan cara yang sama sampai semua node memiliki jumlah node yang paling kecil dari titik perantara TP.
Universitas Sumatera Utara
41
4.3.10 Iterasi ke sepuluh Tabel 4.10 Perhitungan Algoritma Floyd Iterasi Ke Sepuluh
Ke Dari FP PB MP SUN HERMES PALAD CP TP MM AMPLAS KNIA
Pada tabel 4.10Iterasi ke Sepuluh dilakukan dengan cara yang sama seperti iterasi ke Sembilan hanya saja perantaranya adalah titik MM Pada titik [FP, Amplas]= 12.1 [FP,Amplas] > [FP,MM]+ [MM,Amplas] ∞ + 16.15 = ∞
dikarenakan
maka nilai [FP,Amplas] tidak diganti
hasil
penjumlahan
dari
[FP,MM]+
[MM,Amplas] lebih besar dari jarak sebelumnya. Pada titik [PB, Amplas]= 19.6 [PB, Amplas] > [PB,MM]+ [MM, Amplas] 19.6 + ∞ = ∞
maka nilai [PB,Amplas] tidak diganti
dikarenakan hasil penjumlahan dari [PB,MM]+ [MM, Amplas] lebih besar dari jarak sebelumnya. Perhitungan dilakukan seteruskan dengan cara yang sama sampai semua node memiliki jumlah node yang paling kecil dari titik perantara MM
Universitas Sumatera Utara
42
4.3.11 Iterasi ke sebelas Tabel 4.11 Perhitungan Algoritma Floyd Iterasi Ke Sebelas
Ke
FP PB MP
SUN HERMES PALAD CP
TP
MM
AMPLAS KNIA
16.15
12.1
35.5
9.3
11.4 11.6 11.75 19.6
35.9
3.9
2.2
4.3
4.5
4.65
12.5
28.8
0
1.9
∞
∞
∞
∞
10.5
27.5
∞
∞
0
∞
∞
∞
∞
8.6
29.4
∞
∞
1
2.9
0
2.1
2.3
2.45
11.5
26.6
∞
∞
∞
∞
∞
∞
0
1
1.15
∞
26.4
TP
∞
∞
∞
∞
∞
∞
∞
0
0.15
∞
25.4
MM
∞
∞
∞
∞
∞
∞
∞
∞
0
∞
25.4
AMPLAS ∞
∞
∞
∞
∞
∞
∞
∞
∞
0
27.7
KNIA
∞
∞
∞
∞
∞
∞
∞
∞
∞
0
Dari FP
0
4.4 11.5 8
6.6
13.7
15.8 16
PB
∞
0
7.1
9.1
11
MP
∞
∞
0
2
SUN
∞
∞
∞
HERMES ∞
∞
PALAD
∞
CP
∞
Pada tabel 4.11Iterasi ke Sebelas dilakukan dengan cara yang sama seperti iterasi ke Sepuluh hanya saja perantaranya adalah titik Amplas Pada titik [FP, KNIA]= 35.5 [FP,KNIA] > [FP,Amplas]+ [Amplas,KNIA] 12.1 + 27.7 = 39.8 maka nilai [FP,KNIA] tidak diganti dikarenakan
hasil
penjumlahan
dari
[FP,Amplas]+
[Amplas,KNIA] lebih besar dari jarak sebelumnya.
Pada titik [PB,KNIA]= 35.9 [PB, KNIA] > [PB,Amplas]+ [Amplas, KNIA] 19.6 + 27.7 = 47.3 maka nilai [PB,KNIA] tidak diganti dikarenakan hasil penjumlahan dari [PB,Amplas]+ [Amplas, KNIA] lebih besar dari jarak sebelumnya. Perhitungan dilakukan seteruskan dengan cara yang sama sampai semua node memiliki jumlah node yang paling kecil dari titik perantara Amplas
Universitas Sumatera Utara
43
4.3.12 Iterasi Dua Belas Tabel 4.12 Perhitungan Algoritma Floyd Iterasi Ke Dua belas
Ke Dari FP PB MP SUN HERMES PALAD CP TP MM AMPLAS KNIA
Pada tabel 4.12Iterasi ke Dua Belas dilakukan dengan cara yang sama seperti iterasi ke Sebelas hanya saja perantaranya adalah titik KNIA.
Universitas Sumatera Utara
44
4.4 Pengujian Sistem
4.4.1 Focal Point – KNIA
Gambar 4.6 Tampilan Rute Focal Point – KNIA
4.4.2 Pinang Baris – KNIA
Gambar 4.7 Tampilan Rute Pinang Baris KNIA
Universitas Sumatera Utara
45
4.4.3 Medan Plaza – KNIA
Gambar 4.8 Tampilan Rute Medan Plaza – KNIA
4.4.4
SUN Plaza – KNIA
Gambar 4.9 Tampila Rute SUN Plaza – KNIA
Universitas Sumatera Utara
46
4.4.5 Hermes Place Polonia – KNIA
Gambar 4.10 Tampilan Rute Hermes Polonia – KNIA
4.4.6 Amplas – KNIA
Gambar 4.11 Tampilan Rute Amplas – KNIA
Universitas Sumatera Utara
47
4.4.7 Paladium – KNIA
Gambar 4.12 Tampilan Rute Padalium – KNIA
4.4.8 Centre Point - KNIA
Gambar 4.13 Tampilan Rute Centre Point – KNIA
Universitas Sumatera Utara
48
4.4.9
Thamrin Plaza – KNIA
Gambar 4.14 Tampilan Rute Thamrin Plaza – KNIA
4.4.10 Medan Mall – KNIA
Gambar 4.15 Tampilan Rute Medan mall – KNIA
Universitas Sumatera Utara
BAB 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Berdasarkan hasil studi literatur, analisis perancangan, implementasi dan pengujian sistem ini, maka didapatkanlah kesimpulan seperti berikut ini :
1. Lintasan Terpendek yang didapat adalah lintasan antar vertex dan hasilnya digambarkan
dalam
bentuk
garis
lintasan
yang
berwarna
biru
yang
menghubungkan antara vertex yang satu dengan yang lainnya. 2.
Algoritma Floyd Warshall merupakan metode yang tepat untuk pencarian jalur terpendek pada aplikasi ini.
3.
Algoritma Floyd Warshall mempunyai pemrograman dinamis, Prinsip yang dipegang oleh pemrograman dinamis adalah prinsip optimalitas, yaitu jika solusi total optimal, maka bagian solusi sampai suatu tahap (misalnya tahap ke-i) juga optimal.
4.
Algoritma Floyd-Warshall membandingkan semua kemungkinan lintasan pada graf untuk setiap sisi dari semua simpul. Hal tersebut bisa terjadi karena adanya perkiraan pengambilan keputusan (pemilihan jalur terpendek) pada setiap tahap antara dua simpul, hingga perkiraan tersebut diketahui sebagai nilai optimal.
Universitas Sumatera Utara
50
5.2 Saran
Adapun saran yang diberikan penulis untuk pengembangan dan perbaikan pada sistem ini selanjutnya adalah sebagai berikut :
1.
Untuk penelitian selanjutnya sebaiknya dapat menghitung ketepatan waktu untuk menuju KNIA.
2.
Pada penelitian selanjutnya diharapkan dapat menemukan jalur terpendek melalui jalur mana saja yang lebih dekat dari si pengguna.
3.
Pada penelitian selanjutnya diharapkan dapat menentukan titik awal akses menggunakan sistem Global Positioning System(GPS).
4.
Pada penelitian yang lebih lanjut sebaiknya aplikasi ini dapat diterapkan berbasis android
Universitas Sumatera Utara
DAFTAR PUSTAKA
[1] Adams, E. D. 2012. Rancang Bangun Aplikasi Web Pencarian Rute Terpendek Antar Gedung Di Kampus Menggunakan Algoritma Floyd Warshall . Journal Basic Science And Technology Universitas Brawijaya Malang. [2] Andriani, Anik. 2014 Rancangan Bangun Sistem Informasi Rute Wisata Terpendek Berbasis Algoritma Floyd Warshall. Jakarta: Amik BSI Jakarta. [3] Baras, J., & Theodorakopoulos, G. 2010. Path Problems in Network.Morgan & Claypool Publishers. [4] Cormen, Thomas H 2003. Intrudoction To Algorithms
Edition. The MIT
Press.Cambridge London. [5] Handaka, M.S. (2010). Perbandingan Algoritma Dijkstra (Greedy), Bellman Ford(BFS-DFS), dan Floyd-Warshall (Dynamic Programming) dalam Pengaplikasian
LintasanTerpendek
pada
Link-State
Routing
Protocol . Bandung: ITB [6] Kurniadi, I,.2011. Logika Dan Algoritma Dasar Menggunakan C ++ . Jakarta: Mitra Wacana Media. [7] Kusrini.2007. Konsep
dan
Aplikasi
Sistem
Pendukung
Keputusan.
Andi:
Yogyakarta. [8] Purwananto, Yudhi; Purwitasari, Diana; Wibowo, Agung., 2005, “ Implementasi dan Analisis Algoritma Pencarian Rute Terpendek di Kota Surabaya”, JurnalPenelitian dan Pengembangan Telekomunikasi, No. 2, Vol.10, Desember 2005. [9] Purwanto, E. B., 2008, “Perancangan Dan Analisis Algoritma”, Edisi 1, Graha Ilmu, Yogyakarta. [10] Rosen, K. H. 2011. Discrete Mathematics and Its Applications, Seventh Edition. United Stated: Mc Graw Hill
Universitas Sumatera Utara
[11] Siang,Jungjenk. 2009. Matematika Diskrit Dan Aplikasinya Pada Ilmu Komputer . Yogykarta: Andi Offset. [12] Sitanggang, Sondang. 2011. Perbandingan Algoritma Dijkstra dan FloydWarshall Dalam Mencari Rute Terpendek Jaringan Jalan.Skripsi: Universitas Sumatera Utara. [13] Suarga., 2012. Algoitma Dan Pemrograman.Yogyakarta Penerbit Andi. [14] Whiten, L.J., Bentley L.D. & Ditman K.C. 2004. Metode Desain dan Analisis Sistem, Yogyakarta: Andi.
function arah($zx,$zy,$alokasi,$nilai) { global $jalurterpendek; global $njalurterpendek; global $iterasi; global $fullpath; $spasi=0; if(empty($alokasi)){$alokasi=$zx;} $spasi++; $queryzx="select * from tbljarak where awal ='$zx' and jarak>0"; $query=mysql_query($queryzx); while ($data = mysql_fetch_array($query)) { $pecah=explode("|",$data['arah']); if($pecah[0]==$zx){ $anak=$pecah[1]; }else{ $anak=$pecah[0]; } $ubahcaritujuan=str_replace($zy,"xxxx",$alokasi);
Universitas Sumatera Utara
54
$ubahcariulangan=str_replace($anak,"xxxx",$alokasi); if($ubahcaritujuan!=$alokasi){ /*tidak sama //tidak dapet dapet 1*/ } elseif($ubahcariulangan!=$alokasi){ /* Tidak pernah diulangin*/ } else{ /* tidak memenuhi dan berulang terus */ $nilaix=$nilai+$data['jarak']; //echo $data['jarak']."|"; $alokasix=$alokasi."|".$anak; arah($anak,$zy,$alokasix,$nilaix); $ubahcaritujuanx=str_replace($zy,"xxxx",$alokasix); if($ubahcaritujuanx!=$alokasix){ /*tidak sama //tidak dapet dapet 1*/ if ($nilaix<$njalurterpendek){ $jalurterpendek = $alokasix; $njalurterpendek = $nilaix; } //echo "(".$alokasix.") --->".$nilaix."Km"; } } //echo $ubahcaritujuan."|".$ubahcariulangan."|".$alokasi; //echo $spasi; } }?> PENCARIAN JALUR TERPENDEK <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta name="" content="" /> <script type="text/javascript" src="scripts/jquery-1.6.1.min.js"> <script type="text/javascript" src="scripts/jquery.nivo.slider.js"> <script type="text/javascript" src="scripts/topmenu.js"> <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"> <script type="text/javascript" src="scripts/util.js"> <script> var directionsDisplay; var directionsService = new google.maps.DirectionsService(); var map; function initialize() { var myLatlng = new google.maps.LatLng(3.595444, 98.769372); var myOptions = { zoom: 11, center: myLatlng, mapTypeId: google.maps.MapTypeId.ROADMAP } var map = new google.maps.Map(document.getElementById("map"), myOptions); downloadUrl("phpsqlajax_genxml.php", function(data) { var infowindow = new google.maps.InfoWindow(); var markers = data.documentElement.getElementsByTagName("marker"); for (var i = 0; i < markers.length; i++) { var latlng = new google.maps.LatLng(parseFloat(markers[i].getAttribute("lat")), parseFloat(markers[i].getAttribute("lng"))); var marker = new google.maps.Marker({position: latlng, map: map});