BAB II
TINJAUAN PUSTAKA
2.1 Sistem Informasi Geografis (SIG) 2.1.1 Pengertian Sistem Informasi Geografis
Ada beberapa pengertian dari sistem informasi geografis, diantaranya yaitu:
a) Purwadhi (1994) dalam Husein (2006) menyatakan:
Sistem Informasi Geografis merupakan suatu sistem yang mengorganisasi perangkat keras (hardware), perangkat lunak (software), dan data, serta dapat mendayagunakan sistem penyimpanan, pengolahan maupun analisis data secara simultan, sehingga dapat diperoleh informasi yang berkaitan dengan aspek keruangan;
b) Menurut ESRI (1990) dalam Basofi (2010) menyatakan:
Sistem Informasi Geografis sebagai suatu kumpulan yang terorganisir dari perangkat keras komputer, perangkatlunak, data geografi, dan personil yang dirancang secara efisien untuk memperoleh, menyimpan, mengupdate, memanipulasi, menganalisis, dan menampilkan semua bentuk informasi yang bereferensi geografi.
Dari pengertian di atas dapat disimpulkan bahwa sistem informasi geografis merupakan suatu sistem informasi berbasis komputer yang digunakan untuk mengolah dan menyimpan data atau informasi geografis.
2.1.2 Komponen Sistem Informasi Geografis
Komponen Sistem Informasi Geografis terbagi menjadi empat, yaitu sebagai berikut:
a. Perangkat Keras (Hardware)
Sistem Informasi Geografis membutuhkan komputer untuk menyimpan data dan dalam melakukan pengolahan data. Semakin kompleks data yang ingin diolah, maka semakin besar juga kebutuhan memori dan kecepatan pengolah datanya;
b. Perangkat Lunak (Software)
Perangkat lunak dibutuhkan untuk memasukkan, menyimpan dan mengeluarkan data bila diperlukan. Perangkat lunak yang sering digunakan dalam pembuatan SIG seperti (Arc View, ArcGIS, MapInfo dan lain lain); c. Data
Dalam SIG semua data dasar geografis harus diubah terlebih dahulu ke dalam bentuk digital untuk memudahkan dalam pengolahan data. Data dalam SIG dibagi menjadi dua bentuk yakni geografical atau data spasial, dan data atribut; d. Manusia
Manusia dibutuhkan untuk mengendalikan seluruh sistem informasi geografis. Adanya koordinasi dalam sistem informasi geografis sangat diperlukan agar informasi yang diperoleh menjadi benar, tepat dan akurat.
Gambar 2.1 Komponen SIG
2.1.3 Subsistem Sitem Informasi Geografis
Sistem Informasi Geografis dapat diuraikan menjadi beberapa subsistem (Novianti, 2009) yaitu:
a. Data Input
Subsistem ini bertugas untuk mengumpulkan dan mempersiapkan data spasial dan atribut dari berbagai sumber. Subsistem ini pula yang bertanggung jawab dalam mengkonversi atau mentransformasikan format-format data aslinya ke dalam format-format-format-format yang digunakan oleh SIG; b. Data Output
Subsistem ini menampilkan atau menghasilkan keluaran seluruh atau sebagian basis data seperti table, grafik, peta, dan lain-lain;
c. Manajemen Data
Subsistem ini mengorganisasikan baik data spasial maupun atribut ke dalam sebuah basis data sedemikian rupa sehingga mudah dipanggil, diperbaharui, dan diperbaiki;
SIG
DATA MANUSIA
SOFTWARE HARDWARE
Analisis dan Manipulasi Data
Subsistem ini menentukan informasi-informasi yang dapat dihasilkan oleh SIG. Selain itu, subsistem ini juga melakukan manipulasi dan pemodelan data untuk menghasilkan informasi yang diharapkan.
2.2 Peta
Peta adalah suatu gambaran rupa bumi yang diproyeksikan pada bidang datar dan dilengkapi denganskala (Ashar dan Asmiwarti, 2011). Ditinjau dari perannya peta adalah bentuk penyajian informasi spasial tentang permukaan bumi untuk dapat dipakai dalam pengambilan keputusan.
Data utama dalam SIG adalah data berbentuk sebaran spasial obyek yaitu peta. Dalam hal ini terdapat tiga cara dasar dalam penyajian data spasial, yaitu dalam bentuktitik, garis, dan area. Titik merupakan cara penyajian yang tidak berdimensi, dan hanya menyajikan lokasi dalam bentuk koordinat. Penyajian cara ini lebih menekankan pada lokasi obyek, yang tidak berkait dengan ukuran panjang maupun luas dari obyek. Garis merupakan deretan titik yang sambung-menyambung, berdimensi satu seperti jalan, sungai, akan tetapi sudah mempunyai sifat tambahan yaitu mempunyai arah dan ukuran panjang, akan tetapi tidak mempunyai luasan. Area dinyatakan dalam bentuk poligon, merupakan cara penyajian dasar yang berdimensi dua, sehingga dapat menggambarkan luas area.
C A B e2 e1 e3 2.3 Graf 2.3.1 Pengertian Graf
Graf adalah kumpulan simpul (nodes) yang dihubungkan satu sama lain melalui sisi/busur (edges) (Buckley:1990 dalam Alamsyah:2010). Suatu Graf terdiri dari dua himpunan yaitu himpunan V dan himpunan E.
a. Verteks (simpul):V = himpunan simpul yang terbatas dan tidak kosong. b. Edge (sisi/busur):E = himpunan busur yang menghubungkan sepasang
simpul.
Dapat dikatakan graf adalah kumpulan dari simpul-simpul yang dihubungkan oleh sisi-sisi.
Gambar 2.2 Contoh graf
Pada gambar di atas, graf terdiri dari himpunan V dan E yaitu: V = {A, B, C}
E = {e1, e2, e3}
= {(A,B),(B,C),(C,B),(A,C)} 2.3.2 Macam-macam Graf
1. Graf tidak berarah dan tidak berbobot yaitu tiap busur tidak mempunyai anak panah dan tidak berbobot;
Gambar 2.3 Graf tidak berarah dan tidak berbobot (Alamsyah:2010)
2. Graf berarah dan tidak berbobot yaitu tiap busur mempunyai anak panah yang tidak berbobot;
Gambar 2.4 Graf berarah dan tidak berbobot (Alamsyah:2010)
3. Graf tidak berarah dan berbobot yaitu tiap busur tidak mempunyai anak panah tetapi mempunyai bobot;
Gambar 2.5 Graf tidak berarah dan berbobot (Alamsyah:2010)
Gambar 2.6 Graf berarah dan berbobot (Alamsyah:2010)
2.4 Algoritma Dijkstra
Faizah (2010) menyatakan bahwa:
Algoritma Dijkstra ditemukan oleh Edger Wybe Dijkstra. Algoritma Dijkstra adalah algoritma untuk menemukan jarak terpendek dari suatu vertex ke vertex yang lainnya pada suatu graph yang berbobot, dimana jarak antar vertex adalah bobot dari tiap edge pada graph tersebut. Algoritma dijkstra mencari jarak terpendek dari vertex asal ke vertex terdekatnya, kemudian ke vertex yang kedua, dan seterusnya.
Misalkan titik mengambarkan gedung dan garis menggambarkan jalan, maka algoritma dijkstra melakukan kalkulasi terhadap semua kemungkinan bobot terkecil dari setiap titik.
Berikut ini adalah urutan logika dari Algoritma Dijkstra:
1. Beri nilai bobot (jarak) untuk setiap titik ke titik lainnya, lalu set nilai 0 pada node awal dan nilai tak hingga terhadap node lain (belum terisi);
2. Set semua node “Belum terjamah” dan set node awal sebagai “Node keberangkatan”;
3. Dari node keberangkatan, pertimbangkan node tetangga yang belum terjamah dan hitung jaraknya dari titik keberangkatan. Sebagai contoh:
jika titik keberangkatan A ke B memiliki bobot jarak 6 dan dari B ke node C berjarak 2, maka jarak dari A ke C melewati B menjadi 6+2=8. Jika jarak ini lebih kecil dari jarak sebelumnya (yang telah terekam sebelumnya) hapus data lama, simpan ulang data jarak dengan jarak yang baru;
4. Saat kita selesai mempertimbangkan setiap jarak terhadap node tetangga, tandai node yang telah terjamah sebagai “Node terjamah”. Node terjamah tidak akan pernah di cek kembali, jarak yang disimpan adalah jarak terakhir dan yang paling minimal bobotnya;
5. Set “Node belum terjamah” dengan jarak terkecil (dari node keberangkatan) sebagai “Node Keberangkatan” selanjutnya dan lanjutkan dengan kembali ke step 3.
Contoh graf yang akan diselesaikan dengan algoritma dijkstra:
Gambar 2.7 Graf Untuk Algoritma Dijkstra
A B D C E 3 3 4 4 5 1 1 A 6 B 2 C
Dalam contoh graf di atas, dicari rute terpendek dari vertex A ke vertex C. Langkah-langkah untuk menentukan rute terpendek dari vertex A ke vertex C adalah sebagai berikut:
- Pada awalnya status dari vertex yang belum terpilih diinisialisasikan dengan 0 dan yang sudah terpilih diinisialisasikan dengan 1, dimulai dari vertex A. - Tentukan bobot dari vertex yang berhubungan langsung dengan vertex awal
yaitu vertex A, seperti dari vertex A ke vertex B = 3 dan dari vertex A ke vertex E = 4. Untuk vertex C dan D tidak diberi nilai karena tidak terhubung dengan vertex A.
- Predecessor (vertex sumber) dari A, B dan E adalah A, karena bobot dihitung dari A, sedangkan untuk C dan D tidak ada karena tidak ada jarak yang terhubung dengan vertex A.
Tabel 2.1 Hasil iterasi ke-0
Vertex A B C D E
Bobot - 3 - - 4
Predecessor A A - - A
Status 1 0 0 0 0
- Berdasarkan tabel di atas, pilih vertex yang memiliki bobot yang paling kecil dengan status „0‟, sehingga didapat vertex B. Untuk itu vertex B dikunjungi dan status vertex B diubah menjadi 1 dan predecessor-nya tetap A. Karena vertex B telah dipilih, maka diperoleh vertex C dengan jarak = 7, dan predecessor vertex C menjadi B, karena vertex C didapat dengan melalui vertex B. Sehingga diperoleh hasil seperti pada tabel 2.2 di bawah ini:
Tabel 2.2 Hasil iterasi ke-1
Vertex A B C D E
Bobot - 3 7 - 4
Predecessor A A B - A
Status 1 1 0 0 0
- Dari tabel 2.2 didapatkan vertex dengan status „0‟ dan bobot terkecil adalah vertex E. Untuk itu status vertex E berubah menjadi 1. Karena vertex E telah dipilih, maka diperoleh vertex D dengan bobot = 5 dan predecessor vertex D menjadi E. Sehingga diperoleh hasil seperti pada tabel 2.3 di bawah ini:
Tabel 2.3 Hasil iterasi ke-2
Vertex A B C D E
Bobot - 3 7 5 4
Predecessor A A B E A
Status 1 1 0 0 1
- Dari tabel 2.3, maka vertex selanjutnya yang dikunjungi adalah vertex D. Untuk itu status vertex D berubah menjadi 1. Jika vertex D terpilih, maka terjadi perubahan pada vertex C dimana bobot pada vertex C awalnya 7 menjadi 6. Sehingga predecessor vertex C menjadi D. Maka diperoleh hasil seperti pada tabel 2.4 di bawah ini:
Tabel 2.4 Hasil iterasi ke-3
Vertex A B C D E
Bobot - 3 6 5 4
Predecessor A A D E A
Status 1 1 0 1 1
- Karena hanya tinggal vertex C yang belum dikunjungi, maka status vertex C diberi nilai „1‟. Dengan demikian seluruh vertex telah dikunjungi.
Tabel 2.5 Hasil iterasi ke-4
Vertex A B C D E
Bobot - 3 6 5 4
Predecessor A A D E A
Status 1 1 1 1 1
Dengan demikian didapatkan jarak terpendek dari vertex A ke seluruh vertex yang ada. Berikut adalah shortest path dari vertex A ke vertex lainnya: 1) A ke B, vertex yang dilalui adalah A-B, total jarak 3.
2) A ke C, vertex yang dilalui adalah A-E-D-C, total jarak 6. 3) A ke D, vertex yang dilalui adalah A-E-D, total jarak 5. 4) A ke E, vertex yang dilalui adalah A-E, total jarak 4. 2.5 Penelitian Terkait
Penelitian sebelumnya mengenai pencarian rute terpendek sudah pernah dilakukan oleh beberapa mahasiswa. Berikut ini uraian singkat dari penelitian sebelumnya:
Penelitian sebelumnya telah dilakukan oleh Yuliawati (2009) dengan judul “Pencarian Jarak Terpendek Menggunakan Metode Breadth First Search Dan Metode Hill Climbing”. Penelitian ini menghasilkan simulasi perbandingan antara dua metode yang menjadi konsep dasar pencarian jarak yang bernilai minimum.
Penelitian lainnya telah dilakukan oleh Indarti (2009) dengan judul “Pencarian Jarak Terpendek ke Suatu Tempat Dengan Menggunakan Metode Heuristik Berbasis SMS”. Dalam penelitianannya Indarti membuat aplikasi pencarian jarak terpendek yang dapat menerima sms dari pengguna dengan format
yang telah ditentukan, kemudian aplikasi akan menjalankan pencarian secara otomatis berdasarkan koordinat dari kota asal ke kota tujuan.
Perbedaan penelitian diatas dengan penelitian yang penulis lakukan yaitu dalam penelitian kali ini penulismerancang aplikasi penentuan rute terpendek dengan menggunakan Algoritma Dijkstra. Keunggulan dari penelitian yang penulis lakukan yaitu aplikasi yang dibuat oleh penulis bisa diakses melalui website sehingga semua pengguna bisa mengaksesnya kapan saja dan dimana saja.