Anda di halaman 1dari 52

Relasi dan fungsi merupakan bahasan dasar dari matematika.

Pembahasan
mengenai konsep ini salah satunya dapat didekati dari operasi himpunan. Hal ini
yang akan dilakukan dalam modul ini. Pembahasan ditekan pada pengenalan
terminology serta ketrampilan manipulasi matematika, bukan pada sifat-sifat maupun
analisisnya. Pembahasan mengenai fungsi mulai dari definisi sampai dengan operasi-
operasi fungsi maupun komposisi fungsi.

5.1 Gugus Ganda Kartesius


Konsep relasi dan fungsi akan dikembangkan berdasarkan perkalian silang antara
dua himpunan A dan B. Perkalian silang ini sering dikenal dengan nama himpunan
ganda kartesius.
Definisi :
Himpunan ganda kartesius antar dua himpunan A dan B adalah suatu
himpunan yang beranggotakan pasangan berurut (a i,bj) untuk semua i dan j
dengan aiA dan bjB.
Himpunan ganda kartesius seperti ini disimbolkan sebagai AxB.
Oleh karena itu, jika ukuran A adalah n(A) dan ukuran adalah n(B), maka ukuran AxB
adalah |AxB|=n(A)xn(B).
Dalam notasi himpunan, himpunan ganda kartesius dapat dituliskan sebagai :
AxB={(ai,bj)|untuk semua pasangan i dan j dengan aiA dan bjB}
Contoh :
A={1,2,3} dan B={a,b}, maka :
AxB={(1,a), (1,b), (2,a), (2,b), (3,a), (3,b)}
BxA={(a,1), (a,2), (a,3), (b,1), (b,2), (b,3)}
AxA={(1,1), (1,2), (1,3), (2,1), (2,2), (2,3), (3,1), (3,2), (3,3)}
Terlihat bahwa AxBBxA, dan |AxB|=3x2=6
Konsep perkalian silang antar himpunan ini dapat dikembangkan untuk tiga himpunan
atau lebih. Sebagai contoh adalah :
BxBxB={(a,a,a), (a,a,b), (a,b,a), (a,b,b), (b,a,a), (b,a,b), (b,b,a), (b,b,b)}

Topik 5 Relasi dan Fungsi


5-1
5.2 Relasi
Relasi sering juga disebut dengan hubungan. Relasi ini menyatakan hubungan antara
unsur-unsur dua buah himpunan. Dua hinpunan ini dapat sama, dapat pula berbeda.
Definisi :
Relasi dari A ke B adalah himpunan bagian dari himpunan ganda kartesius
AxB.
Oleh karena itu, jika ukuran A dan B masing-masing adalah n(A) dan n(B), maka
ukuran dari AxB adalah n(A)xn(B), yang berarti bahwa banyaknya relasi yang dapat
dibuat dari A ke B adalah 2n(A)xn(B).
Contoh :
A={1,2,3} dan B={a,b}, maka :
Relasi yang dapat dibuat dari A ke B adalah 2 3x2=64 buah. Salah satu relasinya
adalah himpunan kosong. Berikut adalah diagram dari beberapa relasi yang dapat
dibuat dari A ke B:

1 a
2 H={(1,a), (1,b)}
b
3

1 a
2 H={(1,a), (3,b)}
b
3

1 a
2 H={(1,a), (3,a)}
b
3

1 a
2 H={(1,a), (2,b), (3,b)}
b
3

Coba sebutkan beberapa lainnya lagi.

Latihan Pertemuan 8 Bagian I


1. Jika A={0,{0}} dan B={0,{},1}, tentukan
a. n(AxB)
b. AxB
c. Banyaknya relasi yang bisa dibuat dari A ke B

Topik 5 Relasi dan Fungsi


5-2
d. Semua relasi dari A ke B yang beranggotan sebanyak 5
2. Arsirlah daerah yang memenuhi relasi berikut dalam bidang dimensi dua
a. H1={(x,y)|x2+y2<9, dengan xreal, ybulat}
b. H2={(x,y)|x2+y29, dengan xreal, ybulat}
c. H3={(x,y)|x2+y29, dengan xreal, yreal}
d. H4={(x,y)|4|x|+|y|, dengan xreal, yreal}

5.3 Fungsi
Istilah fungsi dikenal juga dengan nama pemetaan. Fungsi dari A ke B adalah pemetaan
unsur-unsur A ke unsure di B. Dalam hal ini himpunan A dan B dapat saja sama.
Definisi :
Fungsi dari A ke B adalah himpunan bagian dari AxB, atau dengan kata lain
relasi dari A ke B, dengan sifat bahwa setiap anggota A dijamin mempunyai
tepat satu anggota B sebagai pasangannya.
Oleh karena itu, jika ukuran A dan B masing-masing adalah n(A) dan n(B), maka
banyaknya fungsi dari A ke B yang dapat dibuat adalah [n(B)]n(A). Kenapa?
Contoh :
A={1,2,3} dan B={a,b}, maka :
Banyaknya fungsi yang dapat dibuat dari A ke B adalah 23=8 buah. Berikut adalah
diagram dari beberapa fungsi dari A ke B yang dapat dibuat :

1 a
2 f={(1,a), (2,b), (3,b)}
b
3

1 a
2 f={(1,a), (2,a)(3,b)}
b
3

1 a
2 f={(1,a), (2,a), (3,a)}
b
3

1 a
2 f={(1,a), (2,b), (3,a)}
b
3

Bisakah anda sebutkan beberapa lainnya lagi?

Topik 5 Relasi dan Fungsi


5-3
Dalam hal ini :
Himpunan A disebut Domain atau daerah asal fungsi f, disimbolkan dengan D f
Himpunan B disebut Daerah kawan atau Kodomain fungsi f
Sedangkan himpunan yang berisi semua peta dari unsur-unsur A disebut Range
atau wilayah hasil, Wf.
Contoh :

1 a Df={1, 2, 3}
2 Range={a}
b
3 Kodomain={a,b}

Jika pasangan anggota fungsi tersebut adalah bilangan, maka anggota fungsi ini dapat
digambarkan dalam suatu bidang X-Y sebagai himpunan titik-titik (koordinat). Sebagai
contoh adalah :
a. f={(1,2), (2,4), (3,4)}
4 • •
1 2
2 •
2
4
3
1 2 3

b. f(x)=2x+2 dengan x bilangan real

-1

Berdasarkan grafik dalam bidan X-Y, maka grafik tersebut merupakan grafik fungsi jika
garis vertical hanya memotong di satu titik. Sedangkan garis horizontal boleh memotong
di lebih dari satu titik.
Contoh :

Topik 5 Relasi dan Fungsi


5-4
Grafik berikut adalah bukan grafik fungsi

Proyeksi grafik fungsi ke sumbu X merupakan daerah asal, sedangkan proyeksi ke sumbu
Y merupakan daerah hasil.
Contoh :

4 Daerah asal : {x|-1x6, x bilangan real}


Daerah hasil : {y|0y4, y bilangan real}

-1 6

5.4 Beberapa Fungsi Khusus


Beberapa fungsi khusus yang dikenal di dalam matematika ini dikaitkan dengan sifat anggota dalam kodomain
sebagai bayangan dari anggota dalam domain. Dalam hal ini ada tiga fungsi khusus yang dikenal, yaitu :
1. Fungsi Injektif
2. Fungsi Surjektif
3. Fungsi Bijektif
Jika fungsi f memetakan unsur-unsur A ke B (A sebagai daerah fungsi atau Domain, sedangkan B sebagai
kodomain atau daerah kawan), maka :
a. f disebut fungsi Injektif jika setiap anggota B paling banyak sekali sebagai bayangan dari unsur dalam A.
Oleh karena itu syarat supaya dapat dibuat fungsi Injektif adalah : |A||B|. Selain itu kita bisa
mengatakan bahwa banyaknya fungsi injektif yang dapat dibuat dari A ke B adalah sebanyak : ……. (coba
hitung).
b. f disebut fungsi Surjektif jika setiap anggota B paling sedikit sekali sebagai bayangan dari unsur dalam A.
Oleh karena itu syarat supaya dapat dibuat fungsi surjektif adalah : |A||B|. Selain itu kita bisa
mengatakan bahwa banyaknya fungsi surjektif yang dapat dibuat dari A ke B adalah sebanyak : ……. (coba
hitung).
c. f disebut fungsi Bijektif jika setiap anggota B tepat sekali sebagai bayangan dari unsur dalam A.

Topik 5 Relasi dan Fungsi


5-5
Oleh karena itu syarat supaya dapat dibuat fungsi Bijektif adalah : |A|=|B|. Selain itu kita bisa
mengatakan bahwa banyaknya fungsi injektif yang dapat dibuat dari A ke B adalah sebanyak : ……. (coba
hitung).
Contoh :
Dari gambar berikut, tentukan mana yang injektif, surjektif, maupun bijektif ?
a. b. c. d.

1 a 1 a 1 a 1 a
2 2 2 2
b b b b
3 3 3 3
cc
d
e. f. g. h.

1 a 1 a 1 a 1 a
2 2 2 2
b b b b
3 3 3 3
c cd c
d

5.5 Jenis-Jenis Fungsi


Di dalam matematika dikenal beberapa jenis fungsi. Di anataranya adalah :
a. Fungsi konstan
Fungsi ini bernilai tetap (konstan) untuk nilai x berapa saja dalam daerahnya.
Bentuk :
f(x)=k, dengan k adalah suatu konstanta
Contoh
f(x)=4, untuk x bilangan real
grafik fungsi ini adalah :
4
2

b. Fungsi identitas
Fungsi ini bernilai sama dengan inputnya.
Bentuk :
f(x)=x, dengan kDf
Contoh
f(x)=x, untuk x bilangan real
grafik fungsi ini adalah :
y=x

Topik 5 Relasi dan Fungsi


5-6
c. Fungsi polinomial
Fungsi ini merupakan penjumlahan dari x pangkat tertentu dengan koefisien tertentu pula. Orde
fungsi polynomial ini adalah pangkat tertinggi dari x.
Bentuk :
f(x)=a0+a1x+a2x2+…+anxn, dalam hal ini a 0, a1, …, an adalah koefisiennya.
Jika n=1, disebut fungsi linear
Jika n=2 disebut fungsi kuadrat
Contoh
f(x)=x2+x+5 (adalah fungsi kuadrat)
d. Fungsi Rasional
Fungsi ini merupakan rasio dari dua fungsi polinom. Daerah fungsi ini adalah adalah semua bilangan
real yang tidak menyebabkan pembaginya nol.
Bentuk :

x 2 + 2x + 1
f ( x) = dalam hal ini Df={x|x-30, x adalah bilangan real}
x −3
e. Fungsi Akar
Nilai fungsi ini adalah tidak pernah negatif. Nilainya selalu nol atau positif.
Bentuk :

f ( x) = g ( x) dalam hal ini Df={x|g(x)0, x adalah bilangan real}

Contoh

1. f ( x) = ( x − 1)( x + 2)
Maka Df={x|(x-1)(x+2)0, x adalah bilangan real}
Karena (x-1)(x+2)0  x-2 atau x1, maka boleh ditulis juga :
Df={x| x-2 atau x1, x adalah bilangan real}

2. f ( x) = x 2 − 5 x − 6 , tentukan Df.

f. Fungsi Harga Mutlak


Seperti fungsi akar, fungsi harga mutlak juga selalu bernilai nol atau positif, tidak pernah negatif.
Bentuk :

 g ( x) Untuk semua g(x)0


f ( x) =| g ( x) |= 
− g ( x ) Untuk semua g(x)<0

Topik 5 Relasi dan Fungsi


5-7
Contoh
1. f(x)=|x|
jika x=-3, maka f(x)=|-3|=3
jika x=3, maka f(x)=|3|=3
Gambar fungsi :

2. f(x)=|x-2|, gambarkan grafiknya.


3. f(x)=|x2-4|, gambarkan grafiknya.

g. Fungsi Bilangan Bulat Terbesar


Operator bilangan bulat terbesar disimbolkan dengan “ ”, yang berarti bilangan bulat terbesar yang
lebih kecil atau sama dengan bilangan yang ada dalam tanda tersebut. Sebagai contoh adalah :
1. 3.8=3 5. -3.8=-4
2. 3.1=3 6. -3.1=-4
3. 3.0=3 7. -3.0=-3
4. 4.0=4 8. -4.0=-4
Fungsi bilangan bulat terbesar menggunakan symbol di atas.
Bentuk :
f(x)= g(x)
Contoh
f(x)= 2x-5
Jika x=2.1, maka f(x)= 4.2-5=-0.8=-1
Jika x=4.3, maka f(x)= 8.6-5=3.6=3

h. Fungsi Bilangan Bulat Terkecil


Operator bilangan bulat terkecil disimbolkan dengan “ ”, yang berarti bilangan bulat terkecil yang
lebih besar atau sama dengan bilangan yang ada dalam tanda tersebut. Sebagai contoh adalah :
1. 3.8=4 5. -3.8=-3
2. 3.1=4 6. -3.1=-3
3. 3.0=3 7. -3.0=-3
4. 4.0=4 8. -4.0=-4
Fungsi bilangan bulat terkecil menggunakan symbol di atas.

Topik 5 Relasi dan Fungsi


5-8
Bentuk :
f(x)= g(x)
Contoh
f(x)= 2x-5
Jika x=2.1, maka f(x)= 4.2-5=-0.8=-1
Jika x=4.3, maka f(x)= 8.6-5=3.6=4

Latihan Pertemuan 8 Bagian II


1. Tentukan daerah fungsi untuk fungsi-fungsi berikut :

x −3
a) f ( x) =
( x − 1)( x + 2)

b) f ( x) = x 2 − 7 x + 12

( x − 2)( x + 1)
c) f ( x) =
x2 + x − 6

2. Tentukan nilai-nilai berikut :


a. |-3.5| e. -5.8 i. 6.2
b. |3.9| f. 0.6 j. 0.9
c. |0| g. -0.9 k. 0.6
d. |-3.9| h. -10.8 l. -5.7
3. Gambarkan fungsi berikut :
a. f(x)=|2x-5|
b. f(x)=|x+2|+|x+1|
c. f(x)= x
d. f(x)= -x
e. f(x)= |x|
f. f(x)= |x|
g. f(x)= x+4
h. f(x)= x
i. f(x)= -x
4. Untuk A={1,2,3,4,5} serta B={1,2,3,4,5,6}, ada berapa fungsi injektif dari A ke B yang memenuhi :
a. f(1)=3
b. f(1)=3 dan f(2)=6

Topik 5 Relasi dan Fungsi


5-9
5.6 Operasi Terhadap Fungsi
Pada bagian ini akan dibahas enam operasi fungsi, yaitu :
1. penjumlahan fungsi : f(x)+g(x)=(f+g)(x)
2. pengurangan fungsi : f(x)-g(x)=(f-g)(x)
3. perkalian fungsi : f(x).g(x)=(f.g)(x)
4. pembagian fungsi : f(x)/g(x)=(f/g)(x)
5. kebalikan fungsi : f-1(x)
6. komposisi fungsi : f ( x)  g ( x) = ( f  g )( x)

Penjumlahan, Penguranga, Perkalian dan Pembagian Fungsi


Operasi-operasi ini hanya akan dapat dilakukan pada daerah yang sama.

Contoh :
1. Misalkan f(x)=x-2 dan g(x)=|x+1|, maka :
a. (f+g)(x)=x-2+|x+1|
misal x=5, maka : f(5)+g(5)=(f+g)(5)=5-2+|5+1|=3+6=9
b. (f-g)(x)=x-2-|x+1|
misal x=5, maka : f(5)-g(5)=(f-g)(5)=5-2-|5+1|=3-6=-3
c. (f.g)(x)=(x-2).|x+1|
misal x=5, maka : f(5).g(5)=(f.g)(5)=(5-2).|5+1|=3 . 6=18
d. (f/g)(x)=(x-2)/|x+1|
misal x=5, maka : f(5)/g(5)=(f/g)(5)=(5-2)/|5+1|=3/6=1/2
2. Lakukan hal yang sama seperti di atas untuk : f(x)=x-1 dan g(x)=|x+1|, untuk -3x3

Komposisi Fungsi
Komposisi fungsi dikenal juga dengan fungsi majemuk. Dalam hal ini x sebagai input suatu fungsi
tertentu. Hasil dari fungsi dengan input x ini sebagai masukan bagi fungsi berikutnya, dan hasil dari fungsi ini
sebagai input bagi fungsi berikutnya lagi, dan begitu seterusnya. Simbol untuk komposisi fungsi adalah “  ”.
Bentuk :
(f  g)(x)=f[g(x)]
artinya : x dimasukkan sebagai input untuk g, dan hasilnya sebagai input bagi f.

Contoh :
Misalkan f(x)=x-5 dan g(x)=|x+1|, maka :
Jika x=2, maka : (f  g)(2)=f[g(4)]=f(3)=-2 juga (g  f)(2)=g[f(2)]=g(-3)=2

Topik 5 Relasi dan Fungsi


5-10
Kebalikan Fungsi
Istilah kebalikan fungsi sering dikenal juga dengan nama invers suatu fungsi. Kebalikan fungsi f
disimbokan dengan f-1 dan dibaca sebagai “kebalikan fungsi f” atau “invers dari fungsi f” atau “f invers”.
Suatu fungsi f akan mempunyai kebalikan jika dan hanya jika f adalah bijektif (atau korespondensi satu-satu).
Definisi :
Jika f adalah fungsi bijektif dengan domain A dan kodomain B, maka f -1 adalah kebalikan dari f. f -1 ini
memetakan unsur dari B ke A, dengan sifat bahwa : f(a)=b jika dan hanya jika f -1(b)=a, dengan aA
dan bB.

Contoh :
1. perhatikan Diagram berikut :

1 a
2
b
3
c

Diagram tersebut merupakan diagram untuk fungsi bijektif, oleh karena itu mempunyai kebalikan
fungsi. Dalam hal ini :
f(1)=a, f(2)=c, f(3)=b. Juga bisa dikatakan f -1(a)=1, f-1(b)=3, f-1(c)=2
2. Jika f(x)=2x+10, maka :
y=2x+10
 2x=y-10
 x=(y-10)/2
maka dapat dirumuskan bahwa f -1(x)=(x-10)/2

x −3
3. Tentukan kebalikan fungsi berikut : f ( x) =
x −1

Topik 5 Relasi dan Fungsi


5-11
Latihan Pertemuan 9
1. Jika :

f ( x) = x − 4 dengan Df={x|x bilangan real, x4} serta

g ( x) = 25 − x 2 dengan Df={x|x bilangan real, -5x5}


Hitung yang berikut, serta tentukan nilainya untuk x=4 :
a. f(x)+g(x)
b. f(x)-g(x)
c. f(x).g(x)
d. f(x)/g(x)
e. f[g(x)]
2. Gambarkan fungsi berikut :

 x 2 + 1 x<-1

f ( x) =  2 -1x4
1 − 2 x
 x>4

3. Perhatikan tabel berikut :

x f(x) g(x) f2(x) f(x2) f[g(x)] g[f(x)] f-1(x) g-1(x) x2(f.g)(x)


0 4 2
1 3 5
2 1 4
3 5 2
4 2 1
5 0 3

4. Jika f(x) dan g(x) adalah sesuai dengan fungsi berikut, tentukan f[g(x)]

x2 + 2 x<2
 x −1 x3
f ( x) =  x − 1 2x<5 dan g ( x) = 
 x2  x 0x<5
x5

Maka tentukan f[g(x)].
5. Jika f(x)=2x+2 dan f[g(x)]=6x-4, tentukan g(x).
6. Jika f(x)=2x+2 dan g[f(x)]=6x-4, tentukan f(x).
7. Jika :
 x 2 + 1 x<-1
 dan g(x)=|x-4|
f ( x) =  2 -1x4
1 − 2 x
 x>4

Topik 5 Relasi dan Fungsi


5-12
Tentukan : (f+g)(x) dan juga (f/g)(x).
8. Tentukan f--1(x) untuk fungsi-fungsi berikut :
a. f(x)=5x+4, juga hitung f--1(9).

x−2
b. f ( x) = , juga hitung f--1(0)
4x + 8
c. f(x)=|x2+3x+1|, juga hitung f--1(1)

x
d. f ( x) = , juga hitung f--1(4)
x+2

Topik 5 Relasi dan Fungsi


5-13
Telah kita ketahui bersama bahwa keunggulan komputer adalah dalam melakukan komputasi.
Dalam hal ini seringkali kita jumpai nilai suatu fungsi dengan domain bialngan bulat dihitung secara
iterative. Hal ini dikarenakan suatu fungsi dinyatakan sebagai fungsi dari dirinya sendiri.
Permasalahan akan muncul untuk n yang cukup besar. Untuk kasus ini penghitungan secara
iterative akan tidak efisien. Oleh karena itu perlu ditemukan suatu rumus dalam n untuk fungsi
tersebut, sehingga penghitungan suatu fungsi tidak perlu dimulai dari n terkecil, tetapi dapat
langsung dilakukan. Hal ini akan menjadi bahasan utama topik ini.

6.1 Pengertian
Relasi rekursif merupakan barisan unsur-unsur, dimana nilai suatu unsur merupakan fungsi dari unsur-
unsur sebelumnya. Unsur ke n biasanya dituliskan sebagai an. Sebagai ilustrasi perhatikan contoh berikut :
a. 3an+1=2an+an-1
b. 3an+1=2an+an-1, untuk n1, a0=7, dan a1=3.
Pada contoh di atas terdapat dua perbedaan antara (a) dengan (b), yaitu :
- Pada bagian (a) kita belum dapat menentukan secara khusus relasi rekursif yang
dimaksud. Ada banyak sekali relasi rekursi yang memenuhi (a) di atas. Di antaranya
adalah :
1. 11, 3, 5 6/9, 4 21/27, …
2. 7, 3, 4 1/3, 3 8/9, 4 1/27, …
3. dsb.
- Pada bagian (b), relasi rekursif yang dimaksud sudah khusus, dan hanya ada satu buah
yang memenuhi, yaitu :
7, 3, 4 1/3, 3 8/9, 4 1/27, …
Relasi rekursif untuk contoh (a) disebut sebagai bentuk umum. Sedangkan untuk bagian (b) disebut bentuk
khusus. Terlihat bahwa bentuk khusus adalah bentuk umum yang sudah diberi nilai awal (nilai inisial).
Nilai inisial ini juga disebut sebagai nilai atau kondisi pembatas (boundary condition).

6.2 Solusi Suatu Relasi Rekursif


Yang dimaksud solusi dari suatu relasi rekursif adalah perumusan suku ke-n sebagai fungsi dari n,
bukan dalam bentuk fungsi dari suku-suku sebelumnya.
Suatu relasi rekursif dapat dicari solusinya kalau dia sudah dalam bentuk khusus, yaitu sudah diberi nilai inisial.
Sebagai contoh perhatikan tabel di bawah ini :

Topik6 Relasi rekursif


6-1
No. Relasi rekursif Inisial Solusi

1 an+1=3an n0, dan a0=5 an=5 x 3n

2 an=an-1+ an-2
1  1 + 5   1 − 5  
n0, a0=0, dan a1=1 n n

an =   −   
5  2   2  
 
3 2an+3=an+2+2an+1-an n0, a0=0, a1=1 dan a2=2 an = 5/2 + 1/6(-1)n – 8/3(1/2)n

4 an - 3an-1 = 5 (7n) n1, dan a0=2 an = (5/4) (7n+1) – (1/4) (3n+3)

6.3 Klasifikasi Relasi Rekursif


Ada beberapa hal yang mencirikan suatu relasi rekursif, yaitu :
a. Seberapa jauh keterkaitan dengan unsur sebelumnya
b. Perpangkatan dari suku-suku dalam persamaan relasi rekursif
c. Bentuk fungsi f(n) dalam relasi rekursif tersebut.

Sebagai ilustrasi perhatikan relasi rekursi berikut :


an - 3an-1 = 5 (7n)
Terlihat bahwa :
a. Suatu unsur terkait dengan satu level unsur sebelumnya
b. Suku-suku dalam persamaan adalah berpangkat satu
c. Fungsi f(n) adalah : f(n)= 5 (7n)
Berdasarkan tiga ciri tersebut, relasi rekursif dapat dikelompokkan menjadi :
1. Relasi rekursif homogen linear (linear homogeneous recurens relation)
a. Relasi rekursif homogen linear orde satu (first-order linear homogeneous recurens relation)
Contoh : an - 3an-1 = 0
b. Relasi rekursif homogen linear orde dua (second-order linear homogeneous recurens relation)
Contoh : an-an-1- an-2=0
c. Relasi rekursif homogen linear orde k (k-order linear homogeneous recurens relation)
Bentuk umum : ckan+k + ck-1an+k-1 + … + c1an+1 + c0an = 0
2. Relasi rekursif homogen nonlinear (nonlinear homogeneous recurens relation)
Contoh :
Relasi rekursif homogen nonlinear orde 2 : an + 2an-1 - an-2 = 0

Topik6 Relasi rekursif


6-2
3. Relasi rekursif nonhomogen linear (linearnon homogeneous recurens relation)
Contoh :
Relasi rekursif nonhomogen linear orde 2 : an + 2an-1 - an-2 = 5(n!)
4. Relasi rekursif nonhomogen nonlinear (nonlinear nonhomogeneous recurens relation)
Contoh :
Relasi rekursif nonhomogen nonlinear orde 2 : an + 2an-1 - an-2 = 5(n!)
Di dalam kuliah ini hanya akan dibahas relasi rekursif linear homogen (jenis 1).

6.4 Beberepa Cara Mencari Solusi Relasi Rekursif


Untuk memberikan gambaran mengenai metode mencari solusi relasi rekursif ini akan digunakan
contoh untuk : relasi rekursif linear homogen orde 2. Bentuk umum relasi ini adalah :
C2 an+2 + C1 an+1 + C0 an = 0
Misalkan solusinya adalah berbentuk :
an = crn
maka dengan mengsubstitusikannya ke dalam persamaan relasi rekursif tersebut akan diperoleh bentuk :
C2 crn+2 + C1 crn+1 + C0 crn = 0
Atau bisa ditulis juga :
A2rn+2 + A1rn+1 + A0rn = 0
Dengan membagi masing-masing ruas dengan rn, maka akan diperoleh :
A2r2 + A1r + A0 = 0
Persamaan ini disebut sebagai persamaan ciri (characteristic equation), dan akar-akar persamaan tersebut disebut
sebagai akar ciri (characteristic root).
Jika akar-akar persamaan tersebut adalah r1 dan r2, maka solusi relasi rekursif tersebut adalah :
a. Jika r1r2, maka solusinya adalah :
an= c1 (r1)n + c2 (r2)n
b. Jika r1=r2, maka solusinya adalah :
an= c1 (r1)n + c2 n(r2)n
Contoh :
1. Carilah solusi untuk : an + an-1 – 6an-2 = 0, dengan n2, a0=1 dan a1=2.
Persamaan ciri dari relasi tersebut adalah :
r2 + r – 6 = 0
(r-2)(r+3)=0,
maka r1=2 dan r2=-3. Oleh karena itu solusinya adalah :
an= c1 (2)n + c2 (-3)n

Topik6 Relasi rekursif


6-3
Tahap berikutnya adalah mencari nilai c1 dan c2.
a0=1, maka : 1= c1 (2)0 + c2 (-3)0
1=c1 + c2
a1=2, maka : 2= c1 (2)1 + c2 (-3)1
2=2c1 – 3c2
Akhirnya diperoleh : c1 =1 dan c2 = 0. Oleh karena itu, solusi relasi rekursif tersebut adalah :
a n = 2n
2. Carilah solusi untuk relasi rekursif berikut :
an+2 = 4an+1 - 4an, dengan n0, a0=1, dan a1=3.
Jawab :
Relasi tersebut dapat ditulis sebagai :
an+2 - 4an+1 + 4an = 0
sehingga persamaan cirinya adalah :
r2 - 4r + 4 = 0
(r – 2)(r – 2) = 0
r1 = r2 = 2
maka solusinya adalah :
an= c1 (2)n + c2 n(2)n
Untuk menghitung c1 dan c2 digunakan nilai inisial, yaitu :
a0=1, maka :
1= c1 (2)0 + c2 n(2)0
1=c1
a1=3, maka :
3 = c1 (2)1 + c2 n(2)1
3 = 2 + 2c2
c2 = ½
Maka solusi relasi tersebut adalah :
an= 2n + ½ n (2n)
= 2n + n (2n-1)
3. Contoh yang ketiga ini adalah jika akar-akar persamaan ciri adalah bilangan kompleks. Untuk itu,
maka sebelumnya akan kita bahas dahulu bagaimana merumuskan bilangan kompleks tersebut.
Bilangan kompleks z dapat dinyatakan dalam bentuk :
z = x + yi, dengan i=-1
Setiap koordinat (x,y) dapat dinyatakan dengan menggunakan persamaan berikut :

Topik6 Relasi rekursif


6-4
x = r cos , dan y = r sin 
dengan :

• z=x+yi r= x2 + y 2

Oleh karena itu, bilangan kompleks tersebut dapat dinyatakan
y=r sin  sebagai :
r
z = r cos  + r sin  . i
 = r (cos  + i sin )
x=r cos 

Dengan menggunakan dalil DeMoivre berikut :


(cos  + i sin )n = (cos n + i sin n), untuk n0.
Akan diperoleh :
zn = [r (cos  + i sin )]n = rn (cos n + i sin n)
Sebagai ilustrasi perhatikan contoh berikut :

Z = (1+ 3 i)10
Dalam hal ini :

r= 12 + ( 3 )2 = 2

tg =y/x= 3 /, sehingga =/3


Oleh karena itu :

Z = (1+ 3 i)10 = {2(cos /3 + i sin /3)}10


= 210(cos 10/3 + i sin 10/3)
= 1024 (cos 4/3 + i sin 4/3)

= 1024 (-1/2 – i 1/2 3)


= -512(1+i 3)
Berikut ini diberikan contoh relasi rekursi orde dua dengan akar dari persamaan cirinya adalah
bilangan kompleks.
Tentukan solusi dari :
an = 2(an-1 - an-2), dengan n2, a0=1, dan a1=2.
Persamaan ciri dari relasi rekursif tersebut adalah :
r2 – 2r + 2 = 0
Dan diperoleh :
r1=1+i serta r2=1-i

Topik6 Relasi rekursif


6-5
sehingga solusinya adalah :
an = c1(1+i)n+ c2(1-i)n
Dengan dalil DeMoivre diperoleh :
(1+i)n =2(cos /4 + i sin /4)
(1-i)n = 2(cos (-/4) + i sin (-/4)) = 2(cos /4 - i sin /4)
Maka solusi tersebut dapat dituliskan sebagai :
an = c1(2(cos /4 + i sin /4))n+ c2(2(cos /4 - i sin /4))n
= (2)n (k1 cos n/4 + k2 sin n/4)
Dalam hal ini :
k1=c1+c2 dan k2=(c1-c2)i
Berikutnya adalah menghitung k1 dan k2 dengan menggunakan nilai inisial.
a0=1, maka : 1=(2)0 (k1 cos 0 – k2 sin 0)=k1
a1=2, maka : 2=(2)1 (k1 cos /4 – k2 sin /4)=1+k2 , jadi k2 = 1
Oleh karena itu solusi dari relasi rekursif tersebut adalah :
an = (2)n (cos n/4 + sin n/4)

6.5 Latihan Pertemuan 10

1. Rumuskan hubungan rekursif untuk barisan berikut :


a. 2, 10, 50, 250, …
b. 6, -18, 54, -162, …
c. 1, 1/3, 1/9, 1/27, …
d. 7, 14/5, 28/25, 56/125, …
2. Carilah solusi dari hubungan rekursif berikut :
a. an+1-1.5 an=0, n0 dan a0=10
b. 2an-3an-1=0, n1 dan a4=81
3. Carilah solusi untuk relasi rekursif berikut :
a. an=5an-1+6an-2, untuk n2, a0=1, dan a1=3.
b. 3an+1=2an+an-1, untuk n1, a0=7, dan a1=3.
c. an+2+4an=0, untuk n0, a0=a1=1.
d. an+2an-1+2an-2=0 untuk n2, a0=1, dan a1=3.

Topik6 Relasi rekursif


6-6
Graph merupakan suatu cabang ilmu matematika yang sudah lama dikenal. Namun demikian,
penerapan real dari teori graph, khususnya dalam komputer baru ditemukan dikemudian hari. Dalam
bidang komputer, teori graph memberikan landasan yang baik dalam teori komputasi, konsep
jaringan, dan juga berbagai konsep optimisasi dikembangkan dari teori graph. Pada bahasan ini
akan dijelaskan terminology graph, dengan harapan akan memberikan kemudahan untuk memahami
berbagai perkuliahan lanjut yang menggunakan konsep graph dalam implementasinya.

7.1 Pengertian Graph


Graph diperkenalkan oleh Leonhard Euler (1707 – 1783), seorang Matematikawan yang berasal dari
Swiss. Graph merupakan pasangan yang terdiri dari himpunan V, yaitu himpunan titik-titik (atau disebut juga
node atau vertek) dan himpunan E, yaitu himpunan edge-edge yang menghubungkan antar dua vertek tersebut.
V={v1, v2, v3, …, vn}
E={e1, e2, e3, …, em}
Dalam hal ini himpunan V tidak boleh himpunan kosong, sedangkan himpunan E mungkin saja himpunan
kosong. Suatu edge, ei, menghubungkan antar vertek vk dengan vl, maka ditulis sebagai :
Jika arah diperhatikan :
ei=(vk,vl), dan digambarkan sebagai :
vk

Oleh karena itu (vk,vl) (vl,vk) vl

Jika arah tidak diperhatikan :


ei={vk,vl}, dan digambarkan sebagai :
vk

Oleh karena itu {vk,vl}={vl,vk} vl

Definisi :
Graph G=(V,E) adalah pasangan dari himpunan vertek-vertek V dan himpunan edge-edge E
yang menghubungkan antar dua vertek, atau dapat dituliskan EVxV. Jika arah
diperhatikan, disebut digraph,sedangkan jika arah tidak diperhatikan, disebut undigraph.
Contoh :
V={Jakarta, Bogor, Bandung, Cianjur, Tangerang, Cikampek}
E={{jakarta,bogor}, {jakarta,bandung}, {jakarta,tangerang}, {jakarta,cikampek}, {bogor,cianjur},
{cianjur,bandung}, {bogor,tangerang}, {cikampek,bandung}}.

Topik7 Pengatar Graph


7-1
Maka Graph G=(V,E) dapat digambarkan sebagai :

tangerang
cikampek
jakarta

bogor

cianjur
bandung

Berikut disajikan beberapa istilah dalam graph :


1. Incident : Jika edge ei={vk,vl}maka dikatakan edge ei incident dengan vertek vk dan vl.
2. Adjacent : Jika edge ei={vk,vl}maka dikatakan vertek vk dan vertek vl saling adjacent.
Jika ei=(vk,vl), maka vk adjacent ke vertek vl. Atau vertek vl adjacent dari vertek vk.
Vertek vk sebagai source dan vertek vl disebut sebagai vertek terminal.
3. Isolated : Suatu vertek vk dikatakan sebagai vertek terisolasi (isolated vertek) jika vertek vk tidak
adjacent dengan vertek lainnya.
4. Loop : Jika suatu edge e incident dari dan ke vertek yang sama, maka dikatakan edge tersebut
sebagai loop. Graph yang tidak mempunyai loop dikatakan sebagai loop-free.

Sebagai ilustrasi perhatikan graph berikut :

e1

b • e2
• a e1
c
e3
• e1
• d

- Edge e1 adalah incident dengan vertek a dan vertek b.


- vertek a dan vertek b saling adjacent
- vertek c adalah isolated vertek
- edge e2 adalah loop

Topik7 Pengatar Graph


7-2
7.2 Pengertian Jalur
Walk atau jalur adalah suatu barisan bergantian antar vertek dengan edge yang dimulai dan diakhiri oleh
vertek. Jika vertek awal dan vertek akhir sama, maka jalur tersebut disebut jalur tertutup. Sedangkan jika tidak
sama maka disebut jalur terbuka. Panjang suatu jalur adalah banyaknya edge pada jalur tersebut. Sebagai
ilustrasi perhatikan graph berikut :
e1
b •
e9 •a
e1
c e2
e1 e8
• e1
e4 • d
e1
f e3
• e1
• i
e6 e5
e1 e1 • j
• g • h
e7
e1
1. Jalur : c, e4, f, e5, h, e5, f, e4, c, e2, d adalah jalur terbuka dengan panjang 5.
2. Jalur : c, e4, f, e5, h, e5, f, e4, c, e2, d, e8, a, e9, c adalah jalur tertutup dengan panjang 7.
Trail : Trail merupakan jalur dengan tidak ada edge yang diulang.
Circuit : Adalah trail yang tertutup
Path : Path adalah jalur dengan tidak ada vertek yang diulang.
Cycle : Adalah path yang tertutup.
Sebagai ilustrasi perhatikan graph berikut :
e1
a b
e10
e9 c e10
d
e5
e2 e6 e8 e4
e f
e7 e15
e11
g h
e3
e13 e14
i

1. Jalur : a, e9, c, e5, d, e8, f, e7, e, e6, c, e5, d, e10, b adalah bukan trail
2. Jalur : e, e11, g, e3, h, e14, i, e13, g, e2, a adalah trail
3. Jalur : e, e11, g, e3, h, e14, i, e13, g, e2, a, e9, c, e6, e adalah circuit
4. Jalur : e, e11, g, e3, h, e14, i, e13, g, e2, a adalah bukan path
5. Jalur : e, e7, f, e15, h, e14, i, e13, g, e2, a adalah path.
6. Jalur : e, e7, f, e15, h, e14, i, e13, g, e2, a, e9, c, e6, e adalah cycle.

Topik7 Pengatar Graph


7-3
Connected graph (graph terhubungkan) : Suatu graph dikatakan connected graph jika antar dua
vertek sembarang di dalam graph tersebut dijamin ada path yang menghubungkannya. Jika tidak maka
graph tersebut disebut disconnected (tidak terhubungkan). Banyaknya kelompok vertek yang tidak
terhubngkan disebut komponen graph, dan disimbolkan sebagai (G).
Multigraph : Suatu graph dikatakan multigraph jika ada setidaknya dua vertek di dalam graph tersebut
sedemikian banyaknya edge yang incident lebih dari 1. Jika banyaknya edge maksimum yang incident ke
pasangan dua vertek adalah n, maka dikatakan multiplicity dari graph tersebut adalah n. Dan graphnya
disebut sebagai n-graph.
Sebagai ilustrasi perhatikan contoh berikut :
(i) Adalah connected graph dengan multiplicity 4, sehingga disebut 4-graph.

a b
c
d
e
f g

Setiap connected graph maka banyaknya komponen adalah 1, (G)=1.


(ii) Adalah contoh disconnected graph dengan multiplicitynya 2.

b •
• a
c

• d
f

• i
• j
• g • h

Banyaknya komponen graph ini adalah 4, (G)=4. Oleh karena itu termasuk dalam 4-graph

7.3 Subgraph Suatu Graph


Sebagai suatu himpunan suatu graph juga mempunyai subgraph.
Definisi :
Subgraph dari graph G=(V,E) adalah graph lain, yaitu G1=(V1,E1) yang memenuhi sifat :
a. V1 dan V1V serta
b. E1E
Sebagai ilustrasi perhatikan contoh berikut :

Topik7 Pengatar Graph


7-4
G=(V,E) adalah :
•a

•b •c •d

•e
•f

G1=(V1,E1) adalah G2=(V2,E2) adalah :

•a
•a

•b •c •d
•b •c •d

G3=(V3,E3) adalah G4=(V4,E4) adalah

•a •a
•d •f
• •b
• •c
•c d •g
b •e

Maka : G1 adalah subgraph dari G, ditulis G1G


G2 adalah bukan subgraph dari G, ditulis G2G
G3 adalah subgraph dari G, ditulis G3G
G4 adalah bukan subgraph dari G, dan ditulis G4G

Spanning Subgraph
spanning subgraph dari suatu graph G=(V,E) adalah G1=(V1,E1) dengan sifat :
a. G1 adalah subgraph dari G, serta
b. V1=V
Sebagai ilustrasi berikut disajikan beberapa spanning subgraph dari graph G=(V,E) di atas :

Topik7 Pengatar Graph


7-5
(i) (ii)

•a
•a

•b •c •d
•b •c •d

•e
•e •f
•f

(iii) (iv)

•a •a

•b •c •d •b •c •d

•e
•e
•f
•f

Sedangkan contoh berikut adalah bukan spanning subgraph dari graph G tersebut :

subgraph dari G tetapi bukan spanning subgraph


•a

•b •c

•e
•f
bukan subgraph dan bukan spanning subgraph dari G
•a

•b •c •d

•e
•f

Topik7 Pengatar Graph


7-6
7.4 Pengurangan Graph
Suatu graph dapat dikurangi dengan vertek atau dapat juga dikurangi dengan edge. Hasil operasi
tersebut didefinisikan sebagai berikut :

Pengurangan dengan vertek : Graph G=(V,E) dikurangi dengan himpunan beberapan vertek A,
ditulis G-A, adalah graph baru G1 yang merupakan graph G yang telah dihapuskan vertek-
vertek yang tercakup dalam A serta edge yang incident dengan vertek-vertek dalam A
tersebut. Sebagai ilustrasi perhatikan contoh berikut :

•a

•b •d

•b •c •d - {c,e,a} =
•f

•e
•f

Pengurangan graph dengan edge : Graph G=(V,E) dikurangi dengan himpunan beberapan edge B,
ditulis G-B, adalah graph baru G1 yang merupakan graph G yang telah dihapuskan edge-
edge yang ada dalam B. Sebagai ilustrasi perhatikan contoh berikut :

•a •a

e1 e3
e2

e4 - {e2,e4,e7,e5} =
•b •c •d •b •c •d

e5
e6

•e e7 •e
•f •f

Topik7 Pengatar Graph


7-7
7.5 Complete Graph dan Komplemen Suatu Graph
Complete Graph : Jika V adalah himpunan vertek, maka yang dimaksud complete
graph (graph lengkap) dari vertek V adalah suatu graph
G=(V,E) dengan sifat :

“Dijamin ada tepat satu buah edge antar dua vertek


sembarang”

Jika |V|=n, maka complete graph terhadap himpunan vertek V ditulis sebagai Kn. Sebagai ilustrasi
perhatikan contoh-contoh berikut :

K1 adalah : •a

K2 adalah : •a •b

K3 adalah : •a •b

•c

K4 adalah : •a •b

•c •c

•a
K1 adalah :
•b •c

•d •e

Komplemen suatu Graph : Komplemen suatu graph G=(V,E) dengan |V|=n adalah complete graph
Kn dengan sifat semua edge yang ada di G telah dihapus. Sebagai ilustrasi
perhatikan graph berikut :

Topik7 Pengatar Graph


7-8
G=(V,E) adalah :

•a

•b •c

•d
•e

Maka komplemennya adalah :

•a

b• •c
b

d• •e
d

Topik7 Pengatar Graph


7-9
Latihan Pertemuan 11

1. Perhatikan graph berikut :

a b a. Tentukan himpunan yang berisi seluruh vertek dalam


c d graph tersebut.
b. Tentukan himpunan yang berisi seluruh edge
e f c. Graph tersebut termasuk digraph atau undigraph ?
d. Adakah vertek yang terisolasi (isolated vertek) pada
g h
graph tersebut?

e. Adakah loop dalam graph tersebut ?

Jika : {a,b}=e1, {a,c}=e2, {a,g}=e3, {b,d}=e4, {b,h}=e5, {c,d}=e6, {c,e}=e7,


{d,f}=e8, {e,g}=e9, {e,f}=e10, {f,h}=e11, {g,i}=e12, {g,h}=e13, dan
{h,i}=e14,
f. Tentukan panjang dari jalur : a, e1, b, e4, d, e8, f, e10, e, e9, g, e3, a
g. Apakah jalur pada soal (f) di atas adalah jalur tertutup atau jalur terbuka ?
h. Tuliskan 5 buah jalur dari a ke f
i. Apakah jalur : f, e11, h, e14, i, e12, g, e13, h, e5, b, e4, d adalah trail?
j. Apakah jalur : f, e11, h, e14, i, e12, g, e13, h, e5, b, e4, d, e8, f adalah circuit?
k. Apakah jalur : f, e11, h, e14, i, e12, g, e13, h, e5, b, e4, d adalah path?
l. Apakah jalur : f, e11, h, e14, i, e12, g, e13, h, e5, b, e4, d, e8, f adalah cycle?
m. Buatlah path terpanjang dari vertek a ke vertek I, dan berapa panjangnya !
n. Buatlah cycle terpanjang dari vertek a !
o. Apakah graph tersebut ‘connected’ atau ‘disconnected’ ?
p. Berapa banyaknya komponen dari graph tersebut ?
q. Berapa ‘multiplicity’ dari graph tersebut ?
r. Sebutkan semua cycle dari verteks a dengan panjang 6 !
s. Sebutkan semua cycle dari vertek a dengan panjang 9 !
t. Jarak antara dua vertek adalah panjang path minimum yang menghubungkan kedua vertek
tersebut. Tentukan jarak dari vertek a ke i !

Topik7 Pengatar Graph


7-10
2. Perhatikan graph G=(V,E) berikut :
e1

b •
e9 •a
e1
c e2
e1 e8
• e1
e4 • d
e1
f e3
• e1
• i
e6 e5
e1 e1 • j
• g • h
e7
e1
a. Mana saja dari yang berikut ini merupakan subgraph dari graph di atas :
(i) (ii) (iii)

b • b • b •
• a • a • a
c c c
• • d
• •
• d • d

b. Apakah graph berikut merupakan spanning subgraph dari graph di atas ?

b •
• a
c

• d
f

• i
• j
• g • h

c. Ada berapa komponen dari graph pada soal (b) di atas ?


d. Dari graph G di atas, tentukan : (i) G – {d, f, a} (ii) G – {e4, e8, e7}
e. Tentukan komplemen dari graph G di atas !

Topik7 Pengatar Graph


7-11
7.6 Derajad Suatu Vertek
Derajad vertek suatu undirected graph : derajad suatu vertek v dari suatu undirected graph adalah
banyaknya edge yang incident ke vertek tersebut, dan ditulis sebagai deg(v). Vertek
dengan derajad satu disebut pendant vertek.

Untuk setiap graph selalu berlaku :

 deg(v) = 2 | E |
vV

Sebagai ilustrasi perhatikan graph berikut :

•a
•d

•b •c
•e
•f

deg(a)=2
deg(b)=0 Sedangkan |E| = 5. Oleh karena itu terlihat
deg(c)=2
deg(d)=3 bahwa :
deg(e)=2
deg(f)=1
---------------------  deg(v) = 2 | E |
 deg( v) = 10
v V
vV

Dalam graph tersebut, f adalah pendant vertek.

Euler Circuit : Euler circuit adalah suatu circuit (tidak ada edge yang dilalui lebih dari seklai) yang
melalui seluruh edge. Jika jalur tersebut berupa jalur tertutup maka disebut euler trail.

Suatu undirected loop-free graph akan mempunyai euler circuit jika dan hanya jika derajad
setiap verteknya adalah genap. Oleh karena itu suatu undirected loop-free graph akan
mempunyai euler trail kalau tepat hanya ada vertek yang berderajad ganjil.

Sebagai ilustrasi perhatikan contoh berikut :

Topik7 Pengatar Graph


7-12
c
e5 e6
b
e1 d
e4
a e7
e
e3
e2 e9
f

e8

Terlihat bahwa semua vertek berderajad genap, maka graph tersebut akan mempunyai euler
circuit. Salah satu euler circuitnya adalah :

a, e1, b, e3, f, e8, e, e7, d, e6, c, e5, b, e4, e9, f, e2, a

Contoh untuk euler trail perhatikan graph berikut :

c
e5 e6
b
e1 d
e4
a e7
e
e3
e2 e9
f

e8

Jalur : f, e2, a, e1, b, e5, c, e6, d, e7, e, e4, b, e3, f, e8, e adalah suatu trail.

Derajad vertek suatu directed graph : Ada dua jenis derajad suatu vertek dalam directed graph,
yaitu incoming degree, ditulis sebagai id(v) dan outgoing degree, ditulis sebagai od(v).
Incoming degree, id(v), adalah banyaknya edge yang incident ke vertek v. Sedangkan
outgoing degree, od(v), adalah banyaknya edge yang incident dari vertek v.

Suatu directed graph akan mempunyai euler circuit kalau dipenuhi :

Untuk setiap vertek berlaku : id(v)=od(v)

Topik7 Pengatar Graph


7-13
Sebagai ilustrasi perhatikan contoh berikut :

1. Graph G1=(V1,E1) :

e1
e2
a• •b

e3 e5
e4

c• d• • e e7

e6

Jalur : d, e4, a, e3, c, e7, b, e2, a, e1, a, e5, e, e6, d adalah suatu euler circuit.

2. Graph G2=(V2,E2) :

e1
e2
a• •b

e3 e5
e4

c• d• • e
e6 e7

Graph ini tidak mempunyai euler circuit, sebab pada vertek c id(v)=2od(v)=0. Juga
pada vertek b, id(b)=0od(b)2.

7.7 Planar dan Graph Bipartite


Planar graph : Suatu graph dikatakan sebagai planar graph jika graph tersebut dapat digambarkan
dalam bidang dimensi dua dengan tidak ada edge-edge yang berpotongan kecuali
perpotongannya tepat di vertek.

Graph yang tidak memenuhi sifat di atas dikatakan sebagai non planar graph. Sebagai ilustrasi
perhatikan graph-graph berikut :

Topik7 Pengatar Graph


7-14
a. K5 adalah planar graph seperti dalam gambar berikut :

•e

d• •a

c• •b

b. Kubus dapat digambarkan sebagai planar graph :


h• •e
d• •a
c• •b d• •a

c• •b
h• •e
g• •f g• •f

Graph Bipartite : Suatu graph G=(V,E) dikatakan bipartite jika V=V1V2 dengan V1V2= dan
setiap edge pada G akan berbentuk {a,b} dengan aV1 dan bV2.

Sebagai ilustrasi, marilah kita lihat apakah graph berikut merupakan bipartite :

1. G=(V,E) yang bipartite : e

f
a
b g

c
h
d
i

V1 V2
2. G=(V,E) yang bipartite :

f •a

•l •g

e• •k •h •b

•j •i

d •c

Topik7 Pengatar Graph


7-15
3. G=(V,E) yang bukan bipartite :

f
a
b g

c
h
d
i

V1 V2

7.8 Pewarnaan Graph


Pewarnaan Graph : merupakan pemberian warna pada vertek-vertek suatu graph sedemikian
sehingga vertek-vertek yang saling adjacent mempunyai warna yang berbeda.

Contoh :
•a

b• •c
b

d• •e
d
Vertek a dan c harus mempunyai warna yang berlainan.
Vertek b dan c harus mempunyai warna yang berlainan.
Vertek d dan c harus mempunyai warna yang berlainan.
Vertek d dan e harus mempunyai warna yang berlainan.
Vertek a, b, dan d boleh mempunyai warna yang sama.

Chromatic Number dari graph G ((G)) : merupakan banyaknya warna paling sedikit yang
diperlukan agar supaya dapat dilakukan pewarnaan graph. Untuk graph di atas, maka nilai
chromatic number adalah 2. Sebab hanya perlu dua jenis warna yang berbeda supaya dapat
dilakukan pewarnaan. Misalkan : vertek a, b, dan d diberi warna hitam, sedangkan vertek c dan e
diberi warna putih.

Topik7 Pengatar Graph


7-16
Chromatic Polinomial : merupakan banyaknya pewarnaan yang dapat dibuat jika kita mempunyai
sejumlah warna tertentu. Jika banyaknya warna disimbolkan dengan , chromatic polynomial dari
graph G ditulis sebagai P(G,). Sebagai contoh adalah untuk graph di atas :

•a 
(-1)
b• • c (-1)
b

d• •e (-1)
d
(-1)

P(G,) = (-1)(-1)(-1)(-1) = (-1)4

Jika kita mempunyai warna sebanyak 6 jenis, maka banyaknya pewarnaan yang dapat dibuat adalah

sebanyak : 6 x 5 x 5 x 5 x 5 = 3750.

Latihan Pertemuan 12

1. Perhatikan graph berikut :


b
a c

d g
e f

h k
i j
a. Tentukan derajad masing-masing verteks !
b. Apakah ada pendant vertek dalam graph tersebut ?
c. Tunjukan apakah berlaku :  deg(v) = 2 |E| di dalam graph tersebut ?
d. Apakah ada Euler circuit di dalam graph tersebut. Jika ada tuliskan salah satunya.

Topik7 Pengatar Graph


7-17
2. Perhatikan graph berikut :

a b c

d e f g

h i k
j

a. Tentukan incoming degree, id(v), dan outgoing degree, od(v), dari masing-masing graph tersebut !
b. Dengan memperhatikan jawaban nomor (a) di atas, apakah ada kemungkinan graph tersebut
mempunyai euler circuit. Kenapa ?
c. Sebutkan salah satu euler circuit dalam graph tersebut (kalau ada).

3. Dari planar graph berikut :

a b
c
d
e
f g

a. Tentukan banyaknya ‘region’ dari graph tersebut !


b. Tentukan derajad dari masing-masing daerah tersebut !
c. Tentukan dual dari graph tersebut !
d. Jika loop yang ada dihapuskan, apakah graph tersebut adalah Bipartite ?
4. Mana dari graph berikut yang mempunyai hamilton cycle ?
a

b b
c a
d

e f g
i c d f a
e
h g
k
j i
h

Topik7 Pengatar Graph


7-18
5. Tentukan :
i. chromatic number
ii. chromatic polinomial
iii. Banyaknya pewarnaan jika kita mempunayi 5 warna yang berbeda

dari graph berikut.

a. b. a
a b
h c
c
g d b d e

f e

f
c. a d. c

b
d
b
a
e
f
e g
f
c d

Topik7 Pengatar Graph


7-19
Tree merupakan suatu bentuk khusus dari graph. Di dalam tree dijamin ada path dari satu
vertek ke vertek lain. Ini merupakan sifat tree yang sangat bermanfaat. Di dalam ilmu komputer,
banyak sekali penerapan tree, terutama untuk memberikan gambaran logic dari suatu model data.
Beberapa bahasa pemrograman telah disediakan tipe data tree, namun pada beberapa yang lain
struktur data tree harus didefinisikan dari struktur data yang lebih sederhana. Pembahasan dalam
bagian ini lebih diarahkan pada pengenalan termonologi tree. Juga beberapa searching pada tree
akan dibahas.

8.1 Pengertian Tre


Tree, T(V,E) : merupakan graph G(V,E) yang bersifat connected (terhubungkan) dan tidak mempunyai
cycle (no cycle). Sebagai ilustrasi perhatikan gambar di bawah ini :

• • • •
• • • •
• •
• •
• •
• •
• • • •
• •
• •
• • • •
• •
• •
• •
• •

G1 G2 G3 G4
G1 : adalah Tree
G2 : adalah bukan Tree
G3 : adalah bukan tree. Karena setiap komponennya adalah tree, maka disetut sebagai Forest.

G4 : adalah bukan tree dan bukan forest
Dalil 1 : Jika a dan b adalah dua vertek yang berbeda di dalam T=(V,E) maka dijamin ada tepat satu path
yang menghubung dari vertek a ke vertek b.
Dalil2 : Jika G=(V,E) adalah graph undirected (tak berarah), maka G adalah connected (terubungkan)
jika dan hanya jika G mempunyai spanning tree. Spanning tree adalah tree yang merupakan
spanning graph dari graph G.
Dalil 3 : Pada sembarang tree T=(V,E) berlaku |V|=|E|+1.
Dalil 4 : Pada sembarang tree T=(V,E), jika |V|>1 maka tree tersebut akan mempunyai dua pendant
vertek.

Topik 8 Tree
8-1
Dalil 5 : Lima pernyataan berikut adalah equivalen untuk suatu graph tak berarah G=(V,E) yang tidak
mempunyai loop :
a. G adalah tree
b. G adalah terhubungkan, tetapi dengan menghapus salah satu edge akan menyebabkan
graph tersebut menjadi tidak terhubungkan (menjadi dua subgraph yang masing-masing
adalah tree)
c. G tidak mempunyai cycle dan |V|=|E|+1
d. G adalah terhubungkan dan |V|=|E|+1
e. G tidak mempunyai cycle, dan jika a, bV dengan {a,b}E, maka dengan
menambahkan edge {a,b} ke dalam graph G akan menghasilkan graph baru yang tepat
mempunyai satu cycle.

8.2 Rooted Tree


Rooted tree merupakan directed tree dengan sifat : hanya ada satu vertek (dan disebut sebagai root,
disimbolkan dengan r) yang mempunyai incoming degree 0, id(r)=0, dan vertek-vertek lainnya
mempunyai incoming degree 1, id(v)=1. Sebagai ilustrasi perhatikan tree berikut :

T1 T2 T3

T1 adalah bukan root tree, sedangkan T2 dan T3 adalah root tree (Coba anda tentukan, vertek mana
yang sebagai root).
Ada beberapa istilah di dalam root tree, untuk itu perhatikan tree berikut :

•a

•c •f
•b •d
•e

•g •h

•i •j •k •m
•l

•na •o •p

•q

Topik 8 Tree
8-2
Root : vertek a
Leaf/terminal : adalah vertek dengan id(v)=1 dan od(v)=0, contoh : b, j, m, n, p, dan q
Internal vertek : vertek lain selain leaf, yaitu a, c, d, f, e, g, h, i, k, l, dan o.
Level suatu vertek : panjang path dari root hingga vertek tersebut.
Level vertek a adalah 0
Level vertek g adalah 3
Level vertek q adalah 6
Dsb.
Parent (ayah) : vertek tepat di atasnya
Parent vertek c adalah a
Parent vertek k adalah h
Parent vertek n adalah i.
Dsb.
Child (anak) : vertek tepat di bawahnya
Child vertek a adalah c dan f
Child vertek h adalah k, l, dan m
Parent vertek i adalah n.
Dsb.
Ancestor : adalah vertek-vertek level atasnya yang berada dalam path dari root ke vertek tersebut.
Ancestor dari vertek i dan g adalag d, c, dan a
Ancestor dari vertek o adalah k, h, c, f, dan a
Dsb.
Descendent : adalah vertek-vertek di level bawahnya hingga ke leaf.
Descendent dari vertek g adalah vertek i, c, dan n.
Descendent dari vertek k adalah o dan q.
Dsb.
Sibling : adalah vertek-vertek yang mempunyai parent yang sama.
Vertek-vertek b dan d adalah sibling
Tinggi (height) suatu tree : adalah level tertinggi dari vertek dalam tree tersebut. Untuk tree di atas,
amka tingginya adalah 6.

8.3 Binary Root Tree


Binary root tree atau binary tree (BT) adalah root tree dengan sifat : out degree, od(v), dari vertek-
verteknya adalah 0, 1, atau 2. Graph pada bagian 9.2. di atas adalah bukan binary tree, sebab ada satu
vertek dengan out degree 3, yaitu vertek h.
Jika out degree dari setiap vertek dalam binary tree tersebut adalah 0 atau 2 (tidak ada yang 1), maka
disebut Completee Binary Tree (CBT). Dan jika tinggi dari tree adalah h, serta semua leaf yang ada
mempunyai level h atau (h-1) maka binary tree tersebut disebut Balanced Binary Tree (BBT).
Beberepa contoh berikut adalah binary tree :

Topik 8 Tree
8-3
• • • • •

• • • • • • • • • •

• • • • • • •
• •
• • • • • •
• •

T1 T2 T3 T4 T5

Untuk tree di atas :


T1, T2, T4, dan T5 adalah complete binary tree
T1, dan T5 adalah balanced binary tree

Latihan Pertemuan 13
1. Dari yang berikut, mana yang merupakan tree ?
a. b. c.

• •

• •

2. Untuk suatu tree berlaku : |V|=|E|+1. Kerjakan soal-soal berikut :


a. Jika T1=(V1,E1) dan T2=(V2,E2), dan |E1|=17, serta |V2|=2|V1|, tentukan |V1|, |V2|, dan |E2|.
b. Jika F1=(V1,E1) adalah forest yang terdiri dari 7 tree, dan |E1|=40, tentukan |V1|
c. Jika F2=(V2,E2) adalah forest dengan |V2|=62 dan |E2|=51, maka ada berapa tree yang menyusun
forest tersebut ?
3. Tuliskan 3 contoh spanning tree dari graph berikut :


• •

• •

Topik 8 Tree
8-4
4. Mana di antara tree berikut yang merupakan rooted tree :
(i) (ii)

5. Untuk soal nomor (4), tentukan rootnya (untuk yang rooted tree).
6. Untuk rooted tree berikut :
a

b c

f g
d e
h
i ja
k l o
p
r q

s t
u v

a. Berapa tinggi dari rooted rtee tersebut ?


b. Berapa level dari vertek s ?
c. Tentukan leaf dari tree tersebut !
d. Tentukan parent dari vertek h !
e. Tentukan child dari vertek h !
f. Ada berapa internal vertek tree tersebut ?
g. Apakah vertek p dan s merupakan sibling ?
h. Tentukan ancestor dari vertek h, k , r dan v !
i. Tentukan descendant dari vertek a, c dan g !
j. Tentukan path terpanjang di mulai dari dari root!
k. Tentukan semua vertek yang ber level 4 !
l. Apakah tree tersebut merupakan binary tree ?
m. Apakah tree tersebut merupakan complete binary tree ?
n. Apakah tree tersebut merupakan balanced binary tree ?

Topik 8 Tree
8-5
Telah kita ketahui bersama bahwa penerapan graph maupun juga tree dalam bidang komputer
sangat banyak. Bagian ini membahas bagaimana metode untuk melakukan penelusuran unsure-
unsur (vertek-vertek) dari graph atau tree tersebut. Juga bagaimana membuat jalur dari satu vertek ke
vertek lain yang paling optimun. Beberapa algoritma yang akan dibahasa adalah BFS, DFS,
Algoritma Dijstra, Algoritma Kruskal, juga algoritma Prim.

9.1 Representasi Aritmetika Dengan Tree


Operasi aritmetika dapat direpresentasikan dengan menggunakan binary tree. Internal vertek untuk
menyatakan operator, sedangkan leaf sebagai operand. Root pada setiap subtree akan sebagai operator. Oleh
karena itu operator yang paling luar (paling akhir dilakukan) sebagai root. Sebagai ilustrasi perhatikan beberapa
contoh berikut :
a. a + b dapat dinyatakan sebagai : +

a b
b. (a+b)*(d/c) dapat dinyatakan sebagai :

*

+ /

a b d c

( a  b) c  d
c.
(b * c)  d /

+ +

^ d * d
-
c
b c
a b

Topik9 Penelusuran dan Optimisasi Pada Graph


9-1
Di dalam operasi matematika yang biasa kita pelajari adalah operasiu infik, yaitu operator diletakkan di
antara operand, seperti a+b, a-B, a*b, dan sebagainya. Sebenarnya ada tiga jenis operasi, yaitu : infiks, prefiks,
dan postfiks. Untuk membandingkan ketiganya, perhatikan contoh berikut :

infiks prefiks postfiks


a+b +ab ab+
(a+b)-c -+abc ab+c-
[a*(c-b)]/d /*a-cbd acb-*d/

9.2 Penelusuran Vertek


Bagi komputer operasi prefiks maupun postfiks lebih mudah disbanding infiks. Hal ini berlaku
sebaliknya untuk manusia. Pada bagian ini akan diuraikan bagaimana menelusuri tree sehingga terjadi
pembacaan infiks, prefiks, maupun postfiks.
a. Penelusuran Infiks (Inorder Traversal).
1. Lakukan inorder traversal pada subtree kiri
2. Baca root
3. Lakukan inorder traversal pada subtree kanan
b. Penelusuran Prefiks (Preorder Traversal)
1. Baca root
2. Lakukan inorder traversal pada subtree kiri
3. Lakukan inorder traversal pada subtree kanan
c. Penelusuran Postfiks (Postorder Traversal)
1. Lakukan inorder traversal pada subtree kiri
2. Lakukan inorder traversal pada subtree kanan
3. Baca root
Sebagai ilustrasi perhatikan tree berikut :
/

+ +

^ d * d
-
c
b c
a b

Inorder : a-b^c+d/b*c+d
Preorder : /+^-abcd+*bcd
Postorder : ab-c^d+bc*d+/

Topik9 Penelusuran dan Optimisasi Pada Graph


9-2
9.3 DFS dan BFS
DFS (Depth-First Search Algorithm) merupakan algoritma untuk menelusuri vertek-vertek suatu
graph, sehingga akan terbentuk suatu spanning tree dari graph tersebut. Algoritma DFS ini adalah :
1. Pilih satu vertek (r) sebagai root, dan masukkan vertek r ke dalam T. Beri v sebagai r.
2. Pilih nilai i terkecil, 2in, sedemikian sehingga {v,vi}V dan vi belum pernah dikunjungi.
Jika tidak ada i, maka langsung ke langkah 3. Untuk hal lainnya, lakukan :
a. ambil edge {v,vi}ke dalam T,
b. beri v sebagai vi,
c. kembali ke langkah 2.
3. Jika v=r, maka T adalah spanning tree dari graph G, dan selesai.
4. Untuk vr, lakukan backtrack dari v. Jika u adalah parent dari vertek v, maka beri nilai v sebagai
u, dan kembali ke langkah 2.
Sebagai ilustrasi dari algoritma di atas, maka akan diterapkan untuk graph berikut :

g a
 b f
c
j
i e
d

h

Misalkan vertek-vertek diurut sesuai dengan : a, b, c, d, …..,h, i, j, maka hasilnya adalah :


1. Pertama ambil vertek a sebagai root, dan T={a}, serta v=a.
2. Vertek yang adjacent dengan a adalah : b, c, d. Ambil b, masukkan edge {a,b} ke dalam T. v=b, dan
looping
Vertek yang adjacent dengan b adalah a, d dan e. (a tidak diambil, sebab sudah dikunjungi) Ambil d,
masukkan edge {b,d} ke dalam T. v=d, dan looping
Vertek yang adjacent dengan d adalah a dan b (keduanya telah dikunjungi, maka ke langkah 3.
3. v=da, maka ke langkah 4
4. backtrack dari d dan v=b, dan kembali ke langkah 2.
2. Vertek yang adjacent dengan b adalah a, d, dan e. (a dan d sudah dikunjungi) Ambil e, v=e dan
masukkan edge {b,e} ke dalam T, lalu looping.
Vertek yang adjacent dengan e adalah b, f, h. Ambil f, v=f dan masukkan edge {e,f} ke dalam T,
looping
Vertek yang adjacent dengan f adalah e (sudah dikunjungi), maka ke langkah 3.
3. v=fa, maka ke langkah 4
4. backtrack dari f dan v=e, dan kembali ke langkah 2.
2. Vertek yang adjacent dengan e adalah b, f, dan h. Ambil h, v=h dan masukkan edge {e,h} ke dalam
T, lalu looping
Vertek yang adjacent dengan h adalah e (sudah dikunjungi), maka ke langkah 3.

Topik9 Penelusuran dan Optimisasi Pada Graph


9-3
3. v=ha, maka ke langkah 4
4. backtrack dari h dan v=e, dan kembali ke langkah 2.
2. Vertek yang adjacent dengan vertek e adalah b, f, h (sudah dikunjungi semua), maka ke langkah 3.
3. v=ha, maka ke langkah 4
4. backtrack dari h dan v=e, dan kembali ke langkah 2.
2. Vertek yang adjacent dengan vertek e adalah b, h, dan f (semua suadh dikunjungi), maka ke langkah 3.
3. v=ea, maka ke langkah 4
4. backtrack dari e dan v=b, dan kembali ke langkah 2.
2. Vertek yang adjacent dengan vertek b adalah a, d, dan e (semua suadh dikunjungi), maka ke langkah 3.
3. v=ba, maka ke langkah 4
4. backtrack dari b dan v=a, dan kembali ke langkah 2.
2. Vertek yang adjacent dengan vertek a adalah b, c dan d. Ambil c, dan v=c, ambil edge {a,e} ke dalam
T, lalu looping.
Vertek yang adjacent dengan c adalah a dan g. Ambil g, v=g dan ambil edge {e,g} ke dalam T, lalu
looping
Vertek yang adjacent dengan g adalah c, i dan j. Ambil i, v=i dan ambil edge {g,i} ke dalam T, lalu
looping.
Vertek yang adjacent dengan i adalah g (sudah dikunjungi), maka ke langkah 3.
3. v=ia, maka ke langkah 4
4. backtrack dari i dan v=g, dan kembali ke langkah 2.
2. Vertek yang adjacent dengan vertek g adalah c, i, j. Ambil j, v=j dan ambil edge {g,j} ke dalam T, lalu
looping.
Vertek yang adjacent dengan vertek j adalah g (sudah dikunjungi), maka ke langkah 3.
3. v=ja, maka ke langkah 4
4. backtrack dari j dan v=g, dan kembali ke langkah 2.
2. Vertek yang adjacent dengan vertek g adalah c, i, j (sudah dikunjungi), maka ke langkah 3.
3. v=ca, maka ke langkah 4
4. backtrack dari c dan v=c, dan kembali ke langkah 2.
2. Vertek yang adjacent dengan vertek c adalah a dan g (sudah dikunjungi), maka ke langkah 3.
3. v=ca, maka ke langkah 4
4. backtrack dari c dan v=a, dan kembali ke langkah 2.
2. Vertek yang adjacent dengan vertek a adalah b, c, dan d (sudah dikunjungi), maka ke langkah 3.
3. v=a, maka selesai.

Topik9 Penelusuran dan Optimisasi Pada Graph


9-4
Hasilnya adalah :

g a
 b f
c
j
i e
d

h

BFS (Breadth-First Search Algorithm) merupakan algoritma untuk menelusuri vertek-vertek suatu
graph, sehingga akan terbentuk suatu spanning tree dari graph tersebut. Perbedaan dengan DFS adalah
bahwa pada BFS, pembacaan dilakukan pada seluruh level.yang sama. Oleh karena itu tree yang akan
terbentuk cenderung melebar. Algoritma DFS ini adalah :
1. Pilih satu vertek (r) sebagai root, dan masukkan vertek r ke dalam antraian Q. Serta
insialisasi tree T dengan T={r}.
2. Hapuskan vertek terdepan dari Q. Untuk setiap i terkecil, 2in, sedemikian sehingga
{v,vi}E dan vi belum pernah dikunjungi, masukkan edge {v,vi}ke dalam T.
3. Masukkan vertek yang adjacent dengan vertek v yang dihapus pada langkah (2) tersebut ke
dalam Q dengan urutan yang disesuaikan, dan kembali ke langkah 2.
Sebagai ilustrasi dari algoritma di atas, maka akan diterapkan untuk graph berikut :

g a
 b f
c
j
i e
d

h

Misalkan vertek-vertek diurut sesuai dengan : a, b, c, d, …..,h, i, j, maka hasilnya adalah :

a
g
 b f
c
j
i e
d

h

Topik9 Penelusuran dan Optimisasi Pada Graph


9-5
Latihan Pertemuan 14
1. Untuk graph berikut lakukan :
a

b c

g
d e f
h
i ja

k l o
p
r q

s t
u
v

a. Penelusuran secara inorder


b. Penelusuran secara preorder
c. Penelusuran secara postorder
2. Perhatikan operasi aritmetika berikut :

ab
k
(b.c  ) r
l
a. Buatlah binary tree untuk operasi aritmetika tersebut !
b. Tentukan notasi infiksnya
c. Tentukan notasi prefiksnya
d. Tentukan notasi postfiksnya
3. Suatu complete binary T=(V,E) dengan V={a, b, c, …, i, j, k} dan a sebagai root. Jika hasil penelusuran
postorder adalah : d, e, b, h, i, f, j, k, g, c, a. Gambarkan tree ini.
a. Jika tinggi tree ini adalah 3.
b. Jika tinggi subtree kiri dari tree ini adalah 3.

Topik9 Penelusuran dan Optimisasi Pada Graph


9-6
4. Perhatikan graph berikut :
b
a c

d g
e f

h k
i j

Jika vertek diurut dari a, b, …, j, k, tentukan spanning tree dari graph tersebut dengan menggunakan :
a. Depth-first search algorithm (DFS)
b. Bread-first search algorithm (BFS)
a
5. Soal seperti nomor (4) untuk graph :
c b
d

e f g
i
h
k
j
6. Soal seperti nomor (4) untuk graph : a

f
e g

c d

9.3 Optimisasi
Optimisasi berkaitan dengan beberapa operasi yang diterapkan pada graph yang terboboti, yaitu graph
dengan setiap edge mempunyai bobot yang tidak harus sama. Ada beberapa optimisasi di dalam graph
terboboti, yaitu :
1. Algoritma Dijkstra : untuk mencari path terpendek dari satu vertek ke vertek lainnya di
dalam graph tersebut.
2. Algoritma Kruskal : Algoritma ini untuk mencari spanning tree dari suatu graph dengan
panjang path antar vertek minimum. Hasil dari algoritma ini adalah minimum spanning tree.
3. Algoritma Prim : algortima ini bertujuan sama dengan algoritma Kruskal.

Topik9 Penelusuran dan Optimisasi Pada Graph


9-7
4. Algoritma Max-Flow Min-Cut : untuk mencari aliran terbesar dari satu vertek ke satu vertek
lainnya.
Di dalam bagian ini hanya akan dibahas algoritma Dijkstra saja.

Algoritma Dijkstra
Algoritma Dikstra (Dikstra’s shortest path algorithm) merupakan algoritma untuk mencari lintasan
(path) terpendek dari suatu vertek ke vertek-vertek lainnya dalam suatu graph G=(V,E). Di dalam hal ini edge-
edge dalam graph G tersebut mempunyai bobot yang berbeda (disebut weighted graph).
Algoritma Dikstra ini adalah sebagai berikut :
1. Inisialisasi : i=0, S0={v0}. Beri label vertek v0 dengan (0,-) dan setiap vertek vv0 diberi label
(,-).
Jika n=1, V={v0} dan selesai.
Jika n>1, lanjutkan ke langkah 2.

2. Untuk setiap v Si , gantikan (jika mungkin) label pada v dengan (L(v), y), dengan :

L(v) = min {L(v), L(u)+wt(u,v)}


uSi

y adalah vertek di dalam Si dengan L(v) minimum.

3. Jika setiap vertek di Si (0in-2) berlabel (,-) maka selesai. Jika tidak, maka lakukan :
a. Pilih vertek vi+1 dengan label L( vi+1) minimum, lalu :
b. Si+1=Si{ vi+1}
c. i=i+1, jika i=n-1, maka selesai. Jika tidak, maka kembali ke langkah 2.
Sebagai ilustrasi algortima di atas, maka perhatikan contoh dengan graph berikut :

11 7
c f
6
11 9
6 4 11 4
9 g
b
4
3 7
a h 5
5
11
17

Topik9 Penelusuran dan Optimisasi Pada Graph


9-8
Hasil dari graph tersebut adalah :

11 7
(0,-)  c  f (6,c)
6

11 9
(22,a)
6 4 11 4
9  g (14,h)

b
4

3 7
 a (17,f) h 5
(10,f)
5

11
17

Latihan 9.2.
1. Perhatikan graph berikut :
a
5
10 4
c b
3
20 10
5 d
4 8
e f g 30
i
10 h 5 2
15 6
6 k
j
20

a. Lakukan operasi dengan algoritma Dijkstra untuk memperoleh jarak terpendek dari vertek a ke setiap
vertek lainnya.
2. Soal sama seperti nomor (1) untuk graph berikut : a
Diketahui bobot edge :
{a,c}=10 {a,d}=20
{a,e}=15 {a,g}=5 b
{b,c}=3 {b,d}=2
{b,f}=1 {c,d}=1 f
e g
{c,g}=1 {d,e}=2
{e,f}=3 {f,g}=2 d
c

Topik9 Penelusuran dan Optimisasi Pada Graph


9-9

Anda mungkin juga menyukai