• Tidak ada hasil yang ditemukan

Analisis Asimtotik Dan Real Time Menggunakan Algoritma S-Dial Untuk Menentukan Jarak Terpendek Antar Kantor Kepolisian Di Medan

N/A
N/A
Protected

Academic year: 2017

Membagikan "Analisis Asimtotik Dan Real Time Menggunakan Algoritma S-Dial Untuk Menentukan Jarak Terpendek Antar Kantor Kepolisian Di Medan"

Copied!
8
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

2.1 Pengertian Algoritma

Algoritma adalah urutan logis langkah-langkah penyelesaian yang disusun secara sistematis. Meskipun algoritma sering dikaitkan dengan ilmu komputer, namun sesungguhnya dalam kehidupan sehari-hari banyak kegiatan manusia yang berkaitan erat dengan algoritma [Munir, R. 2007: 176].

2.1.1 Sifat Algoritma

Menurut (Suarga, 2012 : 4) sifat utama suatu algortima adalah sebagai berikut:

1. Input: suatu algoritma memiliki input atau kondisi awal sebelum dilaksanakan, bisa berupa nilai-nilai peubah yang diambil dari himpunan khusus.

2. Output: suatu algoritma akan menghasilkan output setelah dilaksanakan, atau algoritma akan mengubah kondisi awal menjadi kondisi akhir, di mana nilai output diperoleh dari nilai input yang telah diperoses melalui algoritma.

3. Definiteness: langkah-langkah yang dituliskan dalam algoritma terdefinisi dengan jelas sehingga mudah dilaksanakan oleh pengguna algoritma.

4. Finiteness: suatu algoritma harus memberi kondisi akhir atau output setelah sejumlah langkah yang terbatas jumlahnya dilakukan terhadap setiap kondisi awal atau input yang diberikan.

(2)

6. Generality: langkah-langkah algoritma berlaku untuk setiap himpunan input yang sesuai dengan persoalan yang diberikan, tidak hanya untuk himpunan tertentu.

2.2 Teori Dasar Graf

Secara dasar graf adalah suatu diagram yang memuat informasi tertentu jika direpresentasikan secara tepat. Suatu graf terdiri dari 2 himpunan yang berhingga, yaitu himpunan titik-titik tidak kosong (simbol V(G)) dan himpunan garis-garis (simbol E(G)) [Siang, Jong Jek. 2009: 217].

Biasa nya, sebuah graf G = (V,E) didefinisikan dengan sepasang himpunan dimana sebuah himpunan terhingga tak kosong anggota V disebut titik (vertices) dan himpunan E dari setiap pasangan anggotanya disebut garis (edge) [Levitin, A. 2012: 28].

2.2.1 Jenis-Jenis Graf

Graf dapat dikelompokkan menjadi beberapa kategori (jenis) bergantung pada sudut pandang pengelompokannya. Pengelompokan graf dapat dipandang berdasarkan ada tidaknya sisi ganda atau sisi kalang (loop), berdasarkan jumlah simpul, atau berdasarkan orientasi arah pada sisi. Berdasarkan ada tidaknya gelang atau sisi ganda pada suatu graf, maka secara umum graf dapat digolongkan menjadi dua jenis (Munir, Rinaldi. 2007 : 357).

1. Graf Tidak Berarah.

(3)

Gambar 2.1 Graf Tidak Berarah

Gambar 8.1 adalah graf dengan himpunan simpul V dan himpunan sisi E adalah: V = {a,b,c,d,e,f}

E = {(a,c), (a,d), (b,c), (b,f), (c,e), (d,e), (e,f)}

2. Graf Berarah

Sebuah graf G disebut berarah jika setiap garisnya memiliki arah, sehingga nilai pasangan titik (u,v) tidak sama dengan nilai pasangan titik (v,u). Dapat dinyatakan bahwa garis(u,v) diarahkan dari titik u yang disebut sebagai ekor garis (edge’s tail) menuju titik v yang disebut kepala garis (edge’s head) [Levitin, A. 2012: 28].

Gambar 2.2 Graf Berarah

a c

d f

b

e

a c

d f

b

(4)

Gambar 8.2 adalah graf dengan himpunan simpul V dan himpunan sisi E adalah: V= {a,b,c,d,e,f}

E = {(a,c), (b,c), (b,f), (c,e), (d,a), (d,e), (e,c), (e,f)}

3. Graf Berlabel

Hubungan antara titik-titik dalam graf kadang-kadang perlu diperjelas. Hubungannya tidak cukup hanya menunjukkan titik-titik mana yang berhubungan langsung, tetapi seberapa kuatkah hubungan itu. Dalam aplikasinya, bobot suatu garis lebih tepat dibaca sebagai “jarak”, “biaya”, “panjang”, “kapasitas”, dan lain-lain. Label suatu garis dapat diberikan pada graf berarah maupun tidak berarah. Jika diberikan pada graf tidak berarah, maka grafnya disebut graf berlabel. Sedangkan jika diberikan pada graf berarah, maka graf nya disebut graf berarah berlabel [Siang, Jong Jek. 2009: 290-291].

Gambar 2.3 Graf Berlabel

2.3 Representasi Graf

Graf dalam pengaplikasiannya pada algoritma komputasi, biasanya diimplementasikan dalam 2 cara yaitu adjecency matrix dan adjecency list. Serta pengaplikasian bobot dapat diimplementasikan dengan matriks bobot.

a. Adjecency matrix

Adjecency matrix dari suatu graf dengan n titik di terjemahkan menjadi n x n matriks boolean dengan satu baris dan satu kolom untuk setiap titik graf, untuk setiap element pada baris ke-i dan kolom ke-j adalah 1 jika ada garis yang terhubung dari titik i ke

(5)

Gambar 2.4 Matriks Hubung

b. Adjecency list

Adjecency list dari graf berarah atau graf tidak berarah adalah kumpulan dari linked list, dimana satu list untuk setiap titik, yang mengandung semua titik yang terhubung dengan titik-titik list [Levitin, A. 2012: 29].

Gambar 2.5 Adjecency List

c. Matriks bobot dan list bobot

Graf berbobot direpresentasikan dengan matriks bobot yang element di dalamnya A[i,j] akan mengandung bobot garis dari jarak titik i ke titik j jika kedua titik tersebut terhubung dan bernilai ∞ jika tidak ada garis yang menghubungkan keduanya. List bobot untuk graf berbobot terdiri atas nama atau label titik yang terhubung dengan titik asal dan bobot dari garis yang menghubungkan kedua titiknya [Levitin, A. 2012: 30].

a c d

b c f

c a b e

d a e

e c d f

(6)

Gambar 2.5 Matriks Bobot

Gambar 2.6 List Bobot

2.4 Algoritma S-Dial

Algoritma S-Dial menggunakan dan memanfaatkan metode bucked untuk array Q, dapat dilihat element di dalamnya berupa panjang arah panah garis antar titik bernilai bilangan bulat non negatif. Pemanfaatan bucked di algoritma ini adalah untuk menseleksi dan mengurutkan prioritas nilai titik dalam SPT(shortest path tree) [Giorgio, G & Steffano, P. 1988: 27].

Bucked adalah salah satu struktur data yang populer digunakan untuk mempertahankan komponen dalam tumpukan prioritas. Algoritma S-Dial dianggap sebagai implementasi dari priority queue. Sebuah priority queue adalah struktur data yang digunakan untuk menyimpan kumpuan dari element-element yang berlabel dalam urutan-urutan tertentu atau tidak terurut sama sekali [Francois, Jean Mondou.et al. 1991: 773].

a c, 3 d, 3

b c, 2 f, 1

c a, 3 b, 2 e, 4

d a, 3 e, 2

e c, 4 d, 2 f, 5

(7)

Gambar 2.7 Struktur Data Bucked

2.5 Asimtotik

Notasi yang digunakan untuk menggambarkan waktu tempuh (running time) asimtotik

dari sebuah algoritma didefinisikan dalam fungsi yang mana domainnya adalah

himpunan bilangan N = {0, 1, 2, . . .}. Notasi tersebut mudah untuk menggambarkan

keadaan terburuk (worst-case) waktu tempuh fungsi T(n) biasanya diartikan hanya

pada ukuran integer.

Fungsi yang diterapkan notasi asimtotik biasanya akan mencirikan waktu

tempuhnya algoritma. Tapi notasi asimtotik dapat berlaku pada fungsi yang menjadi

ciri beberapa aspek lain dari algortima (misalnya jumlah ruang yang mereka gunakan)

bahkan untuk fungsi yang sama sekali tidak dapat dilakukan oleh algoritma [Cormen

et al., 2009 : 43-44].

. . . 1

3

k-1 k

2

(8)

2.6 Kompleksitas Algoritma

Pada bagian ini suatu algoritma dapat ditinjau efisiensinya, terdapat 2 jenin efisiensi yang dapat diaplikasikan yaitu efisiensi waktu (time efficiency) dan efisiensi ruang (space efficiensy). Efisiensi waktu juga disebut time complexity yang mengindikasikan seberapa cepat sebuah algoritma tersebut berjalan. Efisiensi ruang juga disebut space complexity yang mengacu pada jumlah satuan memory yang diperlukan oleh sebuah algoritma terkecuali ruang yang diperlukan untuk input dan output. Adalah suatu hal yang penting untuk mencari efesiensi suatu algoritma karena dari efesiensi dapat dilihat kekurangan dan kelebihan algoritma terhadap beberapa entitas yang mempengaruhinya. Efesiensi algoritma didefenisikan dengan parameter n, dimana n adalah nilai input dari suatu algoritma. Parameter tersebut akan dihidangkan dengan polinomial p(n) = axnx + ... + a0 dengan degree n [Levitin, A. 2012: 42-43].

2.7 Lintasan Terpendek (Shortest Path)

Bobot yang berhubungan dengan suatu garis pada graf juga dapat diaplikasikan pada graf berarah. Prinsip dan arti bobot pada graf berarah sama dengan bobot pada graf tidak berarah, yaitu menyatakan seberapa kuat hubungan antara 2 titik yang arahnya ditunjukan dengan arah garis. Sehingga akan didapatkan nilai minimum dari hubungan antar titik [Siang, Jong Jek. 2009: 300].

2.8 Diagram isikawa

Gambar

Gambar 2.1 Graf Tidak Berarah
Gambar 2.3 Graf Berlabel
Gambar 2.4 Matriks Hubung
Gambar 2.5 Matriks Bobot
+2

Referensi

Dokumen terkait

Algoritma Breadth-First Search adalah sebuah algoritma untuk mencari solusi dari sebuah graf yang terhubung satu sama lain di setiap nodenya dengan metode melewati

[r]

Analisis & Desain Sistem Informasi Pendekatan Terstruktur Teori dan Praktek Aplikasi Bisnis.. Shortest path algorithms: a computational study with the c programming

Pada tahap ini dilakukan pengumpulan dan analisis data yang berhubungan dengan penelitian ini seperti fungsi algoritma L-Deque dalam menentukan jarak terpendek Bank Mandiri di

MENGGUNAKAN ALGORITMA L-DEQUE DALAM MENENTUKAN JARAK TERPENDEK ANTAR KANTOR CABANG BANK MANDIRI DI KOTA MEDAN.. Kategori :