Anda di halaman 1dari 22

MENGGUNAKAN RUMUS ALGORITMA PRIM DAN ALGORITMA DJIKSTRA

UNTUK MENENTUKAN LINTASAN TERPENDEK DARI SUATU GRAPH

Dosen Pengampu : Ika Krisdiana,S.Si,.M.Pd

DISUSUN OLEH :

1. Chika Yuliana (14411.001)


2. Helen Elga Yuriscawati (14411.009)
3. Resti Priani (14411.022)
4. Siti Qomariyah Nur Hidayati (14411.024)
5. Arifah Dewi Novitasari (14411.026)
6. Lely Rahma Ekadiani (14411.030)

PROGRAM STUDI PENDIDIKAN MATEMATIKA


FAKULTAS KEGURUAN DAN ILMU PENDIDIKAN
UNIVERSITAS PGRI MADIUN
2017

1
DAFTAR ISI

Halaman Judul ................................................................................................................... 1

Daftar Isi ............................................................................................................................. 2

Pendahuluan ....................................................................................................................... 3

Pembahasan......................................................................................................................... 4

A. Algoritma Dijkstra .................................................................................................. 4


B. Algoritma Prim ....................................................................................................... 17

Kesimpulan ......................................................................................................................... 22

2
PENDAHULUAN

A. ALGORITMA PRIM
Algoritma Prim adalah algoritma yang digunaka untuk mencari sebuah pohon
rentang minimal didalam sebuah graph-bobot terhubung.
ALGORITMA PRIM
INPUT : Graph bobot G terhubung dengan n titik
STEP 1 : Pilih sebuah titik di G dan ditulis 1 =
STEP 2 : Pilih sebuah sisi dengan bobot minimal yang menghubungkan
sebuah titik dengan sebuah titik G yang bukan di
STEP 3 : Jika n 1 sisi telah terpilih = 1, STOP dan diberi pesan +1
adalah pohon rentang minimal di G.
Jika < 1, kembali ke STEP 2.
B. ALGORITMA DIJKSTRA
Untuk mencari panjang lintasan terpendek dari sebuah titik s ke sebuah titik t di
graph bobot G, dimana bobot setiap sisi G adalah bilangan positif, digunakan
Algoritma yang dikembangkan oleh Dijkstra (1959).
ALGORITMA DIJKSTRA
Input : Graph bobot G dengan s.t V (G)
Step 1 : Label titik dengan (s) = 0 dan untuk setiap titik v di G selain s, label titik v
dengan (v) = . (dalam praktek diganti dengan bilangan yang sangat besar)
Tulis T = V(G)
Step 2 : Misalkan u T dengan (u) minimum.
Step 3 : Jika u = t, STOP, dan diberi pesan: panjang lintasan terpendek dari s ke t
adalah (t).
Step 4 : Untuk setiap e = uv, v T; ganti label v dengan (v) = minimum{ (v), (u) =w(e)}.
Step 5 : Tulis T = T {u}, dan kembali ke Step 2

3
PEMBAHASAN

ALGORITMA DJIKSTRA

V15
950 m
300 m
V1 V14
V2 V16
260 m 360 m
V4 260 2m

1000 m V3 2340 m

V17

1950 m
2550 m
1080 m

V5 V6 110 m V18
350 m V12 400 m
V13

1200 m
80 m 900 m

V7 100 m
V11
150 m
100 m
V8 V10
V9 180 m

4
Gambar 1.1 Lintasan Rumah Helen ke Universitas PGRI Madiun

Input : Graph bobot G dengan V1, V9 V(G)

Step 1 : Label V1 dengan (V1) = 0 dan untuk setiap i, 2 i 11.

Label V1 dengan (V1) =

T = { V1, V2 , V3, V4, V5, V6, V7, V8, V9, V10, V11, V12, V13, V14, V15, V16, V17, V18 }
Pandang T sebagai himpunan titik-titik G yang belum dilabel Permanen. Sehingga
label dari titik G dan himpunan T dapat di lihat sebagai berikut :
Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0

T 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

Jelas terlihat bahwa titik T mempunyai label minimum adalah V1.

Step 2 : Dari step 1 terlihat bahwa titik T yang mempunyai label minimum adalah V 1,
sehingga menurut step 2 :

U = V1

Step 3 : Karena V1 V9

Step 4 : Terdapat 2 sisi G yang terkait dengan V1 yaitu V1V2 , V1V16, sehingga V2,V16 di T
(dengan kata lain V2,V16 belum dilabel permanen).

Karena :

(V2) = > 0 + 260

= > 260

(V2) = 260

Begitu pula, karena :

(V16) = > 0 + 350

= > 350

(V16) = 350

Step 5 : Ganti T dengan T {V1}

5
Pada tahap ini dikatakan bahwa titik V1 telah diberi label permanen dengan label
(V1)=0. Sehingga label titik G dan himpunan T yang baru dapat dilihat sebagai
berikut:

Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 350

T - 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

Selanjutnya pergi ke step 2

Step 2 : Karena V2 = 260 di titik T dengan label minimum maka U= V2

Step 3 : Karena V2 V9 pergi ke step 4

Step 4 : Terdapat 2 sisi G yang terkait dengan V2 yaitu V2V3 sehingga V3 di T

Karena :

(V3) = > 260 + 550

= > 810

(V3) = 810

Step 5 : Ganti T dengan T { V2 }

Titik V2 = 260 telah mendapat label permanen, sehingga :

Selanjutnya ke step 2

Step 2 : Karena V16 = 350 adalah titik di T berlabel minimum, maka U= V16

Step 3 : Karena V16 V9

Step 4 : Terdapat 2 sisi G yang terkait V16 = V16 V15 sehingga V15

Karena :

6
(V15) = > 350 + 200

= > 550

(V15) = 550

Step 5 : Ganti T dengan T { V16 }. Titik V16 telah berlabel permanen. Sehingga :

Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 350

T - - 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

Selanjutnya pergi ke step 2

Step 2 : Karena V15 = 550 adalah titik di T berlabel minimum, maka U= V15

Step 3 : Karena U = V15 V9

Step 4 : Terdapat 2 sisi G yang terkait dengan V15= V15V14 sehingga V14

Karena :

(V14) = > 550 + 950

= > 1.500

(V14) = 1.500

Step 5 : V15 telah berlabel permanen, sehingga :


Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1500 550 350

T - - 3 4 5 6 7 8 9 10 11 12 13 14 15 - 17 18

Selanjutnya pergi ke step 2

Step 2 : Karena V3 = 810 telah berlabel minimum, maka U = V3

Step 3 : Karena U = V3 V9

7
Step 4 : Terdapat 2 sisi G yang terkait dengan V3 = V3 V4 sehingga V4

Karena :

(V4) = > 810 + 1.000

= > 1.810

(V4) = 1.810

Step 5 : V3 telah berada di label permanen.

Sehingga :
Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1810 1500 550 350

T - - - 4 5 6 7 8 9 10 11 12 13 14 - - 17 18

Selanjutnya pergi ke step 2

Step 2 : Karena V14 adalah titik di T dengan label minimum, maka U = V14

Step 3 : Karena V14 V9

Step 4 : Terdapat 2 sisi G yang terkait dengan V14 = V14V13 , V14V17 sehingga V13 , V17

Karena :

(V13) = > 1.500 + 2.550

= > 4.050

(V13) = 4.050

(V17) = > 1.500 + 2.340

= > 3.840

(V17) = 3.840

Step 5 : V14 telah berlabel permanen, sehingga :


Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

8
( ) 0 260 810 1810 4050 1500 550 350 3840

T - - - 4 5 6 7 8 9 10 11 12 13 - - - 17 18

Selanjutnya pergi ke step 2

Step 2 : Karena V4 = 1.810 adalah titik di T dengan label minimum, maka U = V4

Step 3 : Karena V4 V9

Step 4 : 2 sisi G yang terkait dengan V4 = V4 V5 maka V5

Karena :

(V5) = > 1.810 + 1.950

= > 3.760

(V5) = 3.760

Step 5 : V4 telah mendapat label permanen.

Sehingga :

Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1810 3760 4050 1500 550 350 3840

T - - - - 5 6 7 8 9 10 11 12 13 14 - - - 18

Selanjutnya ke step 2

Step 2 : Karena V5 = 3.760 berada pada label minimum, maka U = V5

Step 3 : Karena U = V5 V9

Step 4 : Terdapat pada 2 sisi G yang terkait V5 = V5 V6 sehingga V6

Karena :

(V6) = > 3.760 + 350

= > 4.110

(V6) = 4.110

9
Step 5 : V5 telah mendapat label permanen.

Sehingga ,
Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1810 3760 4110 4050 1500 550 350 3840

T - - - - - 6 7 8 9 10 11 12 13 14 - - - 18

Selanjutnya pergi ke step 2

Step 2 : Karena V17 = 3.840 telah mendapat label minimum, maka U = V17

Step 3 : U = V17 V9, maka pergi ke step 4

Step 4 : 2 sisi G yang terkait dengan V17 = V17V18 sehingga V18

Karena :

(V18) = > 3.840 + 1.080

= > 4.920

(V18) = 4.920

Step 5 : Maka V17 telah diberi label permanen.

Sehingga :
Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1810 3760 4110 4050 1500 550 350 3840 4920

T - - - - - 6 7 8 9 10 11 12 13 - - - - 18

Selanjutnya ke step 2

Step 2 : Karena V13 telah berlabel minimum, maka U = V13

Step 3 : Karena U = V13 V9 , maka

Step 4 : Terdapat 2 sisi G yang terkait dengan V13 = V13 V12 sehingga menjadi V12

Karena :

(V12) = > 4.050 + 400

10
= > 4.450

(V12) = 4.450

Step 5 : Maka V13 telah diberi label permanen.

Sehingga :

Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1810 3760 4110 4450 4050 1500 550 350 3840 4920

T - - - - - 6 7 8 9 10 11 12 - - - - - 18

Selanjutnya ke step 2

Step 2 : Karena V6 telah berlabel minimum, maka U = V6

Step 3 : Karena U = V6 V9 , maka

Step 4 : Terdapat 2 titik yang terkait dengan V6 yaitu V6V7 , V6V18 sehingga menjadi V7 , V18

Karena :

(V7) = > 4.110 + 1200

= > 5.310

(V7) = 5.310

(V18) = 4.920 > 4.110 + 110

= 4.920 > 4.220

(V18) = 4.220

Step 5 : Maka V13 telah diberi label permanen.

Sehingga :

Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

11
( ) 0 260 810 1810 3760 4110 5310 4450 4050 1500 550 350 3840 4920

T - - - - - - 7 8 9 10 11 12 - - - - - 18

Selanjutnya ke step 2

Step 2 : Karena V18 telah berlabel minimum, maka U = V18

Step 3 : Karena U = V18 V9 , maka

Step 4 : Terdapat 2 titik yang terkait dengan V18 yaitu V18V12 , sehingga menjadi V12

Karena :

(V12) = 4450 > 4.220 + 840

= 4450 > 5.060

(V12) = 4.450

Step 5 : Ganti T dengan T - {18 }

Pada tahap ini, dikatakan bahwa titik 18 telah diberi label permanen dengan label
(18 ) = 0. Sehingga label titik G dan himpunan T yang baru dapat dilihat sebagai
berikut.
Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1810 3760 4110 5310 4450 4050 1505 550 350 3840 4220

T - - - - - - 7 8 9 10 11 12 - - - - - -

*Selanjutnya pergi ke step 2

Step 2 : karena 12 adalah titik di T dengan label minimum, maka u = 12

Step 3 : u = 12 9

Step 4 : Terdapat 1 sisi G yang terkait dengan 12 yaitu 12 11 sedemikian hingga 11 di T

Karena

(11 ) = > 4450 + 900 = (12 ) + (12 11 )

Ganti label titik 11 dengan (11 ) = 5350

Step 5 : Ganti T dengan T - {12 }

12
Pada tahap ini, dikatakan bahwa titik 12 telah diberi label permanen dengan label
(12 ) = 0. Sehingga label titik G dan himpunan T yang baru dapat dilihat sebagai
berikut.

Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1810 3760 4110 5310 5350 4450 4050 1505 550 350 3840 4220

T - - - - - - 7 8 9 10 11 - - - - - - -

*Selanjutnya pergi ke step 2

Step 2 : karena 7 adalah titik di T dengan label minimum, maka u = 7

Step 3 : u = 7 9

Step 4 : Terdapat 2 sisi G yang terkait dengan 7 yaitu 7 8 dan 7 11 sedemikian hingga
8 dan 11 di T

Karena

(8 ) = > 5310 + 150 = (7 ) + (7 8 )

Ganti label titik 8 dengan (8 ) = 5460

Karena

(11 ) = 5350 < 5310 + 100 = (7 ) + (7 11 )

Maka label titik 11 tetap yaitu (8 ) = 5350

Step 5 : Ganti T dengan T - {7 }

Pada tahap ini, dikatakan bahwa titik 7 telah diberi label permanen dengan label
(7 ) = 0. Sehingga label titik G dan himpunan T yang baru dapat dilihat sebagai
berikut.
Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

13
( ) 0 260 810 1810 3760 4110 5310 5460 5450 5350 4450 4050 1505 550 350 3840 4220

T - - - - - - - 8 9 10 - - - - - - - -

*Selanjutnya pergi ke step 2

Step 2 : karena 11 adalah titik di T dengan label minimum, maka u = 11

Step 3 : u = 11 9

Step 4 : Terdapat 1 sisi G yang terkait dengan 11 yaitu 11 10 sedemikian hingga 10 di T

Karena

(10 ) = > 5350 + 100 = (11 ) + (11 10 )

Ganti label titik 10 dengan (10 ) = 5450

Step 5 : Ganti T dengan T - {11 }

Pada tahap ini, dikatakan bahwa titik 11 telah diberi label permanen dengan label
(11 ) = 0. Sehingga label titik G dan himpunan T yang baru dapat dilihat sebagai
berikut.
Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1810 3760 4110 5310 5460 5450 5350 4450 4050 1505 550 350 3840 4220

T - - - - - - - 8 9 10 - - - - - - - -

*Selanjutnya pergi ke step 2

Step 2 : karena 10 adalah titik di T dengan label minimum, maka u = 10

Step 3 : u = 10 9

Step 4 : Terdapat 1 sisi G yang terkait dengan 10 yaitu 10 9 sedemikian hingga 9 di T

Karena

(9 ) = > 5450 + 180 = (11 ) + (10 9 )

Ganti label titik 9 dengan (9 ) = 5630

Step 5 : Ganti T dengan T - {10 }

14
Pada tahap ini, dikatakan bahwa titik 10 telah diberi label permanen dengan label
(10 ) = 0. Sehingga label titik G dan himpunan T yang baru dapat dilihat sebagai
berikut.
Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1810 3760 4110 5310 5460 5630 5450 5350 4450 4050 1505 550 350 3840 4220

T - - - - - - - 8 9 - - - - - - - - -

*Selanjutnya pergi ke step 2

Step 2 : karena 8 adalah titik di T dengan label minimum, maka u = 8

Step 3 : u = 8 9

Step 4 : Terdapat 1 sisi G yang terkait dengan 8 yaitu 8 9 sedemikian hingga 8 di T

Karena

(8 ) = 5630 > 5460 + 80 = (8 ) + (8 9 )

Ganti label titik 8 dengan (8 ) = 5540

Step 5 : Ganti T dengan T - {8 }

Pada tahap ini, dikatakan bahwa titik 8 telah diberi label permanen dengan label
(8 ) = 0. Sehingga label titik G dan himpunan T yang baru dapat dilihat sebagai
berikut.
Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1810 3760 4110 5310 5460 5540 5450 5350 4450 4050 1505 550 350 3840 4220

T - - - - - - - - 9 - - - - - - - - -

*Selanjutnya pergi ke step 2

Step 2 : karena 9 adalah titik di T dengan label minimum, maka u = 9

Step 3 : u = 9 = t = STOP

Step 5 : Ganti T dengan T - {9 }

Pada tahap ini, dikatakan bahwa titik 9 telah diberi label permanen dengan label
(9 ) = 0. Sehingga label titik G dan himpunan T yang baru dapat dilihat sebagai
berikut.

15
Titik 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

( ) 0 260 810 1810 3760 4110 5310 5460 5540 5450 5350 4450 4050 1505 550 350 3840 4220

T - - - - - - - - - - - - - - - - - -

Dari tabel terakhir, dapat dilihat panjang lintasan terpendek dari 1 ke 9 adalah 5540 m.

Metode Telusur Balik

Untuk menentukan lintasan terpendek dari 1 ke 9 dapat dilakukan dengan metode telusur
balik yaitu dari 9 ke 1 .

(9 ) = 5540 = 80 + 5460 = (8 ) + (8 9 )

(8 ) = 5460 = 150 + 5310 = (7 ) + (78 )

(7 ) = 5310 = 1200 + 4110 = (6) + (6 7 )

(6 ) = 4110 = 350 + 3760 = (5 ) + (56 )

(5 ) = 3760 = 1950 + 1810 = (4 ) + (4 5 )

(4 ) = 1810 = 1000 + 810 = (3 ) + (3 4 )

(3 ) = 810 = 550 + 260 = (2 ) + (2 3 )

(2 ) = 260 = 0 + 260 = (1 ) + (1 2 )

Jadi,(9 ) = (1 2 ) + (2 3 ) + (3 4 ) + (4 5 ) + (5 6 ) + (6 7 ) +
(7 8 ) + (8 9 )

Dengan demikian, sebuah lintasan terpendek dengan panjang 5540 m dari 1 ke 9 di graph G
adalah lintasan (1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 )

16
ALGORITMA PRIM
O
950 m
300 m
A
B P N
260 m 360 m
D 260 m
C
1000 m 2340 m

Q
1950 m
2550 m
1080 m

E F 110 m
R
350 m L 400 m
M
1200 m
900 m

G 100 m
K
150 m
100 m
80 m
H 180 m
J
I

Input : Graph bobot G dengan 18 titik.


STEP I : T1 = A

17
STEP II :
AB = 260 m
AP = 350 m
e1 = {AB} = 260 m
T2 = {A, B}
AP = 350 m
BC = 550 m
e2 = {AP} = 350 m
T3 = {A, B, P}
BC = 550 m
PO = 200 m
e3 = {PO} = 200 m
T4 = {A, B, P, O}
BC = 550 m
ON = 950 m
e4 = {BC} = 550 m
T5 = {A, B, P, O, C}
ON = 950 m
CD = 1000 m
e5 = {ON} = 950 m
T6 = {A, B, P, O, C, N}
CD = 1000 m
NM = 2550 m
NQ = 2340 m
e6 = {CD} = 1000 m
T7 = {A, B, P, O, C, N, D}
NM = 2550 m
NQ = 2340 m
DE = 1950 m
e7 = {DE} = 1950 m
T8 = {A, B, P, O, C, N, D, E}
NM = 2550 m
NQ = 2340 m

18
EF = 350 m
e8 = {EF} = 350 m
T9 = {A, B, P, O, C, N, D, E, F}
NM = 2550 m
NQ = 2340 m
FG = 1200 m
FR = 110 m
e9 = {FR} = 110 m
T10 = {A, B, P, O, C, N, D, E, F, R}
NM = 2550 m
NQ = 2340 m
FG = 1200 m
RQ = 1080 m
RL = 840 m
e10 = {RL} = 840 m
T11 = {A, B, P, O, C, N, D, E, F, R, L}
NM = 2550 m
NQ = 2340 m
FG = 1200 m
LM = 400 m
LK = 900 m
e11 = {LM} = 400 m
T12 = {A, B, P, O, C, N, D, E, F, R, L, M}
NQ = 2340 m
FG = 1200 m
LK = 900 m
e12 = {LK} = 900 m
T13 = {A, B, P, O, C, N, D, E, F, R, L, M, K}
NQ = 2340 m
FG = 1200 m
KG = 100 m
KJ = 100 m
e13 = {KG} = 100 m

19
T14 = {A, B, P, O, C, N, D, E, F, R, L, M, K, G}
NQ = 2340 m
KJ = 100 m
GH = 150 m
e14 = {KJ} = 100 m
T15 = {A, B, P, O, C, N, D, E, F, R, L, M, K, G, J}
NQ = 2340 m
GH = 150 m
JI = 180 m
e15 = {GH} = 150 m
T16 = {A, B, P, O, C, N, D, E, F, R, L, M, K, G, J, H}
NQ = 2340 m
JI = 180 m
HI = 80 m
e16 = {HI} = 80 m
T17 = {A, B, P, O, C, N, D, E, F, R, L, M, K, G, J, H, I}
NQ = 2340 m
e17 = {NQ} = 2340 m
T18 = {A, B, P, O, C, N, D, E, F, R, L, M, K, G, J, H, I, Q}
STEP III : STOP
T18 = {A, B, P, O, C, N, D, E, F, R, L, M, K, G, J, H, I, Q}
W(G) = 260 + 350 + 200 + 550 + 950 + 1000 + 1950 + 350 + 110 + 840 +
400 + 900 + 100 + 100 + 150 + 80 + 2340
= 10630 m

20
O
950 m
300 m
A
B P N
260 m 360 m
D 260 m
C
1000 m 2340 m

1950 m

E F 110 m
R
350 m L 400 m
M

900 m

G 100 m
K
150 m
100 m
80 m
H J
I

21
KESIMPULAN

1. Dari rumus Algoritma Prim pohon rentang minimal dari graph rumah Helen ke
Universitas PGRI Madiun adalah 10630 m = 10,63 km
2. Dari rumus Algoritma Djikstra lintasan terpendek dari graph rumah Helen ke
Universitas PGRI Madiun adalah 5540 m = 5,54 km.

22

Anda mungkin juga menyukai