Teori graf Metode Depth First Search Untuk Pencarian Rute Jadwal Penerbangan

BAB 2 LANDASAN TEORI

2.1 Teori graf

2.1.1 Definisi graf

Graf adalah kumpulan dari minimal satu atau lebih simpul vertex yang dihubungkan oleh sisi atau busur edge. Dalam kehidupan sehari-hari, graf banyak diaplikasikan Suryanaga, 2003 seperti untuk pengaturan arus lalu lintas, jaringan komputer, pembuatan chip, jaringan sosial dan sebagainya. Simpul didalam graf biasanya dilambangkan dengan titik sedangkan busur dilambangkan dengan garis. Contohnya : kota-kota di lambangkan dengan titik dan garis melambangkan jalan yang menghubungkan antar kota. Gambar 2.1 Gambar graf dimana setiap titik mewakili kota-kota dan garis mewakili jalan. Menurut Diestel 2000, sebuah graf G dapat diartikan sebagai himpunan berhingga dan tak kosong dari v dan e yang merupakan himpunan pasangan tak berurut dari unsur-unsur di v, dimana v=Vertex dan e=edge. G=v,e Universitas Sumatera Utara Gambar 2.2 Gambar graf sederhana G pada gambar 2.2, G memiliki v={1,2,3,4} dan e={1,3, 1,2, 1,4, 2,4, 3,4} atau {e1,e2,e3,e4,e5}. Ada dua cara merepresentasikan sebuah graf Adamchik, 2005 1. Adjacency lists Representasi ini secara visual lebih mudah dimengerti, akan tetapi kurang bagus untuk dioperasikan bila vertex yang dimiliki terlalu banyak. Biasanya adjacency lists direpresentasikan seperti bentuk array. Gambar 2.3 Gambar kiri merupakan graf G, gambar kanan merupakan adjacency lists. Kerugian potensial dari representasi adjacency-daftar adalah bahwa tidak ada cara cepat untuk menentukan apakah ada edge diantara dua simpul. 2. Adjacency matrix Representasi ini baik digunakan untuk representasi graf didalam komputer. e3 e1 e2 e4 e5 1 2 3 4 Universitas Sumatera Utara Kekurangan dari adjacency lists dapat ditutupi dengan adjacency matrix. Adjacency matrix adalah matriks dari v x v dimana, Mi,j 1, jika ada � diantara dan 0, jika tidak ada � diantara dan Gambar 2.4 gambar kiri merupakan graf G, gambar kanan merupakan matriks dari grafG

2.1.2 Jenis-jenis graf

Menurut Scheinerman dan Ullman 2008, berdasarkan ada atau tidaknya gelang loop, graf digolongkan menjadi dua, yaitu : a. Graf sederhana simple graph Graf yang tidak memiliki loops dan sisi paralel. b. Graf tak-sederhana unsimple graphmultigraph Graf yang memiliki loops dan sisi paralel. Menurut Munir 2008, Berdasarkan ada atau tidaknya arah, graf digolongkan menjadi dua, yaitu : a. Graf berarah directed graph Graf yang memiliki orientasi arah pada sisinya. v a ,v b ≠ v b ,v a Pada simpul v a ,v b , v a adalah simpul asal sedangkan v b adalah simpul tujuan. b. Graf tak berarah undirected graph Graf yang tidak memiliki orientasi arah pada sisinya. v a ,v b = v b ,v a Universitas Sumatera Utara Dalam hal ini tidak terdapat simpul asal maupun simpul tujuan karena bukan merupakan hal yang terlalu diperhatikan. Berdasarkan bobotnya, graf juga terbagi menjadi dua, yaitu : a. Graf berbobot Graf yang setiap sisinya memiliki nilai atau harga. Misalnya sisi melambangkan jalan, bobot bisa merupakan panjang jalan dan sebagainya tergantung kebutuhan. b. Graf tak berbobot Graf yang setiap sisinya tidak memiliki nilai atau harga.

2.1.3 Walk dan path

Menurut Yulianti 2008, walk dalam graf G adalah sebuah urutan tak nol yang suku-sukunya bergantian antara simpul dan sisi. dimana w = v e 1 v 1 e 2 v 2 …e i v i …e k v k : 1≤ i ≤ k Panjang dari sebuah walk adalah banyaknya sisi yang dilalui dalam walk tersebut. Sebuah path atau jalur adalah walk dengan semua simpul dalam barisan berbeda. Gambar 2.5 gambar graf G e – c – d – b – c – d – b – a adalah sebuah walk dengan panjang 7. e – c – d – b – a adalah sebuah path dengan panjang 4. Universitas Sumatera Utara Berdasarkan hasil diatas maka dapat dinyatakan bahwa setiap simpul walk pasti mengandung simpul path.

2.2 Searching pencarian