• Tidak ada hasil yang ditemukan

Sistem Informasi Geografis Pencarian Rute Terdekat Pada Jasa Pengiriman Barang Menggunakan Algoritma A (Star) Berbasis Mobile

N/A
N/A
Protected

Academic year: 2017

Membagikan "Sistem Informasi Geografis Pencarian Rute Terdekat Pada Jasa Pengiriman Barang Menggunakan Algoritma A (Star) Berbasis Mobile"

Copied!
28
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

2.1Sistem Informasi Geografis

Sistem Informasi Geografis (Geographic Information Systems) merupakan sistem informasi berbasis komputer digunakan untuk menyajikan secara digital dan menganalisa penampakan geografis yang ada dan kejadian di permukaan bumi. Penyajian secara digital berarti mengubah keadaan menjadi bentuk digital. Setiap

objek yang ada di permukaan bumi merupakan “geo-referenced”, yang merupakan kerangka hubungan database ke SIG. Databases merupakan sekumpulan informasi

tentang sesuatu dan hubungannya antar satu dengan lainnya, sedangkan “geo

-referenced” menunjukkan lokasi suatu objek diruang yang ditentukan oleh sistem koordinat. (Supriadi, 2007).

Saat ini SIG termasuk salah satu teknologi yang berkembang pesat. Teknologi ini terdiri dari perangkat lunak dan perangkat keras yang didesain untuk mengorganisir data yang berkaitan dangan bumi untuk menganalisis, memperkirakan dan gambaran kartografi. Informasi ruangan mengenai bumi sangat kompleks, tetapi pada umumnya data geografis mengandung 4 aspek penting, yaitu:

1. Lokasi-lokasi yang berkenaan dengan ruang, merupakan objek-objek ruang yang khas pada sistem koordinat (projeksi sebuah peta).

2. Attribut, informasi yang menerangkan mengenai objek-objek ruang yang diperlukan.

(2)

SIG merupakan suatu rancangan sistem informasi untuk mengerjakan data berunsur ruang atau koordinat geografis. Teknologi SIG menyatu dengan operasi database seperti pencarian data dan analisa statistik dan analisis geografis yang disajikan dalam bentuk peta. Kemampuan SIG yang unik ini membuatnya banyak digunakan secara luas misalnya untuk menjelaskan kejadian, memperkirakan hasil dan perencanaan strategis.

Secara sederhana SIG merupakan:

1. Alat berbasis Komputer untuk pemetaan dan analisis tentang sesuatu yang terdapat dan peristiwa yang terjadi di bumi.

2. Seperangkat alat untuk mengumpulkan, menyimpan, memperbaiki, mengubah dan menampilkan data ruang permukaan bumi sebenarnya untuk tujuan tertentu. 3. Sistem berbasis komputer yang dilengkapi dengan 4 kemampuan untuk menangani

data keruangan, yaitu:

a. Memasukkan data (data input).

b. Menyimpan dan memperbaiki data (data store and retrive). c. Memanipulasi dan analisis (manipulation and analysis). d. Menghasilkan data (data output).

2.2 Sistem Proyeksi Peta

Proyeksi peta adalah suatu sistem yang memberikan hubungan antara posisi titik-titik di bumi dan di peta (Prihandito, 1988). Peta merupakan gambaran permukaan bumi pada bidang datar dalam ukuran yang lebih kecil. Dalam hal ini posisi titik-titik pada peta ditentukan terhadap sistem siku-siku x dan y, sedang posisi titik-titik pada muka bumi ditentukan oleh lintang dan bujur. Di dalam konstruksi suatu proyeksi peta, bumi biasanya digambarkan sebagai pola (dengan jari-jari R = 6370,283 km). Dalam hal ini volume elipsoid sama dengan volume bola. Bidang bola inilah yang nantinya akan diambil sebagai bentuk matematis dari permukaan bumi untuk mempermudah dalam perhitungan.

(3)

utama dalam proyeksi peta adalah penyajian bidang lengkung ke bidang datar. Bidang yang lengkung tidak dapat dibentangkan menjadi bidang datar tanpa akan mengalami perubahan-perubahan (distorsi-distorsi), sedang suatu peta dikatakan ideal bila:

a. Luas benar b. Bentuk benar c. Arah benar d. Jarak benar

Keempat syarat tersebut jelas tidak akan dapat dipenuhi, tetapi selalu harus mengorbankan syarat lainnya. Yang dapat dilakukan hanyalah mereduksi distorsi tersebut sekecil mungkin untuk memenuhi satu atau lebih syarat-syarat peta ideal, yaitu dengan:

a. Membagi daerah yang dipetakan menjadi bagian-bagian yang tidak begitu luas.

b. Menggunakan bidang datar atau bidang yang dapat didatarkan (kalau didatarkan tidak mengalami distorsi), yaitu bidang kerucut dan bidang silinder.

2.2.1 Tujuan dan Metode Proyeksi

Penyajian dari permukaan bumi pada suatu bidang datar dibutuhkan untuk mengekspresikan posisi titik-titik pada permukaan bumi ke dalam sistem koordinat bidang datar yang nantinya dapat dipakai untuk perhitungan jarak-jarak dan arah-arah. Tujuan lain adalah untuk penyajian secara grafis yang dapat dipakai untuk membantu studi topologi, iklim, vegetasi, tempat tinggal dan sebagainya yang biasanya berhubungan dengan daerah yang luas.

Metode proyeksi atau transformasi dapat diklasifikasikan sebagai berikut:

a. Proyeksi langsung (direct projection) yaitu dari elipsoid ke bidang proyeksi. b. Proyeksi dobel (double projection) merupakan transformasi dari elipsoid ke

(4)

Pemilihan macam proyeksi tergantung pada:

a. Ciri-ciri tertentu, ciri-ciri asli yang harus dipertahankan, berhubungan dengan tujuan peta.

b. Besar dan bentuk daerah yang dipetakan. c. Letak daerah di atas permukaan bumi.

2.3Sistem Koordinat

Menurut Subagio (2003) posisi suatu titik di permukaan bumi pada prinsipnya dinyatakan dalam suatu sistem koordinat tertentu, baik yang berdimensi bidang datar (dua dimensi, 2D) maupun berdimensi ruang (tiga dimensi, 3D). Sistem koordinat suatu titik tergantung kepada beberapa hal, antara lain:

a. Titik asal (titik nol) Sistem Koordinat. b. Orientasi dari Sistem Salib Sumbu. c. Parameter posisi dari Sistem Koordinat.

Sistem koordinat merupakan suatu parameter yang menunjukkan bagaimana suatu objek diletakkan dalam koordinat. Ada tiga sistem koordinat yang digunakan pada pemetaan yakni :

1. Sistem Koordinat Siku-Siku Ruang

Sistem koordinat siku-siku ruang secara umum dikenal sebagai sistem koordinat Cartesius tiga dimensi (3D). Koordinat ini termasuk kedalam sistem koordinat geosentrik, artinya titik asal (0) dari sistem koordinat tersebut terletak dipusat (massa) bumi.

(5)

Faktor ketiga yang menentukan sistem koordinat ini adalah parameter posisi. Dalam sistem ini, koordinat suatu titik dibangun oleh tiga parameter posisi, yaitu parameter X, parameter Y dan parameter Z. Untuk lebih jelasnya, sistem koordinat siku-siku ruang ini disajikan pada gambar 2.1 berikut.

Gambar 2.1. Sistem koordinat siku-siku ruang

2. Sistem Koordinat Siku-Siku Planimetris

Berbeda dengan sistem koordinat di atas yang mempunyai dimensi ruang, sistem koordinat ini dibangun oleh dua parameter yang membentuk dua dimensi (2D) sehingga disebut sistem koordinat siku-siku planimetris. Kedua parameter dimaksud adalah parameter X dan parameter Y. Parameter X disebut pula sebagai absis, yaitu jarak dari suatu titik terhadap sumbu Y, sedangkan parameter Y disebut sebagai ordinat, yaitu jarak dari suatu titik terhadap sumbu X. Sebagai titik asal (titik nol) dari sistem koordinat ini adalah titik potong dari sumbu X dengan sumbu Y.

Orientasi salib sumbu dari sistem koordinat ini adalah sebagai berikut: a. Sumbu X mempunyai arah Barat-Timur

(6)

Dalam sistem salib sumbu ini, diterapkan bahwa nilai absis akan positif bila titik yang bersangkutan terletak di sebelah timur titik nol dan akan negatif bila terletak di sebelah barat titik nol. Ketentuan lain adalah nilai ordinat akan positif bila titik bersangkutan terletak di sebelah utara titik nol dan akan negatif bila terletak di sebelah selatan titik nol. Sistem koordinat siku-siku planimetris ini dapat disajikan pada gambar 2.2 berikut.

Gambar 2.2. Sistem koordinat siku-siku planimetris

Berhubung sistem koordinat ini terletak dalam suatu bidang datar (bidang planimetris), maka kedua salib sumbu (X,Y) dan titik nol di atas tidak dapat diasumsikan dengan unsur-unsur bumi (seperti titik pusat bumi, sumbu putar bumi, dll) yang berdimensi ruang. Walaupun demikian, sistem koordinat ini dapat dihubungkan dengan bumi, khususnya yang berhubungan dengan bidang proyeksi bumi (peta). Oleh karena itu dalam bidang geodesi sistem koordinat ini disebut pula sebagai sistem koordinat proyeksi peta.

(7)

Tabel 2.1 Perbandingan ketiga parameter pembentuk sistem koordinat menurut

Pada perinsipnya, sistem koordinat ini termasuk ke dalam sistem koordinat ruang, karena posisi titik menunjukkan posisi ruang (tiga dimensi), yaitu posisi titik pada bidang lengkung (elipsoid). Pada umumnya, koordinat dari sistem ini bersifat lokal, yaitu mempunyai nilai relatif terhadap titik nol yang terletak di titik datum lokal.

(8)

jarak busur sepanjang garis geodetis sehingga mempunyai satuan sudut (derajat atau radian).

Yang dimaksud dengan garis geodetis adalah garis penghubung terpendek dan terletak pada bidang lengkung (elipsoid), sedangkan pengertian azimut adalah sudut yang dihitung dari arah utara geodetis (utara sebenarnya) ke arah titik yang bersangkutan, dan diukur searah jarum jam. Sistem koordinat polar ini dapat disajikan pada gambar 2.3 berikut.

Gambar 2.3. Sistem Koordinat polar (Sumber: Subagio, 2003)

4. Sistem Koordinat Geodetis

Sistem koordinat geodetis (disebut pula sistem koordinat geografi) merupakan sistem koordinat ruang, karena menunjukkan kedudukan suatu titik dalam ruang. Sistem koordinat ini dibangun oleh dua buah parameter geodetis, yaitu lintang dan bujur. Yang dimaksud dengan lintang suatu titik adalah sudut yang dibentuk oleh garis normal yang melalui titik tersebut dengan bidang ekuator. Garis normal adalah garis yang ditarik melalui suatu titik dan tegak lurus terhadap bidang elipsoid. Sedangkan yang dimaksud dengan bujur adalah besarnya sudut yang dibentuk oleh bidang meridian Greenwich dengan bidang meridian melalui titik termaksud.

(9)

(lintang utara). Sedangkan tanda negatif berarti titik tersebut berada di belahan bumi selatan, sehingga tanda tersebut dapat diganti dengan LS (lintang selatan).

Nilai bujur dihitung dari lengkung meridian Greenwich, dan besarnya berkisar dari hingga ke arah timur, sehingga dibelakang nilai tersebut diberi simbol BT (bujur timur) dan besarnya berkisar dari hingga hingga ke arah barat, sehingga dibelakang nilai tersebut diberi simbol BB (Bujur Barat). Sistem koordinat geodetis ini dapat disajikan pada gambar 2.4 berikut.

Gambar 2.4. Sistem koordinat geodetis (Sumber: Subagio, 2003)

2.4Google Map

Google Maps adalah layanan aplikasi peta online yang disediakan oleh Google secara gratis. Layanan peta Google Maps secara resmi dapat diakses melalui situs http://maps.google.com. Pada situs tersebut dapat dilihat informasi geografis pada

hampir semua permukaan di bumi kecuali daerah kutub utara dan selatan. Layanan ini dibuat sangat interaktif, karena di dalamnya peta dapat digeser sesuai keinginan pengguna, mengubah level zoom, serta mengubah tampilan jenis peta.

(10)

2.4.1 Google Maps API

Google Maps adalah layanan pemetaan berbasis web service yang disediakan oleh Google dan bersifat gratis, yang memiliki kemampuan terhadap banyak layanan pemetaan berbasis web. Google Maps juga memiliki sifat server side, yaitu peta yang tersimpan pada server Google dapat dimanfaatkan oleh pengguna (Ichtiara, 2008).

API atau Application Programming Interface merupakan suatu dokumentasi yang terdiri dari interface, fungsi, kelas, struktur dan sebagainya untuk membangun sebuah perangkat lunak. Dengan adanya API ini, maka memudahkan programmer

untuk “membongkar” suatu software untuk kemudian dapat dikembangkan atau

diintegrasikan dengan perangkat lunak yang lain. API dapat dikatakan sebagai penghubung suatu aplikasi dengan aplikasi lainnya yang memungkinkan programmer menggunakan sistem function. Proses ini dikelola melalui operating system.

Keunggulan dari API ini adalah memungkinkan suatu aplikasi dengan aplikasi lainnya dapat saling berhubungan dan berinteraksi. Bahasa pemrograman yang digunakan oleh Google Maps yang terdiri dari HTML, Javascript dan AJAX serta XML, memungkinkan untuk menampilkan peta Google Maps di website lain (Syaiful,

2012).

2.5GPS (Global Positioning System)

GPS (Global Positioning System) adalah sistem satelit navigasi dan penentuan posisi yang dimiliki dan dikelola oleh Amerika Serikat. Sistem ini didesain untuk memberikan posisi dan kecepatan tiga-dimensi serta informasi mengenai waktu, secara kontinyu di seluruh dunia tanpa bergantung waktu dan cuaca, kepada banyak orang secara simultan. Pada saat ini sistem GPS sudah banyak digunakan orang di seluruh dunia. Di Indonesia pun, GPS sudah banyak diaplikasikan, terutama yang terkait dengan aplikasi-aplikasi yang menuntut informasi tentang posisi (Hasanuddin. 2000).

2.5.1 Kemampuan GPS

(11)

malam tanpa bergantung pada kondisi cuaca. Sampai saat ini, GPS adalah satu-satunya sistem navigasi atau sistem penentuan posisi yang mempunyai karakteristik prima seperti itu. Disamping produk dasar tersebut (posisi, kecepatan, dan waktu), sebenarnya ada beberapa parameter lainnya yang dapat ditentukan dengan tekonolgi GPS. Pada parameter-parameter tersebut ditunjukkan pada gambar 2.2.

Parameter

Gambar 2.5. Parameter GPS (Sumber: Hasanuddin, 2000).

Dalam hal penentuan posisi, GPS dapat memberikan ketelitian posisi yang spektrumnya cukup luas. Dari yang sangat teliti (orde milimeter, relatif) sampai yang biasa-biasa saja (orde puluhan meter, absolut). Ketelitian posisi yang diperoleh secara umum akan bergantung pada empat faktor yaitu: metode penentuan posisi yang digunakan, geometri dan distribusi dari satelit-satelit yang diamati, ketelitian data yang digunakan, dan stategi/metode pengolahan data yang diterapkan.

2.6Android

(12)

oleh Andy Rubin, Rich Miner, Nick Sears dan Chris White pada tahun 2003 (Murya, 2014).

Pada bulan november 2007, Google mengadakan konfersi pers. Ternyata tidak ada Gphone (Google Phone) diluncurkan seperti yang banyak diperkirakan orang. Waktu itu diumumkan terbentuknya Open Handset Alliance yang didirikan Google bersama 34 perusahaan lain, untuk mengembangkan OS Open Source.

Kala itu, banyak pihak masih skeptis, terutama para pesaing seperti Microsoft dan Nokia. CEO Microsoft Steve Ballmer menilai kata-kata Google cuman omong kosong sedangkan Nokia mengira OS tersebut hanyalah sebuah versi linux biasa dan bukan ancaman yang signifikan. Seminggu kemudian, Google meluncurkan software developer kit Android yang dapat didownload secara gratis di websitenya dan mengadakan perlombaan aplikasi. Niat Google akhirnya tercium, mereka akan merilis OS yang akan digunakan oleh banyak vendor.

HTC, Motorola dan LG mengumumkan rencana produksi hanset Android. OS ini sepenuhnya bebas dikustomisasi oleh pabrikan. Misi Google adalah semakin banyak orang akan mengakses layanan Coogle dari Android. Android

digadang-gadang akan menggantikan PC. Dan semua itu akan terjadi pada tahun depan,” kata

CEO Google kala itu, Eric Schmidt dengan nada optimistis.

2.6.1 Generasi Android

(13)

a. Android Versi 1.1

b. Android Versi 1.5 (Cupcake) c. Android Versi 1.6 (Donut) d. Android Versi 2.0/2.1 (Eclair)

e. Android Versi 2.2 (Froyo: Frozen Yoghurt) f. Android Versi 2.3 (Gingerbread)

g. Android Versi 3.0/3.1 (Honeycomb)

h. Android Versi 4.0 (ICS: Ice Cream Sandwich) i. Android Versi 4.1/43 (Jelly Bean)

j. Android Versi 4.4 (Kitkat) k. Andorid Versi 5.0 (Lollipop)

Menurut Hermawan (2011), pengembangan sistem operasi dan aplikasi Android mengacu pada empat prinsip yaitu:

1. Terbuka

Android dibangun untuk menjadi benar-benar terbuka. Sebagai contoh, sebuah aplikasi dapat mengambil dan mengakses fungsi-fungsi utama ponsel seperti membuat panggilan, mengirim pesan teks, bahkan menggunakan kamera. Hal ini memungkinkan para pengembang untuk membuat aplikasi yang lebih baik.

2. Semua Aplikasi Dibuat Sama

Android tidak membedakan antara aplikasi inti ponsel dan aplikasi pihak ketiga. Kedua jenis aplikasi ini dapat dibangun dan memiliki akses yang sama ke ponsel. Pengguna dapat sepenuhnya mengatur telepon sesuai kepentingan mereka.

3. Mendobrak Batasan-Batasan Aplikasi

Android membuang berbagai hambatan untuk membangun aplikasi baru yang inovatif. Misalnya, seorang pengembang dapat menggabungkan informasi dari web dengan data individu dari ponsel seperti data kontak, kalender atau lokasi geografis. Sehingga memberikan informasi yang lebih relevan.

4. Pengembangan Aplikasi yang Cepat dan Mudah

(14)

Beberapa fitur yang tersedia pada Android antara lain:

1. Framework aplikasi, memungkinkan penggunaan dan pemindahan dari komponen yang tersedia.

2. Dalvik virtual machine, virtual machine yang dioptimalkan untuk perangkat mobile.

3. Grafik, grafik 2D dan grafik 3D yang didasarkan pada library OpenGL. 4. SQLite, untuk penyimpanan data.

5. Mendukung media audio, video, dan berbagai format gambar. 6. GSM, Bluetooth, EDGE, 3G, dan WiFi.

7. Kamera, Global Positioning System (GPS), Kompas, dan accelerometer.

8. Lingkungan pengembangan yang kaya, termasuk emulator, peralatan debugging, dan plugin untuk Eclipse IDE.

2.6.2 Arsitektur android

Sistem operasi Android dibangun berdasarkan kernel Linux dan memiliki arsitektur seperti Gambar 2.6 berikut.

(15)

1. Applications

Lapisan ini adalah lapisan aplikasi, serangkaian aplikasi akan terdapat pada perangkat mobile. Aplikasi inti yang telah terdapat pada Android termasuk kalender, kontak, SMS, dan lainnya. Aplikasi-aplikasi ini ditulis dengan bahasa pemrograman Java.

2. Application Framework

Pengembang aplikasi memiliki akses penuh ke Android sama dengan aplikasi inti yang telah tersedia. Pengembang dapat dengan mudah mengakses informasi lokasi, mengatur alarm, menambahkan pemberitahuan kestatus bar dan lain sebagainya. Arsitektur aplikasi ini dirancang untuk menyederhanakan penggunaan kembali komponen, aplikasi apa pun dapat mempublikasikan kemampuan dan aplikasi lain dapat menggunakan kemampuan mereka sesuai batasan keamanan. Dasar dari aplikasi adalah seperangkat layanan dan sistem, yaitu berbagai View yang digunakan untuk membangun UI, Content Provider yang memungkinkan aplikasi berbagi data, Resource Manager menyediakan akses bukan kode seperti grafik, string, dan layout, Notification Manager yang akan membuat aplikasi dapat menampilkan tanda pada status bar dan Activity Manager yang berguna mengatur daur hidup dari aplikasi.

3. Libraries

Satu set libraries dalam bahasa C/C++ yang digunakan oleh berbagai komponen pada sistem Android.

4. Android Runtime

Satu set libraries inti yang menyediakan sebagian besar fungsi yang tersedia di libraries inti dari bahasa pemrograman Java. Setiap aplikasi akan berjalan sebagai

proses sendiri pada Dalvik Virtual Machine.

5. Linux Kernel

Android bergantung pada Linux kernel 2.6 untuk layanan sistem inti seperti keamanan, manajemen memori, manajemen proses, network stack, dan model driver. Kernel juga bertindak sebagai lapisan antara hardware dan seluruh

(16)

2.7Client Server

Client server adalah salah satu model komunikasi 2 komputer atau lebih yang berfungsi melakukan pembagian tugas. Client bertugas untuk melakukan input, update, penghapusan, dan menampilkan data sebuah database. Sedangkan server

bertugas menyediakan pelayanan untuk melakukan manajemen, yaitu menyimpan dan mengolah database (Wahana, 2010).

Ada beberapa model arsitektur client server, diantaranya adalah 1-Tier (standalone), 2-Tier, dan n-Tier. Arsitektur 1-Tier merupakan model dimana sebuah komputer mengakses sebuah database dari komputer sendiri. Dengan kata lain, aplikasi antarmuka user dan aplikasi database terdapat pada komputer yang sama.

Arsitektur 2-Tier merupakan model yang membagi tugas antara komputer client dan komputer server. Komputer client bertugas menyediakan antarmuka untuk user, permintaan data ke server, serta pemrosesan data. Komputer server bertanggung jawab terhadap penyimpanan, pengelolaan, serta melayani permintaan akses data.

Arsitektur n-Tier berarti membagi komponen menjadi n entitas, yaitu 1 tier client dan n-1 tier server. Bagian client bertugas menyediakan antarmuka aplikasi, sedangkan bagian server bertugas menyediakan data.

2.8Defenisi Graf

Graf merupakan pasangan himpunan (V,E), ditulis dengan notasi G= (V,E), yang dalam hal ini V adalah himpunan tidak-kosong dari simpul-simpul (vertices atau node) dan E adalah himpunan sisi (edges atau arcs) yang menghubungkan sepasang simpul. (Munir, 2005). Jadi, sebuah graf dimungkinkan tidak mempunyai sisi satu buah pun, tetapi simpul harus ada, minimal satu. Graf yang hanya mempunyai satu buah simpul tanpa sebuah sisi (edges) pun dinamakan graf trivial.

2.8.1 Jenis-jenis Graf

(17)

Berdasarkan ada tidaknya gelang (loop) atau sisi (edges) ganda pada suatu graf, maka secara umum dapat digolongkan menjadi dua jenis:

1. Graf sederhana (simple graph).

Graf yang tidak mengandung gelang (loop) maupun sisi (edges) ganda dinamakan graf sederhana. G1 pada Gambar 2.7 (a) adalah contoh graf sederhana yang merepresentasikan jaringan komputer. Pada graf sederhana, sisi adalah pasangan tak-terurut (unordered pairs). Jadi, menuliskan (u,v) sama saja dengan (v,u). Kita dapat juga mendefenisikan graf sederhana G = (V,E) terdiri dari himpunan tidak kosong simpul-simpul dan E adalah himpunan pasang tak-terurut yang berbeda yang disebut sisi.

2. Graf tak-sederhana (unsimple-graph).

Graf yang megandung sisi (edges) ganda atau gelang (loop) dinamakan graf tak-sederhana (unsimple graph). Ada dua macam graf tak-tak-sederhana, yaitu:

a. Graf Ganda (multigraph), adalah graf yang mengandung sisi ganda. Sisi ganda yang menghubungkan sepasang simpul bisa lebih dari dua buah. G2 pada Gambar 2.7 (b) adalah contoh graf ganda.

b. Graf Semu (pseudograph), adalah graf yang mengandung gelang (loop). Graf semu lebih umum dari pada graf ganda, karena sisi (edges) pada graf semu dapat terhubung ke dirinya sendiri. G3 pada Gambar 2.7 (c) adalah contoh graf semu.

(18)

Sisi pada graf dapat mempunyai orientasi arah (Munir. 2012). Berdasarkan orientasi arah pada sisi, maka secara umum graf dibedakan atas 2 jenis yaitu:

1. Graf tak-berarah (undirected graph)

Graf yang sisinya tidak mempunyai orientasi arah disebut graf tak-berarah. Pada graf tak-berarah, urutan pasangan simpul yang dihubungkan oleh sisi tidak diperhatikan. Jadi, (u, v) = (v, u) adalah sisi yang sama. Tiga buah graf pada gambar 2.7 adalah graf tak-berarah. Pada jaringan telepon, sisi pada graf berarah menyatakan bahwa sakyrab telepon dapat beroperasi pada dua arah.

2. Graf berarah (directed graph atau digraph)

Graf yang sisinya diberikan orientasi arah disebut sebagai graf berarah atau sisi berarah sering disebut dengan busur (arc). Pada graf berarah, (u, v) dan (v, u) menyatakan dua buah busur yang berbeda, dengan kata lain (u, v) ≠ (v, u).

Untuk busur (u, v), simpul u dinamakan simpul asal (initial vertex) dan simpul v dinamakan simpul terminal (terminal vertex). Pada gambar 2.8 adalah contoh gambar graf berarah.

Gambar 2.8. (a) Graf berarah, (b) Graf ganda berarah (Sumber: Munir, 2005)

2.8.2 Representasi Graf

(19)

2.8.2.1Matriks Ketetanggaan (adjacency matrix)

Matriks ketetanggaan adalah representasi graf yang paling umum. Misalkan G= (V,E) adalah graf dengan n simpul, n ≥ 1. Matriks ketetanggaan G adalah matriks dwimatra yang berukuran n x n. Bila matriks tersebut dinamakan A = , maka jika simpul i dan j bertetangga, sebaliknya = 0 juka simpul i dan j tidak

bertetangga.

Karena matriks ketetanggaan hanya berisi 0 dan 1, maka matriks tersebut dinamakan juga matriks nol-satu (zero-one). Selain dengan angka 0 dan 1, elemen matriks dapat juga dinyatakan dengan nilai false (menyatakan 0) dan true (menyatakan 1). Disini, terdapat n! cara pengaturan nomor simpul, yang berarti ada n! matriks ketetanggaan berbeda untuk graf n simpul. Pada gambar 2.9 memperlihatkan graf sederhana dengan matriks ketetanggaan.

Gambar 2.9. Graf (kiri) dengan matriks ketetanggaan (kanan) (Sumber: Munir, 2012)

2.8.2.2Matriks Berisisan

Bila matriks ketetanggaan menyatakan ketetanggaan simpul-simpul di dalam graf, maka matriks bersisian menyatakan kebersisian simpul dengan sisi. Misalkan G=(V,E) adalah graf dengan n simpul dan m buah sisi. Matriks bersisian G adalah matriks dwimarta yang berukuran n x m. Barisan menunjukkan label simpul, sedangkan = 1 jika simpul i bersisian dengan sisi j, sebaliknya = 0 jika simpul i tidak bersisian dengan sisi j.

(20)

Derajat setiap simpul i dapat dihitung dengan menghitung jumlah seluruh elemen pada baris i (kecuali pada graf yang mengandung gelang).

Jumlah elemen matriks bersisian adalah nm. Jika tiap elemen membutuhkan ruang memori sebesar p, maka ruang memori yang diperlukan seluruhnya adalah pnm.

Pada gambar 2.10 memperlihatkan matriks bersisian untuk graf yang direpresentasikan. Dengan jumlah elemen matriks adalah 4 x 6 =24.

Gambar 2.10. Graf (kiri) dan matriks bersisian (kanan) (Sumber: Munir, 2012)

2.9Lintasan Terpendek (Shortest Path)

Lintasan terpendek merupakan persoalan optimasi. Graf yang digunakan dalam pencarian lintasan terpendek adalah graf berbobot (weighted graph), yaitu graf yang setiap sisinya diberikan suatu nilai atau bobot. Bobot pada sisi graf dapat menyatakan jarak antar kota, waktu pengiriman pesan, ongkos pembangunan, dan sebagainya. Asumsi yang digunakan adalah bahwa semua bobot bernilai positif (Munir. 2012).

Ada beberapa macam persoalan lintasan terpendek, antara lain: 1. Lintasan terpendek antara dua buah simpul tertentu.

2. Lintasan terpendek antara semua pasangan simpul.

3. Lintasan terpendek dari simpul tertentu ke semua simpul yang lain.

4. Lintasan terpendek antara dua buah simpul yang melalui beberapa simpul tertentu.

(21)

setiap edge graf digunakan untuk menyatakan jarak objek wisata di kota Binjai dengan persimpangan jalan dalam satuan meter (m). Sehinngga penggunaan teknik algoritma A* dalam pencarian rute terpendek dapat ditentukan (Joshi, 2014).

2.10 Algoritma A*

Algoritma A* merupakan salah satu jenis algoritma yang digunakan untuk menyelesaikan kasus yang berhubungan dengan path finding (pencarian jalan). Dalam hasil pencariannya A* dikatakan complete dan optimal. Algoritma A* menggunakan cara pencarian secara Breatdth First Search, dimana pencarian dilakukan dengan cara melebar ke setiap node pada level yang sama, dan nantinya akan menemukan rute terbaik dari titik awal sampai tujuan. Algoritma A* juga dilengkapi dengan suatu fungsi heuristik. Fungsi heuristik yang terdapat pada algoritma A* digunakan sebagai optimasi dalam menentukan node tujuan yang akan dipilih. (Russell, 2003).

Algortima A* merupakan algoritma breatdth-first search yang menggunakan fungsi heuristik yang kompleks untuk memilih path. Algoritma breatdth-first search selalu memperluas jalan untuk menuju node yang akan dilewati, tetapi tidak memperhitungkan cost ke simpul tersebut (Coppin, 2004).

Algoritma ini memeriksa node dengan menggabungkan g(n), yaitu cost yang dibutuhkan untuk mencapai sebuah node dan h(n) yaitu cost yang didapat dari node ke tujuan (Russell, 2003). Sehingga dapat dirumuskan sebagai:

f(n) = g(n) + h(n) Keterangan:

f(n) adalah estimasi total biaya (cost) sebuah jalur (path) dari node awal ke node tujuan (goal) melalui node n.

g(n) adalah biaya (cost) yang dibutuhkan oleh sebuah jalur (path) untuk mencapai node n dari node awal.

(22)

Menurut Rudy (2007) Beberapa terminologi yang terdapat pada algoritma A* adalah Starting point merupakan terminologi untuk posis awal sebuah benda.

1. Starting point merupakan terminologi untuk posis awal sebuah benda. 2. Simpul (node) merupakan petak-petak kecil sebagai representasi dari

pathfinding. Bentuknya dapat berupa persegi, lingkaran maupun segitiga.

3. A* merupakan simpul yang sedang dijalankan dalam algoritma pencarian jalur terpendek.

4. Open list merupakan tempat menyimpan data simpul yang mungkin diakses dari starting point maupun simbol yang sedang dijalankan.

5. Closed list merupakan tempat menyimpan data simpul sebelum A* yang juga merupakan bagian dari jalur terpendek yang telah dihasilkan didapatkan.

6. Harga (cost) merupakan nilai dari f(n).

7. Halangan (unwalked) merupakan sebuah atribut yang menyatakan bahwa sebuah simpul tidak dapat dilalui oleh A*.

2.10.1 Fungsi Heuristic

Algoritma A* adalah algoritma pencarian yang menggunakan fungsi heuristik untuk menuntun pencarian rute, khususnya dalam hal pengembangan dan pemeriksaan node-node pada peta (Kalsum. 2012).

Ada beberapa penghitungan jarak yang sering digunakan dalam algoritma A, yaitu:

1. Jarak Manhattan

Fungsi ini merupakan fungsi heuristik yang paling umum digunakan. Fungsi ini hanya akan menjumlahkan selisih nilai x dan y dari dua buah titik. Fungsi ini dinamakan Manhattan karena di kota Manhattan, Amerika, jarak dari dua lokasi umumnya dihitung dari blok-blok yang harus dilalui saja dan tentunya tidak bisa dilalui secara diagonal. Perhitungannya dapat ditulis sebagai berikut:

(23)

Dimana h(n) merupakan perkiraan cost dari node n ke node tujuan yang dihitung dengan fungsi heuristik. Variable merupakan koordinat x dari node asal, sedangkan variabel merupakan koordinat y dari node asal. Variabel merupakan koordinat x dari node tujuan dan merupakan koordinat y dari node tujuan. Nilai dari h(n) akan selalu bernilai positif.

2. Jarak Euclid

Heuristik ini akan menghitung jarak berdasarkan panjang garis yang dapat ditarik dari dua buah titik. Perhitungannya dapat dituliskan sebagai berikut :

Dalam kasus ini, skala relatif nilai g mungkin akan tidak sesuai lagi dengan nilai fungsi heuristik h. Karena jarak euclidian selalu lebih pendek dari jarak manhattan, maka dapat dipastikan selalu akan didapatkan jalur terpendek, walaupun secara komputansi lebih berat.

3. Jarak Euclidian Kuadrat

Dalam beberapa literatur juga disebutkan jika nilai g adalah 0, maka lebih baik jika ongkos komputansi operasi pengakaran pada heuristik jarak Euclidian dihilangkan saja, menghasilkan rumus sebagai berikut :

Fungsi heuristik sangat berpengaruh terhadap kelakuan algoritma A* , yaitu: 1. Apabila h(n) selalu bernilai 0, maka hanya g(n) yang akan berperan, dan A*

berubah menjadi Algoritma Dijkstra, yang menjamin selalu akan menemukan jalur terpendek.

(24)

3. Apabila h(n) tepat sama dengan ongkos perpindahan dari n ke tujuan, maka A* hanya akan mengikuti jalur terbaik dan tidak pernah memeriksa satupun titik lainnya, membuatnya sangat cepat. Walaupun hal ini belum tentu bisa diaplikasikan ke semua kasus, ada beberapa kasus khusus yang dapat menggunakannya.

4. Apabila h(n) kadangkala lebih besar dari ongkos perpindahan dari n ke tujuan, maka A* tidak menjamin ditemukannya jalur terpendek, tapi prosesnya cepat.

5. Apabila h(n) secara relatif jauh lebih besar dari g(n), maka hanya h(n) yang memainkan peran, dan A* berubah menjadi Best First Search (BFS).

Dalam mengaplikasikan Algoritma A* pada aplikasi ini, fungsi heuristik yang digunakan adalah jarak Euclid.

2.10.2 Cara Kerja Algoritma A*

Prinsip algoritma ini adalah mencari jalur terpendek dari sebuah simpul awal (starting point) menuju simpul tujuan dengan memperhatikan harga (f) terkecil. Algoritma ini

mempertimbangkan jarak yang telah ditempuh selama ini dari initial state ke current state. Jadi bila jalan yang telah ditempuh sudah terlalu panjang dan ada jalan lain yang

lebih kecil jaraknya namun memberikan posisi yang sama dilihat dari goal, jalan baru yang lebih pendek itulah yang akan dipilih (Kalsum. 2012).

Dengan fungsi heuristik algoritma ini membangkitkan node yang paling mendekati solusi. Node ini kemudian disimpan suksesornya ke dalam list sesuai dengan urutan yang paling mendekati solusi terbaik. Kemudian, node pertama pada list diambil, dibangkitkan suksesornya dan kemudian suksesor ini disimpan ke dalam

list sesuai dengan urutan yang terbaik untuk solusi. List node ini disebut dengan node

terbuka (open node).

(25)

ternyata tidak mengarah kepada solusi yang diinginkan, maka akan melakukan runut balik ke arah node awal untuk mencari node lainnya yang lebih menjanjikan dari pada node yang terakhir dikunjungi. Bila tidak ditemukan juga, maka akan terus mengulang

(26)
(27)

2.11 Penelitian Terdahulu

Dalam penelitian, penulis membutuhkan beberapa bahan penelitian yang sudah pernah dilakukan peneliti-peneliti lainnya mengenai masalah penentuan jarak terpendek menggunakan algoritma A*. Berikut ini merupakan penelitian sebelumnya yang pernah dilakukan dan dapat dilihat pada tabel 2.2 berikut.

Tabel 2.2 Penelitian Terdahulu

No Penelitian Nama Keterangan

1. Analisis Algoritma A rute yang ada, hal ini terjadi karena A* hanya

(28)

Tabel 2.2 Penelitian Terdahulu (lanjutan)

No Penelitian Nama Keterangan

4. Aplikasi Pencari Rute Optimum pada Peta Guna Meningkatkan Efisiensi Waktu Tempuh Pengguna Jalan dengan Metode A* dan Best First Search

Rudy Adipranata. et al. 2007.

Pencarian rute pada peta menggunakan metode A* maupun BFS selalu berhasil menemukan solusi

rute apabila memang

Gambar

Gambar 2.1. Sistem koordinat siku-siku ruang
Gambar 2.2. Sistem koordinat siku-siku planimetris
Tabel 2.1 Perbandingan ketiga parameter pembentuk sistem koordinat menurut
Gambar 2.3. Sistem Koordinat polar (Sumber: Subagio, 2003)
+7

Referensi

Dokumen terkait

PEKERJAAN : PENGADAAN KONSTRUKSI BANGUNAN AULA DAN ASRAMA DIKLAT RSUD TUGUREJO LOKASI : JL.TUGUREJO SEMARANG. SUMBER DANA : APBD TAHUN ANGGARAN

Berdasarkan hasil penelitian didapatkan bahwa pengunaan FreeRADIUS, MySQL dan EAP-TLS memberikan keamanan yang baik untuk client melalui proses otentikasi,

Orang pada tahap ini telah mengembangkan aturan mereka sendiri pedoman moral yang mungkin atau tidak mungkin cocok dengan hukum.. Prinsip-prinsip berlaku untuk

Catatan : Selain kertas bahan yang diperlukan untuk mozaik dapat juga digunakan dari daun kering, batang pisang, batang padi, kulit jagung, dll yang dapat dikeringkan dan

Ten minutes after injection, the following data were ob- tained from the rats: drops of fluid from the salivary, main pancreatic, and common bile ducts (per minute), pH of the

Peramalan adalah suatu proses memperkirakan secara sistematik tentang apa yang paling mungkin terjadi di masa depan berdasar informasi masa lalu dan sekarang yang dimiliki

Pada halaman pertama yang memuat judul hanya memuat satu bagian header yang berisi nama jurnal, tahun penerbitan, nomor, dan nomor-nomor halaman tempat artikel yang

Keupayaan orang Cam bertutur dalam bahasa Melayu adalah disebabkan oleh hubungan mereka dengan orang Melayu di Malaysia yang telah lama terjalin khususnya