Design Of Shortest Path Determination System For Tsunami Evacuation Route With Ant Colony Algorithm (Case Study: Belawan)

(1)

PERANCANGAN SISTEM PENENTUAN RUTE TERPENDEK

JALUR EVAKUASI TSUNAMI DENGAN ALGORITMA

ANT COLONY

(STUDI KASUS: BELAWAN)

SKRIPSI

EKO VERDIANTO

081401034

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2013


(2)

PERANCANGAN SISTEM PENENTUAN RUTE TERPENDEK JALUR EVAKUASI TSUNAMI DENGAN ALGORITMA ANT COLONY

(STUDI KASUS: BELAWAN)

SKRIPSI

Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar Sarjana Komputer

EKO VERDIANTO 081401034

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2013


(3)

PERSETUJUAN

Judul : PERANCANGAN SISTEM PENENTUAN RUTE

TERPENDEK JALUR EVAKUASI TSUNAMI DENGAN ALGORITMA ANT COLONY (STUDI KASUS: BELAWAN)

Kategori : SKRIPSI

Nama : EKO VERDIANTO

Nomor Induk Mahasiswa : 081401034

Program Studi : SARJANA (S1) ILMU KOMPUTER

Departemen : ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI (FASILKOM-TI) UNIVERSITAS SUMATERA UTARA

Diluluskan di

Medan, 16 April 2013

Komisi Pembimbing :

Pembimbing II, Pembimbing I,

Ade Candra, S.T., M.Kom Dr. Poltak Sihombing, M.Kom NIP: 197909042009121002 NIP: 196203171991021001

Diketahui/Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP. 196203171991031001


(4)

PERNYATAAN

PERANCANGAN SISTEM PENENTUAN RUTE TERPENDEK JALUR EVAKUASI TSUNAMI DENGAN ALGORITMA ANT COLONY

(STUDI KASUS: BELAWAN)

SKRIPSI

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

Medan, 16 April 2013

EKO VERDIANTO 081401034


(5)

PENGHARGAAN

Alhamdulillah. Puji dan syukur penulis ucapkan kepada Allah SWT atas limpahan rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi ini sebagai syarat untuk memperoleh gelar Sarjana Komputer, Program Studi Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. Kemudian Shalawat dan salam penulis ucapkan kepada Rasulullah Muhammad SAW.

Pada pengerjaan skripsi dengan judul Perancangan Sistem Penentuan Rute Terpendek Jalur Evakuasi Tsunami dengan Algoritma Ant Colony, penulis menyadari bahwa banyak campur tangan pihak yang turut membantu dan memotivasi dalam pengerjaannya. Dalam kesempatan ini, penulis mengucapkan terima kasih kepada:

1. Bapak Prof. Dr. dr. Syahril Pasaribu, DTM&H, MSc(CTM). Sp.A(K), selaku Rektor Universitas Sumatera Utara.

2. Bapak Prof. Dr. Muhammad Zarlis, M.Sc., selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informas Universitas Sumatera Utara.

3. Bapak Dr. Poltak Sihombing, M.Kom, selaku Ketua Program Studi Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

4. Ibu Maya Silvi Lydia, B.Sc., M.Sc selaku Sekretaris Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

5. Bapak Dr. Poltak Sihombing, M.Kom dan Bapak Ade Candra S.T., M.Kom selaku dosen pembimbing yang telah memberikan arahan dan motivasi kepada penulis dalam pengerjaan skripsi ini.

6. Bapak Drs. Muhammad Firdaus, M.Si dan Ibu Maya Silvi Lydia, B.Sc., M.Sc. sebagai dosen penguji yang telah memberikan saran dan kritik kepada penulis dalam penyempurnaan skripsi ini.

7. Seluruh dosen Program Studi S1 Ilmu Komputer Fasilkom-TI USU dan semua pegawai Program Studi S1 Ilmu Komputer Fasilkom-TI USU.

8. Ayahanda Bambang Joko Prasetyo dan Ibunda Kasihati yang telah memberikan do’a, dukungan, perhatian serta kasih sayang yang tulus serta pengorbanan yang tidak ternilai harganya.

9. Teman-teman seperjuangan mahasiswa S1-Ilmu Komputer stambuk 2008, Tengku Surya Pramana, Zainuddin Siregar, Ahmad Royhan P.S, Nurul Akhmaliyah, Siska


(6)

Anggraini, Brikson, Mirnawati, Nassan Siregar dan teman-teman lain yang telah memberikan motivasi, arahan dan perhatiannya.

10.Teman-teman Asisten Laboratorium (IKLC), Ramrudin, Arifin, Fauzana, Isman Santoso, Mahadi Z, Basrah Nasution, Mhd. Arisandy Pratama, Azizah Mei Sari Sebayang, Nurhennida, dan asisten laboratorium yang lainnya yang telah memberikan semangat dan dorongan.

11.Adik-adik angkatan 2009 yang telah membakar semangat untuk menyelesaikan penyelesaian skripsi ini.

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

Penulis menyadari bahwa skripsi ini masih jauh dari kesempurnaan, oleh karena itu penulis menerima saran dan kritik yang bersifat membangun demi kesempurnaan skripsi ini. Sehingga dapat bermanfaat bagi kita semuanya.

Medan, 16 April 2013


(7)

ABSTRAK

Tahun 2004, Indonesia dikejutkan oleh tragedi tsunami yang menghancurkan sebagian besar pesisir pantai utara Sumatera, terutama kota Banda Aceh. Tsunami tersebut menyebabkan sekitar lebih dari 230.000 jiwa meninggal. Upaya evakuasi diperlukan untuk mencegah terjadinya korban akibat tsunami, oleh karena itu rute evakuasi yang efektif perlu dibuat. Teknologi informasi yang semakin berkembang memungkinkan pengaplikasian sistem informasi geografis untuk penentuan jalur evakuasi tsunami. Salah satu metode yang dapat digunakan pada sistem informasi geografis untuk mencari rute yang tepat yang dapat dijadikan jalur evakuasi tsunami adalah Algoritma

AntColony. Algoritma Ant Colony atau disebut juga Ant Colony Optimization (ACO),

merupakan metode pencarian metaheuristik yang diinspirasi oleh perilaku semut dalam menyelesaikan permasalahan optimisasi, termasuk dalam permasalahan pencarian rute terpendek. Algoritma Ant Colony dapat digunakan untuk mencari rute terpendek menuju tempat yang aman dari tsunami, sehingga dapat digunakan sebagai jalur evakuasi. Pengujian pada daerah belawan terbukti bahwa sistem dapat menghasilkan rute terpendek yang dapat dijadikan sebagai jalur evakuasi tsunami. Sistem memerlukan waktu sekitar 1 menit 22.4 detik untuk mendapatkan rute terpendek tersebut.

Katakunci : Algoritma AntColony, Algoritma Ant Colony System, ArcView GIS 3.3, Sistem Informasi Geografis, Rute Terpendek.


(8)

DESIGN OF SHORTEST PATH DETERMINATION SYSTEM FOR TSUNAMI EVACUATION ROUTE WITH ANT COLONY ALGORITHM

(CASE STUDY: BELAWAN)

ABSTRACT

In 2004, Indonesia struck by the tsunami tragedy that destroyed most of the northern coast of Sumatra, especially the city of Banda Aceh. The tsunami left an estimated more than 230,000 people dead or missing persons list. Evacuation effort is needed to prevent the victims of the tsunami, therefore an effective evacuation routes need to be made. With the growing of the information technology, allows us to apply geographic information systems for determining tsunami evacuation routes. One method that can be used in geographic information system to find the exact route that can be used as a tsunami evacuation route is the Ant Colony Algorithm. Ant Colony Algorithm also called Ant Colony Optimization (ACO), a metaheuristic search methods that are inspired by the behavior of ants in solving optimization problems, including the problem for searching the shortest route. Ant Colony Algorithm is used to generate the shortest route to get to the safe haven from the tsunami, so it can be used as an evacuation route. The testing at belawan is shown that system can determine a shortest path which can be used as tsunami evacuation route. The system takes about 1 minute 22.4 seconds to determine the shortest path.

Keywords : Ant Colony Algorithm, Ant Colony System Algorithm, Arc View GIS 3.3, Geographic Information System, Shortest Path.


(9)

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.1Latar Belakang 1

1.2Rumusan Masalah 3

1.3Batasan Masalah 4

1.4Tujuan Penelitian 4

1.5Manfaat Penelitian 5

1.6Metode Penelitian 5

1.7Sistematika Penulisan 6

Bab 2 Tinjauan Pustaka

2.1 Tsunami 8

2.2 Graph 10

2.2.1 Macam-macam Graph Menurut Arah dan Bobotnya 10

2.3 Algoritma AntColony 12

2.3.1 AntColonySystem (ACS) 13

2.3.1.1 Aturan Transisi Status 14

2.3.1.2 Aturan Pembaruan Pheromone Lokal 15 2.3.1.3 Aturan Pembaruan Pheromone Global 15 2.3.1.4 Penjelasan Alur Kerja Algoritma AntColonySystem 16

2.4 Sistem Informasi Geografis 18

2.4.1 Komponen Sistem Informasi Geografis 19

Bab 3 Analisis Dan Perancangan Sistem

3.1 Analisis Sistem 21

3.1.1 Analisis Masalah 21

3.1.2 Analisis Kebutuhan Sistem 22

3.1.2.1 Kebutuhan Fungsional Sistem 22

3.1.2.2 Kebutuhan Non-Fungsional Sistem 22

3.1.3 Pemodelan 23

3.1.3.1 Use Case Diagram 23

3.1.3.2 Activity Diagram 24

3.1.3.2.1 Activity Diagram Tampil Peta Belawan 24 3.1.3.2.2 Activity Diagram Pencarian Rute 26


(10)

3.1.3.3 Sequence Diagram 28 3.1.3.3.1 Sequence Diagram Tampil Peta Belawan 28 3.1.3.3.2 Sequence Diagram Pencarian Rute 29

3.2 Perancangan Sistem 30

3.2.1 Antarmuka Tampil Peta Belawan 30

3.2.2 Antarmuka Pencarian Rute 31

Bab 4 Implementasi Dan Pengujian Sistem

4.1 Implementasi Sistem 33

4.1.1 Implementasi Algoritma AntColonySystem 33 4.1.1.1 Proses Pencarian Rute Terpendek Titik t95 36

4.1.2 Tampilan Peta Belawan 53

4.1.2 Tampilan Pencarian Rute 55

4.2 Pengujian Sistem 59

4.2.1 Pengujian Sistem dengan Radius 4 km 60 4.2.2 Pengujian Sistem dengan Radius 5 km 61 4.2.3 Pengujian Sistem dengan Radius 7 km 63

Bab 5 Kesimpulan Dan Saran

5.1 Kesimpulan 66

5.2 Saran 66

Daftar Pustaka 67


(11)

DAFTAR TABEL

Halaman

3.1 Dokumentasi Naratif Use Case Lihat Peta Daerah Belawan 24 3.2 Dokumentasi Naratif Use Case Proses Pencarian Rute 26 4.1 Daftar Atribut Jalan pada Daerah Belawan 35

4.2 Hasil Siklus 1 49

4.3 Daftar Atribut Jalan yang Telah Diupdate 51 4.4 Hasil Pengujian Sistem dengan Nilai Inputan Radius 4 km 60 4.5 Hasil Pengujian Sistem dengan Nilai Inputan Radius 5 km 62 4.6 Hasil Pengujian Sistem dengan Nilai Inputan Radius 7 km 63


(12)

DAFTAR GAMBAR

Halaman

2.1 Tsunami saat Menerjang Daratan 9

2.2 Graph dengan 4 verteks dan 5 edges 10

2.3 Graph berarah dan berbobot 11

2.4 Graph tidak berarah dan berbobot 11

2.5 Graph berarah dan tidak berbobot 11

2.6 Graph tidak berarah dan tidak berbobot 12

2.7 Flowchart Ant Colony System 17

3.1 Diagram Ishikawa untuk Analisis Permasalah Sistem 22 3.2 UseCase Diagram Sistem Penentuan Rute Terpendek Jalur

Evakuasi Tsunami 24

3.3 Activity Diagram Tampil Peta Belawan 25

3.4 Activity Diagram Pencarian Rute 27

3.5 SequenceDiagram Tampil Peta Belawan 28

3.6 Sequence Diagram Pencarian Rute 29

3.7 Rancangan Antarmuka Tampil Peta Belawan 30

3.8 Rancangan Antarmuka Pencarian Rute 32

4.1 Tampilan Titik t95 pada Peta Belawan 34

4.2 Tampilan Peta Belawan 53

4.3 Detail Keterangan Legenda 54

4.4 Keterangan Komponen Legenda pada Peta 54

4.5 Tampilan Detail Legenda dan Detail Komponen Legenda 55

4.6 Tampilan Pencarian Rute 55

4.7 Titik Acuan yang Berada di Radius Tsunami 56

4.8 Tampilan Message Box Rute Ditemukan 56

4.9 Rute Terpendek Ditampilkan pada Peta Daerah Belawan 57

4.10 Message Box Konfirmasi Pencarian Ulang 57

4.11 Informasi Rute 57

4.12 Message Box Informasi Kompoen Rute Terpendek 58 4.13 Informasi Komponen Rute Terpendek Ditampilkan 58 4.14 Hasil Pencarian Rute Kawasan t95 pada Radius 4 km 61 4.15 Hasil Pencarian Rute Kawasan t151 pada Radius 5 km 62 4.16 Hasil Pencarian Rute Kawasan pada Radius 7 km 65


(13)

ABSTRAK

Tahun 2004, Indonesia dikejutkan oleh tragedi tsunami yang menghancurkan sebagian besar pesisir pantai utara Sumatera, terutama kota Banda Aceh. Tsunami tersebut menyebabkan sekitar lebih dari 230.000 jiwa meninggal. Upaya evakuasi diperlukan untuk mencegah terjadinya korban akibat tsunami, oleh karena itu rute evakuasi yang efektif perlu dibuat. Teknologi informasi yang semakin berkembang memungkinkan pengaplikasian sistem informasi geografis untuk penentuan jalur evakuasi tsunami. Salah satu metode yang dapat digunakan pada sistem informasi geografis untuk mencari rute yang tepat yang dapat dijadikan jalur evakuasi tsunami adalah Algoritma

AntColony. Algoritma Ant Colony atau disebut juga Ant Colony Optimization (ACO),

merupakan metode pencarian metaheuristik yang diinspirasi oleh perilaku semut dalam menyelesaikan permasalahan optimisasi, termasuk dalam permasalahan pencarian rute terpendek. Algoritma Ant Colony dapat digunakan untuk mencari rute terpendek menuju tempat yang aman dari tsunami, sehingga dapat digunakan sebagai jalur evakuasi. Pengujian pada daerah belawan terbukti bahwa sistem dapat menghasilkan rute terpendek yang dapat dijadikan sebagai jalur evakuasi tsunami. Sistem memerlukan waktu sekitar 1 menit 22.4 detik untuk mendapatkan rute terpendek tersebut.

Katakunci : Algoritma AntColony, Algoritma Ant Colony System, ArcView GIS 3.3, Sistem Informasi Geografis, Rute Terpendek.


(14)

DESIGN OF SHORTEST PATH DETERMINATION SYSTEM FOR TSUNAMI EVACUATION ROUTE WITH ANT COLONY ALGORITHM

(CASE STUDY: BELAWAN)

ABSTRACT

In 2004, Indonesia struck by the tsunami tragedy that destroyed most of the northern coast of Sumatra, especially the city of Banda Aceh. The tsunami left an estimated more than 230,000 people dead or missing persons list. Evacuation effort is needed to prevent the victims of the tsunami, therefore an effective evacuation routes need to be made. With the growing of the information technology, allows us to apply geographic information systems for determining tsunami evacuation routes. One method that can be used in geographic information system to find the exact route that can be used as a tsunami evacuation route is the Ant Colony Algorithm. Ant Colony Algorithm also called Ant Colony Optimization (ACO), a metaheuristic search methods that are inspired by the behavior of ants in solving optimization problems, including the problem for searching the shortest route. Ant Colony Algorithm is used to generate the shortest route to get to the safe haven from the tsunami, so it can be used as an evacuation route. The testing at belawan is shown that system can determine a shortest path which can be used as tsunami evacuation route. The system takes about 1 minute 22.4 seconds to determine the shortest path.

Keywords : Ant Colony Algorithm, Ant Colony System Algorithm, Arc View GIS 3.3, Geographic Information System, Shortest Path.


(15)

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Tahun 2004, Indonesia dikejutkan oleh tragedi tsunami yang menghancurkan sebagian besar pesisir pantai utara Sumatera, terutama kota Banda Aceh. Dengan ketinggian gelombang hampir 35 meter, merupakan gelombang tsunami tertinggi yang pernah terjadi, menyebabkan sekitar lebih dari 230.000 jiwa meninggal atau masuk daftar orang hilang, dan merusak sebagian besar infrastruktur di daerah tersebut. Dalam beberapa jam tsunami sampai ke Thailand dan kemudian menghancurkan sebagian Thailand sampai ke timur dan Sri Lanka, India dan Maladewa sampai ke barat. Tsunami juga mengakibatkan kerusakan di Somalia dan negara lainnya di Afrika Timur. Tsunami tersebut terjadi karena gempa tektonik dengan kekuatan 9.0 skala ritcher pada 3.30°N, 95.78°E[4]. Gempa bumi merupakan salah satu penyebab terjadinya tsunami. Melihat hal tersebut Indonesia patut waspada dengan ancaman tsunami, karena potensi gempa di Indonesia sangat tinggi. Indonesia merupakan daerah rawan gempa bumi karena dilalui oleh jalur pertemuan 3 lempeng tektonik, yaitu: Lempeng Indo-Australia, lempeng Eurasia, dan lempeng Pasifik. Jalur pertemuan lempeng-lempeng tersebut berada di laut, sehingga apabila terjadi gempa bumi dengan skala yang besar dan dengan kedalaman yang dangkal, maka akan berpotensi menimbulkan tsunami[13].

Di Medan sendiri yang berada di tepi timur pulau Sumatera pun tak luput dari ancaman tsunami. Posisi daerah belawan yang berada di tepi laut menyebabkan Belawan berada paling depan ketika tsunami menerjang kota Medan. Sebabnya, Selat Malaka itu menyimpan potensi lebih maut karena sepanjang Selat Malaka memiliki kondisi ideal tempat jalur tol bagi air bah raksasa, terletak ditengah jalur perairan


(16)

antara dua pulau dengan luasan Selat yang sempit, dibeberapa tempat bagian Selat itu ada ukuran mencapai 5 km, bentuk morfologi pantai dengan topografi ke daratan tiap lintasan tsunami dapat mencapai 5-15 m karena daratan di sepanjang Selat Malaka ketinggiannya di permukaan air laut mencapai 5-12 meter[14].

Tsunami adalah gelombang laut yang terjadi karena adanya gangguan impulsif pada laut[11]. Gelombang tsunami memiliki kecepatan antara 500 hingga 1.000 km/jam (sekitar 0,14 - 0,28 kilometer per detik) di perairan terbuka. Meskipun demikian, peristiwa tsunami tetap dapat diketahui lebih awal, yakni dengan mendeteksi getaran gempa penyebab tsunami tersebut. Getaran gempa bumi memiliki kecepatan sekitar 4 kilometer per detik (14.400 km/jam). Getaran gempa yang lebih cepat dideteksi daripada gelombang tsunami memungkinan dibuatnya peramalan tsunami, sehingga peringatan dini dapat segera diumumkan kepada wilayah yang terancam bahaya tsunami. Kemudian dapat segera melakukan upaya pencegahan terjadinya korban jiwa, dengan mengevakuasi penduduk ke daerah yang aman dari ancaman tsunami.

Pada proses evakuasi penduduk, kita memerlukan jalur evakuasi yang pendek, sehingga dapat cepat sampai ke daerah yang aman dari terjangan tsunami. Dengan bantuan komputasi kita dapat menemukan jalur evakuasi yang pendek, yaitu dengan menerapkan Algoritma Ant Colony. Algoritma Ant Colony diinspirasi oleh perilaku semut dalam mencari makanan. Algoritma Ant Colony merupakan salah satu metode

heuristic dimana semut-semut buatan akan bekerja sama untuk menemukan solusi yang tepat dalam permasalah optimisasi diskrit[1]. Ant Colony System merupakan variasi dari Algoritma Ant Colony, dengan tiga prinsip kerja, yaitu [1]:

1. aturan transisi status,

2. aturan pembaruan pheromone global dan

3. aturan pembaruan pheromone lokal (local pheromone updating rule).

Dari pemaparan diatas, sebuah sistem berbasis informasi geografi, Sistem Informasi Geografis, dibutuhkan untuk membantu menentukan jalur yang tepat untuk


(17)

keruangan, ekologi dan kompleks wilayah[10]. Ilmu geografi yang teraplikasikan pada sistem informasi geografis dapat menunjukkan keadaan sebenarnya muka bumi, sehingga kita bisa membuat sebuah sistem melakukan pengolahan data muka bumi untuk mendapatkan jalur evakuasi tsunami.

Sistem Informasi Geografis (SIG) merupakan sistem yang bekerja dengan data-data geografi permukaan bumi, dengan menggunakan data referensi permukaan bumi yang sebenarnya, kita dapat membuat sistem yang benar-benar dapat merepresentasikan keadaan yang sebenarnya. Kemudian dengan Algoritma Ant Colony pada sistem tersebut kita dapat dengan cepat menentukan rute yang tepat untuk dijadikan jalur evakuasi tsunami.

1.2 Rumusan Masalah

Masalah yang dibahas dalam Tugas Akhir ini adalah sebagai berikut:

1. Bagaimana membuat sistem penentuan rute terpendek yang dapat digunakan sebagai jalur evakuasi tsunami.

2. Bagaimana mengimplementasikan Algoritma Ant Colony dalam pencarian rute terpendek jalur evakuasi tsunami.

3. Bagaimana merancang sistem informasi geografis untuk menentukan dan menampilkan jalur evakuasi tsunami.

1.3 Batasan Masalah

Batasan masalah dalam Tugas Akhir ini adalah sebagai berikut:

1. Rute yang akan digunakan adalah beberapa jalan yang terdata di peta Kecamatan Medan Belawan Kota Medan dan sekitarnya.

2. Wilayah Kecamatan Medan Belawan Kota Medan dan sekitarnya akan dibagi menjadi beberapa kawasan dengan titik pusatnya masing-masing, yang berfungsi sebagai titik awal pencarian rute terpendek.


(18)

3. Jalan protokol dan jalan kecil dianggap bebas hambatan dan tidak ada jalan yang satu arah.

4. Pencarian rute terpendek hanya akan memperhatikan aspek panjang jalan.

5. Aplikasi ini hanya melingkupi daerah tepi laut Kecamatan Belawan Medan, sampai daerah aman.

6. Radius jangkauan tsunami ke daratan maksimum 7 kilometer.

7. Sistem akan dirancang berbasis desktop dengan menggunakan Arc View 3.3 dengan batasan teknologi bahasa pemrograman Avenue.

1.4 Tujuan Penelitian

Tujuan penelitian ini adalah sebagai berikut:

1. Membuat sistem penentuan rute terpendek yang dapat digunakan sebagai jalur evakuasi tsunami.

2. Mengimplementasikan Algoritma Ant Colony dalam pencarian jalur terpendek rute evakuasi tsunami.

3. Merancang sistem informasi geografis untuk menentukan dan menampilkan jalur evakuasi tsunami.

1.5 Manfaat Penelitian

Manfaat penelitian ini adalah sebagai berikut:

1. Mempermudah menentukan rute yang tepat untuk digunakan sebagai jalur evakuasi tsunami, khususnya oleh petugas Badan Meteorologi, Klimatologi dan Geofisika (BMKG).

2. Dengan kecepatan komputasi sistem yang tinggi, waktu untuk memperoleh rute yang tepat untuk dijadikan jalur evakuasi tsunami dapat lebih cepat dibandingkan dengan cara yang manual.


(19)

1.6 Metode Penelitian

Tahapan yang dilakukan dalam penelitian ini adalah: 1. Studi Literatur

Pada tahap ini penulisan dimulai dengan studi kepustakaan yaitu proses pengumpulan bahan-bahan referensi baik dari buku, artikel, makalah, jurnal maupun makalah baik berupa media cetak maupun media internet mengenai sistem informasi geografis, Algoritma Ant Colony, tsunami serta beberapa referensi lainnya untuk menunjang pencapaian tujuan skripsi.

2. Penelitian ke Lapangan (Studi Lapangan)

Pada tahap ini dilakukan penelitian yang bertujuan untuk menganalisis masalah yang ada di lapangan dan kebutuhan yang diperlukan sehingga dapat dilakukan perancangan dengan baik.

3. Analisis Sistem.

Pada tahap ini dilakukan analisis terhadap permasalahan yang ada, termasuk pengaplikasian Algoritma Ant Colony dalam pencarian rute terpendek. Selain itu juga melakukan analisis terhadap sistem yang akan dibuat, batasan sistem, kinerja, sistem, cara kerja sistem. Sehingga sistem dapat mengimplementasikan Algoritma

Ant Colony untuk mendapatkan rute terpendek untuk jalur evakuasi tsunami.

4. Perancangan Sistem.

Pada tahap ini dilakukan perancangan user interface, Unified Modelling Language (UML) dan struktur program Sistem Penentuan Rute Terpendek Jalur Evakuasi.

5. Implementasi Sistem.

Pada tahap ini sistem diimplementasikan dengan menggunakan Algoritma Ant Colony.


(20)

6. Pengujian Sistem.

Pada tahap ini akan dilakukan pengujian terhadap kinerja sistem dan kebenaran hasil Algoritma Ant Colony dalam sistem informasi geografis serta analisis terhadap fokus permasalahan penelitian.

7. Dokumentasi

Pada tahap ini seluruh kegiatan pembuatan sistem didokumentasikan kedalam bentuk tulisan berupa laporan tugas akhir.

1.7 Sistematika Penulisan

BAB I PENDAHULUAN

Bab ini berisi latar belakang masalah, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian dan sistematika penulisan skripsi.

BAB II LANDASAN TEORI

Bab ini berisi teori-teori yang berkaitan dengan penelitian tugas akhir, antara lain teori graph, Algoritma Ant Colony, Algoritma Ant Colony System, tsunami dan sistem informasi geografis.

BAB III ANALISIS DAN PERANCANGAN

Bab ini berisi analisis Algoritma Ant Colony System dalam pencarian rute terpendek, desain sistem dan perancangan antar muka sistem.

BAB IV IMPLEMENTASI DAN PENGUJIAN

Pada bab ini akan membahas tentang implementasi hasil penelitian menjadi sebuah aplikasi untuk mencari rute terpendek jalur evakuasi tsunami untuk daerah Kecamatan Belawan, Kota Medan. Kemudian melakukan pengujian terhadap


(21)

BAB V KESIMPULAN DAN SARAN

Hasil-hasil penelitian berupa solusi dari masalah yang diangkat dalam penelitian ini akan disimpulkan pada bab ini. selain itu pada bab ini juga berisi saran untuk penelitian kedepannya agar dapat dikembangkan atau melanjutkan penelitian yang berkaitan dengan masalah dalam penelitian ini.


(22)

BAB 2

LANDASAN TEORI

2.1 Tsunami

Tsunami adalah gelombang laut yang terjadi karena adanya gangguan impulsif pada laut. Gangguan impulsif tersebut terjadi akibat adanya perubahan bentuk dasar laut secara tiba-tiba dalam arah vertikal atau dalam arah horizontal. Perubahan tersebut disebabkan oleh tiga sumber utama, yaitu gempa tektonik, letusan gunung api, atau longsoran yang terjadi di dasar laut. Dari ketiga sumber tersebut, di Indonesia gempa merupakan penyebab utama[11].

Indonesia merupakan daerah rawan gempa bumi karena dilalui oleh jalur pertemuan 3 lempeng tektonik, yaitu: Lempeng Indo-Australia, lempeng Eurasia, dan lempeng Pasifik. Lempeng Indo-Australia bergerak relatip ke arah utara dan menyusup kedalam lempeng Eurasia, sementara lempeng Pasifik bergerak relatip ke arah barat. Jalur pertemuan lempeng-lempeng tersebut berada di laut, sehingga apabila terjadi gempa bumi dengan skala yang besar dan dengan kedalaman yang dangkal, maka akan berpotensi menimbulkan tsunami.

Gelombang tsunami yang terjadi akibat deformasi di dasar laut memiliki karakteristik sebagai berikut[11]:

1. Memiliki panjang gelombang sekitar 100-200 km atau lebih. 2. Memiliki perioda 10-60 menit


(23)

g = percepatan gravitasi h = kedalaman laut

Gelombang tsunami memiliki kecepatan antara 500 hingga 1.000 km/jam (sekitar 0,14 - 0,28 kilometer per detik) di perairan terbuka. Meskipun demikian, peristiwa tsunami tetap dapat diketahui lebih awal, yakni dengan mendeteksi getaran gempa penyebab tsunami tersebut. Getaran gempa bumi memiliki kecepatan sekitar 4 kilometer per detik (14.400 km/jam). Hal ini menyebabkan tsunami bisa terdeteksi sebelum mencapai tanah.

Gambar 2.1 Tsunami saat Menerjang Daratan[12]

Gambar 2.1 menunjukkan karakteristik tsunami saat mencapai pantai (dimana laut menjadi dangkal), maka kecepatannya akan menurun namun ketinggian gelombang semakin bertambah. Saat tsunami mencapai pantai, sejumlah besar energi yang awalnya tersimpan dalam bentuk panjang gelombang tsunami berubah menjadi bentuk tinggi gelombang dengan kekuatan menghancurkan yang luar biasa. Di daratan ketinggian tsunami bisa mencapai ratusan meter. Istilah run-up pada tsunami mengacu pada ketinggian tertinggi tsunami yang diukur dari permukaan laut.

Pada umumnya tsunami tidak hanya gelombang tunggal saja, namun merupakan rangkaian gelombang. Gelombang pertama yang mencapai daratan adalah yang tertinggi. Rangkaian gelombang tersebut lebih merusak daripada yang gelombang tunggal. Oleh karena itu, meskipun kita bisa selamat dari gelombang pertama, namun kita masih beresiko terkena gelombang yang berikutnya.


(24)

2.2 Graph

Suatu graph sederhana G adalah suatu pasangan terurut (V, E), dimana V adalah suatu himpunan berhingga yang tak kosong yang elemen-elemennya disebut verteks dan E adalah suatu himpunan garis yang menghubungkan dua elemen subset dari E yang disebut edges [2].

Gambar 2.2 Graph dengan 4 verteks dan 5 edges

Pada contoh diatas graph G = (V, E) dimana:

1. V adalah himpunan titik, simpul, verteks atau nodes dari G, yaitu V = {v1, v2, v3, v4}

2. E adalah himpunan rusuk, edges, atau sisi dari G, yaitu E = {e1, e2, e3, e4, e5}

2.2.1 Macam – macam Graph Menurut Arah dan Bobotnya

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

1. Graph berarah (digraph) dan berbobot: setiap edges mempunyai arah (yang ditunjukkan dengan anak panah) dan bobot. Gambar 8.2 adalah contoh graph

berarah dan berbobot, yang terdiri dari tujuh verteks yaitu verteks A, B, C, D, E, F, G dan 12 edges. Verteks A mempunyai dua edges yang masing-masing menuju ke verteks B dan verteks C, verteks B mempunyai tiga edges yang masing-masing menuju ke verteks C, verteks D dan verteks E dan seterusnya. Tiap-tiap edges

v

3

e

4

v

2

v

e

5

e

3

e

1

e

2

v

4


(25)

Gambar 2.3 Graph berarah dan berbobot

2. Graph tidak berarah dan berbobot: setiap edges tidak mempunyai arah tetapi mempunyai bobot. Gambar 8.3 adalah contoh graph tidak berarah dan berbobot.

Edges yang menghubungkan antar verteks mempunyai bobot yang telah diketahui namun tidak mempunyai arah.

Gambar 2.4 Graph tidak berarah dan berbobot

3. Graph berarah (digraph) dan tidak berbobot: setiap edges mempunyai arah tetapi tidak mempunyai bobot. Gambar 8.4 adalah contoh graph berarah dan tidak berbobot.

Gambar 2.5 Graph berarah dan tidak berbobot

2 2 2 2 2 3 4 4 1 1 1 1 A

B E

C F G D 2 2 2 2 2 3 4 4 1 1 1 1 A

B E

C

F

G D

A

B E

C

F

G D


(26)

4. Graph tidak berarah dan tidak berbobot: setiap edges tidak mempunyai arah dan tidak mempunyai bobot. Gambar 8.5 adalah contoh graph tidak berarah dan tidak berbobot.

Gambar 2.6 Graph tidak berarah dan tidak berbobot

2.3 Algoritma AntColony

Algoritma Ant Colony atau disebut juga Ant Colony Optimization (ACO), merupakan metode pencarian metaheuristik yang diinspirasi oleh perilaku semut dalam menyelesaikan permasalahan optimisasi, termasuk dalam permasalahan pencarian jalur terpendek [3]. Pada tugas akhir ini penulis menggunakan algoritma Ant Colony System (ACS), yang merupakan variasi dari algoritma Ant Colony Optimization.

Dalam mencari makanan, setiap semut akan berusaha mencari jalur terpendek dari sarang ke tempat makanan. Kemudian semut tersebut akan meninggalkan

pheromone di jalur yang dilaluinya. Pheromone adalah zat kimia yang berasal dari kelenjar endokrin dan digunakan oleh makhluk hidup untuk mengenali sesama jenis, individu lain, kelompok, dan untuk membantu proses reproduksi. Berbeda dengan hormon, Pheromone menyebar ke luar tubuh dan hanya dapat mempengaruhi dan dikenali oleh individu lain yang sejenis (satu spesies). Proses peninggalan Pheromone

ini dikenal sebagai stigmery, yaitu sebuah proses memodifikasi lingkungan yang tidak hanya bertujuan untuk mengingat jalan pulang ke sarang, tetapi juga memungkinkan para semut berkomunikasi dengan koloninya.

A

B E

C

F

G D


(27)

Pheromone akan menarik semut lain untuk mengikuti jalurnya dan meninggalkan pheromone miliknya. Semakin banyak semut yang mengikuti jalur tersebut maka intensitas pheromone pada jalur tersebut akan semakin kuat, sehingga menarik semut-semut lain untuk mengikuti jalur tersebut. Jika ada semut lain yang menemukan jalur yang lebih baik maka semut tersebut akan mengeluarkan pheromone

yang lebih kuat sehingga menarik semut lain untuk mengikuti jalurnya. Jalur terbaik akan memiliki kadar pheromone yang tinggi, karena banyak semut yang melaluinya, dan jalur yang buruk akan memiliki kadar pheromone yang rendah atau bahkan kosong, karena semakin lama pheromone akan menguap dan akhirnya menghilang.

Pada algoritma ACO, semut-semut buatan akan diciptakan dan yang kemuadian akan bekerja sama untuk menemukan jalur terbaik dengan pertukaran informasi melalui kualitas pheromone pada setiap jalurnya [1].

2.3.1 Ant Colony System (ACS)

ACS merupakan pengembangan dari Ant Colony Optimization. Secara informal, ACS bekerja sebagai berikut: pertama kali, sejumlah m semut ditempatkan pada sejumlah n

titik berdasarkan beberapa aturan inisialisasi (misalnya, secara acak). Setiap semut membuat sebuah tour (yaitu, sebuah solusi TSP yang mungkin) dengan menerapkan sebuah aturan transisi status secara berulang kali. Selagi membangun tournya, setiap semut juga memodifikasi jumlah pheromone pada edge-edge yang dikunjunginya dengan menerapkan aturan pembaruan pheromone local yang telah disebutkan tadi. Setelah semua semut mengakhiri tour mereka, jumlah pheromone yang ada pada edge-edge dimodifikasi kembali (dengan menerapkan aturan pembaruan pheromone

global). Dalam membuat tour, semut ‘dipandu’ oleh informasi heuristic (mereka lebih memilih edge-edge yang pendek) dan oleh informasi pheromone. Sebuah edge dengan jumlah pheromone yang tinggi merupakan pilihan yang sangat diinginkan. Kedua aturan pembaruan pheromone itu dirancang agar semut cenderung untuk memberi lebih banyak pheromone pada edge-edge yang harus mereka lewati. Tiga karakteristik utama dari ACS, yaitu aturan transisi status, aturan pembaharuan pheromone global, dan aturan pembaharuan pheromone lokal [1].


(28)

2.3.1.1 Aturan Transisi Status

Aturan transisi status adalah aturan yang digunakan dalam memilih titik tujuan berikutnya dengan melakukan perhitungan probabilitas masing-masing titik tujuan yang mungkin. Aturan transisi status yang berlaku pada ACS [2] adalah sebagai berikut: seekor semut yang ditempatkan pada kota r memilih untuk menuju ke kota s. Kemudian dibangkitkan bilangan acak q, dimana 0 ≤ q ≤ 1. Dan inisiasi sebuah parameter q0, dimana 0 q0≤1. Jika q q0 maka

�=����[�(�,�)]∙[�(�,�)]�� ………. (1) Dimana:

� = intensitas pheromone � = visibilitas antar kota (1/d)

u = kota-kota yang mungkin dikunjungi semut yang berada di kota r. s = kota tujuan

� = parameter yang mengontrol bobot (weight) relatif dari pheromone terhadap jarak (β>0).

Sedangkan jika q > q0 maka

(

,

) =

[�(�,�)]∙[�(�,�)

]

�� ()[�(�,�)]∙[�(�,�)�]

……….. (2)

dimana:

�� = probabilitas tiap kota berikutnya yang akan dikunjungi dari kota r

Setelah hasil perhitungan probabilitas kota yang akan dipilih berikutnya selesai, kemudian dicari probabilitas kumulatifnya (qk) dimana q1 = � sedangkan qk = qk-1

+ � untuk k = 2,3,4, ..., n. Kemudian dibangkitkan bilangan random (v) antara 0 sampai 1. Titik ke-k akan terpilih jika qk-1 < v qk.


(29)

2.3.1.2 Aturan Pembaruan Pheromone Lokal

Selagi melakukan perjalanan untuk mencari solusi pencarian rute terpendek, semut mengunjungi sisi-sisi dan mengubah tingkat feromon pada sisi-sisi tersebut dengan menerapkan aturan pembaruan feromon lokal [1] yang ditunjukkan oleh persamaan dibawah ini.

�(�,�) ←(� − �)∙ �(�,�) +� ∙ ∆�(�,�) ………... (3)

dimana:

� = tetapan penguapan pheromone

∆�(�,�) =�.���∈� (�)�(�,�) , dimana: � = parameter (0≤�≤1)

�(�,�) = tho yang paling maksimum dari seluruh edges yang menghubungkan titik s ke z.

2.3.1.3 Aturan Pembaruan Pheromone Global

Pada sistem ini, pembaruan pheromone secara global hanya dilakukan oleh semut yang membuat tur terpendek sejak permulaan percobaan. Pada akhir sebuah iterasi, setelah semua ants menyelesaikan tur mereka, sejumlah pheromone ditaruh pada ruas-ruas yang dilewati oleh seekor semut yang telah menemukan tur terbaik (ruas-ruas-ruas-ruas yang lain tidak diubah). Tingkat pheromone itu diperbarui dengan menerapkan aturan pembaruan pheromone global [1] yang ditunjukkan oleh persamaan 4.

�(�,�) ←(� − �)∙ �(�,�) +� ∙ ∆�(�,�) ... (4) dimana:

∆�(�,�) = �(���)−� ,���� (�,�) ∈ ���������������������� �


(30)

� = tetapan pengendali pheromone

2.3.1.4 Penjelasan Alur Kerja Algoritma AntColonySystem

Algoritma AntColonySystem memiliki langkah-langkah untuk mencari rute terpendek yaitu:

1. Menginsialisasi harga parameter-parameter algoritma semut: a. Intensitas pheromone (τij).

b. Tetapan siklus semut (q0).

c. Tetapan pengendali intensitas visibilitas ). d. Tetapan pengendali pheromone(α), nilai α ≥ 0. e. Jumlah semut (m).

f. Tetapan penguapan pheromone (ρ), nilai ρ harus > 0 dan < 1. g. Jumlah siklus maksimum (NCmax).

2. Setelah itu menentukan titik selanjutnya yang akan dituju dengan aturan transisi status. Sesuai dengan nilai q0 yang didapat, aturan transisi status akan menggunakan persamaan (1) atau persamaan (2) dengan syarat:

a. Jika q≤q0 maka aturan transisi status menggunakan persamaan (1). b. Jika q>q0 maka aturan transisi status menggunakan persamaan (2).

3. Apabila telah mendapat titik yang dituju, titik tersebut disimpan ke dalam daftar_kota untuk menyatakan bahwa titik tersebut telah menjadi bagian dari rute perjalanan. Setelah itu intensitas pheromone di sisi tersebut diubah dengan menggunakan persamaan (3). Perubahan pheromone tersebut dinamakan pembaruan pheromone lokal. Aturan transisi kembali dilakuk an, mencari titik berikutnya, sampai titik tujuan tercapai.

4. Apabila titik tujuan telah dicapai, panjang rute masing-masing semut akan diakumulasikan, kemudian diurutkan sehingga akan didapatkan rute yang terpendek.


(31)

5. Pembaruan pheromone pada titik-titik yang termuat dalam rute terpendek tersebut menggunakan persamaan (4). Perubahan pheromone ini dinamakan pembaruan pheromone global.

6. Pengosongan daftar_kota. Daftar_kota perlu dikosongkan untuk diisi lagi dengan urutan titik yang baru. Algoritma diulang lagi dari langkah 2 dengan harga parameter intensitas feromon yang sudah diperbarui.

Setelah semua proses telah dilalui (jumlah siklus maksimum sudah terpenuhi), maka akan didapatkan rute dengan panjang rute yang terpendek. Langkah-langkah pencarian rute terpendek dengan Algoritma Ant Colony diatas dapat digambarkan dengan


(32)

Mulai

Tetapkan Parameter, Kota Awal, Kota Tujuan

For i=1 to JmulahSiklus

(Ncmax) do

For j=1 to JumlahSemut (m)

do

Aturan transisi dengan pers. 1

atau 2

Simpan Kota Terpilih

Pembaruan pheromone lokal

Titik tujuan dicapai ?

Ya

Ya

Tidak Ya

Hitung jarak rute masing-masing

semut

Pembaruan pheromones global Kosongkan daftar

kota

TIdak

Tampilkan rute terpendek

Berhenti Tidak

Gambar 2.7 Flowchart Ant Colony System

2.4 Sistem Informasi Geografis

Sistem Informasi Geografis (SIG) merupakan sistem yang dirancang untuk bekerja dengan data yang tereferensi secara spasial atau koordinat-koordinat geografis. SIG memiliki kemampuan untuk melakukan pengolahan data dan melakukan operasi-operasi tertentu dengan menampilkan dan menganalisa data.


(33)

Menurut Gou Bo, Sistem Informasi Geografis adalah teknologi informasi yang dapat menganalisis, menyimpan dan menyimpan baik data spasial maupun data non spasial. Sedangkan menurut Nicholas Chrisman, Sistem Informasi Geografis adalah sistem yang terdiri dari perangkat keras, perangkat lunak, data, manusia, organisasi dan lembaga yang digunakan untuk mengumpulkan, menyimpan, menganalisisis, dan menyebarluaskan informasi mengenai daerah-daerah di permukaaan bumi [6].

Sistem informasi geografis adalah sistem komputer yang digunakan untuk memasukkan, menyimpan, memeriksa, mengintegrasikan, memanipulasi, menganalisis, dan menampilkan data-data yang berhubungan dengan posisi-posisinya dipermukaan bumi [6]. Secara sederhana SIG adalah sistem yang memiliki referensi bentuk muka bumi (daratan, lautan, jalan, perkotaan dan lain sebagainya), yang memungkinkan kita untuk mengolah data-data bentuk muka bumi tersebut untuk tujuan tertentu.

Salah satu alasan mengapa konsep-konsep Sistem Informasi Geografis (SIG) beserta sistem aplikasinya menjadi menarik untuk digunakan di berbagai disiplin ilmu karena SIG dapat menurunkan informasi secara otomatis tanpa keharusan untuk selalu melakukan interpretasi secara manual sehingga SIG dengan mudah dapat menghasilkan data spasial tematik yang merupakan (hasil) turunan dari data spasial yang lain (primer) dengan hanya memanipulasi atribut-atributnya dengan melibatkan beberapa operator logika dan matematis [6].

2.4.1Komponen Sistem Informasi Geografis

Sistem Informasi Geografis merupakan hasil dari beberapa komponen. Komponen Sistem Informasi Geografis terbagi menjadi empat, yaitu sebagai berikut [6]:


(34)

Sistem Informasi Geografis membutuhkan komputer untuk menyimpan data dan dalam melakukan pengolahan data. Semakin kompleks data yang ingin diolah, maka semakin besar juga kebutuhan memori dan kecepatan pengolah datanya.

2. Perangkat Lunak (Software)

Perangkat lunak dibutuhkan untuk memasukkan, menyimpan dan mengeluarkan data bila diperlukan. Perangkat lunak Sistem Informasi Geografis harus memiliki beberapa elemen seperti mampu melakukan input dan transformasi data geografis, sistem manajemen basis data, mampu mendukung query geografis, analisis dan visualisasi, dan memiliki Grafical User Interface (GUI) untuk memudahkan akses.

3. Data

Dalam SIG semua data dasar geografis harus diubah terlebih dahulu ke dalam bentuk digital untuk memudahkan dalam pengolahan data. Data dalam SIG dibagi menjadi dua bentuk yakni geografical atau data spasial dan data atribut.

a. Data spasial adalah data hasil pengukuran, pencatatan dan pencitraan terhadap suatu unsur keruangan yang berada di bawah, pada atau di atas permukaan bumi dengan posisi keberadaannya mengacu pada sistem koordinat nasional.

b. Data atribut adalah gambaran data yang terdiri dari informasi yang relevan terhadap suatu lokasi seperti kedalaman, ketinggian, lokasi penjualan, dan lain-lain dan bisa dihubungkan dengan lokasi tertentu dengan maksud untuk memberikan identifikasi seperti alamat, kode pos, dan lain-lain. 4. Manusia (Brainware)

Manusia dibutuhkan untuk mengendalikan seluruh Sistem Informasi Geografis. Adanya koordinasi dalam Sistem Informasi Geografis sangat diperlukan agar informasi yang diperoleh menjadi benar, tepat dan akurat.


(35)

Selain informasi dapat diperoleh secara cepat, tepat dan akurat, keuntungan SIG dengan menggunakan komputer adalah:

1. Mudah dalam mengolah.

2. Pengumpulan data dan penyimpanannya hemat tempat dan ringkas. 3. Mudah diulang kalau sewaktu-waktu diperlukan.

4. Mudah diubah kalau sewaktu-waktu ada perubahan.

5. Mudah dibawa, dikirim dan ditransformasikan (dipindahkan). 6. Aman, karena dapat dikunci dengan kode atau manual. 7. Relatif lebih murah dibandingkan dengan survei lapangan.

8. Data yang sulit ditampilkan secara manual, dapat diperbesar bahkan dapat ditampilkan dengan gambar tiga dimensi.

9. Berdasarkan data SIG dapat dilakukan pengambilan keputusan dengan tepat dan cepat.


(36)

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

3.1Analisis Sistem

Dalam perancangan sebuah sistem diperlukan analisis untuk menentukan kebutuhan sistem. Dengan adanya analisis sistem, sistem yang dirancang diharapkan akan lebih baik dan memudahkan dalam pengembangan sistem selanjutnya. Tujuan dari analisis sistem ini sendiri adalah agar sistem yang dirancang menjadi tepat guna dan ketahanan dari sistem tersebut akan lebih terjaga.

Sistem ini akan mencari rute terpendek yang dapat digunakan sebagai jalur evakuasi warga untuk menghindari tsunami. Sistem ini dirancang dengan menggunakan Algoritma Ant ColonySystem (ACS) dalam pencarian rute terpendeknya.

3.1.1Analisis Masalah

Untuk mengidentifikasi masalah digunakan diagram Ishikawa (fishbone diagram). Masalah utama adalah untuk pencarian jalur evakuasi tsunami masih menggunakan pencarian manual oleh petugas terkait. Secara umum kemampuan manusia untuk memproses data masih lambat, sehingga untuk melakukan analisis jalur yang terbaik untuk rute evakuasi tsunami masih kurang efektif. Pencarian jalur evakuasi secara manual juga masih belum adanya dukungan dokumentasi yang memadai. Metode manual juga mengalami keterbatasan dalam proses analisisnya, tidak ada panduan yang pasti untuk menganalisis jalur yang tepat. Seluruh masalah tersebut dimuat dalam diagram Ishikawa pada Gambar 3.1.


(37)

Pencarian rute terpendek dengan Algoritma Ant Colony Petugas

Meteorologi

Metode Memiliki keterbatasan dalam

memproses data

Pencarian rute terpendek untuk jalur evakuasi tsunami

masih secara manual

Peta Konvensional Hasil pencarian tidak

terdokumentasikan dengan baik

Machine Pencarian rute terpendek untuk jalur evakuasi tsunami secara manual rentan terjadi

kesalahan

Gambar 3.1 Diagram Ishikawa untuk Analisis Permasalah Sistem

3.1.2 Analisis Kebutuhan Sistem

Analisis Kebutuhan Sistem meliputi analisis kebutuhan fungsional sistem dan analisis kebutuhan non-fungsional sistem.

3.1.2.1 Kebutuhan Fungsional Sistem

Kebutuhan fungsional yang harus dimiliki oleh sistem pencarian rute terpendek sebagai jalur evakuasi tsunami adalah:

1. Sistem dapat membaca inputan berupa titik awal pencarian rute.

2. Sistem dapat melakukan pencarian rute terpendek berdasarkan algoritma Ant Colony System

3. Sistem dapat menampilkan hasil pencarian rute terpendek yang dapat digunakan sebagai jalur evakuasi tsunami.

3.1.2.2 Kebutuhan Non-Fungsional Sistem

Untuk mendukung kinerja sistem, sistem sebaiknya dapat berfungsi sebagai berikut:

1. Sistem dapat melakukan pencarian rute terpendek dengan kecepatan komputasi yang tinggi.


(38)

2. Sistem harus mudah digunakan sehingga pengguna dapat mengoperasikannya dengan baik.

3.1.3 Pemodelan

Pada penelitian ini digunakan UML sebagai bahasa pemodelan untuk mendesain dan merancang sistem pencarian rute terpendek jalur evakuasi tsunami. Model UML yang digunakan antara lain use case diagram, activity diagram, dan sequence diagram.

3.1.3.1 Use Case Diagram

Use case diagram akan menjelaskan apa saja fungsi-fungsi yang akan dikerjakan oleh sistem. Hal ini dikarenakan use case diagram akan merepresentasikan bagaimana interaksi antara aktor (user) dengan sistem. Untuk mengidentifikasikan apa saja aktor dan use case yang terlibat pada sistem ini, kita perlu menjawab beberapa pertanyaan berikut ini:

1. Siapa yang menggunakan sistem? Jawaban: Pengguna

2. Siapa yang diperlukan untuk melaksanakan fungsi pada sistem? Jawaban: Pengguna

3. Apa saja yang dapat dilakukan pengguna pada sistem?

Jawaban: Melihat peta Kecamatan Medan Belawan, Melakukan proses pencarian rute terpendek jalur evakuasi tsunami.


(39)

Pengguna

Sistem Informasi Geografis Pencarian Rute Terpendek Jalur Evakuasi Tsunami

Tampil Peta Belawan

Penacarian Rute

Gambar 3.2 UseCaseDiagram Sistem Penentuan Rute Terpendek Jalur Evakuasi Tsunami

3.1.3.2 Activity Diagram

Berikut dijelaskan proses tampil peta belawan dan pencarian rute yang terjadi pada sistem penentuan rute terpendek jalur evakuasi tsunami dengan menggunakan activity diagram.

3.1.3.2.1 Activity Diagram Tampil Peta Belawan

Tabel 3.1 Dokumentasi Naratif Use Case Tampil Peta Belawan

Nama Use case Tampil Peta Belawan

Aktor Pengguna

Deskripsi

Proses ini mendeskripsikan proses menampilkan peta daerah belawan yang menjadi titik fokus pencarian rute terpendek jalur evakuasi tsunami beserta legenda dari peta tersebut.

Prakondisi Sudah masuk kedalam aplikasi

Bidang khas

Kegiatan pengguna Respon sistem 1. Pilih Lihat Peta

2. Pilih detail pada Legenda

3. Pilih legenda yang akan ditampilkan Keterangan

1. Menampilkan Peta Daerah Belawan dan Legenda

2. Menampilkan legenda pada kotak keterangan legenda

3. Menampilkan keterangan dari legenda yang dipilih

Bidang Alternatif - -


(40)

Activity Diagram untuk tampil peta Belawan dapat kita lihat pada gambar 3.3.

Sistem Pengguna

Pilih lihat peta Menampilkan peta daerah belawan dan legenda

Pilih tampilkan keterangan legenda

Input legenda yang akan ditampilkan detailnya Menampilkan detail dari legenda

Pengguna ingin melihat detail legenda yang lain

Tidak Ya

Gambar 3.3 Activity Diagram Tampil Peta Belawan

Pada tampilan tampil peta belawan, sistem akan menampilkan peta daerah Belawan beserta dengan legendanya. Pengguna bisa melihat peta daerah belawan yang menjadi studi kasus pada penelitian ini. Pengguna juga bisa mendapatkan detail keterangan dari legenda peta tersebut pada view legenda.


(41)

3.1.3.2.2 Activity Diagram Pencarian Rute

Tabel 3.1 Dokumentasi Naratif Use Case Pencarian Rute

Nama Use case Pencarian Rute

Aktor Pengguna

Deskripsi Proses ini mendeskripsikan proses pencarian rute terpendek untuk dijadikan jalur evakuasi tsunami Prakondisi Sudah masuk dalam tampilan antarmuka sistem

Bidang khas

Kegiatan pengguna Respon sistem 1. Pilih pencarian rute

terpendek

2. Memasukkan nilai radius tsunami

4. Pilih titik kawasan yang akan dicari rute terpendek jalur evakuasi tsunami

1. Menampilkan peta daerah belawan dan kontrol sistem pencarian rute terpendek

2. Mengecek inputan

3. Menampilkan daerah yang berada di dalam radius tsunami

4. Memproses titik awal kemudian mencari rute terpendek untuk jalur evakuasi dengan Algoritma Ant Colony System

5. Menampilkan hasil rute terpendek pada peta daerah belawan

Bidang Alternatif - -

Post-kondisi Sistem menampilkan rute terpendek yang dapat dijadikan jalur evakuasi tsunami


(42)

Sistem Pengguna

Input nilai radius tsunami

Cek inputan dari pengguna apakah sesuai

Menampilkan daerah yang masuk ke dalam radius tsunami

Pilih titik kawasan yang akan dicari rute terpendek

Memproses pencarian rute terpendek

Menampilkan hasil rute terpendek untuk jalur evakuasi tsunami

Mencari rute terpendek kawasan lain

Ya

Ya

Tidak

Tidak

Mengulangi pencarian rute

Ya

Tidak

Pilih menu pencarian rute Menampilkan peta belawan dan kontrol sistem pencarian rute

Gambar 3.4 Activity Diagram Pencarian Rute

Proses pencarian rute terpendek diawali dengan pengecekan inputan nilai radius pada sistem. Sistem kemudian melakukan proses pencarian daerah yang terkena landaaan tsunami dan menampilkannya. Pengguna memilih daerah yang akan dicari rute terpendeknya dengan algoritma Ant Colony System (ACS). Hasil dari pencarian rute terpendek itu kemudian


(43)

3.1.3.3 SequenceDiagram

Berikut dijelaskan proses tampil peta belawan dan pencarian rute yang terjadi pada sistem penentuan rute terpendek jalur evakuasi tsunami dengan menggunakan sequence diagram.

3.1.3.3.1 SequenceDiagram Tampil Peta Belawan

Pada proses tampil peta belawan, sistem akan menampilkan peta daerah belawan beserta tampilan legenda peta tersebut. Sequence diagram untuk proses tampil peta belawan diperlihatkan pada Gambar 3.5

Pengguna

:LihatPeta :TampilanPeta

pilihDetailLegenda tampilPeta

tampilLegenda pilihLihatPeta

:TampilDetailLegenda

detailLegenda tampilkan detail legenda

menampilkan peta belawan menampilkan peta belawan

Gambar 3.5 SequenceDiagram Tampil Peta Belawan

Pada sequencediagram gambar 3.5 terlihat bahwa user akan memilih menu lihat peta daerah belawan, kemudian sistem akan menampilkan peta daerah belawan dan view legenda. Pengguna dapat mengetahui detail legenda peta pada view legenda, dengan memilih legenda yang akan dilihat detailnya, maka sistem akan menampilkan detail dari legenda tersebut.


(44)

3.1.3.3.2 SequenceDiagram Pencarian Rute

Proses Pencarian Rute akan menampilkan peta daerah belawan dan view kontrol pencarian rute terpendek. Sequence diagram yang dapat menggambarkan proses pencarian rute pada sistem dapat dilihat pada gambar 3.6

Pengguna

:MenuProsesRute :TampilanPeta

tampilPeta

tampilKontrolSistemRuteTerpendek pilihProsesRute

:KontrolSistemRuteTerpendek

inputRadiusTsunami

pilih daerah yang akan dicari rute terpendek

tampil derah landaan tsunami :AntColonySystem

mencari rute terpendek Menampilkan peta belawan

tampil peta kawasan landaan tsunami

tampilkan rute terpendek pada peta

tampilkan berhasil Menampilkan komtrol sistem pencarian rute

Menampilkan peta belawan

Gambar 3.6 Sequence Diagram Pencarian Rute

Pada sequence diagram diatas terlihat bahwa user memilih memilih menu pencarian rute. Sistem akan menerima inputan user berupa nilai radius landaan tsunami ke daratan. Sistem akan memproses inputan dan menentukan daerah yang terkena landaan tsunami dan menampilkannya pada peta daerah belawan. Pengguna melakukan proses pencarian rute terpendek dengan memilih daerah yang akan dijadikan titik awal pencarian rute terpendek. Sistem akan melakukan proses pencarian rute terpendek dengan menggunakan Algoritma Ant Colony System. Sistem kemudian menampilkan hasil pencarian rute pada peta kawasan belawan.


(45)

3.2. Perancangan Sistem

Antarmuka merupakan perantara antara pengguna dengan sistem. Tampilan antarmuka sangat mempengaruhi penggunaan suatu sistem, oleh karena itu antarmuka harus dirancang sedemikian rupa sehingga memudahkan pengguna dalam menggunakan sistem tersebut. Pada tahap ini akan dilakukan perancangan antarmuka sistem yang akan digunakan. Rancangan antarmuka sistem terdiri dari dua halaman utama.

3.2.1. Antarmuka Tampil Peta Belawan

Antarmuka Tampil Peta Belawan merupakan tampilan awal ketika sistem pertama kali dibuka oleh pengguna. Antarmuka lihat peta menampilkan peta daerah belawan beserta legendanya. Pada view legenda pengguna bisa mendapatkan detail tentang legenda tersebut.

Gambar 3.7 Rancangan Antarmuka Tampil Peta Belawan File Peta Belawan Credit 1

2 3

4 5


(46)

Keterangan:

1. Menu Bar Sistem

Tampilan menu-menu dari sistem, yang terdiri dari File, Peta Belawan dan Credits.

2. Button

Menu button berupa tombol yang berfungsi untuk penglolaan data hasil pencarian rute. Button tersebut terdiri dari fit, zoom in, zoom out dan hasil rute.

3. Tools

Menu tools berupa tombol yang berfungsi untuk pengolahan view peta, view legenda dan view kontrol pencarian rute. Tools tersebut terdiri dari pointer, identifier dan pan.

4. View Peta

Tampilan View untuk menampilkan Peta Belawan. 5. View Legenda

Tampilan View untuk menampilkan legenda dari peta daerah belawan. 6. View Detail Legenda

Tampilan View untuk menampilkan detail keterangan dari legenda yang dipilih.

3.2.2. Antarmuka Pencarian Rute

Antarmuka Pencarian Rute akan muncul, jika pengguna memilih menu Peta Belawan, lalu memilih proses pencarian rute. Antarmuka ini berfungsi untuk melakukan proses pencarian rute terpendek untuk jalur evakuasi tsunami. Proses pencarian rute dimulai dengan memasukkan nilai radius jangkauan tsunami. Sistem kemudian akan menampilkan daerah yang terkena landaan tsunami. Pengguna tinggal memilih daerah yang akan dicari rutenya. Sistem akan memproses inputan dari user berupa titik awal daerah yang akan dicari rutenya dengan menggunakan Algoritma Ant Colony System.


(47)

Gambar 3.8 Rancangan Antarmuka Pencarian Rute

Keterangan:

1. Menu Bar Sistem

Tampilan menu-menu dari sistem, yang terdiri dari File, Peta Belawan dan Credits. 2. Button

Menu button berupa tombol yang berfungsi untuk penglolaan data hasil pencarian rute. Button tersebut terdiri dari fit, zoom in, zoom out dan hasil rute.

3. Tools

Menu tools berupa tombol yang berfungsi untuk pengolahan view peta, view legenda dan view kontrol pencarian rute. Tools tersebut terdiri dari pointer, identifier dan pan.

4. View Peta

Tampilan View untuk menampilkan Peta Belawan 5. View Kontrol Pencarian Rute

Tampilan View untuk mengendalikan proses pencarian rute. 6. TextLine input

Input box untuk memasukkan nilai radius tsunami 7. View Daerah Landaan Tsunami

Tampilan View untuk menampilkan daerah yang terkena landaan tsunami dengan radius yang diinputkan.

File Peta Belawan Credit 1 2

3

4 5

7 6


(48)

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1 Implementasi Sistem

Setelah dilakukan analisis dan perancangan, proses berikutnya adalah implementasi sistem sesuai dengan perancangan yang telah dibuat pada tahap sebelumnya.

4.1.1 Implementasi Algoritma AntColonySystem

Berikut adalah simulasi proses pencarian rute terpendek untuk digunakan sebagai jalur evakuasi tsunami dari daerah bahaya tsunami menuju ke tempat aman, yang berada diluar radius bahaya tsunami dengan Algoritma Ant Colony System. Simulasi dilakukan dengan melakukan perhitungan secara manual dengan mengambil sampel contoh dari studi kasus daerah belawan.

Algoritma AntColonySystem akan menentukan rute terpendek dari jalan-jalan yang ada di daerah belawan untuk dijadikan jalur evakuasi tsunami menuju ke tempat aman dari tsunami. Untuk pengimplementasian Algoritma AntColonySystem, konsep graph diterapkan pada jalan-jalan di daerah belawan. Jalan-jalan pada daerah belawan akan dijadikan edges untuk pencarian dan persimpangan antara jalan akan dijadikan verteks atau titik pertemuan jalan. Setiap verteks akan diberi identifikasi dengan nama “tnomorverteks”, contohnya t2. Algoritma Ant Colony System akan melakukan perhitungan setiap jalan untuk menentukan rute terpendek berdasarkan edges dan verteks tersebut.


(49)

Titik t95 akan menjadi titik awal pencarian rute. Titik t95 berada di dalam radius bahaya tsunami, sehingga akan dicari rute terpendek menuju ke titik yang berada diluar radius bahaya tsunami. Nilai radius tsunami yang digunakan adalah 4 km. Tampilan titik t95 dapat dilihat pada gambar 4.1.

Gambar 4.1 Tampilan Titik t95 pada Peta Belawan

Hal pertama yang kita lakukan adalah menginisialisasi nilai parameter-parameter dari Algoritma Ant Colony , antara lain:

1. q0 = 0.9

2. α = 0.1

3. β = -1

4. ρ = 0.9

5. γ (gamma) = 0.1

6. m = 5

7. NCmax = 1

Nilai τij disesuaikan dengan nilai panjang masing-masing edges (jalan yang menghubungkan titik yang satu dengan titik yang lainnya) sesuai dengan rumus τij = (n

* Lnn)-1. Nilai Visibilitas (ηij) antar titik did ap at d ari rumu s ηij = (1/dij)[1]. Daftar atribut jalan daerah belawan disajikan pada tabel 4.1.


(50)

Tabel 4.1 Daftar Atribut Jalan pada Daerah Belawan

No. V1 V2 Panjang

Jalan (m)

η

ij

τ

ij

1. t82 t87 480 0.002083333333333 0.000011638733706 2. t82 t81 151 0.006622516556291 0.000036997299197 3. t87 t81 421 0.002375296912114 0.000013269815151 4. t80 t81 257 0.003891050583658 0.000021737712758 5. t80 t75 212 0.004716981132075 0.000026351849900 6. t56 t75 1121 0.000892060660125 0.000004983579107 7. t80 t89 540 0.001851851851852 0.000010345541072 8. t75 t98 627 0.001594896331738 0.000008910035373 9. t202 t98 1024 0.000976562500000 0.000005455656425 10. t97 t133 220 0.004545454545455 0.000025393600813 11. t88 t91 71 0.014084507042254 0.000078684396884 12. t91 t95 176 0.005681818181818 0.000031742001016 13. t95 t101 90 0.011111111111111 0.000062073246431 14. t101 t117 249 0.004016064257028 0.000022436113168 15. t92 t91 181 0.005524861878453 0.000030865150159 16. t92 t103 192 0.005208333333333 0.000029096834264 17. t103 t124 235 0.004255319148936 0.000023772732676 18. t92 t95 193 0.005181347150259 0.000028946073465 19. t90 t92 73 0.013698630136986 0.000076528659983 20. t97 t96 198 0.005050505050505 0.000028215112014 21. t98 t97 74 0.013513513513514 0.000075494488902 22. t88 t87 53 0.018867924528302 0.000105407399599 23. t88 t89 223 0.004484304932735 0.000025051982864 24. t89 t90 16 0.062500000000000 0.000349162011173 25. t90 t96 69 0.014492753623188 0.000080965104040 26. t96 t104 170 0.005882352941176 0.000032862306934 27. t104 t127 233 0.004291845493562 0.000023976790467 28. t117 t118 17 0.058823529411765 0.000328623069339


(51)

No. V1 V2 Panjang

Jalan (m) ηij τij

30. t127 t124 74 0.013513513513514 0.000075494488902 31. T103 T101 194 0.000028796866901 0.005154639175258 32. T103 T104 74 0.000075494488902 0.013513513513514

4.1.1.1Proses Pencarian Rute Terpendek Titik t95

Berikut akan ditampilkan pencarian rute terpendek untuk titik t95 menggunakan Algoritma Ant Colony System dengan perhitungan secara manual.

1. Mencari titik tujuan berikutnya dengan aturan transisi status dan pembaruan

pheromone lokal.

Siklus I a. Semut 1:

1. Titik Awal = t95, titik-titik yang terhubung dengan t95, yaitu t91, t92 dan t101. 2. q0 = 0.56, q0 <q maka aturan transisi status menggunakan persamaan

s = max �[τ(r, u)]∙[η(r, u)]β�……….….1 Untuk tiap titik yang terhubung dengan titik awal t95 dicari nilai maksimum dari persamaan 1.

t91 = 0.000031742001016 * (0.005681818181818)-1 = 0.005586592178771 t92 = 0.000028946073465 * (0.005181347150259)-1 = 0.005586592178771 t101 = 0.000062073246431 * (0.011111111111111)-1 = 0.005586592178771 Karena nilainya sama, maka diambil random titiknya, yaitu t91 sebagai titik berikutnya.

3. Pembaruan pheromone lokal untuk edges yang menghubungkan titik t95 dan t91 dengan persamaan

�(�,�) ←(1− �)∙ �(�,�) +� ∙ ∆�(�,�)………2

Dimana:

∆�(�,�) =�. maxz ∈Jk (s)�(�,�) ,

maxz ∈Jk (s)�(�,�) adalah nilai pheromone tertinggi diantara titik-titik


(52)

τ(t95, t91)  (1-0.9)*0. 000031742001016 + 0.9*0.1*0. 000062073246431 τ(t95, t91)  0.000008760792280

4. Titik berikutnya t91 masih didalam radius tsunami, dilanjutkan pencarian. Rute = t95, t91.

5. Berikut nya, titik awal = t91, titik-titik yang terhubung yaitu t92 dan t88. 6. q0 = 0.66, q0 <q maka aturan transisi status menggunakan persamaan 1.

Untuk tiap titik yang terhubung dengan titik awal t91 dicari nilai maksimum dari persamaan 1.

t92 = 0.000030865150159 * (0.005524861878453)-1 = 0.005586592178771 t88 = 0.000078684396884 * (0.014084507042254)-1 = 0.005586592178771 Karena nilainya sama, maka diambil random titiknya, yaitu t92 sebagai titik berikutnya.

7. Pembaruan pheromone lokal untuk edges yang menghubungkan titik t91 dan t92 dengan persamaan 2.

τ(t91, t92)  (1-0.9)*0. 000030865150159 + 0.9*0.1*0. 000078684396884 τ(t91, t92)  0.000010168110735

8. Titik berikutnya t92 masih didalam radius tsunami, dilanjutkan pencarian. Rute = t95, t91, t92.

9. Berikut nya, titik awal = t92, titik-titik yang terhubung yaitu t90, 95 dan t103. 10.q0 = 0.53, q0 <q maka aturan transisi status menggunakan persamaan 1

Untuk tiap titik yang terhubung dengan titik awal t92 dicari nilai maksimum dari persamaan 1.

t90 = 0.000076528659983 * (0.013698630136986)-1 = 0.005586592178771 t95 = 0.000028946073465 * (0.005181347150259)-1 = 0.005586592178771 t103 = 0.000029096834264 * (0.005208333333333)-1 = 0.005586592178771 Karena nilainya sama, maka diambil secara random titiknya, yaitu t90 sebagai titik berikutnya.

11.Pembaruan pheromone lokal untuk edges yang menghubungkan titik t92 dan t90 dengan persamaan 2.


(53)

12.Titik berikutnya t90 masih didalam radius tsunami, dilanjutkan pencarian. Rute = t95, t91, t92, 90.

13.Berikut nya, titik awal = t90, titik-titik yang terhubung yaitu t89 dan t96. 14.q0 = 0.13, q0 <q maka aturan transisi status menggunakan persamaan 1

Untuk tiap titik yang terhubung dengan titik awal t90 dicari nilai maksimum dari persamaan 1.

t89 = 0.000349162011173 * (0.062500000000000)-1 = 0.005586592178771 t96 = 0.000080965104040 * (0.014492753623188)-1 = 0.005586592178771 Karena nilainya sama, maka diambil secara random titiknya, yaitu t89 sebagai titik berikutnya.

15.Pembaruan pheromone lokal untuk edges yang menghubungkan titik t90 dan t89 dengan persamaan 2.

τ(t90, t89)  (1-0.9)*0. 000349162011173 + 0.9*0.1*0. 000349162011173 τ(t90, t89)  0.000066340782123

16.Titik berikutnya t89 masih didalam radius tsunami, dilanjutkan pencarian. Rute = t95, t91, t92, 90, 89.

17.Berikut nya, titik awal = t89, titik-titik yang terhubung yaitu t88 dan t80. 18.q0 = 0.69, q0 <q maka aturan transisi status menggunakan persamaan 1

Untuk tiap titik yang terhubung dengan titik awal t89 dicari nilai maksimum dari persamaan 1.

t88 = 0.000025051982864 * (0.004484304932735)-1 = 0.005586592178771 t80 = 0.000010345541072 * (0.001851851851852)-1 = 0.005586592178771 Karena nilainya sama, maka diambil secara random titiknya, yaitu t80 sebagai titik berikutnya.

19.Pembaruan pheromone lokal untuk edges yang menghubungkan titik t89 dan t80 dengan persamaan 2.

τ(t89, t80)  (1-0.9)*0.000010345541072 + 0.9*0.1*0.000025051982864 τ(t89, t80)  0.000035397523936

20.Titik berikutnya t80 masih didalam radius tsunami, dilanjutkan pencarian. Rute = t95, t91, t92, 90, 89, 80.


(54)

21.Berikut nya, titik awal = t80, titik-titik yang terhubung yaitu t81 dan t75. 22.q0 = 0.33, q0 <q maka aturan transisi status menggunakan persamaan 1

Untuk tiap titik yang terhubung dengan titik awal t80 dicari nilai maksimum dari persamaan 1.

t81 = 0. 000021737712758* (0. 003891050583658)-1 = 0.005586592178771 t75 = 0. 000026351849900* (0. 004716981132075)-1 = 0.005586592178771 Karena nilainya sama, maka diambil secara random titiknya, yaitu t81 sebagai titik berikutnya.

23.Pembaruan pheromone lokal untuk edges yang menghubungkan titik t80 dan t81 dengan persamaan 2.

τ(t80, t81)  (1-0.9)*0.000021737712758+ 0.9*0.1*0.000026351849900 τ(t80, t81)  0.000004545437767

24.Titik berikutnya t81 masih didalam radius tsunami, dilanjutkan pencarian. Rute = t95, t91, t92, 90, 89, 80, 81.

25.Berikut nya, titik awal = t81, titik-titik yang terhubung yaitu t82 dan t87. 26.q0 = 0.13, q0 <q maka aturan transisi status menggunakan persamaan 1

Untuk tiap titik yang terhubung dengan titik awal t81 dicari nilai maksimum dari persamaan 1.

t82 = 0.000036997299197* (0.006622516556291)-1 = 0.005586592178771 t87 = 0.000013269815151* (0.002375296912114)-1 = 0.005586592178771 Karena nilainya sama, maka diambil secara random titiknya, yaitu t87 sebagai titik berikutnya.

27.Pembaruan pheromone lokal untuk edges yang menghubungkan titik t81 dan t87 dengan persamaan 2.

τ(t81, t87)  (1-0.9)*0.000013269815151+ 0.9*0.1*0.000036997299197 τ(t81, t87)  0.000004656738443

28.Titik berikutnya t81 masih didalam radius tsunami, dilanjutkan pencarian. Rute = t95, t91, t92, 90, 89, 80, 81, 87.


(55)

Untuk tiap titik yang terhubung dengan titik awal t87 dicari nilai maksimum dari persamaan 1.

t82 = 0.000011638733706* (0.002083333333333)-1 = 0.005586592178771 t88 = 0.000105407399599* (0.018867924528302)-1 = 0.005586592178771 Karena nilainya sama, maka diambil secara random titiknya, yaitu t88 sebagai titik berikutnya.

31.Pembaruan pheromone lokal untuk edges yang menghubungkan titik t87 dan t88 dengan persamaan 2.

τ(t87, t88)  (1-0.9)*0.000105407399599+ 0.9*0.1*0.000105407399599 τ(t87, t88)  0.000020027405924

32.Titik berikutnya t81 masih didalam radius tsunami, dilanjutkan pencarian. Rute = t95, t91, t92, t90, t89, t80, t81, t87, t88.

33.Berikut nya, titik awal = t88, titik t88 tidak memliki titik-titik lain yang terhubung, karena titik-titik tersebut sudah dilewati sebelumnya, maka pencarian rute untuk semut 1 berhenti tanpa mendapatkan rute terpendek. 34.Rute Akhir = t95, t91, t92, t90, t89, t80, t81, t87, t88.

b. Semut 2:

1. Titik Awal = t95, titik-titik yang terhubung dengan t95, yaitu t91, t92 dan t101. 2. q0 = 0.46, q0 <q maka aturan transisi status menggunakan persamaan 1

Untuk tiap titik yang terhubung dengan titik awal t95 dicari nilai maksimum dari persamaan 1.

t91 = 0.000008760792280* (0.005681818181818)-1 = 0.001541899441280 t92 = 0.000028946073465 * (0.005181347150259)-1 = 0.005586592178771 t101 = 0.000062073246431 * (0.011111111111111)-1 = 0.005586592178771 Karena nilai maksimum t101 dan t92 sama, maka diambil random titiknya, yaitu t92 sebagai titik berikutnya.

3. Pembaruan pheromone lokal untuk edges yang menghubungkan titik t95 dan t92

τ(t95, t92) (1-0.9)*0.000028946073465 + 0.9*0.1*0.000062073246431 τ(t95, t92)  0.000008481199525


(56)

4. Titik berikutnya t91 masih didalam radius tsunami, dilanjutkan pencarian. Rute = t95, t92.

5. Titik Awal = t92, titik-titik yang terhubung dengan t92, yaitu t91, t90 dan t103. 6. q0 = 0.76, q0 <q maka aturan transisi status menggunakan persamaan 1

Untuk tiap titik yang terhubung dengan titik awal t95 dicari nilai maksimum dari persamaan 1.

t91 = 0.000010168110735 * (0.005524861878453)-1 = 0.001840428043035 t90 = 0.000014540445397 * (0.013698630136986)-1 = 0.001061452513981 t103 = 0.000029096834264 * (0.005208333333333)-1 = 0.005586592178771 Nilai maksimum ada pada t103, maka diambil t103 sebagai titik berikutnya. 7. Pembaruan pheromone lokal untuk edges yang menghubungkan titik t92 dan

t103

τ(t92, t103)  (1-0.9)* 0.000029096834264 + 0.9*0.1*0.000029096834264 τ(t92, t103)  0.000005528398510

8. Titik berikutnya t103 masih didalam radius tsunami, dilanjutkan pencarian. Rute = t95, t92, t103.

9. Titik Awal = t103, titik-titik yang terhubung dengan t103, yaitu t101, t104 dan t124.

10.q0 = 0.35, q0 <q maka aturan transisi status menggunakan persamaan 1

Untuk tiap titik yang terhubung dengan titik awal t103 dicari nilai paling maksimum dari persamaan 1.

t101 = 0.000028796866901* (0.005154639175258)-1 = 0.005586592178771 t104 = 0.000075494488902 * (0.013513513513514 )-1 = 0.005586592178771 t124 = 0.000023772732676 * (0.004255319148936)-1 = 0.005586592178771 Karena nilainya sama, maka diambil secara random titiknya, yaitu t124 sebagai titik berikutnya.

11.Pembaruan pheromone lokal untuk edges yang menghubungkan titik t103 dan t124

τ(t103, t124)  (1-0.9)* 0.000023772732676 + 0.9*0.1*0.000075494488902 τ(t103, t124) 


(57)

12.Titik berikutnya t124 sudah berada di luar radius tsunami, aman, maka pencarian berhenti.

Rute Akhir = t95, t92, t103, t124.

c. Semut 3:

1. Titik Awal = t95, titik-titik yang terhubung dengan t95, yaitu t91, t92 dan t101. 2. q0 = 0.26, q0 <q maka aturan transisi status menggunakan persamaan 1

Untuk tiap titik yang terhubung dengan titik awal t95 dicari nilai maksimum dari persamaan 1.

t91 = 0.000008760792280* (0.005681818181818)-1 = 0.001541899441280 t92 = 0.000008481199525* (0.005181347150259)-1 = 0.001636871508325 t101 = 0.000062073246431 * (0.011111111111111)-1 = 0.005586592178771 Nilai maksimum ada pada t101, maka diambil t101 sebagai titik berikutnya. 3. Pembaruan pheromone lokal untuk edges yang menghubungkan titik t95 dan

t101

τ(t95, t101)  (1-0.9)* 0.000062073246431 + 0.9*0.1*0.000062073246431 τ(t95, t101)  0.000011793916822

4. Titik berikutnya t101 masih didalam radius tsunami, dilanjutkan pencarian. Rute = t95, t101.

5. Titik Awal = t101, titik-titik yang terhubung dengan t101, yaitu t103dan t117. 6. q0 = 0.17, q0 <q maka aturan transisi status menggunakan persamaan 1

Untuk tiap titik yang terhubung dengan titik awal t101 dicari nilai maksimum dari persamaan 1.

t103 = 0.000028796866901* (0.005154639175258)-1 = 0.005586592178771 t117 = 0.000022436113168* (0.004016064257028)-1 = 0.005586592178771 Karena nilainya sama, maka diambil secara random titiknya, yaitu t117 sebagai titik berikutnya.

7. Pembaruan pheromone lokal untuk edges yang menghubungkan titik t101 dan t117

τ(t101, t117)  (1-0.9)* 0.000022436113168+ 0.9*0.1*0.000028796866901 τ(t101, t117)  0.000004835329338


(1)

tabelJalanPilihan = Av.GetProject.FindDoc("Peta Daerah Belawan").FindTheme(themeRute).GetFTab

tabelJalanPilihan.GetSelection.ClearAll tabelJalanPilihan.UpdateSelection

end

FngsZoomThemeAktif

av.GetProject.SetModified(true)

theView = av.GetProject.FindDoc("Peta Daerah Belawan") theThemes = theView.GetActiveThemes

r = Rect.MakeEmpty for each t in theThemes

r = r.UnionWith(t.ReturnExtent) end

if (r.IsEmpty) then return nil

elseif ( r.ReturnSize = (0@0) ) then

theView.GetDisplay.PanTo(r.ReturnOrigin) else

theView.GetDisplay.SetExtent(r.Scale(1.5)) end

FngsZoomToRute

av.GetProject.SetModified(true)

theView = av.GetProject.FindDoc("Peta Daerah Belawan") iterasi = SELF

rute = "Rute"++iterasi.AsString 'MsgBox.Info(rute,"info")

fieldRute = theView.FindTheme(rute).GetFTab objBitmap = fieldRute.GetSelection

iterasi = iterasi.AsString kolom = "f"+iterasi.AsString

objEkspresi = "(["+kolom+"]= "+iterasi+")"

fieldRute.Query(objEkspresi,objBitmap, #VTAB_SELTYPE_NEW) fieldRute.UpdateSelection

r = Rect.MakeEmpty

for each t in theView.GetActiveThemes if (t.CanSelect) then

r = r.UnionWith(t.GetSelectedExtent) end

end

if (r.IsEmpty) then return nil

elseif ( r.ReturnSize = (0@0) ) then

theView.GetDisplay.PanTo(r.ReturnOrigin) else

theView.GetDisplay.SetExtent(r.Scale(2)) end


(2)

fieldRute.UpdateSelection theView.Invalidate

Script14

'\MAIN INI

'---' 'Mengambil nilai dari tombol' '---' listInput = SELF

titikAwal = listInput.Get(0) iterasi = listInput.Get(1)

'Hapustabelhasil dan set flag ke 0 nanti diganti ke tombol reset '--- 'Av.Run("FngsHapusTabelList", nil)

'---' 'Variabel penanda apakah rutenya dapat atau tidak' '---' finalDecision = 0

'---' 'tabel parameter jml semut dan jml siklus utk inputan' '---'

tabelParameter = Av.GetProject.FindDoc("parameter.dbf").GetVTab fieldSemut = tabelParameter.FindField("jmlSemut")

fieldSiklus = tabelParameter.FindField("jmlSiklus") nilaiSemut = tabelParameter.ReturnValue(fieldSemut,0) nilaiSiklus = tabelParameter.ReturnValue(fieldSiklus,0)

'--- 'Nilai Radius diambil dari inputan yg dimasukkan user '---

Av.Run("FngsCopi3", nil)

siklusMax = nilaiSiklus

for each siklus in 0..(siklusMax-1) Av.Run("FngsCopi2", nil)

tabelSiklus = Av.GetProject.FindDoc("tabelsiklus.dbf").GetVTab recordSiklus = tabelSiklus.GetNumRecords

tabelSiklus.SetEditable(true)

for each i in tabelSiklus tabelSiklus.RemoveRecord(i) end

tabelSiklus.SetEditable(false)

'MsgBox.Info("Masuk","info")


(3)

semutMax = nilaiSemut

for each jmlSemut in 0..(semutMax-1)

'---

'mengambil titik dari tabelsimpang '---

tabeltitik = Av.GetProject.FindDoc("titik kumpul.dbf").GetVTab fieldStatus = tabeltitik.FindField("status")

objBitmap = tabeltitik.GetSelection

objtitikAwal = titikAwal '"t2"

'--- 'Kita coba titik awal t469 lalu kita cek statusnya 'jika bahay dia akan cari titik berikutnya

'---

totalPanjang = 0

rute = objtitikAwal

'---

'Mengecek status dari titik awal apakah bahay '---

'objtitikAwal = objtitikAwal.Quote eks = "([Name] = "+objtitikAwal+")"

tabeltitik.Query(eks, objBitmap, #VTAB_SELTYPE_NEW) tabeltitik.UpdateSelection

for each record in tabeltitik.GetSelection

status = tabeltitik.ReturnValue(fieldStatus, record) end

Av.Run("FngsCopi1", nil)

'jika status bahaya terus mencari while(status = "bahaya") namaFungsi = "FngsAturanTrans"

hasilTransisi = Av.Run(namaFungsi, objtitikAwal)

titikHasil = hasilTransisi.Get(0) panjangHasil = hasilTransisi.Get(1)

if ((titikHasil = "0") and (panjangHasil = 0)) then ' if (panjangHasil = 0) then

totalPanjang = 0 break

end

namaFungsi2 = "FngsPemPerLoc"

objListData = {objtitikAwal, titikHasil, panjangHasil}

Av.Run(namaFungsi2, objListData )

'Cari cara agar titik yg uda dilewati nggak dilewati lagi '---

tabelOlahPeromone = Av.GetProject.FindDoc("tablecek.dbf").GetVTab

objBitmap = tabelOlahPeromone.GetSelection objtitikAwal = objtitikAwal.Quote


(4)

objEkspr = "([V1] = "+objtitikAwal+") or ([V2] = "+objtitikAwal+")"

tabelOlahPeromone.Query(objEkspr, objBitmap, #VTAB_SELTYPE_NEW)

tabelOlahPeromone.UpdateSelection

fieldV1 = tabelOlahPeromone.FindField("V1")

fieldV2 = tabelOlahPeromone.FindField("V2")

tabelOlahPeromone.SetEditable(true)

for each i in tabelOlahPeromone.GetSelection tabelOlahPeromone.SetValue(fieldV1, i, nil) tabelOlahPeromone.SetValue(fieldV2, i, nil)

end

tabelOlahPeromone.SetEditable(false)

objtitikAwal = titikHasil

totalPanjang = totalPanjang + panjangHasil rute = rute ++ objtitikAwal

'mengambil nilai status dari titik berikutnya yang didapat aturan transisi

'---

tabeltitikS = Av.GetProject.FindDoc("titik simpang.dbf").GetVTab

fieldStatusS = tabeltitikS.FindField("status") objBitmap = tabeltitikS.GetSelection

objtitikAwal = objtitikAwal.Quote

eks = "([Name] = "+objtitikAwal+")"

tabeltitikS.Query(eks, objBitmap, #VTAB_SELTYPE_NEW) tabeltitikS.UpdateSelection

for each record in tabeltitikS.GetSelection

status = tabeltitikS.ReturnValue(fieldStatusS, record) end

objtitikAwal = objtitikAwal.Unquote

end

fieldSemut = tabelSiklus.FindField("Semut") fieldRute = tabelSiklus.FindField("Rute") fieldPjgRute = tabelSiklus.FindField("PjgRute")

tabelSiklus.SetEditable(true) record = tabelSiklus.AddRecord

tabelSiklus.SetValue(fieldSemut, record, (jmlSemut+1)) tabelSiklus.SetValue(fieldRute, record, rute)

tabelSiklus.SetValue(fieldPjgRute, record, totalPanjang) tabelSiklus.SetEditable(false)

tabelSiklus.Refresh

end

'---


(5)

namaFungsi3 = "FngsPemPerGlo"

hasilSiklus = Av.Run(namaFungsi3, nil) ruteSiklus = hasilSiklus.Get(0) panjangruteSiklus = hasilSiklus.Get(1)

end

if ((ruteSiklus = "0") and (panjangruteSiklus = 0)) then

MsgBox.Info("Rute Berhenti di Titik Akhir tanpa menemukan solusi","Final")

finalDecision = 0

keputusanAkhir = {finalDecision} return keputusanAkhir

else

MsgBox.Info("Rute Terpendek = "++ruteSiklus++" dengan panjang = "++panjangruteSiklus.AsString,"Final")

finalDecision = 1 end

'Memasukkan nilai ke tabel hasil list '--- nama = titikAwal '"t2"

numbernya = iterasi '1

listHasil = {numbernya, nama, ruteSiklus, panjangruteSiklus } Av.Run("FngsInputTabelHasil",listHasil)

Av.Run("FngsOpenTabelHasil",listHasil)

'Mengambil nilai rute dan nilai number(rute ke berapa) Jadi yg tepilih itu diberi flag 1

'--- flag = 1

listHasilPencarian = {flag, ruteSiklus, numbernya} Av.Run("FngsRuteToLIst", listHasilPencarian)

'MsgBox.Info("titik akhir = "++titikFinal++" titik awal = "++titikAwal,"info")

'Menggambar rute yg terpilih '---

'listGambar = {numbernya, titikFinal, titikAwal} Av.Run("FngsGambarRute", numbernya)

keputusanAkhir = {finalDecision} return keputusanAkhir

'Cloning rute terpilih '---

'Av.Run("Script44, numbernya") 'end


(6)

CURRICULUM VITAE

Nama

: Eko Verdianto

Alamat Sekarang

: Jl. Tirta Utama Griya Asfa 20 Payageli

Alamat Orang Tua

: Jl. Tirta Utama Griya Asfa 20 Payageli

Telp/Hp

: 081533805442

Email

Riwayat Pendidikan

2008 – 2013

: S1 Ilmu Komputer Fasilkom-TI Universitas Sumatera Utara,

Medan

2008 – 2005

: SMA Negeri 4 Medan

2005 – 2002

: SMP Negeri 30 Medan

2002 – 1996

: SD Negeri Putat Jaya III Surabaya

Keahlian

Bahasa

: Indonesia, Inggris

Bahasa Pemrograman : C#.NET, C++, Java, PHP, HTML

Database

: MySQL, MS-SQL