TEORI GRAF
** Pendahuluan Graf adalah suatu diagram yang memuat informasi tertentu jika diintrepetasikan secara tepat. Tujuannya adalah sebagai visualisasi objek-objek agar lebih mudah dimengerti. Contoh : struktur organisasi, peta, rangkaian listrik, alur perintah/komando dll.
Garis tersebut dapat berarah dan tidak berarah Contoh : Tiap – tiap diagram memuat sekumpulan objek (kotak, titik, dll) beserta garis yang menghubungkan objek-objek tersebut. Garis tersebut dapat berarah dan tidak berarah Contoh : A C E D B 200 50 100 180 60 75
Dasar – Dasar Graf Suatu graf G terdiri dari 2 himpunan yang berhingga, yatu himpunan titik – titik tidak kosong (simbol : V(G)) dan himpunan garis – garis (simbol : E(G)). Titik ujung : Titik yang ada pada suatu graf yang berhubungan. Loop : Garis yang hanya berhubungan dengan satu titik ujung. Garis Paralel : Dua garis berbeda yang menghubungkan titik yang sama. Dua titik dikatakan berhubungan jika ada garis yang menghubungkan. Titik Terasing/Isolating point : titik yang tidak mempunyai garis yang berhubungan dengannya.
Contoh : 1. Ada 7 kota (A, …, G) yang beberapa diantaranya dapat dihubungkan langsung dengan jalan darat. Hubungan – hubungan langsung yang dapat dilakukan adalah : A dengan B dan D B dengan D C dengan B E dengan F Buatlah graf yang menunjukan keadaan transportasi di 7 kota tersebut.
A F C D B e1 e3 e4 e2 e5 E G
Contoh : 2. Dalam graf G pada gambar dibawah, tentukan : Himpunan titik – titik, himpunan garis-garis, titik – titik ujung masing –masing garis dan garis paralel. Loop dan titik terasing. V3 e7 V2 V1 e1 e2 e3 e4 V5 e5 V4 e6 V6
Jawab : Garis Titik Ujung e1 {v1, v2} e2 e3 {v1, v3} e4 {v2, v3} Garis V(G) = {v1, v2, v3, v4, v5, v6} E(G) = {e1, e2, e3, e4, e5, e6, e7} Garis paralel : e1 dan e2 yg menghub. Titik v1 dgn v2. Loop : e6 dan e7, titik terasing : titik v6. Titik ujung masing- masing garis : Garis Titik Ujung e1 {v1, v2} e2 e3 {v1, v3} e4 {v2, v3} Garis Titik Ujung e5 {v4, v5} e6 {v5} e7 {v3}
Graf berdasar jenis garis : Graf Tidak Berarah (Undirected Graph) 1. Graf Bipartite Graf Berarah (Directed Graph = Digraph)
1. Graf Bipartite Graf sederhana (simple graph) : graf yang tidak mempunyai loop maupun garis paralel. contoh: c a d b c a d b c a d b c a d b
Graf lengkap (complete Graph) dengan n titik (simbol Kn) adalah graf sederhana dengan n titik, dimana setiap 2 titik berbeda dihubungkan dengan suatu garis. Banyaknya garis dalam suatu graf lengkap dengan n titik adalah : n (n – 1) buah 2 Suatu graf G disebut graf Bipartite apabila V(G) merupakan gabungan dari 2 himpunan tak kosong V1 dan V2, dan setiap garis dalam G menghubungkan suatu titik dalam V1 dengan titik dalam V2. Suatu graf G disebut graf Bipartite Lengkap apabila dalam graf bipartite setiap titik dalam V1 berhubungan dengan setiap titik dalam V2. Jika V1 terdiri dari m titik dan V2 terdiri dari n titik, maka graf bipartite lengkapnya disimbolkan Km,n
Contoh : Gambarlah K2, K3, K4, K5 dan K6 Tentukan mana di antara graf-graf berikut ini yang merupakan graf bipartite dan bipartite lengkap.
b v5 v4 v3 v2 v1 e6 e5 e4 e3 e2 e1 v1 v2 v3 v4 v5 v6 e4 e3 e2 e1 e5 e6 a c
2. Komplemen graf Komplemen suatu graf G (simbol ) dengan n titik adalah suatu graf dengan : Titik – titik sama dengan titik – titik G. Jadi V( ) = V(G). Garis – garis adalah komplemen garis – garis G terdapat Graf lengkapnya (Kn). E( ) = E(Kn) – E(G) Titik – titik yang dihubungkan dengan garis dalam g tidak terhubung dalam . Sebaliknya titik – titik yang tidak terhubung dalam G menjadi terhubung dalam .
Contoh : Gambarlah komplemen graf G yang didefinisikan dalam gambar berikut : b a c d (b) e f (a) b a c d e b a d c (c)
3. Sub Graf Konsepnya sama dengan konsep himpunan bagian. Dalam graf yang merupakan himpunan titik dan garis maka H dikatakan sub graf G jika semua titik dan garis H juga merupakan titik dan garis dalam G
Dari definisi diatas, ada beberapa hal yang bisa diturunkan : Graf adalah suatu graf. Graf H dikatakan sub graf G bila dan hanya bila : V(H) V(G) E(H) E(G) Setiap garis dalam H mempunyai titik ujung yang sama dengan garis tersebut dalam G Dari definisi diatas, ada beberapa hal yang bisa diturunkan : Sebuah titik dalam G merupakan subgraf G Sebuah garis bersama-sama dengan titik2 ujungnya merupakan subgraf G Setiap graf merupakan subgraf dari dirinya sendiri Dalam subgraf berlaku sifat transitif : jika H adalah subgraf G dan G adalah subgraf K, maka K adalah subgraf K
Contoh : 1. Dalam graf dibawah ini, apakah H merupakan subgraf G ? v1
2. Gambarlah semua subgraf yang mungkin dibentuk dari graf G pada gambar di bawah ini. v1 v2 e1 e2
4. Derajat Misalkan v adalah titik dalam suatu Graf G. Derajat titik v (Simbol d(v)) adalah jumlah garis yang berhubungan dengan titik v dan garis suatu loop dihitung 2 kali. Derajat total G adalah jumlah derajat semua titik dalam G. Derajat Total = Derajat Total suatu graf selalu genap.
Contoh : Tentukan derajat tiap – tiap titik dalam graf berikut dan berapa derajat totalnya? v5 v2 e2 e3 v1 e1 e4 v3 v6 v4 e5
5. Path dan Sirkuit Walk v w Path v ke w Semua garis berbeda Semua titik berbeda Titik awal dan akhir sama (v0 = vn) Path sederhana v w Sirkuit Titik awal dan akhir sama (v0 = vn) Semua titik berbeda Kecuali v0 = vn Sirkuit Sederhana
Keterangan : Misal G adalah suatu graf. Misalkan pula v dan w adalah 2 titik dalam G. Suatu walk dari v ke w adalah barisan titik-titik yang berhubungan dan garis secara berselang – seling dari titik v ke titik w. Path dengan panjang n dari v ke w adalah walk dari v ke w yang semua garisnya berbeda. Path sederhana dengan panjang n dari v ke w adalah path dari v ke w yang semua titiknya berbeda. Sirkuit dengan panjang n adalah Path yang dimulai dan diakhiri pada titik yang sama. Sirkuit sederhana dengan panjang n adalah sirkuit yang semua titiknya berbeda.
Contoh : Tentukan mana diantara titik dan garis pada gambar berikut yang merupakan walk, path, path sederhana, sirkuit dan sirkuit sederhana. v1 e1 v2 e3 v3 e4 v3 e5 v4 v1 e1 v2 e3 v3 e5 v4 e5 v3 e6 v5 v2 e3 v3 e5 v4 e10 v5 e6 v3 e7 v6 e8 v2 v2 e3 v3 e5 v4 e10 v5 e9 v6 e8 v2 v1 v5 v2 e2 e1 v1 v6 v3 e4 v4 e3 e8 e7 e9 e6 e5 e10
Jawab : Path dari v1 ke v4 dengan panjang 4 (v3 muncul 2 kali) Walk dari v1 ke v5 dengan panjang 5 (e5 muncul 2 kali) Sirkuit dengan panjang 6 (v3 muncul 2 kali) Sirkuit sederhana dengan panjang 5 Sirkuit sederhana
6. Graf Terhubung dan tidak Terhubung Misalkan G adalah suatu graf Dua titik v dan w dalam G dikatakan terhubung bila dan hanya bila ada walk dari v ke w Graf G dikatakan terhubung bila dan hanya bila setiap 2 titik dalam G terhubung Graf G dikatakan tidak terhubung bila dan hanya bila ada 2 titik dalam G yang tidak terhubung
Contoh : Manakah diantara graf pada gambar berikut yang merupakan graf terhubung : v1 v2 e1 e2 e3 v3 e4 v4 v5 e5 v6 v1 e1 v2 e2 v3 e3 v4 e4 (b.) v1 v4 v2 v3 e1 e2 (a.) (c.)
Graf Berarah : Suatu graf berarah G terdiri dari : Himpunan titik-titik V(G) : {v1, v2,…}, himpunan garis E(G) : {e1, e2,…} dan suatu fungsi yang mengawankan setiap garis dalam E(G) ke suatu pasangan berurutan titik (vi,vj) Jika ek = (vi,vj) adalah suatu garis dalam G, maka vi disebut titik awal ek dan vj disebut titik akhir ek, arah garis adalah dari vi ke vj. Jumlah garis yang keluar dari titik vi disebut derajat keluar titik vi (simbol d+(vi).Sedangkan jumlah garis yang menuju ke titik vi disebut derajat masuk titik vi (simbol d-(vi))
Titik terasing adalah titik dalam G dimana derajat keluar dan derajat masuknya adalah 0. Titik pendan adalah titik dalam G dimana jumlah derajat masuk dan derajat keluarnya = 1 Dua garis dikatakan paralel jika keduanya mempunyai titik awal dan titik akhir yang sama.
Contoh : Perhatikan graf di samping, tentukan : Himpunan titik-titik, himpunan garis-garis dan fungsi perkawanan ψ Derajat masuk dan derajat keluar tiap titik Titik terasing dan titik pendan Garis paralel. v2 e1 v1 e4 e5 v3 e7 v5 e6 e8 e9 v4 e3 e2 v6
Representasi Graf dalam Matriks Representasi Graf Tak Berarah dalam Matriks a. Matriks Hubung (Adjacency Matrix) digunakan untuk menyatakan graf dengan cara meyatakannya dalam jumlah garis yang menghubungkan titik-titiknya. Jumlah baris (dan kolom) matriks hubung sama dengan jumlah titik dalam graf. Contoh : Nyatakan graf pada gambar-gambar di bawah ini ke dalam matriks hubung. a. v1 v4 v2 v3 e1 e2 e3 e4 e5 v4 v5 v7 v6 v1 v2 v3 e2 e1 e3 e4 e5 e6 e7 e8 v2 v1 v5 v4 v3 e5 e4 e3 e1 e2 e6 d. v1 v4 v3 v2 e5 e6 e1 e4 e3 e2 b. c.
Penyelesaian : a. b. c. d.
b. Matriks Biner / Matriks (0-1) / Matriks Insidensi Misalkan G adalah graf tanpa loop dengan n titik v1, v2, v1, …, vn dan k garis e1, e2, e3,…, ek Matriks Biner yang sesuai dengan graf G adalah matriks A berukuran n x k yang elemennya adalah : Jika titik vi berhubungan dengan garis ej Jika titik vi tidak berhubungan dengan garis ej Contoh : Nyatakan graf G pada gambar berikut dengan matriks biner yang sesuai. Hitunglah derajat masing-masing titik dan derajat totalnya ! v3 v1 v2 v5 v4 v6 e1 e2 e4 e6 e5 e3 e7 e8
Ada 6 titik dan 8 garis dalam G Ada 6 titik dan 8 garis dalam G. Maka matriks A yang sesuai dengan graf G terdiri dari 6 baris dan 8 kolom. Derajat titik vi adalah jumlah semua elemen pada baris ke-i Derajat total adalah jumlah semua elemen dalam matrik A =
Jika sirkuit ke-i memuat garis ke-j c. Matriks Sirkuit Misalkan G adalah graf yang memuat q buah sirkuit sederhana dan e buah garis. Matriks sirkuit A = (aij) yang bersesuaian dengan G adalah matriks yang terdiri dari q baris dan e kolom dengan elemen : Jika sirkuit ke-i memuat garis ke-j Jika sirkuit ke-i tidak memuat garis ke-j Contoh : Nyatakan graf G pada gambar berikut dengan matriks sirkuit yang sesuai. v3 v1 v2 v5 v4 v6 e1 e2 e4 e6 e5 e3 e7 e8
Penyelesaian : Graf tersebut mempunyai 8 garis (e1,…, e8) dan 4 sirkuit sederhana, yaitu : s1 = e7e8, s2= e3e4e5, s3= e1e4e6, dan s4= e1e3e5e6 Maka matriks sirkuit yang sesuai terdiri dari 4 baris dan 8 kolom.
Pohon (Tree) 1. Pohon dan Hutan Misalkan G adalah suatu graf sederhana (tidak memiliki garis pararel dan loop). G disebut pohon bila dan hanya bila G terhubung dan tidak memuat sirkuit. G disebut Hutan (Forest) bila dan hanya bila G tidak memuat sirkuit. Misalkan T adalah suatu Pohon. Daun (leaf/terminal vertex) adalah titik dalam T yang berderajat 1. Titik cabang (Branch/Internal vertex) adalah titik dalam T yang berderajat >1. Suatu pohon dengan n titik (n bulat positif) akan mempunyai (n-1) garis.
Contoh 1 : Tentukan mana di antara graf berikut yang merupakan Pohon atau Hutan. v2 v3 v8 v6 v4 v7 v5 v1 v5 v2 v4 v6 v1 v8 v3 v7 (a) (b) v8 v7 v4 v5 v6 v3 v2 v1 v1 v2 v9 v8 v5 v4 v6 v7 v3 (c) (d)
Contoh 2 : Syarat kelulusan suatu mata kuliah adalah sebagai berikut : Jika nilai ujian tahap I >70, seorang mahasiswa langsung dinyatakan lulus dengan predkat “memuaskan”. Sebaliknya, jika nilai ujian tahap I < 50, maka mahasiswa yang bersangkutan langsung dinyatakan tidak lulus. Tetapi jika nilai ujian tahap I antara 50 – 70, maka mahasiswa tersebut diwajibkan untuk mengikuti ujian tahap II. Jika nilai ujian tahap II 60, maka mahasiswa yang bersangkutan akan dinyatakan lulus dengan predikat “baik” . Tetapi, jika nilai ujian tahap II < 60, maka mahasiswa yang bersangkutan dinyatakan tidak lulus. Nyatakan syarat kelulusan mata kuliah tersebut dalam suatu pohon keputusan (decision tree) !
2. Pohon Berakar Pohon berakar (rooted Tree) adalah suatu pohon di mana ada satu titik yang dikhususkan dari yang lain. Titik tersebut disebut Akar (Root). Tingkat (level) suatu titik adalah banyaknya garis antara titik tersebut dengan akar. Tinggi (height) pohon adalah tingkat maksimum yang dimiliki oleh titik-titik pohon. Anak (children) dari titik v adalah semua titik yang berhubungan langsung dengan v, tetapi mempunyai tingkat yang lebih tinggi dari v. Jika w adalah anak dari v, maka v disebut orang tua (parent) dari w. Dua titik yang mempunyai orang tua yang sama disebut saudara (sibling).
Contoh 3 : Perhatikan pohon pada contoh 1 (b) dengan v2 sebagai akarnya. Tentukan tingkat tiap-tiap titik Berapa tinggi pohon ? Tentukan anak, orang tua dan saudara titik v1 Apakah pertanyaan (a)-(c) mempunyai jawaban yang berbeda jika akarnya adalah v1?