1. Graph berbobot dan berarah yaitu graph yang memiliki arah dan bobot pada sisi- sisinya dan
2. Graph berbobot dan tak berarah yaitu graph yang memiliki bobot pada sisinya dan tidak memiliki arah pada sisi-sisinya.
Dari gambar 2.7 diatas merupakan graph berbobot dan tak berarah sebab terdapat bobot pada sisinya tetapi tidak memiliki arah pada sisinya.
Berikut adalah contoh graph berbobot dan berarah:
1 • 56 •2
80 67
78 67
5 • 54
23 48 •3
4 •
GAMBAR 2.9. Graph Berbobot dan Berarah
2.5 Metode Dijkstra
Salah satu metode yang dapat digunakan untuk mencari jarak lintasan terpendek suatu graph G adalah metode Dijkstra. Untuk mendapatkan jarak terpendek
dengan menggunakan metode Dijkstra pada suatu graph terhubung dapat dilakukan dengan langkah-langkah sebagai berikut:
Masukan: Berikan suatu graph G terhubung Keluaran: Lz, panjang jarak terpendek dari a ke z
Langkah 1: Atur La = 0 dan semua titik v ≠ a, Lv = α
Atur T = V yang mana T adalah himpunan titik yang mempunyai label temporer dan V adalah himpunan titik graph G.
Universitas Sumatera Utara
Langkah 2: Anggap u adalah suatu titik di T yang mana Lu adalah minimum dan dalam hal ini merupakan label permanen dari u.
Langkah 3: Jika u = z berhenti. Langkah 4: Untuk setiap sisi e = u,v insiden dengan u, jika v
∈ T, ubah Lv ke minimum {Lv,Lu + wu,v}
Langkah 5 : Ubah T ke T – {u} dan kembali ke langkah 2.
Contoh 2.5.1
Perhatikan gambar graph dibawah ini. Gambar graph W dibawah merupakan gambar Scenic Valley yang merupakan daerah tempat wisata yang memiliki jaringan
penerbangan udara. Masing-masing titik diatas menyatakan kota. Apabila angka yang terdapat diantara dua titik sebarang merupakan jarak antar dua kota dalam satuan
kilometer maka tentukanlah jarak terpendek dari kota 1 ke kota 10 dengan menggunakan metode Dijkstra
1 •
80 50 90 70
•4 2
• 90 3• 30 •5
80 110 70 120 70 60 6
• 90 7• 80 8• 80 60 110
9 • 110
100 10
•
GAMBAR 2.10. Graph tempat wisata scenic valley
Universitas Sumatera Utara
Solusi. Anggap 1, 2, 3, 4, 5, 8, 7, 6, 9, 10 diganti menjadi a, b, c, d, e, f, g, h, i, j. Sesuai
dengan langkah-langkah metode Dijkstra diatas maka jarak terpendek dari graph W diatas dapat dicari sebagai berikut:
Lv α
α α
α α
α α
α α
T a
b c
d e
f g
h i
j
Iterasi 1 u = a maka La = 0 dan T = T – {a}. Adapun titik yang berdekatan dengan a adalah b,
c dan d; b, c, d ∈ T sehingga
Lb = Min { Lb , La + w
ab
} = Min { α , 80}= 80
Lc = Min { Lc , La + w
ac
} = Min { α , 50}= 50
Ld = Min { Ld , La + w
ad
Lv } = Min {
α , 70}= 90 Dan minimumnya adalah 50 = Lc
80 50
90 α
α α
α α
α T
b c
D e
f g
h I
j
Iterasi 2 u = c maka Lc = 50 dan T = T – {c}. Adapun titik yang berdekatan dengan c adalah
b, d, g, f; b, d, g, f ∈ T sehingga
Lb = Min { Lb , Lc + w
cb
} = Min {80 , 140}= 80 Ld = Min { Ld , Lc + w
cd
} = Min {90, 120}= 90 Lg = Min { Lg , Lc + w
gc
} = Min { α , 120}= 70
Lf = Min { Lf , Lc + w
cf
Lv } = Min {
α , 170}=120 minimumnya adalah 70 = Ld
70 50
70 α
170 120
α α
α T
b d
e f
g h
i j
Universitas Sumatera Utara
Iterasi 3 u = d maka Ld = 170 dan T = T – {d}. Adapun titik yang berdekatan dengan d
adalah f, e; f, e ∈ T sehingga
Lf = Min { Lf , Ld + w
df
} = Min {170 , 40}= 140 Le = Min { Le , Ld + w
de
Lv } = Min {
α , 100}= 100 minimumnya 100 = Le
70 100
140 120
α α
α T
b e
f g
h i
j
Iterasi 4 u = e maka Le = 100 dan T = T – {e}. Adapun titik yang berdekatan dengan e adalah
f; f ∈ T sehingga
Lf = Min { Lf , Le + w
ef
Lv } = Min {140 , 160}=140
70 140
120 α
α α
T b
f g
h i
j
Iterasi 5 u = f maka Lf = 140 dan T = T – {f}. Adapun titik yang berdekatan dengan f adalah
g, j; g, j ∈ T sehingga
Lg = Min { Lg , Lf + w
fg
} = Min {120 , 220}= 120 Lj = Min { Lj , Lf + w
jf
Lv } = Min {
α , 250}= 250 minimumnya 120 = Lg
70 250
α α
250 T
b g
h i
j
Iterasi 6 u = g maka Lg = 250 dan T = T – {g}. Adapun titik yang berdekatan dengan g
adalah b, h, i, j; b, h, i, j ∈ T sehingga
Lb = Min { Lb , Lg + w
bg
} = Min {70, 230}= 70 Lh = Min { Lh , Lg + w
gh
} = Min { α , 210}= 210
Universitas Sumatera Utara
Li = Min { Li , Lg + w
gi
} = Min { α, 180}= 180
Lj = Min { Lj , Lg + w
gj
Lv } = Min {250 , 230}= 230 minimumnya 70 = L b
70 210
180 230
T b
h i
j
Iterasi 7 u = b maka Lb = 70 dan T = T – {b}. Adapun titik yang berdekatan dengan b adalah
h; h ∈ T sehingga
Lh = Min { Lh , Lg + w
gh
Lv } = Min {
α , 210}= 210
210 180
230 T
h i
j
Iterasi 8 u = h maka Lh = 210 dan T = T – {h}. Adapun titik yang berdekatan dengan h
adalah i; i ∈ T sehingga
Li = Min { Li , Lh + w
hi
Lv } = Min {
α , 290}= 290
00 180
230 T
i j
Iterasi 9 u = i maka Li = 180 dan T = T – {i}. Adapun titik yang berdekatan dengan i adalah
j; j ∈ T sehingga
Lj = Min { Lj , Li + w
ij
Lv } = Min {230 , 390}= 230
230 T
j
Universitas Sumatera Utara
Iterasi 10 u = j berhenti
sehingga jarak terpendek dari 1 ke 10 adalah 230 Km.
2.6 Matriks