graf
DESCRIPTION
Graf. Pendahuluan. Definisi Graf. Jenis-Jenis Graf. Jenis Graf. Terminologi Graf. Terminologi Graf. Representasi Graf. Representasi Graf. Graf Isomorfik. Graf Planar ( Planar Graph ) dan Graf Bidang ( Plane Graph ). - PowerPoint PPT PresentationTRANSCRIPT
GRAF 1
Definisi Jenis Terminologi
Representasi
Graf Isomorfik
Graf Planar dan Graf Bidang
Lintasan-Sirkuit Euler
Lintasan Hamilton
Implementasi Graf
2
Rinaldi M
/IF2091 S
trukdis
PENDAHULUAN
3
G r a f d i g u n a k a n u n t u k m e r e p r e s e n t a s i k a n o b j e k - o b j e k d i s k r i t d a n h u b u n g a n a n t a r a o b j e k - o b j e k t e r s e b u t .
G a m b a r d i b a w a h i n i s e b u a h g r a f y a n g m e n y a t a k a n p e t a
j a r i n g a n j a l a n r a y a y a n g m e n g h u b u n g k a n s e j u m l a h k o t a d i P r o v i n s i J a w a T e n g a h .
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
4
Sejarah Graf: masalah jembatan Königsberg (tahun 1736)
Gambar 1. Masalah Jembatan Königsberg
Graf yang merepresentasikan jembatan Königsberg:
Simpul (vertex) menyatakan daratan Sisi (edge) menyatakan jembatan
Bisakah melalui setiap jembatan tepat sekali dan kembali lagi ke tempat semula?
C
A
B
D
DEFINISI GRAF
5
Graf 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 }
6
G 1 G 2 G 3
G a m b a r 2 . ( a ) g r a f s e d e r h a n a , ( b ) g r a f g a n d a , d a n ( c ) g r a f s e m u
C o n t o h 1 . P a d a G a m b a r 2 , G 1 a d a l a h g r a f d e n g a n
V = { 1 , 2 , 3 , 4 } E = { ( 1 , 2 ) , ( 1 , 3 ) , ( 2 , 3 ) , ( 2 , 4 ) , ( 3 , 4 ) } G 2 a d a l a h g r a f d e n g a n
V = { 1 , 2 , 3 , 4 }
E = { ( 1 , 2 ) , ( 2 , 3 ) , ( 1 , 3 ) , ( 1 , 3 ) , ( 2 , 4 ) , ( 3 , 4 ) , ( 3 , 4 ) } = { e 1 , e 2 , e 3 , e 4 , e 5 , e 6 , e 7 }
G 3 a d a l a h g r a f d e n g a n
V = { 1 , 2 , 3 , 4 } E = { ( 1 , 2 ) , ( 2 , 3 ) , ( 1 , 3 ) , ( 1 , 3 ) , ( 2 , 4 ) , ( 3 , 4 ) , ( 3 , 4 ) , ( 3 , 3 ) } = { e 1 , e 2 , e 3 , e 4 , e 5 , e 6 , e 7 , e 8 }
1 1 1
2 3
4
2 3
4
2
4
3
e1
e2e3
e4
e5e6
e7
e1
e 2e3
e4
e5e6
e7
e8
7
G 1 G 2 G 3
G a m b a r 2 . ( a ) g r a f s e d e r h a n a , ( b ) g r a f g a n d a , d a n ( c ) g r a f s e m u
P a d a G 2 , s i s i e 3 = ( 1 , 3 ) d a n s i s i e 4 = ( 1 , 3 ) d i n a m a k a n s i s i -g a n d a ( m u l t i p l e e d g e s a t a u p a r a l e l e d g e s ) k a r e n a k e d u a s i s i i n i m e n g h u b u n g i d u a b u a h s i m p u l y a n g s a m a , y a i t u s i m p u l 1 d a n s i m p u l 3 .
P a d a G 3 , s i s i e 8 = ( 3 , 3 ) d i n a m a k a n g e l a n g a t a u k a l a n g ( l o o p )
k a r e n a i a b e r a w a l d a n b e r a k h i r p a d a s i m p u l y a n g s a m a .
1 1 1
2 3
4
2 3
4
2
4
3
e1
e2e3
e4
e5e6
e7
e1
e 2e3
e4
e5e6
e7
e8
JENIS-JENIS GRAF
8
Berdasarkan ada tidaknya gelang atau sisi ganda pada suatu graf, maka graf digolongkan menjadi dua jenis:
1. Graf sederhana (simple graph).
Graf yang tidak mengandung gelang maupun sisi-ganda dinamakan graf sederhana. G1 pada Gambar 2 adalah contoh graf sederhana
2. Graf tak-sederhana (unsimple-graph).
Graf yang mengandung sisi ganda atau gelang dinamakan graf tak-sederhana (unsimple graph). G2 dan G3 pada Gambar 2 adalah contoh graf tak-sederhana
JENIS GRAFGraf
Tak Berarah
Sederhana
Tak Sederhana
Ganda
Semu
Berarah
Berarah
Ganda Berarah
9
Rinaldi M
/IF2091 S
trukdis
10
Berdasarkan orientasi arah pada sisi, maka secara umum graf dibedakan atas 2 jenis:
1. Graf tak-berarah (undirected graph)
Graf yang sisinya tidak mempunyai orientasi arah disebut graf tak-berarah. Tiga buah graf pada Gambar 2 adalah graf tak-berarah.
2. Graf berarah (directed graph atau digraph)
Graf yang setiap sisinya diberikan orientasi arah disebut sebagai graf berarah. Dua buah graf pada Gambar 3 adalah graf berarah.
11
(a) G4 (b) G5
Gambar 3 (a) graf berarah, (b) graf-ganda berarah
1 1
2 3
4
2 3
4
12
Tabel 1 Jenis-jenis graf [ROS99]
Jenis Sisi Sisi ganda dibolehkan?
Sisi gelang dibolehkan?
Graf sederhana Graf ganda Graf semu Graf berarah Graf-ganda berarah
Tak-berarah Tak-berarah Tak-berarah Bearah Bearah
Tidak Ya Ya Tidak Ya
Tidak Tidak Ya Ya Ya
TERMINOLOGI GRAF
Ketetanggan
Bersisian Simpul
Graf Kosong
Derajat Lintasan
Sirkuit Terhubung
Graf berbobot
13
Rinaldi M
/IF2091 S
trukdis
TERMINOLOGI GRAF
14
1. Ketetanggaan (Adjacent)
Dua buah simpul dikatakan bertetangga bila keduanya terhubung langsung. Tinjau graf G1 : simpul 1 bertetangga dengan simpul 2 dan 3,
simpul 1 tidak bertetangga dengan simpul 4.
G1 G2 G3
1
32
4
1
23
4
5
1
2
e 1
e 2 e 3
e 4e 53
15
2. Bersisian (Incidency)
Untuk sembarang sisi e = (vj, vk) dikatakan
e bersisian dengan simpul vj , atau e bersisian dengan simpul vk Tinjau graf G1: 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.
G1 G2 G3
1
32
4
1
23
4
5
1
2
e 1
e 2 e 3
e 4e 53
16
3. Simpul Terpencil (Isolated Vertex)
Simpul terpencil ialah simpul yang tidak mempunyai sisi yang bersisian dengannya. Tinjau graf G3: simpul 5 adalah simpul terpencil.
G1 G2 G3
1
32
4
1
23
4
5
1
2
e 1
e 2 e 3
e 4e 53
17
4. Graf Kosong (null graph atau empty graph)
Graf yang himpunan sisinya merupakan himpunan kosong (Nn). Graf N5 :
1
2
3
45
18
5. Derajat (Degree)
Derajat suatu simpul adalah jumlah sisi yang bersisian dengan simpul tersebut. Notasi: d(v)
Tinjau graf G1: d(1) = d(4) = 2 d(2) = d(3) = 3 Tinjau graf G3: d(5) = 0 simpul terpencil
d(4) = 1 simpul anting-anting (pendant vertex) Tinjau graf G2: d(1) = 3 bersisian dengan sisi ganda
d(2) = 4 bersisian dengan sisi gelang (loop)
G1 G2 G3
1
32
4
1
23
4
5
1
2
e 1
e 2 e 3
e 4e 53
19
Pada graf 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)
20
G 4 G 5
T in ja u g ra f G 4 :
d in(1 ) = 2 ; d o u t(1 ) = 1 d in(2 ) = 2 ; d o u t(2 ) = 3
d in(3 ) = 2 ; d o u t(3 ) = 1 d in(4 ) = 1 ; d o u t(3 ) = 2
1 1
2 3
4
2 3
4
21
G1 G2 G3
1
32
4
1
23
4
5
1
2
e 1
e 2 e 3
e 4e 53
L e m m a J a b a t T a n g a n . J u m l a h d e r a j a t s e m u a s i m p u l p a d a s u a t u g r a f a d a l a h g e n a p , y a i t u d u a k a l i j u m l a h s i s i p a d a g r a f t e r s e b u t . D e n g a n k a t a l a i n , j i k a G = ( V , E ) , m a k a Evd
Vv
2)(
T i n j a u g r a f G 1 : d ( 1 ) + d ( 2 ) + d ( 3 ) + d ( 4 ) = 2 + 3 + 3 + 2 = 1 0
= 2 j u m l a h s i s i = 2 5
T i n j a u g r a f G 2 : d ( 1 ) + d ( 2 ) + d ( 3 ) = 3 + 3 + 4 = 1 0 = 2 j u m l a h s i s i = 2 5
T i n j a u g r a f G 3 : d ( 1 ) + d ( 2 ) + d ( 3 ) + d ( 4 ) + d ( 5 )
= 2 + 2 + 3 + 1 + 0 = 8 = 2 j u m l a h s i s i = 2 4
Akibat dari lemma (corollary):
Teorema: Untuk sembarang graf G, banyaknya simpul berderajat ganjil selau genap.
22
23
Contoh 2. Diketahui graf dengan lima buah simpul. Dapatkah kita menggambar graf 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).
24
6. Lintasan (Path)
Lintasan yang panjangnya n dari simpul awal v0 ke simpul tujuan vn di dalam graf 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 graf G.
Tinjau graf 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.
G1 G2 G3
1
32
4
1
23
4
5
1
2
e 1
e 2 e 3
e 4e 53
25
7. Siklus (Cycle) atau Sirkuit (Circuit)
Lintasan yang berawal dan berakhir pada simpul yang sama disebut sirkuit atau siklus.
Tinjau graf G1: 1, 2, 3, 1 adalah sebuah sirkuit. Panjang sirkuit adalah jumlah sisi dalam sirkuit tersebut. Sirkuit 1, 2, 3, 1 pada G1 memiliki panjang 3.
G1 G2 G3
1
32
4
1
23
4
5
1
2
e 1
e 2 e 3
e 4e 53
26
8 . T e r h u b u n g (C o n n e c te d )
D u a b u a h s im p u l v 1 d a n s im p u l v 2 d ise b u t te r h u b u n g jik a te rd a p a t lin ta sa n d a r i v 1 k e v 2 .
G d ise b u t g r a f te r h u b u n g (c o n n e c te d g ra p h ) jik a u n tu k se tia p p a sa n g s im p u l v i d a n v j d a la m h im p u n a n V te rd a p a t lin ta sa n d a r i v i k e v j.
J ik a tid a k , m a k a G d ise b u t g r a f ta k -te r h u b u n g (d isc o n n e c te d g ra p h ) . C o n to h g ra f ta k -te rh u b u n g :
1
2
3
4
5
6
78
27
Graf berarah G dikatakan terhubung jika graf tidak berarahnya terhubung (graf tidak berarah dari G diperoleh dengan menghilangkan arahnya).
Dua simpul, u dan v, pada graf 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 graf
tidak berarahnya, maka u dan v dikatakan terhubung lemah (weakly coonected).
28
9. Graf Berbobot (Weighted Graph)
Graf berbobot adalah graf yang setiap sisinya diberi sebuah harga (bobot).
a
b
cd
e
10 12
8
15 911
14
REPRESENTASI GRAF
Matriks ketetanggan
Matriks Bersisian
Senarai Berketetanggan
29
Rinaldi M
/IF2091 S
trukdis
REPRESENTASI GRAF
30
1. Matriks Ketetanggaan (adjacency matrix)
A = [aij], 1, jika simpul i dan j bertetangga aij = { 0, jika simpul i dan j tidak bertetangga
31
C o n to h :
4321 54321 4321
4
3
2
1
0110
1011
1101
0110
00000
00100
01011
00101
00110
5
4
3
2
1
4
3
2
1
0110
0001
1101
0010
(a ) (b ) (c )
4321
4
3
2
1
0210
2112
1101
0210
1
32
4
1
23
4
5
1
2 3
4
1
2
4
3
e1
e 2e3
e4
e5e6
e7
e8
32
Derajat tiap simpul i: (a) Untuk graf tak-berarah
d(vi) =
n
jija
1
(b) Untuk graf berarah,
din (vj) = jumlah nilai pada kolom j =
n
iija
1
dout (vi) = jumlah nilai pada baris i =
n
jija
1
33
a b c d e
15810
151411
149
811912
1012
e
d
c
b
a
a
b
cd
e
10 12
8
15 911
14
34
2. Matriks Bersisian (incidency matrix)
A = [aij], 1, jika simpul i bersisian dengan sisi j aij = { 0, jika simpul i tidak bersisian dengan sisi j
e1 e2 e3 e4 e5
4
3
2
1
10000
11100
00111
01011
1 2
3
4
e1
e2 e3e4
e5
35
3. Senarai Ketetanggaan (adjacency list)
Simpul Simpul Tetangga Simpul Simpul Tetangga Simpul Simpul Terminal 1 2, 3 1 2, 3 1 2 2 1, 3, 4 2 1, 3 2 1, 3, 4 3 1, 2, 4 3 1, 2, 4 3 1 4 2, 3 4 3 4 2, 3 5 -
(a) (b) (c)
1
32
4
1
23
4
5
1
2 3
4
GRAF ISOMORFIK
36
Dua buah graf yang sama tetapi secara geometri berbeda disebut graf yang saling isomorfik.
Dua buah graf, 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.
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 graf yang isomorfik adalah graf yang sama, kecuali penamaan
simpul dan sisinya saja yang berbeda. Ini benar karena sebuah graf dapat digambarkan dalam banyak cara.
37
( a ) G 1 (b ) G 2 ( c ) G 3
G a m b a r 6 .3 5 G 1 is o m o r f ik d e n g a n G 2 , te ta p i G 1 t id a k is o m o r f ik d e n g a n G 3
3
4
1 2
d c
a b
v w
x y
38
(a) G1 (b) G2
Gambar 6.36 Graf (a) dan graf (b) isomorfik [DEO74] edcba zvwyx
AG1 =
e
d
c
b
a
01000
10101
01011
00101
01110
AG2 =
z
v
w
y
x
01000
10101
01011
00101
01110
z
d
c
a
b
e
x
v w
y
39
(a)
(b)
Gambar 6.38 (a) Dua buah graf isomorfik, (b) tiga buah graf isomorfik
40
D a r i d e f i n i s i g r a f i s o m o r f i k d a p a t d i k e m u k a k a n b a h w a d u a b u a h g r a f i s o m o r f i k m e m e n u h i k e t i g a s y a r a t b e r i k u t [ D E O 7 4 ] : 1 . M e m p u n y a i j u m l a h s i m p u l y a n g s a m a . 2 . M e m p u n y a i j u m l a h s i s i y a n g s a m a 3 . M e m p u n y a i j u m l a h s i m p u l y a n g s a m a b e r d e r a j a t t e r t e n t u
N a m u n , k e t i g a s y a r a t i n i t e r n y a t a b e l u m c u k u p m e n j a m i n . P e m e r i k s a a n s e c a r a v i s u a l p e r l u d i l a k u k a n .
( a ) ( b )
x
u
v
w
y
GRAF PLANAR (PLANAR GRAPH) DAN GRAF BIDANG (PLANE GRAPH)
Graf yang dapat digambarkan pada bidang datar dengan sisi-sisi tidak saling memotong (bersilangan) disebut graf planar,
jika tidak, maka ia disebut graf tak-planar. K4 adalah graf planar:
41
K5 adalah graf tidak planar:
42
43
Graf planar yang digambarkan dengan sisi-sisi yang tidak saling berpotongan disebut graf bidang (plane graph).
(a) (b) (c)
Tiga buah graf planar. Graf (b) dan (c) adalah graf bidang
LINTASAN DAN SIRKUIT EULER
44
Lintasan Euler ialah lintasan yang melalui masing-masing sisi di dalam graf tepat satu kali.
Sirkuit Euler ialah sirkuit yang melewati masing-masing sisi tepat satu
kali..
Graf yang mempunyai sirkuit Euler disebut graf Euler (Eulerian graph). Graf yang mempunyai lintasan Euler dinamakan juga graf semi-Euler (semi-Eulerian graph).
45
Rinaldi M
/IF2091 S
trukdisContoh. Lintasan Euler pada graf (a) : 3, 1, 2, 3, 4, 1 Lintasan Euler pada graf (b) : 1, 2, 4, 6, 2, 3, 6, 5, 1, 3 Lintasan Euler (f) : a,c,d,a,b,d,e,b Sirkuit Euler pada graf (c) : 1, 2, 3, 4, 7, 3, 5, 7, 6, 5, 2, 6, 1 Sirkuit Euler pada graf (d) : a, c, f, e, c, b, d, e, a, d, f, b, a Graf (e) tidak mempunyai lintasan maupun sirkuit Euler
(a) (b) dan (f) graf semi-Euler (c) dan (d) graf Euler (e) bukan graf semi-Euler atau graf 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)
LINTASAN DAN SIRKUIT HAMILTON
46
Rinaldi M
/IF2091 S
trukdis
Lintasan Hamilton ialah lintasan yang melalui tiap simpul di dalam graf tepat satu kali.
Sirkuit Hamilton ialah sirkuit yang melalui tiap simpul di dalam graf
tepat satu kali, kecuali simpul asal (sekaligus simpul akhir) yang dilalui dua kali.
Graf yang memiliki sirkuit Hamilton dinamakan graf Hamilton,
sedangkan graf yang hanya memiliki lintasan Hamilton disebut graf semi-Hamilton.
47
Rinaldi M
/IF2091 S
trukdis
(a) (b) (c)
(a) graf yang memiliki lintasan Hamilton (misal: 3, 2, 1, 4) (b) graf yang memiliki lintasan Hamilton (1, 2, 3, 4, 1) (c) graf yang tidak memiliki lintasan maupun sirkuit Hamilton
1 2
34
1
3
2
4
1 2
34
48
Rinaldi M
/IF2091 S
trukdis
Beberapa graf dapat mengandung sirkuit Euler dan sirkuit Hamilton sekaligus, mengandung sirkuit Euler tetapi tidak mengandung sirkuit Hamilton, dan sebagainya..
(a) (b)
(a) Graf Hamilton sekaligus graf Euler (b) Graf Hamilton sekaligus graf semi-Euler
6
5
4
1
3
2
5
1 2
34
BEBERAPA APLIKASI GRAF
Lintasan terpendek (shortest path)o Persoalan pedagang keliling (travelling
salesperson problem) Persoalan tukang pos Cina (chinese postman
problem) Pewarnaan graf (graph colouring)
49
Rinaldi M
/IF2151 M
atdis