• Tidak ada hasil yang ditemukan

SKRIPSI REGINANITA SITEPU

N/A
N/A
Protected

Academic year: 2022

Membagikan "SKRIPSI REGINANITA SITEPU"

Copied!
70
0
0

Teks penuh

(1)

IMPLEMENTASI ALGORITMA BELLMAN-FORD DALAM MENENTUKAN JARAK TERPENDEK (SHORTEST PATH ) BERBASIS SISTEM INFORMASI GEOGRAFIS

Studi Kasus : Belawan International Container Terminal

SKRIPSI

REGINANITA SITEPU 111421035

PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN

2016

(2)

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer

REGINANITA SITEPU 111421035

PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN

2016

(3)

PERSETUJUAN

Judul : IMPLEMENTASI ALGORITMA BELLMAN-FORD

DALAM MENENTUKAN JARAK TERPENDEK

(SHORTEST PATH) BERBASIS SISTEM INFORMASI GEOGRAFIS. Studi Kasus : Belawan International Container Terminal.

Kategori : SKRIPSI

Nama : REGINANITA SITEPU

Nomor Induk Mahasiswa : 111421035

Program Studi : EKSTENSI S1 ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA Komisi Pembimbing :

Pembimbing II Pembimbing I

Dian Rachmawati, S.Si, M.Kom Dr. Poltak Sihombing, M.Kom NIP. 198307232009122004 NIP. 19620217 199103 1 001 Diketahui/disetujui oleh

Program Studi Ekstensi S1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP. 19620217 199103 1 001

(4)

PERNYATAAN

IMPLEMENTASI ALGORITMA BELLMAN-FORD DALAM MENENTUKAN JARAK TERPENDEK (SHORTEST PATH ) BERBASIS SISTEM INFORMASI GEOGRAFIS

Studi Kasus : Belawan International Container Terminal

SKRIPSI

Saya menyatakan bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, 2016

Reginanita Sitepu NIM. 111421035

(5)

-1

BIODATA MAHASISWA

Nama : Reginanita Sitepu

Alamat : Jl. Pengabdian Gg. Kurnia no : B8 Tempat Tanggal Lahir : Bogor, 10 Mei 1989

Agama : Islam

Jenis Kelamin : Perempuan

Alamat Email : [email protected]

No. Hp : 085275568064

Orang tua

Ayah : Bahagia Sitepu

Ibu : Mulyati

Alamat Ayah : Jl. Samura Gg Madu 2 Kabanjahe- Karo Alamat Ibu : Jl. Samura Gg Madu 2 Kabanjahe- Karo Pekerjaan Ayah : Petani

Pekerjaan Ibu : Petani Pendidikan Terakhir

Ayah : SLTA

Ibu : SLTA

Pendidikan Formal

2011-2016 S1 Ekstensi Ilmu Komputer Fasilkom-TI USU, Medan.

2007-2010 D3 Teknik Komputer IPB, Bogor.

2004-2007 SMA Negeri 2 Kabanjahe

2001-2004 SMP Negeri 1 Simpang Empat 1996-2001 SD Negeri 040475 Tigaserangkai

Keahlian

Bahasa Indonesia, Inggris

Komputer Microsoft Office, Open Office, MySQL, Macromedia Dreamwever MX, Macromedia Flash 8.0, Adobe Flash CS, XAMPP.

Bahasa Pemrograman PHP, SQL.

(6)

PENGHARGAAN

Bismillahirrohmanirrohim

Segala puji dan syukur penulis ucapkan kehadirat Allah SWT yang telah memberikan rahmat dan hidayah-Nya kepada penulis sehingga dapat menyelesaikan skripsi ini tepat waktu sesuai dengan instruksi dan peraturan yang berlaku di Fakultas Ilmu Komputer dan Teknologi Informasi serta shalawat dan salam penulis hadiahkan kepada Nabi Besar Muhammad SAW.

Dalam penyusunan dan penulisan skripsi ini, penulis banyak mendapat bantuan, dukungan, dan bimbingan dari berbagai pihak. Pada kesempatan ini penulis ingin mengucapkan rasa terima kasih dan penghargaan kepada :

1. Bapak Prof. Dr. Runtung Sitepu, SH, M.Hum selaku Rektor Universitas Sumatera Utara.

2. Bapak Prof. Dr. Muhammad Zarlis, M.Kom sebagai Dekan Fakultas Ilmu Komputer dan Teknologi Informasi.

3. Bapak Dr. Poltak Sihombing, M.Kom sebagai Ketua Program Studi S1 Ilmu Komputer dan selaku Dosen Pembimbing I yang telah meluangkan waktu, tenaga, dan pikiran dalam membimbing, mengarahkan, menasehati, memotivasi, dan menyemangati penulis agar dapat menyelesaikan skripsi ini.

4. Ibu Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi Ilmu Komputer.

5. Ibu Dian Rachmawati, S.Si,M.Kom selaku Dosen Pembimbing II yang telah meluangkan waktu, tenaga, dan pikiran dalam membimbing, mengarahkan, menasehati, memotivasi, dan menyemangati penulis agar dapat menyelesaikan skripsi ini.

(7)

6. Bapak Drs. Marihat Situmorang, M.Kom selaku dosen Pembanding I dan Bapak Ade Candra, ST, M.Kom selaku dosen Pembanding II yang telah memberikan kritik dan saran terhadap skripsi penulis.

7. Seluruh staf pengajar dan pegawai Fakultas Ilmu Komputer dan Teknologi Informasi.

8. Teristimewa orang tua yang penulis sayangi, ibunda Mulyati dan ayahanda Bahagia Sitepu beserta Abang dan adik-adik yang tidak henti-hentinya memberikan doa, motivasi, dan dukungan yang selalu menjadi sumber semangat penulis.

9. Suami tercinta, Saepudin yang selalu menemani dan memotivasi penulis dalam menyelesaikan skripsi ini.

10. Sahabat-sahabat luar biasa yang selalu menemani dan memberi motivasi kepada penulis.

11. Teman – teman seperjuangan mahasiswa S1 Ekstensi Ilmu Komputer stambuk 2011, 2012 & 2013 yang selalu memberi dukungan dan bantuannya.

12. Seluruh pegawai di BICT yang selalu membantu dan menyemangati penulis untuk segera menyelesaikan skripsi ini.

13. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu per satu yang telah membantu menyelesaikan skripsi ini.

Penulis menyadari bahwa skripsi ini masih memiliki banyak kekurangan, baik dari segi teknik, tata penyajian ataupun dari segi tata bahasa. Oleh karena itu penulis bersedia menerima kritik dan saran dari pembaca dalam upaya perbaikan skripsi ini.

Semoga skripsi ini dapat bermanfaat bagi penulis dan pembaca, khususnya rekan- rekan mahasiswa lainnya yang mengikuti perkuliahan di Universitas Sumatera Utara.

Medan, 2016 Penulis

Reginanita Sitepu

(8)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar Isi viii

Daftar Tabel x

Daftar Gambar xi

Bab 1 Pendahuluan 1

1.1 Latar Belakang 1

1.2 Rumusan Masalah 2

1.3 Batasan Masalah 3

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 4

1.6 Metode Penelitian 4

1.7 Sistematika Penulisan 5

Bab 2 Landasan Teori 6

2.1 Graph 6

2.1.1 Macam – macam Graph Menurut Arah dan Bobotnya 6

2.2 Sistem Informasi Geografis 9

2.2.1 Sistem Informasi 9

2.2.2 Geografi 9

2.2.3 Sistem Informasi Geografis 10

2.2.3.1 Subsistem Sistem Informasi Geografis 10 2.2.3.2 Komponen Sistem Informasi Geografis 11

2.3 Peta 13

2.3.1 Proyeksi Peta 13

2.5 Post GIS 14

2.6 PostgreSQL 15

2.7 Algoritma Bellman-Ford 16

Bab 3 Analisis dan Perancangan Sistem 18

3.1 Analisis Sistem 18

3.1.1 Analisis Masalah 18

3.1.2 Analisis Persyaratan 19

3.2 Pemodelan Aplikasi 20

3.2.1 Use-Case Diagram 20

3.2.2 Activity Diagram 21

3.2.3 Sequence Diagram 22

(9)

ix

3.4 Analisis Algoritma Bellman-Ford dalam Mencari Rute Terpendek 24

3.4.1 Pseudocode Bellman-Ford 26

3.5 Database 27

3.6 Entity Relationship Diagram (ERD) 29

3.7 Perancangan Antarmuka (Interface) 29

Bab 4 Implementasi Dan Pengujian Sistem 31

4.1 Implementasi 31

4.1.1 Implementasi Algoritma Bellman - Ford 31

4.1.1.1 Iterasi Pertama 32

4.1.1.2 Iterasi Kedua 33

4.1.1.3 Iterasi Ketiga 33

4.1.1.4 Iterasi Empat 34

4.1.1.5 Iterasi Kelima 35

4.1.1.6 Iterasi Keenam 36

4.1.1.7 Iterasi Ketujuh 37

4.1.1.8 Iterasi Kedelapan 37

4.1.1.8 Iterasi Kedelapan 37

4.1.2 Tampilan Sistem Pencarian Jalur Terpendek Berbasis SIG 39

4.1.2.1 Halaman Utama 39

4.1.2.2 Halaman Bellman-Ford 40

4.1.2.3 Medan Focal Point – RS Pelabuhan 41 4.1.2.4 Terminal Bus Amplas- Bank Mandiri Belawan 42 4.1.2.5 Terminal Bus Amplas –

Kantor Kesehatan Pelabuhan Kelas I 43

4.1.2.6 Terminal Bus Ampals - BICT 44

4.1.2.7 Universitas Negeri Medan - BICT 45 4.1.2.8 Universitas Sumatera Utara - BICT 46

4.2 Pengujian Sistem 47

4.2.1 Pengujian Black Box (Black Box Testing) 47

Bab 5 Kesimpulan dan Saran 49

5.1 Kesimpulan 49

5.2 Saran 49

DAFTAR PUSTAKA

LAMPIRAN A [KODE PROGRAM] A-1

LAMPIRAN B [DAFTAR RIWAYAT HIDUP] B-1

(10)

DAFTAR TABEL

Halaman

Tabel 3.1 Tabel tabel_awal 27

Tabel 3.2 Tabel tabel_tujuan 27

Tabel 3.3 Tabel tabel_jarak 27

Tabel 3.4 Tabel tabel_node 28

Tabel 3.5 Tabel tabel_langkah 28

Tabel 4.1 Tabel Awal Perhitungan Algoritma Bellman-Ford 32 Tabel 4.2 Perhitungan Algoritma Bellman-Ford Iterasi Pertama 32 Tabel 4.3 Perhitungan Algoritma Bellman-Ford Iterasi Ke Dua 33 Tabel 4.4 Perhitungan Algoritma Bellman-Ford Iterasi Ke Tiga 34 Tabel 4.5 Perhitungan Algoritma Bellman-Ford Iterasi Ke Empat 34 Tabel 4.6 Perhitungan Algoritma Bellman-Ford Iterasi Ke Lima 35 Tabel 4.7 Perhitungan Algoritma Bellman-Ford Iterasi Ke Enam 36 Tabel 4.8 Perhitungan Algoritma Bellman-Ford Iterasi Ke Tujuh 37 Tabel 4.9 Perhitungan Algoritma Bellman-Ford Iterasi Ke Delapan 38

Tabel 4.10 Hasil Pengujian Black –Box 47

(11)

xi

DAFTAR GAMBAR

Halaman

Gambar 2.1 Graph Berarah dan Berbobot 7

Gambar 2.2 Graph Tidak Berarah dan Berbobot 7

Gambar 2.3 Graph Berarah dan Tidak Berbobot 8

Gambar 2.4 Graph Tidak Berarah dan Tidak Berbobot 8

Gambar 2.5 Graph Sederhana 9

Gambar 2.6 Graph Tidak Sederhana 9

Gambar 2.7 Ilustrasi Subsistem SIG 11

Gambar 2.8 Proyeksi Peta dari Permukaan Bumi ke Bidang Datar 13

Gambar 2.9 Jenis Proyeksi Peta 14

Gambar 2.10 Contoh Graf Pencarian Lintasan Terpendek 17

Gambar 3.1 Diagram Fishbone 18

Gambar 3.2 Use Case 20

Gambar 3.3 Activity Diagram Algoritma Bellman-Ford 21

Gambar 3.4 Sequence Diagram 22

Gambar 3.5 Diagram Alur Algoritma Bellman-Ford 23

Gambar 3.6 Contoh Graf Pencarian Rute Terpendek 24

Gambar 3.7 Graf Penandaan Simpul 24

Gambar 3.8 Graf Relaxing Tahap 1 25

Gambar 3.9 Graf Relaxing Tahap 2 25

Gambar 3.10 Entity Relationship Diagram (ERD) 29

Gambar 3.11 Perancangan Interface 30

Gambar 4.1 Contoh Graf Pencarian Lintasan Terpendek 31

Gambar 4.2 Halaman Utama 39

Gambar 4.3 Halaman Bellman-Ford 40

Gambar 4.4 Hasil Pencarian Jarak Terpendek Medan Focal Point

– RS Pelabuhan 41

Gambar 4.5 Hasil Pencarian Jarak Terpendek Medan Terminal

Bus Amplas - Bank Mandiri Belawan 42

Gambar 4.6 Hasil Pencarian Jarak Terpendek Terminal Bus Amplas –

Kantor Kesehatan Pelabuhan Kelas I 43

Gambar 4.7 Hasil Pencarian Jarak Terpendek Terminal Bus Amplas –

BICT 44

Gambar 4.8 Hasil Pencarian Jarak Terpendek Universitas Negeri

Medan – BICT 45

Gambar 4.9 Hasil Pencarian Jarak Terpendek Universitas Sumatera

Utara – BICT 46

(12)

1.1. Latar Belakang

Pada era global saat ini masyarakat dihadapkan pada mobilitas yang sangat tinggi dalam kehidupan sehari-hari, mobilitas merupakan perpindahan yang terjadi dari satu tempat ke tempat yang lain. Hal yang menunjang kegiatan tersebut adalah rute yang dilalui dari suatu tempat ke tempat yang menjadi tujuan.

Dalam melakukan perjalanan dari suatu tempat ke tempat lainnya terdapat lintasan yang berbeda-beda. Banyaknya pilihan jenis lintasan jalan yang akan ditempuh dari suatu daerah ke daerah lainnya menuntut adanya pilihan lintasan terpendek, sehingga dapat mendefinisikan jarak, waktu, dan biaya yang dibutuhkan untuk mencapai daerah tujuan tersebut.

Belawan International Container Terminal yang disingkat dengan BICT adalah salah satu cabang pelaksana PT. Pelabuhan Indonesia I (PT. Pelindo I), dan merupakan pelabuhan atau terminal peti kemas internasional terbesar di PT. Pelindo I.

BICT terletak di Gabion Belawan, yaitu Timur Laut Sumatera.

BICT merupakan pintu gerbang perekonomian sebagian wilayah Pulau Sumatera pada umumnya dan Sumatera Utara pada khususnya. Hal ini menjadi perhatian karena keluar masuknya barang ke BICT mempengaruhi perekonomian juga. Selain melalui jalur laut, barang yang akan diekspor dan diimpor akan melalui jalur darat atau jalan raya. Pemilik barang dan perusahaan ekspedisi pastinya menginginkan rute terpendek yang ditempuh karena dapat mempersingkat waktu dan biaya perjalanan. Studi kasus kali ini penulis mencoba memecahkan masalah yang dihadapi oleh pengguna jalan raya menuju BICT.

Sebuah media yang sangat berkembang saat ini adalah Internet. Lewat internet, informasi bisa disampaikan secara cepat, luas, dapat diakses oleh siapa saja dan dimana saja. Berkaitan dengan hal wilayah, terdapat beberapa aplikasi yang sudah ada di internet. Dengan memanfaatkan keunggulan internet ini, sebuah sistem informasi

(13)

geografis akan dikembangkan untuk mengatasi persoalan pencarian rute terpendek menuju BICT.

Sistem ini nantinya diharapkan dapat membantu untuk mencari rute terpendek menuju BICT. Proses pencarian rute terpendek untuk menuju BICT dengan menggunakan algoritma Bellman - Ford menggunakan aplikasi berbasis website.

Graf merupakan model matematika yang sangat kompleks dan rumit tetapi bisa juga menjadi solusi yang sangat bagus terhadap beberapa kasus tertentu. Banyak sekali aplikasi menggunakan graf sebagai alat untuk mempresentasikan atau memodelkan persoalan sehingga persoalan itu dapat diselesaikan dengan baik.

Aplikasi tersebut misalnya menentukan masalah lintasan terpendek (the shortest path problem), persoalan pedagang keliling (travelling sales person problem) dan masih banyak lagi aplikasi-aplikasi yang dapat diselesaikan dengan menggunakan model graf (Susiani, I.M. 2012).

Algoritma Bellman-Ford menyelesaikan permasalahan lintasan terpendek dari satu sumber secara umum dimana bobot edge boleh negatif. Diberikan graf berbobot dan berarah G = (V, E) dengan sumber s dan bobot w, algoritma Bellman-Ford mengembalikan nilai boolean yang mengindikasikan ada atau tidak cycle berbobot negatif yang terjangkau dari sumber. Jika ada, maka tidak ada solusi yang diperoleh. Jika tidak ada cycle berbobot negatif maka akan diperoleh lintasan terpendek dan bobotnya. Cycle berbobot negatif adalah cycle dimana total bobotnya adalah negatif (Cormen, T. 1998).

Mencermati hal-hal yang telah dipaparkan maka penulis tertarik membuat skripsi berjudul Implementasi Algoritma Bellman-Ford Dalam Menentukan Jarak Terpendek (Shortest Path) Berbasis Sistem Informasi Geografis (studi kasus Belawan International Container Terminal).

1.2. Rumusan Masalah

Berdasarkan latar belakang di atas, maka masalah yang dibahas dalam penelitian ini yaitu bagaimana mencari lintasan terpendek dengan menggunakan Algoritma Bellman-Ford sehingga dapat memberikan informasi jalur terpendek untuk mencapai BICT.

(14)

1.3. Batasan Masalah

Ruang lingkup penelitian ini dibatasi pada :

1. Model graf yang digunakan adalah model graf berarah dan hanya satu arah serta berbobot positif.

2. Tidak membahas keadaan lalu lintas, waktu tempuh dan keadaan jalan dari tempat asal ke tempat tujuan.

3. Perhitungan yang dilakukan hanya berdasarkan jarak tempuh.

4. Tidak membahas mengenai pembuatan dan pengolahan data spasial.

5. Aplikasi yang dikembangkan membutuhkan koneksi internet untuk Google Maps Api dan mengunduh data dari server.

6. Input pada sistem ini adalah titik asal dan titik tujuan dimana titik asal sebanyak 19 titik berupa tempat-tempat penting di kota Medan (stasiun kereta api, terminal, Universitas Negeri dan Pusat perbelanjaan) sedangkan titik tujuan adalah BICT dan 9 titik berupa tempat-tempat penting di Belawan (terminal penumpang pelabuhan Belawan, kantor bank, instansi pemerintahan dan rumah sakit).

Output berupa rute perjalanan, jalur yang harus dilewati pada peta, dan pewarnaan pada jalur yang ditempuh.

7. Perangkat lunak yang digunakan adalah Quantum GIS, PostgreSQL, Macromedia Dreamweaver dan Bahasa pemrograman PHP.

1.4 Tujuan Penelitian

Tujuan dari penelitian ini adalah

1. Untuk menentukan lintasan terpendek dengan menggunakan Algoritma Bellman- Ford dengan aplikasi penggunaannya di lapangan.

2. Menganalisis kinerja dari suatu jalan menuju jalan lain dari segi jarak terdekat sehingga pengguna jalan dapat melalui jarak terpendek untuk mencapai tempat tujuannya.

(15)

1.5. Manfaat Penelitian

Manfaat yang diharapkan dari penelitian adalah memudahkan para pengguna jalan dalam menentukan rute yang paling efisien saat melakukan perjalanan.

1.6. Metodologi Penelitian

Metodologi penelitian yang digunakan dalam penulisan tugas akhir ini adalah sebagai berikut :

1. Studi Literatur

Pada tahap ini penulisan dimulai dengan studi kepustakaan yaitu proses pengumpulan bahan-bahan referensi baik dari buku, artikel, makalah maupun jurnal baik berupa media cetak maupun media internet mengenai Shortest path, Sistem informasi geografis, Metode Bellman-Ford serta beberapa refrensi lainnya untuk menunjang pencapaian tujuan skripsi.

2. Analisis dan Perancangan Sistem

Pada tahap ini digunakan untuk mengolah data yang ada dan kemudian melakukan analisis terhadap hasil studi literatur yang diperoleh dan dilakukan perancangan user interface, Unified Modelling Language (UML) dan struktur program menentukan Shortest path Belawan International Container Terminal.

3. Implementasi Sistem

Pada tahap ini dilaksanakan dengan mengimplementasikan rancangan sistem yang telah dibuat pada analisis dan perancangan sistem kedalam komputer dengan menggunakan bahasa pemrograman php dan database PostgreSQL.

4. Pengujian Sistem

Pada tahap ini dilaksanakan dengan melakukan pengujian terhadap sistem, dilakukan pemasukan serta pengolahan data untuk mendapatkan hasilnya apakah sudah sesuai dengan yang diharapkan.

5. Dokumentasi

Metode ini dilaksanakan dengan membuat dokumentasi dalam bentuk laporan tugas akhir, mulai dari awal sampai akhir.

(16)

1.7. Sistematika Penulisan

Dalam penyusunan skripsi ini, penulis menguraikannya dalam lima bab dengan sistematika pembahasan dan aturan-aturannya agar pembaca lebih mudah untuk memahami dan mengerti isi dari skripsi ini.

BAB 1: PENDAHULUAN

Bab ini berisi mengenai latar belakang pemilihan judul skripsi “Implementasi Algoritma Bellman-Ford Dalam Menentukan Jarak Terpendek (Shortest Path) Berbasis Sistem Informasi Geografis (studi kasus Belawan International Container Terminal), perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian yang dilakukan serta sistematika penulisan skripsi.

BAB 2: LANDASAN TEORI

Bab ini membahas mengenai teori-teori yang digunakan untuk mendukung penulisan penelitian.

BAB 3: ANALISIS DAN PERANCANGAN SISTEM

Bab ini terdiri dari tahap analisis sistem dan desain/model perancangan dari program yang akan dibuat, dalam hal ini termasuk juga algoritma dari program tersebut.

BAB 4: IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab ini berisi mengenai hasil pengujian, implementasi dari program yang sebelumnya telah dirancang dan analisis program.

BAB 5: PENUTUP

Bab ini berisi tentang kesimpulan dari semua pembahasan yang ada dengan saran- saran yang ditujukan bagi para pembaca atau pengembang guna penelitian lebih lanjut.

(17)

LANDASAN TEORI

2.1. Graf

Graf adalah struktur data yang terdiri dari atas kumpulan vertex (V) dan edge (E), biasa ditulis sebagai G=(V,E), di mana vertex adalah node pada graf, dan edge adalah rusuk / jaring yang menghubungkan dua node. Jaring terdefenisi melalui pasangan node (v,w), di mana v disebut tail dan w disebut head dari jaring tersebut.

(Suarga,2012.)

Banyak sekali struktur yang bisa dipresentasikan dengan graf, dan banyak masalah yang bisa diselesaikan dengan graf. Sering kali graf digunakan untuk mempresentasikan suatu jaringan. Misalkan jaringan jalan raya dengan kota sebagai simpul (vertex) dan jalan yang menghubungkan setiap kota sebagai sisi (edge) dan bobotnya (weight) adalah panjang dari jalan tersebut.

Secara matematis graf mendefinisikan sebagai pasangan himpunan (V, E), ditulis dengan notasi G= (V, E), yang dalam hal ini V adalah himpunan tidak kosong dari simpul-simpul (vertex atau node) dan E adalah himpunan sisi (edge) yang menghubungkan sepasang simpul (Munir, R. 2009) .

Simpul (vertex) pada graf dapat dinyatakan dengan huruf, bilangan atau gabungan keduanya. Sedangkan sisi-sisi yang menghubungkan simpul u dengan simpul v dinyatakan dengan pasangan (u, v) atau dinyatakan dengan lambang

, , dan seterusnya.

2.1.1 Macam-macam Graf Menurut Arah dan Bobotnya.

Menurut arah dan bobotnya, graf dibagi menjadi enam bagian, yaitu : 1. Graf berarah dan berbobot.

Pada graf berarah, arah sisi/urutan ikut diperhatikan. Dalam suatu graf, lintasan (path) adalah urutan simpul, atau sisi yang dibentuk untuk bergerak dari satu simpul ke simpul yang lain. Dalam graf berarah, titik akhir dari sebuah busur akan menjadi titik awal dari busur berikutnya. Sirkuit adalah lintasan yang memiliki simpul awal

(18)

dan akhir yang sama. Panjang lintasan adalah banyaknya sisi yang dilalui lintasan tersebut.

Pada Gambar 2.1 menjelaskan graf berarah (digraph) dan berbobot: setiap edges mempunyai arah (yang ditunjukkan dengan anak panah) dan bobot.

B

D A

E 8

C

7

9 7

10 10

8

7 15

Gambar 2.1 Graf Berarah dan Berbobot

2. Graf tidak berarah dan berbobot.

Suatu graf G terdiri dari dua himpunan yang berhingga, yaitu himpunan simpul- simpul tak kosong (V(G)) dan himpunan jalur-jalur (E(G)). Jika semua jalurnya tidak berarah, maka grafnya disebut graf tak berarah (Siang, J.J. 2009).

Pada gambar 2.2 menjelaskan graf tidak berarah dan berbobot: setiap edges tidak mempunyai arah tetapi mempunyai bobot.

B

D A

E 8

C

7

9 7

10 10

8

7 15

Gambar 2.2 Graf Tidak Berarah dan Berbobot

(19)

3. Graf berarah dan tidak berbobot.

Pada gambar 2.3 menjelaskan graf berarah (digraph) dan tidak berbobot: setiap edges mempunyai arah tetapi tidak mempunyai bobot.

B

D A

E C

Gambar 2.3 Graf Berarah dan Tidak Berbobot

4. Graf tidak berarah dan tidak berbobot.

Pada gambar 2.4 menjelaskan graf tidak berarah dan tidak berbobot: setiap edges tidak mempunyai arah dan tidak mempunyai bobot

B

D A

E C

Gambar 2.4 Graf Tidak Berarah dan Tidak Berbobot

5. Graf sederhana

Pada gambar 2.5 menjelaskan graf sederhana : graf yang tidak memiliki garis paralel ataupun loop. Titik-titik pada graf sederhana dihubungkan tepat dengan satu garis ke setiap titik yang lain dan tidak ada garis yang titik awal dan akhirnya sama.

(20)

Gambar 2.5 Graf Sederhana 6. Graf tidak sederhana

Pada gambar 2.6 menjelaskan graf tidak sederhana : graf yang memiliki loop atau garis paralel. Graf tidak sederhana kemudian terbagi lagi menjadi Graph semu (pseudo Graph) dan multiple Graph.

a. Graf Semu (pseudo Graph) b. Multiple Graph Gambar 2.6 Graf Tidak Sederhana

2.2. Sistem Informasi Geografis 2.2.1 Sistem Informasi

Sistem informasi adalah kombinasi dari manusia, perangkat keras, perangkat lunak, jaringan komunikasi dan sumber data yang telah diseleksi, ditransformasi dan memberikan informasi dalam sebuah organisasi. Manusia menyadari pentingnya sistem informasi yaitu untuk saling berkomunikasi dengan menggunakan berbagai macam perangkat fisik (perangkat keras), alat memproses informasi termasuk instruksi dan prosedur (perangkat lunak), jaringan sebagai penghubung komunikasi (networks), dan sumber data (O’Brien, J. 2005).

2.2.2 Geografi

Menurut Erastothenes geografi berasal dari kata geographica yang berarti penulisan atau penggambaran mengenai bumi. Geografi tidak hanya menjawab apa dan dimana

(21)

yang ada di atas muka bumi, tapi juga tempat lainnya, kadang diartikan dengan lokasi pada ruang.

2.2.3 Sistem Informasi Geografis

Sistem Informasi Geografis atau Geographic Information System (GIS) merupakan sistem komputer yang digunakan untuk memasukkan, menyimpan, memeriksa, mengintegrasikan, memanipulasi, menganalisis, dan menampilkan data-data berhubungan dengan posisi-posisinya di muka bumi (Prahasta, E. 2009).

2.2.3.1 Subsistem Sistem Informasi Geografis

Sistem Informasi Geografis dapat diuraikan menjadi beberapa subsistem sebagai berikut:

a. Data Input

Bertugas mengumpulkan, mempersiapkan, dan menyimpan data spasial dan atributnya dari berbagai sumber. Subsistem ini pula yang bertanggungjawab dalam mengkonversikan atau mentransformasikan format-format yang digunakan oleh perangkat SIG.

b. Data Output

Bertugas menampilkan atau menghasilkan keluaran seluruh atau sebagian basis data spasial baik dalam bentuk softcopy maupun hardcopy seperti halnya tabel, grafik, report, peta, dan sebagainya.

c. Data Management

Mengorganisasikan baik data spasial maupun tabel-tabel atribut terkait ke dalam sebuah sistem basis data sehingga mudah dipanggil kembali, diupdate dan diedit.

(22)

d. Data Manipulation dan Analysis

Menentukan informasi-informasi yang dapat dihasilkan oleh SIG. Serta melakukan manipulasi dalam penggunaan fungsi-fungsi dan operator logika untuk menghasilkan informasi yang diharapkan.

Adapun ilustrasi subsistem dari Sistem Informasi Geografis terlihat pada gambar 2.7.

Gambar 2.7 : Ilustrasi Subsistem SIG Sumber (Prahasta, E. 2009. Sistem Informasi Geografis Konsep-Konsep Dasar, Informatika, Bandung.)

2.2.3.2 Komponen Sistem Informasi Geografis

Secara umum SIG bekerja berdasarkan integrasi 5 komponen, yaitu: hardware, software, data, manusia dan metode.

a. Hardware (perangkat keras)

SIG membutuhkan hardware atau perangkat komputer yang memiliki spesifikasi lebih tinggi dibandingkan dengan sistem informasi lainnya untuk menjalankan software-software SIG, seperti kapasitas Memori (RAM), Hard disk, Prosesor serta VGA Card. Hal tersebut disebabkan karena data-data yang digunakan dalam SIG baik data vektor maupun data raster penyimpanannya membutuhkan ruang yang besar dan dalam proses analisanya membutuhkan memori yang besar dan prosesor yang cepat.

Data Manipulation

& Analysis

SIG

Data Management Data

Input Data

Output

(23)

b. Software (perangkat lunak)

Sebuah software SIG harus menyediakan fungsi dan tools yang mampu melakukan penyimpanan data, analisis dan menampilkan informasi geografis. Dengan demikian elemen yang harus terdapat dalam komponen software SIG adalah:

• Tools untuk melakukan input dan transformasi data geografis

• Sistem manajemen basis data

• Tool yang mendukung query geografis, analisis dan visualisasi

• Graphical User Interface (GUI) untuk memudahkan akses pada tool geografi c. Data

Hal yang merupakan komponen penting dalam SIG adalah data. Secara dasar SIG bekerja dengan dua tipe model data geografis yaitu model data vektor dan model data raster.

• Data Spasial

Model data ini terdiri dari gambaran nyata suatu wilayah yang terdapat di permukaan bumi, biasanya ditampilkan dalam bentuk peta, grafik dalam format digital dan disimpan dalam bentuk koordinat vektor (x,y) atau dalam bentuk image (raster) yang memiliki nilai tertentu.

Data Non Spasial (Atribute)

Data non spasial adalah data berbentuk tabel dimana tabel tersebut berisi informasi- informasi yang dimiliki oleh objek dalam data spasial. Data tersebut berbentuk data tabular yang saling terintegrasi dengan data spasial yang ada.

d. Manusia

Teknologi SIG tidaklah menjadi bermanfaat tanpa manusia yang mengelola sistem dan membangun perencanaan yang dapat diaplikasikan sesuai kondisi dunia nyata.

Sama seperti pada Sistem Informasi lain, pemakai SIG pun memiliki tingkatan tertentu dari tingkat spesialis teknis yang mendesain dan memelihara sistem sampai pada pengguna yang menggunakan SIG untuk menolong pekerjaan mereka sehari- hari.

(24)

e. Metode

SIG yang baik memiliki keserasian antara rencana desain yang baik dan aturan dunia nyata, dimana metode, model dan implementasi akan berbeda-beda untuk setiap permasalahan.

2.3 Peta

Peta adalah suatu alat peraga untuk menyampaikan suatu ide berupa sebuah gambar mengenai tinggi rendahnya suatu daerah (Topografi), penyebaran penduduk jaringan jalan dan hal lainnya yang berhubungan dengan kedudukan dalam ruang (Prahasta, E.

2009).

2.3.1 Proyeksi Peta

Proyeksi Peta adalah prosedur matematis yang memungkinkan hasil pengukuran yang dilakukan di permukaan bumi fisis bisa digambarkan diatas bidang datar (peta).

Karena permukaan bumi fisis tidak teratur maka akan sulit untuk melakukan perhitungan-perhitungan langsung dari pengukuran. Untuk itu diperlukan pendekatan secara matematis (model) dari bumi fisis tersebut (Prahasta, E. 2009). Pada gambar 2.8 menjelaskan tentang Proyeksi peta dan permukaan bumi ke bidang datar.

.

Gambar 2.8 Proyeksi Peta dari Permukaan Bumi ke Bidang Datar Sumber (Ira Mutiara. 2004. Pengukuran dan Pemetaan Kota, Surabaya.)

(25)

Proyeksi peta terdiri atas 3 jenis yaitu : a. Proyeksi Azimuthal

Bidang proyeksi yang digunakan adalah bidang datar. Sumbu simetri dari proyeksi ini adalah garis yang melalui pusat bumi dan tegak lurus terhadap bidang proyeksi.

b. Proyeksi Kerucut (Conic)

Bidang proyeksi yang digunakan adalah kerucut. Sumbu simetri dari proyeksi ini adalah sumbu dari kerucut yang melalui pusat bumi.

c. Proyeksi Silinder (Cylindrical)

Bidang proyeksi yang digunakan adalah silinder. Sumbu simetri dari proyeksi ini adalah sumbu dari silinder yang melalui pusat bumi.

Pada gambar 2.9 menjelaskan jenis proyeksi peta.

Gambar 2.9 Jenis Proyeksi Peta

Sumber (Ira Mutiara. 2004. Pengukuran dan Pemetaan Kota, Surabaya.)

2.4 Post GIS

PostGIS adalah extension dari PostgreSQL yang sifatnya object relational database server atau dapat diartikan memiliki sifat dengan kemampuan dapat menyimpan fitur SIG dalam database server. PostGIS merupakan software open source sehingga tidak perlu membeli lisensi untuk menggunakannya. PostGIS dikembangkan oleh Refractions Research of Victoria sebagai proyek penelitian database spasial.

(26)

PostGIS mempunyai karakteristik yang unik yang dapat membedakannya dengan database lainnya, seperti :

1. PostGIS mendukung semua fitur OGC (OpenGIS Consortium) yaitu seperti titik, garis, polygon, multipoint, multiline, multipoligon, dan Geometry Collection.

2. PostGIS menggunakan teks format OGC dalam perintah SQL untuk merepresentasikan fitur SIG.

3. PostGIS menyediakan proses indexing secara cepat dengan menggunakan GiST (General Search Tree) atau R-Tree Indexes.

2.5 Postgre SQL

PostgreSQL sering disebut Postgres yang merupakan salah satu dari sejumlah database open source yang menawarkan skalabilitas serta kinerja yang tinggi. SQL di PostgreSQL tidak seperti yang kita temui pada RDBMS umumnya. Perbedaanya adalah arsitektur PostgreSQL memungkinkan user untuk mendefenisikan sendiri SQL nya, terumata pada saat pembuatan function. Untuk platform Windows, PostgreSQL hanya dapat dijalankan di tipe format harddisk NTFS, jika tipe format FAT/FAT32 PostgreSQL tidak dapat diinstal.

PostgreSQL memiliki fasilitas untuk melakukan convert data ESRI Shapefile ke dalam database PostGIS / PostgreSQL. Fungsi yang digunakan adalah “shp2pgsql”

dengan beberapa opsional, seperti contoh di bawah ini :

1. –d : Menghapus table database sebelum membuat table baru dengan data Shapefile.

2. –a : Memasukkan data dari Shapefile ke dalam tabel database.

3. –c : Buat tabel baru. Ini merupakan opsi default.

4. –p : Hanya menghasilkan kode SQL hasil pembuatan tabel tanpa menambahkan data aktualnya.

5. –D : Menggunakan PostgreSQL “dump” format untuk keluaran.

6. –s <SRID> : Membuat GiST index dalam kolom geometry.

.

(27)

Selain itu, PostgreSQL juga memiliki fasilitas untuk melakukan convert data pada database PostGIS / PostgreSQL ke dalam ESRI Shapefile. Fungsi yang digunakan adalah “pgsql2shp” dengan beberapa opsi. Contoh :

pgsql2shp [<options>] <database> [<schema>.]<table>

pgsql2shp [<options>] <database> <query>

2.7 Algoritma Bellman-Ford

Algoritma Bellman-Ford menyelesaikan permasalahan lintasan terpendek dari satu sumber secara umum dimana bobot edge boleh negatif. Diberikan graf berbobot dan berarah G = (V, E) dengan sumber s dan bobot w, algoritma Bellman-Ford mengembalikan nilai boolean yang mengindikasikan ada atau tidak cycle berbobot negatif yang terjangkau dari sumber. Jika ada, maka tidak ada solusi yang diperoleh. Jika tidak ada cycle berbobot negatif maka akan diperoleh lintasan terpendek dan bobotnya. Cycle berbobot negatif adalah cycle dimana total bobotnya adalah negatif. (Cormen. T. 1998)

Algoritma Bellman-Ford dikembangkan oleh Richard Bellman and Lester Ford, Jr. Dalam algoritma Bellman-Ford ada tiga tahap yaitu :

1. Inisialisasi semua nilai pada graf, yaitu memberikan nilai jarak pada suatu simpul s dengan nilai infinity atau tak-hingga.

2. Menghitung semua jalur terpendek terhadap suatu simpul s menggunakan iterasi |V|-1.

3. Mengecek apakah ada sirkuit dengan berat atau bobot negatif.

Berikut akan disajikan algoritma umum dari Bellman-Ford dalam notasi matematika.

M[i,v] = min( M [i-1,v], ( M [i-1,n] +Cvn)) i=iterasi , v= vertex=node, n=node neighbor, C=cost

Untuk menerapkan Algoritma Bellman-Ford ada beberapa data yang harus dilakukan, yaitu:

1. Beberapa titik daerah yang bisa dijangkau secara langsung dan juga jarak antara daerah.

2. Menentukan daerah awal.

3. Menentukan daerah tujuan.

(28)

Jika dicontohkan dengan Graf pada Gambar 2.10

a

e

c b

f 7

7 6

8

2

-4 -3 5

8

0

8

8

8

9

Gambar 2.10 : Contoh Graf Pencarian Lintasan Terpendek Langkah-langkah pencariannya sebagai berikut :

1. Inisialisasi hanya d[a]= 0, lainnya

2. Iterasi pertama : dari semua pasangan hanya d[b] dan d[c] yang terupdate.

3. Iterasi kedua : dari semua pasangan hanya d[e] dan d[f] yang terupdate.

4. Iterasi ketiga : dari semua pasangan d[b] yang terupdate (d[b] terupdate yang kedua kalinya)

5. Iterasi keempat : dari semua pasangan d[f] yang terupdate (d[f] terupdate yang kedua kalinya).

(29)

BAB 3

ANALISIS DAN PERANCANGAN

3.1. Analisis Sistem

Analisis Sistem merupakan penguraian dari suatu informasi yang dibagi kedalam bagian komponen dengan maksud untuk mengidentifikasi, mengevaluasi permasalahan, kesempatan, hambatan yang terjadi dan kebutuhan yang diharapkan sehingga dapat diusulkan perbaikannya.

3.1.1. Analisis Masalah

Analisis masalah pada sistem yang akan dirancang dapat digambarkan dalam diagram Fishbone (Diagram Ishikawa) seperti pada gambar 3.1. Ishikawa Diagram (diagram fishbone) berbentuk tulang ikan yang merupakan buah pikiran dari Kaoru Ishikawa.

Ishikawa. Diagram adalah sebuah alat grafis yang digunakan untuk mengidentifikasi, mengeksplorasi dan mengambarkan suatu masalah, sebab dan akibat dari masalah itu.

Sering disebut diagram sebab-akibat atau diagram tulang ikan (Fishbone diagram) karena menyerupai tulang ikan.

CAUSE EFFECT

Gambar 3.1. Diagram Fishbone

Material

Adanya informasi jarak terpendek yang akan dilalui dari titik asal ke titik tujuan

Method

Penentuan Lintasan Terpendek

dengan Menggunakan

Algoritma Bellman-Ford

Berbasis SIG

Implementasi Algoritma Bellman- Ford untuk mencari jarak terpendek

People Machine

Membutuhkan informasi jarak terpendek menuju BICT dan sekitarnya Informasi jarak

terpendek ke BICT masih belum ada

(30)

Berdasarkan Gambar 3.1, masalah utama yang ditunjukkan oleh segiempat paling kanan (kepala ikan), yaitu menentukan lintasan terpendek menggunakan algoritma Bellman-Ford berbasis SIG. Sedangkan segiempat yang lainnya yang dihubungkan oleh sebuah garis ke tulang utama (garis horizontal yang terhubung ke kepala ikan) adalah kategori masalah. Garis horizontal selanjutnya yang ditunjukkan oleh tulang-tulang kecil yang diwakili oleh garis panah yang mengarah ke tulang- tulang kategori masalah adalah sebab dari masalah yang berbeda pada kepala.

3.1.2. Analisis Persyaratan

a. Fungsional

Persyaratan fungsional merupakan persyaratan yang dimiliki oleh sistem dalam menyelesaikan suatu masalah. Dalam hal ini persyaratan fungsional yang harus dimiliki sistem yaitu:

1. Pada proses input, sistem ini menggunakan lintasan terpendek yang rutenya di lihat dari jalan yang terbaca oleh google maps.

2. Metode yang diimplementasikan dalam sistem ini ialah proses pencarian lintasan terpendek dengan menggunakan Algoritma Bellman-Ford pada lintasan terpendek yang akan dicari.

b. Non-fungsional

Kebutuhan non-fungsional yang harus dipenuhi aplikasi yang dirancang adalah sebagai berikut:

1. User Friendly

Sistem yang dibangun harus User Friendly, artinya sistem ini dapat dengan mudah digunakan dan dimengerti oleh user sehingga menjadi salah satu solusi dalam mencari lintasan terpendek.

2. Software Pendukung

Sistem yang dibangun oleh penulis menggunakan semua Software Pendukung bersifat freeware sehingga tidak memerlukan izin atau hal-hal yang dapat merugikan pihak lain.

(31)

3. Fitur Tambahan

Sistem ini menambah beberapa fitur tambahan yaitu menyediakan beberapa fungsi yang akan menyimpan hasil dari pencarian lintasan terpendek.

4. Performa

Pencarian lintasan terpendek yang dilakukan oleh sistem akan mampu menunjukkan hasil akhir dari proses, yaitu jarak terpendek.

3.2. Pemodelan Aplikasi

Pemodelan aplikasi yang dirancang bertujuan untuk menggambarkan semua kondisi dan bagian-bagian yang berperan dalam sistem yang dirancang. Pemodelan Aplikasi dilakukan dengan membuat Use-Case Diagram, Activity Diagram, dan Sequence Diagram.

3.2.1. Use-Case Diagram

Untuk menganalisis komponen yang berperan dalam sistem yang dirancang, penulis menggunakan Use-Case Diagram agar proses penganalisis komponen dapat dilakukan dengan mudah. Use-Case diagram mempresentasikan sebuah interaksi antara actor dengan sistem. Use-Case Diagram sistem pada aplikasi yang dirancang dapat dilihat pada Gambar 3.2.

Bellman-Ford

<<extends>>

System

user

<<extends>>

Hitung dengan Algoritma Bellman-Ford Input Daerah Asal dan

Tujuan

Gambar 3.2. Use Case Diagram

(32)

Diagram Use-Case yang ditunjukkan pada gambar 3.2, user melakukan pencarian lintasan terpendek dengan menginputkan daerah asal dan daerah tujuan denga menggunakan Algoritma Bellman-Ford kemudian melihat hasil dari lintasan terpendek yang telah dicari.

3.2.2 Activity Diagram

Dalam proses Diagram Aktivitas yang akan digambarkan pada Gambar 3.3 maka akan dijelaskan proses kerja dari sistem dalam proses memilih algoritma serta memilih daerah asal dan daerah tujuan yang dilakukan oleh (user). Activity Diagram sistem pada aplikasi yang dirancang dapat dilihat pada Gambar 3.3.

Pilih Daerah Asal dan Tujuan, tekan tombol proses

Proses Shortest Path

Baca jarak daerah asal dan tujuan

Jumlahkan semua jarak yang dilalui

Pilih hasil penjumlahan terkecil

Menampilkan hasil Belman-ford (Hasil jarak terpendek)

User System

Gambar 3.3. Activity Diagram dengan Proses Algoritma Bellman-Ford

Diagram activity pada gambar 3.3 ini menjelaskan tentang pencarian jarak terpendek menggunakan algoritma Bellman-Ford, yang mana user akan menginput daerah asal dan sistem akan mulai mengevaluasi node demi node dan membandingkan node terdekat menuju BICT dengan menggunakan algoritma Bellman-Ford. Setelah mendapat perhitungan jarak terpendek maka akan ditampilkan jarak tersebut ke user dan sistem akan berhenti.

(33)

3.2.3 Sequence Diagram

Gambar 3.4. Sequence Diagram

Pada gambar 3.4 digambarkan aliran pesan dari Sequence Diagram pencarian jarak terpendek. Masing-masing pesan mengambarkan suatu objek yang membuat suatu pemanggilan objek yang lain saling berkaitan dalam suatu proses penentuan jarak terpendek.

user Input Database Perhitungan

Bellman-Ford

Jumlahkan nilai jarak yang dilalui, Pilih hasil penjumlahan

dengan nilai terkecil dari semua tiitik.

Jarak terpendek ditemukan Buka Aplikasi

Tampilkan Aplikasi

Pilih daerah asal dan

tujuan Mengambil niai jarak dari database

(34)

3.3. Perancangan Aplikasi

Pada Perancangan Aplikasi penentuan lintasan terpendek ini akan dijelasakan mengenai rancangan aplikasi yang akan dikerjakan serta fitur-fitur yang akan digunakan pada aplikasi yang akan dibuat..

Pada Gambar 3.5 merupakan Flowchart yang akan menggambarkan bagaimana cara kerja aplikasi yang akan berjalan dalam penentuan lintasan terpendek.

Mencari lokasi awal

& tujuan Input lokasi

awal dan tujuan

Mulai

Selesai Menampilkan jarak terpendek Menghitung jalur dengan iterasi |V|-1 Inisialisasi nilai graf

dengan 0 &

Mengecek sirkuit yang berbobot negatif

Lokasi tersedia

Ya

Tidak

Gambar 3.5 Diagram Alur Algoritma Bellman-Ford

(35)

3.4 Analisis Algoritma Bellman-Ford dalam Mencari Rute Terpendek

Untuk menerapkan Algoritma Bellman-Ford ada beberapa data yang harus dilakukan, yaitu:

1. Beberapa titik daerah yang bisa dijangkau secara langsung dan juga jarak antara daerah.

2. Menentukan daerah awal.

3. Menentukan daerah tujuan.

Jika dicontohkan dengan Graf pada Gambar 3.6.

A

E

C B

D 10 km

9 km 12 km

10 km

18 km

10 km 5 km F

4 km

5 km

Gambar 3.6. Contoh Graf Pencarian Lintasan Terpendek

Jika titik A adalah titik awal dan titik E adalah tujuan. Kemudian kita akan mencari lintasan manakah yang harus dilewati dan memiliki total jarak yang paling dekat. Langkah-langkah pencariannya sebagai berikut :

Langkah 1. Inisialisasi hanya d[a]= 0, lainnya

A

E

C B

D 10 km

9 km 12 km

10 km

18 km

10 km

F 5 km

4 km

5 km 0

Gambar 3.7. Graf Penandaan simpul

(36)

Keterangan :

Pada Gambar 3.7, A adalah titik awal, maka d[a]= 0, dan titik lainy .

Langkah 2. Melakukan Relaxing pada titik yang bersinggungan langsung dengan titik asal.

A

E

C B

D 10 km

9 km 12 km

10 km

18 km

10 km

F 5 km

4 km

5 km 12

9 0

Gambar 3.8. Graf Relaxing tahap 1 Keterangan :

Pada Gambar 3.8 dilakukan Relaxing pada titik yang bersinggungan langsung dengan titik asal. Relaxing disini berarti membandingkan bobot suatu titik, dalam hal ini titik B diberi bobot 12, hal ini terjadi karena 12 adalah besar bobot yang menghubungkan titik asal dengan titik B, dan 12 lebih kecil dari nilai sebelumnya yaitu infinity.

Demikian halnya yang terjadi pada titik C, titik C diberi bobot 9 karena bobot sisi yang menghubungkan antara titik C dan titik asal adalah 9 yang dalam hal ini lebih kecil dari nilai sebelumnya yaitu infinity.

Langkah 3. Melakukan Relaxing pada titik berikutnya.

A

E

C B

D 10 km

9 km 12 km

10 km

18 km

10 km 5 km F

4 km

5 km 12

9 17

22 26

Gambar 3.9. Graf Relaxing tahap 2

(37)

Keterangan :

Pada Gambar 3.9, titik D berbobot 17, karena bobot titik yang berhubungan dengan titik D ditambah bobot sisi yang menghubungkannya yang paling kecil berasal dari titik B yang nilainya adalah 12 (hasil penjumlahan 12 + 5). Titik F bernilai 22 karena bobot hubungannya adalah titik D yaitu hasil penjumlahan 17 + 5. Titik E bernilai 26 karena bobot hubungan terkecil yang dimilikinya adalah keterhubungan dengan titik F yaitu penjumlahan 22+4.

Hasil dari pencarian yang telah dilakukan berdasarkan jarak tempuh dengan menggunakan Algoritma Bellman-Ford, maka didapat titik A-B-D-F-E dimana didapat jarak tempuhnya adalah 26 km

3.4.1 Pseudocode Bellman-Ford record titik {

list sisi2 real jarak titik sebelum }

record sisi { titik dari titik ke real bobot }

Function BellmanFord

(list semuatitik, list semuasisi, titik dari) for each titik v in semuatitik:

if v is dari then v.jarak = 0 else v.jarak := tak-hingga v.sebelum := null

for i from1 to size (semuatitik):

for each sisi uv in semuasisi:

u := uv.dari v := uv.ke

if v.jarak > u.jarak + uv.bobot v.jarak := u.jarak + uv.bobot v.sebelum := u

for each sisi uv in semuasisi:

u := uv.dari v := uv.ke

if v.jarak > u.jarak + uv.bobot

error"Graph mengandung siklus berbobot total negatif"

(38)

3.5 Database

Adapun struktur tabel database dalam perancangan ada 5 tabel yaitu tabel_awal, tabel_jarak, tabel_node, tabel_tujuan, dan tabel_langkah yang dijabarkan dalam struktur tabel sebagai berikut :

1. Tabel tabel_awal

Tabel 3.1 Tabel tabel_awal

Field Name Type Width Description

gid Int 4 Nomor id

id Int 4 Nomor urut

nama Varchar 80 Nama node

ket Varchar 80 Keterangan Node

the_geom Geometry Geometri

2. Tabel tabel_tujuan

Tabel 3.2 Tabel tabel_tujuan

Field Name Type Width Description

gid Int 4 Nomor id

id Int 4 Nomor urut

nama Varchar 80 Nama node

ket Varchar 80 Keterangan Node

the_geom Geometry Geometri

3. Tabel tabel_jarak

Tabel 3.3 Tabel tabel_jarak

Field Name Type Width Description

gid Int 4 Nomor id

id Int 4 Nomor urut

awal 80 Titik Awal

akhir 80 Titik Akhir

(39)

jarak Jarak

the_geom Geometry Geometri

ket tex Keterangan

4. Tabel tabel_node

Tabel 3.4 Tabel tabel_node

Field Name Type Width Description

gid Int 4 Nomor id

id Int 4 Nomor urut

nama Varchar 80 Nama

ket Varchar 80 Keterangan

at Varchar 80 Letak posisi

the_geom Geometry Geometri

kode Varchar 80 Kode

5. Tabel tabel_langkah

Tabel 3.4 Tabel tabel_langkah

Field Name Type Width Description

gid Int 4 Nomor id

id Int 4 Nomor urut

langkah Varchar 80 Langkah

the_geom Geometry Geometri

(40)

3.6 Entity Relationship Diagram (ERD)

Entity Relationship Diagram (ERD) merupakan suatu teknik pemodelan data yang menggambarkan entitas dan hubugan antar entitas dalam sebuah sistem informasi.

Tabel tabel_awal gid

Id nama ket the_geom

Tabel tabel_tujuan gid

id nama ket the_geom

Tabel tabel_jarak gid

id awal akhir jarak the_geom ket ambil

Tabel tabel_node gid

id nama ket at the_geom kode

ambil ambil

Tabel tabel_langkah gid

id langkah the_geom

ambil

Gambar 3.10. Entity Relationship Diagram (ERD)

3.7 Perancangan Antarmuka (Interface)

Rancangan ini adalah rancangan pencarian rute terpendek dimana tampilan awalnya yang akan muncul pada saat sistem dijalankan. Berikut merupakan tampilan dari interface yang akan dirancang dapat dilihat pada Gambar 3.11.

(41)

Gambar 3.11. Perancangan Interface

Keterangan gambar 3.11

Header : bagian paling atas dari website yang biasanya berisi gambar website, dan nama website.

Menu : Untuk menyambungkan halaman yang satu dengan halaman yang lainnya.

Peta : Menampilkan gambar peta yang berfungsi untuk menunjukkan rute / jalan menuju BICT dan 8 titik berupa tempat-tempat penting di Belawan (terminal penumpang pelabuhan Belawan, kantor bank, rumah sakit dan beberapa cabang Pelindo).

Daerah asal : Berupa combo box yang menampilkan titik-titik awal/ asal untuk menuju BICT dan 8 titik berupa tempat-tempat penting di Belawan.

Daerah tujuan : BICT dan 8 titik berupa tempat-tempat penting di Belawan.

HEADER

Beranda Bellman-Ford Tentang

1

2

Gambar Peta

Pilih Daerah Asal

Pilih Daerah Tujuan

Proses Reset

Pencarian Rute Terpendek Dengan Algoritma Bellman-Ford

3

4

5

6 7

(42)

IMPLEMENTASI DAN PENGUJIAN

Bab ini membahas tentang implementasi dari sistem yang telah dianalisis dan dibangun dengan menggunakan bahasa pemrograman PHP dan PostgreSQL sebagai DBMS-nya serta akan dilakukan pengujian program.

4.1 Implementasi

4.1.1 Implementasi Algoritma Bellman-Ford

Pada bagian ini dibahas studi kasus terhadap implementasi algoritma Bellman-Ford.

Adapun sebagai contoh diambil graf berbobot yang menghubungan antar jalan dari Stasiun Kereta Api Medan menuju BICT. Ilustrasi graf dapat dilihat pada gambar di bawah ini :

Gambar 4.1 : Contoh Graf Pencarian Lintasan Terpendek Untuk memulai perhitungan menggunakan algoritma Bellman-Ford node awal harus diberikan nilai 0 dan node yang lain hingga node akhir diberikan nilai ∞.

(43)

Tabel 4.1 Tabel Awal Perhitungan Algoritma Bellman-Ford

KA RSP TP BNI MANDIRI PELINDO

1 KK KBC KOP BMKG BICT

0 0

Pada tabel 4.1 adalah tahapan pertama dalam menghitung algoritma Bellman-Ford. Node awal harus diberikan nilai 0 dan node yang lain hingga node akhir diberikan nilai ∞.

4.1.1.1 Iterasi Pertama

Dalam perhitungan ini menggunakan rumus Bellman-Ford yang sesuai pada landasan teori yaitu

M [i,v] = min( M [i-1,v] , (M [i-1,n]+ Cvn)) i = iterasi, v = vertex = node, n = node neighbor, C = cost

Saat ini perhitungannya untuk menentukan iterasi yang pertama dimana nilai dari masing-masing node masih ∞ dan akan di tambahkan cost atau bobot jarak yang ditempuh dari node awal ke node tujuan. Berikut perhitugan untuk iterasi yang pertama.

M[1,RSP] = min(M[0,RSP],(M[0,KA])+CRSPKA)

= min(∞,(0+22.8km)) = min(∞,22.8)= 22.8 km

Tabel 4.2 Perhitungan Algoritma Bellman-Ford iterasi pertama

KA RSP TP BNI MANDIRI PELINDO

1 KK KBC KOP BMKG BICT

0 0

1 0 22.8

Pada Tabel 4.2 diketahui nilai bobot node RSP sebesar 22.8 km sedangkan node yang lain masih bernilai ∞, karena dalam perbandingan perhitungan sesuai rumus jika

(44)

di hitung akan tetap bernilai ∞ dikarenakan yang terhubung langsung terhadap node KA hanya node RSP.

4.1.1.2 Iterasi Kedua

Perhitungan iterasi kedua sebagai berikut :

M[2,TP] = min(M[1,TP],(M[1,RSP])+CTPRSP)

= min(∞,(0.8 km+ 22.8 Km)) = min(∞,23.6)= 23.6 km

Tabel 4.3 Perhitungan Algoritma Bellman-Ford iterasi kedua

KA RSP TP BNI MANDIRI PELINDO

1 KK KBC KOP BMKG BICT

0 0

1 0 22.8

2 0 22.8 23.6 ∞

Pada Tabel 4.3 diketahui nilai bobot node TP sebesar 23.6 km sedangkan node yang lain masih bernilai ∞, karena dalam perbandingan perhitungan sesuai rumus jika di hitung akan tetap bernilai ∞ dikarenakan yang terhubung langsung terhadap node RSP adalah node TP.

4.1.1.3 Iterasi Ketiga

Perhitungan iterasi ketiga sebagai berikut : M[3,BNI] = min(M[2,BNI],(M[2,TP])+CTPBNI)

= min(∞,(3.6 km+ 23.6 km)) = min(∞,27.2 km)= 27.2 km

(45)

Tabel 4.4 Perhitungan Algoritma Bellman-Ford iterasi ketiga

KA RSP TP BNI MANDIRI PELINDO

1 KK KBC KOP BMKG BICT

0 0

1 0 22.8

2 0 22.8 23.6 ∞

3 0 22.8 23.6 27.2

Pada Tabel 4.4 diketahui nilai bobot node BNI sebesar 27.2 km sedangkan node yang lain masih bernilai ∞, dikarenakan yang terhubung langsung terhadap node TP hanya node BNI .

4.1.1.4 Iterasi Keempat

Perhitungan iterasi keempat sebagai berikut :

M[4,MANDIRI] = min(M[3,MANDIRI],(M[3,BNI])+CBNIMANDIRI) = min(∞,( 400 m + 27.2 km)) = min(∞, 27.6 km)= 27.6 km M[4,PELINDO1] = min(M[3,PELINDO1],(M[3,BNI])+CBNIPELINDO1) = min(∞,(500 m+ 27.2 km)) = min(∞, 27.7 km)= 27.7 km

Tabel 4.5 Perhitungan Algoritma Bellman-Ford iterasi keempat

KA RSP TP BNI MANDIRI PELINDO

1 KK KBC KOP BMKG BICT

0 0

1 0 22.8

2 0 22.8 23.6 ∞

3 0 22.8 23.6 27.2

4 0 22.8 23.6 27.2 27.6 27.7

(46)

Pada Tabel 4.5 diketahui nilai bobot node MANDIRI sebesar 27.6 km dan node PELINDO 1 sebesar 27.7 km dikarenakan kedua node tersebut terhubung langsung terhadap node BNI.

4.1.1.5 Iterasi Kelima

Perhitungan iterasi kelima sebagai berikut :

M[5,KK] = min(M[4,KK],(M[4,PELINDO1])+CPELINDO1KK)

= min(∞,( 270 m +27.7 km)) = min(∞, 27.97km)= 27.97 km M[5,KBC] = min(M[4,KBC],(M[4,PELINDO1])+CPELINDO1KBC) = min(∞,( 350km+ 27.7 km)) = min(∞,28.05 km)= 28.05 km M[5,BMKG] = min(M[4,BMKG],(M[4,MANDIRI)+CMANDIRIBMKG) = min(∞,( 3.8 km+ 27.6 km)) = min(∞,31.4 km)= 31.4 km

Tabel 4.6 Perhitungan Algoritma Bellman-Ford iterasi kelima

KA RSP TP BNI MANDIRI PELINDO

1 KK KBC KOP BMKG BICT

0 0

1 0 22.8

2 0 22.8 23.6 ∞

3 0 22.8 23.6 27.2

4 0 22.8 23.6 27.2 27.6 27.7

5 0 22.8 23.6 27.2 27.6 27.7 27.97 28.05 ∞ 31.4

Pada Tabel 4.6 diketahui nilai bobot node KK dan KBC dikarenakan node KK dan KBC tersebut terhubung langsung terhadap node PELINDO1. Dan node BMKG terhubung langsung dengan node MANDIRI.

(47)

4.1.1.6 Iterasi Keenam

Perhitungan iterasi keenam sebagai berikut :

M[6,KOP] = min(M[5,KOP],(M[5,KBC])+CKBCKOP)

= min(∞,( 1.4 km+ 28.05 km)) = min(∞, 29.45km)= 29.45 km

Tabel 4.7 Perhitungan Algoritma Bellman-Ford iterasi keenam

KA RSP TP BNI MANDIRI PELINDO

1 KK KBC KOP BMKG BICT

0 0

1 0 22.8

2 0 22.8 23.6 ∞

3 0 22.8 23.6 27.2

4 0 22.8 23.6 27.2 27.6 27.7

5 0 22.8 23.6 27.2 27.6 27.7 27.97 28.05 ∞ 31.4

6 0 22.8 23.6 27.2 27.6 27.7 27.97 28.05 29.45 31.4

Pada Tabel 4.7 diketahui nilai bobot node KOP sebesar 29.45 km dikarenakan node tersebut terhubung langsung terhadap node KBC.

Gambar

Gambar 2.7 : Ilustrasi Subsistem SIG Sumber (Prahasta, E. 2009. Sistem  Informasi Geografis Konsep-Konsep Dasar, Informatika, Bandung.)
Gambar 2.8 Proyeksi Peta dari Permukaan Bumi ke Bidang Datar  Sumber (Ira Mutiara. 2004
Gambar 2.9 Jenis Proyeksi Peta
Gambar  2.10 : Contoh Graf Pencarian Lintasan Terpendek  Langkah-langkah pencariannya sebagai berikut :
+7

Referensi

Dokumen terkait

[r]

Instrumen dalam penelitian ini menggunakan human instrument, yaitu peneliti sendiri menentukan proses pembentukan istilah medis, makna istilah medis, dan prosedur pembentukan

Syukur Alhamdulillah dan Subhanallah atas segala rahmat, karunia Allah SWT, sehingga penulis memiliki kekuatan, kesabaran, dan kepercayaan untuk menyelesaikan tugas

Rencana kegiatan yang dilakukan meliputi pelatihan deteksi dini pertumbuhan balita, pelatihan deteksi dini penyimpangan perkembangan balita, workshop stimulasi perkembangan

pemakaiannya, maka penggabungan ketiga jenis pengukuran antara lain gula darah, tekanan darah dan denyut nadi menjadi satu alat pengukuran yang bekerja secara otomatis dan

Setidaknya dari hasil pengamatan penulis baik dari data-data maupun dari pengamatan secara langsung dilapangan ada 3 (tiga) faktor yang mempengaruhi keberhasilan mediasi

Rencana Aksi/Rencana Tindaklanjut Pemanfaatan Rekomendasi Kebijakan Hasil Kajian B12: Evaluasi atas Implementasi Rencana Aksi/Rencana Tindaklanjut Pemanfaatan Rekomendasi