IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN...

104
IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN LOKASI RUANGAN Studi Kasus : RS. Bethesda Yogyakarta Skripsi Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika Oleh : Agnes Christy Mara Devvi NIM : 045314070 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2008

Transcript of IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN...

Page 1: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

IMPLEMENTASI ALGORITMA DIJKSTRA

UNTUK PENCARIAN LOKASI RUANGAN

Studi Kasus : RS. Bethesda Yogyakarta

Skripsi

Diajukan untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik

Program Studi Teknik Informatika

Oleh :

Agnes Christy Mara Devvi

NIM : 045314070

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2008

Page 2: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

DIJKSTRA ALGORITHM IMPLEMENTATION

TO SEARCH ROOM LOCATION

Objective : Yogyakarta Bethesda Hospital

FINAL ASSIGNMENT

Presented as a Meaning

For Gaining Engineering Holder

In Informatics Enginering Study Program

By :

Agnes Christy Mara Devvi

NIM : 045314070

INFORMATICS ENGINEERING DEPARTMENT

SCIENCE AND TECHNOLOGY FACULTY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2008

ii

Page 3: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

iii

Page 4: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

iv

Page 5: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

INTISARI

Pencarian lokasi ruangan di rumah sakit, khususnya RS. Bethesda,

merupakan suatu masalah yang dihadapi pengunjung awam pada umumnya.

Dalam skripsi ini di buat suatu program bantu dengan mengimplementasikan

algoritma dijkstra untuk pencarian lokasi ruangan di rumah sakit dengan studi

kasus di RS. Bethesda. Algoritma dijkstra ini, diimplementasikan dengan bahasa

pemrograman Visual Basic 6.0 dan untuk penyimpanan data-data ruangannya, di

gunakan MySQL 5.0.

Masukan untuk program bantu ini, berupa nama ruangan yang ingin di tuju

dan pintu masuk. Keluaran dari program bantu ini berupa letak ruangan tersebut,

lengkap dengan petunjuk berupa gambar denah yang disertai dengan jalur

terpendek untuk sampai ke ruangan tersebut.

v

Page 6: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

ABSTRACT

Searching room location in a hospital, especially in Bethesda Hospital, is

one of the common problems faced by new visitor. From this Thesis, an assistance

program is made by implementing dijkstra algorithm to search location of rooms

in hospital, with Bethesda Hospital as the objective. This djikstra algorithm, was

implemented by using Visual Basic 6.0 and to store the data of rooms, MySQL

5.0 is used.

The Input of this assistance program is the name of the room desired and

entrance, and the output of this assistance program is the location of the room,

with direction drawn in the map, showing the shortest route to the desired room.

vi

Page 7: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

KATA PENGANTAR

Puji syukur saya ucapkan ke hadirat Allah, SWT atas berkat dan limpahan

kasih karunia yang telah diberikan-Nya sehingga penulis bisa menyelesaikan

tugas akhir dan menyusun laporan ini dengan judul “Implementasi Algoritma

Dijkstra Untuk Pencarian Lokasi Ruangan dengan Studi Kasus di RS Bethesda

Yogyakarta”.

Dorongan serta nasehat dari berbagai pihak sangat membantu dalam

pembuatan tugas akhir ini sampai tersusunnya laporan ini. Untuk itu, penulis ingin

mengucapkan terima kasih kepada :

1. Bapak Puspaningtyas Sanjoyo Adi, S.T.,M.T selaku Ketua Jurusan Teknik

Informatika Fakultas Sains dan Teknologi Universitas Sanata Dharma

Yogyakarta.

2. Bapak Drs.Jong Jek Siang, M.Sc selaku Dosen Pembimbing Tugas Akhir yang

telah membimbing dan menyediakan waktu dalam memberikan pengarahan

selama pembuatan tugas akhir dan penulisan laporan tugas akhir ini.

3. Pihak RS. Bethesda yang telah memberikan ijin pada penulis untuk melakukan

penelitian di Rs. Bethesda Yogyakarta.

4. Ibu dan Bapakku tercinta, yang selalu memberikan dorongan pada penulis

untuk selalu maju dan terus berjuang untuk menggapai masa depan yang lebih

baik. Terima kasih atas doa yang senantiasa selalu menemani langkahku.

5. Papa tersayang ku, yang selalu memberikanku motivasi untuk maju, untuk

selalu berusaha menjadi yang terbaik. “ I love u, my father….. I miss u “

6. Nenek dan Kakek ku tersayang yang senantiasa memberikan saran, doa dan

dukungan untuk penulis.

7. Eko Budi Kuncoro atas kritik, masukan dan semangat untuk segera

menyelesaikan tugas akhir ini, yang tak pernah lelah menjadi tempat keluh

kesahku.

Kakak dan adekku tersayang, mbak wiwik dan mas aan ( kakak terhebatku ) yang

selalu menemaniku, yang selalu menjadi tempatku berkeluh kesah. Buat

vii

Page 8: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

viii

Page 9: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

ix

Page 10: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

x

Page 11: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

DAFTAR ISI

Halaman

HALAMAN JUDUL ............................................................................................ i

HALAMAN JUDUL ( DALAM B.INGGRIS ) ................................................. ii

HALAMAN PERSETUJUAN PEMBIMBING ................................................ iii

HALAMAN PENGESAHAN .............................................................................. iv

INTISARI ............................................................................................................. v

ABSTRACT .......................................................................................................... vi

KATA PENGANTAR .......................................................................................... vii

PERNYATAAN KEASLIAN KARYA .............................................................. ix

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA

ILMIAH UNTUK KEPENTINGAN AKADEMIS ........................................... x

DAFTAR ISI......................................................................................................... xi

DAFTAR GAMBAR ............................................................................................ xiv

DAFTAR TABEL ................................................................................................ xv

DAFTAR LAMPIRAN ........................................................................................ xvi

BAB I

PENDAHULUAN........................................................................................ 1

1.1 Latar Belakang Masalah.................................................................... 1

1.2 Rumusan Masalah ............................................................................. 2

1.3 Batasan Masalah ............................................................................... 2

1.4 Tujuan Penelitian .............................................................................. 3

1.5 Metode Penelitian ............................................................................. 3

1.6 Sistematika Penyusunan Laporan ..................................................... 3

BAB II

LANDASAN TEORI................................................................................... 5

2.1 Pengenalan Graf ................................................................................ 5

2.2 Lintasan Terpendek........................................................................... 6

2.3 Algoritma Dijkstra ............................................................................ 7

xi

Page 12: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

2.4 Visual Basic 6.0 ................................................................................ 12

2.5 MYSQL 5.0....................................................................................... 13

BAB III

ANALISA DAN PERANCANGAN SISTEM........................................... 15

3.1 Gambaran Sistem .............................................................................. 15

3.2 Fase Definisi ..................................................................................... 17

3.3 Fase Analisis Masalah....................................................................... 18

3.4 Gambaran Sistem Baru ..................................................................... 20

3.5 Requirement Analisis ........................................................................ 23

3.6 Perancangan Basis Data .................................................................... 23

3.6.1. Pemodelan Proses.............................................................. 23

3.6.2. Pemodelan Data ................................................................ 30

3.7 Desain Input Output ......................................................................... 31

3.7.1. Desain Input ...................................................................... 31

3.7.2. Desain Output ................................................................... 33

3.8 Perancangan Proses .......................................................................... 33

3.8.1. Pembuatan Matrik Jarak.................................................... 34

3.8.2. Pembagian Ruang Lingkup............................................... 35

BAB IV

IMPLEMENTASI DAN ANALISA .......................................................... 42

4.1 Implementasi Program ...................................................................... 42

4.1.1. Implementasi Algoritma Dijkstra...................................... 42

4.1.1.1. Menentukan Titik Awal .................................. 43

4.1.1.2. Menentukan Titik Tujuan................................ 44

4.1.1.3. Menentukan Ruang Lingkup........................... 45

4.1.1.4. Iterasi Algoritma Dijkstra ............................... 46

4.1.2. Implementasi Pembuatan Output ...................................... 50

4.1.2.1. Output Berupa Kode Ruangan dan Nama

Ruangan Jalur Terpendek.............................. 51

xii

Page 13: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

4.1.2.2. Output Berupa Denah RS. Bethesda Disertai

Jalur Terpendek............................................. 54

4.2 Hasil Implementasi............................................................................ 56

4.2.1. Menu Utama...................................................................... 56

4.2.2. Menu Input Titik Awal dan Titik Tujuan.......................... 57

4.2.3. Tampilan Output ............................................................... 58

4.3 Analisa Hasil ..................................................................................... 61

4.3.1. Pengaruh Pembagian Ruang Lingkup............................... 61

4.3.2. Waktu Iterasi Algoritma Dijkstra...................................... 63

BAB V

KESIMPULAN DAN SARAN ................................................................... 65

5.1 Kesimpulan ....................................................................................... 65

5.2 Saran.................................................................................................. 65

xiii

Page 14: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

DAFTAR GAMBAR

Halaman

Gambar 2.1 Gambar Graf Kasus Implementasi Algoritma Dijkstra...................... 8

Gambar 3.1. Denah Rumah Sakit Bethesda Yogyakarta ....................................... 16

Gambar 3.2 Flowchart Pencarian Jalur Terpendek ................................................ 22

Gambar 3.3 Use Case Diagram.............................................................................. 23

Gambar 3.4 Context Diagram ................................................................................ 24

Gambar 3.5 Diagram Berjenjang ........................................................................... 25

Gambar 3.6. Data Flow Diagram Level 1 .............................................................. 26

Gambar 3.7. Data Flow Diagram Level 2 Proses 1 ............................................... 27

Gambar 3.8. Data Flow Diagram Level 2 Proses 3 ............................................... 28

Gambar 3.9. Data Flow Diagram Level 2 Proses 5 ............................................... 29

Gambar 3.10. E-R Diagram ................................................................................... 30

Gambar 3.11. Relational Model ............................................................................. 30

Gambar 3.12 Graf Keseluruhan Rumah Sakit Bethesda Lantai 1.......................... 39

Gambar 3.13 Graf Gedung IGD & IRJ Rumah Sakit Bethesda Lantai 2 .............. 40

Gambar 3.14 Graf Gedung IGD & IRJ Rumah Sakit Bethesda Lantai 3………... 41

Gambar 4.1. Tampilan Menu Utama...................................................................... 57

Gambar 4.2 Tampilan Menu Untuk Kategori Fasilitas Umum............................. 58

Gambar 4.3. Tampilan Output Yang Berupa Gambar Denah RS. Bethesda

Dilengkapi dengan Jalur Terpendek....................................................... 59

Gambar 4.4. Tampilan Output Jalur Terpendek Yang Berupa Kode Ruangan

dan Nama Ruangan ................................................................................. 60

Gambar 4.5. Tampilan Menu Ketika Output pada Gambar 4.3 Ditutup................ 61

xiv

Page 15: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

DAFTAR TABEL

Halaman

Tabel 2.1. Tabel Perhitungan Algoritma Dijkstra.................................................. 11

Tabel 3.1. Tabel Couses dan Effects ...................................................................... 18

Tabel 3.1. Tabel Contoh Kasus Penyempitan Ruang Lingkup .............................. 36

Tabel 3.2. Tabel Aturan Ruang Lingkup Pengecekan Titik................................... 37

Tabel 4.1. Tabel Pengaruh Pembagian Ruang Lingkup......................................... 62

Tabel 4.2.Tabel Percobaan Yang Mempengaruhi Waktu Iterasi Algoritma

Dijkstra................................................................................................. 63

xv

Page 16: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

DAFTAR LAMPIRAN

Lampiran A. Tabel Ruangan

Lampiran B. Tabel Jarak

xvi

Page 17: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Para pengunjung rumah sakit biasanya menginginkan sampai ke ruangan

yang ingin dikunjungi dengan cepat, hal ini disebabkan karena biasanya orang

datang ke rumah sakit dalam keadaan terburu – buru ingin mengunjungi teman

atau saudaranya yang sedang sakit. Kejadian dimana seorang pengunjung tersesat

sewaktu mencari ruangan dirumah sakit, terjadi jika pengunjung tersebut tidak

mengetahui dimana lokasi ruangan yang ingin dituju, sedangkan rumah sakit yang

dikunjungi memiliki area yang sangat luas dengan lorong – lorong yang sangat

banyak.

Sebenarnya tiap – tiap ruangan di rumah sakit mempunyai jalur terpendek

sendiri – sendiri dari pintu masuk rumah sakit, hanya saja mungkin bagi

pengunjung yang baru pertama kali datang ke rumah sakit tersebut tidak

mengetahui jalur terpendek tersebut. Sehingga timbul masalah bagaimana agar

pengunjung rumah sakit yang baru datang pertama kali ke rumah sakit tidak

tersesat ketika mencari salah satu ruangan yang ada di rumah sakit dan agar para

pengunjung dapat menemukan ruangan yang ingin dikunjunginya dengan cepat

dengan memanfaatkan jalur terpendek untuk menuju ke ruangan tersebut.

1

Page 18: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

2

1.2 Rumusan Masalah

Dari latar belakang masalah diatas dapat dirumuskan menjadi masalah

sebagai berikut :

Bagaimana mengimplementasikan algoritma dijkstra dalam pencarian jalur

terpendek suatu lokasi ruangan di Rumah Sakit Bethesda dengan cepat ?

1.3 Batasan Masalah

Dalam pembuatan program Bantu pencarian lokasi di rumah sakit

dilakukan beberapa batasan masalah sebagai berikut :

1. Studi kasus dilaksanakan di Rumah Sakit Bethesda Yogyakarta.

2. Data ruangan dan jarak antar ruangan yang ada merupakan data

Rumah Sakit Bethesda Yogyakarta tahun 2003.

3. Ruangan yang bisa dituju adalah Ruang Rawat Inap Pasien, Klinik,

Laboratorium, Ruang Administrasi, ATM, Ruang Operasional,

Farmasi, IGD, Staff Bethesda dan fasilitas umum.

4. Program dibuat dengan bahasa pemrograman Visual Basic 6.0 dengan

database MYSQL 5.0

5. Dalam melakukan pencarian jarak terpendek algoritma yang di

gunakan adalah algoritma dijkstra.

Page 19: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

3

1.4 Tujuan Penelitian

Tujuan penyusunan skripsi :

Membuat suatu program Bantu dengan mengimplementasikan algoritma

dijkstra, untuk mencari jalur terpendek menuju ruangan – ruangan yang ada di

Rumah Sakit Bethesda.

1.5 Metode Penelitian

Metode Penelitian :

1. Studi pustaka tentang metode dijkstra, bahasa pemograman VB 6.0,

database MySQL 5.0.

2. Survey lokasi di rumah sakit Bethesda untuk mengetahui secara

langsung jalur-jalur tiap ruangan di rumah sakit.

3. Implementasi pencarian jarak terpendek dengan menggunakan metode

dijkstra dalam suatu program

1.6 Sistematika Penyusunan Laporan

BAB I PENDAHULUAN

Bab ini berisi latar belakang masalah, rumusan masalah, batasan

masalah, tujuan penelitian, metodologi penelitian dan sistematika penyusunan

laporan.

BAB II LANDASAN TEORI

Bab ini secara umum berisi tentang landasan teori yang mendukung

pembuatan program.

Page 20: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

4

BAB III ANALISA DAN PERANCANGAN SISTEM

Bab ini berisi tentang gambaran sistem baru, pembahasan analisis

terhadap sistem informasi yang dibuat, analisis kebutuhan sistem dan desain

perancangan sistem.

BAB IV IMPLEMENTASI DAN ANALISA HASIL

Bab ini berisi tentang pengimplementasian dari rancangan sistem yang

telah dibuat pada bab III dengan menggunakan bahasa pemrograman VB6.0 dan

database MYSQL 5.0 dan analisa dari hasil pengimplementasian algoritma

dijkstra dalam pencarian jalur terpendek.

BAB V PENUTUP

Bab ini berisi tentang hasil implementasi yang mencakup kesimpulan

dan saran dari penyusunan laporan Tugas Akhir .

Page 21: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

BAB II

LANDASAN TEORI

2.1 Pengenalan Graf

Graf adalah himpunan titik yang dihubungkan dengan garis-garis. Dalam

kehidupan sehari-hari banyak sekali persoalan yang diimplementasikan dengan

graf. Bidang-bidang yang menggunakan penerapan graf antara lain Switching

network, Coding theory, Electrical analysis, Operation research, Aljabar,

Computer science, dan Kimia. Suatu graf G terdiri dari 2 himpunan yang

berhingga, yaitu himpunan titik-titik tidak kosong yang disimbolkan dengan V(G)

dan himpunan garis-garis yang disimbolkan dengan E(G) sehingga dapat ditulis

menjadi notasi G = (V,E).

Terdapat beberapa istilah penting yang berkaitan dengan graf. Berikut ini

didefinisikan beberapa terminologi yang sering digunakan:

• Derajat ( Degree )

Derajat suatu simpul pada graf tak berarah adalah jumlah sisi yang bersisian

dengan simpul tersebut. Pada graf berarah, derajat simpul v dinyatakan dengan

din

(v) dan dout

(v), yang dalam hal ini:

din

(v) = derajat masuk (in-degree) , jumlah simpul yang masuk ke simpul v

dout

(v) = derajat keluar (in-degree), jumlah simpul yang keluar dari simpul v

Dimana, d(v) = din

(v) + dout

(v).

• Vertex atau node

Adalah simpul atau titik.

5

Page 22: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

6

• Edge ( garis )

Adalah sebuah garis yang menghubungkan 2 titik.

• Walk

Adalah barisan titik – titik dan garis secara berselang seling.

• Lintasan ( Path )

Adalah sebuah walk dimana yang semua garisnya harus berbeda,

• Siklus ( Cycle ) atau Sirkuit ( Circuit )

Adalah sebuah lintasan yang berawal dan berakhir pada titik yang sama.

• Distance ( jarak )

Adalah panjang garis antara kedua titik

• Graf Berbobot ( Weighted Graph )

Adalah graf yang setiap sisinya diberi harga (bobot).

2.2 Lintasan Terpendek

Lintasan terpendek merupakan salah satu dari masalah yang dapat

diselesaikan dengan graf. Beberapa algoritma yang digunakan untuk

menyelesaikan persoalan pencarian lintasan terpendek adalah:

1. Algoritma Dijkstra

2. Algoritma Bellman-Ford

3. Algoritma Floyd-Warshall.

Dari ke tiga algoritma di atas Algoritma Dijkstra merupakan algoritma

yang paling tepat untuk menangani masalah pencarian lintasan terpendek pada

graf berarah dengan bobot-bobot sisi (edge weights) yang bernilai tidak-negatif.

Page 23: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

7

2.3 Algoritma Dijkstra

Algoritma ini ditemukan oleh Edsger Dijkstra . Yang merupakan salah

satu algoritma dalam memecahkan permasalahan jarak terpendek (shortest path

problem) untuk sebuah graf berarah (directed graph) dengan bobot-bobot sisi

(edge weights) yang bernilai tidak-negatif.

Untuk lebih jelasnya maka dapat digambarkan sebagai berikut : Misalkan

G adalah graf berarah berlabel dengan titik-titik V(G) = { v1,v2,v3,………,vn } dan

path terpendek yang dicari adalah dari v1 ke vn . Algoritma Dijkstra dimulai dari

titik v1 . Dalam iterasinya, algoritma akan mencari satu titik yang jumlah

bobotnya dari titik 1 terkecil. Titik-titik yang terpilih dipisahkan dan tidak

diperhatikan lagi dalam iterasi berikutnya. Misalkan :

V(G) = { v1,v2,v3,………,vn }

L = Himpunan titik-titik € V(G) yang sudah terpilih dalam alur

path terpendek

D(j) = Jumlah bobot path terkecil dari v1 ke vj.

w(I,j) = Bobot garis dari titik vi ke titik vj.

w*(1,j) = Jumlah bobot path terkecil dari v1 ke vj.

Secara formal, algoritma Dijkstra untuk mencari path terpendek adalah sebagai

berikut :

1. L = { }

V = { v2, v3,…., vn }

2. Untuk i= 2,……, n , lakukan D(i) = w(1,i)

3. Selama vn ∉ L lakukan :

Page 24: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

8

a. Pilih titik vk € V-L dengan D(k) terkecil

L = L U { vk }

b. Untuk setiap vj € V-L lakukan :

Jika D(j) > D(k) +W(k,j) maka ganti D(j) dengan D(k) + W(k,j)

4. Untuk setiap vj € V, w*(1,j) = D(j)

Menurut alagoritma diatas, path terpendek dari titik v1 ke vn adalah melalui

titik titik dalam L secara berurutan, dalam jumlah bobot path terkecilnya adalah

D(n). Untuk lebih memahami algoritma dijkstra, maka berikut contoh soal

pencarian jalur terpendek dari graf pada gambar 2.1 di bawah ini .

Gambar 2.1 Gambar graf kasus implementasi algoritma dijkstra

Kasus :

Dari gambar graf 2.1 diatas maka carilah jalur terpendek dari titik a

sampai dengan titik e.

Penyelesaian :

Va Vb Vc Vd Ve

Va ∞ 5 4 6 7

Vb 5 ∞ 7 8 6

W = Vc 4 7 ∞ 3 4

Vd 6 8 3 ∞ 5

Ve 7 6 4 5 ∞

a bc

de

5

6

5

6

4 7

8 4 3

7

Page 25: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

9

Ada 4 langkah yang dilakukan untuk menyelesaikan masalah diatas, yaitu :

1. Mula- mula L= { } dan V= { Vb,Vc,Vd,Ve}

2. D(b) = W(a,b) = 5 ; D(c) = W(a,c) = 4

D(d) = W(a,d) = 6 ; D(e) = W(a,e) = 7

3. V – L = { Vb,Vc,Vd,Ve } – { } = { Vb,Vc,Vd,Ve }

Vn = Ve ∉ L, sehingga langkah 3(a) – 3(b) dilakukan.

3(a) : D(k) terkecil adalah D(c) sehingga vk = Vc

L = L ∪ {vk} = { } ∪ { Vc } = { Vc }

3(b) : V-L = { Vb,Vc,Vd,Ve } – { Vc } = { Vb,Vd,Ve }

k = c ( dari langkah 3(a) )

Diselidiki tiap titik dalam V-L

Untuk j = b :

D(j) = D(b) = 5 ; D(k) + W(k,j) = D(c) + W(c,b) = 4 + 7 = 11

Karena D(b) > D(c) + W(c,b) maka D(b) tetap = 5

Untuk j = d :

D(j) = D(d) = 6 ; D(k) + W(k,j) = D(c) + W(c,d) = 4 + 3 = 7

Karena D(d) > D(c) + W(c,d) maka D(d) tetap = 6

Untuk j = e :

D(j) = D(e) = 7 ; D(k) + W(k,j) = D(c) + W(c,e) = 4 + 4 = 8

Karena D(e) > D(c) + W(c,e) maka D(e) tetap = 7

Page 26: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

10

Langkah selanjutnya kembali ke langkah 3(a), kerena Ve ∉ L

V-L = { Vb,Vd,Ve } ≠ ∅

Diantara D(k) ( k = b,d,e ) hasil iterasi langkah 3(b), D(k) yang terkecil adalah

D(b), sehingga Vk =Vb

Maka sekarang, L = L ∪ { Vb } = { Vc } ∪ { Vb } = { Vb,Vc }

3(b) : V- L = { Vb,Vc,Vd,Ve } – { Vb,Vc } = { Vd,Ve }

Langkah 3(b) untuk mengecek setiap titik dalam V-L diulangi lagi.

Langkah 3(a) dan 3(b) di ulang-ulang terus hingga Ve ∈ L. Hasil iterasi

selengkapnya dapat dilihat pada tabel 2.1.

Page 27: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

11

Indeks k shg

D(k) minuman L

V-L

D(b)

D(c)

D(d)

D(e)

-

{Vb,Vc,Vd, Ve }

W(a,b) = 5

W(a,c) = 4

W(a,d) = 6

W(a,e) = 7

c

{Vc}

{Vb,Vd,Ve}

Min (D(b),D(c)+W(c,b)) = Min(5, 4 + 7) = 5

4( tetap )

Min (D(d),D(c)+W(c,d)) = Min(6,4+3) = 6

Min (D(e),D(c)+W(c,e)) = Min (7,4+4) = 7

b

{Vb,Vc}

{Vd,Ve}

5( tetap )

4( tetap )

Min (D(d),D(b)+W(b,d) = Min(6,5+8) = 6

Min (D(e),D(b)+W(b,e) = Min(7,5+6) = 7

d

{Vb,Vc,Vd}

{Ve}

5( tetap )

4( tetap )

6( tetap )

Min D(e),D(d)+W(d,e) = Min(7,6+5) = 7

e

{Vb,Vc,Vd,Ve}

Tabel 2.1 Perhitungan Algoritma Dijkstra

Page 28: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

12

Dari tabel perhitungan algoritma yang ditunjukkan pada tabel 2.1 dapat

dilihat karena vn = Ve ∈ L, maka iterasi dihentikan. Path terpendek dari Va

sampai ke Ve adalah 7 dengan jalur yang dibaca mundur sebagai berikut :

Pada iterasi k = d tidak terjadi penurunan jarak ( dari 7 tetap 7 ). Ini berarti

bahwa titik pada indeks k = d (Vd) bukan jalur path. Naik 1 baris diatasnya pada

iterasi k = b tidak terjadi penurunan jarak ( dari 7 tetap 7 ), Ini berarti bahwa titik

pada indeks k = b (Vb) bukan jalur path. Naik 1 baris diatasnya pada iterasi k = c

juga tidak terjadi penurunan jarak ( dari 7 tetap 7 ), Ini berarti bahwa titik pada

indeks k = c (Vc) bukan jalur path.

Jadi path terpendek adalah Va → Ve dengan total jarak = 7.

2.4 Visual Basic 6.0

Microsof Visual Basic 6.0 adalah salah suatu developement tools untuk

membangun aplikasi dalam lingkungan Windows. Dalam pengembangan aplikasi,

Visual Basic menggunakan pendekatan Visual untuk merancang user interface

dalam bentuk form, sedangkan untuk kodingnya menggunakan bahasa Basic yang

cenderung mudah dipelajari. Kelebihan dari Visual Basic adalah kemampuannya

untuk mengkompilasi program dalam bentuk Native Code, yaitu optimisasi pada

saat prosesor mengkompilasi dan menjalankan program tersebut. Selain itu Visual

Basic juga menyediakan fasilitas antar muka penulisan kode program yang lebih

mudah dimengerti dan dipakai sehingga berbagai tipe program dapat

dikembangkan didalamnya, misalnya EXE,DLL dan OCX, bahkan program –

program yang berbasis internet

Page 29: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

13

2.5 MYSQL 5.0

SQL adalah bahasa terstruktur yang digunakan untuk query, meng-update

dan memanipulasi database. Tabel adalah suatu struktur dalam database yang

dipakai untuk menyimpan data. Primary Key adalah suatu indeks pengurutan data

yang secara fisik bergabung dengan table. Primary key diperlukan SQL Server

untuk menjaga suatu table , agar mengikuti aturan tertentu dan untuk

mempercepat pencarian berdasarkan primary key. String adalah rangkaian

karakter, angka dan symbol-simbol lainnya. Banyak fungsi string yang disediakan

MySQL untuk memanipulasi data string sehingga memudahkan pengolahan data.

Insert(str,pos,len,newstr)

Menyisipkan string ke dalam string lain dimulai pada posisi tertentu

sebanyak panjang string tertentu.

Substring(str,pos,len)

Untuk mengambil sebagian string mulai dari posisi tertentu sebanyak

panjang tertentu.

Stored Procedure adalah suatu sub program atau sekelompok perintah atau

sekelompok perintah SQL tersimpan dan menyatu dalam suatu database. Store

Prosedur dan Trigger adalah fasilitas baru yang ditambahkan dalam MySQL versi

5.0. Dengan adanya fasilitas ini menjadikan MySQL sebagai aplikasi database

yang secara penuh dapat menerapkan konsep pemrograman Client-Server, bukan

hanya Multi-User.

ODBC ( Open Database onectivity ) merupakan standart yang digunakan

oleh Microsoft untuk melakukan koneksi database melalui driver – driver yang

Page 30: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

14

independent terhadap suatu produk. ODBC bekerja dalam lingkup system operasi

windows. Konektor ODBC adalah program dan driver yang bisa mengaitkan suatu

program ( termasuk program database server, misalnya MySQL ) dengan ODBC.

Page 31: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1 Gambaran Sistem

Rumah Sakit Bethesda merupakan salah satu rumah sakit terbesar yang

ada di Yogyakarta. Rumah sakit ini melayani pengobatan pasien rawat inap dan

rawat jalan, konsultasi kesehatan, layanan laboratorium dan layanan kesehatan

lainnya. Ruangan yang ada di rumah sakit ini sangat banyak sehingga sering

menimbulkan kebingungan bagi para pengunjung untuk mencari lokasi suatu

ruangan. Ruangan yang ada di rumah sakit ini antara lain ruang rawat inap pasien,

laboratorium, klinik, kas bank, ATM dan lain sebagainya. Pintu masuk yang

disediakan di rumah sakit ini ada 3, yaitu : pintu masuk IGD & IRJ, pintu masuk

pengunjung pasien rawat inap dan pintu masuk samping paviliun Srikandi. Untuk

pengunjung yang baru pertama kali datang ke Rumah Sakit Bethesda mungkin

akan merasa kebingungan untuk mencari lokasi ruangan yang ingin mereka

kunjungi. Sehingga pihak rumah sakit menyediakan fasilitas layanan informasi

untuk memudahkan para pengunjung untuk menemukan ruangan yang ingin

dikunjunginya. Mereka dapat menanyakan lokasi ruangan tersebut pada petugas

informasi, sehingga pengunjung akan memperoleh informasi yang diinginkannya.

Pengunjung akan menemukan ruangan yang ingin dikunjungi dengan bantuan

petunjuk yang ada di setiap lorong Rumah Sakit Bethesda. Gambaran mengenai

lokasi ruangan yang ada di Rumah Sakit Bethesda ini dapat dilihat pada gambar

3.1.

15

Page 32: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

16

Gambar 3.1 Denah Rumah Sakit Bethesda Yogyakarta

Page 33: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

17

3.2 Fase Definisi

Masalah pokok yang terjadi pada Rumah Sakit Bethesda ini adalah

bagaimana cara untuk memberikan informasi mengenai lokasi ruangan yang ada

dirumah sakit ini dengan cara yang mudah di mengerti oleh pengunjung secara

efektif dan efisien. Masalah-masalah tersebut dapat dikategorikan pada PIECES

sebagai berikut :

1. Performance

Pada sistem lama yang masih manual, pengunjung harus mencari petunjuk

yang ada pada tiap-tiap lorong rumah sakit untuk sampai ke lokasi ruangan

yang ingin dikunjungi.

2. Information

Kemungkinan pengunjung akan merasa kebingungan dalam menemukan

lokasi yang ingin dikunjungi jika lokasi ruangan tersebut cukup jauh dari

pintu masuk. Karena saat mereka menanyakan informasi mengenai lokasi

tersebut pada petugas rumah sakit maka informasi yang didapat, hanya

berupa petunjuk yang panjang berupa kata-kata yang susah untuk diingat.

3. Economics

Tidak ada masalah dalam hal economics.

4. Control

Kemungkinan pengunjung tersesat pada saat mencari lokasi ruangan yang

ingin dikunjungi besar apalagi jika pengunjung tersebut baru pertama kali

datang ke RS. Bethesda.

Page 34: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

18

5. Efficiency

Membutuhkan waktu yang lama (kurang efisien) bagi pengunjung untuk

mencari lokasi ruangan yang ingin dikujungi, jika pengunjung harus

menanyakan lokasi tersebut pada petugas dan pengunjung harus mencari

lokasi tersebut dengan berpedoman pada papan petunjuk yang ada pada

tiap lorong rumah sakit

6. Service

Pelayanan tidak maksimal, karena sistem yang masih manual dapat

memungkinkan pengunjung merasa kebingungan saat ingin mencari lokasi

ruangan yang baru pertama kali dikunjungi.

3.3 Fase Analisis Masalah

Pada fase ini dapat di gambarkan dengan tabel 3.1 dibawah ini.

Problem or oportunity Couses and effects System objectives System constraint

1. Pada sistem lama

yang masih manual

pengunjung harus

menanyakan lokasi

ruangan pada

petugas layanan

informasi dan

mencari petunjuk

yang ada pada

1. Proses pencarian

lokasi dengan

menanyakan

lokasi ruangan

pada petugas

layanan

informasi dan

mencari petunjuk

yang ada pada

1. Mempermudah

staff RS.

Bethesda

dalam

melayani

pengunjung

untuk

menemukan

lokasi ruangan

1. Sistem

berjalan pada

sistem

operasi

Windows

2. Database

engine

berjalan pada

platform

Page 35: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

19

setiap lorong

rumah sakit untuk

sampai ke lokasi

ruangan yang ingin

dikunjungi.

2. Kemungkinan

pengunjung akan

merasa

kebingungan

dalam mencari

lokasi ruangan

3. Kemungkinan

pengunjung akan

tersesat saat

mencari lokasi

ruangan yang ingin

dikunjungi besar.

4. Pelayanan tidak

maksimal

setiap lorong

rumah sakit

memakan banyak

waktu dan kurang

efisien.

2. Informasi yang

tidak jelas dapat

membuat

pengunjung

tersesat dan

kebingungan

pada saat mencari

lokasi ruangan

yang ada dirumah

sakit ini.

yang ingin

dikunjungi

2. Mempermudah

pengunjung

untuk

menemukan

lokasi ruangan

yang ingin

dikunjungi

MySQL.

3. Sistem

dirancang

untuk single

user.

Tabel 3.1 Tabel Couses dan Effects

Page 36: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

20

3.4 Gambaran Umum Sistem Baru

Sistem ini dibuat untuk mempermudah proses pencarian lokasi ruangan di

Rumah Sakit Bethesda Yogyakarta, karena system ini merupakan system yang

sudah terkomputerisasi. Ada 2 macam pengguna yang dapat mengakses progam

bantu ini, yaitu : pengunjung RS. Bethesda dan admin.

Proses untuk pengunjung RS. Bethesda diawali ketika pengunjung

memilih salah satu kategori ruangan yang di tawarkan pada program bantu ini.

Dimana pengunjung akan ditawarkan berbagai pilihan kategori ruangan yang ada

dirumah sakit ini. Kemudian setelah pengunjung memilih salah satu kategori yang

ditawarkan maka sistem akan memberikan output yang berupa nama-nama

ruangan yang termasuk dalam kategori ruangan yang telah dipilih. Pengunjung

bisa memilih nama ruangan yang ingin di kunjungi atau juga bisa kembali ke

menu sebelumnya. Setelah nama ruangan dipilih maka pengunjung harus

menentukan dari pintu mana pengunjung tersebut masuk . Dimana ada 3 pintu

masuk yang tersedia di rumah sakit ini yaitu pintu masuk IGD & IRJ, pintu masuk

pengunjung pasien rawat inap dan pintu masuk samping paviliun Srikandi.

Sebagai hasilnya maka sistem akan memberikan output berupa jarak dan jalur

terpendek dari pintu masuk sampai ke ruangan yang ingin di kunjungi yang

dilengkapi dengan denah RS. Bethesda.

Admin mempunyai hak akses lebih pada program bantu ini. Pada program

bantu ini ada 2 macam admin, yaitu admin dan super admin. Dimana super admin

mempunyai hak lebih dari pada admin. Admin hanya bisa mengolah data ruangan

dan mengedit password admin itu sendiri. Pengolahan data ruangan disini adalah

Page 37: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

21

admin dapat melihat semua data ruangan yang ada di RS. Bethesda dan meng-

update data ruangan yang ada. Update data ruangan, di gunakan jika ada suatu

ruangan yang sedang di renovasi sehingga ruangan tersebut untuk sementara tidak

dapat digunakan. Sehingga ketika ruangan tersebut diakses oleh pengunjung

RS.Bethesda maka pengunjung tersebut akan memperoleh informasi bahwa

ruangan tersebut sedang di renovasi dan jika ruangan tersebut telah selesai

direnovasi, maka admin dapat mengembalikan data ruangan tersebut. Untuk super

admin, selain bisa mengolah data ruangan, super admin juga bisa mengolah data

admin. Yang dimaksud mengolah data admin adalah super admin bisa melihat

semua data admin, memasukan data admin baru dan menghapus data admin. Flow

chart system yang dibuat untuk pencarian jalur terpendek tampak pada gambar3.2.

Page 38: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

22

Start

Input kategori ruangan

Input ruangan yang ingin dikunjungi

Pilih pintu masuk

Inisialisasi titik awal, titik tujuan

Penentuan ruang lingkup

Iterasi algoritma Dijkstra

Jarak dan jalur terpendek dari titik awal ke titik tujuan

END

Gambar 3.2 Flowchart Pencarian Jalur Terpendek

Page 39: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

3.5 Requirement Analysis

Use case diagram program bantu pencarian lokasi ruangan di RS. Bethesda

dapat digambarkan pada gambar 3.3 dibawah ini.

User

Pilih ruangan yang ingin dituju

Tentukan pintu masuk

Pilih kategori ruangan yang ditawarkan

Admin

Edit Data Ruangan

Login

Hapus Data Ruangan

Restore Data Ruangan

<< depend on >>

<< depend on >>

Pengolahan data ruangan

Edit password admin

<< extends >>Lihat Data Ruangan

Pengolahan data adminRegister data admin baru

Hapus data admin

<< extends >>

Lihat Data Admin

Gambar 3.3 Use Case Diagram

3.6 Perancangan Basis Data

23

3.6.1 Pemodelan Proses

Pemodelan proses pada sistem yang dibuat dapat digambarkan pada

context diagram, diagram berjenjang dan data flow diagram, ketiganya nampak

pada gambar 3.4, 3.5, 3.6, 3.7, 3.8 dan 3.9.

Page 40: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

24

Program bantu pencarian lokasi ruangan di RS

Bethesda Yogyakarta

User

kategori ruangan, nama ruangan

dan pintu masuk

jarak dan jalur terpendek lengkap dengan denah

RS.Betehsda

Admin

kategori ruangan, nama ruangan,pintu masuk,

data admin barudan data ruangan baru

jarak dan jalur terpendek lengkap dengan denah

RS.Bethesda, data admin barudan data ruangan baru

Gambar 3.4 Context Diagram

Page 41: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

25

0---------------------------PROGRAM BANTU

PENCARIAN LOKASI RUANGAN DI RS.BETHESDA YOGYAKARTA

1-----------------------

PEMILIHAN KATEGORI RUANGAN

1.2P---------------------

PENENTUAN PINTU MASUK

2P------------------------VALIDASI ADMIN

1.1P---------------------PEMILIHAN

NAMA RUANGAN

YANG INGIN DITUJU

1.3P-----------------------PENENTUAN

JALUR TERPENDEK KE

RUANGAN YANG INGIN

DITUJU

5.1P-------------------

LIHAT DATA RUANGAN

5.2P---------------------

EDIT DATA RUANGAN

5.3P-------------------

HAPUS DATA RUANGAN

5.4P------------------

RESTORE DATA

RUANGAN

3 -----------------------PENGOLAHAN DATA ADMIN

5----------------------PENGOLAHAN

DATA RUANGAN

6P------------------------

LOGOUT

3.3P---------------------

REGISTER DATA ADMIN

BARU

3.4P---------------------

HAPUS DATA ADMIN

4P-----------------------

EDIT PASSWORD

ADMIN

3.1P-------------------

VALIDASI SUPER ADMIN

3.2P--------------------

LIHAT DATA ADMIN

Gambar 3.5 Diagram Berjenjang

Page 42: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

26

User

Adm in

1-------------------------

PEM ILIHAN KATEG O RI RUANG AN

2-------------------------VALIDASI ADM IN

3. adm inusernam e , passwd

usernam e,passwd

1. ruangan

Kategori_ruangan yang pilihan

usernam e , passwd

3 -------------------------

PENG O LAHAN DATA ADM IN

5------------------------

PENG O LAHANDATA RUANG AN

user valid

data adm in baru

6------------------------

LO G O UT

data ruangan baru

data ruangan baru

data ruangan baru

data adm in baru

kategori_ruangan pilihankategori_ruangan pilihan

data ruangan sesuai kategori_ruangan pilihandata ruangan sesuaikategori_ruangan pilihan

perintah logout

4P----------- --------------EDIT PASSW O RD

ADM IN

user valid

usernam e,passwd baru

usernam e,passwd baru

data adm in baru

Gambar 3.6 Data Flow Diagram Level 1

Page 43: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

27

1-------------------------------------------------------------------------

1.1P-------------------------

PEMILIHAN NAMA RUANGAN

YANG INGIN DITUJU

1. ruangan

2. jarak

Admin

User

nama ruangan pilihan

nama ruangan pilihan

1.2P-------------------------

PENENTUAN PINTU MASUK

1.3P---------------------------

PENENTUAN JALUR

TERPENDEK KE RUANGAN YANG

INGIN DITUJU

nama pintu masuk

titik tujuan

titik awal

kode_ruangan_asal

Kode_ruangan_tujuan

jarak

jarak, jalur terpendek

kode_ruangan

kode_ruangan

Nama ruangan pilihan

pintu masuk piliahan

jarak, jalur terpendek

Pintu masuk pilihan

Gambar 3.7 Data Flow Diagram Level 2 Proses 1

Page 44: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

28

3------------------------------------------------------- -----------------------------------

3.3P---------------------------

REGISTER DATA ADMIN BARU

3.4P---------------------------

HAPUS DATA ADMIN

3.1P---------------------------

VALIDASI SUPER ADMIN

Admin

username,passwd superadmin

user valid

data admin baru

user valid

data admin baru

level admin, data admin baru

3.2P---------------------------

LIHAT DATA ADMIN

user valid

level admin data admin 3. admin

username,password

username,password

level admin

data admin baru

level admin, data admin baru

data admin baru

Gambar 3.8 Data Flow Diagram Level 2 Proses 3

Page 45: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

29

Admin

1. ruangan

5------------------------------------------------------------------ -------------

5.1P---------------------------

LIHAT DATA RUANGAN

5.2P---------------------------

EDIT DATA RUANGAN

5.3P---------------------------

HAPUS DATA RUANAN

5.4P--------------------------

RESTORE DATA RUANAN

username,password

status ruangan

data ruangan

data ruangan baru

perubahan statusruangan

perubahan status ruangan

user valid

Status ruangan

data ruangan baru

status ruangan baru

status ruangan baru

data ruangan baru

status ruangan baru

status ruangan baru

Gambar 3.9 Data Flow Diagram Level 2 Proses 5

Page 46: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

30

3.6.2 Pemodelan Data

Pemodelan data untuk sistem yang dibuat nampak pada gambar 3.10 dan

3.11 dibawah ini.

Ruangan

Jarak

kode_ruangan

nama_ruangan

kategori_ruangan

jarak

(1,N) (1,N)

Adminpengolahan

username passwd

level

(1,1) (1,N)status

line x1

y1

Gambar 3.10 E-R Diagram

Ruangan

PK kode_ruangan

nama_ruangan kategori_ruangan x1 y1 status line

Jarak

**kode_ruangan_asal **kode_ruangan_tujuan jarak

Admin

PK username

passwd level

Gambar 3.11 Relational Model

Page 47: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

31

3.7 Desain Input Output

3.7.1 Desain Input

Ada 11 kategori ruangan yang disediakan pada program bantu ini. Dimana

tiap kategori terdiri dari beberapa ruangan. Isi dari tiap-tiap kategori tersebut

adalah :

1. Kategori Ruangan Pasien

Yang terdiri dari 2 kategori, yaitu paviliun dan ruangan biasa.

Paviliun : Paviliun Srikandi, Shinta, Anggrek, Gardena,

Flamboyan, Hibiscus, Dahlia, Bakung, Canna, Edelweis dan Jasmine.

Ruangan Biasa : Ruang Bayi, Galilea ,I, III, IV,VI,VII, A, B, C, D,

E, F , G, H, I, J, dan N.

2. Kategori Klinik

Terdiri dari semua klinik yang ada di RS.Bethesda yaitu klinik laktasi,

gizi, akupuntur, psikiatri, karyawan, psikologi, CB anak sehat, mata, kulit, gigi &

mulut, THT, alergi, kebidanan, fisioterapi, saraf, penyakit dalam, bedah, dan

polikinik Kartini.

3. Kategori IGD

Terdiri dari pintu masuk ruang IGD, tempat pendaftaran pasien IGD dan

ruang IRD.

4. Kategori Laboratorium

Terdiri dari laboratorium anatomi & patologi, mikrobiologi, radiologi,

klinik dan patologi klinik.

Page 48: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

32

5. Kategori Farmasi

Terdiri dari medical record, satelit farmasi rawat jalan dan farmasi pusat

pasien rawat inap.

6. Kategori Staff Bethesda

Terdiri dari ruang dokter, sekretariat, wakil direktur & direktur, kepala

IRD, kantor IRJ, humas & pemasaran, bagian kepegawaian, panitia rekam medik,

PDI, PSMRS, PSP, PYC, PKPKY, PKBRS, BMKK, IDI, PDE, komite bidang

diklat, komite gerejani, komite dana pension YAKKUM, komite medis.

7. Kategori Operasional

Terdiri dari dapur, instansi gizi, petrollena, ruang diklat, kantor

elektromedik, ruang senam & fitness, studio, unit jahit, liner bersih, liner kotor,

ruang operasional, PSPM dan ruang rapat.

8. Kategori Staff Administrasi

Terdiri dari loket administrasi, ruang akutansi & keuangan, loket askes,

kantor piutang.

9. Kategori ATM

Terdiri dari ATM BRI, kas BRI, kas Lippo Bank dan kas BPD DIY.

10. Kategori Fasilitas Umum

Terdiri dari toilet, café, lift, tempat layanan informasi dan mini market.

11. Kategori Lain-lain

Terdiri dari unit perawatan ginjal dan ruang cuci darah, ruang bersalin,

ruang pemulihan dan ruang fisioteraphi.

Page 49: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

33

3.7.2 Desain Output

Desain output dari program bantu ini adalah berupa jarak terpendek dan

jalur terpendek dari pintu masuk sampai ke ruangan yang ingin di kunjungi oleh

pengguna program bantu yang disertai dengan denah RS.Bethesda.

3.8 Perancangan Proses

Untuk menemukan jalur terpendek ke setiap ruangan yang ada di rumah

sakit ini, digunakan suatu algoritma pencarian jarak terpendek yaitu algoritma

dijkstra. Untuk mengimplementasikan algoritma ini, maka denah rumah sakit di

ubah ke dalam bentuk graf. Data jarak dan ruangan didapat dari pihak Bethesda

Yogyakarta berbentuk denah rumah sakit dengan skala 1 : 125 cm untuk gedung

lantai 1 kecuali gedung IGD dan IRJ, karena untuk gedung IRJ dan IGD di

berikan data asli tanpa skala.

Dalam pengimplementasian perubahan denah rumah sakit ke dalam graf

ada beberapa aturan yang dipakai, antara lain :

1. Setiap ruangan, pertigaan dan perempatan dijadikan suatu titik.

2. Jika ruangan berupa ruang rawat inap pasien maka ada aturan berbeda untuk

ruang rawat inap pasien yang berupa paviliun dan bangsal. Hal ini disebabkan

karena untuk ruang rawat inap pasien yang berupa paviliun mempunyai pintu

masuk sendiri-sendiri untuk setiap pasiennya, sedangkan untuk ruang rawat

inap pasien yang berupa bangsal pintu masuk hanya 1. Aturan tersebut adalah

sebagai berikut :

Page 50: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

34

Jika ruang rawat inap pasien yang dituju berupa bangsal maka titik

diletakan di pintu masuk ruangan.

Jika ruangan rawat inap pasien berupa paviliun maka titik diletakan di

ruang perawat paviliun tersebut.

3. Untuk ruangan selain ruang rawat inap pasien maka titik di letakan di pintu

masuk ruangan tersebut.

3.8.1 Pembuatan Matriks Jarak

Dalam menentukan jarak antar titik pada graf, langkah yang dilakukan

adalah dengan mengukur jarak pada denah rumah sakit yang berskala 1 : 125 cm

untuk gedung lantai 1 kecuali gedung IGD dan IRJ, untuk gedung IGD dan IRJ

dihitung tanpa skala karena data yang di dapat sudah berupa data asli tanpa skala.

Untuk jalur yang hanya searah maka pada tabel jarak hanya ada jarak

antara titik awal ke titik tujuan, tidak sebaliknya, tetapi untuk jalur yang 2 arah,

maka pada tabel jarak akan ada jarak antara titik awal ke titik tujuan dan

sebaliknya tetapi titik tujuan dijadikan titik awal dan titik awal dijadikan titik

tujuan. Jarak antar titik dikatakan ∞ jika kedua titik tidak terhubung langsung.

Jika kedua titik terhubung langsung maka dalam field jarak pada tabel jarak akan

diisi jarak antara kedua titik tersebut. Tabel jarak untuk graf rumah sakit Bethesda

nampak pada Lampiran B.

Page 51: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

35

3.8.2 Pembagian Ruang Lingkup

Untuk efisiensi pengimplementasian algoritma dijkstra pada program,

maka dari keseluruhan graf rumah rumah sakit Bethesda Yogyakarta akan dibagi

menjadi 9 ruang lingkup seperti yang nampak pada gambar 3.12, 3.13 dan 3.14,

yaitu ruang lingkup A, B, C, D, E, F, G dan H, I, dengan pembagiannya sebagai

berikut :

Ruang Lingkup A

Meliputi sebagian besar paviliun ruang rawat inap pasien yang dimulai dari

pintu masuk samping paviliun Srikandi sampai dengan pertigaan selasar utama

paviliun Dahlia.

Ruang Lingkup B

Meliputi paviliun Edelweis, ruang pertemuan I dan semua ruangan yang

dimulai dari pintu masuk pengunjung pasien rawat inap sampai dengan pertigaan

selasar utama.

Ruang Lingkup C

Meliputi semua ruangan di gedung IRJ dan IGD lantai 1 yang dimulai dari

pintu masuk IRJ sampai dengan selasar belakang IRJ.

Ruang Lingkup D

Meliputi semua ruangan bangsal pasien rawat inap dari A sampai N, ruang

jenazah dan parkir ambulans, yang dimulai dari dapur kecil.

Ruang Lingkup E

Meliputi PSPM, dapur besar dan selasar penghubung antara ruang lingkup B,

C dan D.

Page 52: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

36

Ruang Lingkup F

Meliputi semua ruangan rawat inap pasien I sampai VII kecuali VI, ruang

Galilea, yang dimulai dari selasar utama sampai dengan selasar utama paviliun

Dahlia.

Ruang Lingkup G

Meliputi ATM BRI dan minimarket

Ruang Lingkup H

Meliputi semua ruangan di gedung IRJ dan IGD lantai 2

Ruang Lingkup I

Meliputi semua ruangan di gedung IRJ dan IGD lantai 3

Untuk efisiensi penerapan algoritma dijkstra, maka di buat aturan

pembagian ruang lingkup pengecekan titik berdasarkan ruang lingkup pintu

masuk dan ruang lingkup titik tujuan. Pada aturan pembagian ruang lingkup

pengecekan titik, ada beberapa contoh kasus yang menyebabkan ruang lingkup

pengecekan titik dipersempit, karena pada kenyataannya ada ruang lingkup yang

sebenarnya tidak masuk ke dalam jalur terpendek. Contoh-contoh kasusnya dapat

di lihat pada table 3.2 di bawah ini.

Titik Asal Titik Tujuan Ruang Lingkup Jalur Terpendek

A1 C3 A,B,C,E,F

A1 D4 A,B,D,E,F

B1 C24 B,C,G

B1 E6 B,E

B1 D4 B,D,E

Page 53: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

37

C1 B31 B,C,G

C1 F2 B,C,E,F

C1 A12 A,B,C,E,F

Tabel 3.2 Tabel Contoh Kasus Penyempitam Ruang Lingkup Pengecekan Titik

Dari beberapa contoh kasus pada table 3.2 di atas, maka aturan pembagian

pengecekan titik nampak pada tabel 3.3 dibawah ini.

Ruang Lingkup Pintu

Masuk

Ruang Lingkup Titik

Tujuan

Ruang Lingkup Pengecekan

Titik

A A A

A B AB,F

A C A,B,C,E,F

A D A,B,D,E,F

A E A,B,E,F

A F A,F

A G A,B,F,G

A H A,B,C,E,F,H

A I A,B,C,E,F,H,I

B A A,B,F

B B B

B C B,C,G

B D B,D,E

Page 54: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

38

B E B,E

B F B,F

B G B,G

B H B,C,G,H

B I B,C,G,H,I

C A A,B,C,E,F

C B B,C,G

C C C

C D C,D,E

C E C,E

C F B,C,E,F

C G C,G

C H C,H

C I C,H,I

Tabel 3.3 Tabel Aturan Ruang Lingkup Pengecekan Titik

Page 55: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

39

C 1

C 7 C8

C 36

C 14

C 10

C 11

C13

C 34C 30

C 31C 35

C 3

C 6

C 20

C 29C 28 C33

C 23C 27

C 24

C 32

C 22 C 38

C 17

C 16

C15

C 26

C 21

D 9

E5

E 7

E2

E1

E3

D 1

D 2

D 3

D 12

D 8

D 10

D15

D 18

D 16

D 13

D 30

D 11

D 31

D 27

D 25

D 24

D23

D 26

D 20

D 22

D 19

D 21

D 5

D 4

D 7

D 6

D 29

D 28

D 17

B28

B27 B26 B 25

B12

B 11 B13B 10

B 4

B3

B1

B 2

B7B6

B8

B 9

B14

B24

B21

B22B23

B15

B 30

B29

B 31

B16

B18

F1

F2

F3

F4

F5

F6F7

F9

F11

F12

F8

A 19

F10

A28A29

A 26

A 13

A 8

A 17

A 9

A 11

A 14A 16

A 15

A 12

A 2

A 5

A 7

A 10

A 6

A 25

A 21

A 22A 23

A 18

A24A 27

A 20

A 1

A 4

B 17

B 19

B20

F13

A 3

C 19

C25

B5

E4

D 14

E 6

C 5

C 37

C2G 1

G 2

D 32

R uang Lingkup A

R uang Lingkup F

R uang L ingkup B

R uang Lingkup G

R uang Lingkup C

R uang Lingkup E

R uang Lingkup D

A 30A 31

C 18

C 4 C 12

C 9

D 33D 34

F14

F15

Gambar 3.12 Graf Keseluruhan Rumah Sakit Bethesda Lantai 1

= Tangga dan Lift yang menghubungkan antar lantai = Pintu Masuk

Page 56: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

40

H1

H2

H3

H13

H10

H7

H8H9

H6H4

H5

H11

H15

H31

H17 H18

H19

H20

H21

H22

H23

H24

H25 H26H27

H28H29

H30

H41

H33

H34

H35

H36H37H38H39

H40

H14

H12

H32

H16

Ruang Lingkup H

H42

H43

Gambar 3.13 Graf Gedung IGD & IRJ Rumah Sakit Bethesda Lantai 2

= Tangga dan Lift yang menghubungkan antar lantai gedung IGD dan IRJ

Page 57: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

41

I1

I2

I3

I4

I5

I6

I7I8I9I10

I11

I12

I13 I14I15

I16

I17

I18

I19

I20

I21

I22

I23

I24

I25

I26I27

I28

I29

I30

I31 I32

Ruang Lingkup I

I33

Gambar 3.14 Graf Gedung IGD & IRJ Rumah Sakit Bethesda Lantai 3

= Tangga dan Lift yang menghubungkan antar lantai gedung IGD dan IRJ

Page 58: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

BAB IV

IMPLEMENTASI DAN ANALISA HASIL

Pada bab ini akan dibahas tentang implementasi pembuatan program bantu

pencarian lokasi di RS. Bethesda Yogyakarta dengan menggunakan bahasa

pemograman Visual Basic 6.0 dan databasenya menggunakan MySQL 5.0. Pada

bab ini juga akan dibahas tentang analisa dari program bantu tersebut dan

pembahasannya.

4.1 Implementasi Program

Program bantu ini dibuat untuk membantu pengunjung RS. Bethesda

untuk memperoleh jalur terpendek dalam mencari ruangan yang ingin dikunjungi

dan mempermudah pihak rumah sakit dalam memberikan pelayanan yang lebih

baik dan mudah untuk pengunjung maupun pengguna jasa RS. Bethesda.

4.1.1 Implementasi Algoritma Dijkstra

Pada bagian ini akan dibahas beberapa listing program yang berhubungan

dengan implementasi algoritma dijkstra dalam bahasa pemrograman Visual Basic

6.0. Untuk efisiensi pengimplementasian algoritma dijkstra maka di buat strore

prosedur algoritma_dijkstra() yang akan dipanggil dalam bahasa pemrograman

Visual Basic 6.0.

42

Page 59: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

43

4.1.1.1 Menentukan titik awal

Titik awal yang dimaksud disini adalah kode pintu masuk yang telah

dipilih oleh pengguna program bantu ini. Pada program bantu ini di sediakan 3

pintu masuk, yaitu pintu masuk IGD & IRJ, pintu masuk pengunjung pasien rawat

inap dan pintu masuk samping paviliun Srikandi. Dalam penentuan titik awal ini

digunakan event click() pada kontol option button berikut listing programnya :

Private Sub OptIgd_Click() TextIgd = "C1" kodeawal1 = TextIgd awal1 = Left(kodeawal1, 1) End Sub Private Sub OptPasien_Click() TextIgd = "B1" kodeawal1 = TextIgd awal1 = Left(kodeawal1, 1) End Sub Private Sub OptSamping_Click() TextIgd = "A1" kodeawal1 = TextIgd awal1 = Left(kodeawal1, 1) End Sub

Keterangan :

Pada tiap form kategori ruangan dipasang event click() pada ke 3 kontrol

option button, dimana kontrol option button ini digunakan untuk menampung ke

tiga pilihan pintu masuk yang di ada.

Ketika salah satu kontrol option button di click maka TextIgd ( kontrol

TextBox yang digunakan untuk menampung kode_ruangan dari pintu masuk yang

dipilih ) akan di isi dengan kode_ruangan pintu masuk yang telah di pilih oleh

pengguna program bantu ini. Kemudian isi dari TextIgd akan ditampung dalam

variabel kodeawal1 yang merupakan variabel titik awal yang akan digunakan

dalam iterasi algoritma djikstra, selanjutnya kodeawal1 ini akan dipotong 1 huruf

Page 60: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

44

dari depan yang disimpan dalam variabel awal1 yang digunakan dalam penentuan

ruang lingkup.

4.1.1.2 Menentukan titik tujuan

Titik tujuan yang dimaksud disini adalah kode ruangan yang ingin

dikunjungi oleh pengguna program bantu ini, berikut listing program untuk

menetukan titik tujuan :

Set rs = New ADODB.Recordset rs.Open " select * from ruangan where nama_ruangan='" & ComboAdministrasi & "'", conn If Not rs.EOF Then

If status_ruangan = 0 Then kode = rs("kode_ruangan") kodeakhir1 = kode akhir = Left(kode, 1) Else MsgBox "Maaf, ruangan yang ingin di kunjungi

sedang di renovasi. . !!", vbCritical, "Error" ComboAdministrasi = "Pilih Ruang Administrasi

Yang Tersedia" CommandCari.Enabled = True CommandMenu.Enabled = True Exit Sub End If Else MsgBox "Silahkan pilih jenis ruang administrasi

terlebih dahulu. . !!", vbCritical, "Error" ComboAdministrasi = "Pilih Ruang Administrasi Yang

Tersedia" CommandCari.Enabled = True CommandMenu.Enabled = True Exit Sub End If Set rs = Nothing

Keterangan : Untuk memperoleh kode_ruangan dari ruangan yang telah di pilih oleh

pengguna program bantu ini digunakan query yang berfungsi untuk mengambil

data dari tabel ruangan yang nama ruangannya sama dengan nama ruangan yang

dipilih oleh pengguna program bantu pada kontrol combobox.

Page 61: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

45

Pada penentuan titik tujuan ini, jika status ruangan yang ingin dituju oleh

pengguna program bantu ini adalah 1 ( yang berarti ruangan sedang di renovasi ),

maka program bantu ini akan memberikan informasi pada pengguna program

bantu bahwa ruangan yang ingin di kunjungi sedang di renovasi.

Data kode_ruangan yang dihasilkan dari query tersebut akan ditampung

dalam variabel kode, yang kemudian akan ditampung lagi pada variabel

kodeakhir1 yang merupakan variabel titik tujuan yang merupakan titik akhir

dalam iterasi algoritma dijksra, selanjutnya kode_ruangan tersebut akan dipotong

1 huruf dari depan yang ditampung dalam variable akhir, hal ini diperlukan untuk

menentukan ruang lingkup.

4.1.1.3 Menentukan ruang lingkup

Penentuan ruang lingkup berguna untuk mempercepat proses pengecekan

tiap titik, karena jika tidak dibagi kedalam beberapa ruang lingkup maka jumlah

titik yang di cek akan sangat banyak yaitu 227 titik, sehingga akan menyebabkan

proses pencarian jalur terpendek dengan algoritma dijkstra memakan waktu yang

relatif lama. Sehingga pada program bantu ini, graf RS. Bethesda dibagi menjadi 9

ruang lingkup. Untuk menentukan ruang lingkup maka dibuat store prosedur

untuk menentukan titik mana saja yang harus di cek dalam iterasi algoritma

dijkstra. Store prosedur untuk tiap titik asal dan titik tujuan yang berbeda juga

berbeda. Dimana aturan penentuan ruang lingkup harus sesuai dengan tabel aturan

pengecekan titik ruang lingkup yang dapat dilihat pada tabel 3.3 di halaman 37.

Berikut salah satu listing program store prosedur penentuan ruang lingkup :

Page 62: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

46

DELIMITER $$; DROP PROCEDURE IF EXISTS `bethesda`.`lingkupA_A`$$ CREATE DEFINER=`root`@`localhost` PROCEDURE `lingkupA_A`(lingkup_awal varchar(1),lingkup_tujuan varchar(1)) BEGIN declare titik_lingkup varchar(4); declare jumlah int; declare x int default 1; declare cur1 cursor for select count(*) from ruangan

where Substring(kode_ruangan,1,1)=lingkup_awal OR Substring(kode_ruangan,1,1)=lingkup_tujuan;

declare cur2 cursor for select kode_ruangan from ruangan where substring(kode_ruangan,1,1)=lingkup_awal OR Substring(kode_ruangan,1,1)=lingkup_tujuan;

open cur1; open cur2; fetch cur1 into jumlah; set jumlah=jumlah+1; while x < jumlah do fetch cur2 into titik_lingkup; insert into titik values(x,titik_lingkup,1); set x =x+1; end while; CLOSE cur1; CLOSE cur2; END$$ DELIMITER ;$$

4.1.1.4 Iterasi algoritma dijkstra

Pada tahap ini ada beberapa tahap yang harus dilakukan untuk

mendapatkan jarak dan jalur terpendek dari pintu masuk sampai ke ruangan yang

ingin di kunjungi oleh penguna program bantu ini, berikut ini adalah tahap-tahap

iterasi algoritma dijkstra :

a. Menghitung jarak antara titik awal dengan semua titik-titik yang merupakan

titik yang termasuk dalam ruang lingkup hasil dari langkah3. Setelah di

dapatkan data jarak, maka semua data pada iterasi ini disimpan pada tabel

bantuan yaitu tabel iterasi_jarak. Berikut listing store prosedur nya:

Page 63: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

47

set titik_terpilih=kode_asal; update titik set status1 = 0 where

kode_titik=titik_terpilih; select count(*) into jumlah from titik; set jumlah=jumlah+1; while x<jumlah do select kode_titik into in_kode_titik from titik where

nomor=x; select status1 into status_titik from titik where

nomor=x; if status_titik=1 then CALL ambil_jarak (kode_asal, in_kode_titik,

@jarak); select @jarak into in_jarak; insert into iterasi_jarak values(in_iterasiku,x,

kode_asal,in_kode_titik,in_jarak); set x=x+1; else insert into iterasi_jarak values (in_iterasiku,

x,kode_asal,in_kode_titik,999); set x=x+1; end if; end while; set kode_asalku=kode_asal;

b. Pengecekan apakah titik tujuan telah masuk kedalam himpunan titik terpilih.

Selama hasil pengecekan bernilai salah, berarti titik tujuan belum masuk ke

dalam himpunan titik terpilih dalam jalur terpendek. Sehingga akan dilakukan

2 langkah yaitu :

b1. Pilih titik terpilih yang termasuk dalam dalam ruang lingkup ( iterasi

terakhir ) dengan jarak terkecil. Berikut listing store prosedurnya :

if z>1 then select kode_titik into kode_asalku from

titik_terpilih where iterasi=in_iterasi; end if; call pilih_jaral_terpendek (in_iterasiku, @jarak,

@titik); select @jarak into in_jarak; set jarak_sementara=in_jarak; select @titik into in_titik; set titik_terpilih=in_titik; insert into titik_terpilih values (in_iterasiku,

in_titik,in_jarak); set waktu_akhir_iterasi=curtime();

Page 64: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

48

set waktu_iterasi = timediff (waktu_akhir_iterasi, waktu_awal_iterasi);

insert into detail_waktu_iterasi values (kode_asalku, in_titik,waktu_awal_iterasi,waktu_akhir_iterasi);

set waktu_awal_iterasi=curtime(); if in_iterasiku=1 then set total_waktu_iterasi=waktu_iterasi; else set total_waktu_iterasi1=waktu_iterasi; set total_waktu_iterasi = addtime

(total_waktu_iterasi, total_waktu_iterasi1); end if; insert into waktu_iterasi values (in_iterasiku,

kode_asalku,in_titik,waktu_iterasi); set in_iterasi=in_iterasiku; set in_iterasiku=in_iterasiku+1; update titik set status1 = 0 where kode_titik =

titik_terpilih;

b2. Ruang lingkup titik – titik yang harus di cek akan dikurangi dengan titik

terpilih hasil dari langkah c1. Selanjutnya akan dilakukan lagi pengecekan

jarak dari titik terpilih hasil dari langkah c1 dengan semua titik yang masih

termasuk dalam ruang lingkup. Setelah di dapatkan data jarak, maka

semua data pada iterasi ini disimpan pada tabel bantuan yaitu tabel

iterasi_jarak. Berikut listing program pengecekan jarak tersebut :

declare cur1 cursor for select count(*) from titik; declare cur2 cursor for select kode_titik from titik;

open cur1; open cur2; fetch cur1 into jumlah; set x=1; set jumlah=jumlah+1; while x < jumlah do fetch cur2 into in_kode_titik; select status1 into status_titik from titik

where nomor=x; if status_titik=1 then call ambil_jarak2 (in_iterasi,

kode_asalku,in_kode_titik,@jarak); select @jarak into in_jarak2; call ambil_jarak3 (titik_terpilih,

in_kode_titik,jarak_sementara,@jarak); select @jarak into in_jarak;

Page 65: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

49

if in_jarak2>in_jarak then insert into iterasi_jarak values

(in_iterasiku, x,titik_terpilih, in_kode_titik,in_jarak);

else insert into iterasi_jarak values

(in_iterasiku,x,titik_terpilih, in_kode_titik,in_jarak2);

end if; set x =x+1; else insert into iterasi_jarak values

(in_iterasiku,x,titik_terpilih, in_kode_titik,999);

set x =x+1; end if; end while; CLOSE cur1; CLOSE cur2;

Langkah c1 dan c2 akan terus dilakukan selama titik tujuan tidak sama dengan

titik terpilih.

c. Jika iterasi telah dihentikan maka akan di telesuri jalur terpendek dari pintu

masuk sampai dengan ke ruangan yang ingin dikunjungi oleh pengguna

program bantu ini. Dalam penelusuran jalur terpendek ini digunakan listing

program sebagai berikut :

select count(*) into jumlah_jalur from titik_terpilih; select jarak into jarak_akhir from titik_terpilih where

iterasi=jumlah_jalur; select kode_titik into jalur_tujuan from titik_terpilih

where iterasi=jumlah_jalur; set kode_awal_jalur=jalur_tujuan; insert into sementara values(a,jalur_tujuan); set z=1; while jumlah_jalur>1 do set iterasi_sebelum=jumlah_jalur-1; if a=1 then set in_iterasi_sebelum=jumlah_jalur-2; select kode_titik into jalur_asal from

titik_terpilih where iterasi=in_iterasi_sebelum; else set in_iterasi_sebelum=jumlah_jalur-2; select kode_titik into jalur_asal from

titik_terpilih where iterasi=in_iterasi_sebelum; end if;

Page 66: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

50

select jarak into jarak_jalur from iterasi_jarak where iterasi=iterasi_sebelum and kode_ruangan_asal = jalur_asal and kode_ruangan_tujuan=jalur_tujuan;

set jumlah_jalur=jumlah_jalur-1; if jarak_jalur <> jarak_akhir then set waktu_akhir_jalur=curtime(); set waktu_jalur =timediff (waktu_akhir_jalur,

waktu_awal_jalur); set waktu_awal_jalur=curtime(); set a=a+1; select iterasi into iterasi_titik from

titik_terpilih where kode_titik=jalur_asal; set iterasi_titik=iterasi_titik+1; select kode_titik into jalur_tujuan_sementara

from titik_terpilih where iterasi=iterasi_titik; set kode_akhir_jalur=jalur_tujuan_sementara; insert into sementara values

(a,jalur_tujuan_sementara); select jarak into jarak_jalur_sementara from

titik_terpilih where kode_titik = jalur_tujuan_sementara;

set jarak_akhir=jarak_jalur_sementara; set jalur_tujuan=jalur_tujuan_sementara; if kode_akhir_jalur <> kode_tujuan then

insert into waktu_penentuan_jalur values (k,kode_awal_jalur,kode_akhir_jalur,waktu_jalur);

insert into waktu_iterasi_titik values(kode_awal_jalur,kode_akhir_jalur,waktu_awal_jalur,waktu_akhir_jalur);

end if; if k=1 then set total_jalur=waktu_jalur; else set total_jalur1=waktu_jalur; set total_jalur = addtime (total_jalur,

total_jalur1); end if; set k=k+1; set kode_awal_jalur=kode_akhir_jalur; end if; end while;

4.1.2 Implementasi Pembuatan Output

Pada program bantu ini terdapat 2 macam output yang di hasilkan yaitu

output yang berupa informasi mengenai jarak terpendek ( dalam satuan meter )

dan jalur terpendek ( kode ruangan dan nama ruangan ) dari pintu masuk sampai

Page 67: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

51

ke ruangan yang ingin di kunjungi oleh pengguna program bantu ini, yang di

tampilkan dalam bentuk kalimat dan output visualisasi yang berupa gambar denah

RS. Bethesda yang disertai dengan jalur terpendek dari pintu masuk sampai ke

ruangan yang ingin di kunjungi oleh pengguna program bantu ini, yang

merupakan hasil dari implementasi algoritma dijkstra.

4.1.2.1 Output Berupa Kode Ruangan dan Nama Ruangan Jalur Terpendek

Untuk menampilkan kode ruangan dan nama ruangan dari jalur terpendek

yang telah di hasilkan dari implementasi algoritma dijkstra maka digunakan

function penentuan jalur() untuk memecah array jalur() yang penampung jalur

terpendek hasil dari implementasi algoritma dijkstra. Berikut listing program

function penentuan jalur():

Public Function penentu_jalur() c = 1 e = 1 Set rs = New ADODB.Recordset rs.Open " select count(*) as jumlahku from sementara", conn If Not rs.EOF Then jumlah = rs("jumlahku") b = jumlah End If Set rs = Nothing While jumlah > 0 If jumlah = b Then Set rs = New ADODB.Recordset rs.Open " select * from sementara where nomor='" &

jumlah & "' ", conn If Not rs.EOF Then jalurterpilih = rs("kode_titik") jalur_awal = jalurterpilih End If Set rs = Nothing Set rs = New ADODB.Recordset rs.Open " select * from ruangan where kode_ruangan='"

& jalurterpilih & "'", conn If Not rs.EOF Then ruang = rs("nama_ruangan") jalurterpendek = c & ". " & jalurterpilih & " ( "

& ruang & " )" jumlah = jumlah - 1

Page 68: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

52

End If Set rs = Nothing Else Set rs = New ADODB.Recordset rs.Open " select * from sementara where nomor='" &

jumlah & "'", conn If Not rs.EOF Then jalurterpilih = rs("kode_titik") jalur_akhir = jalurterpilih End If Set rs = Nothing Set rs = New ADODB.Recordset

rs.Open " select * from ruangan where kode_ruangan='" & jalurterpilih & "'", conn

If Not rs.EOF Then ruang = rs("nama_ruangan") 'jalur_terpilih1(c) = jalurterpilih jalurterpendek = jalurterpendek & vbCrLf & c & ".

" & jalurterpilih & " ( " & ruang & " )" jumlah = jumlah - 1 'd = c - 1 End If Set rs3 = Nothing End If If c >= 2 Then If c = 2 Then jumlah1 = jumlah + 3 Else jumlah1 = jumlah + 2 End If Set rs = New ADODB.Recordset

rs.Open " select * from sementara where nomor='" & jumlah1 & "'", conn

If Not rs.EOF Then jalurterpilih = rs("kode_titik") jalur_awal = jalurterpilih End If Set rs = Nothing conn.Execute "call spinjalur('" & e & "','" &

jalur_awal & "', '" & jalur_akhir & "') " e = e + 1 End If c = c + 1 Wend hasil_akhir = "Jalur yang terpendek yang bisa dilewati adalah

" & vbCrLf & jalurterpendek End Function

Page 69: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

53

Keterangan :

a) Untuk memecah data titik terpilih pada tabel bantu sementara maka digunakan

perulangan selama semua titik terpilih belum selesai di cek. Dalam

perulangan ini, pada iterasi awal dibuat query untuk mengambil data dari tabel

ruangan dengan kode_ruangannya adalah titik terpilih pada jalur terpendek

yang sedang di cek dalam perulangan ini. Dan variabel jalur terpendek (

penampung hasil yang akan ditampilkan pada output ) akan di isi dengan

jumlah titik yang telah di cek di ikuti kode ruangan dan nama ruangan dari

titik yang sedang di cek dalam perulangan ini.

b) Kemudian dilanjutkan ke perulangan berikutnya untuk mengecek titik

berikutnya, dimana pada perulangan ini dibuat juga query yang sama seperti

pada query sebelumnya. Pada perulangan ini variabel jalur terpendek (

penampung hasil yang akan ditampilkan pada output ) akan di isi dengan isi

dari variabel jalur terpendek hasil dari perulangan sebelumnya ditambah

dengan jumlah titik yang telah di cek di ikuti kode ruangan dan nama ruangan

dari titik yang sedang di cek dalam perulangan ini.

c) Dilakukan pemanggilan store prosedur spinjalur() untuk memasukan data jalur

dari titik yang di cek pada perulangan sebelumnya ke titik yang sedang di cek

pada perulangan saat ini ke dalam tabel bantu jalur yang akan digunakan

untuk membuat output berupa gambar denah RS. Bethesda yang di sertai

dengan jalur terpendeknya.

d) Perulangan akan dilanjutkan dengan melakukan langkah b dan d. Perulangan

akan dihentikan jika titik yang di cek adalah titik awal.

Page 70: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

54

Hasil dari langkah diatas adalah urutan data jalur terpendek ( kode ruangan dan

nama ruangan) dari titik awal sampai dengan titik tujuan.

4.1.2.2 Output Berupa Denah RS. Bethesda Disertai Jalur Terpendek

Untuk mengimplementasikan visualisasi jalur terpendek hasil dari

implementasi algoritma dijkstra ke dalam bentuk gambar, dibutuhkan kontrol line

yang akan menunjukan jalur dari pintu masuk sampai ke ruangan yang ingin

dikunjungi oleh pengguna program bantu ini. untuk mengerakkan kontrol line

tersebut maka dibutukan kontrol timer. Berikut adalah langkah-langkah

pengimplementasian jalur terpendek ke bentuk gambar jalur terpendek pada denah

RS. Bethesda :

• Memecah tabel jalur yang menyimpan urutan jalur dari titik awal ke titik

tujuan. Data pada tabel jalur diambil per record untuk diambil data titik asal

dan titik tujuan jalur pertama, kontrol line titik asal dan titik koordinat ke 2

titik tersebut.

• Setelah di peroleh data tersebut maka kontrol line ini digerakan dari koordinat

titik asal sampai ke titik tujuan. Berikut listing program untuk menggerakkan

kontrol line tersebut :

If nama_line = "L69" Then Line69.BorderColor = vbRed Line69.BorderStyle = 1 Line69.BorderWidth = 3 If y1 < y2 Then

If Line69.y2 <> y2 Then If Line69.y2 < y2 Then Line69.y2 = Line69.y2 + 5 Else Line69.y2 = Line69.y2 - 5 End If End If

Page 71: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

55

If Line69.y2 = y2 Then Line69.y2 = Line69.y2 If Line69.x2 > x2 Then Line69.x2 = Line69.x2 - 5 Else Line69.x2 = Line69.x2 + 5 End If If Line69.x2 = x2 Then Line69.x2 = Line69.x2 c = c + 1 End If End If Else If Line69.x2 <> x2 Then If Line69.x2 < x2 Then Line69.x2 = Line69.x2 + 5 Else Line69.x2 = Line69.x2 - 5 End If End If If Line69.x2 = x2 Then Line69.x2 = Line69.x2 If Line69.y2 > y2 Then Line69.y2 = Line69.y2 - 5 Else Line69.y2 = Line69.y2 + 5 End If If Line69.y2 = y2 Then Line69.y2 = Line69.y2 c = c + 1 End If End If End If

Keterangan :

Kontrol line titik awal akan di beri warna merah dengan ketebelan 3 agar

lebih mudah untuk dilihat. Kemudian akan dibandingkan apakah koordinat y2

titik asal lebih kecil dari koordinat y1 titik tujuan. Jika benar maka selama

koordinat kontrol line ini belum sampai ke koordinat y1 titik tujuan maka akan

dilakukan pengecekan apakah koordinat y2 kontrol line ini lebih besar dari

dari y1 koordinat titik tujuan maka koordinat y2 kontrol line ini akan ditambah

Page 72: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

56

5, akan tetapi jika tidak lebih besar maka koordinat y2 kontrol line ini akan di

kurangi 5.

Kemudian jika koordinat y1 titik tujuan telah tercapai maka akan

dilakukan pengecekan untuk menggerakkan koordianat x2 kontrol line ini.

Sama seperti saat menggerakan koordinat y2 kontrol line untuk sampai ke

koordinat x1 titik tujuan maka jika koordinat x1 titik tujuan lebih besar dari

koordinat x2 kontrol line ini, koordinat x2 kontrol line ini akan ditambah 5

akan tetapi jika tidak lebih besar dari dari x1 koordinat titik tujuan maka

koordinat x2 kontrol line ini akan ditambah 5.

Jika koordinat x2 kontrol line ini telah mencapai koordinat x1 titik tujuan

maka perulangan untuk memecah tabel jalur yang menyimpan urutan jalur

dari titik awal ke titik tujuan dilanjutkan lagi sampai sudah tidak ditemukan

record lagi yang harus di cek.

4.2 Hasil Implementasi

Hasil dari implementasi pada sub bab 4.1 tersebut dapat di gambarkan

melalui capture – capture langkah-langkah penggunaan program bantu ini.

4.2.1 Menu Utama

Pada saat program bantu ini dipertama kali di eksekusi maka akan nampak

menu utama seperti pada gambar 4.1.

Page 73: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

57

Gambar 4.1 Tampilan Menu Utama

Pada menu utama ini pengguna program bantu ini akan di beri informasi

tentang bagaimana langkah-langkah penggunaan program bantu ini sehinggga

dapat membantu menghindarkan pengguna program ini untuk melakukan

kesalahan saat menggunakan program bantu ini. Pada form ini juga ditawarkan

menu kategori ruangan yang di sediakan oleh program bantu ini. Jika pengguna

tidak mengetahui kategori ruangan mana yang sesuai dengan ruangan yang ingin

dikunjungi maka pengguna dapat memilih menu informasi untuk mendapatkan

kategori ruangan yang tepat untuk ruangan yang ingin dikunjunginya.

4.2.2 Menu Input Titik Awal dan Titik Tujuan

Saat pengguna program bantu ini memilih salah satu kategori ruangan

yang ditawarkan pada menu utama, maka gambar 4.2 dibawah ini merupakan

salah satu contoh tampilan menu kategori ruangan, yaitu kategori fasilitas umum.

Page 74: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

58

Gambar 4.2 Tampilan Menu Untuk Kategori Fasilitas Umum

Pada form ini pengguna program bantu harus menentukan nama ruangan

yang ingin dikunjungi dengan memilih satu nama ruangan dari semua nama

ruangan yang telah di sediakan pada kontrol combobox. Selanjutnya pengguna

program bantu harus menentukan dari pintu masuk mana pengguna program bantu

tersebut masuk ke RS. Bethesda. Jika pengguna telah menentukan nama ruangan

yang ingin di kunjungi dan pintu masuk mana pengguna program bantu tersebut

masuk ke RS. Bethesda maka pilih tombol ”Cari” untuk diproses untuk

menghasilkan jarak terpendek dan jalur terpendek dari pintu masuk sampai

dengan ke ruangan yang ingin dikunjungi.

4.2.3 Tampilan Output

Ketika pengguna program bantu ini telah menentukan ruangan mana yang

ingin dikunjungi dan dari pintu masuk mana pengunjung itu masuk maka

Page 75: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

59

pengguna program bantu ini tinggal memilih button cari sehingga akan muncul

output berupa jalur terpendek seperti yang ditujnjukan pada gambar 4.3 di bawah

ini.

Gambar 4.3 Tampilan Output Yang Berupa Gambar Denah RS. Bethesda

Dilengkapi dengan Jalur Terpendek

Pada form output ini akan nampak jalur terpendek dari pintu masuk yang

jika dilihat pada program yang sedang di eksekusi maka pintu masuk akan terlihat

kedip – kedip. Output gambar jalur terpendek pada denah RS.Bethesda ini akan

dibantu dengan output seperti pada gambar 4.4 ini untuk mengetahui kode

ruangan dan nama ruangan mana saja yang harus dilewati sesuai dengan gambar

output 4.3 diatas.

Page 76: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

60

Gambar 4.4 Tampilan Output Jalur Terpendek Yang Berupa Kode Ruangan

dan Nama Ruangan

Jika output gambar jalur terpendek di tutup maka akan muncul form

seperti pada gambar 4.5. Hal ini bertujuan untuk membantu pengunjung jika

pengunjung lupa urutan jalur terpendek mulai dari tabel pintu masuk sampai ke

ruangan yang ingin dikunjungi. Pada form ini juga akan nampak jarak terpendek

dan waktu iterasi algoritma dijkstra.

Page 77: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

61

Gambar 4.5 Tampilan Menu Ketika Output pada Gambar 4.3 Ditutup

4.3 Analisa hasil

4.3.1 Pengaruh Pembagian Ruang Lingkup

Pada pengimplementasian pencarian jalur terpendek ini, denah RS. Bethesda di

ubah menjadi suatu graf berarah . Setelah diubah menjadi graf maka dapat

dihitung jumlah titik yang ada pada graf tersebut yaitu 277 titik. Saat dilakukan

perhitungan algoritma djikstra dengan jumlah titik sebanyak itu maka proses

pencarian memakan waktu yang sangat lama sehingga diputuskan untuk membagi

graf tersebut menjadi 9 ruang lingkup seperti yang telah dijelaskan pada sub bab

3.8.2. Untuk mengetahui pengaruh sebelum graf RS. Bethesda dibagi menjadi 9

ruang lingkup dan sesudah dibagi 9 ruang lingkup, maka di buat percobaan seperti

dapat di lihat pada tabel 4.1.

Page 78: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

62

No Titik

Awal

Titik

Tujuan

Waktu Iterasi

Dijkstra sebelum

dibagi menjadi 9

ruang lingkup

Waktu Iterasi

Dijkstra setelah

dibagi menjadi 9

ruang lingkup

Prosentase

waktu

pembagian

ruang lingkup

1 A1 A20 00:05:23 00:00:38 11,76 %

2 A1 B2 00:20:31 00:01:17 6,26 %

3 A1 C21 00:28:10 00:07:49 27.75 %

4 A1 D14 00:22:41 00:07:18 32,18 %

5 A1 E7 00:13:36 00:03:05 22,67 %

6 A1 F7 00:08:00 00:01:08 14,17 %

7 A1 G2 00:23:23 00:03:32 15,11 %

8 A1 H5 00:45:42 00:11:15 24,62 %

9 A1 I15 00:38:05 00:12:12 32,04 %

10 B1 A10 00:52:58 00:02:49 5,31 %

11 B1 B18 00:04:08 00:00:27 10,89 %

12 B1 C24 00:46:28 00:02:40 5,74 %

13 B1 D3 00:35:41 00:01:42 4,76 %

14 B1 E4 00:11:37 00:00:47 6,74 %

15 B1 F3 00:08:32 00:00:53 10,35 %

16 B1 G2 00:00:55 00:00:08 14,55 %

17 B1 H3 00:14:46 00:04:12 28,44 %

18 B1 I12 00:31:50 00:08:56 28,06 %

19 C1 A16 00:54:06 00:08:08 15.03 %

20 C1 B4 00:31:29 00:02:12 6.99 %

21 C1 C35 00:23:43 00:00:43 2,28 %

22 C1 D6 00:41:18 00:02:20 5,65 %

23 C1 E7 00:32:50 00:00:58 2,94 %

24 C1 F11 00:51:15 00:04:24 8,59 %

25 C1 G1 00:31:29 00:00:47 2,49 %

26 C1 H4 00:05:15 00:01:20 25,40 %

Page 79: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

63

27 C1 I23 00:04:10 00:02:03 49,20 %

Rata-Rata penghematan waktu dengan pembagian ruang

lingkup

15,55 %

Tabel 4.1 Tabel Percobaan Pengaruh Pembagian Ruang Lingkup

Dari percobaan di atas dapat di dilihat bahwa perbedaan waktu iterasi

dijkstra sebelum dan sesudah dibagi menjadi 9 ruang lingkup sangat besar yaitu,

15,55%. Hal tersebut disebabkan karena pada pembagian ruang lingkup

RS.Bethesda telah ditentukan titik-titik mana saja yang harus di cek jaraknya pada

perhitungan iterasi algoritma dijkstra, sehingga dapat memperpendek waktu yang

di gunakan dalam iterasi algoritma djikstra.

4.3.2 Waktu Iterasi Algoritma Dijkstra

Untuk mengetahui faktor yang mempengaruhi waktu yang di perlukan

dalam pengimplementasian iterasi dijkstra, maka dilakukan percobaan yang dapat

di lihat pada tabel 4.2, dimana pada percobaan ini faktor yang diperhatikan ada 3

yaitu jumlah ruang lingkup, jumlah titik dan jarak titik asal ke titik tujuan.

No Titik

Asal

Titik

Tujuan

Jumlah Ruang

Lingkup

Jumlah Titik Waktu Jarak

1 A1 A12 1 31 00:00:27 106.6 m

2 C1 C13 1 38 00:00:47 53.1 m

3 B1 G2 2 33 00:00:08 25.6 m

4 A1 A5 1 31 00:00:06 34.9 m

5 B1 B5 1 31 00:00:04 14.8 m

6 B1 B26 1 31 00:00:26 73.4 m

Tabel 4.2 Tabel Percobaan Faktor Yang Mempengaruhi Waktu Iterasi Algoritma Dijkstra

Page 80: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

64

Penjelasan Percobaan :

• Pada percobaan 1 dan 2 dapat dilihat bahwa jika jumlah ruang lingkup

sama akan tetapi jumlah titik berbeda maka dapat terlihat bahwa selisih

waktu yang diperlukan dalam iterasi dijkstra cukup besar yaitu 20 detik

pada contoh kasus ini.

• Pada percobaan 3 dan 4 dapat dilihat bahwa jika jumlah ruang lingkup

berbeda akan tetapi jumlah titik kurang lebih sama maka dapat terlihat

bahwa selisih waktu yang diperlukan dalam iterasi dijkstra sangat kecil,

yaitu 2 detik pada contoh kasus ini.

• Pada percobaan 5 dan 6 dapat dilihat bahwa jika titik asal dan titik tujuan

berada pada ruang lingkup yang sama akan tetapi jarak dari titik asal ke

titik tujuan berbeda cukup jauh, maka dapat terlihat bahwa selisih waktu

yang diperlukan dalam iterasi dijkstra cukup besar, yaitu 24 detik pada

contoh kasus ini.

Dari percobaan diatas, dapat disimpulkan bahwa, faktor yang mempengaruhi

waktu yang di perlukan dalam pengimplementasian iterasi algoritma dijkstra

adalah :

1. jumlah titik

2. jarak titik asal ke titik tujuan.

Jadi dapat dilihat bahwa faktor jumlah ruang lingkup tidak mempengaruhi waktu

pengimplementasian iterasi algoritma dijkstra.

Page 81: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

BAB V

KESIMPULAN DAN SARAN

5.1 KESIMPULAN

Dari hasil penelitian yang telah dilakukan di RS. Bethesda Yogyakarta

untuk menemukan jalur terpendek dengan mengunakan algoritma Dijkstra, maka

dapat di ambil kesimpulan sebagai berikut ini :

1. Pada program bantu ini, pembagian graf menjadi beberapa ruang lingkup

sangat penting, untuk menentukan titik mana saja yang harus di cek

jaraknya dalam iterasi algoritma djikstra.

2. Penghematan waktu iterasi dijkstra sesudah dibagi menjadi 9 ruang

lingkup adalah 15,55 %.

3. Ada 2 faktor penting yang mempengaruhi waktu pengimplementasian

iterasi algoritma dijkstra pada program bantu ini, yaitu : jumlah titik dan

jarak titik asal ke titik tujuan.

4. Semakin banyak jumlah titik, maka waktu pengimplementasian iterasi

algoritma dijkstra semakin banyak.

5. Pada program bantu ini jumlah ruang lingkup tidak mempengaruhi waktu

pengimplementasian algoritma dijkstra.

5.2 SARAN

Saran yang dapat diberikan agar program bantu ini dapat di buat lebih baik

lagi adalah sebagai berikut :

65

Page 82: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

66

1. Sebaiknya digunakan bahasa pemrograman lain untuk membuat tampilan

lebih user friendly.

2. Tampilan Output sebaiknya dibuat lebih menarik agar pengguna program

bantu merasa lebih nyaman saat menggunakan program bantu ini.

3. Sebaiknya di tambahkan fasilitas untuk mencari ruangan dengan titik awal

bukan pintu masuk, akan tetapi bergantung atas keinginan pengguna

program bantu ini.

Page 83: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

DAFTAR PUSTAKA

-, Pengembangan Sistem Pakar Menggunakan Visul Basic, Andi Offset, 2003

Agnes Maria Polina, Jong Jek Siang, Kiat Jitu Menyusun Skripsi Jurusan

Informatika/Komputer, Andi Offset, 2005

Agus, M., Alam, J., MySQL Server dan Aplikasinya dalam Visual Basic 6 dan Delphi

versi 5, PT Elex Media Komputindo, 2005

Bayu Adhitya Pradhana, Makalah Studi Dan Implementasi Persoalan Lintasan

Terpendek Suatu Graf Dengan Algoritma Dijkstra Dan Algoritma Bellman-

Ford

J.Bismoko., A.Supraktiknya., Pedoman Penulisan Skripsi, Universitas Sanata

Dharma, 2004

Jong Jek Siang, Matematika Diskret Dan Aplikasinya Pada Ilmu Komputer, Andi

Offset, 2002

Jeffery, Whitten, L., Lonnie, Bentley, D., dan Kevin, C.Ditman., Metode Desain dan

Analisis Sistem, Andi Offset, 2004

LPKMB MADCOMS, Panduan Pemrograman dan Referensi Kamus Visual Basic

6.0, Andi Offset, 2006

Page 84: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

LAMPIRAN A

TABEL RUANGAN

Page 85: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

1

Lampiran A : Tabel Ruangan Keterangan Kategori Ruangan :

A = ATM

AD = Administrasi

I = IGD

K = Klinik

KA = Kas Bank

L = Laboratorium

O = Operasional

PB = Ruangan Pasien Rawat Inap

PV = Paviliun Pasien Rawat Inap

S = Staff Bethesda

U = Fasilitas Umum

X = Lain-lain

Kode Ruangan

Nama Ruangan

Kategori Ruangan

X1

Y1

Status

Line

A1 Pintu Masuk Samping Paviliun Srikandi 6630 6165 0 L17 A2 Cafe U 7500 6165 0 L18 A3 Paviliun Srikandi PV 7500 5670 0 L19 A4 Perempatan Pav.Srikandi 7410 7710 0 L20 A5 Paviliun Shinta PV 6900 7635 0 L21 A6 Pertigaan Pav.Bakung 7410 10350 0 L22 A7 Pertigaan Pav.Anggrek 8040 7710 0 L23 A8 Paviliun Anggrek PV 8595 7605 0 L24 A9 Pertigaan Pav.Gardena 10140 7710 0 L25 A10 Paviliun Gardena PV 10140 7395 0 L26 A11 Pertigaan Pav.Flamboyan 11715 7680 0 L27 A12 Paviliun Flamboyan PV 14265 7800 0 L28 A13 Pojok Ruang Bayi 1 11715 8385 0 L29 A14 Pojok Ruang Bayi 2 14160 8385 0 L30 A15 Pintu Masuk Pav.Hibiscus1 11625 9000 0 L31 A16 Paviliun Hibiscus PV 9960 9000 0 L32 A17 Pintu Masuk Pav.Hibiscus2 8115 9000 0 L33 A18 Paviliun Dahlia PV 8115 10320 0 L34 A19 Pertigaan Selasa Utama Pav.Hibiscus 11715 10185 0 L35 A20 Ruang VI PB 11625 11400 0 L36 A21 Paviliun Bakung PV 7320 11415 0 L37 A22 Pertigaan Pav.Bakung 7455 12120 0 L40

Page 86: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

2

A23 Pertigaan Pav.Shinta 6900 12120 0 L39 A24 Pertigaan Pav.Canna 1 8040 12120 0 L38 A25 Pintu Masuk Pav.Canna 1 8310 12795 0 L41 A26 Pertigaan Pav.Canna 2 10980 12120 0 L42 A27 Pojok Ruang VI 11700 12120 0 L43 A28 Pintu Masuk Pav.Canna 2 10905 12795 0 L44 A29 Paviliun Canna PV 9720 12795 0 L45 A30 Pertigaan Pav.Dahlia1 11715 10800 0 L47 A31 Pertigaan Pav.Dahlia2 8040 10800 0 L46 B1 Pintu Masuk Pengunjung 21225 4350 0 L48 B2

Pos Satpam Pintu Masuk Pengunjung Rawat Inap

U

21015

4605

0

L49

B3 Tempat Informasi Pusat U 21420 4815 0 L50 B4 Ruang PDE S 21735 5190 0 L51 B5 Tempat Map Rs.Bethesda U 21180 5040 0 L52 B6 Farmasi Pusat Pasien Rawat Inap F 20505 5460 0 L53 B7 Ruang Petrollena O 21135 5355 0 L54 B8 Ruang Operasional O 20400 6240 0 L55 B9 Kas BRI Ruang Lingkup B KA 20400 6600 0 L56 B10 Pertigaan Lab Mikrobiologi 1 21645 6870 0 L57 B11 Toilet Umum Samping Lab Mikrobiologi U 22440 6795 0 L58 B12 Pertigaan Lab Mikrobiologi 2 22680 6870 0 L59 B13 Laboratorium Mikrobiologi L 23280 6720 0 L60 B14 Pertigaan Samping Kas BRI 20595 6840 0 L61 B15 Pertigaan Depan Pav.Edelweys 19575 6840 0 L62 B16 Ruang Fisioteraphi Pasien Rawat Inap X 18825 4635 0 L64 B17 Kantor Elektromedik O 18345 4860 0 L63 B18 Paviliun Edelweys PV 17460 6840 0 L65 B19 Depan Kantor Elektromedik 18345 4635 0 L66 B20 Unit Perawatan Ginjal\Ruang Cuci Darah X 17895 4860 0 L67 B21 Loket Askes & Kantor Piutang AD 21540 7140 0 L68 B22 Pojok Petrollena 21630 7800 0 L69 B23 Pertigaan Petrollena 21150 7800 0 L70 B24 Laboratorium Radiologi L 20595 7890 0 L71 B25 Pertigaan Lab Klinik 1 22680 8220 0 L72 B26 Laboratorium Klinik L 22110 8310 0 L73 B27 Pertigaan Lab Klinik 21150 8220 0 L74 B28 Pertigaan Selasar Utama 21150 10125 0 L75 B29 Pertigaan Selasar Utama Ruang Pertemuan I 19605 10125 0 L76 B30 Pertigaan Ruang Pertemuan I 19605 8940 0 L77 B31 Ruang Pertemuan I O 19245 8940 0 L78 C1 Pintu Masuk Instansi Rawat Jalan 28395 4395 0 L79 C2 Pintu Masuk Instansi Gawat Darurat I 25365 4545 0 L80 C3 Toko U 28920 4620 0 L81 C4 Fotocopy U 27990 4665 0 L82

Page 87: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

3

C5 Kas Lippo Ruang Lingkup C KA 28980 4905 0 L83 C6 Kas BRI Ruang Lingkup C KA 28980 5235 0 L84 C7 Medical Record Gedung IRJ Lantai 1 F 28410 5655 0 L85 C8 Tangga 1 Gedung IRJ Lantai 1 29190 5835 0 L86

C9 Laboratorium Patologi Klinik Gedung IRJ Lantai 1

L

29910

5595

0

L87

C10 Perempatan VIDE 1 B 30780 5730 0 L88 C11 Klinik Kebidanan K 30945 5070 0 L89 C12 Klinik Fisioterapi K 31455 5070 0 L90 C13 Toilet Umum 1 Gedung IRJ Lantai 1 U 31710 5490 0 L91 C14 Klinik Saraf K 31515 6150 0 L92 C15 Perempatan VIDC 1 B 27720 5820 0 L93 C16 Lift Gedung IRJ Lantai 1 Li 27390 5820 0 L94 C17 Farmasi Rawat Jalan F 26775 5385 0 L95 C18 Kas BPD DIY KA 26490 5640 0 L96 C19 Tangga 2 Gedung IRJ Lantai 1 26085 5640 0 L97 C20 Tempat Pendaftaran Pasien IGD I 25815 5040 0 L98 C21 Pertigaan VIDC 1 A 25935 5820 0 L99 C22 Pertigaan VIDC 1 C 25935 7125 0 L100C23 Ruang IRD I 25815 7650 0 L101C24 Ruang Kepala IRD S 26070 7680 0 L102C25 Ruang Dokter Jaga Gedung IRJ Lantai 1 S 26625 7230 0 L103C26 Unit DPK S 27135 7230 0 L104C27 Tangga 3 Gedung IRJ Lantai 1 27525 7230 0 L105C28 Perempatan VIDC 1 D 27720 7140 0 L106C29 Ruang Sekretariat PPKT RSB S 28035 6990 0 L107C30 Ruang Sector Fotocopy Gedung IRJ Lantai 1 U 28440 6990 0 L108C31 Ruang OPS S 29760 7215 0 L109C32 Klinik Bedah K 28110 7920 0 L110C33 Perempatan VIDE 1 D 30780 7140 0 L111C34 Klinik Penyakit Dalam K 32010 7140 0 L112C35 Ruang Pemulihan X 31290 7740 0 L113

C36 Toilet Umum Samping Klinik Penyakit Dalam Gedung I

U

27630

7800

0

L114

C37 Perempatan VIDE 1 A 28995 5835 0 L115C38 Perempatan VIDE 1 C 28995 7140 0 L116D1 Pojok Dapur Kecil 34645 10065 0 L117D2 Pertigaan Selasar Utama Ruang H 25515 10065 0 L118D3 Instansi Gizi O 24360 11955 0 L119D4 Pertigaan IMC 27000 10065 0 L120D5 Ruang A / IMC PB 27000 10800 0 L121D6 Ruang Doa U 28035 9720 0 L122D7 Pertigaan Selasar Utama Ruang Doa 28035 10065 0 L123D8 Pertigaan Selasar Utama Ruang B 28515 10065 0 L124D9 Ruang N PB 29325 10065 0 L125

Page 88: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

4

D10 Ruang B PB 28620 11475 0 L126D11 Unit Jahit O 24360 13020 0 L127D12 Perempatan Ruang H 25515 12825 0 L128D13 Liner Bersih O 24360 15345 0 L129D14 Ruang H PB 26310 12720 0 L130D15 Pertigaan Ruang Penyuluhan 25515 14730 0 L131D16 Ruang Tunggu Daerah D U 25200 14730 0 L132D17 Pertigaan Ruang J 25515 16005 0 L133D18 Pertigaan Liner Bersih 24480 16005 0 L134D19 Ruang C PB 28425 14160 0 L135D20 Ruang D PB 28635 14160 0 L136D21 Ruang F PB 28635 16950 0 L138D22 Ruang E PB 28440 16950 0 L137D23 Pertigaan Ruang G 28500 17790 0 L139D24 Pojok Ruang G 28500 18345 0 L140D25 Pertigaan Lab Patologi & Anatomi 27225 17790 0 L142D26 Ruang G PB 29760 18435 0 L141D27 Laboratorium Patologi & Anatomi L 26730 18615 0 L144D28 Pintu Masuk Parkir Ambulans 24480 17790 0 L145D29 Liner Kotor O 24360 17340 0 L148D30 Ruang PSP O 22560 18525 0 L147D31 Ruang Jenazah O 25485 19590 0 L149D32 Ruang J PB 26340 16005 0 L150D33 Depan Lab. Patologi dan Anatomi 27225 18615 0 L143D34 Parkiran Mobil Ambulans O 24480 18525 0 L146

E1 Pertigaan Selasar Utama Ruang Pengawas Perawat

22650

10125

0

L151

E2 Ruang Piket Pengawas Perawat 22650 8895 0 L152E3 Pertigaan PSPM 23640 10125 0 L153E4 PSPM O 23640 10680 0 L154E5 Pertigaan Selasar Utama IRJ 24045 8895 0 L155E6 Selasar Belakang IRJ 25920 8895 0 L156E7 Dapur Besar O 24045 10155 0 L157F1 Administrasi Pasien Rawat Inap AD 19335 10035 0 L158F2 IBS K 19335 10800 0 L159F3 Kas BRI KA 18855 10035 0 L160F4 Perempatan Galilea 15945 10170 0 L161F5 Ruang Galilea PB 16035 11460 0 L162F6 Ruang I PB 10065 9000 0 L163F7 Ruang III PB 15840 9000 0 L164F8 Ruang Bersalin X 15945 8265 0 L165F9 Pojok Pav.Edelweis 17460 8295 0 L166F10 Pertigaan Ruang VII 14235 10170 0 L167F11 Ruang VII PB 14235 9615 0 L168F12 Pertigaan Ruang IV 12495 10170 0 L169

Page 89: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

5

F13 Ruang IV PB 12495 10830 0 L170F14 Pertigaan Ruang Bayi 13020 10170 0 L171F15 Ruang Bayi PB 13020 9510 0 L172G1 ATM A 23595 4560 0 L167G2 Mini Market U 23400 4665 0 L168H1 Lift Gedung IRJ Lantai 2 Li 6720 3405 0 L1 H2 Perempatan VIDC B A Gedung IRJ Lantai 2 7485 3195 0 L2

H3 Satelit Farmasi Rawat Jalan Gedung IRJ Lantai 2

F

4920

2865

0

L3

H4 Kas BRI Gedung IRJ Lantai 2 KA 7320 2250 0 L4 H5 Klinik Laktasi K 7320 1290 0 L5 H6 Tangga 2 Gedung IRJ Lantai 2 4050 2865 0 L6 H7 Pertigaan VIDC 2 A Gedung IRJ Lantai 2 3600 3195 0 L7 H8 Klinik Paru K 2640 1905 0 L8

H9 Ruang Pertemuan & Perawatan Gedung IRJ Lantai 2

O

1575

2250

0

L9

H10 Toilet Umum 1 Gedung IRJ Lantai 2 U 1575 2640 0 L10 H11 Pojok Klinik Kulit 3600 4605 0 L11 H12 Klinik Kulit K 3165 4605 0 L12 H13 Klinik Gigi & Mulut K 1590 4605 0 L13 H14 Klinik Alergi K 1215 5895 0 L14 H15 Klinik THT K 1320 6360 0 L15 H16 Audio Metri 2010 6360 0 L16 H17 Klinik Mata K 3315 6360 0 L17 H18 Poliklinik Kartini K 4320 6360 0 L18 H19 Pertigaan VIDC 2 C Gedung IRJ Lantai 2 3600 6015 0 L19 H20 Tangga 3 Gedung IRJ Lantai 2 7080 6360 0 L20 H21 Pertigaan VIDC 2 D Gedung IRJ Lantai 2 7485 6015 0 L21 H22 Ruang Sekretariat\Wakil Direktur & Direktur S 8760 6360 0 L22 H23 Medical Record Gedung IRJ Lantai 2 F 8760 2250 0 L23 H24 Tangga 1 Gedung IRJ Lantai 2 10530 3405 0 L24 H25 Pertigaan VIDE 1 C Gedung IRJ Lantai 2 10170 6015 0 L25 H26 Ruang Dokter S 12480 6300 0 L26 H27 Ruang Akutansi & Keuangan AD 14490 6015 0 L44 H28 Toilet Umum 2 Gedung IRJ Lantai 2 U 14490 7470 0 L28 H29 Ruang Arsip Sekretariat Gedung IRJ Lantai 2 15720 7470 0 L29 H30 Loket Administrasi Gedung IRJ Lantai 2 AD 14490 4035 0 L30 H31 Perempatan VIDE 2 B Gedung IRJ Lantai 2 14205 3195 0 L31 H32 Klinik Akupuntur K 13980 1635 0 L32 H33 Klinik CB Anak Sehat K 15630 2265 0 L33 H34 Klinik Psikologi K 15120 1560 0 L34 H35 Toilet Umum 3 Gedung IRJ Lantai 2 U 16290 2640 0 L35 H36 Kantor IRJ S 16290 1005 0 L36 H37 Klinik Karyawan K 14640 1440 0 L37 H38 Klinik Psikiatri K 14040 1440 0 L38

Page 90: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

6

H39 Klinik Gizi K 12810 1635 0 L40 H40 Depan Klinik Gizi 12555 3195 0 L39 H41 Ruang Konsultasi 12270 2265 0 L41 H42 Pertigaan VIDE 1 A Gedung IRJ Lantai 2 10170 3195 0 L42 H43 Perempatan VIDE 2 D Gedung IRJ Lantai 2 14205 6015 0 L43 I1 Litf Gedung IRJ Lantai 3 Li 6945 3690 0 L1 I2 Ruang Tamu VIP U 6945 2655 0 L2 I3 Pojok VIDE 1 Gedung IRJ Lantai 3 7635 3690 0 L3 I4 Auditorium Bethesda O 9000 2655 0 L4 I5 Pojok VIDE 2 Gedung IRJ Lantai 3 7635 5940 0 L5 I6 Samping Ruang Tamu VIP 7695 2655 0 L6 I7 Tangga 3 Gedung IRJ Lantai 3 7185 6435 0 L7 I8 Bagian Kepegawaian S 5505 6435 0 L8 I9 Komite Dana Pensiun YAKKUM S 4800 6435 0 L9 I10 Pertigaan VIDC3 C Gedung IRJ Lantai 3 3945 6180 0 L34 I11 Ruang PYC S 3570 5280 0 L11 I12 Ruang Rapat Gedung IRJ Lantai 3 O 3570 4410 0 L12 I13 Ruang Senam & Fitness O 3810 3225 0 L13 I14 Tangga 2 Gedung IRJ Lantai 3 4770 3225 0 L14 I15 Penitipan Anak X 2730 3225 0 L15 I16 PSMRS S 5040 3225 0 L16 I17 PGI S 5940 3225 0 L17 I18 Panitia Rekam Medik S 2745 5940 0 L18 I19 Ruang PKPKY S 2130 6345 0 L19 I20 Ruang PKBRS S 2130 7050 0 L20 I21 Ruang BMKK S 2565 7530 0 L21 I22 Kantor IDI S 3165 6855 0 L22 I23 Pojok Auditorium 1 10230 2655 0 L23 I24 Pojok Ruang Komite Diklat 10230 3270 0 L24 I25 Ruang Komite Bidang Diklat S 11400 3225 0 L25 I26 Ruang Studio O 12480 3225 0 L26 I27 Tangga 1 Gedung IRJ Lantai 3 10440 3690 0 L27 I28 Ruang Komite Gerejani S 12675 3225 0 L28 I29 Pojok Auditorium 2 10230 6180 0 L29 I30 Ruang Perpustakaan O 11580 6435 0 L30 I31 Ruang Diklat/Training O 12690 6435 0 L31 I32 Pav.Jasmine PV 13590 6180 0 L32 I33 Pertigaan VIDC 2 A Gedung IRJ Lantai 3 3945 3540 0 L33

Page 91: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

LAMPIRAN B

TABEL JARAK

Page 92: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

1

Lampiran B : Tabel Jarak

Titik Asal Titik Tujuan JarakA1 A2 10 A2 A1 10 A2 A3 6.3 A2 A4 18.2 A3 A2 6.3 A4 A2 18.2 A4 A5 6.7 A4 A6 28.8 A4 A7 6.9 A5 A4 6.7 A5 A23 52.5 A6 A4 28.8 A6 A18 8.1 A6 A21 13.8 A7 A4 6.9 A7 A8 5.3 A7 A17 14.4 A8 A7 5.3 A8 A9 20.3 A9 A8 20.3 A9 A10 4 A9 A11 17.3 A10 A9 4 A11 A9 17.3 A11 A12 28.6 A11 A13 8.8 A12 A11 28.6 A12 A14 6.4 A13 A11 8.8 A13 A14 27.5 A13 A15 7.3 A14 A12 6.4 A14 A13 27.5 A15 A13 7.3 A15 A16 18.2 A15 A19 13.2 A17 A7 14.4 A17 A16 21.5 A17 A18 14.1 A18 A17 14.1 A18 A6 8.1 A18 A31 6.1

Page 93: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

2

A19 A15 13.2 A19 A30 6.6 A19 F12 9.8 A20 A27 7.8 A20 A30 7.6 A21 A6 13.8 A21 A22 7.1 A22 A21 7.1 A22 A23 6 A22 A24 7.3 A23 A5 52.5 A23 A22 6 A24 A22 7.3 A24 A25 7.9 A24 A26 32.8 A24 A31 15.3 A25 A24 7.9 A25 A29 13.2 A26 A24 32.8 A26 A27 8.8 A26 A28 7.2 A27 A20 7.8 A27 A26 8.8 A28 A26 7.2 A28 A29 15.7 A30 A19 6.6 A30 A20 7.6 A30 A31 41 A31 A18 6.1 A31 A24 15.3 A31 A30 41 B1 B2 3.3 B1 B16 26.7 B1 G2 25.6 B2 B1 3.3 B2 B3 5.6 B3 B2 5.6 B3 B5 5.9 B4 B5 7.7 B4 B10 19.4 B5 B3 5.9 B5 B4 7.7 B5 B6 9.7 B5 B7 3.1

Page 94: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

3

B6 B5 9.7 B6 B8 9.2 B7 B5 3.1 B8 B6 9.2 B8 B9 4.3 B9 B8 4.3 B9 B14 3.4 B10 B4 19.4 B10 B11 8.7 B10 B21 4.3 B11 B10 8.7 B11 B12 3.7 B12 B11 3.7 B12 B13 5.9 B12 B25 27.9 B13 B12 5.9 B14 B9 3.4 B14 B15 11.3 B14 B24 11.5 B15 B14 11.3 B15 B18 25.2 B15 B30 22.9 B16 B1 26.7 B16 B19 5.6 B17 B19 2.5 B17 B20 5.6 B18 B15 25.2 B19 B16 5.6 B19 B17 2.5 B20 B17 5.6 B21 B10 4.3 B21 B22 5.7 B22 B21 5.7 B22 B23 6 B23 B22 6 B23 B24 6.1 B23 B27 5.4 B24 B14 11.5 B24 B23 6.1 B25 B12 27.9 B25 B26 7.3 B26 B25 7.3 B26 B27 10.1 B27 B23 5.4

Page 95: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

4

B27 B26 10.1 B27 B28 20.8 B28 B27 20.8 B28 B29 16.4 B28 E1 16.3 B29 B28 16.4 B29 B30 14.1 B29 F1 4.9 B30 B15 22.9 B30 B29 14.1 B30 B31 4 B31 B30 4 C1 C2 36.5 C1 C3 8.7 C1 C4 6.8 C2 C1 36.5 C2 G1 18.1 C3 C1 8.7 C3 C5 2.8 C4 C1 6.8 C4 C7 5.4 C5 C3 2.8 C5 C6 4.6 C6 C5 4.6 C6 C7 10.3 C6 C37 6.1 C7 C4 5.4 C7 C6 10.3 C7 C15 7.5 C7 C37 7.5 C8 C9 10.1 C8 C37 2 C8 H24 5 C9 C8 10.1 C9 C10 10.1 C10 C9 10.1 C10 C11 10.7 C10 C13 11.2 C10 C14 8.7 C10 C33 13.5 C11 C10 10.7 C11 C12 9 C12 C11 9 C12 C13 6.6

Page 96: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

5

C13 C10 11.2 C13 C12 6.6 C13 C14 9 C14 C10 8.7 C14 C13 9 C15 C7 7.5 C15 C16 4.2 C15 C28 13.5 C16 C15 4.2 C16 C17 11.5 C16 C18 12.4 C16 H1 5 C17 C16 11.5 C18 C16 12.4 C18 C19 2 C19 C18 2 C19 C21 2.9 C19 H6 5 C21 C19 2.9 C21 C20 9 C21 C22 13.5 C22 C21 13.5 C22 C23 5.2 C22 C25 7.7 C23 C22 5.2 C23 C24 3 C24 C23 3 C24 E6 15.1 C25 C22 7.7 C25 C26 4.6 C26 C25 4.6 C26 C27 6.3 C27 C26 6.3 C27 C28 2.9 C27 H20 5 C28 C15 13.5 C28 C27 2.9 C28 C29 4.5 C28 C36 8.3 C29 C28 4.5 C29 C30 3.1 C30 C29 3.1 C30 C32 10.5 C30 C38 7.4

Page 97: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

6

C31 C33 10.6 C31 C38 9.7 C32 C30 10.5 C32 C36 8.1 C33 C10 13.5 C33 C31 10.6 C33 C34 13.5 C33 C35 10.6 C34 C33 13.5 C34 C35 9.6 C35 C33 10.6 C35 C34 9.6 C36 C28 8.3 C36 C32 8.1 C37 C6 6.1 C37 C7 7.5 C37 C8 2 C37 C38 13.5 C38 C30 7.4 C38 C31 9.1 C38 C37 13.5 D1 D2 10 D1 D3 25.1 D1 E7 6.6 D2 D1 10 D2 D4 16.8 D2 D12 31.3 D3 D1 25.1 D3 D11 8.8 D4 D2 16.8 D4 D5 11.5 D4 D6 12.3 D5 D4 11.5 D6 D4 12.3 D6 D7 3 D6 D8 5.3 D7 D6 3 D8 D6 5.3 D8 D9 9.1 D8 D10 15.7 D9 D8 9.1 D10 D8 15.7 D10 D19 31.3 D11 D3 8.8

Page 98: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

7

D11 D12 13.8 D11 D13 24 D12 D2 31.3 D12 D11 13.8 D12 D14 9.8 D12 D15 21.5 D13 D11 24 D13 D18 9.1 D14 D12 9.8 D15 D12 21.5 D15 D16 3.9 D15 D17 14.8 D16 D15 3.9 D17 D15 14.8 D17 D18 11.9 D17 D32 9.1 D18 D13 9.1 D18 D17 11.9 D18 D29 11.9 D19 D10 31.3 D19 D20 2.5 D20 D19 2.5 D20 D21 31.3 D21 D20 31.3 D21 D22 2.5 D22 D21 2.5 D22 D23 9.6 D23 D22 9.6 D23 D24 6.9 D23 D25 14 D24 D23 6.9 D24 D26 14.3 D25 D23 14 D25 D28 32.2 D25 D33 7.1 D26 D24 14.3 D27 D33 6.5 D28 D25 32.2 D28 D29 8.5 D28 D34 7.3 D29 D18 11.9 D29 D28 8.5 D30 D34 21.1 D31 D34 18.2

Page 99: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

8

D32 D17 9.1 D33 D25 7.1 D33 D27 6.5 E1 B28 16.3 E1 E2 13.3 E1 E3 10.4 E2 E1 13.3 E2 E5 16 E3 E1 10.4 E3 E4 7 E3 E7 4.9 E4 E3 7 E5 E2 16 E5 E6 21.5 E5 E7 14.8 E6 C24 15.1 E6 E5 21.5 E7 D1 6.6 E7 E3 4.9 E7 E5 14.8 F1 B29 4.9 F1 F2 7.6 F1 F3 3.8 F2 F1 7.6 F3 F1 3.8 F3 F4 34.8 F4 F3 34.8 F4 F5 12.9 F4 F6 13.2 F4 F10 19.3 F5 F4 12.9 F6 F4 13.2 F6 F7 2.3 F7 F6 2.3 F7 F8 8.3 F8 F7 8.3 F8 F9 16 F9 B18 14.4 F9 F8 16 F10 F4 19.3 F10 F11 6.3 F10 F14 13.1 F11 F10 6.3 F12 A19 9.8

Page 100: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

9

F12 F13 7.4 F12 F14 6 F13 F12 7.4 F14 F10 13.1 F14 F12 6 F14 F15 7.4 F15 F14 7.4 G1 C2 18.1 G1 G2 2.8 G2 B1 25.6 G2 G1 2.8 H1 C16 5 H1 H2 4.3 H1 H3 6.7 H1 I1 5 H2 H1 4.3 H2 H4 4.6 H2 H21 15 H3 H1 6.7 H3 H6 8 H4 H2 4.6 H4 H5 5.1 H4 H23 6.5 H5 H4 5.1 H6 C19 5 H6 H3 8 H6 H7 2.9 H6 I14 5 H7 H6 2.9 H7 H8 7.9 H7 H10 13.6 H7 H11 6 H8 H7 7.9 H8 H9 6.1 H9 H8 6.1 H10 H7 13.6 H11 H7 6 H11 H12 2 H11 H19 7.5 H12 H11 2 H12 H13 8.5 H13 H12 8.5 H14 H15 2.2 H15 H14 2.2

Page 101: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

10

H15 H16 3.5 H16 H15 3.5 H16 H17 6 H17 H16 6 H17 H19 2.5 H18 H19 4.3 H18 H20 13.9 H19 H11 7.5 H19 H17 2.5 H19 H18 4.3 H20 C27 5 H20 H18 13.9 H20 H21 3 H20 I7 5 H21 H2 15 H21 H20 3 H21 H22 6.7 H22 H21 6.7 H22 H25 7.7 H23 H4 6.5 H23 H42 8.7 H24 C8 5 H24 H40 9.6 H24 H42 3.4 H24 I27 5 H25 H22 7.7 H25 H26 14.1 H25 H42 15 H26 H25 14.1 H26 H43 7.6 H27 H28 6 H27 H43 2.1 H28 H27 6 H28 H29 7.5 H29 H28 7.5 H30 H31 3.7 H30 H43 10.6 H31 H30 3.7 H31 H32 7.6 H31 H33 9.2 H31 H34 9.6 H31 H40 9 H32 H31 7.6 H32 H38 2.7

Page 102: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

11

H33 H31 9.2 H33 H35 2.9 H33 H36 7 H34 H31 9.6 H34 H37 2.7 H35 H33 2.9 H36 H33 7 H37 H34 2.7 H37 H38 2 H38 H32 2.7 H38 H37 2 H39 H41 2.6 H40 H24 9.6 H40 H31 9 H40 H41 7.2 H41 H39 2.6 H41 H40 7.2 H42 H23 8.7 H42 H24 3.5 H42 H25 15 H43 H26 7.6 H43 H27 2.1 H43 H30 10.6 I1 H1 5 I1 I2 6 I1 I3 4.3 I1 I17 5.7 I2 I1 6 I2 I6 4 I3 I1 4.3 I3 I5 15 I3 I6 4.5 I4 I6 7.5 I4 I23 7.5 I5 I3 15 I5 I7 2.6 I6 I2 4 I6 I3 4.5 I6 I4 7.5 I7 H20 5 I7 I5 2.6 I7 I8 10.4 I8 I7 10.4 I8 I9 3.5

Page 103: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

12

I9 I8 3.5 I9 I10 5.2 I10 I9 5.2 I10 I11 5.9 I10 I18 7.1 I11 I10 5.9 I11 I12 5 I12 I11 5 I12 I33 4.9 I13 I15 6 I13 I33 2 I14 H6 5 I14 I16 4 I14 I33 3.4 I15 I13 6 I16 I14 4 I16 I17 5 I17 I1 5.7 I17 I16 5 I18 I10 7.1 I18 I19 3.6 I18 I22 6.1 I19 I18 3.6 I19 I20 3.5 I20 I19 3.5 I20 I21 2.8 I21 I20 2.8 I21 I22 6.1 I22 I18 6.1 I22 I21 6.1 I23 I4 7.5 I23 I24 4.5 I24 I23 4.5 I24 I27 2.6 I24 I29 15 I25 I26 5 I25 I27 5.7 I26 I25 5 I26 I28 2 I27 H24 5 I27 I24 2.6 I27 I25 5.7 I28 I26 2 I29 I24 15

Page 104: IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN …repository.usd.ac.id/32362/2/045314070_Full.pdf · Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program

13

I29 I30 6.2 I30 I29 6.2 I30 I31 7 I31 I30 7 I31 I32 5.2 I32 I31 5.2 I33 I12 4.9 I33 I13 2 I33 I14 3.4