Jelajahi eBook
Kategori
Jelajahi Buku audio
Kategori
Jelajahi Majalah
Kategori
Jelajahi Dokumen
Kategori
Graf adalah :
Himpunan V (Vertex) yang elemennya disebut simpul (atau point
atau node atau titik)
Himpunan E (Edge) yang merupakan pasangan tak urut dari
simpul, anggotanya disebut ruas (rusuk atau sisi)
Notasi : G(V,E)
Simpul u dan v disebut berdampingan bila terdapat ruas (u,v).
Graf dapat pula disajikan secara geometrik, simpul disajikan sebagai
sebuah titik, sedangkan ruas disajikan sebagai sebuah garis yang
menghubungkan 2 simpul.
Contoh 1 :
Graf G(V,E) dengan :
1. V terdiri dari 4 simpul, yaitu simpul A, B, C dan D
2. E terdiri dari 5 ruas, yaitu e1 = (A, B) e2 = (B, C)
e4 = (C, D) e5 = (B, D)
A
e1
e3
e5
e3 = (A, D)
e4
e2
Banyak simpul disebut ORDER, banyak ruas disebut SIZE dari graf.
Graf yang lebih umum disebut Multigraf
Contoh 2 :
Graf G(V,E) dengan :
1. V terdiri dari 4 simpul, yaitu simpul A, B, C dan D
2. E terdiri dari 6 ruas, yaitu e1 = (A, C) e2 = (A, A)
e4 = (C, D) e5 = (B, C) e6 = (B, C)
A e2
e3
e1
e3 = (A, D)
e4
e5
e6
Di sini ruas e2 kedua titik ujungnya adalah simpul yang sama, yaitu
simpul A, disebut Gelung atau Self-Loop. Sedangkan ruas e5 dan e6
e5
e1
e3
e4
e2
e1
G subgraf dari G
(namun bukan dibentuk
oleh V = {A,B,D})
e3
e5
e1
e3
B
GRAF BERLABEL
Graf G disebut graf berlabel jika ruas dan atau simpulnya dikaitkan
dengan suatu besaran tertentu. Jika setiap ruas e dari G dikaitkan
dengan suatu bilangan non negatif d(e), maka d(e) disebut bobot
atau panjang dari ruas e.
DERAJAT GRAF
E
C
D
Di sini banyaknya ruas = 7, sedangkan derajat masing-masing simpul
adalah :
d(A) = 2
d(D) = 3
derajat graf G = 14
d(B) = 5
d(E) = 1
(2 * 7)
d(C) = 3
d(F) = 0
Catatan : E disebut simpul bergantung/akhir, yakni simpul yang
berderajat satu. Sedangkan F disebut simpul terpencil, yakni simpul
berderajat nol.
KETERHUBUNGAN
Walk atau perjalanan dalam graf G adalah barisan simpul dan ruas
berganti-ganti : v1, e1, v2, e2, , en-1, vn
Di sini ruas e1 menghubungkan simpul vi dan vI+1
Banyaknya ruas disebut panjang walk.
Walk dapat ditulis lebih singkat dengan hanya menulis deretan ruas :
e1, e2, , en-1
atau deretan simpul : v1, v2, , vn-1, vn
v1 disebut simpul awal, vn disebut simpul akhir
Walk disebut tertutup bila v1 = vn , dalam hal lain walk disebut
terbuka, yang menghubungkan v1 dan vn
Trail adalah walk dengan semua ruas dalam barisan berbeda.
Path atau jalur adalah walk dengan semua simpul dalam barisan
berbeda. Jadi path pasti trail, sedangkan trail belum tentu path.
Dengan kata lain : Suatu path adalah suatu trail terbuka dengan
derajat setiap simpulnya = 2, kecuali simpul awal v 1 dan vn simpul
akhir berderajat = 1.
Cycle atau sirkuit adalah suatu trail tertutup dengan derajat setiap
simpul = 2.
Contoh :
Graf yang tidak mengandung cycle disebut acyclic, contoh : pohon
atau tree.
Suatu graf G disebut terhubung jika untuk setiap 2 simpul dari graf
terdapat jalur yang menghubungkan 2 simpul tersebut.
Subgraf terhubung suatu graf disebut komponen dari G bila subgraf
tersebut tidak terkandung dalam subgraf terhubung lain yang lebih
besar.
Contoh : Graf G terdiri dari 3 komponen
B
v4
e4
e1
e2
v2
e3
v5
e8
e6
e7
v3
Matriks Ruas
1 1 1 1 2 3 3 4
2 3 4 5 3 4 5 5
atau
1
1
1
1
2
3
3
4
2
3
4
5
3
4
5
5
Matriks Adjacency : N x N
v1
v2
v3
v4
v5
v1
v2
v3
v4
v5
0
1
1
1
1
1
0
1
0
0
1
1
0
1
1
1
0
1
0
1
1
0
1
1
0
Matriks Incidence : N x M
v1
v2
v3
v4
v5
e1
e2
e3
e4
e5
e6
e7
e8
1
1
0
0
0
1
0
1
0
0
0
1
1
0
0
1
0
0
1
0
1
0
0
0
1
0
0
1
1
0
0
0
1
0
1
0
0
0
1
1
Arkus (2, 2) :
gelung /
self loop
Arkus (2,1) : arkus sejajar
/ arkus berganda
POHON
A. Pohon
Defenisi Pohon (Tree) adalah graf terhubung yang tidak mengandung
sirkuit. Karena merupakan graf terhubung maka pada pohon selalu terdapat path
atau jalur yang menghubungkan kedua simpul di dalam pohon.
Suatu Graf G disebut terhubung apabila untuk setiap dua simpul dari graf
Pohon (G1)
pohon (G2)
B. sifat-sifat pohon
Misalkan G = (V, E) adalah graf tak-berarah sederhana dan jumlah simpulnya n.
Maka, semua pernyataan di bawah ini adalah ekivalen:
1. G adalah pohon.
2. Setiap pasang simpul di dalam G terhubung dengan lintasan tunggal.
3. G terhubung dan memiliki m = n 1 buah sisi.
4. G tidak mengandung sirkuit dan memiliki m = n 1 buah sisi.
5. G tidak mengandung sirkuit dan penambahan satu sisi pada graf akan
membuat hanya satu sirkuit.
6. G terhubung dan semua sisinya adalah jembatan. (jembatan adalah sisi yang
bila dihapus menyebabkan graf terpecah menjadi dua komponen)
C. Pewarnaan Pohon
Dalam pewarnaan pohon, dua buah warna sudah cukup mewarnai simpul-simpul
dalam pohon sedemikian sehingga tidak ada dua buah simpul bertetangga
mempunyai warna sama
Pewarnaan pada pohon T dilakukan dengan cara berikut:
1.
Petakan warna pertama pada sembarang simpul.
2.
Petakan warna kedua pada simpul-simpul yang bertetangga dengan simpul
pertama tadi.
3.
Petakan warna pertama ke semua simpul yang bertetangga dengan simpulsimpul yang telah diwarnai.
Sebagai contoh tinjau graf G1. Simpul-simpul pada graf G1 akan diberi warna
dengan warna kuning dan biru. Simpul a dipilih pertama kali untuk diberi warna
kuning. Kemudian simpul-simpul tetangga a, yaitu b dan d diberi warna biru.
Selanjutnya simpu-simpul yang bertetangga dengan d yaitu c, e dan f diberi warna
kuning. Jadi simpul yang berwarna kuning yaitu a, c, e dan f. Sedangkan simpul
yang berwarna biru yaitu b dan d.
D. Pohon Merentang (spanning tree)
Definisi Misalkan G adalah sebuah graph. Sebuah pohon di G yang memuat
semua titik G disebut pohon rentang (spanning tree) dari G.
Contoh
Misalkan kita mempunyai graph G seperti pada gambar 4.6 di bawah ini. Terdapat
3 pohon rentang dari graph G, yaitu graph A, B, dan C. Tampak jelas bahwa graph
A, B, dan C masing-masing memuat semua simpul dari graph G serta
mengandung sisi-sisi dari G demikian sehingga tidak terbentuk sikel.
P
ohon merentang diperoleh dengan memutus sirkuit di dalam graf.
G
T1
T2
T3
T4
Setiap graf terhubung mempunyai paling sedikit satu buah pohon merentang.
Algoritma Prim
10
30
45
4
50
40
25
55
20
6
35
5
15
Contoh:
Langkah
Sisi
Bobot
Pohon rentang
10
45
35
25
55
20
6
5
15
Bobot = 10 + 25 + 15 + 20 + 35 = 105
Algoritma Kruskal
10
30
45
4
50
40
25
55
20
35
5
15
Contoh:
(1,2)
10
(3,6)
15
(4,6)
20
(2,6)
25
(1,4)
30
(3,5)
35
(2,5)
40
(1,5)
45
(2,3)
50
(5,6)
55
Langkah
Sisi
4
Bobot
(2, 6)
Hutan merentang
25
(1, 2)
10
(3, 6)
15
6
3
(4, 6)
20
4
6
(1, 4)
30
(3, 5)
35
ditolak
2
5
4
6
10
45
35
25
55
20
6
5
15
Bobot = 10 + 25 + 15 + 20 + 35 = 105
E. Pohon Berakar
Pada kebanyakan aplikasi pohon, simpul tertentu diperlakukan sebagai akar (root).
Sekali sebuah simpul ditetapkan sebagai akar, maka simpul-simpul lainnya dapat dicapai
dari akar dengan memberi arah pada sisi-sisi pohon yang mengikutinya.
Definisi:
Pohon yang sebuah simpulnya diperlakukan sebagai akar dan sisi-sisinya diberi
arah menjauh dari akar dinamakan pohon berakar (rooted tree).
Akar mempunyai derajat-masuk sama dengan nol dan simpul-simpul lainnya
derajat-masuk sama dengan satu. Simpul yang mempunyai derajat-keluar sama dengan
nol disebut daun atau simpul terminal. Simpul yang mempunyai derajat-keluar tidak
sama dengan nol disebut simpul dalam atau simpul cabang Gambar menunjukkan hal
ini
(a) pohon berakar, (b) sebagai konvensi, arah panah pada sisi dapat dibuang.
Pohon berakar pertama memilih
kedua memilih e
sebagai akar.
c , dan
dan
g . Simpul
dan
f .
h ,
i ,
a , dan
b ,
d , dan
tidak mempunyai
anak
Lintasan (path)
Lintasan dari simpul v 1 ke simpul v k
vk
sedemikian sehingga
vi
ke
untuk
a ,
adalah
1 i<k . Dari
b ,
e ,
k 1 .
Panjang lintasan adalah jumlah sisi yang dilalui dalam suatu lintasan, yaitu
Panjang lintasan dari a ke
j .
adalah 3.
y , dan
ke simpul
x . Pada
adalah keturunan
dari b .
e . Tetapi,
bukan
pada
gambar
dibawah
E' = {( b , e ) , ( b , f ) , ( e , h ) , ( e , i ) , ( e , j ) }
upapohon
dengan
dan
upapohon dari
V ' ={ b , e , f , h ,i , j }
dan
Derajat (degree)
Ada perbedaan definisi derajat pada pohon berakar dengan definisi derajat pada
graf (termasuk pohon tidak berakar). Derajat sebuah simpul pada pohon berakar adalah
jumlah upa pohon (atau jumlah anak) pada simpul tersebut. Pada gambar diatas derajat a
adalah 3, derajat b adalah 2, derajat d adalah 1 dan derajat c adalah 0. Jadi, derajat yang
dimaksudkan di sini adalah derajat-keluar.
Derajat maksimum dari sebuah simpul merupakan derajat pohon itu sendiri.
Daun (leaf)
Simpul yang berderajat nol (atau tidak mempunyai anak) disebut daun. Simpul h, i,
j, f, c, l, dan m adalah daun.
Simpul Dalam (internal nodes)
Simpul yang mempunyai anak disebut simpul dalam. Simpul d, e, g, dan k pada gambar
diatas adalah simpul dalam.
Aras (level) atau Tingkat
Akar mempunyai aras = 0, sedangkan aras simpul lainnya = 1 + panjang lintasan dari
akar ke simpul tersebut. Beberapa literature memulai nomor aras dari 0, literature lainnya
dari 1. Sebagai konvensi, kita memulai penomoran aras dari 0.
Lihat gambar dibawah
(a)
3
6
4
8
9 6
10
10
(subject)
(verb)
(object)
(article)
(adjective)
Tall
(noun)
Boy
(noun phrase)
(adjective)
(noun)
Red Hat
Gambar 9.16 Pohon parsing dari kalimat A tall boy wears a red hat"
Jumlah Daun Pada Pohon N-Ary Penuh
Pohon n-ary penuh adalah pohon yang setiap simpulnya tepat mempunyai n buah
anak. Pada pohon n ary penuh dengan tingkat h, jumlah daun adalah nh. Perhatikan
bahwa jika T bukan pohon n-ary penuh maka jumlah daun n h. Gambar 9.18 adalah
pohon 3-ary penuh dengan jumlah daun = 32= 9
aras 1
jumlah simpul = m1
aras 2
jumlah simpul = m2
...........
...........
jumlah simpul = mh
aras h
mh+11
m1
mh +11
m1
Hubungan Jumlah Daun dan Simpul Dalam pada Pohon N-Ary Penuh
Misalkan i adalah banyaknya simpul dalam dan t adalah banyaknya simpul daun di
dalam pohon. Karena pertandingan adalah sistem gugur yang menggugurkan seorang
pemain dan diakhir pertandingan yang dimainkan semua peserta telah gugur kecuali sang
juara, maka banyaknya pertandingan yang terjadi satu lebih sedikit daripada jumlah
pemain. Jadi diperoleh hubungan
i=t 1
Gambar berikut adalah sebuah pohon yang memodelkan sistem gugur untuk t=8
orang pemain. Banyak pertandingan yang terjadi adalah i=81=7 kali
juara
pemenang putaran
2
Pemenang putaran
1
4 5
6 7
para pemain
I. Pohon Biner
Pohon biner adalah pohon yang setiap simpul cabangnya mempunyai paling banyak
2 buah anak.
b
b
c
d
Pohon biner penuh adalah pohon biner yang setiap simpulnya mempunyai tepat dua
buah anak, kiri dan kanan, kecuali simpul pada aras bawah
Perhatikan gambar berikut!
Sedangkan jumlah seluruh simpulnya adalah S=20 +21 +22 ++2 h=2h+11
Pohon biner seimbang adalah pohon biner dengan perbedaan tinggi antara
upapohon kiri dengan upapohon kanan maksimal 1. Pada pohon biner seimbang dengan
tinggi h, semua daun berada pada aras h atau h1 . Untung membuat pohon seimbang,
tinggi pohon secara keseluruhan harus dibuat seminimal mungkin. Untuk memperoleh
tinggi minimum, setiap aras harus mengandung jumlah simpul sebanyak mungkin. Hal
ini dapat dibuat dengan menyebarkan setengah dari jumlah simpul di upapohon kiri dan
setengah dari jumlah simpul di upapohon kanan.
Pohon T1 dan Pohon T2 pada gambar berikut adalah pohon seimbang, sedangkan
pohon T3 bukan pohon seimbang karena perbedaan upapohon kiri dan upapohon kanan
tidak maksimal satu.
Pohon ekspresi adalah pohon biner dengan daun menyatakan operand dan simpul
dalam (termasuk akar) menyatakan operator. Perhatikan bahwa tanda kurung tidak lagi
diperlukan bila suatu ekspresi aritmetik dipresentasukan sebagai pohon biner. Sebagai
contoh, ekspresi dari (a+b)*(c/(d+e)) dinyatakan dalam pohon biner pada gambar berikut.
Daun menyatakan operand a,b,c,d dan e, sedangkan simpul dalam menyatakan operator
+,* dan /.
*
+
a
/
b
+
d
Contoh:
Evaluasi nilai dari pohon ekspresi berikut!
*
4 24
Jawab:
s
*
*
+
/
14
7
24
24
12
persoalan yang terdiri dari serangkaian keputusan yang mengarah ke solusi. Tiap simpul
dalam menyatakan keputusan, sedangkan daun menyatakan solusi. Sebagai contoh, kita
ingin mengurutkan tiga buah bilangan a, b, dan c. pohon keputusan untuk persoalan ini
ditunjukkan pada gambar berikut.
a>b
b>a
c > b> a
c > a> b
a > b> c
a > c> b
b > a> c
b > c> a
a>c
b>c
c>a
c>b
b>c
a>c
c>b
c>a
abcd
(ef palsu)
ag
a=e
abef
(ab palsu)
c=e
ce
a=e
ae
h
palsu
b
palsu
palsu
palsu
palsu
palsu
palsu
palsu