165
RELASI, FUNGSI & GRAPH Mata Kuliah : Teori Bahasa dan Otomata Pertemuan : 3 (Tiga) UNIVERSITAS PUTERA BATAM

Teori bahasa dan otomata 3

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Teori bahasa dan otomata 3

RELASI, FUNGSI & GRAPH

Mata Kuliah : Teori Bahasa dan OtomataPertemuan : 3 (Tiga)

UNIVERSITAS PUTERA BATAM

Page 2: Teori bahasa dan otomata 3

POKOK BAHASAN

Review (Definisi) Definisi Relasi Sifat - Sifat Relasi Komposisi Relasi Fungsi

Page 3: Teori bahasa dan otomata 3

Review Menurut http://dictionary.cambridge.org/

automatonnoun [C] plural automatons or automataa machine which operates on its own without the need for human control, or a person who acts like a machine, without thinking or feeling: I do the same route to work every day, like some sort of automaton.

Definisi informal matematis: Teori yang membahas mesin sekuensial abstrak yang menerima input berupa barisan simbol diskrit dan mengeluarkan output dalam bentuk diskrit.

Contoh aplikasi teori bahasa dan otomata:Vending machine, kunci kombinasi, kompilasi bahasa pemrograman, parser signature untuk kemanan kompuer, sirkuit dalam chip/VLSI dan berbagai sistem digital.

Page 4: Teori bahasa dan otomata 3

Bahasa: Himpunan dari string-string yang dibentuk dari suatu alfabet, dinotasikan L.L1 = {a, aa, ab, aaa, aba, armin} adalah sebuah bahasa atas alfabet 1.

armin L1 karena string armin terdapat dalam L1.

L11 = {a, aa, ab} adalah sub-bahasa dari L1, ditulis L11 L1.

L2 = {0, 123, 081123456} adalah sebuah bahasa atas 2. Bahasa kosong adalah bahasa yang tidak memiliki string, dinotasikan .

Review

Page 5: Teori bahasa dan otomata 3

Definisi Relasi

Aksi menghubungkan dua objek, satu objek dengan objek lainnya

Contoh relasi dalam kehidupan sehari-hari Relasi orangtua antara bapak dengan anak Relasi memperkerjakan antara majikan dan pegawai

Contoh relasi pada aritmatika Kurang dari Lebih besar dari

Contoh dalam geometric Relasi antara luas bujur sangkar dengan panjang sisinya

Page 6: Teori bahasa dan otomata 3

Definisi Relasi

Suatu “relasi R’” terdiri daria.Sebuah himpunan Ab.Sebuah himpunan Bc.Suatu kalimat terbuka P (x,y) dimana P (a.b) adalah benar atau salah untuk sembarang pasangan terurut (a,b) yang termasuk dalam A X B

Maka dapat disebut R adalah suatu relasi dari A ke B dan menyatakan denganR = (A, B, P (x,y))Selanjutnya, jika P (a,b) adalah benar ditulis aRbyang berarti ”a berhubungan dengan b”“A X B’” berarti A cross B, yang didefinisikan sebagai{<a, b> a A dan b B}∈ ∈

Page 7: Teori bahasa dan otomata 3

Definisi RelasiContoh 1:

Via: aku senang permen dan coklatAndre: aku senang coklat dan es krimIta: aku suka es krim

Dari contoh di atas dapat dibuat dua himpunan, yaitu : -Himpunan A adalah himpunan nama orangA = { Via, Andre, Ita }-Himpunan B adalah himpunan makanan kesukaan B = { es krim, coklat, permen }

Relasi dari himpunan A ke himpunan B adalah "makanan kesukaan" dan dapat dinyatakan dengan 3 cara

Page 8: Teori bahasa dan otomata 3

Definisi Relasivia

Andre

Ita

permen

coklat

es krim

via andre ita

permen

coklat

es kr im

a. Diagram panah

b.Himpunan pasangan berurutan (Relasi biner){ (Via,permen) , (Via,coklat) , (Andre,coklat) , (Andre,es krim) , (Ita,es krim)}

c. Diagram Cartesius

BbAabaBA ,,

D(R) = {a | ( b)(a,b) S)}∍ ∈

Page 9: Teori bahasa dan otomata 3

Definisi RelasiContoh 2:Relasi “kurang dari’”dilambangkan “<”Sesungguhnya “<” adalah nama himpunan dengan anggota-anggotanyapasangan berurutan atau relasi “<”, yaitu :< = {(a,b) a,b adalah bilangan real dan x kurang dari y}R = {(1,2), (2,10), (⅓,⅔)}

Contoh 3:Misalkan A = {2, 3, 4} dan B = {2, 4, 8, 9, 15}. Jika kitadefinisikan relasi R dari A ke B dengan(a, b) R jika a habis membagi bmaka kita perolehR = {(2, 2), (2, 4), (4, 4), (2, 8), (4, 8), (3, 9), (3, 15)}

Page 10: Teori bahasa dan otomata 3

Sifat-sifat Relasi

1. ReflexiveJika untuk setiap a A, aRa, maka (a,a) R∈ ∈

2. SymmetricJika untuk setiap a dan a dalam A, ketika aRb, maka bRa.

3. TransitiveJika untuk setiap a, b, c dalam A, ketika aRb dan bRc, maka aRc

4. IrreflexiveJika untuk setiap a A, maka (a,a) R∈ ∉

5. AntisymmetricJika untuk setiap a dan b dalam A, ketika aRb dan bRa, maka a = b.

Page 11: Teori bahasa dan otomata 3

Contoh 4:

Misalkan

Relasi didefinisikan sebagai

Periksa apakah refleksif?

Penyelesaian :

Ambil ,karena , maka

Jadi tidak refleksif.

5,4,3,2,1,0,1,2,3,4,5 A

0,,, abAbaba

Aa 00 00.0 0,0

Sifat-sifat Relasi

Page 12: Teori bahasa dan otomata 3

Contoh 5:

Misalkan

Relasi didefinisikan sebagai

Periksa apakah simetris?

Penyelesaian :

Jadi simetris.

0,,, abAbaba

2,1,0,1,2 A

2,1,1,1,1,1,2,1

Sifat-sifat Relasi

Page 13: Teori bahasa dan otomata 3

Contoh 6:

Misalkan

Relasi didefinisikan sebagai

Periksa apakah transitif?

Penyelesaian :

Jadi transitif.

baAbaba ,,,

1,0,1A

1,0,0,0,1,1,0,1,1,1

Sifat-sifat Relasi

Page 14: Teori bahasa dan otomata 3

Sifat-sifat RelasiContoh 7:

Jika A = {1, 2, 3, 4}, berikut diberikan relasi atas A:R1 = {(1, 1), (1, 2), (2, 1), (2, 2), (3, 4), (4, 1), (4, 4)}R2 = {(1, 1), (1, 2), (2, 1)}R3 = {(1, 1), (1, 2), (1, 4), (2, 1), (2,2), (3, 3), (4, 1), (4,4)}R4 = {(2, 1), (3, 1), (3, 2), (4, 1), (4, 2), (4, 3)}R5 = {(1, 1), (1, 2), (1, 3), (1, 4), (2, 2), (2, 3), (2, 4), (3, 3),(3,4), (4, 4)}R6 = {(3, 4)}R7 = {(1, 1)}R8 = {(1, 1), (1, 2), (3, 4), (4, 3)}

Manakah dari kedelapan relasi di atas yang masing-masing bersifat: refleksif, simetri, anti simetri, transitif, dan yang bukan simetri sekaligus bukan antisimetri.

Page 15: Teori bahasa dan otomata 3

Sifat-sifat Relasi

Jawaban:

1)Pada relasi-relasi tersebut yang bersifat refleksif adalah: R3, dan R5. 2)R1 tidak refleksif karena (3, 3) R1.3)Relasi yang bersifat simetri: R2, R3, R7 dan R8.4)Relasi yang bersifat antisimetri: R4, R6, dan R7.5)Relasi yang bersifat transitif: R5, R6, dan R7.

Page 16: Teori bahasa dan otomata 3

Sifat-sifat Relasi

Tinjauan:

Untuk melihat R3 tidak bersifat transitif, dapat menggunakan tabel berikut:

(a,b) (b,c) (a,c) Keterangan

(1,1) (1,2) (1,2) Anggota R3

(1,2) (2,2) (1,2) Anggota R3

(1,4) (4,1) (1,1) Anggota R3

(2,1) (1,4) (2,4) Bukan Anggota R3

(2,2) (2,1) (2,1) Anggota R3

Page 17: Teori bahasa dan otomata 3

Komposisi Relasi

R o S = {(x,z) x X z Z ( y)(y ∈ ∧ ∈ ∧ ∍ ∈Y (x,y) R (y,z) S)}∧ ∈ ∧ ∈

Untuk komposisi dengan relasi itu sendiri, ditunjukkan dengan:

R o R = R2

R o R o R = R o R2 = R3

….….R o Rm-1 = Rm

Page 18: Teori bahasa dan otomata 3

Komposisi Relasi

Contoh :

Misalkan

Carilah

Penyelesaian :

dbcbaabcbaaa ,,,,&,,,, 21

dcccdacaaa ,,,,,,,,,21

21

Page 19: Teori bahasa dan otomata 3

Komposisi Relasi Contoh :f(x) = 2x + 5 dan g(x) = x2 – 1,  makaf o g (x) = 2 (x2 – 1) + 5 = 2x2 – 2 + 5 = 2x2 + 3g o f (x) = (2x+5)2 – 1 = 4x2 + 20x + 25 – 1 = 4x2 + 20x + 24

Kata kunci :#  f o g (x) artinya untuk setiap variable fungsi f disubtitusikan dengan fungsi g(x)#  g o f (x) artinya untuk setiap variable fungsi g disubtitusikan dengan fungsi f(x)

Page 20: Teori bahasa dan otomata 3

PENGERTIAN FUNGSI

Definisi : Misalkan A dan B dua himpunan takkosong. Fungsi dari A ke B adalah aturan yang mengaitkan setiap anggota A dengan tepat satu anggota B.

ATURAN : setiap anggota A harus habis terpasang

dengan anggota B. tidak boleh membentuk cabang seperti ini.

A B

Fungsi

Page 21: Teori bahasa dan otomata 3

ILUSTRASI FUNGSI

A f B

Input Kotak hitam Output

Ditulis f : A → B, dibaca f adalah fungsi dari A ke B. A disebut domain,B disebut kodomain. Elemen a ∈ A disebut argumen dan f(a) ∈ B dise-but bayangan(image) dari a.

Himpunan Rf:= { y ∈ B : y = f(x) untuk suatu x ∈ A } disebut daerahjelajah (range) fungsi f dalam B. Bila S ⊂ A maka himpunanf(S) := { f(s) : s ∈ S } disebut bayangan (image) himp S oleh fungsi f.

Fungsi

Page 22: Teori bahasa dan otomata 3

ILUSTRASI FUNGSI (LANJ)

Fungsi

Bukan fungsi, sebab ada elemen A yangmempunyai 2 kawan.

Bukan fungsi, sebab ada elemen A yangtidak mempunyai kawan.

A B

Fungsi

Page 23: Teori bahasa dan otomata 3

GRAFIK FUNGSI Misalkan f: A B. Grafik fungsi f adalah himpunan pasangan

terurut {(a,f(a) | a ∈ }A

: = {1, 2, 3} Contoh Misalkan A dan B= {1, 2}, (1)=1, fungsi f didef sbg f(2)=2, (3)=1. f f Maka grafik fungsi f

:dapat digambarkan sbb

A

B

Fungsi

Page 24: Teori bahasa dan otomata 3

CONTOH FUNGSI

1. Fungsi kuadrat f : R → R, dimana f(x) := x2+x+1.

2. Fungsi nilai mutlak f : R → R+ , dimana

fungsi ini ditulis juga f(x) := |x|.3. Misalkan A = himpunan semua negara di dunia dan B = himpunan semua kota di dunia, f : A → B dimana f(x) := ibukota negara x. = Bila x Malaysia ( ) = , ( ) = .maka f x Kuala Lumpur f Inggris London4. Misalkan A = himpunan semua buku di perpustakaan dan diberikan perintah “diberikan buku b dan hitung banyak tanda koma pada buku b tsb”. Ini mendef. fungsi f : A → Z+ dimana f(x) = banyak koma yang ada

pada buku x.5. Misalkan A = himpunan semua string bit dan B = himpunan bil bulat positif Fungsi f : A B dimana f(S) = banyaknya bit 1 pada string S. Bila S = (1001101) maka f(S) = 4.

0 jika

0 jika :)(

xx

xxxf

Fungsi

Page 25: Teori bahasa dan otomata 3

FUNGSI SATU-SATU (INJEKTIF) Fungsi f dikatakan satu-satu atau injektif bila hanya bila

[f(x) = f(y) → x = y ], atau [x y → f(x) f(y)].Bila kita dapat menunjukkan bahwa kuantor berikut TRUE:

∀x ∀y [f(x) = f(y) x = y] atau ∀x ∀y [x → y f(x) f(y)]

maka fungsi f disimpulkan satu-satu.Namun, bila ada x dan y dengan x y tetapi f(x) = f(y) maka f

tidak satu-satu.

A B A B

satu-satu tidak satu-satu

Fungsi

Page 26: Teori bahasa dan otomata 3

CONTOH: Diberikan fungsi f dari {a, b, c, d} ke {1, 2, 3, 4, 5} dengan f(a)=4, f(b)=5, f(c)=1 dan f(d) = 3 merupakan fungsi injektif ?

PENYELESAIAN: karena tidak ada anggota B yang mempunyai pasangan ganda pada A mk fungsi ini injektif.

CONTOH: Apakah fungsi f: R R dengan f(x) = x2 satu-satu ?

PENYELESAIAN: Ambil x = 1 dan y = -1, diperoleh f(x) = f(y) = 1. Jadi ada x, y dengan x ≠ y tetapi f(x) = f(y). Disimpulkan fungsi ini tidak satu-satu.

CONTOH: Apakah fungsi dari R ke R ini g(x) = x+5 injektif?

PENYELESAIAN: ambil sebarang x, y dengan x ≠ y , diperoleh

x + 5 ≠ y + 5 g(x)≠ fgy). Jadi g injektif.

FUNGSI SATU-SATU (INJEKTIF)

Page 27: Teori bahasa dan otomata 3

FUNGSI KEPADA (SURJEKTIF)

Fungsi f : A → B dikatakan kepada atau surjektif jika setiap y ∈ B terdapat x ∈A sehingga y = f(x), yaitu semua anggota B habis terpasang dengan anggota A. Jadi bila kita dapat membuktikan kebenaran kuantor berikut:

∀y∈ B ∃x∈ A sehingga y = f(x)maka f surjektif. Namun, bila ada y∈ B sehingga setiap x∈A, f(x)≠ ymaka f tidak surjektif.A B A B

kepada tidak kepada

Fungsi

Page 28: Teori bahasa dan otomata 3

CONTOH: Apakah fungsi f(x) = x2 dari R ke R surjektif ?

PENYELESAIAN: Ambil y = -1 suatu bilangan real. Maka untuk setiap bilangan real x, berlaku x2 = f(x)≠ y. Jadi, f tidak surjektif.

CONTOH: Apakah fungsi linier h(x)= x-3 dari R ke R surjektif?

PENYELESAIAN: Ambil seb bil real y, maka

y = x-3 x = y+3 memenuhi h(x) = y. Jadi h surjektif.

FUNGSI KEPADA (SURJEKTIF)

Fungsi

Page 29: Teori bahasa dan otomata 3

FUNGSI BIJEKTIF

Fungsi f : A → B dikatakan bijektif bila ia injektif dan surjektif. Pada fungsi bijektif, setiap anggota B mempuyai tepat satu pra-bayangan di A.

CONTOH: Apakah fungsi f:{a,b,c,d} {1,2,3,4} dengan f(a)=4, f(b)=2, f(c)=1 dan f(d)=3 bijektif.PENYELESAIAN: karena semua nilainya berbeda mk fungsi ini satu-satu. Karena semua anggota B habis terpasang maka ia surjektif. Jadi fungsi ini bijektif.

A B

fungsi bijektif

Fungsi

Page 30: Teori bahasa dan otomata 3

INVERS FUNGSI

Misalkan f : A → B fungsi bijektif. Invers fungsi f adalah fungsi yang mengawankan setiap elemen pada B dengan tepat satu elemen pada A. Invers fungsi f dinyatakan dengan f -1 dimana

f -1 : B → . ,A DKLy = f(x) ↔ = x f -1 (y)

Fungsi yang mempunyai invers disebut invertibel.

A B

b=f(a)

f(a)

f -1(b)

f -1(b)=a

Fungsi

Page 31: Teori bahasa dan otomata 3

CONTOH: Misalkan f fungsi dari {a, b, c} ke {1, 2, 3} dengan aturan f(a)=2, f(b)=3 dan f(c)=1. Apakah f invertibel. Jika ya, tentukan inversnya.

PENYELESAIAN: fungsi f bijeksi sehingga ia invertibel

dengan f -1(1)=c, f -1(3)=b dan f -1(2)=a.

CONTOH: Misalkan f fungsi dari Z ke Z dengan f(x) = x2. Apakah f invertibel.

PENYELESAIAN: Karena fungsi tidak injektif maupun bijektif

maka ia tidak invertibel. Jadi invresnya tidak ada.

INVERS FUNGSI

Fungsi

Page 32: Teori bahasa dan otomata 3

KOMPOSISI FUNGSI Misalkan g: A B dan f: B C. Komposisi fungsi

f dan g, dinotasikan f ◦ g adalah fungsi f ◦ g: A C dengan (f ◦ g)(x):= f(g(x)).

Bila f: A B dan g: D E maka fungsi komposisi f ◦ g terdefinisi hanya bila f(A) D.

A B C

g f

f◦ g

Fungsi

Page 33: Teori bahasa dan otomata 3

Graph

Graph digunakan untuk merepresentasikan objek-objek diskrit dan hubungan antara objek-objek tersebut.

Gambar berikut ini sebuah graph yang menyatakan peta jaringan jalan raya yang menghubungkan sejumlah kota di Provinsi Jawa Tengah.

Page 34: Teori bahasa dan otomata 3

Graph

Brebes Tegal

Slawi

Pemalang

Purwokerto

Cilacap

Banjarnegara

Wonosobo

Kebumen

Purworejo

KendalSemarang

Pekalongan

Purbalingga

Magelang

Salatiga

Klaten

Solo

Purwodadi

DemakKudus

Rembang

Blora

Sukoharjo

Wonogiri

SragenBoyolali

Kroya

Temanggung

Page 35: Teori bahasa dan otomata 3

Graph

Sejarah Graph: masalah jembatan KÖnigsberg (tahun 1736)

C

A

B

D

Page 36: Teori bahasa dan otomata 3

Graph yang merepresentasikan jembatan KÖnigsberg:

Simpul (vertex) menyatakan daratanSisi (edge) menyatakan

jembatanBisakah melalui setiap jembatan tepat sekali dan kembali lagi ke tempat semula?

Graph

Page 37: Teori bahasa dan otomata 3

Definisi Graph

Graph G = (V, E), yang dalam hal ini:

V = himpunan tidak-kosong dari simpul-simpul

(vertices)

= { v1 , v2 , ... , vn }

E = himpunan sisi (edges) yang

menghubungkan sepasang simpul

= {e1 , e2 , ... , en }

Page 38: Teori bahasa dan otomata 3

Graph

1 1 1

2 3

4

2 3

4

2

4

3

e1

e2

e3

e4

e5

e6

e7

e1

e2

e3

e4

e5

e6

e7

e8

G1 G2 G3

Page 39: Teori bahasa dan otomata 3

Graph

Graph G1 G1 adalah graph dengan

V = { 1, 2, 3, 4 }

E = { (1, 2), (1, 3), (2, 3),

(2, 4), (3, 4) }

1

23

4

Page 40: Teori bahasa dan otomata 3

Graph

Graph G2 G2 adalah graph dengan

V = { 1, 2, 3, 4 }

E = { (1, 2), (2, 3), (1, 3),

(1, 3), (2, 4), (3, 4),

(3, 4) }

= { e1, e2, e3, e4, e5,

e6, e7}

1

2 3

4

e 1

e 2

e 3

e 4

e 5e 6

e 7

Page 41: Teori bahasa dan otomata 3

Graph

Graph G3 G3 adalah graph dengan

V = { 1, 2, 3, 4 }

E = { (1, 2), (2, 3), (1, 3),

(1, 3), (2, 4), (3, 4),

(3, 4), (3, 3) }

= { e1, e2, e3, e4, e5, e6,

e7, e8}

1

2

4

3

e1

e2

e3

e4

e5

e6

e7

e8

Page 42: Teori bahasa dan otomata 3

Graph

Graph G2 Pada G2, sisi e3 = (1, 3) dan sisi e4 = (1, 3) dinamakan sisi-ganda (multiple edges atau paralel edges) karena kedua sisi ini menghubungi dua buah simpul yang sama, yaitu simpul 1 dan simpul 3. 4

1

2 3

e 1

e 2

e 3

e 4

e 5e 6

e 7

Page 43: Teori bahasa dan otomata 3

Graph

Graph G3 Pada G3, sisi e8 = (3, 3) dinamakan gelang atau kalang (loop) karena ia berawal dan berakhir pada simpul yang sama.

1

2

4

3

e1

e2

e3

e4

e5

e6

e7

e8

Page 44: Teori bahasa dan otomata 3

Jenis-Jenis Graph

Berdasarkan ada tidaknya gelang atau sisi ganda pada suatu graph, maka graph digolongkan menjadi dua jenis:

1. Graph sederhana (simple graph).2. Graph tak-sederhana (unsimple-graph).

Page 45: Teori bahasa dan otomata 3

Graph sederhana (simple graph)

Graph yang tidak mengandung gelang maupun sisi-ganda dinamakan graph sederhana. G1 adalah contoh graph sederhana

1

23

4

Page 46: Teori bahasa dan otomata 3

Graph tak-sederhana (unsimple-graph)

Graph yang mengandung sisi ganda atau gelang dinamakan graph tak-sederhana (unsimple graph). G2 dan G3 adalah contoh graph tak-sederhana

1

2

4

3

e1e2

e3e4

e5e6

e7

e8

1

2 3

4

e1e2

e3e4

e5e6

e7

Page 47: Teori bahasa dan otomata 3

Jenis-Jenis Graph

Berdasarkan jumlah simpul pada suatu graph, maka secara umum graph dapat digolongkan menjadi dua jenis:

1. Graph berhingga (limited graph)

2. Graph tak-berhingga (unlimited

graph)

Page 48: Teori bahasa dan otomata 3

Graph berhingga (limited graph)

Graph berhingga adalah graph yang jumlah simpulnya, n, berhingga.

Page 49: Teori bahasa dan otomata 3

Graph tak-berhingga (unlimited graph)

Graph yang jumlah simpulnya, n, tidak berhingga banyaknya disebut graph tak-berhingga.

Page 50: Teori bahasa dan otomata 3

Jenis Graph

Berdasarkan orientasi arah pada sisi, maka secara umum graph dibedakan atas 2 jenis:

1. Graph tak-berarah (undirected graph) Graph yang sisinya tidak mempunyai orientasi arah

disebut graph tak-berarah. Tiga buah graph pada Gambar 2 adalah graph tak-berarah.

2. Graph berarah (directed graph atau digraph) Graph yang setiap sisinya diberikan orientasi arah

disebut sebagai graph berarah. Dua buah graph pada Gambar 3 adalah graph berarah.

Page 51: Teori bahasa dan otomata 3

Jenis-Jenis Graph

Berdasarkan orientasi arah pada sisi, maka secara umum graph dibedakan atas 2 jenis: 1. Graph tak-berarah (undirected graph)

2. Graph berarah (directed graph atau digraph)

Page 52: Teori bahasa dan otomata 3

Graph tak-berarah (undirected graph)

Graph yang sisinya tidak mempunyai orientasi arah disebut graph tak-berarah. Graph G1, G2, dan G3 adalah graph tak-berarah.

1 1 1

2 3

4

2 3

4

2

4

3

e1

e2

e3

e4

e5

e6

e7

e1

e2

e3

e4

e5

e6

e7

e8

Page 53: Teori bahasa dan otomata 3

Graph berarah (directed graph atau digraph)

Graph yang setiap sisinya diberikan orientasi arah disebut sebagai graph berarah.

1 1

2 3

4

2 3

4

(a) G4 (b) G5

(a) graph berarah, (b) graph-ganda berarah

Page 54: Teori bahasa dan otomata 3

Jenis-jenis graph [ROS99]

Jenis Sisi Sisi gandadibolehkan

?

Sisi gelangdibolehkan

?

Graph sederhana Tak-berarah Tidak Tidak

Graph ganda Tak-berarah Ya Tidak

Graph semu Tak-berarah Ya Ya

Graph berarah Bearah Tidak Ya

Graph-ganda berarah Bearah Ya Ya

Page 55: Teori bahasa dan otomata 3

Contoh Terapan Graph

Rangkaian listrik.

AB

C

DEF

AB

C

E DF

Page 56: Teori bahasa dan otomata 3

Contoh Terapan Graph

Isomer senyawa kimia karbon

metana (CH4) etana (C2H6) propana (C3H8)

C

H

H

HH

Page 57: Teori bahasa dan otomata 3

Contoh Terapan Graph

Transaksi konkuren pada basis data terpusat

Transaksi T0 menunggu transaksi T1 dan T2

Transaksi T2 menunggu transaksi T1

Transaksi T1 menunggu transaksi T3

Transaksi T3 menunggu transaksi T2 T1

T0

T3

T2

Page 58: Teori bahasa dan otomata 3

Contoh Terapan Graph

. Pengujian programread(x);while x <> 9999 do begin if x < 0 then writeln(‘Masukan tidak boleh negatif’) else x:=x+10; read(x); end;writeln(x);

keterangan

Keterangan: 1 : read(x)2 : x <> 99993 : x < 0 4 : writeln(‘Masukan tidak boleh negatif’); 5 : x := x + 106 : read(x)

7 : writeln(x)

1 2

3

4

5

6 7

Page 59: Teori bahasa dan otomata 3

Contoh Terapan Graph

Terapan graph pada teori otomata [LIU85].

Mesin jaja (vending machine)

Keterangan:

a : 0 sen dimasukkan

b : 5 sen dimasukkan

c : 10 sen dimasukkan

d : 15 sen atau lebih dimasukkan

a b c d

P P P

P

5

5

10

10

10

105 5

Page 60: Teori bahasa dan otomata 3

Ketetanggaan (Adjacent)

Dua buah simpul dikatakan bertetangga bila keduanya terhubung langsung.

Tinjau graph :

simpul 1 bertetangga dengan simpul 2 dan 3,

simpul 1 tidak bertetangga dengan simpul 4.

Graph1

2 3

4

Page 61: Teori bahasa dan otomata 3

Bersisian (Incidency)

Untuk sembarang sisi e = (vj, vk) dikatakane bersisian dengan simpul vj , ataue bersisian dengan simpul vk

Tinjau graph : sisi (2, 3) bersisian dengan simpul 2 dan simpul 3, sisi (2, 4) bersisian dengan simpul 2 dan simpul 4, tetapi sisi (1, 2) tidak bersisian dengan simpul 4.

1

2 3

4

Page 62: Teori bahasa dan otomata 3

Simpul Terpencil (Isolated Vertex)

Simpul terpencil ialah simpul yang tidak mempunyai sisi yang bersisian dengannya.

Tinjau graph : simpul 5 adalah simpul terpencil 1

23

4

5

Page 63: Teori bahasa dan otomata 3

Graph Kosong (null graph atau empty graph)

Graph yang himpunan sisinya merupakan himpunan kosong (Nn).

1

2

3

45

Page 64: Teori bahasa dan otomata 3

Derajat (Degree)

Derajat suatu simpul adalah jumlah sisi yang bersisian dengan simpul tersebut.

Notasi: d(v)

Tinjau graph G1: d(1) = d(4) = 2

d(2) = d(3) = 3

1

2 3

4

Page 65: Teori bahasa dan otomata 3

Derajat (Degree)

Tinjau graph G3:

d(5) = 0 simpul terpencil

d(4) = 1 simpul anting-anting (pendant vertex)

Tinjau graph G2:

d(1) = 3 bersisian dengan sisi ganda

d(2) = 4 bersisian dengan sisi gelang (loop)

Graph G3

Graph G2

1

23

4

5

1

2

e1

e2 e

3

e4

e53

Page 66: Teori bahasa dan otomata 3

Derajat (Degree)

Pada graph berarah,

din(v) = derajat-masuk (in-degree) = jumlah busur yang masuk ke simpul v

dout(v) = derajat-keluar (out-degree) = jumlah busur yang keluar dari simpul v

d(v) = din(v) + dout(v)

Page 67: Teori bahasa dan otomata 3

Derajat (Degree)

Tinjau graph :

din(1) = 2; dout(1) = 1

din (2) = 2; dout(2) = 3

din (3) = 2; dout(3) = 1

din (4) = 1; dout(4) = 2

1

2 3

4

Page 68: Teori bahasa dan otomata 3

Lemma Jabat Tangan

Jumlah derajat semua simpul pada suatu graph adalah genap, yaitu dua kali jumlah sisi pada graph tersebut.

Dengan kata lain, jika G = (V, E), maka

EvdVv

2)(

Page 69: Teori bahasa dan otomata 3

Lemma Jabat Tangan

Tinjau graph G1: d(1) + d(2) + d(3) + d(4) =2 + 3 + 3 + 2 = 10 =2 jumlah sisi = 2 5

Tinjau graph G2: d(1) +d(2) + d(3) = 3 + 3 + 4 = 10= 2 jumlah sisi = 2 5

Graph G1

Graph G2

1

23

4

1

2

e1

e2 e

3

e4

e53

Page 70: Teori bahasa dan otomata 3

Lemma Jabat Tangan

Tinjau graph G3:

d(1) + d(2) + d(3) + d(4) + d(5)

= 2 + 2 + 3 + 1 + 0

= 8

= 2 jumlah sisi

= 2 4

Graph G3

1

23

4

5

Page 71: Teori bahasa dan otomata 3

Lemma Jabat TanganContoh. Diketahui graph dengan lima buah simpul. Dapatkah kita menggambar graph tersebut jika derajat masing-masing simpul adalah:

(a) 2, 3, 1, 1, 2(b) 2, 3, 3, 4, 4

Penyelesaian: (a) tidak dapat, karena jumlah derajat semua simpulnya ganjil (2 + 3 + 1 + 1 + 2 = 9).(b) dapat, karena jumlah derajat semua simpulnya genap (2 + 3 + 3 + 4 + 4 = 16).

Page 72: Teori bahasa dan otomata 3

Lintasan (Path)

Lintasan yang panjangnya n dari simpul awal v0 ke simpul tujuan vn di dalam graph G ialah barisan berselang-seling simpul-simpul dan sisi-sisi yang berbentuk v0, e1, v1, e2, v2,... , vn –1, en, vn sedemikian sehingga e1 = (v0, v1), e2 = (v1, v2), ... , en = (vn-1, vn) adalah sisi-sisi dari graph G.

Page 73: Teori bahasa dan otomata 3

Lintasan (Path)

Tinjau graph G1: lintasan 1, 2, 4, 3 adalah lintasan dengan barisan sisi (1,2), (2,4), (4,3).

Panjang lintasan adalah jumlah sisi dalam lintasan tersebut. Lintasan 1, 2, 4, 3 pada G1 memiliki panjang 3.

1

23

4

Page 74: Teori bahasa dan otomata 3

Siklus (Cycle) atau Sirkuit (Circuit) Lintasan yang berawal

dan berakhir pada simpul yang sama disebut sirkuit atau siklus.

Panjang sirkuit adalah jumlah sisi dalam sirkuit tersebut. Sirkuit 1, 2, 3, 1 pada G1 memiliki panjang 3.

Tinjau graph G1: 1, 2, 3, 1 adalah sebuah

sirkuit. 1

23

4

Page 75: Teori bahasa dan otomata 3

Terhubung (Connected)

Dua buah simpul v1 dan simpul v2 disebut terhubung jika terdapat lintasan dari v1 ke v2.

G disebut graph terhubung (connected graph)

jika untuk setiap pasang simpul vi dan vj dalam himpunan V terdapat lintasan dari vi ke vj

Jika tidak, maka G disebut graph tak-terhubung (disconnected graph).

Page 76: Teori bahasa dan otomata 3

Terhubung (Connected)

Contoh graph tak-terhubung:

1

2

3

4

5

6

78

Page 77: Teori bahasa dan otomata 3

Terhubung (Connected)Graph berarah

Graph berarah G dikatakan terhubung jika graph tidak berarahnya terhubung (graph tidak berarah dari G diperoleh dengan menghilangkan arahnya).

Page 78: Teori bahasa dan otomata 3

Terhubung (Connected)Graph berarah Dua simpul, u dan v, pada graph berarah G

disebut terhubung kuat (strongly connected) jika terdapat lintasan berarah dari u ke v dan juga lintasan berarah dari v ke u.

Jika u dan v tidak terhubung kuat tetapi terhubung pada graph tidak berarahnya, maka u dan v dikatakan terhubung lemah (weakly connected).

Page 79: Teori bahasa dan otomata 3

Terhubung (Connected)Graph berarah

Graph berarah G disebut graph terhubung kuat (strongly connected graph) apabila untuk setiap pasang simpul sembarang u dan v di G, terhubung kuat. Kalau tidak, G disebut graph terhubung lemah.

Graph berarah terhubung lemah

Graph berarah terhubung kuat

1

2

3 4

1

2 3

Page 80: Teori bahasa dan otomata 3

Upagraph (Subgraph) dan Komplemen Upagraph Misalkan G = (V, E) adalah sebuah graph.

G1 = (V1, E1) adalah upagraph (subgraph) dari G jika V1 V dan E1 E.

Komplemen dari upagraph G1 terhadap graph G adalah graph G2 = (V2, E2) sedemikian sehingga E2 = E - E1 dan V2 adalah himpunan simpul yang anggota-anggota E2 bersisian dengannya.

Page 81: Teori bahasa dan otomata 3

Upagraph (Subgraph) dan Komplemen Upagraph

1

2

3

4 5

6

1

6

5

31

2

3

52

(a) Graph G1 (b) Sebuah upagraph (c) komplemen dari upagraph

Page 82: Teori bahasa dan otomata 3

Komponen graph (connected component)

adalah jumlah maksimum upagraph terhubung dalam graph G.

Graph G di bawah ini mempunyai 4 buah komponen.

1

2 3 4

5

6 7

8

9

10

11

12

13

Page 83: Teori bahasa dan otomata 3

Komponen graph (connected component) Pada graph berarah, komponen terhubung kuat

(strongly connected component) adalah jumlah maksimum upagraph yang terhubung kuat.

Graph di bawah ini mempunyai 2 buah komponen terhubung kuat:

2 3

4

5

1

Page 84: Teori bahasa dan otomata 3

Upagraph Rentang (Spanning Subgraph) Upagraph G1 = (V1, E1) dari G = (V, E) dikatakan

upagraph rentang jika V1 =V (yaitu G1 mengandung semua simpul dari G).

1

2 3

4 5

1

2 3

4 5

1

2 3

(a) graph G, (b) upagraph rentang (c)bukan upagraph rentang dari G dari G,

Page 85: Teori bahasa dan otomata 3

Cut-Set

Cut-set dari graph terhubung G adalah himpunan sisi yang bila dibuang dari G menyebabkan G tidak terhubung.

Jadi, cut-set selalu menghasilkan dua buah komponen.

Page 86: Teori bahasa dan otomata 3

Cut-Set

Pada graph di bawah, {(1,5), (1,4), (2,4), (2,3)} adalah cut-set. Terdapat banyak cut-set pada sebuah graph terhubung.

Himpunan {(1,5), (4,5)} juga adalah cut-set, {(1,2), (1,4), (1,5)} adalah cut-set, {(5,6)} juga cut-set,

tetapi {(1,5), (4,5), (3,4)} bukan cut-set sebab himpunan bagiannya, {(1,5), (4,5)} adalah cut-set.

1

2 3

4

5

6

51

2

4

3

6

Page 87: Teori bahasa dan otomata 3

Graph Berbobot (Weighted Graph)

Graph berbobot adalah graph yang setiap sisinya diberi sebuah harga (bobot).

a

b

cd

e

10 12

8

15 911

14

Page 88: Teori bahasa dan otomata 3

Beberapa Graph Sederhana Khusus

a. Graph Lengkap (Complete Graph)

b. Graph Lingkaran

c. Graph Teratur (Regular Graphs)

d. Graph Bipartite (Bipartite Graph)

Page 89: Teori bahasa dan otomata 3

Graph lengkap

ialah graph sederhana yang setiap simpulnya mempunyai sisi ke semua simpul lainnya. Graph lengkap dengan n buah simpul dilambangkan dengan Kn. Jumlah sisi pada graph lengkap yang terdiri dari n buah simpul adalah

n(n – 1)/2.

K1 K2 K3 K4 K5 K6

Page 90: Teori bahasa dan otomata 3

Graph lingkaran

adalah graph sederhana yang setiap simpulnya berderajat dua. Graph lingkaran dengan n simpul dilambangkan dengan Cn.

Page 91: Teori bahasa dan otomata 3

Graph Teratur (Regular Graphs)

Graph yang setiap simpulnya mempunyai derajat yang sama disebut graph teratur. Apabila derajat setiap simpul adalah r, maka graph tersebut disebut sebagai graph teratur derajat r. Jumlah sisi pada graph teratur adalah nr/2.

Page 92: Teori bahasa dan otomata 3

Graph Bipartite (Bipartite Graph)

Graph G yang himpunan simpulnya dapat dipisah menjadi dua himpunan bagian V1 dan V2, sedemikian sehingga setiap sisi pada G menghubungkan sebuah simpul di V1 ke sebuah simpul di V2 disebut graph bipartit dan dinyatakan sebagai G(V1, V2).

V1 V2

Page 93: Teori bahasa dan otomata 3

Graph Bipartite (Bipartite Graph)

Graph G di bawah ini adalah graph bipartit, karena simpul-simpunya dapat dibagi menjadi V1 = {a, b, d} dan V2 = {c, e, f, g}

a b

c

de

f

g

Page 94: Teori bahasa dan otomata 3

Graph Bipartite (Bipartite Graph)

H2 H3

W G E

Page 95: Teori bahasa dan otomata 3

Representasi Graph

1. Matriks Ketetanggaan

(adjacency matrix)

2. Matriks Bersisian

(incidency matrix)

3. Senarai Ketetanggaan

(adjacency list)

Page 96: Teori bahasa dan otomata 3

Matriks Ketetanggaan (adjacency matrix)

A = [aij],

1, jika simpul i dan j bertetangga aij = {

0, jika simpul i dan j tidak bertetangga

Page 97: Teori bahasa dan otomata 3

Matriks Ketetanggaan (adjacency matrix) Graph Matriks

Ketetanggaan1

23

4

0110

1011

1101

0110

4

3

2

1

4321

Page 98: Teori bahasa dan otomata 3

Matriks Ketetanggaan (adjacency matrix) Graph Matriks Ketetanggaan

00000

00100

01011

00101

00110

5

4

3

2

1

543211

23

4

5

Page 99: Teori bahasa dan otomata 3

Matriks Ketetanggaan (adjacency matrix) Graph Matriks Ketetanggaan

1

2 3

4

0110

0001

1101

0010

4321

4

3

2

1

Page 100: Teori bahasa dan otomata 3

Matriks Ketetanggaan (adjacency matrix) Graph Matriks Ketetanggaan

1

2

4

3

e1

e2

e3

e4

e5

e6

e7

e8

0210

2112

1101

0210

4321

4

3

2

1

Page 101: Teori bahasa dan otomata 3

Derajat tiap simpul i:

(a) Untuk graph tak-berarah,

d(vi) =

(b) Untuk graph berarah,

din (vj) = jumlah nilai pada kolom j =

dout (vi) = jumlah nilai pada baris i =

n

jija

1

n

iija

1

n

jija

1

Page 102: Teori bahasa dan otomata 3

Derajat tiap simpul

Graph

Derajat simpul 2 = 1+0+1+1 = 3

Derajat simpul 4 = 0+1+1+0 = 2

Matriks Ketetanggaan

1

23

4

0110

1011

1101

0110

4

3

2

1

4321

Page 103: Teori bahasa dan otomata 3

Derajat tiap simpul

Graph

Derajat masuk simpul 2 = 1+0+0+1 = 2

Derajat keluar simpul 2 = 1+0+1+1 = 3

Matriks Ketetanggaan1

2 3

4

0110

0001

1101

0010

4321

4

3

2

1

Page 104: Teori bahasa dan otomata 3

Matriks Ketetanggaan Graph BerbobotGraphTanda bila tdk ada sisi dari simpul I ke j

Matriks Ketetanggaan

a

b

cd

e

10 12

8

15 911

14

15810

151411

149

811912

1012

e

d

c

b

a a b c d e

Page 105: Teori bahasa dan otomata 3

Matriks Bersisian (incidency matrix)

A = [aij],

1, jika simpul i bersisian dengan sisi j

aij = {

0, jika simpul i tidak bersisian dengan

sisi j

Page 106: Teori bahasa dan otomata 3

Matriks Bersisian (incidency matrix) Graph Matriks Bersisian

1 2

3

4

e1

e2e3e4

e5

10000

11100

00111

01011

4

3

2

1

e1 e2 e3 e4 e5

Page 107: Teori bahasa dan otomata 3

Senarai Ketetanggaan (adjacency list) Graph Senarai

Ketetanggaan1

23

4

 Simpul TetanggaSimpul

1 2, 3

2 1, 3, 4

3 1, 2, 4

4 2, 3

Page 108: Teori bahasa dan otomata 3

Matriks Ketetanggaan (adjacency matrix) Graph Senarai Ketetanggaan

1

23

4

5

Simpul Simpul Tetangga

1 2, 3

2 1, 3

3 1, 2, 4

4 3

5 -

Page 109: Teori bahasa dan otomata 3

Senarai Ketetanggaan (adjacency list) Graph Senarai Ketetanggaan

1

2 3

4

Simpul Simpul Terminal

1 2

2 1, 3, 4

3 1

4 2, 3

Page 110: Teori bahasa dan otomata 3

Graph Isomorfik (Isomorphic Graph) Dua buah graph yang sama tetapi secara

geometri berbeda disebut graph yang saling isomorfik.

Dua buah graph, G1 dan G2 dikatakan isomorfik jika terdapat korespondensi satu-satu antara simpul-simpul keduanya dan antara sisi-sisi keduaya sedemikian sehingga hubungan kebersisian tetap terjaga.

Page 111: Teori bahasa dan otomata 3

Graph Isomorfik (Isomorphic Graph) Dengan kata lain, misalkan sisi e bersisian

dengan simpul u dan v di G1, maka sisi e’ yang berkoresponden di G2 harus bersisian dengan simpul u’ dan v’ yang di G2.

Dua buah graph yang isomorfik adalah graph yang sama, kecuali penamaan simpul dan sisinya saja yang berbeda. Ini benar karena sebuah graph dapat digambarkan dalam banyak cara.

Page 112: Teori bahasa dan otomata 3

Graph Isomorfik (Isomorphic Graph)

3

4

1 2

d c

a b

v w

x y

(a) G1 (b) G2 (c) G3

G1 isomorfik dengan G2, tetapi G1 tidak isomorfik dengan G3

Page 113: Teori bahasa dan otomata 3

Graph Isomorfik (Isomorphic Graph) z

d

c

a

b

e

x

v w

y(a) G1 (b) G2

Graph (a) dan graph (b) isomorfik

01000

10101

01011

00101

01110

01000

10101

01011

00101

01110

e

d

c

b

a

edcba

z

v

w

y

x

zvwyx

Page 114: Teori bahasa dan otomata 3

Dua buah graph isomorfik

Page 115: Teori bahasa dan otomata 3

Tiga buah graph isomorfik

Page 116: Teori bahasa dan otomata 3

Graph Isomorfik (Isomorphic Graph)

Dari definisi graph isomorfik dapat dikemukakan bahwa dua buah graph isomorfik memenuhi ketiga syarat berikut [DEO74]:

1. Mempunyai jumlah simpul yang sama.

2. Mempunyai jumlah sisi yang sama

3. Mempunyai jumlah simpul yang sama berderajat tertentu

Page 117: Teori bahasa dan otomata 3

Graph Isomorfik (Isomorphic Graph)

Ketiga syarat ini ternyata belum cukup menjamin. Pemeriksaan secara visual perlu dilakukan.

x

u

v

w

y

Page 118: Teori bahasa dan otomata 3

Graph Planar (Planar Graph) dan Graph Bidang (Plane Graph)

Graph yang dapat digambarkan pada bidang datar dengan sisi-sisi tidak saling memotong disebut sebagai graph planar, jika tidak, ia disebut graph tak-planar.

Page 119: Teori bahasa dan otomata 3

Graph Planar (Planar Graph)

Graph Planar

Graph K4

Graph tidak planar

Graph K5

Page 120: Teori bahasa dan otomata 3

Graph Planar (Planar Graph)

Graph persoalan utilitas (K3,3) bukan graph planar

H2 H3

W G E

H2 H3

W G E

H1 H1

Page 121: Teori bahasa dan otomata 3

Graph Planar (Planar Graph)

Sisi-sisi pada graph planar membagi bidang menjadi beberapa wilayah (region) atau muka (face). Jumlah wilayah pada graph planar dapat dihitung dengan mudah.

Graph planar yang terdiri atas 6 wilayah

R1

R2 R3

R5

R4R6

Page 122: Teori bahasa dan otomata 3

Graph Planar (Planar Graph)

Rumus Euler

n – e + f = 2

yang dalam hal ini,

f = jumlah wilayah n = 11

e = jumlah sisi e = 7

n = jumlah simpul f = 11-7+2 = 6

R1

R2 R3

R5

R4R6

Page 123: Teori bahasa dan otomata 3

Teorema Kuratoswki

Berguna untuk menentukan dengan tegas keplanaran suatu graph.

(a) (b) (c)

(a) Graph Kuratowski pertama (b) dan (c) Graph Kuratowski kedua (keduanya isomorfik)

Page 124: Teori bahasa dan otomata 3

Sifat graph Kuratowski adalah:

Kedua graph Kuratowski adalah graph teratur. Kedua graph Kuratowski adalah graph tidak-

planar Penghapusan sisi atau simpul dari graph

Kuratowski menyebabkannya menjadi graph planar.

Graph Kuratowski pertama adalah graph tidak-planar dengan jumlah simpul minimum, dan graph Kuratowski kedua adalah graph tidak-planar dengan jumlah sisi minimum.

Page 125: Teori bahasa dan otomata 3

TEOREMA Kuratowski

Graph G bersifat planar jika dan hanya jika ia tidak mengandung upagraph yang sama dengan salah satu graph Kuratowski atau homeomorfik (homeomorphic) dengan salah satu dari keduanya.

v

x

y

G1 G2 G3

Tiga buah graph yang homemorfik satu sama lain

Page 126: Teori bahasa dan otomata 3

TEOREMA Kuratowski

Graph di bawah ini bukan graph planar karena mengandung upagraph (G1) yang sama dengan K3,3.

a bc

def

a bc

def

GG1

Page 127: Teori bahasa dan otomata 3

TEOREMA Kuratowski

G tidak planar karena mengandung upagraph (G1) yang homeomorfik dengan K5 (dengan membuang simpul-

simpul yang berderajat 2 dari G1, diperoleh K5). a

b

c

d

efg

h

a

b

c

d

efg

h

ii

a

c

eg

h

G G1 K5

Page 128: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Euler

Lintasan Euler ialah lintasan yang melalui masing-masing sisi di dalam graph tepat satu kali.

Sirkuit Euler ialah sirkuit yang melewati masing-masing sisi tepat satu kali.

Graph yang mempunyai sirkuit Euler disebut graph Euler (Eulerian graph). Graph yang mempunyai lintasan Euler dinamakan juga graph semi-Euler (semi-Eulerian graph).

Page 129: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Euler

Lintasan Euler pada graph (a) : 3, 1, 2, 3, 4, 1 Lintasan Euler pada graph (b) : 1, 2, 4, 6, 2, 3, 6, 5, 1, 3 Sirkuit Euler pada graph (c) : 1, 2, 3, 4, 7, 3, 5, 7, 6,

5, 2, 6,1

12

3 4

1 2

3

4

5 6

1

2 3

4

5

6 7

(a) (b) (c)

Page 130: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Euler

Sirkuit Euler pada graph (d) : a, c, f, e, c, b, d, e, a, d, f, b, a

Graph (e) dan (f) tidak mempunyai lintasan maupun

sirkuit Euler a

b

e

d

c

f

ba

c d

1 2

3

4 5 e

(d) (e) (f)

Page 131: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Euler

(a) dan (b) graph semi-Euler (c) dan (d) graph Euler (e) dan (f) bukan graph semi-Euler atau graph Euler

12

3 4

1 2

34

5 6

1

2 3

45

6 7

a

b

e

d

c

f

ba

c d

1 2

3

4 5 e

(a) (b) (c)

(d) (e) (f)

Page 132: Teori bahasa dan otomata 3

TEOREMA

Graph tidak berarah memiliki lintasan Euler jika dan hanya jika terhubung dan memiliki dua buah simpul berderajat ganjil atau tidak ada simpul berderajat ganjil sama sekali

Page 133: Teori bahasa dan otomata 3

TEOREMA

Graph tidak berarah G adalah graph Euler (memiliki sirkuit Euler) jika dan hanya jika setiap simpul berderajat genap.

(Catatlah bahwa graph yang memiliki sirkuit Euler pasti mempunyai lintasan Euler, tetapi tidak sebaliknya)

Page 134: Teori bahasa dan otomata 3

TEOREMA

Graph berarah G memiliki sirkuit Euler jika dan hanya jika G terhubung dan setiap simpul memiliki derajat-masuk dan derajat-keluar sama. G memiliki lintasan Euler jika dan hanya jika G terhubung dan setiap simpul memiliki derajat-masuk dan derajat-keluar sama kecuali dua simpul, yang pertama memiliki derajat-keluar satu lebih besar derajat-masuk, dan yang kedua memiliki derajat-masuk satu lebih besar dari derajat-keluar.

Page 135: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Euler

(a) Graph berarah Euler (a, g, c, b, g, e, d, f, a) (b) Graph berarah semi-Euler (d, a, b, d, c, b) (c) Graph berarah bukan Euler maupun semi-Euler

a

b

c

de

fg

a b

cd

a b

cd

(a) (b) (c)

Page 136: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Euler

Bulan sabit Muhammad

Page 137: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Hamilton

Lintasan Hamilton ialah lintasan yang melalui tiap simpul di dalam graph tepat satu kali.

Sirkuit Hamilton ialah sirkuit yang melalui tiap simpul di dalam graph tepat satu kali, kecuali simpul asal (sekaligus simpul akhir) yang dilalui dua kali.

Graph yang memiliki sirkuit Hamilton dinamakan graph Hamilton, sedangkan graph yang hanya memiliki lintasan Hamilton disebut graph semi-Hamilton.

Page 138: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Hamilton

(a) graph yang memiliki lintasan Hamilton (misal: 3, 2, 1, 4)

(b) graph yang memiliki lintasan Hamilton (1, 2, 3, 4, 1)

(c) graph yang tidak memiliki lintasan maupun sirkuit Hamilton

1 2

34

1

3

2

4

1 2

34

(a) (b) (c)

Page 139: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Hamilton

(a) Dodecahedron Hamilton

(b) graph yang mengandung sirkuit Hamilton

(a) (b)

Page 140: Teori bahasa dan otomata 3

TEOREMA

Syarat cukup (jadi bukan syarat perlu) supaya graph sederhana G dengan n ( 3) buah simpul adalah graph Hamilton ialah bila derajat tiap simpul paling sedikit n/2 (yaitu, d(v) n/2 untuk setiap simpul v di G).

Page 141: Teori bahasa dan otomata 3

TEOREMA

Setiap graph lengkap adalah graph Hamilton

Di dalam graph lengkap G dengan n buah

simpul (n 3), terdapat (n - 1)!/2 buah sirkuit Hamilton.

Page 142: Teori bahasa dan otomata 3

TEOREMA

Di dalam graph lengkap G dengan n buah simpul (n 3 dan n ganjil), terdapat

(n - 1)/2 buah sirkuit Hamilton yang saling lepas (tidak ada sisi yang beririsan). Jika n genap dan n 4, maka di dalam G terdapat (n - 2)/2 buah sirkuit Hamilton yang saling lepas.

Page 143: Teori bahasa dan otomata 3

Contoh(Persoalan pengaturan tempat duduk). Sembilan anggota sebuah klub bertemu tiap hari untuk makan siang pada sebuah meja bundar. Mereka memutuskan duduk sedemikian sehingga setiap anggota mempunyai tetangga duduk berbeda pada setiap makan siang. Berapa hari pengaturan tersebut dapat dilaksanakan?

Jumlah pengaturan tempat duduk yang berbeda adalah (9 - 1)/2 = 4.

Page 144: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Hamilton

Graph yang merepresentasikan persoalan pengaturan tempat duduk.

1

2

3

5

6

7

8

9

Page 145: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Hamilton/ Euler Beberapa graph dapat mengandung sirkuit Euler

dan sirkuit Hamilton sekaligus, mengandung sirkuit Euler tetapi tidak mengandung sirkuit Hamilton, mengandung sirkuit Euler dan lintasan Hamilton, mengandung lintsan Euler maupun lintasan Hamilton, tidak mengandung lintasan Euler namun mengandung sirkuit Hamilton, dan sebagainya!).

Page 146: Teori bahasa dan otomata 3

Lintasan dan Sirkuit Hamilton/ Euler Graph (a)

mengandung sirkuit Hamilton maupun sirkuit Euler

graph (b) mengandung sirkuit Hamilton dan lintasan Euler (periksa!).

6

5

4

1

3

2

5

1 2

34

(a) (b)

Page 147: Teori bahasa dan otomata 3

Beberapa Aplikasi Graf

a. Lintasan Terpendek (Shortest Path) graf berbobot (weighted graph), lintasan terpendek: lintasan yang memiliki total bobot

minimum.Contoh aplikasi: Menentukan jarak terpendek/waktu tempuh

tersingkat/ongkos termurah antara dua buah kota Menentukan waktu tersingkat pengiriman pesan

(message) antara dua buah terminal pada jaringan komputer.

Page 148: Teori bahasa dan otomata 3

Lintasan TerpendekTerdapat beberapa jenis persoalan lintasan terpendek,

antara lain: Lintasan terpendek antara dua buah simpul tertentu. Lintasan terpendek antara semua pasangan simpul. Lintasan terpendek dari simpul tertentu ke semua simpul

yang lain. Lintasan terpendek antara dua buah simpul yang melalui

beberapa simpul tertentu. ==> Di dalam kuliah ini kita memilih jenis persoalan 3.

Page 149: Teori bahasa dan otomata 3

Lintasan Terpendek Uraian persoalan Diberikan graf berbobot G = (V, E) dan

sebuah simpul a. Tentukan lintasan terpendek dari a ke setiap simpul lainnya di G. Asumsi yang kita buat adalah bahwa semua sisi berbobot positif.

Page 150: Teori bahasa dan otomata 3

Lintasan Terpendek Graph

45

50 10

35

30

315

1540

20 10 20

1 2

3 4 6

5

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 -

Page 151: Teori bahasa dan otomata 3

Algoritma DijkstraMerupakan Algoritma menentukan lintasan terpendek yang

terkenal.Properti algoritma Dijkstra:1. Matriks ketetanggaan M[mij]

mij = bobot sisi (i, j) (pada graf tak-berarah mij = mji )mii = 0mij = , jika tidak ada sisi dari simpul i ke simpul j

2. Larik S = [si] yang dalam hal ini,si = 1, jika simpul i termasuk ke dalam lintasan terpendek

si = 0, jika simpul i tidak termasuk ke dalam lintasan terpendek

3. Larik/tabel D = [di] yang dalam hal ini,di = panjang lintasan dari simpul awal s ke simpul i

Page 152: Teori bahasa dan otomata 3

Beberapa Aplikasi Graf

b. Persoalan Perjalanan Pedagang (Travelling Salesperson Problem - TSP)

Diberikan sejumlah kota dan jarak antar kota. Tentukan sirkuit terpendek yang harus dilalui oleh seorang pedagang bila pedagang itu berangkat dari sebuah kota asal dan menyinggahi setiap kota tepat satu kali dan kembali lagi ke kota asal keberangkatan.

==> menentukan sirkuit Hamilton yang memiliki bobot minimum.

Page 153: Teori bahasa dan otomata 3

Aplikasi TSP

Pak Pos mengambil surat di kotak pos yang tersebar pada n buah lokasi di berbagai sudut kota.

Lengan robot mengencangkan n buah mur pada beberapa buah peralatan mesin dalam sebuah jalur perakitan.

Produksi n komoditi berbeda dalam sebuah siklus.

Page 154: Teori bahasa dan otomata 3

Travelling Salesperson Problem

Jumlah sirkuit Hamilton di dalam graf lengkap dengan n simpul: (n - 1)!/2.

Graf di atas memiliki (4 – 1)!/2 = 3 sirkuit Hamilton, yaitu:I1 = (a, b, c, d, a) atau (a, d, c, b, a) ==> panjang = 10 + 12 + 8 + 15 = 45I2 = (a, c, d, b, a) atau (a, b, d, c, a) ==> panjang = 12 + 5 + 9 + 15 = 41I3 = (a, c, b, d, a) atau (a, d, b, c, a) ==> panjang = 10 + 5 + 9 + 8 = 32

a b

cd

12

8

15

1095

Page 155: Teori bahasa dan otomata 3

Travelling Salesperson Problem

Jadi, sirkuit Hamilton terpendek adalah I3 = (a, c, b, d, a) atau (a, d, b, c, a) dengan panjang sirkuit = 10 + 5 + 9 + 8 = 32.

Jika jumlah simpul n = 20 akan terdapat (19!)/2 sirkuit Hamilton atau sekitar 6 1016 penyelesaian.

a b

cd

12

8

15

10

a b

cd

12

15

95

a b

cd

81095

Page 156: Teori bahasa dan otomata 3

Beberapa Aplikasi Graf

c. Persoalan Tukang Pos Cina (Chinese Postman Problem)

Dikemukakan oleh Mei Gan (berasal dari Cina) pada tahun 1962.

Masalahnya adalah sebagai berikut: seorang tukang pos akan mengantar surat ke alamat-alamat sepanjang jalan di suatu daerah. Bagaimana ia merencanakan rute perjalanannya supaya ia melewati setiap jalan tepat sekali dan kembali lagi ke tempat awal keberangkatan.

===> menentukan sirkuit Euler di dalam graf.

Page 157: Teori bahasa dan otomata 3

Chinese Postman Problem

Lintasan yang dilalui tukang pos: A, B, C, D, E, F, C, E, B, F, A.

B C

EF

8

5

3A D

8

2

1

6

44

2

Page 158: Teori bahasa dan otomata 3

PEWARNAAN GRAPH

Sebuah pewarnaan dari graph G adalah sebuah pemetaan warna-warna ke simpul-simpul dari G sedemikian hingga simpul relasinya mempunyai warna warna yang berbeda.

Page 159: Teori bahasa dan otomata 3

BILANGAN KROMATIK

Bilangan kromatik dari G adalah jumlah warna minimum yang diperlukan untuk mewarnai graph G, dilambangkan dgn (G) { adalah huruf Yunani chi }

Berapa bilangan kromatik dari graph lengkap K6, K10 dan Kn ?

(Kn) = n

Page 160: Teori bahasa dan otomata 3

ALGORITMA WELCH-POWELL

Algoritma Welch-Powell adalah sebuah cara efisien untuk mewarnai sebuah graph G

Algoritma Welch-Powell : Urutkan simpul-simpul G dalam derajat yang menurun. Urutan ini

mungkin tidak unik karena bbrp simpul mempunyai derajat sama Gunakan satu warna untuk mewarnai simpul pertama dan untuk

mewarnai, dalam urutan yang berurut setiap simpul dari daftar yang tidak berelasi dengan simpul sebelumnya.

Mulai lagi dengan dengan daftar paling tinggi dan ulangi proses pewarnaan simpul yang tidak berwarna sebelumnya dengan menggunakan warna kedua.

Terus ulangi dengan penambahan warna sampai semua simpul telah diwarnai

Page 161: Teori bahasa dan otomata 3

Contoh

V7V6

V5

V4

V3

V2V1

Simpul V1 V4 V5 V6 V2 V3 V7

Derajat 5 4 4 4 3 3 3

Warna a b c d b c a

Jadi χ(H) = 4

Graph H

Page 162: Teori bahasa dan otomata 3

Contoh

Graph G

V6

V5V4V2V3

V1

Simpul V1 V6 V2 V3 V4 V5

Derajat 4 4 3 3 3 3

Warna a a b b c c

Jadi χ(G) = 3

Page 163: Teori bahasa dan otomata 3

Contoh

Graph H

V6V5

V4

V3V2

V1

Simpul V1 V2 V3 V4 V5 V6

Derajat 3 3 3 3 3 3

Warna a b b a a b

Jadi χ(H)= 2

Page 164: Teori bahasa dan otomata 3

Contoh

Graph G

V6

V4

V2V3

V5

V1

Simpul V1 V5 V2 V6 V3 V4

Derajat 4 4 3 3 2 2

Warna a b b c c a

Jadi χ(G) = 3

Page 165: Teori bahasa dan otomata 3

Contoh

Graph H

H

G

F

ED

C

B

A

Simpul H A D F B C E G

Derajat 5 4 4 4 3 3 3 2

Warna a b b c a c c a

Jadi χ(H) = 3