Batasan Masalah Sistematika Penulisan Graf .1 Definisi Graf

1.2 Tujuan Penelitian

Tujuan dari penulisan tugas akhir ini adalah untuk memperoleh suatu aplikasi dengan tujuan untuk mencari lintasan terpendek antakota pada Jalur Lintas Sumatera di Provinsi Sumatera Utara yang direpresentasikan dengan konsep graf dengan menggunakan Algoritma A.

1.3 Rumusan Masalah

Bagaimana membangun suatu aplikasi untuk menentukan rute terpendek pada jalur lintas sumatera di provinsi sumatera utara dengan menggunakan Algoritma A.

1.4 Batasan Masalah

Batasan masalah pada tugas akhir ini adalah sebagai berikut: 1. Inputan berupa kota awal dan kota tujuan, tanpa harus melewati suatu kota tertentu. 2. Kota yang menjadi objek adalah kota di Provinsi Sumatera Utara yang terdapat pada Sketsa Jalan Lintas Sumatera yang dilewati jalan yang diasumsikan sebagai Jalur Lintas Sumatra 3. Output yang dihasilkan dalam tampilan grafis dan disertai dengan keterangan berupa teks. 4. Aplikasi untuk implementasi algoritma dibuat menggunakan bahasa pemograman Matlab 7 .

1.5 Metode Penelitian

Langkah-langkah yang akan diambil dalam pengerjaan tugas akhir ini adalah sebagai berikut:

1. Studi Literatur. Pengerjaan tugas akhir ini dimulai dengan mengumpulkan

bahan-bahan sebagai referensi baik dari buku, paper, jurnal, makalah, forum, dan sumber-sumber lain yang berkaitan dan beberapa referensi lainnya untuk menunjang pencapaian tujuan tugas akhir. Universitas Sumatera Utara

2. Analisis. Pada tahap ini dilakukan analisis algoritma. Algoritma akan

dianalisis untuk perancangan sistem pencarian rute terpendek pada Jalur Lintas Sumatera di Provinsi Sumatera Utara. 3. Implementasi Algoritma. Algoritma akan diimplementasikan dalam bentuk aplikasi dengan menggunakan bahasa pemrograman Delphi.

4. Pengujian. Pada tahap ini dilakukan pengujian terhadap sistem informasi

geografis yang telah dibangun serta menguji kebenaran dari algoritma Dijkstra untuk mencari lintasan terpendek.

5. Penyusunan Laporan dan Kesimpulan Akhir. Metode ini akan

dilaksanakan dengan melakukan pendokumentasian hasil analisis dan implementasi secara tertulis dalam bentuk laporan skripsi.

1.6 Sistematika Penulisan

Sistematika penulisan dari skripsi ini terdiri dari beberapa bagian utama sebagai berikut:

BAB 1: PENDAHULUAN

Bab ini akan menjelaskan mengenai latar belakang pemilihan judul skripsi “Analisis Algoritma A dan Implementasinya dalam pencarian jalur terpendek pada Jalur Lintas Sumatera di Provinsi Sumatera Utara”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, dan sistematika penulisan.

BAB 2: TINJAUAN PUSTAKA

Bab ini akan membahas teori-teori yang berkaitan dengan sistem, graf, algoritma A, dan Bahasa Pemrograman Delphi.

BAB 3: ANALISIS ALGORITMA

Bab ini berisikan langkah-langkah penelitian yang dilakukan, serta analisis terhadap fokus permasalahan penelitian.

BAB 4: IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab ini berisikan hasil implementasi dari Algoritma A. Universitas Sumatera Utara

BAB 5: 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. Universitas Sumatera Utara BAB 2 TINJAUAN PUSTAKA 2.1 Graf 2.1.1 Definisi Graf Graf adalah pasangan himpunan V, E, dan ditulis dengan notasi G = V, E, V adalah himpunan tidak kosong dari verteks-verteks {v 1 , v 2 ,…, v n } yang dalam hal ini verteks merupakan himpunan tidak kosong dari verteks-verteks vertices atau node dan E adalah himpunan edge {e 1 , e 2 ,…, e n } atau sisi yang menghubungkan sepasang verteks. Munir : 2009 Sebuah graf dimungkinkan tidak mempunyai edge satu buah pun, tetapi verteksnya harus ada minimal satu. Graf yang hanya memiliki satu buah verteks tanpa sebuah edge pun dinamakan graf trivia.

2.1.2 Jenis-jenis Graf

Graf dapat dikelompokkan berdasarkan ada tidaknya edge nya yang paralel atau loop, jumlah verteksnya, berdasarkan ada tidaknya arah pada edge nya, adatidaknya bobot pada edge nya, atau ada tidaknya hubungan dengan graf yang lain. Berikut ini adalah jenis graf berdasarkan ada tidaknya edge yang paralel atau loop. 1. Graf Sederhana Graf sederhana adalah graf yang tidak mempunyai edge ganda dan atau loop, loop adalah edge yang menghubungkan sebuah verteks dengan dirinya sendiri. Berikut adalah contoh graf sederhana : Universitas Sumatera Utara Gambar 2.1 Contoh Graf sederhana 2. Graf Tak-Sederhana Graf tak-sederhana adalah graf yang memiliki edges ganda dan atau loop. Graf tak sederhana dapat dibagi dua yaitu: • Graf Ganda multigraph, adalah graf yang mengandung edge ganda. Sisi ganda yang menghubungkan sepasang verteks bisa lebih dari dua buah. • Graf semu pseudograph, adalah graf yang mempunyi loop, termasuk juga graf yang mempunyai loop dan edge ganda karena itu graf semu lebih umum daripada graf ganda, karena graf semu edge-nya dapat terhubung dengan dirinya sendiri Gambar 2.2 Contoh Graf Ganda Gambar 2.3 Contoh Graf Semu Universitas Sumatera Utara Selain berdasarkan ada tidaknya edge yang paralel atau loop, graf dapat juga dikelompokkan berdasarkan orientasi arah atau panah. 1. Graf tak-berarah undirected graph Graf tak berarah adalah graf yang edge nya tidak mempunyai orientasi arah atau panah. Pada graf ini, urutan pasangan verteks yang dihubungkan oleh edge tidak diperhatikan. Jadi v j , v k = v k , v j adalah edge yang sama. Gambar 2.4 Graf tak berarah 2. Graf Berarah directed graph atau digraph Graf berarah adalah graf yang setiap edge nya memiliki orientasi arah atau panah. Pada graf berarah v j , v k ≠ v k , v j . Gambar 2.5 Contoh Graf berarah Berdasarkan jumlah verteks pada suatu graf, maka secara umum graf dapat digolongkan menjadi dua jenis: 1. Graf berhingga limited graph . Graf berhingga adalah graf yang jumlah verteksnya, n, berhingga. Contoh 2.4 adalah graf berhingga 2. Graf tak-berhingga unlimited graph . Graf tak-berhingga adalah graf yang jumlah verteksnya, n tidak berhingga. Universitas Sumatera Utara Gambar 2.6 Graf tag berhingga

2.1.3 Terminologi Dasar

Dibawah ini adalah beberapa terminologi istilah dasar yang berkaitan dengan graf. 1. Bertetangga Adjacent Dua buah verteks pada graf tak berarah G dikatakan bertetangga bila keduanya terhubung langsung dengan sebuah edge . Dengan kata lain, v i bertetangga dengan v j jika v i , v j adalah sebuah edge pada graf G. Gambar 2.7 Graf G 1 Pada gambar 2.5. verteks v 1 betetangga dengan verteks v 2 , v 3 dan v 4 . Verteks v 2 bertetangga dengan v 1 dan v 4 , tetapi tidak bertetangga denga v 3. 2. Bersisian incident Untuk sembarang edge e = v j , v k , edge e dikatakan bersisian dengan verteks v j dan verteks v k . Pada gambar 2.5 edge e 1 bersisian dengan verteks v 1 dan verteks v 2 edge e 5 bersisian dengan verteks v 3 dan verteks v 4 , tetapi tidak bersisian dengan v 2 . Universitas Sumatera Utara 3. Derajat Degree Derajat suatu verteks pada graf tak berarah adalah jumlah edge yang bersisian dengan verteks tersebut. Pada graf berarah, derajat verteks v dinyatakan dengan d in v dan d out v, yang dalam hal ini: d in v = derajat masuk in-degree = jumlah verteks yang masuk ke verteks v d out v = derajat keluar out-degree = jumlah verteks yang keluar dari verteks v Dan dv = d in v + d out v. Dalam hal ini dv menyatakan derajat verteks. 4. Lintasan path Lintasan yang panjangnya n dari edge awal v ke verteks tujuan v n di dalam graf G ialah barisan berselang-seling verteks-verteks dan edge -edge yang berbentuk v , e 1 , v 1 , e 2 , v 2 ,…, v n-1 , e n , v n sedemikian sehingga e 1 = v , v 1 , e 2 = v 1 , v 2 , … , e n = v n-1 , v n adalah edge -edge dari graf G. Sebuah lintasan dikatakan lintasan sederhana simple path jika semua verteksnya berbeda atau setiap edge yang dilalui hanya satu kali. Lintasan yang berawal dan berakhir pada verteks yang sama disebut lintasan tertutup closed path sedangkan lintasan yang memiliki verteks awal dan verteks akhir yang berbeda disebut lintasan terbuka open path. Pada gambar 2.5 lintasan v 1 , v 2 , v 4 , v 3 merupakan lintasan sederhana yang juga lintasan terbuka. Lintasan v 1 , v 2 , v 4 , v 3 , v 1 merupakan lintasan sederhana yang juga lntasan tertutup. Sedangkan lintasan v 2 , v 4 , v 3 , v 1 , v 4 bukan merupakan lintasan sederhana, tetapi lintasan terbuka. 5. Graf Berbobot Weighted Graph Graf berbobot adalah graf yang setiap sisinya diberikan sebuah harga bobot. Bobot pada setiap sisi dapat menyatakan jarak antara dua buah kota, biaya perjalanan, waktu tempuh, ongkos produksi, dan sebagainya. Universitas Sumatera Utara Dalam tugas akhir ini, bobot pada pada setiap graf menyatakan jarak antara dua buah kota dalam kilometer km. Gambar 2.8 Contoh Graf Berbobot 6. Sirkuit Circuit atau Cycle Dalam satu graf terdapat suatu sirkuit apabila terdapat lintasan path yang mempunyai verteks awal dan verteks akhir sama . Gambar 2.9 Sirkuit v 1 -v 2 -v 3 -v 1 Sebuah sirkuit dikatakan sirkuit sederhana simple circuit jika sirkuit tersebut tidak memuatmelewati edge yang sama dua kali setiap edge yang dilalui hanya satu kali. Sebuah sirkuit dikatakan sirkuit dasar elementary circuit jika sirkuit tersebut tidak memuatmelewati verteks yang sama dua kali setiap verteks yang dilalui hanya satu kali, verteks awal dan akhir boleh sama.

2.1.4 Beberapa Graf Khusus

Terdapat beberapa jenis graf sederhana khusus. Berikut ini adalah beberapa graf khusus yang sering ditemui: 1. Graf Lengkap Complete Graph Graf lengkap merupakan graf sederhana yang setiap verteksnya mempunyai edge ke semua verteks lainnya. Graf lengkap dengan n buah verteks Universitas Sumatera Utara dilambangkan dengan K n . Setiap verteks pada K n berderajat n-1. Jumlah edge pada graf lengkap yang terdiri dari n buah verteks adalah n n - 12. Gambar 2.10 Contoh Graf Lengkap 2. Graf Lingkaran Graf Lingkaran adalah graf sederhana yang setiap verteksnya berderajat dua. Graf lingkaran dengan n verteks dilambangkan dengan C n . Gambar 2.11 Contoh Graf Lingkaran 3. Graf Teratur Regular Graphs Graf teratur adalah graf yang setiap verteksnya mempunyai derajat yang sama. Apabila derajat setiap simpunya adalah r, maka graf tersebut disebut juga graf teratur derajat r. Graf lengkap K n dan graf lingkaran juga merupakan graf teratur. Graf K n berderajat n-1 sedangkan graf lingkaran berderajat 2. Jumlah sisi pada graf teratur berderajat r dengan n buah verteks adalah nr2. iGraf berderajat 4 ii Graf berderajat 2 Gambar 2.12 Graf teratur derajat 4 dan 2 Universitas Sumatera Utara 4. Graf Bipartit Bipartite Graph Suatu graf sederhana G dikatakan Bipartit jika himpunan verteks-verteksnya V dapat dipecah menjadi dua himpunan bagian yang saling asing, X 1 dan X 2 sedemikian hinga setiap edge dalam grap G terhubung dengan sebuah verteks dalam V1 dan sebuah verteks lainnya dalam V2. Dengan demikian tidak ada edge dalam G yang terhubung dengan 2 verteks dalam V1 atau dua verteks dalam V2. Gambar 2.13 Contoh Graf Bipartit 5. Graf Isomorfik Isomorphic Graph Dua bua graf, G 1 dan G 2 dikatakan isomorfik jika terdapat korespondensi satu- satu antara verteks-verteks keduanya dan antara sisi-sisi keduanya sedemikian sehingga jika sisi e bersisian dengan verteks u dan v di G 1 , maka sisi e’ yang berkorespon di G 2 juga harus bersisian dengan verteks u’ dan v’ di G 2 . i Graf G 1 ii Graf G 2 Gambar 2.14 Contoh Graf yang Isomorfik Syarat-syarat dua buah graf dikatakan graf isomorfik : a. Mempunyai jumlah verteks yang sama. b. Mempunyai jumlah edge yang sama c. Mempunyai jumlah verteks yang sama berderajat tertentu. Universitas Sumatera Utara 6. Graf Planar Graf planar adalah suatu graf yang digambar dalam bidang datar denga edge - edge nya tidak ada yang saling memotong. a b Gambar 2.15 Contoh Graf Planar K 4 Pada contoh graf G K 4 diatas, K 4 dapat digambar kembali tanpa ada edge - edge nya yang berpotongan, maka graf K 4 adalah suatu Graf Planar.

2.1.5 Representasi Graf

Pada penjelasan sebelumnya, graf ditampilkan dengan cara menggambarkannya. Namun apabila graf hendak diproses dengan program komputer, maka graf harus direpresentasikan di dalam memori. Ada beberapa metode yang dapat digunakan dalam merepresentasikan graf, berikut ini adalah metode yang dapat dgunakan dalam merepresentasikan graf : 1. Matriks Ketetanggaan Adjacency Matrix Misalkan G = V, E merupakan suatu graf dengan n verteks, n 1. Maka, matriks ketetanggaan A dari G adalah matriks n x n dimana A = [a ij ], untuk hal ini berlaku [a ij ] menjadi 1 bila verteks i dan j bertetangga dan [a ij ] menjadi 0 bila verteks i dan j tidak bertetangga. Jumlah elemen matriks bertetanggaan untuk graf dengan n verteks adalah n 2 . Jika tiap elemen membutuhkan ruang memori sebesar p, maka ruang memori yang diperlukan seluruhnya adalah pn 2 . Universitas Sumatera Utara Keuntungan representasi dengan matriks ketetanggaan adalah kita dapat mengakses elemen matriksnya langsung dari indeks. Selain itu, kita juga dapat menentukan dengan langsung apakah verteks i dan verteks j bertetangga. Pada graf berbobot, a ij menyatakan bobot tiap sisi yang menghubungkan verteks i dengan verteks j. Bila tidak ada sisi dari verteks i ke verteks j atau dari verteks j ke verteks i, maka, a ij diberi nilai tak berhingga ∞. Gambar 2.16 Graf G Bentuk matriks ketetanggaan dari graf pada gambar 2.13 adalah v 1 v 2 v 3 v 4 v 5 v 1 1 1 v 2 1 1 1 v 3 1 1 1 v 4 1 v 5 1 1 1 1 2. Matriks Insiden incidency matriks Matriks insiden menyatakan kebersisian verteks dengan edge . Misalkan G = V, E adalah graf dengan n verteks dan m edge , maka matriks kebersisian A dari G adalah matriks berukuran m x n dimana A = [a ij ], [a ij ] menjadi 1 bila verteks i dan edge j bersisian dan [aij] menjadi 0 bila verteks i dan edge j tidak bersisian. Universitas Sumatera Utara Gambar 2.17 Graf A Berikut adalah matriks insiden untuk graf pada gambar 2.14. e 1 e 2 e 3 e 4 e 5 e 6 e 7 v 1 1 1 v 2 1 1 1 v 3 1 1 1 v 4 1 v 5 1 1 1 1 Pada matriks diatas, sebuah kolom e 7 dapat diwakilkan sebagai loop. Pada sebuah graf tanpa loop, masing-masing kolom mempunyai dua entri 1, dan jumlah dari sebuah baris menyatakan derajat dari verteks yang didefinisikan dengan baris tersebut.

2.2 Lintasan Terpendek Shortest Path