CCM 110, MATEMATIKA DISKRIT Pertemuan 6-7 , Teori Graph Drs. Holder Simorangkir, M.Kom Program Studi Teknik Informatika UNIVERSITAS ESA UNGGUL
KEMAMPUAN AKHIR YANG DIHARAPKAN Mahasiswa dapat memahami tentang Teori Graph serta dapat mengaplikasinya keberbagai mata kuliah seperti Basis Data , Artificial Intelligent
PENDAHULUAN Dalam kehidupan sehari-hari , banyak persoalan yang dapat disimpulkan sebagai persoalan yang berhubungan dengan himpunan dan relasi binary , di mana logika dari persoalan tersebut sering kali dapat digambarkan dengan sebuah graph. Contoh : Seorang programmer ingin membuat software sistem jaringan transportasi sedemikian rupa sehingga apabila sebuah kendaraan bergerak dari titik A ke semua titik lain kemudian kembali ke titik A dapat dilakukan dengan efisien.
Gambarnya : A B C D E
Tree Structure ( Pohon Keputusan ) A = Root. B dan C = Node Tree Structure ( Pohon Keputusan ) A = Root. B dan C = Node. D , E , F dan G adalah Leaves. Garis adalah penghubung Soal : Dari gambar di slide 4 , bila Node adalah kota dan Garis jalan yang menghubungkan satu kota ke kota lainnya dan diberikan besaran jarak, maka carilah jarak terpendeknya dari A dan setelah melalui kota-kota lain dan kembali ke A !! A B C D E F G
A. Jenis-jenis Graph Jenis-jenis graph dilihat dari strukturnya ada 6 jenis, yaitu : Multigraph Adalah graph yang mempunyai satu atau lebih pasangan rusuk ganda yang menghubungkan 2 buah titiknya. A B Titik A dan D dihubungkan oleh 2 buah e3 e4 e5 Garis (rusuk ) e1 dan e2 demikian juga e1 e2 C titik B dan C dihubungkan oleh rusuk e6 e7 e4 dan e5 D E
b. Pseudograph adalah graph yang memiliki satu atau lebih pasangan rusuk ganda yang menghubungkan 2 buah titiknya (multigraph) dan memiliki satu atau lebih loop pada titiknya. e8 Graph di atas selain memiliki rusuk A B ganda juga memiliki dua buah loop e3 e4 e5 di titik B dan E. Loop adalah rusuk e1 e2 C yang ujungnya hanya memiliki sebuah e6 e7 titik. D E e9
c. Trivialgraph adalah graph yang hanya terdiri dari satu titik. d c. Trivialgraph adalah graph yang hanya terdiri dari satu titik. d. Graph Lengkap ( Kn ) adalah graph yang setiap titiknya terhubung dengan semua titik yang lain dengan hanya satu rusuk. A B C D E
adalah graph yang setiap titiknya mempunyai sejumlah e. Graph Teratur adalah graph yang setiap titiknya mempunyai sejumlah incident rusuk yang sama Bipartitegraph A adalah graph yang titik-titiknya B dapat dikelompokkan menjadi dua, C titik-titik dalam satu kelompok tak D terhubung dan titik-titik antar E kelompok terhubung lengkap. A B C E
adalah graph yang semua 1 9 7 Menurut Lintasannya : Traversable Graph 2 6 B 5 adalah graph yang semua 1 9 7 rusuk-rusuknya dapat dilalui 4 masing-masing sekali atau A 8 graph yang dapat digambar 3 tanpa pena diangkat. Teori EULER : *. Semua graph terhubung yang mempunyai titik ganjil maksimum dua adalah Traversable Graph *. Traversable Graph lintasannya selalu dimulai dari titik ganjil pertama (A) dan diakhiri pada titik ganjil kedua (B).
Catatan : Titik ganjil adalah titik di mana rusuknya yang Incident (bertemu) dengan titik tersebut berjumlah ganjil. Eulerian Graph 1 2 adalah graph yang semua rusuknya 5 8 dapat dilalui masing-masing sekali 9 6 13 7 12 dan memiliki lintasan tertutup, artinya 14 10 11 titik awal = titik akhir 4 3 Teori Euler : *. Bila sebuah graph semua titiknya genap maka graph tersebut mempunyai lintasan euler. *. Graph Euler dapat digambarkan tanpa angkat pena maka Euler graph juga merupakan Traversable Graph.
c. Hameltonian Graph Koneksitas adalah graph yang semua titik-titiknya 2 3 4 dapat dilalui masing-masing sekali dan 1 5 mempunyai lintasan tertutup, 8 7 6 artinya : titik awal = titik akhir. Koneksitas Hubungan atau lintasan antar titik dalam sebuah graph dapat dibedakan menjadi beberapa jenis , yaitu : Walk adalah lintasan dari satu titik ke titik yang lain.
Contoh : Misalkan titik mewakili kota dan rusuk mewakili jalan, maka dari Jakarta ke Bandung dapat dibuat banyak Walk. Yaitu : Jakarta – Jagorawi - Bogor. dll b. Closed Walk adalah Walk yang titik awal = titik akhir. Contoh : Jakarta – Cikampek – Jakarta c. Trail adalah Walk yang semua rusuknya berlainan, artinya yang diperhatikan adalah lintasannya.
Contohnya : Jakarta – Cikampek - Purwakarta. dll d Contohnya : Jakarta – Cikampek - Purwakarta. dll d. Path adalah Walk yang semua titiknya berlainan, artinya yang diperhatikan adalah lintasannya. Contoh : Jakarta – Cikampek - Purwakarta e. Cycle adalah Path yang tertutup, artinya titik awal = titik akhir Jakarta – Tangerang – Bogor – Jakarta e.
f. Girth adalah cycle terpendek dari cycle-cycle yang dimiliki oleh sebuah graph. Contoh : A B C D E F G Graph di atas mempunyai banyak cycle, tetapi ada satu yang terpendek yang disebut “GIRTH= CGFC” , panjangnya 3 rusuk yang membentuk cycle. g. Circumference adalah cycle terpanjang dari cycle-cycle yang dimiliki oleh sebuah graph. Contoh : Dari gambar (Girth) di atas, adalah ”Circumference = ABCGFEDA”, dengan panjang = 7 yang memiliki 7 rusuk . a
Berkaitan Dengan Masalah Jarak Dalam sebuah graph, perlu diketahui yang berkaitan dengan jarak penting , al. untuk menentukan jari-jari, diameter, sentral dan pusat graph. Jarak anatara dua titik adalah Walk yang semua titiknya berlainan dan mempunyai lintasan terpendek. Contoh : Dapat dibuat banyak Walk yang semua titiknya berlainan anatar Jakarta – Bogor , yaitu : Jakarta – Jagorawi – Bogor Jakarta – Tangerang – Bogor Dari contoh lintasan-lintasan di atas yang disebut jarak adalah lintasan Jakarta – Jagorawi – Bogor karena terpendek . Ada beberapa hal yang berkaitan dengan jarak , yaitu :
Eksentrisitas Suatu Titik {e(u)} titik dalam sebuah graph. Eksentrisitas suatu titik adalah jarak terpanjang suatu titik terhadap semua titik dalam sebuah graph. Contoh : A B C Jarak A – B = 1 A – C = 2 A – D = 2 A – E = 1 D E F G H A – F = 2 A – G = 3 A – H = 4 Jadi Eksentrisitas titik A = e(A) = 4 d. Pusat Graph adalah himpunan titik-titik yang nilai eksentrisitasnya = jari-jarinya. Contoh : Dari contoh di atas pusat graph adalah (F)
b. Jari-jari Graph { r(G)} adalah eksentrisitas titik yang terkecil dalam sebuah graph. Contoh : Dari gambar (a) , eksentrisitas titik-titiknya sebagai berikut : e(A) = 4 ; e(E) = 3 e(B) = 3 ; e(F) = 2 e(C) = 4 ; e(G) = 3 e(D) = 4 ; e(H) = 4 Jadi jari-jari graph = r(F) = 2 c. Diameter Graph { d(H)} Diameter graph adalah eksentrisitas titik yang terbesar dalam sebuah graph. Dari Graph di atas dapat disimpulkan bahwa Diameter Grap d(H) = 4
e. Titik Sentral Graph adalah titik-titik simpul yang nilai eksentrisitasny = NILAI JARI-JARINYA. Contoh : Dari contoh di atas titik sentral garph adalah titik F D. Derajat/Degree Suatu Titik Seperti diketahui sebuah titik dalam graph dapa mempunyai 1 atau lebih rusuk yang incident padanya atau tidak ada satupun rusuk yang incident padanya. Derajat sebuah titik adalah banyaknya rusuk yang incident pada titik tersebut. Titik ganjil adalah titik yang derajatnya ganjil. Titik genap adalah titik yang derajat genap.
Contoh : Maka derajat titik-titiknya = deg (A) = 4 deg (B) = 3 deg (C) = 2 deg (D) = 3 deg (E) = 4 deg (F) = 3 deg (H) = 2 deg ( I) = 3 Jumlah degree = 24 Jumlah rusuk = 12 Jumlah degree = 2 kali jumlah rusuk C B D A E F I H