Penerapan Algoritma Label-Setting Untuk Menentukan Jalur Terpendek Dari Dua Node Pada Peta Kota Bandung

55 

Teks penuh

(1)

iv

ABSTRACT

Search for the shortest route problem in the city especially indispensable

for travelers in and out of the city itself. Given the many roads that can be taken to

make the user look for the fastest path to get to its destination.

One algorithm suitable to solve the problem of finding the shortest path is

a label-setting algorithms. Label-setting algorithm see the possibilities -

possibilities that exist and mark the shortest path to node n by finding the

minimum value obtained for up to the node and mark it by using the path tree.

A Path on the shortest path tree, in graph theory is the subgraph that calculates the

distance between the node from the origin node to node - the node that is around

and choose the smallest value. Called a tree because if it finds two paths to the

same end of the line (rotating), then we can delete the path that has the largest

path length. Therefore, the path tree is unique[6].

Several tests have been performed on the label-setting algorithm program

by the number of nodes as many as 59 nodes, 75 nodes and 100 nodes. It also

tried a third the number of nodes on two PCs that have different specifications.

From the test results can be seen the performance of the label-setting algorithms

for shortest path problems.

(2)

ABSTRAK

Persoalan pencarian rute terpendek di kota Bandung khususnya sangat

diperlukan bagi wisatawan dalam dan luar kota Bandung sendiri. Mengingat

banyaknya jalan yang dapat ditempuh membuat pengguna mencari jalur tercepat

untuk sampai ke tujuannya.

Salah satu algoritma yang dapat digunakan untuk menyelesaikan masalah

pencarian jalur terpendek ini adalah algoritma setting. Algoritma

label-setting melihat kemungkinan - kemungkinan yang ada dan menandai jalur

terpendek ke node-n dengan mencari nilai minimum yang didapat untuk sampai ke node tersebut dan menandainya dengan menggunakan path tree.

Sebuah Path tree pada jalur terpendek, dalam teori graf adalah subgraf yang menghitung jarak antar node dari node asal ke node - node yang ada disekitarnya

dan memilih nilai terkecil. Disebut tree karena jika menemukan dua buah jalur dengan jalur akhir yang sama (berputar), maka kita dapat menghapus jalur yang

memiliki panjang jalur yang terbesar. Oleh karena itu path tree bersifat unik[6]. Beberapa pengujian telah dilakukan pada program algoritma label-setting

dengan jumlah node sebanyak 59 node, 75 node dan 100 node. Selain itu juga

mencoba ketiga jumlah node tersebut pada 2 buah PC yang memiliki spesifikasi

yang berbeda. Dari hasil pengujian dapat dilihat bahwa rata - rata waktu proses

algoritma label-setting untuk pencarian jalur terpendek adalah dibawah 1 detik.

(3)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Dalam kehidupan sehari hari, selalu dilakukan perjalanan dari satu titik

atau lokasi ke lokasi yang lain dengan mempertimbangkan efisiensi waktu dan

biaya sehingga diperlukan ketepatan dalam menentukan jalur terpendek antar

suatu titik atau lokasi yang diinginkan. Hasil penentuan jalur terpendek nantinya

akan menjadi pertimbangan dalam pengambilan keputusan untuk menunjukkan

jalur yang akan ditempuh. Hasil yang nantinya akan didapatkan juga

membutuhkan kecepatan dan keakuratan dengan bantuan komputer.

Persoalan pencarian jalur terpendek pada tugas akhir ini yakni mencari

jarak terpendek dari node asal ke node tujuan yang telah ditentukan dengan

melewati beberapa node. Sekilas tampak mudah dan tidak terlalu sulit walau

dikerjakan dengan perhitungan matematika biasa. Namun, pada kenyataanya jika

jumlah nodenya banyak maka perhitungan matematika biasa sudah tidak dapat

digunakan lagi untuk mencari solusi pada persoalan ini, karena akan memerlukan

waktu yang sangat lama.

Salah satu metode penyelesaian permasalahan yang cukup efektif adalah

dengan menggunakan metode path tree atau penandaan jalur yang dianggap sebagai jalur terpendek. Dan dengan menggunakan algoritma Label-Setting

sebagai alur program yang cukup effisien pada kasus pencarian jalur terpendek.

Algoritma Label-Setting akan mencari jalur terpendek mulai dari node terdekat

sampai dengan node yang paling jauh dari asal. Algoritma akan membandingkan

sejumlah solusi jalur yang masuk ke dalam kandidat, dan membandingkan nilai

terkecil. Apabila kandidat tersebut memiliki nilai bobot atau cost terendah, maka

edge atau jalur itulah yang menjadi jalur terpendek ke node tersebut.

(4)

1.2 Maksud dan Tujuan

Maksud dibuatnya Aplikasi Penggunaan Algoritma Label-Setting pada

Pencarian Jalur Terpendek ini adalah membuat suatu simulasi program yang dapat

mencari solusi terbaik untuk menentukan jarak terpendek antara node asal ke node

tujuan.

Tujuan dibuat aplikasi ini ini adalah untuk memperoleh informasi yang

dapat dimanfaatkan oleh masyarakat terutama yang berhubungan dengan

transportasi, untuk dapat menentukan jalur terpendek yang dapat ditempuh saat

mereka melakukan perjalanan sehingga dapat menghemat waktu, biaya, dan

tenaga.

1.3 Batasan Masalah

Adapun batasan masalah pada pembuatan tugas akhir ini adalah :

1. Semua diasumsikan sebagai graf lengkap yang terhubung antara satu

node dengan node yang mendekati tujuan.

2. Semua koordinat node ditentukan terlebih dahulu.

3. Jenis graf yang digunakan adalah graf tidak berarah dan berbobot.

4. Peta yang digunakan adalah peta kota Bandung, yang meliputi wilayah

Tegalega, wilayah Karees, wilayah Cibeunying dan wilayah Bojonagara

(wilayah Ujung Berung dan Gede Bage tidak termasuk).

5. Perangkat lunak yang digunakan adalah Visual Basic 2005.

1.4 Metode Penelitian

Metode yang digunakan dalam penyusunan tugas akhir ini adalah sebagai

berikut:

1. Tinjauan pustaka

Mempelajari buku, artikel, dan situs yang terkait dengan algoritma

Label-Setting dan bahasa yang digunakan pada perangkat lunak Visual Basic

(5)

3

2. Eksperimen Program

Mengaplikannya ke dalam program kemudian menguji

parameter-parameter yang digunakan serta keberhasilan program.

1.5 Sistematika Penulisan

Penulisan tugas akhir ini terdiri dari lima bab, diantaranya sebagai berikut :

BAB I Pendahuluan

Bab ini mengulas latar belakang masalah, maksud dan tujuan,

batasan masalah, metodologi penelitian dan sistematika

penulisan.

BAB II Tinjauan Pustaka

Bab ini berisi tentang tinjauan pustaka yang diambil dari

berbagai sumber buku, situs dan hasil diskusi dengan dosen

pembimbing yang memuat pembahasan teori-teori mengenai

pengertian Algoritma Label-Setting.

BAB III Perancangan

Bab ini menjelaskan pembuatan perangkat lunak yang dapat

mensimulasikan rute dari node asal ke node tujuan.

BAB IV Analisis Masalah

Bab ini membahas implementasi dari perancangan program,

menguji keberhasilan program dan menganalisis hasil tersebut.

BAB V Simpulan dan Saran

Bab ini berisi simpulan analisis masalah serta saran guna

meningkatkan dan mengembangkan metode yang lebih optimal

(6)

BAB II

DASAR TEORI

2.1 Teori Graf

Graf adalah kumpulan simpul (nodes) yang dihubungkan satu sama lain melalui sisi/busur (edges). Suatu Graf G terdiri dari dua himpunan yaitu himpunan V dan himpunan E.

a. Verteks (simpul) : V = himpunan simpul yang terbatas dan tidak kosong

b. Edge (sisi/ruas) : E = himpunan busur yang menghubungkan sepasang

simpul.

Simpul-simpul pada graf dapat merupakan obyek sembarang seperti kota,

atom-atom suatu zat, nama anak, jenis buah, komponen alat elektronik dan sebagainya.

Busur dapat menunjukkan hubungan (relasi) sembarang seperti rute penerbangan,

jalan raya, sambungan telepon, ikatan kimia, dan lain-lain. Notasi graf: G(V,E)

artinya graf G memiliki V simpul dan E busur.

2.1.1 Macam-macam Graf

Menurut arah dan bobotnya, graf dibagi menjadi empat bagian, yaitu :

1. Graf berarah dan memiliki bobot

Tiap busur mempunyai anak panah dan bobot. Gambar 2.1 menunjukkan

graf berarah dan berbobot yang terdiri dari tujuh titik yaitu titik

A,B,C,D,E,F,G. Titik menujukkan arah ke titik B dan titik C, titik B

menunjukkan arah ke titik D dan titik C, dan seterusnya. Bobot antar titik

A dan titik B pun telah di ketahui.

(7)

5 2. Graf tidak berarah namun memiliki berbobot

Tiap busur tidak mempunyai anak panah tetapi mempunyai bobot. Gambar

2.2 menunjukkan graf tidak berarah dan berbobot. Graf terdiri dari tujuh

titik yaitu titik A,B,C,D,E,F,G. Titik A tidak menunjukkan arah ke titik B

atau C, namun bobot antara titik A dan titik B telah diketahui. Begitu juga

dengan titik yang lain.

Gambar 2.2 Graf tidak berarah namun tidak memiliki bobot

3. Graf berarah namun tidak memiliki bobot

Tiap busur mampunyai anak panah yang tidak berbobot. Gambar 2.3

menunjukan graf berarah dan tidak berbobot.

Gambar 2.3 Graf berarah namun tidak memiliki bobot

4. Graf tidak memiliki arah dan tidak memiliki bobot

Tiap busur tidak mempunyai anak panah dan tidak berbobot. Gambar 2.4

menunjukan graf tidak berarah dan tidak berbobot.

A

C

D

F

G

2 2

2 2 1

1

1 3

3 4

4

B E

2

A

C

D

F

G

(8)

Gambar 2.4 Graf tidak memiliki arah dan tidak memiliki bobot

2.2 Definisi Jalur Terpendek

Lintasan terpendek adalah lintasan minimum yang diperlukan untuk

mencapai suatu tempat dari tempat tertentu. Lintasan minimum yang dimaksud

dapat dicari dengan menggunakan graf. Graf yang digunakan adalah graf yang

tidak berbobot, yaitu graf yang tidak memiliki suatu nilai atau bobot.

Ada beberapa macam persoalan lintasan terpendek, antara lain:

a. Lintasan terpendek antara dua buah simpul tertentu (a pair shortets path). b. Lintasan terpendek antara semua pasangan simpul (all pairs shortest path). c. Lintasan terpendek dari simpul tertentu ke semua simpul yang lain (

single-source shortest path).

d. Lintasan terpendek antara dua buah simpul yang melalui beberapa simpul

tertentu (intermediate shortest path). 2.3 Pencarian Jalur Terpendek

Gambar 2.5 Ilustrasi Graf Jalur Terpendek tidak berarah namun memiliki bobot

A

B

C

D

E

5

7

3

4

5

4 A

C

D

F

G

(9)

7 Pada dasarnya permasalahan pencarian jalur terpendek antar kota

merupakan pencarian jalur terpendek antar titik yang telah diketahui

koordinatnya. Dengan mengetahui konsep pencarian jalur terpendek antar titik,

untuk selanjutnya dapat diterapkan pada pencarian jalur terpendek pada berbagai

kota yang ingin diketahui. Contoh kasus yang akan diambil adalah pencarian jalur

terpendek antara titik A dan titik E.

Terdapat dua jenis kasus yang bias diturunkan dari gambar 2.5. Kasus

pertama adalah mengetahui jarak antar node yang ditunjukkan dengan garis

penghubung antar titik.. Kasus yang kedua adalah dengan dengan mengetahui

koordinat titik saja. Gambar 2.5 merupakan jenis kasus yang pertama yaitu dengan

mengetahui jarak antar titik. Sedangkan gambar 2.6 merupakan jenis kasus yang

kedua, yaitu dengan mengetahui titik koordinatnya saja. Untuk kasus pertama,

penyelesaian cenderung lebih mudah karena jarak antar titik telah diketahui

sebagai berikut:

Tabel 2.1 Tabel Jarak antar Titik

A B C D E

A 0 5 7 3 -

B 5 0 4 - -

C 7 4 0 - 5

D 3 - - 0 4

E - - 5 4 0

Sedangkan untuk kasus kedua yang telah ditunjukkan pada Gambar 2.6,

misalnya titik–titik yang telah ditentukan mempunyai koordinat sebagaimana

tabel 2.2.

Gambar 2.6 Ilustrasi Graf Jalur Terpendek tidak memiliki arah dan tidak memiliki bobot

A

B

C

D

(10)

Tabel 2.2 Koordinat titik antar kota

X Y

A 20 50

B 10 25

C 18 10

D 50 40

E 55 15

Karena belum diketahui jarak antar titiknya dan hanya diketahui titik

koordinat saja, Maka perhitungan dimulai dari penentuan jarak antar simpul titik

dengan dengan menggunakan titik yang diketahui. Titik yang diketahui

menggunakan koordinat sumbu X dan Y. Langkah di atas merupakan langkah

yang harus dilakukan untuk semua metode.

2.4 Algoritma Label-Setting

Untuk lebih mengetahui algoritma Label-Setting, misalkan terdapat suatu

jaringan yang sederhana, berarah, dan memiliki grafik terhubung, di mana edge

masing-masing memiliki nilai negatif, yang disebut panjang edge. Simpul

jaringan dilambangkan oleh bilangan bulat positif. Verteks dengan indeks terbesar

N, (i, j) menunjukkan edge dari simpul i ke simpul j, dan h (i, j) panjang edge ini. Dengan jalur dari simpul i ke simpul j yang kita maksud P (i, j) = (i1, j1), . . . , (ik, jk) dari edge, dengan i1 = i, jk = j dan jL = iL+1, 1 ≤ L < k. Simpul i, j disebut titik

awal dan titik akhir. Dengan panjang jalur yang kita maksudkan adalah jumlah

dari panjang edge yang sepanjang jalur ini. Jika jalur memiliki awal yang sama

dan titik akhir, kemudian kita sebut itu siklus. Sebuah jaringan disebut simetris

jika keberadaan edge (i, j) sama dengan edge (j, i) dan h(i, j) = h (j, i). Contoh pada gambar 1 dan 2 merupakan jalur yang simetris, karena itu kita tidak menulis

petunjuk untuk edge pada angka, pada kenyataannya, masing-masing ujung pada

angka mewakili dua sisi. Dalam pekerjaan ini, simetri tidak penting.

Sebuah subnetwork disebut pohon terarah jika tidak mengandung siklus,

dan ada simpul di dalamnya, yang disebut root atau titik awal dengan properti

(11)

9 jalur dari akar untuk itu. Dengan pohon yang minimal kita maksud seperti pohon

diarahkan di mana setiap jalur memiliki panjang minimal di antara jalur menuju

dari titik awal ke titik akhir dalam asli jaringan (lihat Gambar 2.7, simpul 1.).

Gambar 2.7 Jalur Sederhana

Kita dapat dengan mudah menggambarkan pohon diarahkan dengan label

mana untuk setiap simpul (kecuali akar), label menunjukkan titik sebelumnya di

jalur terkemuka dari akar ke simpul dipertimbangkan. Dalam diarahkan pohon,

masing-masing titik memiliki jarak yang panjang jalur dari akar (lihat gambar

2.8). Untuk simpul i, misalkan c (i) dan t (i) menunjukkan label dan jarak, masing-masing. Jarak dari akar sesuai definisi adalah 0, dan jika perlu, dari sudut pandang

teknis, kita juga akan memberikan label kepada akar. Label ini dapat dibedakan

label apapun (misalnya akar itu sendiri atau 0).

(12)

Tabel 2.3 Algoritma Label-Setting sederhana

Algoritma untuk menentukan pohon-pohon minimal dengan beberapa

teknik membangun pohon yang penting dari baik teoritis dan praktis sudut

pandang. Salah satu alasan adalah bahwa ada tidak diketahui lebih efisien

algoritma untuk mencari jalur terpendek lokal untuk dua simpul. Selanjutnya,

algoritma ini memiliki implementasi komputer yang mempertahankan efisiensi

teoritis. Properti yang terakhir ini tidak berlaku untuk algoritma lain yang dikenal

untuk menemukan jalur terpendek antara setiap pasangan simpul, dengan

demikian, dalam masalah-masalah praktis dengan jaringan yang sangat besar itu

bisa sangat sulit untuk menggunakan prosedur.

2.4.1 Algoritma Label-Setting sederhana

Algoritma Label-Setting secara garis besar dapat ditulis sebagai berikut :

Inisialisasi

 K sebagai simpul akhir.

 Misalkan A adalah himpunan simpul aktif (set aktif). Sebuah titik aktif

jika memiliki label temporal dan jarak yang terbatas namun, penyelidikan

(13)

11 Algoritma

Pada umumnya algoritma Label-Setting terdiri dari 4 tahapan, berikut

adalah penjelasannya :

1. Tetapkan jarak ke akar adalah 0 dan jarak tak terbatas untuk simpul

selanjutnya. Biarkan label dari akar menjadi dirinya sendiri. Selanjutnya,

marilah K adalah himpunan kosong, dan A adalah himpunan tunggal yang

berisi akar. Lanjutkan ke Langkah 2.

2. Pilih simpul dari A dengan jarak minimal dan melambangkannya dengan i. (Jika ada lebih simpul dengan jarak minimal, kemudian pilih yang terkecil)

Hapus i dari A., dan masukan ke-K. Lanjutkan ke Langkah 3. 3. Untuk setiap sisi (i, j) dengan t (i) + h (i, j) < t (j):

- C1. Jika j ∈ A, kemudian dimasukkan j menjadi A, ganti label dan jarak

sebagai berikut:

c (j): = i, t (j): = t (i) + h (i, j).

- C2. Jika j ∈ A, maka memodifikasi label dan jarak j oleh

c (j): = i, t (j): = t (i) + h (i, j).

4. Hentikan jika A kosong. Kemudian, label menentukan pohon yang

minimal. Jika tidak, lanjutkan Langkah 2[2].

2.4.2 Proses iterasi pada Algoritma Label-Setting

Pada dasarnya Algoritma Label-Setting mencari jalur terpendek ke semua

node yang ada pada jaringan dan memberikan label pada jalur yang dianggap

sebagai jalur terpendek. Apabila terdapat jalur lain dengan tujuan node yang sama,

maka Algoritma Label-Setting akan membandingkan bobot dari jalur baru dengan jalur lama, apabila jalur baru memiliki nilai bobot yang lebih kecil maka akan memberikan label pada jalur baru dan menghilangkan label pada jalur yang lama.

Berikut contoh proses iterasi pada Algoritma Label-Setting. Dengan

menggunakan graf tidak berarah namun memiliki bobot. Sebut saja K sebagai

(14)

Gambar 2.9 Proses Iterasi ke-1

Tabel 2.4 Hasil proses iterasi ke-1

1

A A

A B C D E F G

K A A A

T 0 2 4

Simpul aktif pada iterasi ke-1 adalah node A, dimana node A sedang

mengecek bobot pada node - node yang ada di sekitarnya. Disini node B dan node C berada dekat dan memiliki jalur ke node A. Hasil yang didapatkan pada iterasi

ke-1 simpul akhir untuk menuju node B dan node C adalah node A. dengan total

bobot masing - masing sebesar 2 untuk node B dan 4 untuk node C. Dan memberikan label pada jalur tersebut.

Gambar 2.10 Proses iterasi ke-2

Tabel 2.5hasil proses iterasi ke-2

2

A A B

A B C D E F G

K A A B B B

(15)

13 Simpul aktif pada iterasi ke-2 adalah node B, dimana node B sedang

mengecek total bobot yang didapat dari node A sebagai node asal, menuju ke

node C, node D dan node E yang terhubung ke node B. Hasil yang didapat pada

iterasi ke-2 adalah menemukan jalur yang lebih pendek menuju node C, maka

label dari A-C akan digantikan dengan B-C dengan total bobot adalah 3 dan

menggantikan simpul akhir menuju node C dari A menjadi B.

Gambar 2.11 Proses iterasi ke-3

Tabel 2.6 hasil proses iterasi ke-3

3

A A B C

A B C D E F G

K A A B C B C

T 0 2 3 4 4 7

Simpul aktif pada iterasi ke-3 adalah node C, dimana node C sedang

mengecek total bobot yang didapat dari node A sebagai node asal, menuju ke

node D dan node F yang terhubung ke node C. Hasil yang didapat pada iterasi

ke-3 adalah menemukan jalur yang lebih pendek menuju node D, maka label dari

B-D akan digantikan dengan C-B-D dengan total bobot adalah 4 dan menggantikan

simpul akhir menuju node D dari B menjadi C.

(16)

Tabel 2.7 hasil proses iterasi ke-4

4

A A B C D

A B C D E F G

K A A B C B D D

T 0 2 3 4 4 6 6

Simpul aktif pada iterasi ke-4 adalah node D, dimana node D sedang

mengecek total bobot yang didapat dari node A sebagai node asal, menuju ke

node E, node F dan node G yang terhubung ke node D. Hasil yang didapat pada

iterasi ke-4 adalah menemukan jalur yang lebih pendek menuju node F, maka

label dari C-F akan digantikan dengan D-F dengan total bobot adalah 6 dan

menggantikan simpul akhir menuju node F dari C menjadi D.

Gambar 2.13 Proses iterasi ke-5

Tabel 2.8 hasil proses iterasi ke-5

5

A A B C D E

A B C D E F G

K A A B C B D E

T 0 2 3 5 4 7 6

Simpul aktif pada iterasi ke-5 adalah node E, dimana node E sedang

mengecek total bobot yang didapat dari node A sebagai node asal, menuju ke

node node G yang terhubung ke node E. Hasil yang didapat pada iterasi ke-5

adalah menemukan jalur yang bernilai sama menuju node G. Maka proses akan

menggantikan simpul akhir node D menjadi node G. Hal ini disebabkan karena

proses akan memperbaharui jalur yang didapat, apabila menemukan jalur baru

(17)

15 Gambar 2.14 Proses iterasi ke-6

Tabel 2.9 hasil proses iterasi ke-6

6

A A B C D E F

A B C D E F G

K A A B C B D E

T 0 2 3 5 4 7 6

Simpul aktif pada iterasi ke-6 adalah node F, dimana node F sedang

mengecek total bobot yang didapat dari node A sebagai node asal, menuju ke

node node G yang terhubung ke node F. Disini proses tidak menemukan jalur

yang memiliki nilai labih rendah dari sebelumnya.

Gambar 2.15 Proses iterasi ke-7

Tabel 2.10 hasil proses iterasi ke-7

7

A A B C D E F G

A B C D E F G

K A A B C B D E

(18)

Simpul aktif pada iterasi ke-7 adalah node G, dimana node G merupakan

node akhir. Disini proses tidak menemukan jalur yang memiliki nilai labih rendah

dari sebelumnya. Maka proses iterasi selesai.

Dari tabel 2.10 kita dapatkan daftar label yang telah diberikan pada semua

node. Jalur - jalur yang telah diberikan label di sebut dengan path tree.

2.5 Path Tree

Path tree pada teori grafh adalah subgrafh dari grafik yang dibangun sehingga jarak antara node asal (root) ke semua node memiliki nilai terkecil (minimal). Disebut Tree karena jika ada jalur yang memiliki tujuan yang sama (melingkar), maka kita dapat menghapus jalur lama yang memiliki jalur

terpanjang tanpa harus menambahkan jarak dari asal ke semua node yang ada

pada subgrafh.

Jika setiap pasangan node dalam grafik memiliki jalur terpendek yang unik

di antara mereka, maka path tree bersifat unik. Hal ini karena jika jalan tertentu dari akar ke beberapa titik minimal, maka setiap bagian dari jalan itu (dari node u

ke node v) adalah jalan minimal antara dua node[5].

Gambar 2.16 Graf dengan adanya Path Tree

2.6 DFD (Data Flow Diagram)

Data Flow Diagram (DFD) adalah alat pembuatan model yang memungkinkan profesional sistem untuk menggambarkan sistem sebagai suatu

jaringan proses fungsional yang dihubungkan satu sama lain dengan alur data,

(19)

17 nama Bubble chart, Bubble diagram, model proses, diagram alur kerja, atau model fungsi.

DFD ini adalah salah satu alat pembuatan model yang sering digunakan,

khususnya bila fungsi-fungsi sistem merupakan bagian yang lebih penting dan

kompleks dari pada data yang dimanipulasi oleh sistem. Dengan kata lain, DFD

adalah alat pembuatan model yang memberikan penekanan hanya pada fungsi

sistem.

DFD ini merupakan alat perancangan sistem yang berorientasi pada alur

data dengan konsep dekomposisi dapat digunakan untuk penggambaran analisa

maupun rancangan sistem yang mudah dikomunikasikan oleh profesional sistem

kepada pemakai maupun pembuat program. Adapun simbol-simbol dari DFD

yang dapat dilihat pada lampiran.

2.6.1 Penggambaran DFD

Tidak ada aturan baku untuk menggambarkan DFD. Tapi dari berbagai

referensi yang ada, secara garis besar langkah untuk membuat DFD adalah :

1. Identifikasi terlebih dahulu semua entitas luar yang terlibat di sistem.

2. Identifikasi semua input dan output yang terlibat dengan entitas luar.

3. Buat Diagram Konteks (diagram context)

Diagram ini adalah diagram level tertinggi dari DFD yang menggambarkan

hubungan sistem dengan lingkungan luarnya. Caranya :

a. Tentukan nama sistemnya.

b. Tentukan batasan sistemnya.

c. Tentukan terminator apa saja yang ada dalam sistem.

d. Tentukan apa yang diterima/diberikan terminator dari/ke sistem.

e. Gambarkan diagram konteks.

4. Buat Diagram Level Zero

Diagram ini adalah dekomposisi dari diagram konteks. Caranya :

a. Tentukan proses utama yang ada pada sistem.

b. Tentukan apa yang diberikan/diterima masing-masing proses ke/dari

(20)

keluar/masuk dari suatu level harus sama dengan alur data yang

masuk/keluar pada level berikutnya).

c. Apabila diperlukan, munculkan data store (master) sebagai sumber

maupun tujuan alur data.

d. Gambarkan diagram level zero. d.1 Hindari perpotongan arus data.

d.2 Beri nomor pada proses utama (nomor tidak menunjukkan urutan

proses).

5. Buat Diagram Level Satu

Diagram ini merupakan dekomposisi dari diagram level zero. Caranya :

a. Tentukan proses yang lebih kecil (sub-proses) dari proses utama yang

ada di level zero.

b. Tentukan apa yang diberikan/diterima masing-masing sub-proses ke/dari

sistem dan perhatikan konsep keseimbangan.

c. Apabila diperlukan, munculkan data store (transaksi) sebagai sumber

maupun tujuan alur data.

d. Gambarkan DFD level Satu

d.1 Hindari perpotongan arus data.

d.2 Beri nomor pada masing-masing sub-proses yang menunjukkan

dekomposisi dari proses sebelumnya.

6. DFD Level Dua, Tiga, …

Diagram ini merupakan dekomposisi dari level sebelumnya. Proses

dekomposisi dilakukan sampai dengan proses siap dituangkan ke dalam

program. Aturan yang digunakan sama dengan level satu.

2.7 Visual Basic 2005

Perancangan program ini yaitu menggunakan perangkat lunak Visual basic 2005 yang merupakan suatu bahasa pemrograman yang memberikan berbagai macam fasilitas pembuatan aplikasi visual. Keunggulan pada bahasa

pemrograman ini terletak pada penggunaannya yang mudah dipahami karena

(21)

19 bahasa pemrograman yang terstruktur secara umum seperti bahasa pemrograman

lainnya.

Keunggulan lain yang didapat dari bahasa pemrograman ini adalah

banyaknya referensi dan contoh materi ataupun program yang telah banyak

dipaparkan serta hasil rancangan aplikasi dapat langsung di eksekusi dan menjadi

bagian dari program lain yang berbasis pada sistem operasi windows.

Gambar 2.17 Visual Basic 2005

2.7.1 Memulai Visual basic 2005

Ketika kita hendak membuat file baru, maka akan muncul beberapa pilihan

diantaranya adalah : windows application, class library, console application,

crystal report, device application dan masih banyak lagi seperti pada gambar 2.18

(22)

Apabila pengguna hendak membuat program yang dapat dijalankan di

system operasi windows, maka pilihlah windows application. Dan akan muncul form sebagai berikut

Gambar 2.19 Jendela form baru

Penggunaan Visual basic 2005 berbasis pada GUI, yang memudahkan pengguna

dalam hal tampilan program. Berikut adalah penjelasan dari interface pada visual

basic 2005.

1. Toolbox : berisikan tool - tool yang dapat digunakan pada program,

pengguna hanya harus click and drag item yang akan digukanan ke dalan form pada nomor 4.

2. Tombol save file yang telah diperbaharui.

3. Running button : untuk menjalankan program yang telah dibuat.

4. Form : pada jendela ini pengguna akan men-desain tampilan program yang

akan dibuat, dan untuk mengisikan perintah program hanya harus

menclick kanan pada item atau form dan pilih View Code.

5. Solution explorer : berisikan explorer dari form atau class yang telah dibuat

(23)

21

BAB III

PERANCANGAN SISTEM

3.1 Deskripsi Sistem Pencarian Jalur Terpendek

Masalah yang akan dibahas adalah bagaimana membangun sistem aplikasi

pencarian jalur terpendek menggunakan algoritma Label-Setting. Pencarian jalur

terpendek di kota Bandung khususnya, menjadi topik utama yang berusaha

dipecahkan dan dibahas pada tugas akhir ini. Pada dasarnya program akan

mencari jalur terpendek berdasarkan nilai bobot atau panjanganya jalur yang dilewati dari asal ke tujuan, dan tidak tergantung dari berapa jumlah node atau titik yang dilewati.

3.2 Perancangan Sistem

Spesifikasi minimum untuk membangun sistem pencarian jalur terpendek

ini adalah sebagai berikut :

a) Hardware

Kebutuhan hardware untuk sistem ini adalah :

1. Processor : Intel Pentium III 600MHz atau yang lebih baik

2. Memory : SDRAM 128MB atau lebih baik

3. 2MB harddisk free sebelum instalasi.

4. Resolusi layar sebesar 800 x 600 atau lebih tinggi dengan 256 warna.

5. Keyboard dan mouse.

b) Software

Kebutuhan dari software untuk sistem ini adalah :

1. OS : Windows XP sp1 atau lebih baik

2. Microsoft .Net Framework 2.0

c) Pengguna sistem (user)

1. Pengguna software ini minimal dapat mengoperasikan mouse atau

(24)

Spesifikasi tersebut diambil dari minimum sistem yang dibutuhkan untuk

menginstal software visual basic 2005.

3.2.1 Perancangan Node

Perancangan node dan penentuan nilai bobot dilakukan secara manual,

dengan cara menempatan node - node di setiap persimpangan jalan, atau juga pada

jalan yang memiliki jalur yang lebih panjang dari yang lainnya. Berikut adalah

gambar peta kota Bandung yang diberikan sumbu X dan Y guna menentukan

koordinat node pada peta. Sebagai contoh kita menempatkan node 1 pada jalan tol

pasirkoja. Node 1 berada pada titik X = 20 dan Y = 420. Setelah dicoba pada

program, tidak sesuai dengan plot yang dibuat. Sehingga harus ada pembetulan

nilai X dan Y pada data yang dibuat menjadi X = 13 dan Y = 408.

Gambar 3.1 Koordinat setiap node berdasarkan sumbu X dan Y

Koordinat yang telah didapatkan kemudian diuji kedalam program dan

membenarkan (fix) node tersebut apabila keluar dari jalur pada peta. Sehingga didapatkan koordinat yang sesuai seperti pada tabel 3.1.

(25)

23 Untuk menentukan nilai bobot pada setiap node, digunakan fasilitas dari

google maps seperti pada gambar 3.2.

Gambar 3.2 Contoh pengambilan bobot pada setiap node

Pada gambar 3.2 titik A merupakan node 1 dan titik B merupakan node 16,

dan bobot yang didapatkan pada kedua node ini adalah sebesar 2,4 Km.

Pengambilan nilai bobot tidak hanya pada node 1 dan node 16 saja, tetapi pada

semua link yang menghubungkan ke setiap node. Sehingga didapatkan nilai bobot

(26)

3.2.2 Graf

Bentuk graf yang digunakan pada sistem ini adalah berbobot dan tidak

berarah seperti pada gambar 3.2.1.1.

Gambar 3.3 Node dan link dengan 59 buah node

Selain menempatkan node pada setiap persimpangan jalan, juga harus

menentukan link dan bobot pada setiap nodenya yang terdapat pada tabel 3.1.

Tabel 3.1 Koordinat dengan 59 node

(27)

Sumbu-25

Nilai bobot didapatkan dari hasil penghitungan jarak dalam dunia nyata,

dengan cara mencari besar jarak antara node ke node terdekat (jika ada link), dengan menggunakan layanan dari google maps.

(28)

Node

data koordinat yang dibutuhkan dan akan menghasilkan jalur terpendek, gambar

proses dapat dilihat pada gambar 3.2

Gambar 3.4 Diagram Konteks

Hasil Jalur Terpendek

User dan Passw ord

(29)

27 3.2.4 DFD level 1

Gambar 3.5 DFD level 1

Pengguna akan diminta username dan password. Apabila memasukan

username dan password “user”, maka dikategorikan sebagai user yang tidak dapat

melakukan proses input data. Dan apabila username dan password “admin”, maka

dikategorikan sebagai admin yang dapat melakukan proses input data. Setelah

program mendapat data koordinat, link dan bobot program akan mulai menggambarkan data - data tersebut pada form. Dan ketika user memasukan

tujuan asal iterasi sistem dimulai untuk mencari path tree dari node asal tersebut, dan ketika user menginputkan node tujuan maka sistem akan memberikan

informasi hasil iterasi dari node asal ke node tujuan kepada user. User Login

Valid Adm in Login

Valid Data Node

Adm in Login Valid

Data Node Pilih Jum lah Node

Inform asi Jalur Terpendek Node Aw al dan Akhir

Input Invalid User nam e dan Passw ord

User Input Dat a

2 Login

1

Pencarian Jalur Terpendek

3

(30)

3.2.5 Perancangan Sistem Input/Output

Perancangan T01

1.Apabila pengguna memasukan

username “admin” dan password

“admin” maka akan me-link ke T02.

2.Apabila pengguna memasukan

username “user” dan password “user”

maka akan me-link ke T03.

3.Apabila pengguna gagal memasukan

username dan password sebanyak 3

kali, maka program akan keluar.

Perancangan T02

1.Jika Menu di klik maka akan keluar

submenu Shortest Path, Logout dan

Exit.

2.Jika submenu Shortest Path di klik

maka akan keluar submenu Open,

yang akan mengeluarkan browse file

yang digunakan untuk memasukan

jumlah node yang diinginkan

3.Jika submenu Logout di klik maka

program akan me-link ke T01.

4.Jika submenu Exit di klik maka

program akan keluar / close.

5.Jika Help di klik maka akan keluar

submenu About yang akan me-link ke

(31)

29 Perancangan T03

1.Disini user diminta memilih masukan

banyaknya node yang akan diterapkan

pada peta kota Bandung. Jika telah

memilih dan meng-klik Confirm maka

akan me-link ke T04.

2.Jika tombol Cancel ditekan maka

program akan keluar / close.

Perancangan T04

1.Jika Menu di klik maka akan keluar

submenu Node List, Logout dan Exit.

2.Jika submenu Node List di klik maka

akan me-link ke T03.

3.Jika submenu Logout di klik maka

program akan me-link ke T01.

4.Jika submenu Exit di klik maka

program akan keluar / close.

1.Jika Help di klik maka akan keluar

submenu About yang akan me-link ke

T05.

Perancangan T05

1.Pengguna harus menekan close untuk

menutup form about.

3.2.6 Hak akses Admin & User

Pada sistem ini terdapat 2 kategori user, diantaranya adalah :

(32)

Username : admin

Password : admin

Kelebihan dari Admin adalah dapat memodifikasi isi file .093 karena

admin membuka file dengan cara open file atau browse, sehingga admin

mengetahui letak dari file .093 tersebut. Selain itu juga admin dapat

melihat waktu proses algoritma label-setting dalam menyelesaikan

perncarian jalur terpendek pada peta kota Bandung.

2. Common User atau User

Username : user

Password : user

User hanya dapat memilih jumlah node yang akan dipakai pada peta kota

Bandung, dan memberikan inputan sebagai awal dan akhir node.

3.2.7 Perancangan Procedural

Adapun flowchart dari perancangan sistem adalah sebagai berikut.

Gambar 3.6 Flowchart Program Utama

Keterangan flowchart pada gambar 3.6 adalah sebagai berikut :

1. Set coba = 3.

(33)

31 3. Cek apakah username = admin dan password = admin, jika ya admin login

valid, jika tidak lanjutkan proses 4.

4. Cek apakah username = user dan password = user, jika ya user login valid,

jika tidak lanjutkan proses 5.

5. Cek apakah coba = 0, jika ya hentikan eksekusi program. Jika tidak

lanjutkan proses 6.

6. Coba - 1, kembali ke proses 3.

Gambar 3.7 Flowchart Menu Admin

Keterangan flowchart pada gambar 3.7 adalah sebagai berikut :

1. Inisialisai file dengan membuka file path. 2. Lakukan pencarian jalur terpendek.

Gambar 3.8 Flowchart Menu User

Keterangan flowchart pada gambar 3.8 adalah sebagai berikut :

1. Pilih jumlah node yang akan digunakan pada peta.

2. Masukan input node awal dan node akhir.

(34)
(35)

33 Gambar 3.9 Flowchart Pencarian Jalur Terpendek

Keterangan flowchart pada gambar 3.9 adalah sebagai berikut :

1. Inisialisasi parameter : dari file yang telah dibuka, program akan

menginisialisasikan variable yang akan digunakan. Diantaranya adalah

Jumlah Node, Jumlah Link, Koordinat dan Penomoran Node, Bobot link 1

ke link 2, dan NC yang merupakan penghitung jumlah node dari 1 sampai

akhir.

2. Merupakan bagian dari inisialisasi parameter.

3. Draw atau gambarkan node berdasarkan koordinat dan identitas.

4. Draw atau gambarkan link berdasarkan node awal dan akhir, dan masukan kedalam koleksi link.

5. Mouse event : penggunaan mouse even bertujuan memudahkan penggunaan dari program. Program akan menunggu mouse ditekan,

apabila mouse kiri ditekan maka node tersebut adalah sebagai node asal,

dan apabila mouse kanan ditekan maka node tersebut sebagai node tujuan.

6. Setelah node asal ditentukan, program akan menentukan nomor dan

koordinat dari node yang dipilih tersebut.

7. Awal dari proses iterasi dan mulai menghitung waktu proses.

8. Set jarak awal ke kandidat dengan nilai terbesar.

9. Tambahkan nilai NC sebagai Node Counter atau penghitung jumlah node 10.Tentukan kandidat terdekat selanjutnya yang dapat dilihat dari dari link

yang didapat dari data inputan. Jarak link tersebut dinamai sebagai jarak

ke kanditat.

11.Periksa apakah kandidat tersebut telah memiliki jalur terbaik. Jika tidak

lanjutkan ke proses 11.

12.Seleksi apakah jarak ke kandidat lebih kecil atau sama dengan jarak awal.

ke kandidat. Jika tidak kembali ke proses 8.

13.Jika jarak ke kandidat lebih kecil dari jarak awal kandidat, masukan nilai

tersebut ke jarak awal ke kandidat.

14.Tandai link/jalur yang dipilih, yang dianggap sebagai jalur terpendek ke

(36)

15.Cek apakah semua node telah dilewati, NC = jumlah node. Jika tidak

kembali ke proses 7.

16.Hentikan penghitungan waktu proses yang berarti proses iterasi selesai.

Kembali ke proses 3.

17.Apabila mouse kanan ditekan tentukan nomor dan koordinat dari node

yang dipilih sebagai node tujuan.

18.Program akan mulai mencari link dari node asal ke node tujuan

berdasarkan link yang telah ditandai sebelumnya.

19.Output waktu proses hanya untuk menu admin saja, sehingga admin dapat

(37)

35

BAB IV

HASIL PENGUJIAN DAN ANALISA

4.1 Tampilan Program dengan adanya path tree

Perancangan pencarian jalur terpendek ini adalah dengan membuat suatu

path tree yang digunakan untuk mengurangi waktu iterasi. Selain itu juga fungsi

path tree disini untuk memudahkan dalam pencarian jalur terpendek. Path tree

bisa berkembang sesuai dengan jumlah node yang digunakan. Pada tugas akhir ini

node yang digunakan adalah sebanyak 59 node dengan 81 edge. Jumlah tersebut

didapat dari banyaknya persimpangan jalan yang terdapat pada peta. Node

ditempatkan di setiap persimpangan jalan dan pada titik – titik yang dianggap

perlu. Berikut adalah contoh tampilan dari path tree dengan node asal adalah node 6.

Gambar 4.1 Tampilan Path Tree dengan node 6 sebagai node asal

Pada gambar 4.1 menampilkan suatu path tree dari node asal 6. Program akan langsung mencari jalur terpendek ke setiap node - node yang lain yang akan

(38)

4.2 Tampilan Program

Berikut adalah contoh program setelah dijalankan (run), yang merupakan jalur terpendek dari node 6 sebagai asal dan node 47 sebagai node tujuan.

Gambar 4.2 Ilustrasi Jalur Terpendek

Gambar 4.2 kita dapatkan jalur terpendek menuju node tujuan adalah

melewati node 12-25-24-34-35-36-39-41 dengan lama proses iterasi adalah

902794µs.

Percobaan dilakukan pada 2 buah PC dan dijalankan masing 3 kali untuk

melihat lama proses iterasi dan pengaruh terhadap hardware, dan berikut adalah

spesifikasi dari kedua PC tersebut

1) PC-1

Processor : Intel Pentium 4 1,80 GHz

Memory : 512 MB

VGA : 256 MB (shared memory 128 MB)

2) PC-2

Processor : Intel Atom 1,66 GHz

Memory : 1 GB

(39)

37 4.3 Pengujian pada PC-1

Hasil dari beberapa pengujian pada 59 buah node dapat dilihat pada tabel 4.3.

Tabel 4.1 Hasil pengujian 59 node pada PC-1

Node asal Node

40 902669 902763 870184 891872 1-16-22-21-35-36-39-41-40 47 805151 870309 837683 837714 1-16-22-21-35-36-39-41-47 58 805245 837823 837761 826943 1-16-22-34-33-32-31-30-57-54-58

2

14 902810 902700 902670 902726 2-3-4-14

40 902810 870277 837761 870282 2-3-4-14-23-34-35-36-39-41-40 47 837558 870122 902731 870137 2-3-4-14-23-34-35-36-39-41-47 58 805338 870168 870137 848547 2-3-4-14-23-34-33-32-31-30-57-54-58

7

26 902638 902684 902670 902664 7-8-9-10-12-26

40 805354 870169 870106 848543 7-8-9-10-12-26-25-24-34-35-36-39-41-40 47 870200 870153 870262 870205 7-8-9-10-12-26-25-24-34-35-36-39-41-47 58 870059 902731 902685 891825 7-8-9-10-11-56-55-54-58

24

40 870122 870059 870169 870116 24-34-35-36-39-41-40 47 902717 902654 870184 891851 24-34-35-36-39-41-47 50 902654 902763 902560 902659 24-34-35-36-39-41-44-45-50 58 870137 902716 870356 881069 24-25-26-27-28-29-30-57-54-58

35

40 902654 869996 870059 880903 35-36-39-41-40 47 902731 870231 902622 891861 35-36-39-41-47 50 902545 870215 902607 891789 35-36-39-41-44-45-50 58 870075 870184 902779 881012 35-32-31-30-57-54-58

Rata - rata 877628

Pengujian iterasi tidak berhenti pada jumal 59 node saja, tetapi menguji

dengan jumlah node yang lebih banyak. Yaitu 75 dan 100 buah node yang

ditempatkan pada persimpangan dan jalan pada peta kota Bandung. Berikut adalah

hasil pengujian yang telah diperoleh. Pada tabel 4.4 memperlihatkan penempatan

node berdasarkan sumbu X dan sumbu Y. Dan pada tabel 4.5 memperlihatkan

(40)
(41)
(42)

Tabel 4.4 Hasil pengujian 75 node pada PC-1

40 902888 870106 902669 891887 1-67-16-22-21-35-36-39-41-72-71-40 47 837652 870059 870278 859329 1-67-16-27-21-35-36-39-41-47 58 902826 902809 902841 902825 1-67-16-22-21-35-36-39-41-44-45-51-66-52-53-58

2

14 902731 870168 902763 891887 2-3-4-14

40 902779 837668 902795 881080 2-3-4-14-23-64-34-35-36-39-41-72-71-40 47 870169 870137 837605 859303 2-3-4-14-23-64-34-35-36-39-41-47 58 902872 837698 870091 870220 2-3-4-14-23-24-25-75-26-27-28-29-30-57-54-58

7

26 870168 902810 902732 891903 7-8-9-10-12-26

40 837793 870246 837683 848574 7-8-9-10-12-26-75-25-24-34-35-36-39-41-72-71-40 47 837526 870168 870075 859256 7-8-9-10-12-26-75-25-24-34-35-36-39-41-47 58 837699 902732 870168 870199 7-8-9-10-11-56-63-55-54-58

24

40 870012 870215 902826 881017 24-34-35-36-39-41-72-71-40 47 902591 870121 870137 880949 24-34-35-36-39-41-47 50 805354 870153 902810 859439 24-34-35-36-39-41-44-45-50 58 870169 870294 837668 859377 24-25-75-26-27-28-29-30-57-54-58

35

40 870262 902669 902841 891924 35-36-39-41-72-71-40 47 902669 902638 902559 902622 35-36-39-41-47 50 870387 902763 902622 891924 35-36-39-41-44-45-50 58 870027 870169 870262 870152 35-32-31-30-57-54-58

Rata - rata 878327

Pada tabel 4.6 kolom jalur terpendek dapat dilihat penambahan jumlah

node yang dilewati dibandingkan kolom jalur terpendek pada tabel 4.3. Jika kita

memperhatikan nilai rata - rata yang diperoleh tidak jauh berbeda dengan tabel

4.3. Hal ini disebabkan workload yang diinputkan pada sistem pencarian jalur terpendek tidak terlalu besar. Pengujian selanjutnya akan dilakukan pada jumlah

node sebanyak 100 buah node. Untuk melihat workload yang diterima sistem pencarian jalur terpendek dan membandingkannya dengan ketiga percobaan

sebelumnya. Pada tabel 4.7 memperlihatkan penempatan keseluruhan 100 buah

node yang di simpan pada jalan - jalan yang tidak lurus dan atau pada jalan - jalan

(43)

41 Tabel 4.5 Koordinat 100 node

(44)
(45)

43

Pada tabel 4.9 menunjukan hasil pengujian pada 100 buah node. Node asal

dan node akhir sama dengan percobaan selanjutnya yang bermaksud melihat

perbedaan waktu yang diperoleh dengan menambahkan jumlah node yang

dilewati untuk sampai ke node tujuan.

Tabel 4.7 Hasil pengujian 100 buah node PC-1

Node asal Node

40 870106 902716 870184 881002 1-75-76-16-22-21-35-36-39-41-98-99-100-40 47 870246 870419 870199 870288 1-75-76-16-22-21-35-36-39-41-47 58 870246 870324 837808 859459

1-75-76-16-22-83-84-85-34-33-32-89-31-30-57-87-54-88-58

2

14 902654 870325 902700 891893 2-3-4-14

40 870059 837730 902701 870163 2-3-4-14-23-85-34-35-36-39-41-98-99-100-40 47 902716 870215 870262 881064 2-3-4-14-23-85-34-35-36-39-41-47 58 870153 870247 870090 870163

2-3-4-14-23-24-25-81-80-26-27-28-29-30-57-87-54-88-58

7

26 902544 869997 902716 891752 7-8-9-10-12-90-26

40 837573 870230 902794 870199 7-8-9-10-12-90-26-80-81-25-24-34-35-36-39-41-98-99-100-40

47 902747 870184 870356 881095 7-8-9-10-12-90-26-80-81-25-24-34-35-36-39-41-47 58 837574 805338 870309 837740 7-8-9-10-11-77-56-78-79-55-54-88-58

24

40 902763 870200 870090 881017 24-34-35-36-39-41-98-99-100-40 47 902763 837699 837605 859355 24-34-35-36-39-41-47 50 870153 870262 870090 870168 24-34-35-36-39-41-44-45-50 58 870090 837527 902795 870137 24-25-81-80-26-27-28-29-30-57-87-54-88-58

35

40 902794 870028 869965 880929 35-36-39-41-98-99-100-40 47 902669 902638 870215 891840 35-36-39-41-47 50 870106 870200 870138 870148 35-36-39-41-44-45-50 58 902748 902794 870028 891856 35-32-89-31-30-57-87-54-88-58

(46)

Pada semua tabel di atas, program dieksekusi (run) sebanyak tiga kali, kemudian diambil rata-rata nilainya. Hal ini dilakukan untuk mengetahui seberapa

cepat dan baik program algoritma Label-Setting mampu menemukan solusi yang

diharapkan. Semakin kecil rata-rata nilai panjang jalurnya, maka semakin baik

performa program algoritma Label-Setting menemukan jalur terpendek yang

tertera pada kolom jalur terpendek.

Dari tabel 4.3, 4.6, dan 4.9 terlihat bahwa penggunaan dari shortest path path tree dapat mengurangi waktu proses. Waktu proses pada ketiga percobaan tersebut tidak berpengaruh dengan penambahan jumlah node.

4.4 Pengujian pada PC-2

Pada percobaan selanjutnya, pengujian akan dilakukan pada PC-2. Dan hasil

dari pengujiannya adalah sebagai berikut.

Tabel 4.8 Hasil pengujian pada 59 buah node PC-2

Node asal Node

40 675554 643022 643178 653918 1-16-22-21-35-36-39-41-40 47 740618 708023 675616 708085 1-16-22-21-35-36-39-41-47 58 643115 642928 643069 643037 1-16-22-34-33-32-31-30-57-54-58

2

14 707757 805370 740321 751149 2-3-4-14

40 675382 740539 675538 697153 2-3-4-14-23-34-35-36-39-41-40 47 707993 675335 675476 686268 2-3-4-14-23-34-35-36-39-41-47 58 708102 675460 642975 675512 2-3-4-14-23-34-33-32-31-30-57-54-58

7

26 675506 642865 675538 664636 7-8-9-10-12-26

40 708023 643115 675460 675532 7-8-9-10-12-26-25-24-34-35-36-39-41-40 47 708007 675726 708132 697288 7-8-9-10-12-26-25-24-34-35-36-39-41-47 58 675617 675601 675429 675549 7-8-9-10-11-56-55-54-58

24

40 707961 740399 643006 697122 24-34-35-36-39-41-40 47 740352 707992 675507 707950 24-34-35-36-39-41-47 50 642928 707804 708195 686309 24-34-35-36-39-41-44-45-50 58 642990 675647 675538 664725 24-25-26-27-28-29-30-57-54-58

35

40 643084 740400 740415 707966 35-36-39-41-40 47 707758 837730 740478 761988 35-36-39-41-47 50 740556 643053 707820 697143 35-36-39-41-44-45-50 58 675445 643177 675492 664704 35-32-31-30-57-54-58

(47)

45 Tabel 4.10 menunjukan hasil uji coba 59 buah node pada PC-2 yang

dilakukan sebanyak 114 kali pecobaan yang mencari jalur - jalur sama seperti

pada tabel 4.3 dan menghasilkan jalur terpendek yang sama, tetapi waktu proses

yang berbeda. Percobaan selanjutnya dilakukan pada 75 buah node dengan node

asal dan node tujuan yang sama seperti pada tabel 4.6 dengan koordinat, link dan

bobot yang sama. Hasil yang didapat adalah sebagai berikut.

Tabel 4.9 Hasil pengujian pada 75 buah node PC-2

Node asal Node

40 740633 707836 707883 718784 1-67-16-22-21-35-36-39-41-72-71-40 47 740462 707727 708007 718732 1-67-16-27-21-35-36-39-41-47 58 708039 610661 708023 675574 1-67-16-22-21-35-36-39-41-44-45-51-66-52-53-58

2

14 740415 707961 740461 729612 2-3-4-14

40 675522 740383 707883 707929 2-3-4-14-23-64-34-35-36-39-41-72-71-40 47 642928 707961 642912 664600 2-3-4-14-23-64-34-35-36-39-41-47 58 675491 772994 675319 707934 2-3-4-14-23-24-25-75-26-27-28-29-30-57-54-58

7

26 675303 707914 772775 718664 7-8-9-10-12-26

40 643147 610568 610552 621422 7-8-9-10-12-26-75-25-24-34-35-36-39-41-72-71-40 47 675444 643053 675476 664657 7-8-9-10-12-26-75-25-24-34-35-36-39-41-47 58 707851 610396 707992 675413 7-8-9-10-11-56-63-55-54-58

24

40 740462 708070 675476 708002 24-34-35-36-39-41-72-71-40 47 643021 707789 675444 675418 24-34-35-36-39-41-47 50 643022 675476 707898 675465 24-34-35-36-39-41-44-45-50 58 643085 708117 708086 686429 24-25-75-26-27-28-29-30-57-54-58

35

40 642928 707852 740399 697059 35-36-39-41-72-71-40 47 708101 707883 740509 718831 35-36-39-41-47 50 740508 675491 643256 686418 35-36-39-41-44-45-50 58 642913 707993 643084 664663 35-32-31-30-57-54-58

Rata - rata 694427

Tabel 4.12 menunjukan hasil dari pengujian pada 100 buah node dengan

node asal dan node tujuan yang sama seperti pada tabel 4.9. Hasil yang diperoleh

(48)

Tabel 4.10 Hasil pengujian 100 buah node PC-2

40 643053 642990 675320 653787 1-75-76-16-22-21-35-36-39-41-98-99-100-40 47 707898 708055 707726 707893 1-75-76-16-22-21-35-36-39-41-47 58 610771 610489 643240 621500

1-75-76-16-22-83-84-85-34-33-32-89-31-30-57-87-54-88-58

2

14 740368 772869 740352 751196 2-3-4-14

40 675585 707977 740290 707950 2-3-4-14-23-85-34-35-36-39-41-98-99-100-40 47 642850 675600 675319 664589 2-3-4-14-23-85-34-35-36-39-41-47 58 740618 707929 675382 707976

2-3-4-14-23-24-25-81-80-26-27-28-29-30-57-87-54-88-58

7

26 740399 675366 675428 697064 7-8-9-10-12-90-26

40 643271 610443 642990 632234 7-8-9-10-12-90-26-80-81-25-24-34-35-36-39-41-98-99-100-40

47 675538 643084 643021 653881 7-8-9-10-12-90-26-80-81-25-24-34-35-36-39-41-47 58 740555 643069 707851 697158 7-8-9-10-11-77-56-78-79-55-54-88-58

24

40 708085 675616 642913 675538 24-34-35-36-39-41-98-99-100-40 47 740321 740353 708055 729576 24-34-35-36-39-41-47 50 740478 708070 772994 740514 24-34-35-36-39-41-44-45-50 58 740430 740665 642990 708028 24-25-81-80-26-27-28-29-30-57-87-54-88-58

35

40 740306 740555 740258 740373 35-36-39-41-98-99-100-40 47 740446 740555 675616 718872 35-36-39-41-47 50 675538 708102 740431 708023 35-36-39-41-44-45-50 58 708117 642912 707961 686330 35-32-89-31-30-57-87-54-88-58

Rata - rata 696069

4.5 Perbandingan Hasil PC-1 dan PC-2

Dari 6 kali pengujian dengan 2 PC yang berbeda kita dapatkan nilai rata -

rata sebagai berikut

Tabel 4.11 Rata - rata hasil 6 kali pengujian

PC-1

Rata - rata lama proses pada PC-1 (µs)

877628 878327 875060 877005

PC-2

Rata - rata lama proses pada PC-2 (µs)

(49)

47 Dari tabel 4.12 kita dapat menyimpulkan perbedaan hardware dapat

mempengaruhi lama proses iterasi. Walaupun hitungannya dalam µ s kita masih

dapat melihat pengaruh perbedaan hardware yang digunakan. Selisih dari kedua

nilai rata - rata 6 kali pengujian tersebut adalah 182250 µs yang sama dengan

0.18 S atau kurang dari 1 detik, yang memungkinkan aplikasi ini untuk dijalankan

(50)

BAB V

SIMPULAN dan SARAN

5.1 Simpulan

Dari hasil pengujian penulis dapat membuat kesimpulan sebagai berikut :

1. Telah berhasil membuat suatu perangkat lunak yang dapat digunakan untuk

mencari jalur terpendek antar dua node pada peta kota Bandung.

2. Proses rata - rata yang didapat pada kedua PC adalah kurang dari 1 detik.

Sehingga memungkinkan aplikasi ini untuk dibuat berbasis web.

3. Dari hasil rata - rata percobaan pada kedua PC terlihat bahwa spesifikasi

hardware dapat berpengaruh pada lama proses iterasi.

5.2 Saran

Saran dari penulis diantaranya sebagai berikut :

1. Memperluas cakupan daerah yang digunakan pada penelitian.

2. Karena proses iterasi yang cepat, sehingga aplikasi ini dapat diterapkan

berbasis web, yang dapat diperbaharui oleh penduduk lokal yang lebih

mengetahui jalan - jalan lebih terperinci.

3. Melakukan observasi ke lapangan dan mencatat daerah - daerah yang tidak

dapat dilalui dua arah, dan mengimplementasikannya ke program.

4. Mencoba membandingkan algoritma label-setting dengan algoritma pencarian

(51)

PENERAPAN ALGORITMA LABEL-SETTING

UNTUK MENCARI LINTASAN TERPENDEK

DARI DUA NODE PADA PETA KOTA BANDUNG

TUGAS AKHIR

Disusun untuk memenuhi syarat kelulusan

Pada Program Studi Sistem Komputer Strata Satu di Jurusan Teknik Komputer

Oleh :

Andhy

10204069

Pembimbing : Wendi Zarman, M.Si.

Sri Nurhayati, M.T.

JURUSAN TEKNIK KOMPUTER

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

(52)

DAFTAR PUSTAKA

[1] Fauzi, S. (2010). “Pencarian Jalur Terpendek Travelling Salesman Problem menggunakan Algortima Ant Colony System” Tugas Akhir, Jurusan Teknik Komputer, Universitas Komputer Indonesia 2010.

[2] Marton, L, A label-setting algorithm for calculating shortest path trees in

parse network, Translation from Hungarian, Alkalmazott Mat. Lapok 19,

No.2, 115-132 1999 (http://hej.sze.hu/ANM/ANM-030323-A/

anm030323a.pdf, diakses 10 Mei 2011)

[3] Petersen, B. Label-Setting Algorithm for Shortest Path Problems, Journal of the University of Copenhagen, November 2006 (http://www.diku.dk/OLD/

undervisning/2006-2007/2006-2007_b2_426/slides3.pdf, diakses 11 Mei

2011)

[4] Sadeli, M. “81 Trik Tersembunyi Visual Basic 2005”, Penerbit Maxikom, 2009.

[5] Wikipedia. Shortest Path Tree, (online), Mei 2011

(http://en.wikipedia.org/wiki/Shortest_path_tree, diakses 14 Mei 2011).

[6] Zhan, B. F. A Comparison Between Label-Setting and Label-Correcting Algorithms for Computing One-to-One Shortest Path. (http://uweb.txstate.edu/~fz01/Reprints/ Zhan_2000_JGIDA.PDF, diakses

(53)

Andhy lahir di Jakarta Pusat pada 3 Juni 1985. Anak ke-3

dari 3 bersaudara memiliki tinggi badan 160 cm. Alamat

sekarang Jl. Cicukang 289 RT. 02/25 Kab. Bandung Jawa

Barat. Lulus SDN Angkasa V pada tahun 1997, SLTP

Negeri III Margahayu pada tahun 2000, SMK Negeri 1

Katapang Jurusan Teknik Elektro pada tahun 2003, dan

Gelar Sarjana Teknik Komputer diperoleh dari Program

Studi Teknik Komputer Fakultas Teknik dan Ilmu Komputer UNIKOM tahun

2011. Pengalaman kerja praktek di RSU Cibabat Cimahi bagian Administrator

(54)

KATA PENGANTAR

Assalaamu’alaikum Wr. Wb

Puji Syukur penulis panjatkan ke hadirat Allah SWT yang telah

melimpahkan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan

skripsi yang berjudul : “PENERAPAN ALGORITMA LABEL-SETTING

UNTUK MENCARI LINTASAN TERPENDEK DARI DUA NODE PADA

PETA KOTA BANDUNG”. Segala berkah semoga tercurah kepada Nabi dan

Rosul Allah manusia suci Muhammad SAW yang telah menjadi sosok ideal untuk

dijadikan contoh baik dalam ucapan, sikap dan perbuatan oleh seluruh umat

manusia di muka bumi termasuk penulis sendiri.

Dalam proses penyusunan skripsi ini banyak hal atau pihak yang telah

memberikan kontribusi positif sehingga skripsi ini dapat diajukan sebagai syarat

untuk mendapatkan gelar Sarjana Strata Satu (S1) Jurusan Teknik Komputer

Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia.

Dalam kesempatan ini penulis ingin menyampaikan ucapan terima kasih

yang sangat mendalam kepada :

1. Ibu Sri Nurhayati, S.Si, M.T., selaku Ketua Jurusan Teknik Komputer,

Universitas Komputer Indonesia, Bandung.

2. Bapak Wendi Zarman, M.Si., selaku Dosen Pembimbing I atas bimbingan,

waktu, kesabaran, motivasi dan diskusi-diskusi yang sangat menarik.

3. Ibu Sri Nurhayati, S.Si, M.T., selaku Dosen Pembimbing II atas waktu dan

kesabaran membimbing penulis ke arah penyempurnaan penulisan tugas akhir

ini.

4. Ibu Selvia Lorena Br. Ginting, S.Si., MT., selaku Penguji I atas waktu dan

saran yang telah diberikan untuk menguji tugas akhir ini.

5. Bapak John Adler, M.Si., selaku Penguji II atas waktu dan saran yang

(55)

vi

6. Bapak Usep Mohamad Ishaq, M.Si., selaku Dosen Wali penulis atas arahan,

kepedulian terhadap Kelas 04 TK2 yang tidak pernah lelah memberi solusi

atas keluh kesah kami dan selalu menjadi inspirasi khususnya bagi penulis.

7. Seluruh dosen dan staf Jurusan Teknik Komputer Fakultas Teknik dan Ilmu

Komputer Universitas Komputer Indonesia yang telah mendedikasikan

dirinya bagi almamater, mengajarkan ilmu, mengajarkan kejujuran,

kedisiplinan dan senantiasa menampilkan akhlak yang indah. Semoga Allah

SWT membalasnya dengan pahala yang berlipat ganda.

8. Teman-teman Teknik Komputer angkatan 2004-2006 tanpa terkecuali yang

memberikan kesan yang sangat mendalam selama kuliah.

9. Semua pihak yang membantu dan memotivasi penulis dalam menyelesaikan

skripsi ini yang tidak bisa penulis sebutkan satu per satu.

Terakhir penulis ingin memberikan skripsi ini sebagai tanda rasa cinta dan

sayang yang amat sangat serta hormat dan bakti kepada Ibunda Desmawizarti

yang telah mencintai, menyayangi, membesarkan, mendidik penulis dengan penuh

kesabaran dan keikhlasan.

Tiada gading yang tak retak, tidak ada manusia yang sempurna, karenanya

segala kritik dan saran yang membangun sangat penulis harapkan demi kebaikan

di masa depan. Semoga karya kecil ini dapat menjadi suatu kontribusi bagi

perkembangan ilmu pengetahuan dan dicatat Allah SWT sebagai salah satu amal

ibadah di akhirat kelak. Amin.

Wassalamu’alaikum Wr.Wb

Kontak dengan penulis dapat dilakukan melalui surat elektronik (E-mail) di andhie.093@gmail.com.

Bandung, 28 Juli 2011

Figur

Gambar 2.2 Graf tidak berarah namun tidak memiliki bobot
Gambar 2 2 Graf tidak berarah namun tidak memiliki bobot . View in document p.7
Gambar 2.4 Graf tidak memiliki arah dan tidak memiliki bobot
Gambar 2 4 Graf tidak memiliki arah dan tidak memiliki bobot . View in document p.8
Tabel 2.2 Koordinat titik antar kota
Tabel 2 2 Koordinat titik antar kota . View in document p.10
Gambar 2.8 Algoritma Label-Setting sederhana
Gambar 2 8 Algoritma Label Setting sederhana . View in document p.11
Gambar 2.7 Jalur Sederhana
Gambar 2 7 Jalur Sederhana . View in document p.11
Tabel 2.3 Algoritma Label-Setting sederhana
Tabel 2 3 Algoritma Label Setting sederhana . View in document p.12
Gambar 2.18 Menu creating new file pada Visual Basic 2005
Gambar 2 18 Menu creating new file pada Visual Basic 2005 . View in document p.21
Gambar 2.17 Visual Basic 2005
Gambar 2 17 Visual Basic 2005 . View in document p.21
Gambar 2.19 Jendela form baru
Gambar 2 19 Jendela form baru . View in document p.22
Gambar 3.1 Koordinat setiap node berdasarkan sumbu X dan Y
Gambar 3 1 Koordinat setiap node berdasarkan sumbu X dan Y . View in document p.24
Gambar 3.2 Contoh pengambilan bobot pada setiap node
Gambar 3 2 Contoh pengambilan bobot pada setiap node . View in document p.25
Gambar 3.3 Node dan link dengan 59 buah node
Gambar 3 3 Node dan link dengan 59 buah node . View in document p.26
Tabel 3.1 Koordinat dengan 59 node
Tabel 3 1 Koordinat dengan 59 node . View in document p.26
Tabel 3.2 Tabel nilai bobot dan link
Tabel 3 2 Tabel nilai bobot dan link. View in document p.27
Gambar 3.4 Diagram Konteks
Gambar 3 4 Diagram Konteks . View in document p.28
Gambar 3.5 DFD level 1
Gambar 3 5 DFD level 1 . View in document p.29
Gambar 3.6 Flowchart Program Utama
Gambar 3 6 Flowchart Program Utama . View in document p.32
Gambar 3.8 Flowchart Menu User
Gambar 3 8 Flowchart Menu User . View in document p.33
Gambar 3.7 Flowchart Menu Admin
Gambar 3 7 Flowchart Menu Admin . View in document p.33
Gambar 4.1 Tampilan Path Tree dengan node 6 sebagai node asal
Gambar 4 1 Tampilan Path Tree dengan node 6 sebagai node asal . View in document p.37
Gambar 4.2 Ilustrasi Jalur Terpendek
Gambar 4 2 Ilustrasi Jalur Terpendek . View in document p.38
Tabel 4.1 Hasil pengujian 59 node pada PC-1
Tabel 4 1 Hasil pengujian 59 node pada PC 1 . View in document p.39
Tabel 4.2 Koordinat 75 node
Tabel 4 2 Koordinat 75 node . View in document p.40
Tabel 4.3 Link dan Bobot pada 75 node
Tabel 4 3 Link dan Bobot pada 75 node . View in document p.40
Tabel 4.4 Hasil pengujian 75 node pada PC-1
Tabel 4 4 Hasil pengujian 75 node pada PC 1 . View in document p.42
Tabel 4.7 Hasil pengujian 100 buah node PC-1
Tabel 4 7 Hasil pengujian 100 buah node PC 1 . View in document p.45
Tabel 4.8 Hasil pengujian pada 59 buah node PC-2
Tabel 4 8 Hasil pengujian pada 59 buah node PC 2 . View in document p.46
Tabel 4.9 Hasil pengujian pada 75 buah node PC-2
Tabel 4 9 Hasil pengujian pada 75 buah node PC 2 . View in document p.47
Tabel 4.11 Rata - rata hasil 6 kali pengujian
Tabel 4 11 Rata rata hasil 6 kali pengujian . View in document p.48
Tabel 4.10 Hasil pengujian 100 buah node PC-2
Tabel 4 10 Hasil pengujian 100 buah node PC 2 . View in document p.48

Referensi

Memperbarui...