Penitikan Titik dan Perhitungan Jarak

c. System kemudian menelusuri ke database untuk mencari nomor vertex dari kedua gedung tersebut. d. Kemudian system akan menyusun matriks bobot yang akan digunakan untuk melakukan pencarian jarak terpendek menggunakan algoritma Floyd Warshall. e. Setelah matriks bobot tersusun system kemudian mulai mencari jarak terpendek antara lokasi awal dengan lokasi tujuan. f. Kemudian system juga menyusun matriks predessesor atau matriks rute dari lokasi awal ke lokasi tujuan. g. Kemudian system akan menyusun data berupa matriks predessesor rute menjadi dalam bentuk garis 3D yang akan ditampilkan ke user sebagai hasil pencarian.

3.2. Penerapan Algoritma

Floyd Warshall

3.2.1 Penitikan Titik dan Perhitungan Jarak

Pada penelitian ini penulis melakukan penitikan koordinat secara manual. Dengan cara mengambil titik latitude dan longitude suatu titik lewat Google maps. Dimana Garis Lintang Latitude adalah garis khayalan yang membelah bumi secara horisontal menjadi dua bagian yaitu Utara dan Selatan. Garis yang membelah itu adalah garis lintang 0 derajat atau disebut garis khatulistiwa seperti di Pontianak yang dilewati pararel dengan garis khatulistiwa atau garis lintang 0 derajat. Di atas khatulistiwa disebut garis Lintang Utara LU dan di bawah disebut garis Lintang Selatan LS. Garis lintang berkisar dari 0 derajat di khatulistiwa sampai 90 derajat di Kutub Utara atau Kutub Selatan. Garis Bujur Longitude adalah garis khayalan yang membelah bumi secara vertikal menjadi dua bagian yaitu Timur dan Barat, serta menghubungkan kutub Utara dan Selatan. Sebagai patokan waktu di dunia. adalah garis yang tegak lurus dengan garis khatulistiwa dimana awalnya 0 derajat di Royal Observatory Greenwich, Inggris. Ke arah kanan Timur merupakan garis Bujur Timur BT sedangkan ke arah kiriBarat merupakan garis Bujur Barat BB. Universitas Sumatera Utara Dengan klik kanan pada titik yang akan kita pilih, kemudian memilih menu “Ada apa di sini?” pada Google Maps. Google Maps akan memproses untuk mencari latitude dan longitude pada peta. Dapat dilihat pada Gambar 3.3. Setelah mandapatkan koordinat yang dituju selanjutnya koordinat tersebut disimpan ke dalam database. Gambar 3.3 Proses Pengambilan Koordinat pada Google Maps Perhitungan jarak antar titik di dalam sistem di dapat dari data yang sudah ada dari Google maps. Dapat dilihat pada Gambar 3.4. Dengan m emilih menu “ukur jarak” pada Google Maps, Google Maps akan menghitung jarak dari titik yang kita pilih. 3.2.2 Penerapan Algoritma Floyd Warshall Sebelum algoritma Floyd Warshall dapat digunakan di dalam sistem pencarian jarak terpendek pada peta 3D Universitas Sumatera Utara, sistem terlebih dahulu harus menyediakan data yang terdiri dari titik vertex, garis-garis edges dan jarak untuk setiap garisedge satu titik ke titik lain yang direpresentasikan dalam bentuk matriks. Setelah data tersebut lengkap baik vertex, edges dan jarak, baru sistem dapat menggunakan algoritma Floyd Warshall. Algoritma Floyd Warshall mencari rutepath terpendek dari setiap titik ke setiap titik yang ada. Di penelitian ini, penulis menggunakan data titik gedung Universitas Sumatera Utara sebanyak 127 buah titik ditambah 137 titik simpang sebagai titik bantu sehingga total terdapat 261 titik vertex , algoritma Floyd Warshall akan mencari rute terpendek untuk ke-261 titik yang ada. Output dari perhitungan Floyd Warshall ada tiga, yaitu matriks bobotweight, matriks jarakdistance, dan matriks pendahulu predecessor. Gambar 3.4. Perhitungan jarak menggunakan Google Maps. Gambar 3.5 Contoh Graph Tabel 3.1 Contoh Tabel Weight 1 2 3 4 5 1 2 2 4 4 3 4 6 3 2 1 3 4 5 2 3 4 4 2 3 6 Universitas Sumatera Utara 4 6 2 5 4 3 2 Tabel weight pada pada tabel 3.1 merupakan matriks jarak antara masing-masing vertex. Nilai 0 berarti tidak ada terdapat path terhadap vertex tersebut. Sebagai contoh matriks[1][1] pada tabel tersebut bernilai 0, artinya tidak ada path dari vertex 1 ke vertex 1. Sedangkan matriks[5][2] bernilai 4 artinya terdapat path dengan panjang 4 dari vertex 5 ke vertex 2. Tabel 3.2 Contoh Tabel Distance Tabel distance pada tabel 3.2 merupakan matriks jarak terpendek dari satu vertex ke vertex lainnya, hasil dari algoritma Floyd Warshall. Sama seperti pada tabel weight nilai dari matriks berarti panjang jarak dari antara kedua vertex. Jadi, matriks[2][3] bernilai 4 artinya jarak terpendek dari vertex 2 ke vertex 3 adalah 4. Matriks[5][3] bernilai 5 artinya jarak terpendek dari vertex 5 ke vertex 3 adalah 5. Matriks [2][1] diberi nilai 9999 agar pada saat perhitungan jarak terpendek matriks tersebut diabaikan karena nilainya sangat besar, nilai dari 9999 bisa diganti dengan angka besar yang lainnya. Tabel 3.3 Contoh Tabel Predesesor 1 2 3 4 5 1 1 1 2 5 1 2 2 2 5 2 3 3 3 3 3 1 2 3 4 5 6 1 2 6 5 3 2 9999 4 6 4 3 9999 4 6 5 4 9999 6 6 2 5 9999 4 5 2 6 Universitas Sumatera Utara 4 4 4 4 4 5 5 5 5 5 Tabel predesesor pada tabel 3.3 adalah matriks jalur atau matriks penelusuran. Apabila nilai dari matriks kosong berarti tidak terdapat path diantara kedua vertex. sebagai contoh nilai dari matriks[2][4] adalah 5, berarti sebelum ke vertex 4, maka harus melewati vertex 5 terlebih dahulu. Jadi jalur penelusuran dari vertex 2 ke vertex 4 adalah 2-5-4.

3.3. Proses Algoritma