bab 4-graf.pdf

32
Bab IV teori graf BAB IV TEORI GRAF 1.Pengantar Pada bab 2. telah disinggung sekilas penggunaan graf untuk representasi relasi. Saat ini apliksi graf banyak digunakan dalam dunia nyata seperti untuk menyatakan jalur transportasi (traveling), bisnis, jaringan computer, mencari jalur terpenpek atau lintasan terpendek dll. Pada bab ini akan dibahas tentang apa itu graf, istilah-istilah dalam graf, terapan graf. 2. Kompetensi Mahasiswa dapat memahami pola pikir teori graf yang merupakan diagram informasi yang dapat diintegrasikan secara cepat dan dapat menyelesaikan permasalah optimasi kususnya di bidang komputer 3. Pokok bahasan: Teori Graf (Graph Teori) Sub Pokok bahasan : Pengertian Graf Jenis-Jenis Graf Graf sederhana dan tak sederhana Penggolongan Graf berdasar simpul dan sisi Terapan Graf Istilah (Terminologi) dalam Graf Beberapa contoh Graf Sederhana Aplikasi Graf untuk Lintasan Terpendek Lintasan Terpendek (Short Path) Algoritma Dijkstra 4. Kegiatan Belajar Dalam permasalahan riil graf digunakan untuk merepresentasikan objek-objek diskrit dan hubungan antara objek-objek tersebut. Representasi visual dari graf untuk Matematika diskrit IV-1

Upload: noer-rokhman-rodilah

Post on 30-Dec-2015

284 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: BAB 4-Graf.pdf

Bab IV teori graf

BAB IV TEORI GRAF

1.Pengantar

Pada bab 2. telah disinggung sekilas penggunaan graf untuk representasi relasi. Saat

ini apliksi graf banyak digunakan dalam dunia nyata seperti untuk menyatakan jalur

transportasi (traveling), bisnis, jaringan computer, mencari jalur terpenpek atau lintasan

terpendek dll. Pada bab ini akan dibahas tentang apa itu graf, istilah-istilah dalam graf,

terapan graf.

2. Kompetensi

Mahasiswa dapat memahami pola pikir teori graf yang merupakan diagram informasi yang

dapat diintegrasikan secara cepat dan dapat menyelesaikan permasalah optimasi kususnya di

bidang komputer

3. Pokok bahasan: Teori Graf (Graph Teori)

Sub Pokok bahasan :

Pengertian Graf

Jenis-Jenis Graf

Graf sederhana dan tak sederhana

Penggolongan Graf berdasar simpul dan sisi

Terapan Graf

Istilah (Terminologi) dalam Graf

Beberapa contoh Graf Sederhana

Aplikasi Graf untuk Lintasan Terpendek

Lintasan Terpendek (Short Path)

Algoritma Dijkstra

4. Kegiatan Belajar

Dalam permasalahan riil graf digunakan untuk merepresentasikan objek-objek

diskrit dan hubungan antara objek-objek tersebut. Representasi visual dari graf untuk

Matematika diskrit IV-1

Page 2: BAB 4-Graf.pdf

Bab IV teori graf

menunjukkan objek digunakan noktah, bulatan, titik atau simpul sedangkan hubungan

antar objek dinyatakan dengan garis. Contoh gambar peta suatu daerah kota dapat

dinyatakan dengan bulatan sedangkan jalan dinyatakan sebagai garis, dengan adanya

peta dapat diketahui apakah ada lintasan jalan antara dua Kota, jalur terpendek

perjalanan dari kota A ke kota B.

4.1. Pengertian Graf

Definisi 4.1: Graf didefinisikan sebagai pasangan himpunan (V,E) yang dinyatakan

G = (V,E).

dimana ,

V = Himpunan berhingga dan tidak kosong dari simpul-simpul (vertices atau node). atau

dinyatakan dengan V = { V1 , V2 … Vn } dan

E = Himpunan sisi ( edges atau ars) yang menghubungkan sepasang simpul,

dinyatakan dengan E = {e1, e2, e3, … en }

Pengkodean simpul dan sisi

Untuk memudahkan dalam memberikan ilustrasi tentang graf dalam menentukan

simpul dan sisi maka diberikan notasi sebagai berikut :

1. Simpul pada graf dapat dinotasikan dengan huruf misal V,W,X,… ; atau

bilangan asli 1,2,3,… atau gabungan keduanya.

2. Sedangkan sisi yang menghubungkan simpul Vi dengan simpul Vj di nyatakan

dengan pasangan (Vi,, Vj ) .

3. e = (Vi,, Vj) artinya e adalah sisi yang menghubungkan simpul Vi dengan simpul Vj

Untuk mempermudah penggambaran graf dapat dilihat ilustrasi graf G sbb:

Matematika diskrit IV-2

Page 3: BAB 4-Graf.pdf

Bab IV teori graf

Gambar 4.1. Graf dengan notasi simpul berupa huruf , angka dan gabungan

keduanya

Dari gambar 4.1 dapat dijelaskan bahwa simpul graf G1 diberi notasi huruf, simpul

graf G2 diberi notasi angka dan simpul graf G3 diberi notasi gabungan huruf dan

angka .

4.2. Jenis-Jenis Graf

Graf dapat dikelompokkan dalam beberapa jenis tergantung pada sudut pandang

pengelompokannya. Pengelompokan graf dapat dipandang berdasarkan ada tidaknya sisi

ganda atau sisi kalang, jumlah simpul atau berdasar orientasi arah pada sisi.

4.2.1. Graf sederhana dan tak sederhana.

1. Graf sederhana (simple graph )

Graf sederhana adalah graf yang tidak mengandung gelang maupun sisi-sisi ganda.

Contoh 4.1.

Gambar 4.2. Graf sederhana

Matematika diskrit IV-3

Page 4: BAB 4-Graf.pdf

Bab IV teori graf

2. Graf tak-sederhana (unsimple graph )

Graf tak-sederhana adalah graf yang mengandung sisi ganda atau gelang,

terdapat dua macam graf tak sederhana yaitu:

a. Graf ganda (multigraph) yaitu graf G = (V, E) yang mengandung sisi ganda dan

V merupakan himpunan tidak kosong serta himpunan ganda (multi-set) yang

mengandung sisi ganda E.

Contoh 4.2.

Gambar 4.3. Graf memuat sisi ganda

b. Graf semu (pseudograph) yaitu graf yang mengandung gelang(loop). Graf semu

lebih umum karena dapat terhubung dengan dirinya sendiri.

Contoh 4.3.

Gambar 4.4. Graf memuat gelang di V3

Kardinalitas Graf : Jumlah simpul pada graf disebut kardinalitas graf yang dinyatakan

dengan n = |V|, sedangkan jumlah sisi dinyatakan dengan m = | E |.

Matematika diskrit IV-4

Page 5: BAB 4-Graf.pdf

Bab IV teori graf

Contoh 4.4. : Jumlah simpul graf contoh 4.3 adalah n = |V| =3 dan jumlah sisi

m =| E |= 5 , sisi untuk gelang dihitung duakali.

4.2.2. Penggolongan Graf berdasar simpul dan sisi

Dalam penggolongannya graf dapat ditinjau dari sudut pandang simpul dan orientasi arah

yang diuraikan sbb:

Berdasar simpul, dari pandangan simpul graf dapat di bedakan atas simpul berhingga dan

tak berhingga :

1. Graf berhingga (limited graph)

adalah graf yang jumlah simpulnya ' n' berhingga.

2. Graf tak berhingga (unlimited graph)

adalah graf yang jumlah simpulnya tidak berhinnga banyaknya.

Berdasar arah pada sisi, graf dapat di bedakan atas graf dengan sisi berarah dan tak

berarah :

1. Graf yang sisinya tidak mempunyai orientasi arah disebut graf tak berarah, pada

graf ini urutan pasangan simpul yang dihubungkan oleh sisi tidak diperhatikan.

Jadi ( vj,vk ) = ( vk ,vj ) merupakan sisi sama.

2. Graf berarah (directed graph atau digraph)

Graf yang setiap sisinya diberikan orientasi arah disebut sebagai graf berarah

atau busur (arc). Pada graf berarah ( Vj,Vk ) ≠ ( Vk ,Vj ) menyatakan dua busur

yang berbeda dengan kata lain ( Vj,Vk ) ≠ ( Vk ,Vj ) dan simpul Vj dinamakan

simpul asal (initial vertex) sedangkan Vk dinamakan simpul terminal ( terminal

vertex ).

Matematika diskrit IV-5

Page 6: BAB 4-Graf.pdf

Bab IV teori graf

4.3. Terapan Graf

Penerapan graf dalam kehidupan sehari-hari sangat luas, umumnya penggunaan graf

adalah untuk memodelkan permasalahan. Contoh penerapan graf dapat dilihat pada perma-

salahan pada rangkaian listrik, pengujian program, terapan pada teori bahasa otomata dll.

Contoh 4.5. Rangkaian Listrik.

Salah satu terapan graf dapat dilihat pada rangkaian listrik dengan Hukum

Kirchoff (1847) yang menggunakan graf untuk memodelkan rangkaian listrik.

Gambar 4.5.a menyatakan rangkaian listrik sebenarnya sedangkan pada gambar 4.5.b yang

digambarkan secara graf.

Contoh 4.6. Pengujian Program.

Pada permasalahan rekayasa perangkat lunak sebuah program harus menjalani

tahap pengujian untuk menentukan kesalahan.

Bagian program berikut : Baca (x);

While x <> 9999 do

Begin

Jika x<0 maka writeln('Masukan tidak boleh negatif')

else

x = x + 10

Matematika diskrit IV-6

Page 7: BAB 4-Graf.pdf

Bab IV teori graf

baca(x)

end

writeln(x)

Graf alir yang menggambarkan kendali program tersebut sbb:

Gambar 4.6. Graf kendali program.

Keterangan :

1. baca (x)

2. x<>9999

3. x < 0

4. writeln ('Masukan tidak boleh negatif')

5. x = x + 10

6. baca (x)

7. writeln(x)

Data pengujian harus dirancang sedemikian semua lintasan di dalam graf dilalui satu kali.

Contoh 4.7. Terapan graf di dalam teori bahasa otomata

Contoh ini menggambarkan pemodelan perilaku sebuah mesin jaja untuk menjual

coklat seharga 15 sen. Untuk mudahnya missal mesin hanya menerima uang logam 5 sen dan

10 sen dan mesin tidak akan memberikan kembalian apabila pembayaran lebih dari 15 sen.

Buatlah graf berbobot untuk yang menggambarkan perilaku mesin tersebut jika simpul

menyatakan bayak uang yang dimasukkan.

Matematika diskrit IV-7

Page 8: BAB 4-Graf.pdf

Bab IV teori graf

Gambar 4.7. proses eksekusi mesin jaja coklat.

4.4. Istilah (Terminologi) Dalam Graf

Dalam pembahasan lebih lanjut tentang graf akan dijumpai banyak istilah atau

terminologi seperti sebelumnya terdapat graf sederhana, multi graf dll. Terminologi lain

yang sering digunakan dalam graf adjacent, incident, isolated vertex, lintasan(circuit),

terhubung (connected) adalah sebagai berikut :

1. Adjacent (ketetanggaan)

Dua buah simpul dikatakan bertetangga (adjacent) bila kedua simpul terhubung

langsung seperti simpul Vi adjacent dengan simpul Vj jika untuk setiap e(sisi)∈ E

demikian sehingga e ∈ (Vi ,Vj).

Contoh 4.8.

Gambar 4.8. Ketetanggaan simpul Vi dengan Vj

Matematika diskrit IV-8

Page 9: BAB 4-Graf.pdf

Bab IV teori graf

dari gambar 4.8, e ∈ (V1,V2), menyatakan bahwa simpul V1 bertetangga langsung

dengan simpul V2

2. Incidency( bersisian)

Untuk sembarang sisi e ∈ (Vj ,Vk) dikatakan bahwa

i) e bersisian dengan simpul Vj atau

ii) e bersisian dengan simpul Vk

3. Simpul terpencil( isolated vertex).

Simpul terpencil adalah simpul yang tidak mempunyai sisi yang bersisian

dengannya.

Contoh 4.9.

Gambar. 4.9. Graf yang memuat simpul terpencil.

Simpul V5 merupakan simpul terpencil karena tidak ada sisi yang menghubungkan

langsung ke simpul lainnya.

4. Graf kosong ( null graf emty graph) adalah graf yang tidak mempunyai sisi yang

menghubungkan antara simpul Vi ke simpul Vj.

Gambar. 4.10. Graf kosong

Matematika diskrit IV-9

Page 10: BAB 4-Graf.pdf

Bab IV teori graf

5. Derajad (Degree)

Definisi 4.2. Derajad suatu simpul adalah jumlah sisi yang bersisian dengan simpul

tersebut

Notasi d(V) menyatakan derajad simpul V (4.1).

Simpul terpencil adalah simpul dengan d(V) = 0

Simpul yang mempunyai gelang dihitung mempunyai dua buah sisi yang bersisian (karena

dipresentasikan (V,V) dan simpul V bersisian dua kali) , jika terdapat n buah gelang dan e

buah sisi bukan gelang yang bersisian dengan simpul V, maka derajat simpul V adalah

d(V) = 2n + e. (4.2).

Pendant vertex diartikan sebagai simpul yang berderajad satu.

Pada graf berarah, pengertian derajad dibedakan menjadi dua macam :

1. din(V) = derajad-masuk (in-degree) = jumlah busur yang masuk ke simpul V.

2. dout(V) = derajad-keluar (out-degree) = jumlah busur yang keluar dari ke simpul V

dan d(V) = din(V) + dout(V)

Secara umum dalam graf G = (V,E) berlaku hubungan

= =| E | (4.3). )(Vdvi

in∈

∑ )(Vdvi

out∈

Hanshaking lemma :

Jumlah derajad semua simpul pada suatu graf adalah genap, yaitu dua kali jumlah sisi

pada graf tersebut. Jadi jika G = (V,E) maka )(Vdvi∈

∑ = 2 | E |.

Matematika diskrit IV-10

Page 11: BAB 4-Graf.pdf

Bab IV teori graf

Contoh 4.11: Diberikan graf berikut

Gambar. 4.11. Graf berarah

apakah = 2 | E | dan = )(Vdvi∈

∑ )(Vdvi

in∈

∑ )(Vdvi

out∈

∑ =| E |

Jawab :

a). Akan diselidiki apakah = )(Vdvi

in∈

∑ )(Vdvi

out∈

∑ = | E |

perhatikan tabel perhitungan berikut

din(Vi) dout(Vi)

din(V1) = 1 dout(V1) = 2

din(V2) = 1 dout(V2) = 2

din(V3) = 2 dout(V3) = 2

din(V4) = 2 dout(V1) = 0

)(Vdvi

in∈

∑ = 6 )(Vdvi

out∈

∑ =6

din(V1) = 1 dimaksudkan bahwa arah busur ke simpul V1 sebanyak satu kali, din(V2) = 1

dimaksudkan bahwa arah busur ke simpul V2 sebanyak satu kali din(V3) = 2 dan din(V4)

= 2 dimaksudkan bahwa arah busur ke simpul V3 dan V4 sebanyak dua kali. Begitu

juga untuk dout(Vi), dout(V1) = 2, dout(V2) = 2 dan dout(V3) = 2 dimaksudkan bahwa arah

busur keluar dari V1 , V2 dan V3 sebanyak dua kali sedangkan dari V4 tidak ada busur

yang keluar. Sedangkan = 6 menyatakan jumlah derajad masuk (in-degree) )(Vdvi

in∈

Matematika diskrit IV-11

Page 12: BAB 4-Graf.pdf

Bab IV teori graf

simpul dari graf yang diketahui adalah 6 dan )(Vdvi

out∈

∑ = 6 menyatakan jumlah derajad

keluar (out-degree) simpul dari graf yang diketahui adalah 6. Banyak sisi E dari graf

tersebut adalah 6 jadi

)(Vdvi

in∈

∑ = = 6 = | E | )(Vdvi

out∈

b) Jumlah derajad masuk dan keluar dalam graf G adalah

= + )(Vdvi∈

∑ )(Vdvi

in∈

∑ )(Vdvi

out∈

= 6 + 6 = 12 = 2 | E |

Contoh 4.12 : Diberikan derajad masing -masing simpul sbb:

a. 2,3,1,1,2

b. 2,3,3,4,4

dapatkah graf tersebut digambar, apabila dapat gambarkan grafnya tetapi apabila

tidak dapat berikan berikan alasannya

Jawab :

a. Diketahui derajad masing-masing simpul 2,3,1,1,2 yang berarti apabila kita jumlahkan

yaitu 2 + 3 + 1 + 1 + 2 = 9 diperoleh jumlah ganjil berdasar Hanshaking lemma

yaitu jumlah derajad semua simpul pada suatu graf adalah genap. Jadi dari data

yang diketahui tidak dapat dibuat graf.

b. Jika ditinjau dari jumlahan derajad masing-masing simpul yaitu

2 + 3 + 3 + 4 + = 16 adalah genap, maka dapat dibuat graf salah satu modelnya sbb:

Matematika diskrit IV-12

Page 13: BAB 4-Graf.pdf

Bab IV teori graf

Gambar 4.12. Graf dengan lima simpul dan derajad simpul 2,3,3,4,4

Akibat dari hanshaking lemma dapat diturunkan teorema berikut :

Teorema 4.1. Untuk sembarang graf G, banyaknya simpul yang berderajad ganjil selalu

genap.

6. Lintasan (Path) Definisi 4.3 : Lintasan dari simpul awal Vp ke simpul akhir Vq dalam graf G adalah

rangkaian simpul Vp ,Vi1 , Vi2 ,Vi3…… Vim , Vq sehingga (Vp, Vi1 ), (Vi1 Vi2) ,….., (Vim Vq)

merupakan sisi dalam graf G ( simpul dan sisi yang dilalui boleh berulang ).

a.Lintasan Sederhana (simple path)

adalah lintasan dengan semua simpul berbeda dan semua sisi yang dilalui hanya satu

kali.

b.Lintasan Elementer(elementary path)

Adalah lintasan dengan semua simpul yang dilalui hanya muncul satu kali, kecuali

mungkin simpul pertama dan terakhir.

c.Lintasan Tertutup(close path)

Adalah lintasan yang berawal dan berakhir pada simpul yang sama.

d.Lintasan terbuka (Open path)

Lintasan yang berawal dan berakhir pada simpul yang tidak sama.

Matematika diskrit IV-13

Page 14: BAB 4-Graf.pdf

Bab IV teori graf

Panjang Lintasan

Adalah jumlah sisi dalam lintasan tersebut , penulisan litasan Vi1 , Vi2 Vi1…… Vim , Vq hanya

berlaku untuk graf sederhana.

Contoh 4.13 :

Gambar 4.13. Graf sederhana

1. Lintasan V1 , V2 ,V3 , V4 merupakan lintasan sederhana yang terbuka , karena

simpul awal tidak sama dengan simpul akhir dan tidak ada simpul yang diulang.

2. Lintasan V1 , V2 ,V3 , V4 , V1 merupakan lintasan sederhana yang tertutup , karena

simpul awal sama dengan simpul akhir.

7. Siklus (Cycle) atau sirkuit (Circuit)

Adalah lintasan yang semua simpul dan sisi hanya dilalui satu kali dengan simpul

awal sama dengan simpul akhir. Panjang sirkuit adalah jumlah sisi yang ada dalam sirkuit

tersebut .

8. Terhubung (Connected)

Dua buah simpul Vi , Vj dari suatu graf G dikatakan terhubung apabila terdapat litasan

dari Vi ke Vj dan sebaliknya. Secara umum dapat dikatakan sebagai berikut

Definisi 4.4 : Graf tak berarah G disebut graf terhubung (connected graph) jika untuk

setiap pasang simpul Vi dan Vj dalam himpunan V terdapat lintasan Vi , Vj dan

sebaliknya. Jika tidak maka graf G disebut graf tak tehubung (disconnected graph).

Matematika diskrit IV-14

Page 15: BAB 4-Graf.pdf

Bab IV teori graf

Contoh 4.14.

Gambar 4.14 : (a). Menyatakan graf terhubung

(b). Menyatakan graf tak terhubung

Keterhubungan dua buah simpul pada graf berarah dibedakan menjadi terhubung kuat

dan terhubung lemah. Dua buah simpul Vi , Vj pada suatu graf berarah G disebut

terhubung kuat (strongly connected) jika terdapat lintasan berarah dari Vi ke Vj dan

dari Vj ke Vi.

9. Upagraf (subgraph) dan Komplemen Upagraf

Definisi 4.5: Misal G = (V,E) adalah sebuah graf G1= (V1,E 1) adalah upagraf (sub graph)

dari G jika V1 ⊆ V dan E1 ⊆ E.

Komplemen dari upagraf G1 terhadap graf G adalah graf G2 = (V2,E 2) Sedemikian

E2 = E - E1 dan V2 adalah himpunan simpul yang anggota-anggotanya E2 bersisian

dengannya.

Gambar : 4.15. (a) graf lengkap G; (b) upagraf dari graf G dan

(c) Komplemen upagraf (b)

Matematika diskrit IV-15

Page 16: BAB 4-Graf.pdf

Bab IV teori graf

Komponen terhubung(connected component) dari graf G atau komponen adalah upagraf

terhubung dari graf G yang tidak terdapat di dalam upagraf terhubung dari G yang lebih

besar untuk jelasnya dapat dilihat gambar berikut .

Gambar : 4.16 Graf G terdiri atas G1 dan G2

Graf G gambar 4.16.mempunyai dua komponen G1 dan G2 saling terpisah.

11. Upagraf Rentang (Spanning Subgraph )

Definisi 4.6: Upagraf G1= (V1,E 1) dari G = (V,E) dikatakan upagraf merentang jika

V1=V yaitu G1 memuat semua simpuldari graf G.

12. Cut-Set

Definisi 4.7 : Cut-set dari graf terhubung G adalah himpunan sisi yang bila dibuang dari G

menyebabkan G tidak terhubung.

Jadi cut-set selalu menghasilkan dua buah komponen terhubung.

13. Graf berbobot(Weighted Graph)

Definisi 4.8 : Graf berbobot adalah graf yang setiap sisinya diberi sebuah harga (bobot),

Bobot pada setiap sisi dapat berbeda beda tergantung dari permasalah yang dapat

dimodelkan dengan graf. Bobot pada setiap sisi dapat menyatakan jarak antar dua kota,

biaya perjalanan, waktu tempuh telpon dari suatu titik(simpul) komunikasi ke simpul

yang lain ke dll

Matematika diskrit IV-16

Page 17: BAB 4-Graf.pdf

Bab IV teori graf

Contoh 4.16:

Gambar : 4.17 Graf G berbobot

Masing-masing sisi graf G pada gambar 4.17 diberi bobot berupa angka yang dapat

mewakili permasalahan yang diinginkan misalnya menyatakan jarak antar kota. Contoh

jarak dari kota V1 ke kota V2 sejauh 8 km.

4.5. Beberapa Graf Sederhana Khusus

Dalam banyak aplikasi sering dijumpai graf sederhana seperti graf lengkap (complete

graph), graf lingkaran , graf teratur dan graf bipartite(Bipartite Graph) masing-masing

diuraikan sbb.

a. Graf Lengkap(complete Graph)

Adalah graf sederhana yang setiap simpulnya mempunyai sisi ke semua simpul lainnya.

Graf lengkap dengan n buah simpul dilambangkan dengan Gn .Jumlah sisi pada graf

lengkap yang terdiri atas n buah simpul adalah n(n-1)/2.

b.Graf lingkaran

Graf lingkaran adalah graf sederhana yang setiap simpulnya berderajad dua.

c. Graf Teratur (Regular Graphs)

Adalah graf yang setiap simpulnya berderajad sama , apabila derajad setiap simpul

adalah r maka graf tersebut disebut sebagai graf teratur berderajad r.

d. Graf bipartite(Bipartite Graph)

Adalah suatu graf misalkan diberi nama G yang simpulnya dapat dipisah menjadi

dua himpunan bagian V1 dan V2, sedemikian setiap sisi pada G menghubungkan sebuah

simpul di V1 ke sebuah simpul di V2 dan di nyatakan G(V1, V2). Apabila setiap simpul di V1

Matematika diskrit IV-17

Page 18: BAB 4-Graf.pdf

Bab IV teori graf

bertetangga dengan semua simpul di V2 maka G(V1, V2) disebut sebagai graf bipartite

lengkap yang dilambangkan Km, n.

sebagai contoh diberikan graf bipartite sbb:

Gambar 4.18. Graf Bipartite

Simpul pada graf gambar 4.18 dapat dipisah atas himpunan

V1 ={A,C,F }dan V2 ={B,G,D,E }.

dan setiap sisi menghubungkan simpul –simpul di V1 dan di V2.

4.6. Representasi graf dalam bentuk matrik

Pada pemrograman komputer pernyataan graf dapat dipresentasikan dalam bentuk matrik

yang sering digunakan adalah matrik ketetanggaan, bersisian, senerai ketetanggaan.

4.6.1. Matriks ketetanggaaan(adjacency matrix)

Misalkan G =(V,E) adalah matrik dengan n buah simpul , n ≥ 1 maka matrik

ketetanggaan G adalah matrik berukuran n x n apabila matriks tersebut diberi nama B =

[bij ] maka bij = 1 apabila simpul i, j bertetangga langsung dan bij = 0 apabila simpul

tidak bertetangga langsung. Atau dinyatakan sebagai berikut matrik B = [bij ] dengan

⎩⎨⎧

=langsungggatanbertetidakjkedanisimpuljika,0

langsungggatanbertejkedanisimpuljika,1bij

Matematika diskrit IV-18

Page 19: BAB 4-Graf.pdf

Bab IV teori graf

Contoh 4.17: Diberikan graf sederhana sebagai berikut

Matriks ketetanggaan dari graf tersebut adalah

simpul ke i dan ke j yang bertetangga langsung diberi nilai 1 dan yang tidak langsung diberi

nilai 0

4.6.2. Matriks Bersisian ( incidency matrix)

Matrik bersisian menyatakan ke bersisian antara sisi dan simpul dari suatu graf.

Misalkan G = (V,E) adalah matrik dengan n buah simpul dan m buah sisi. Maka matrik

bersisian dari G adalah matrik berukuran nxm, baris menunjukkan label simpul dan

kolom menunjukkan label sisi. Apabila matriks tersebut diberi nama B = [bij ] maka bij

= 1 apabila simpul i bersisian langsung dengan sisi j, dan bij = 0 apabila simpul tidak

bersisian dengan sisi j, langsung, atau dinyatakan sebagai berikut matrik B = [bij ] dengan

⎩⎨⎧

=jkesisidenganlangsungbersisiantidakisimpuljika,0

jkesisidenganlangsungbersisianisimpuljika,1bij

Matematika diskrit IV-19

Page 20: BAB 4-Graf.pdf

Bab IV teori graf

Contoh 4.18 :

Matriks bersisian dari graf tersebut adalah

Simpul A bersisian langgung dengan sisi e1 dan e2 maka diberi nilai 1, tetapi tidak bersisian

langsung dengan sisi e3, e4 dan e5 maka diberi nilai nol.Begitu pula simpul-simpul yang

lain.

4.6.3. Senerai Ketetanggaan(adjacency list)

Kelemahan representasi graf dalam bentuk adjacency matrix dan incidency matrix,

matrik terkadang banyak memuat elemen nol hal ini menimbulkan pemborosan ditinjau

dari sisi penyimpanan akan di dalam komputer, karena komputer banyak menyimpan elemen

nol. Untuk mengatasi ini representasi graf dapat dinyatakan dalam bentuk senerai

ketetanggaan.

Contoh 4.19 : Diberikan graf sederhana sebagai berikut

Matematika diskrit IV-20

Page 21: BAB 4-Graf.pdf

Bab IV teori graf

Representasi senerai ketetanggaan graf tersebut sebagai berikut

A : B, D

B : A, C, D

C : B, D

D : A, B, C

Maksud dari pernyataan diatas :

a. Simpul A bertetangga langsung dengan simpul B dan D,

b. Simpul B bertetangga langsung dengan simpul A, C dan D,

c. Simpul C bertetangga langsung dengan simpul B dan D,

d. Simpul D bertetangga langsung dengan simpul A, B dan C ,

4.7.Graf Isomorfik(Isomorphic Graph)

Dua buah graf sama tetapi secara geometri berbeda disebut graf yang saling isomorfik.

Definisi 4.9: Dua buah graf G1 dan G2 dikatakan isomorfik apabila terdapat

korespondensi satu-satu antara simpul dan sisi pada kedua graf sedemikian apabila

sisi e bersisian dengan simpul A, B pada G1 maka sisi e’ yang berkorespondensi pada

G2 juga harus bersisian dengan simpul A’, B’ pada G2 .

Contoh 4.20:

Diberikan graf G dan G’

Tunjukkan kedua graf tersebut Isomorfik.

Matematika diskrit IV-21

Page 22: BAB 4-Graf.pdf

Bab IV teori graf

Jawab : Salah satu cara untuk mengetahui kedua graf tersebut isomorfik atau tidak

dengan memperhatikan korespondesi simpul pada graf G dan G’ tersebut yaitu

f : V(G) V(G’)

Huruf A, B, C, D merupakan simpul pada graf G dan V(G) adalah himpunan simpul-

simpul pada graf G sedangkan I, J, K, L merupakan simpul pada graf G’, V(G’)

himpunan simpul-simpul pada graf G’. Simpul-simpul dalam V(G) berkorespondensi 1-

1 dengan simpul pada V(G’) yang dinyatakan dengan f. Sedangkan hubungan antar sisi

dapat dilihat sbb:

sisi dari graf G sisi dari graf G’

{A,B} {K,I}= {g(A),g(B)}

{B,C} {I,J} = { g(B),g(C)}

{C,D} {J,L}= { g(A),g(D)}

Maka graf G dan G’ Isomorfik.

4.8. Graf Planar dan graf bidang

Definisi 4. 10 : Graf planar adalah graf yang dapat digambarkan pada bidang datar

dengan sisi-sisi yang tidak saling memotong (bersilangan).

Matematika diskrit IV-22

Page 23: BAB 4-Graf.pdf

Bab IV teori graf

Contoh 4.21

Gambar graf G mempunyai diagonal berpotongan , graf tersebut g dapat digambarkan

menjadi graf G’ dengan diagonal tidak saling berpotongan maka graf G desebut sebagai

graf planar.

Graf bidang adalah representasi graf planar yang digambarkan dengan sisi yang

tidak saling berpotongan. Sisi pada graf bidang membagi bidang datar menjadi beberapa

wilayah (region) atau muka (face).

Rumus euler : jumlah wilayah (f ) pada graf planar sederhana dapat dengan rumus

sebagai berikut

n - e + f = 2

atau

f = e - n + 2

4.9. Aplikasi Graf untuk Lintasan Terpendek : 4.9.1. Lintasan Terpendek (Short Path)

Permasalahan mencari lintasan terpendek dalam Graf merupakan salah satu

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, panjang

jaringan antara workstation dan sebagainya. Secara umum kata “terpendek” diartikan sebagai

bobot minimal pada suatu lintasan dalam graf. Asumsi yang digunakan adalah semua bobot

bernilai positif.

Matematika diskrit IV-23

Page 24: BAB 4-Graf.pdf

Bab IV teori graf

Contoh terapan pencarian lintasan terpendek misalnya:

Simpul pada graf dapat merupakan jalur pengiriman surat POS, sedangkan sisi

menyatakan jalan yang menghubungkan 2 buah kantor POS cabang. Bobot sisi graf dapat

dinyatakan jarak antara 2 buah kantor POS cabang atau rata-rata waktu tempuh antara 2 buah

kantor POS cabang. Apabila terdapat lebih dari 1 lintasan dari kantor POS cabang A ke

kantor POS cabang B, maka persoalan lintasan terpendek disini adalah menentukan jarak

terpendek atau waktu tersingkat dari kantor POS cabang A ke kantor POS cabang B.

Beberapa persoalan lintasan terpendek, antara lain :

a). Lintasan terpendek antara dua buah simpul tertentu

b). Lintasan terpendek antara semua pasangan simpul

c). Lintasan terpendek dari simpul tertentu ke semua simpul yang lain

d). Lintasan terpendek antara dua buah simpul yang melalui beberapa simpul tertentu

Persoalan a). mirip dengan persoalan c), karena pencarian terpendek pada jenis persoalan

c). dapat dihentikan apabila simpul tujuan yang dikehendaki telah ditemukan lintasan

terpendeknya.

Deskripsi persoalan lintasan terpendek pada jenis persoalan c adalah sebagai berikut :

Diberikan graf berbobot G = (V,E) dan sebuah simpul awal A tentukan lintasan

terpendek dari simpul A kesimpul lainnya didalam G.

Contoh 4.20. Diberikan graf jalur transpotasi biskota anggka 5 menyatakan terminal,

angka 1,2,3 dan 4 menyatakan sub terminal sbb

Gambar 4.18 Jalur transpotasi biskota

Matematika diskrit IV-24

Page 25: BAB 4-Graf.pdf

Bab IV teori graf

Akan ditentukan lintasan terpendek dari sub terminal 1 ke semua sub terminal pada graf

gambar 4.18.

Jawab :

Untuk menjawab permasalahan tersebut diberikan tabel lintasan terpendek yang dapat

ditempuh dari sub terminal 1 ke sub terminal lainnya, arah panah menunjukkan jalan yang

boleh dilewati adalah sbb.

Tabel 4.1. menentukan lintasan terpendek

Simpul asal

Simpul tujuan

Lintasan terpendek jarak

1 3 1,3 10

1 4 1,3,4 25

1 2 1,3,4,2 45

1 5 1,5 45

1 6 Tidak ada -

dari tabel 4.1 dapat dilihat bahwa lintasan terpendek dari sub terminal 1 ke sub terminal 2

harus melalui sub terminal 3 dan 4. Lintasan terpendek dari sub terminal 1 ke sub terminal 5

langsung dari melalui sub terminal 1 ke 5. Sub terminal 6 tidak dapat ditempuh dari sub

terminal manapun karena jalannya satu arah.

4.9.2. Algoritma Dijkstra Algoritma lintasan terpendek yang terkenal adalah algoritma Disjktra. Dalam naskah

aslinya Algoritma Disjktra diterapkan untuk mencari lintasan terpendek pada graf berarah,

tetapi algoritma ini juga dapat digunakan untuk graf tak berarah. Algoritma Dijkstra mencari

lintasan terpendek dalam sejumlah langkah. Algoritma ini menggunakan prinsip greedy.

Prinsip greedy pada algoritma Disjktra menyatakan bahwa pada setiap langkah kita memilih

sisi yang berbobot minimum dan memasukkannya ke dalam himpunan penyelesaian.

Matematika diskrit IV-25

Page 26: BAB 4-Graf.pdf

Bab IV teori graf

Misalkan ada sebuah graf berbobot dengan n buah simpul dinyatakan dengan matriks

ketetanggaan M = [mij], dengan

⎪⎩

⎪⎨

∞==

===

jkeisimpuldarisisiadatidakjikamijmii

mmberarahtakgrafpadajisisibobotmm

jiijij

ij

,0

),,(

Kita juga menggunakan tabel S = [si] dengan

⎩⎨⎧

==

=terpendeklintasankedalamtermasuktidakisimpuljika,0

terpendeklintasankedalamtermasukisimpuljika,1

i

iij s

ss

dan tabel D = [di] yang dimana di = panjang lintasan dari simpul awal ke simpul i

Algoritma Dijkstra dinyatakan dalam notasi pseudo-code sebagai berikut:

Procedure Dijkstra (input m: matriks, a: simpul awal)

{ Mencari lintasan terpendek dari simpul awal a ke semua simpul lainnya

Masukan : matriks ketetanggaan (m) dari graf berbobot G dan simpul awal a

Keluaran : lintasan terpendek dari a ke semua simpul lainnya}

Deklarasi s1, s2, …, sn : Integer { tabel integer}

d1, d2, , dn : integer {tabel integer}

I, j, k : integer

Algoritma

{Langkah 0 (inisialisasi:}

For i ← 1 to n do

S1 ← 0

d1 ← mai

endfor

{ Langkah 1: }

Matematika diskrit IV-26

Page 27: BAB 4-Graf.pdf

Bab IV teori graf sa ← 0 { karena simpul a adalah simpul asal lintasan terpendek,

jadi simpul a sudah

pasti terpilih dalam lintasan terpendek}

da ← ∞ { tidak ada lintasan terpendek dari simpul a ke a}

{ Langkah 2, 3, …, n-1: }

For k ← 2 to n-1 do

j ← 0 simpul dengan sj = 0 dan dj minimal

sj ← 1 { simpul j sudah terpilih ke dalam lintasan terpendek }

{ perbaharui tabel d }

For semua simpul i dengan sj = 0 do

If dj + mji < di then

di ← dj + mji

endif

endfor

endfor

Algoritma 4.1. Djikstra untuk mencari lintasan terpendek

Dari gambar 4.18 contoh 4.20, diperoleh matriks ketetanggaan M sebagai berikut :

j = 1 2 3 4 5 6

i = 1 0 50 10 40 45 ∞

2 ∞ 0 15 ∞ 10 ∞

3 20 ∞ 0 15 ∞ ∞

4 ∞ 20 ∞ 0 35 ∞

5 ∞ ∞ ∞ 30 0 ∞

6 ∞ ∞ ∞ 3 ∞ 0

Perhitungan lintasan terpendek dari simpul awal a = 1 ke semua simpul lainnya

ditabulasikan sebagai berikut :

Lelaran Simpul yang

dipilih Lintasan S D

1 2 3 4 5 6 1 2 3 4 5 6 inisial - - 0 0 0 0 0 0 0 50

(1,2) 10

(1,3) 40

(1,4) 45

(1,5) ∞

(1,6)

1 1 1 1 0 0 0 0 0 ∞ 50 (1,2)

10 (1,3)

40 (1,4)

45 (1,5)

∞ (1,6)

Matematika diskrit IV-27

Page 28: BAB 4-Graf.pdf

Bab IV teori graf

2 3 1,3 1 0 1 0 0 0 ∞ 50 (1,2)

10 (1,3)

25 (1,3,4)

45 (1,5)

3 4 1,3,4 1 0 1 1 0 0 ∞ 45 (1,3,4,2)

10 (1,3)

25 (1,3,4)

45 (1,5)

∞ (1,6)

4 2 1,3,4,2 1 1 1 1 0 0 ∞ 45 (1,3,4,2)

10 (1,3)

25 (1,3,4)

45 (1,5)

∞ (1,6)

5 5 1,5 1 1 1 1 1 0 ∞ 45 (1,3,4,2)

10 (1,3)

25 (1,3,4)

45 (1,5)

∞ (1,6)

Keterangan : Angka-angka di dalam tanda kurung menyatakan lintasan terpendek dari simpul

1 ke simpul lainnya.

Jadi, lintasan terpendek dari simpul :

1 ke 3 adalah 1,3 dengan panjang = 10

1 ke 4 adalah 1,3,4 dengan jarak = 25

1 ke 2 adalah 1,3,4,2 dengan jarak = 45

1 ke 5 adalah 1,5 dengan jarak = 45

1 ke 6 tidak ada lintasan

Resume: 1. Graf didefinisikan sebagai pasangan himpunan (V,E) yang dinyatakan

G = (V,E), dengan V merupakan himpunan berhingga dan tidak kosong dari simpul-

simpul (vertices atau node) dapat dinyatakan dengan V = { V1 , V2 … Vn } dan

E merupakan himpunan sisi ( edges atau ars) yang menghubungkan sepasang simpul,

dinyatakan dengan E = {e1, e2, e3, … en }

2. Graf sederhana (simple graph ), adalah graf yang tidak mengandung gelang(loop)

maupun sisi-sisi ganda.

Graf tak-sederhana (unsimple graph ), adalah graf yang mengandung sisi ganda atau

gelang, terdapat dua macam graf tak sederhana yaitu:

a. Graf ganda (multigraph) yaitu graf G = (V, E) yang mengandung sisi ganda dan

V merupakan himpunan tidak kosong, E mengandung sisi ganda.

b. Graf semu (pseudograph) yaitu graf yang mengandung gelang(loop). Graf semu

lebih umum karena dapat terhubung dengan dirinya sendiri.

Matematika diskrit IV-28

Page 29: BAB 4-Graf.pdf

Bab IV teori graf

3. Beberapa Graf Sederhana Khusus

a. Graf Lengkap (complete Graph), adalah graf sederhana yang setiap simpulnya

mempunyai sisi ke semua simpul lainnya. Graf lengkap dengan n buah simpul

dilambangkan dengan Gn .Jumlah sisi pada graf lengkap yang terdiri atas n

buah simpul adalah n(n-1)/2.

b. Graf lingkaran, adalah graf sederhana yang setiap simpulnya berderajad dua.

c. Graf Teratur ( Regular Graphs ), adalah graf yang setiap simpulnya berderajad

sama , apabila derajad setiap simpul adalah r maka graf tersebut disebut sebagai

graf teratur berderajad r.

d. Graf Bipartite (Bipartite Graph), adalah suatu graf misalkan diberi nama G yang

simpulnya dapat dipisah menjadi dua himpunan bagian V1 dan V2,

sedemikian setiap sisi pada G menghubungkan sebuah simpul di V1 ke sebuah

simpul di V2 dan di nyatakan G(V1, V2). Apabila setiap simpul di V1

bertetangga dengan semua simpul di V2 maka G(V1, V2) disebut sebagai graf

bipartite lengkap yang dilambangkan Km, n.

Referensi :

1. Deo N, 1984, Graph theory with Applications to Engineering and Computer

Science, Prentice-Hall .

2. Johnsonbaugh, 2005, Discrete Mathematics , Prentice Hall.

3. Liu C.L , 1997, Dasar- dasar Matematika Diskret Mc. Graw-Hill Inc.

4. Munir R, 2005, Matematika Diskrit', Informatika Bandung.

. 5. Susana, 2004, “ Discrete Mathematics with Aplications “, Thomson Learning Inc

Singapore.

Matematika diskrit IV-29

Page 30: BAB 4-Graf.pdf

Bab IV teori graf Latihan:

4.1. Tentukan jumlah simpul pada graf sederhana bila mempunyai 12 buah sisi dan tiap

simpul berderajad dua.

4.2. Ada n buah komputer yang akan dihubungkan dengan sejumlah kabel, baik secara

langsung atau terhubung melalui komputer lainnya. Berapa jumlah minimum kabel

yang dibutuhkan.

4.3. Dapatkah kita menggambar graf teratur derajad 3 dengan 6 buah simpul.

4.4. Tentukan jumlah simpul pada graf sederhana apabila graf tersebut mempunyai 12

buah sisi dan tiap simpul berderajad dua.

4.5. Tentukan jumlah simpul pada graf sederhana apabila graf tersebut mempunyai 20

buah sisi dan tiap simpul berderajad sama.

4.6. Dapatkah kita menggambar graf teratur derajad 3 dengan 7 buah simpul.

4.7. Diketahui matriks ketetanggaan dari sebuah graf sebagai berikut

⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜

0101110110011101110110010

Gambarkan graf yang dimaksud, notasi simpul bebas.

4.8. Persoalan pengaturan tempat duduk , sembilan anggota klub penggemar matematika

diskrit bertemu tiap hari untuk makan siang pada suatu meja bundar. Memeka

berkeinginan untuk duduk sedemikian sehingga setiap anggota mempunyai tetangga

duduk yang berbeda pada setiap makan.Berapa hari pengaturan dapat dilaksanakan.

Matematika diskrit IV-30

Page 31: BAB 4-Graf.pdf

Bab IV teori graf

4.9. Berapa jumlah minimum simpul yang diperlukan agar sebuah graf dengan 11 buah

sisi menjadi planar.

4.8. Diberikan Peta jalur transpotasi suatu kota sbb :

A 5 B

20 25 20 17

E C 5 D

Nyatakan representasi graf untuk jalur transpotasi tersebut dalam bentuk matriks M =

(mij), dimana nilai mij = 0 jika jalur tidak terhubung langsung dan mij = angka pada

masing ruas jika terhubung langsung. A,B,C,D dan E menyatakan terminal, angka pada

tiap ruas menyatakan jarak antar terminal dan arah panah menyatakan jalur yang boleh

dilalui.

4.9. Tuliskan representasi matriks adjacency

M= {aij}= i ji j

, apabila v , v tak terhubung langsungbobot pada sisi, apabila v , v terhubung langsung∞⎧

⎨⎩

dari graph berikut :

4.10. Diberikan graf yang menyatakan jalur transpotasi tempat pariwisata di Bali, apabila

simpul menyatakan tempat pariwisata sedangkan sisi menyatakan jarak antara lokasi.

Matematika diskrit IV-31

Page 32: BAB 4-Graf.pdf

Bab IV teori graf

- Tentukan kemungkinan jalur yang dapat dilewati untuk mengunjungi setiap lokasi,

dengan ketentuan setiap simpul(lokasi) hanya dilewati satukali dari simpul A ke

A kembali .

- Tentukan jalur terpendek untuk dapat mengunjungi semua tempat wisata tersebut

Apabila graf yang dimaksud adalah :

Matematika diskrit IV-32