PERBANDINGAN ALGORITMA HEURISTIK RANDOM WALK DAN ALGORITMA L-DEQUE

dokumen-dokumen yang mirip
BAB 2 LANDASAN TEORI

ANALISIS ASIMTOTIK DAN REAL TIME MENGGUNAKAN ALGORITMA L-DEQUE DALAM MENENTUKAN JARAK TERPENDEK ANTAR KANTOR CABANG BANK MANDIRI DI KOTA MEDAN SKRIPSI

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

BAB 1 PENDAHULUAN. Universitas Sumatera Utara

ANALISIS DAN PERBANDINGAN ALGORITMAL-DEQUE DANALGORITMA BELLMAN-FORD DALAM MENCARI JARAK TERPENDEK SKRIPSI

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI. Algoritma adalah urutan atau deskripsi langkah-langkah untuk memecahkan suatu masalah.

ANALISIS DAN PERBANDINGAN ALGORITMA L-QUEUE DAN ALGORITMA FLOYD DALAM PENENTUAN LINTASAN TERPENDEK PADA GRAPH SKRIPSI

SISTEM INFORMASI GEOGRAFIS BERBASIS WEB UNTUK MENENTUKAN JARAK TERPENDEK MENGGUNAKAN ALGORITMA DIJKSTRA (Studi Kasus : Plaza / Mall Dikota Medan)

IMPLEMENTASI METODE GENERATE AND TEST DALAM PENYELESAIAN PUZZLE 2048 BERBASIS MOBILE SKRIPSI

IMPLEMENTASI STEGANOGRAFI HOPPING SPREAD SPECTRUM KE DALAM FILE VIDEO SKRIPSI

ANALISIS PERBANDINGAN ALGORITMA QUICKSORT, 3 WAY QUICKSORT, DAN RADIXSORT SKRIPSI PLOREN PERONICA PASARIBU

BAB 1 PENDAHULUAN. Universitas Sumatera Utara

PERBANDINGAN ALGORITMA TERNARY COMMA CODE (TCC) DAN LEVENSTEIN CODE DALAM KOMPRESI FILE TEXT SKRIPSI ZULAIHA YULANDARI

PERBANDINGAN KINERJA ALGORITMA FIXED LENGTH BINARY ENCODING (FLBE) DENGAN VARIABLE LENGTH BINARY ENCODING (VLBE) DALAM KOMPRESI TEXT FILE SKRIPSI

IMPLEMENTASI ALGORITMA BLOWFISH PADA APLIKASI ENKRIPSI DAN DEKRIPSI CITRA BERBASIS WINDOWS SKRIPSI AHDA ANDI KURNIA

IMPLEMENTASI ALGORITMA GENETIK UNTUK MENYELESAIKAN MASALAH TRAVELING SALESMAN PROBLEM (STUDI KASUS: SATUAN KERJA PERANGKAT DAERAH KOTA MEDAN)

Pencarian Jalur Terpendek dengan Algoritma Dijkstra

PROGRAM STUDI S1 ILMU KOMPUTER

Universitas Sumatera Utara

PERBANDINGAN ALGORITMA KNUTH MORRIS PRATT DAN BOYER MOORE PADA APLIKASI KAMUS BAHASA INDONESIA-KOREA BERBASIS ANDROID SKRIPSI

SKRIPSI SHERLY MELISA SEMBIRING

ANALISIS PERBANDINGAN HASIL ALGORITMA HOMOGENEITY DAN ALGORITMA PREWITT UNTUK DETEKSI TEPI PADA CITRA BMP SKRIPSI ZULFADHLI HARAHAP

SIMULASI PENCARIAN JARAK TERDEKAT (SHORTEST PATH) DENGAN MENGGUNAKAN ALGORITMA A* (STUDI KASUS PADA PERPUSTAKAAN POLITEKNIK NEGERI MEDAN) SKRIPSI

ANALISIS DAN PERANCANGAN APLIKASI PENERIMAAN SISWA BARU MENGGUNAKAN METODE SAW DAN METODE PROMETHEE (STUDI KASUS : SMAN 1 TEBING TINGGI) SKRIPSI

PERBANDINGAN ALGORITMA STRING MATCHING NOT SO NAIVE DAN SKIP SEARCH PADA PLATFORM ANDROID SKRIPSI RICKY WIJAYA

Matematika dan Statistika

IMPLEMENTASI ALGORITMA KRIPTOGRAFI HILL CIPHER DAN KOMPRESI DATA MENGGUNAKAN ALGORITMA LEVENSTEIN DALAM PENGAMANAN FILE TEKS SKRIPSI

PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2014

BAB 2 LANDASAN TEORI

SKRIPSI BILQIS

IMPLEMENTASI METODE EXHAUSTIVE SEARCH UNTUK MENENTUKAN SHORTEST PATH ANTAR PUSAT PERBELANJAAN DI KOTA MEDAN SKRIPSI SILVIA NINGSIH PRATIWI

BAB II LANDASAN TEORI

ANALISIS KINERJA DAN IMPLEMENTASI ALGORITMA KOMPRESI ARITHMETIC CODING PADA FILE TEKS DAN CITRA DIGITAL SKRIPSI SARIFAH

IMPLEMENTASI KOMBINASI ALGORITMA BEAUFORT DAN ALGORITMA SPRITZ DALAM SKEMA SUPER ENKRIPSI UNTUK PENGAMANAN TEKS SKRIPSI TIA RAHMADIANTI

SISTEM PENDUKUNG KEPUTUSAN PENENTUAN KELAYAKAN CALON ASISTEN LABORATORIUM BERBASIS ANDROID MENGGUNAKAN ALGORITMA ITERATIVE DICHOTOMISER 3 (ID3)

SKRIPSI SURI SYAHFITRI

PERANCANGAN SISTEM INFORMASI GEOGRAFIS LOKASI WISATA MENGGUNAKAN METODE TABU SEARCH (STUDI KASUS : KOTA PEKANBARU) SKRIPSI LIRA MELADYA

BAB II LANDASAN TEORI

ANALISIS PERBANDINGAN ALGORITMA HUFFMAN DAN RUN LENGTH ENCODING PADA KOMPRESI FILE AUDIO SKRIPSI HELBERT SINAGA

ANALISIS DUPLICATE FILE FINDER MENGGUNAKAN METODE MD5 HASH SKRIPSI WAHYUNI FARAH JUWITA

IMPLEMENTASI KOMBINASI ALGORITMA COLUMNAR TRANSPOSITION CIPHER DAN DATA ENCRYPTION STANDARD PADA APLIKASI ENKRIPSI DAN DEKRIPSI TEKS BERBASIS ANDROID

IMPLEMENTASIALGORITMAFLOYD WARSHALL DALAM MENENTUKAN JARAK TERPENDEK (MEDAN - BANDARA KUALA NAMU) SKRIPSI RINI CHAIRANI HARAHAP

BAB II LANDASAN TEORI

IMPLEMENTASI ALGORITMA DIJKSTRA UNTUK PENCARIAN RUTE TERPENDEK MENUJU PELABUHAN BELAWAN BERBASIS SISTEM INFORMASI GEOGRAFIS SKRIPSI

BAB 2 LANDASAN TEORI

ANALISIS DAN PERANCANGAN APLIKASI STEGANALISIS PADA MEDIA CITRA BMP DENGAN METODE ENHANCED LEAST SIGNIFICANT BIT SKRIPSI DESMAWATI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

PERBANDINGAN METODE DETEKSI TEPI CANNY, ROBERT DAN LAPLACIAN OF GAUSSIAN PADA HASIL CITRA CAMERA 360 SKRIPSI TIFANY BR SEMBIRING

IMPLEMENTASI RUBY GAME SCRIPTING SYSTEM PADA GAME LUDO SKRIPSI DICKO IFENTA

IMPLEMENTASI DAN ANALISIS ALGORITMA DYNAMIC MARKOV COMPRESSION (DMC) PADA FILE TEXT

ANALISIS PERBANDINGAN GEOMETRIC MEAN FILTER DENGAN OPERATOR SOBEL, OPERATOR PREWITT DAN OPERATOR ROBERT PADA CITRA BITMAP SKRIPSI

PENENTUAN RUTE TERPENDEK UNTUK DISTRIBUSI PAKET POS MENGGUNAKAN ALGORITMA FLOYD WARSHALL SKRIPSI AHMAD NAZAM

BAB 2 LANDASAN TEORI

IMPLEMENTASI ALGORITMA BRUTE FORCE DAN ALGRITMA KNUTH-MORRIS-PRATT (KMP) DALAM PENCARIAN WORD SUGGESTION SKRIPSI ADLI ABDILLAH NABABAN

BAB II TINJAUAN PUSTAKA

ANALISIS PERBANDINGAN ALGORITMA HUFFMAN DAN ALGORITMA SEQUITUR DALAM KOMPRESI DATA TEXT SKRIPSI ELSYA SABRINA ASMTA SIMORANGKIR

IMPLEMENTASI ALGORITMA KNUTH-MORRIS-PRATH STRING MATCHING UNTUK MENCARI KATA ATAU ISTILAH PADA KAMUS KOMPUTER BERBASIS ANDROID.

Penggunaan Algoritma Dijkstra dalam Penentuan Lintasan Terpendek Graf

PERBANDINGAN Vogell s Aproximation Method (VAM) DAN Least Cost Method (LC) UNTUK OPTIMASI TRANSPORTASI (STUDI KASUS : PT. HARIAN WASPADA) SKRIPSI

IMPLEMENTASI ALGORITMA BELLMAN FORD DALAM PENCARIAN SEKOLAH TAMAN KANAK-KANAK (TK) TERDEKAT DI KOTA MEDAN BERBASIS SISTEM INFORMASI GEOGRAFIS SKRIPSI

SISTEM PENGANTARAN MAKANAN DENGAN PENDAYAGUNAAN VEHICLE MENGGUNAKAN GEOGRAPHICAL INFORMATION SYSTEM (GIS) DAN ALGORITMA A STAR (A*) SKRIPSI

METODE HYBRID (BAYES DAN MULTIFACTOR EVALUATION PROCESS) DALAM SISTEM PENDUKUNG KEPUTUSAN SKRIPSI KHAIRUN NISA

IMPLEMENTASI PERBANDINGAN ALGORITMA ANALYTIC HIERARCHY PROCESS (AHP) DENGAN ALGORITMA SIMPLE ADDITIVE WEIGHTING (SAW) DALAM PEMILIHAN WEBSITE HOSTING

ANALISIS DAN PERANCANGAN ALGORITMA ARITHMETIC CODING DALAM KOMPRESI FILE AUDIO SKRIPSI DEBI MAULINA SIREGAR

PERANCANGAN SISTEM PENGAMANAN DAN KOMPRESI DATA TEKS DENGAN FIBONACCI ENCODING DAN ALGORITMA SHANNON-FANO SERTA ALGORITMA DEFLATE SKRIPSI

SKRIPSI SEPTY DIANA SARI SARAGIH

BAB II KAJIAN PUSTAKA. Pada bab kajian pustaka berikut ini akan dibahas beberapa materi yang meliputi

BAB 2 LANDASAN TEORI

PENENTUAN TIPE KEPRIBADIAN BERBASIS ANDROID DENGAN METODE CASE BASED REASONING (CBR) SKRIPSI TIANY DWI LESTARI

IMPLEMENTASI AUGMENTED REALITY PADA PENGENALAN KEBUDAYAAN NIAS BERBASIS ANDROID SKRIPSI FIRMAN GULO

IMPLEMENTASI ALGORITMA CLARKE AND WRIGHT S SAVINGS DALAM MENYELESAIKAN CAPACITATED VEHICLE ROUTING PROBLEM (CVRP) SKRIPSI DONNA DAMANIK

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI

IMPLEMENTASI AUGMENTED REALITY (AR) UNTUK PEMBELAJARAN JENIS VIRUS DAN BAKTERI PENYEBAB PENYAKIT PADA MANUSIA BERBASIS ANDROID SKRIPSI

BAB 2 LANDASAN TEORI

ANALISIS DAN IMPLEMENTASI ALGORITMA KRIPTOGRAFI PLAYFAIR CIPHER DAN ALGORITMA KOMPRESI RUN LENGTH ENCODING DALAM PENGAMANAN DAN KOMPRESI DATA TEKS

LANDASAN TEORI. Bab Konsep Dasar Graf. Definisi Graf

Simulasi Pencarian Rute Terpendek dengan Metode Algoritma A* (A-Star) Agus Gustriana ( )

SISTEM PENDUKUNG KEPUTUSAN MENENTUKAN OPERATOR TERBAIK MENGGUNAKAN METODE TOPSIS (STUDI KASUS: CBOC REGIONAL 1/ PT. TELEKOMUNIKASI, TBK.

BAB II LANDASAN TEORI

BAB IV ANALISA DAN PERANCANGAN SISTEM Analisis Sistem yang Sedang Berjalan. Untuk merancang sebuah aplikasi mobile pelajaran Kimia dasar untuk

PENENTUAN JUMLAH PRODUKSI OPTIMAL MINUMAN TEH MENGGUNAKAN METODE FUZZY

BAB 2 TINJAUAN PUSTAKA

IMPLEMENTASI STEGANOGRAPHY NATURE OF WHITESPACE (SNOW) BERBASIS WEB MENGGUNAKAN METODE WHITESPACE SKRIPSI POPPY TANIA

IMPLEMENTASI ALGORITMA AFFINE CIPHER DAN ALGORITMA ADVANCED ENCRYPTION STANDARD (AES) PADA APLIKASI SHORT MESSAGE SERVICE (SMS) BERBASIS ANDROID

IMPLEMENTASI DAN ANALISIS ALGORITMA KOMPRESI TERNARY COMMA CODE DALAM KOMPRESI FILE TEXT PADA PLATFORM ANDROID SKRIPSI SITI SOENDARI UTAMI

GRAF. V3 e5. V = {v 1, v 2, v 3, v 4 } E = {e 1, e 2, e 3, e 4, e 5 } E = {(v 1,v 2 ), (v 1,v 2 ), (v 1,v 3 ), (v 2,v 3 ), (v 3,v 3 )}

BAB II LANDASAN TEORI. Teori graf dikenal sejak abad ke-18 Masehi. Saat ini teori graf telah

PERBANDINGAN ALGORITMA BOYER-MOORE DAN ALGORITMA RABIN- KARP PADA PENCARIAN TEKS DALAM UNDANG- UNDANG PERLINDUNGAN ANAK SKRIPSI

SKRIPSI KADAR ERATOSTHENES SITEPU

RANCANG BANGUN APLIKASI PENCARIAN RUTE TERPENDEK TEMPAT WISATA DENGAN MEMANFAATKAN GOOGLE MAPS API (STUDI KASUS: KABUPATEN KULON PROGO)

BAB 2 TINJAUAN PUSTAKA

IMPLEMENTASI ALGORITMA FLOYD-WARSHALL UNTUK PENENTUAN RUTE TERPENDEK MENUJU WAHANA BERMAIN (STUDI KASUS JAWA TIMUR PARK 1 KOTA BATU) TUGAS AKHIR

PERANCANGAN APLIKASI PAILLIER CRYPTOSYSTEM UNTUK MENGAMANKAN DATA FILE SKRIPSI NOVY

MENENTUKAN LINTASAN TERPENDEK SUATU GRAF BERBOBOT DENGAN PENDEKATAN PEMROGRAMAN DINAMIS. Oleh Novia Suhraeni 1, Asrul Sani 2, Mukhsar 3 ABSTRACT

PERNYATAAN PERSETUJUAN PUBLIKASI...

BAB 2 LANDASAN TEORI

ANALISIS DAN IMPLEMENTASI KECERDASAN BUATAN PADA PERMAINAN CHECKER MENGGUNAKAN ALGORITMA MINIMAX DENGAN NEGASCOUT SKRIPSI

Transkripsi:

PERBANDINGAN ALGORITMA HEURISTIK RANDOM WALK DAN ALGORITMA L-DEQUE UNTUK PENCARIAN JARAK TERPENDEK (SHORTESTPATH) (STUDI KASUS : PARIWISATA KAB.SIMALUNGUN) SKRIPSI RAMADANI 131401021 PROGRAM STUDI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2017

PERBANDINGAN ALGORITMA HEURISTIK RANDOM WALK DAN ALGORITMA L-DEQUE UNTUK PENCARIAN JARAK TERPENDEK (SHORTESTPATH) (STUDI KASUS : PARIWISATA KAB.SIMALUNGUN) SKRIPSI Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer RAMADANI 131401021 PROGRAM STUDI S-1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2017

PERSETUJUAN Judul : PERBANDINGAN ALGORITMA HEURISTIK RANDOM WALK DAN ALGORITMA DETERMINISTIK L-DEQUE UNTUK PENCARIAN JARAK TERPENDEK ( SHORTESTPATH ) (STUDI KASUS : PARIWISATA KAB.SIMALUNGUN) Kategori : SKRIPSI Nama : RAMADANI Nomor Induk Mahasiswa : 131401021 Program Studi : SARJANA(S1) ILMU KOMPUTER Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA Komisi Pembimbing : Dosen Pembimbing II Dosen Pembimbing I Dian Rachmawati S.Si, M.Kom M Andri Budiman ST, M.Comp.Sc, MEM NIP.198307232009122004 NIP. 197510082008011011 Diketahui/disetujui oleh Program Studi S1 Ilmu Komputer Ketua, Dr. Poltak Sihombing, M.Kom NIP. 196203171991031001

PERNYATAAN PERBANDINGAN ALGORITMA HEURISTIK RANDOM WALK DAN ALGORITMA L-DEQUE UNTUK PENCARIAN JARAK TERPENDEK (SHORTESTPATH) (STUDI KASUS : PARIWISATA KAB.SIMALUNGUN) SKRIPSI Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya. Medan,29 September 2017 Ramadani 131401021

PENGHARGAAN Puji dan syukur kehadirat Allah SWT yang telah memberikan rahmat dan hidayah-nya, sehingga Penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer pada Program Studi S1 Ilmu Komputer. Penulis ingin menyampaikan rasa hormat dan terima kasih yang sebesar besarnya kepada : 1. Bapak Prof. Dr. Runtung Sitepu, S.H., M.Hum selaku Rektor Universitas Sumatera Utara. 2. Bapak Prof. Opim Salim Sitompul, M.Sc., selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi,. 3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer. 4. Bapak M. Andri Budiman ST., M.Comp.Sc, MEM selaku Dosen Pembimbing I yang telah memberikan bimbingan, saran, masukan dan dukungan kepada penulis dalam pengerjaan skripsi ini. 5. Ibu Dian Rachmawati S.Si, M.Kom. selaku Dosen Pembimbing II yang telah memberikan bimbingan, saran, masukan dan dukungan kepada penulis dalam pengerjaan skripsi ini. 6. Seluruh dosen dan pegawai di Fakultas Ilmu Komputer dan Teknologi Informasi USU, terkhususnya di Program Studi S1 Ilmu Komputer. 7. Teristimewa Ayahanda Sutrisno Syaputra dan Ibunda Nur Ana Damanik yang tidak henti-hentinya memberikan doa, dukungan dan motivasi yang selalu menjadi semangat penulis untuk meyelesaikan skripsi ini. 8. Terkhusus Atok Salim Damanik, dan Nenek Nurimah,Bou Nurlina Damanik,Alm. Samsur Damanik, Almh. Bou Nuraida Damanik, Salufti Damanik, Alm. Bapak Rusdi Damanik dan Ibu Sasmita yang telah memberikan semangat terbaiknya untuk penulis. 9. Abang, Kakak dan Adik tersayang Fitri Handayani, Dodi Hidayat Damanik Amd. Jamal Maulana Dmk, Nurhayati Dmk, Yusuf Dmk, Andi Setiawan Dmk, Dita Anggreini Dmk S.E. Doni Kesuma Dmk. yang memotivasi penulis untuk menyelesaikan skripsi ini. 10. Teman-teman yang luar biasa Rumah Kepemimpinan, Sahabat Beasiswa Untuk Negeri, Smart Generation Comunity, Kam Rabbani, Rumah Baiti Jannati, Dian Dini, Reza, Abdul, Imam, Fajar, Yoga, Dessy, Resti, Fauza, Rizal, Ilyas, Ardian, Bg Kabul, Bg

Panji, Bg Ono, dan Bg Riki yang telah menjadi teman diskusi penulis dan senantiasa memberikan semangat. 11. Teman-teman Kom C 2013, serta teman-teman stambuk 2013 atas doa dan dukunganya sehingga penulis dapat menyelesaikan skripsi ini. 12. Dan semua pihak yang telah banyak membantu yang tidak bisa disebutkan satu-persatu. Semoga semua kebaikan, bantuan, perhatian, serta dukungan yang telah diberikan kepada penulis mendapatkan berkat yang melimpah dari Allah SWT. Medan,29 September 2017 Penulis, Ramadani

ABSTRAK Banyaknya tempat wisata di Kabupaten Simalungun, mengakibatkan sulitnya menentukan jarak terpendek dari setiap wisata yang akan di kunjungi. Sistem aplikasi yang dapat digunakan untuk menentukan lokasi terpendek ( Shortest Path) adalah aplikasi simulasi Graph. Algoritma yang digunakan dalam Graph ini adalah Random walk dan algoritma L- Deque. Adapun penggunaan kombinasi kedua metode ini adalah untuk membandingkan kedua algoritma dalam menentukan jarak terpendek tempat wisata yang ada di Kabupaten Simalungun. Penelitian ini menghasilkan data yang diperoleh dari Badan Pemantapan Kawasan Hutan (BPKH) dan kunjungan langsung kebeberapa daerah penelitian. Berdasarkan hasil pencarian rute terpendek tersebut dengan menggunakan Random walk dan algoritma L-Deque menghasilkan rute total jarak dan Running time yang berbeda. Algoritma Random walk memiliki nilai running time yang lebih lama dibandingkan algoritma L-Deque. Tetapi L-Deque memiliki total jarak yang lebih optimum dan running time yang lebih cepat dibandingkan algoritma Random walk. Kata kunci : Tempat wisata, shortest path, Graph, Algoritma Random walk, Algoritma L- Deque, Running time.

ABSTRACT The number of tourist place in Simalungun District, resulting in the difficulty determine the shortest path from each tour that will be visited. The application system that can be used to determine the shortest path is a Graph simulation application. The algorithm used in this Graph is the Random walk and the L-Deque algorithm. The use of a combination of these two methods is to compare the two algorithms in determining the shortest distance of existing tourist attractions in Simalungun District. This research shows data from Badan Pemantapan Kawan Hutan (BPKH) and visiting to some research area. Based on the results of the shortest path search using Random walk and L-Deque algorithm resulted in total distance route and different Running time. Random walk algorithm has running time value slower than L-Deque algorithm.but L-Deque has more optimum total distance and faster running time than Random walk algorithm. Keyword: Tourist place, shortest path, Graph, Algoritma Random walk, Algoritma L-Deque, Running time.

DAFTAR ISI Halaman Persetujuan Pernyataan Penghargaan Abstrak Abstract Daftar Isi Daftar Tabel Daftar Gambar Daftar Lampiran ii iii iv vii viii xi xii xiii xiv Bab 1 Pendahuluan 1.1 Latar Belakang 1 1.2 Rumusan Masalah 1 1.3 Ruang Lingkup Masalah 2 1.4 Tujuan Penelitian 3 1.5 Manfaat Penelitian 3 1.6 Metode Penelitian 3 1.7 Sistematika Penulisan 5 Bab 2 Landasan Teori 2.1 Algoritma 6 2.1.1 Karakteristik Algoritma 6 2.2 Shortest Path 7 2.3 Konsep Dasar Graph 8

2.3.1 Defenisi Graph 8 2.3.2 Jenis-Jenis Graph 9 2.3.3 Graf Berbobot (Weighted Graph) 11 2.4 Algoritma L-Deque 12 2.5 Algoritma Random Walk 17 2.6 Kompleksitas Algoritma 20 Bab 3 Analisis dan Perancangan Sistem 3.1 Analisis Sistem 21 3.1.1 Analisis Masalah 21 3.1.2 Analisis Kebutuhan Sistem 23 3.1.2.1 Kebutuhan Fungsional 23 3.1.2.2 Kebutuhan Non-Fungsional 23 3.1.3 Flowchart 23 3.1.3.1 Flowchart Sistem 24 3.1.3.2 Flowchart Algoritma L-Deque 24 3.1.3.3 Flowchart Algoritma Random walk 27 3.2 Pemodelan 28 3.2.1 Use Case Diagram 28 3.2.2 Activity Diagram 28 3.2.2.1 Activity Diagram Cara Kerja Sistem Algoritma L-Deque 29 3.2.2.2 Activity Diagram Cara Kerja Sistem Algoritma Random walk 29 3.2.3 Sequence Diagram 30 3.3 Perancangan Antarmuka (Interface) 30 3.3.1 Halaman Menu Home 31 3.3.2 Halaman Menu Shortest Path 32

3.3.3 Halaman Menu Help 34 3.3.4 Halaman Menu About 36 Bab 4 Implementasi dan Pengujian 4.1 Implementasi 32 4.1.1 Tampilan Halaman Menu Home 32 4.1.2 Tampilan Halaman Menu Shortest Path 33 4.1.3 Tampilan Halaman Menu Help 34 4.1.4 Tampilan Halaman Menu About 34 4.2 Pengujian 35 4.2.1 Pengujian Proses Implementasi 35 4.2.2 Pengujian Proses Algoritma L-Deque 35 4.2.2.1 Perhitungan Manual Algortima L-Deque 36 4.2.3 Pengujian Proses Algoritma Random walk 55 4.2.3.1 Perhitungan Manual Algoritma Random walk 56 4.3 Kompleksitas 58 4.3.1 Kompleksitas Algoritma L-Deque 58 4.3.2 Kompleksitas Algoritma Random walk 59 4.4 Real Running-Time 61 4.4.1 Real Running Algoritma L-Deque 61 4.4.2 Real Running Algoritma Random walk 62 Bab 5 Kesimpulan dan Saran 5.1 Kesimpulan 64 5.2. Saran 64 Daftar Pustaka 65 Lampiran

DAFTAR TABEL Halaman Tabel 3.1 Keterangan Gambar Rancangan Antarmuka Halaman Menu Home 32 Tabel 3.2 Keterangan Gambar Rancangan Antarmuka Halaman Menu Shortest Path 33 Tabel 3.3 Keterangan Gambar Rancangan Antarmuka Halaman Menu Help 35 Tabel 3.4 Keterangan Gambar Rancangan Antarmuka Halaman Menu About 36 Tabel 4.1 Kompleksitas Algoritma L-Deque 46 Tabel 4.2 Kompleksitas Algoritma Random walk 47 Tabel 4.3 Hasil Pengujian Running Time Algoritma L-Deque 49 Tabel 4.4 Hasil Pengujian Running Time Algoritma Random walk 49

DAFTAR GAMBAR Halaman Gambar 2.1 Graph dengan 4 vertex dan 5 edge 9 Gambar 2.2 Graph Sederhana 10 Gambar 2.3 (a) Multigraph, dan (b) Graph Semu 10 Gambar 2.4 Gambar Tidak Berarah 11 Gambar 2.5 Graph Berarah 11 Gambar 2.6 Graph Berbobot 12 Gambar 2.7 Graph Berbobot & Berarah 12 Gambar 2.8 Graph Berarah Terhubung 14 Gambar 2.9 Graph Penetuan vertex Asal 14 Gambar 2.10 Graph Rute yang dipilih dari vertex A ke Vertex B dan Vertex C 15 Gambar 2.11 Graph Rute yang dipilih dari Vertex B ke Vertex D dan Vertex E 15 Gambar 2.12 Graph Rute yang dipilih dari Vertex C ke Vertex B dan Vertex D 16 Gambar 2.13 Graph Rute yang dipilih dari Vertex D ke Vertex E dan Vertex F 16 Gambar 2.14 Graph Rute yang dipilih dari Vertex E ke Vertex F 17 Gambar 2.15 Graph Rute yang dipilih dari Vertex A ke Vertex B atau Vertex A ke Vertex C 18 Gambar 2.16 Graph Rute yang dipilih dari Vertex B ke Vertex D 19 Gambar 2.17 Graph Rute yang dipilih dari Vertex D ke Vertex E 19 Gambar 3.1 Diagram Ishikawa 22 Gambar 3.2 Flowchart Sistem 24 Gambar 3.3 Flowchart Algoritma L-Deque 25 Gambar 3.4 Flowchart Algoritma Random walk 27 Gambar 3.5 Use Case Diagram 28

Gambar 3.6 Acitivity Diagram Cara Kerja Sistem dengan Algoritma L-Deque 29 Gambar 3.7 Activity Diagram Cara Kerja Sistem dengan Algoritma Random walk 30 Gambar 3.8 Sequence Diagram Sistem 30 Gambar 3.9 Rancangan Antarmuka Halaman Menu Home 31 Gambar 3.10 Rancangan Antarmuka Halaman Menu Shortest Path 33 Gambar 3.11 Rancangan Antarmuka Halaman Menu Help 34 Gambar 3.12 Rancangan Antarmuka Halaman Menu About 35 Gambar 4.1 Tampilan Halaman Menu Home 36 Gambar 4.2 Tampilan Halaman Menu Shortest Path 37 Gambar 4.3 Tampilan Graph Tempat Wisata di Kabupaten Simalungun 37 Gambar 4.4 Tampilan Halaman Menu Help 38 Gambar 4.5 Tampilan Halaman Menu About 38 Gambar 4.6 Proses Pengujian Implementasi 39 Gambar 4.7 Hasil Pengujian Menggunakan Algoritma L-Deque 40 Gambar 4.8 Graph Perhitungan Algoritma L-Deque 40 Gambar 4.9 Graph Perhitungan Algoritma L-Deque dalam Penentuan Vertex Asal 41 Gambar 4.10 Perhitungan Graph dari Vertex asal ke Vertex 2,3,15 42 Gambar 4.11 Graph Perhitungan vertex 2 ke vertex 4 43 Gambar 4.12 Graph Perhitungan vertex 4 ke vertex 5 43 Gambar 4.13 Graph Perhitungan Algoritma Random walk 44 Gambar 4.14 Graph Algoritma Random walk dengan Rute yang dipilih dari Vertex 1 ke Vertex 3 44 Gambar 4.15 Graph Algoritma Random walk dengan Rute yang dipilih dari Vertex 3 ke Vertex 4 45 Gambar 4.16 Graph Algoritma Random walk dengan Rute yang dipilih dari Vertex 4 ke Vertex 5 45

DAFTAR LAMPIRAN Halaman Lampiran 1 Listing Program A-1 Lampiran 2 Curriculum Vitae B-1

BAB 1 Pendahuluan 1. Latar Belakang Simalungun adalah kabupaten yang memiliki wilayah yang cukup luas. Simalungun adalah salah satu suku asli yang mendiami Sumatera Utara, tepatnya di timur Danau Toba (Kab.Simalungun). Simalungun merupakan daerah dengan masyarakat berpenghasilan sebagai petani, sektor pertanian menjadi dominan diwilayah ini, baik dari segi persawahan, perkebunan dan tanaman palawijaya. Di lain sisi sektor pariwisata menjadi sektor yang paling menguntungkan dalam menambah pendapatan ekonomi masyarakat Tetapi masalah yang terjadi adalah wisatawan kesulitan dalam mencari informasi menentukan jarak terdekat antar objek wisata di Simalungun. Dengan ini teknologi informasi berbasis aplikasi perlu untuk menjadi solusi yang tepat dalam mempromosikan pariwisata di kabupaten Simalungun. Wilayah Simalungun memiliki potensi besar dalam hal wisata alam, budaya, kuliner dan sebagainya. Simalungun menawarkan banyak keindahan yang dapat dinikmati wisatawan antara lain, Umbul (Sungai Lobang) Pematang Bandar, Pemandian Alam Sejuk (PAS Timuran), Pemandian karang anyar, Tugu Letda Sujono Bandar Betsi, Pemandian Swimmbath, Museum Simalungun Siantar, Kebun Teh Sidamanik, Tanjung Unta, Tigaras Puncak Simajarunjung dan lain-lain. Wisatawan dapat memilih objek wisata di Simalungun, dengan permasalahan ini penulis ingin menyelesaikan permasalahan jarak antar tempat wisata dengan menggunakan Perbandingan Algoritma Random Walk dan Algoritma L-Deque. 2. Rumusan Masalah Masalah yang akan dibahas pada penelitian ini adalah bagaimana menetukan rute terdekat antar lokasi objek wisata Kab. Simalungun dengan menggunakan algoritma Random Walk dan algoritma L-Deque sehingga didapat jarak dan waktu yang efektif untuk mencapai wilayah tersebut.

3. Ruang Lingkup Masalah 1. Objek peneletian berupa 20 objek wisata yang berada di wilayah kab. Simalungun. adapun objek wisata yang dimaksud adalah : a. Umbul (sungai lobang), Pematang bandar. b. Pemandian Alam Sejuk (PAS Timuran). c. Pemandian karang anyar. d. Tugu Letda Sujono,bandar betsi. e. Pemandian Swimmbath. f. Museum Simalungun, Siantar. g. Kebun Teh Sidamanik. h. Tanjung Unta. i. Tigaras. j. Puncak Simajarunjung. k. Hutan Lindung Aek Nauli. l. Haranggaol. m. Kawah Putih Tinggi Raja. n. Wisata Parapat. o. Perkebunan Teh Bah Butong. p. Pemandian air panas Tinggi Raja. q. Replika Ikan Mas Pematang Sidamanik. r. Air terjun Bah Biak. s. Air terjun Katasa. t. Air terjun Jambuara. 2. Variabel yang di gunakan adalah S (sumber) adalah titik awal salah satu Objek Wisata di Kabupaten Simalungun, T (tujuan) adalah titik akhir salah satu letak tujuan objek wisata Kabupaten Simalungun, dan bobot jarak. 3. Penelitian adalah graph statis, graph yang berarah terhubung (undirected conected graph). 4. Perhitungan dilakukan dengan membandingkan running time dengan satuan waktu yang digunakan adalah milisekon dan kompleksitas big theta serta membandingkan hasil (result) masing-masing Algoritma Heuristik Random Walk dan Algoritma Deterministik L-Deque.

5. Pembahasan tidak menggunakan sistem informasi geografis. 6. Jalan yang di gunakan adalah jalan utama dan jalan daerah di Simalungun yang meniadakan lampu merah, kondisi lalu lintas, kondisi jalan dan kondisi kendaraan. 7. Perhitungan dilakukan dengan membandingkan running time yaitu kompleksitas Big Ɵ (theta) dan hasil (result) masing-masing algoritma L-Deque dan algoritma Random Walk. 8. Aplikasi bersifat offline dan Bahasa pemograman yang digunakan adalah Java. 4. Tujuan Penelitian 1. Merancang sebuah sistem yang mampu menghasilkan jarak terdekat dengan waktu yang cukup singkat dengan bobot waktu dan jarak yang minimum sehingga dapat menjangkau tempat-tempat wisata yang ada di kabupaten Simalungun. 2. Membandingkan algoritma Random Walk dan algoritma L-Deque untuk mendapatkan jarak yang paling minimum dalam menentukan rute terpendek antar lokasi wisata di Kab. Simalungun. 5. Manfaat Penelitian Manfaat yang dihasilkan dari penelitian ini adalah Mengetahui jarak terdekat yang paling Optimum dan efektif dari Perbandingan Algoritma Random walk dan algoritma L-Deque dalam konsep masalah jarak antar pariwisata di kabupaten Simalungun. 6. Metode Penelitian Tahapan yang dilakukan dalam penelitian ini adalah: 1. Studi Literatur Pada tahap ini dilakukan pengumpulan referensi yang diperlukan dalam penelitian. Hal ini dilakukan untuk memperoleh informasi dan data yang diperlukan untuk penulisan skripsi ini. Referensi yang digunakan dapat berupa buku, jurnal, artikel, situs internet yang berkaitan dengan penelitian ini dengan beberapa topik seperti teori graph, jenis- jenis graph, pengertian algoritma, shortest path, algoritma Random Walk dan algoritma L-Deque.

2. Pengumpulan dan Analisis Data Pada tahap ini dilakukan pengumpulan dan analisa data yang berhubungan dengan penelitian ini seperti fungsi algoritma Random Walk dan algoritma L-Deque dalam penentuan rute terpendek antar tempat wisata di Kabupaten Simalungun. 3. Perancangan Sistem Merancang sistem sesuai dengan rencana yang telah ditentukan, yaitu meliputi perancangan desain awal seperti perancangan tampilan GUI (Graphic User Interface). Proses perancangan ini berdasarkan pada batasan masalah dari penelitian ini. 4. Implementasi Sistem Pada tahap ini sistem telah selesai dikembangkan dengan algoritma Random Walk dan algoritma L-Deque dalam penentuan rute terpendek antar tempat wisata di Kabupaten Simalungun ke dalam bentuk program. 5. Pengujian Sistem Pada tahap ini akan dilakukan pengujian terhadap sistem yang telah dikembangkan. 6. Dokumentasi Sistem Melakukan pembuatan dokumentasi sistem mulai dari tahap awal hingga pengujian sistem, untuk selanjutnya dibuat dalam bentuk laporan penelitian atau skripsi. 1.7 Sistematika Penulisan Agar pembahasan lebih sistematis, maka tulisan ini dibuat dalam lima bab, yaitu: BAB 1 PENDAHULUAN Bab ini akan menjelaskan mengenai latar belakang penelitian judul skripsi Perbandingan Algoritma Heuristik Random Walk dan algoritma deterministik L-Deque Menentukan Rute Terpendek (Shortest Path) (studi Kasus : Wisata Di Kabupaten Simalungun). Rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, tinjauan pustaka dan sistematika penulisan skripsi.

BAB 2 LANDASAN TEORI Bab ini membahas tentang teori-teori yang berhubungan dengan lintasan terpendek, teori graf, algoritma lintasan terpendek, running time dan sebagainya. BAB 3 ANALISIS DAN PERANCANGAN SISTEM Berisi tentang uraian analisis mengenai proses kerja dari algoritma L-Deque dan algoritma Random walk dalam penentuan rute terpendek antar tempat wisata di Kabupaten Tapanuli Tengah dan perbandingan dari kedua algoritma tersebut yang terdiri dari flowchart, Unified Modeling Language (UML) serta perancangan antarmuka pengguna. BAB 4 IMPLEMENTASI DAN PENGUJIAN Pada tahap ini dilakukan pembuatan sistem dan Program perbandingan algoritma heuristik random walk dan algoritma l-deque untuk pencarian jarak terpendek (shortestpath) (studi kasus : Pariwisata kab.simalungun) sesuai dengan analisis dan perancangan, kemudian melakukan pengujian sistem. BAB 5 KESIMPULAN DAN SARAN Bab terakhir akan memuat kesimpulan isi dari keseluruhan uraian dari bab-bab sebelumnya dan saran-saran dari hasil yang diperoleh yang diharapkan dapat bermanfaat dalam pengembangan selanjutnya.

BAB 2 LANDASAN TEORI 2.1 Algoritma Algoritma adalah suatu urutan langkah yang sistematis dan bahasa yang logis yang di gunakan untuk menyelesaikan suatu masalah dan menghasilkan tujuan tertentu. (Barakbah, dkk, 2013). Algoritma adalah urut-urutan terbatas dari operasi-operasi terdefinisi dengan baik, yang masing-masing membutuhkan waktu yang terbatas untuk menyelesaikan suatu masalah agar dapat menghasilkan tujuan dari sumber masalah. (Niemi,1977). Menurut (Dublin. 2009) menemukan jalan terpendek dari total panjang jalan antara dua node grafik diarahkan dengan panjang berkaitan dengan tepi masing-masing. Algoritma (algorithm) berasal dari kata algoris dan ritmis yang pertama kali di ungkapkan oleh abu ja far mohammed munazz ibn musa al khwarizmi (825 masehi dalam buku Al-Jabr Wa-al Muqabla dalam bidang pemrograman algoritma didefinisikan sebagai suatu metode khusus yang tepat dan terdiri dari serangkaian langkah yang terstruktur dan dituliskan secara sistematis yang akan dikerjakan untuk menyelesaikan suatu masalah dengan bantuan komputer. Diacuan yang lain algoritma adalah sebuah strategi yang mengandalkan kemampuan berpikir secara logis untuk memcahkan suatu masalah. Dalam algoritma kita mulai berpikir apa yang kita miliki (kekuatan dan kelemahan), selanjutnya kita atur langkah agar tujuan atau sasaran yang kita harapkan terwujud. 2.1.1 Karakteristik Algoritma Knuth (1973) menyatakan 5 komponen utama dalam algoritma yaitu finiteness, definiteness, input, output dan effectiveness. Komponen yang harus ada dalam merancang algoritma: 1. Komponen masukan : terdiri dari pemilihan variable, jenis variabel, tipe variabel, konstanta dan parameter (dalam fungsi). 2. Komponen keluaran : merupakan tujuan dari perancangan algoritma dan program. Permasalahan yang diselesaikan dalam algoritma dan program harus ditampilkan

dalam komponen keluaran. Karakterisik keluaran yang baik adalah menjawab permasalahan dan tampilan yang ramah. 3. Komponen proses : merupakan bagian utama yang penting dalam merancang sebuah algoritma. Dalam bagian ini terdapat logika masalah, Logika algoritma (sintaksis dan semantik), rumusan metode (rekursi, perbandingan, penggabungan, pengurangan, dll.). Karakteristiknya adalah sebuah berikut : 1. Input : Sebuah algoritma harus memiliki nol input atau lebih dari pengguna sebagai data masukan untuk diolah. 2. Output : Sebuah algoritma harus memiliki minimal sebuah ouput yang merupakan hasil dari olahan data. 3. Finiteness : Sebuah algoritma harus terbatas dan berhenti dari proses yang telah dieksekusi. 4. Defineteness : Sebuah Algoritma harus jelas dan tidak menimbulkan makna ganda (ambiguous). 5. Effectiveness : Langkah-langkah algoritma dikerjakan dalam waktu yang wajar. 2.2 Shortest Path Shortest Path adalah pencarian rute atau path terpendek antara node yang ada pada graph. Persoalan ini bisa dimodelkan ke dalam suatu graf berbobot dengan nilai pada masing masing sisi yang merepresentasikan persoalan yang akan dipecahkan. Kata terpendek pada kata lintasan terpendek ini tidak berarti hanya bisa diartikan jarak secara fisik, namun hal itu tergantung dari tipe persoalan yang akan dipecahkan. Bisa jadi kata tersebut memiliki makna tingkat aksesibilitas suatu simpul dalam graf dari simpul yang lain. (Aprian dan Novandi, 2007). Pencarian rute terpendek dilakukan untuk menghemat waktu dan biaya perjalanan. Sehingga wisatawan yang ingin berkunjung ketempat wisata dapat mengunjungi lebih dari satu tempat. Maka dalam hal ini penulis menggunakan algoritma Random Walk dan Algoritma L- Deque untuk perbandingan rute terpendek. Shortest Path adalah pencarian rute atau path terpendek antara node yang ada pada graph. Persoalan ini bisa dimodelkan ke dalam suatu graph berbobot dengan nilai pada masing masing sisi yang merepresentasikan persoalan

yang akan dipecahkan. Kata terpendek pada kata lintasan terpendek ini tidak berarti hanya bisa diartikan jarak secara fisik, namun hal itu tergantung dari tipe persoalan yang akan dipecahkan. Bisa jadi kata tersebut memiliki makna tingkat aksesibilitas suatu simpul dalam graf dari simpul yang lain. (Aprian dan Novandi, 2007). Pencarian rute terpendek dilakukan untuk menghemat waktu dan biaya perjalanan. Sehingga wisatawan yang ingin berkunjung ketempat wisata dapat mengunjungi lebih dari satu tempat. Maka dalam hal ini penulis menggunakan algoritma Random Walk dan Algoritma L-Deque untuk perbandingan rute terpendek. 2.3 Konsep dasar Graph. Teori graph diperkenalkan pada abad ke 18 oleh seorang matematikawan bernama Leonhard Euler. Euler mencoba memecahkan teka-teki yang dikenal dengan nama masalah jembatan Konigsberg. Terdapat tujuh buah jembatan yang menghubungkan dua pulau dan sebuah sungai, dalam implementasinya sekarang teori graph yang merupakan salah satu cabang matematika banyak di gunaan dalam berbagai bidang Ilmu seperti, Ilmu Komputer, Fisika, Kimia, Teknik Sipil dan lain lain. 2.2.1 Definisi Graph. Graph G didefinisikan sebagai pasangan himpunan yang terdiri dari vertex ( V ) dan edge ( E ) yang ditulis dengan notasi G = ( V, E ), dimana dalam hal ini V adalah suatu himpunan tidak kosong dari vertex- vertex ( simpul atau node ) pada graph G dan E adalah suatu himpunan edge (sisi atau arcs) yang menghubungkan sepasang vertex pada graph. V tidak boleh kosong, sedangkan E boleh kosong (Ristono & Puryani, 2011). Contoh graph dapat dilihat pada gambar 2.1 A e1 B e4 e5 D e3 C e2 Gambar 2.1 Graph dengan 4 vertex dan 5 edge

pada gambar 2.1 diatas Graph G = ( V, E ), dimana : 1. V adalah himpunan titik, vertex atau node dari G yaitu V = { A, B, C, D } 2. E adalah himpunan rusuk, garis atau edge dari G, yaitu E = { e1, e2, e3, e4, e5 } 2.2.2 Jenis- Jenis Graph Graph dikelompokkan menurut ada tidaknya edge yang loop atau ganda, berdasarkan jumlah vertex, atau berdasarkan orientasi arah pada pada edge (arcs) (Munir, 2014). Dilihat dari ada tidaknya edge yang loop atau ganda pada suatu graph, maka secara umum graph dikelompokkan menjadi dua jenis : 1. Graph Sederhana (simple graph) adalah graph yang tidak memiliki edge yang paralel atau loop. Vertex-vertex pada graph sederhana dihubungkan dengan satu edge ke setiap vertex yang lain dan tidak ada edge yang vertex awal dan akhirnya sama. Contoh graph sederhana dapat dilihat pada gambar 2.2. A e1 B A e1 B e3 e2 e4 e5 e2 C D C e3 Gambar 2.2 Graph Sederhana 2. Graph Tidak Sederhana ( Unsimple Graph ) adalah graph yang memiliki edge ganda atau loop. Graph tidak sederhana terbagi lagi menjadi dua yaitu graph semu (pseudograph) dan multigraph. Graph semu (pseudograph) adalah graph yang memiliki gelang (loop) sehingga graph semu dapat terhubung dengan dirinya sendiri, sedangkan multigraph adalah graph yang memiliki edge ganda. Contoh graph tidak sederhana dapat dilihat pada gambar 2.3

( a ) ( b ) Gambar 2.3 (a) Multigraph, (b) Graph Semu ( Hayati & Yohanes, 2014 ) Dilihat dari orientasi arah pada sisinya (edge), maka secara umum graph dikelompokkan menjadi dua yaitu : 1. Graph tidak berarah (undirected graph) adalah graph yang sisinya (edge) tidak mempunyai orientasi arah. Pada graph ini, urutan pasangan vertex yang dihubungkan oleh vertex tidak diperhatikan (Munir, 2014). Contoh graph tidak berarah dapat dilihat pada gambar 2.4 e1 B e2 C A e3 e4 e5 e7 D E e6 Gambar 2.4 Graph Tidak Berarah 2. Graph berarah (directed graph atau digraph) adalah graph yang setiap sisinya (edge) diberikan orientasi arah. Pada graph berarah (u,v) dan (v,u) menyatakan dua buah edge berarah (arc) yang berbeda, dengan kata lain (u,v) (v,u). Untuk edge berarah (u,v), vertex u dinamakan vertex asal (initial vertex) dan vertex v dinamakan vertex akhir (terminal vertex) (Munir, 2014). Contoh graph berarah dapat dilihat pada gambar 2.5

A e1 C e2 e3 e4 D B e5 Gambar 2.5 Graph Berarah 3. Graph Berbobot (Weighted Graph) Graph berbobot adalah graph yang setiap sisinya (edge) diberi sebuah harga (bobot). Bobot pada tiap edge dapat berbeda-beda bergantung pada masalah yang dimodelkan dengan graph. Bobot dapat menyatakan jarak antara dua buah kota, waktu tempuh pesan (message) dari sebuah simpul (vertex) komunikasi ke simpul (vertex) komunikasi lain (dalam jaringan komputer), ongkos produksi dan sebagainya (Munir, 2014). Contoh graph berbobot dapat dilihat ada Gambar 2.6 A 2 B 4 6 2 D 5 C 4. Graph berbobot dan berarah Gambar 2.6 Graph Berbobot Graph berbobot dan berarah adalah graph yang setiap sisinya (edge) diberi sebuah harga (bobot) dan memiliki busur arah pada tiap edge nya dimana muatannya bebas dan memiliki bobot disetiap panah busur. Contoh graph berbobot dan berarah dapat dilihat pada gambar 2.7

A 5 B 2 10 5 D C 5 6 Gambar 2.7 Graph Berbobot dan Berarah 2.4 Algoritma L-Deque Algoritma L-Deque adalah sebuah algoritma pencarian lintasan terpendek (shortest path) yang menggunakan konsep linear list atau daftar linear. Deque disebut queue ganda atau double queue, penambahan dan penghapusan elemennya dapat dilakukan pada kedua ujung sisinya, tetapi tidak dapat dilakukan di tengah-tengah list. Deque merupakan sebuah daftar yang menggabungkan sifat-sifat dari antrian dan tumpukan (stack). Deque adalah sebuah daftar yang dapat melakukan penambahan dan penghapusan yang mungkin di kedua ujung. Sebuah deque sudah tekenal digunakan dalam algoritma D'Esopo-Pape, algoritma ini disebut L-Deque. Dalam Q deque digunakan penambahan L-Deque pada kedua ujungnya, sementara penghapusan dilakukan di kepala. Deque ini dapat diartikan sebagai Q antrian dan Q tumpukan" yang dihubungkan secara seri. (Gallo & Pallotino, 1986). Algoritma L-Deque ialah sebuah algoritma pencarian rute terpendek yang menggabungkan sifat dari antrian dan tumpukan, serta dapat melakukan penambahan dan penghapusan pada kedua ujung tetapi tidak dapat dilakukan ditengah tengah list (Gallo & Pallotino, 1986). Berdasarkan permasalahan diatas penulis ingin menemukan sistem yang efektif dalam penentuan jarak melalui dua perbandingan algoritma yang penulis ajukan. berikut: Algoritma L-Deque untuk mencari lintasan terpendek dapat dirumuskan sebagai 1. Input semua vertex yang ada pada graph ke dalam daftar data deque.

2. Tentukan vertex yang akan menjadi vertex asal dan tandai dengan nilai 0 pada vertex tersebut, kemudian berikan nilai inf ( ) kepada setiap vertex lainnya. 3. Periksa semua vertex yang dapat dikunjungi dari vertex asal (keberangkatan), dan periksa setiap edge (u,v) yang ada pada graph dan tentukan d[v] untuk lintasan terpendek pertama dengan cara : i. Hitung : d[v] > d[u] + edge [u] [v] ii. Jika d[v] > d[u] + edge [u] [v] maka d[v] = d[u] + edge [u] [v] dan tukar nilai inf ( ) pada vertex yang telah dikunjungi tersebut dengan nilai d[v]. Dan Jika ada nilai d[v] pada vertex tersebut dan nilai d[v] yang baru dihasilkan lebih kecil maka tukar nilai d[v] dengan nilai d[v] yang baru. 4. Dengan cara yang sama, ulangi langkah 2 untuk menentukan lintasan terpendek berikutnya. 5. Contoh sederhana penyelesaian sebuah graph untuk menentukan rute terpendek menggunakan algoritma L-Deque dengan vertex awal A dan vertex akhir F dapat dilihat pada gambar 2.8 dibawah ini. Gambar 2.8 Graph Berarah Terhubung Vertex asal pada graph diatas ialah vertex A, tandai vertex tersebut dengan nilai 0 dan beri nilai inf ( ) pada vertex lainnya. Dapat dilihat pada gambar 2.9. 0/- 10 /- 12 / - A C D 16 6 8 9 F B 7 / - E 5 /- 17 / - Gambar 2.9 Graph Penentuan Vertex Asal

Vertex yang dapat dikunjungi dari vertex A ialah vertex B dengan bobot jarak 6 dan juga vertex C dengan bobot jarak 10. Hitung d[v] untuk vertex B, d[v] > d[u] + edge [u][v], d[ B ] > d[ A ] + edge [ A ][ B ], d[ B ] > 0 + 6, inf > 6 sehingga didapat d[ B ] = 6 dan Tukar nilai inf ( ) pada vertex B dan hitung untuk vertex C, d[v] > d[u] + edge [u][v], d[ C ] > d[ A ] + edge [ A ][ C ], d[v] > 0 + 10, inf > 10, sehingga didapat d[ C ] = 6 dan tukar nilai inf ( ) pada vertex C. Dapat dilihat pada gambar 2.10. Gambar 2.10 Graph Rute yang dipilih dari Vertex A ke Vertex B dan Vertex C Kemudian pilih edge yang dapat dikunjungi dari vertex B, yaitu BE dengan bobot jarak 17. Hitung d[v] untuk vertex E, d[v] > d[u] + edge [u][v], d[ E ] > d[ B ] + edge [ B ][ E ], d[ E ] > 6 + 17, inf > 23 sehingga didapat d[ E ] = 23 dan Tukar nilai inf ( ) pada vertex E. Edge BD juga dapat dikunjungi dari vertex B dengan bobot jarak 9, hitung d[v] untuk vertex D, d[v] > d[u] + edge [u][v], d[ D ] > d[ B ] + edge [ B ][ D ], d[ D ] > 6 + 9, inf > 15 sehingga didapat d[ D ] = 15 dan tukar nilai inf pada vertex D. Dapat dilihat pada gambar 2.11. Gambar 2.11 Graph Rute yang dipilih dari Vertex B ke Vertex D dan Vertex E

Pilih edge yang dapat dikunjungi dari vertex C yaitu CD dengan bobot jarak 12. Hitung d[v] untuk vertex D, d[v] > d[u] + edge [u][v], d[ D ] > d[ C ] + edge [ C ][ D ], 15 > 10 + 12, 15 > 22 tidak sehingga nilai d[ D ] sebelumnya yang diambil untuk vertex D. Edge CB juga dapat dikunjungi dari vertex C dengan bobot jarak 8, hitung d[v] untuk vertex B, d[v] > d[u] + edge [u][v], d[ B ] > d[ C ] + edge [ C ][ B ], 6 > 10 + 8, 6 > 18 tidak sehingga nilai d[ B ] sebelumnya yang diambil untuk vertex B. Dapat dilihat pada gambar 2.12. Gambar 2.12 Graph Rute yang dipilih dari Vertex C ke Vertex B dan Vertex D Pilih edge yang dapat dikunjungi dari vertex D yaitu DE dengan bobot jarak 7. Hitung d[v] untuk vertex E, d[v] > d[u] + edge [u][v], d[ E ] > d[ D ] + edge [ D ][ E ], 23 > 15 + 7, 23 > 22 sehingga didapat d[ E ] = 22 untuk vertex E. Edge DF juga dapat dikunjungi dari vertex D dengan bobot jarak 16, hitung d[v] untuk vertex F, d[v] > d[u] + edge [u][v], d[ F ] > d[ D ] + edge [ D ][ F ], d[ F ] > 15 + 16, inf > 31 sehingga didapat d[ F ] = 31 dan tukar nilai inf pada vertex F. Dapat dilihat pada gambar 2.13. Gambar 2.13 Graph Rute yang dipilih dari Vertex D ke Vertex E dan Vertex F

Pilih edge yang dapat dikunjungi dari vertex E yaitu EF dengan bobot jarak 5. Hitung d[v] untuk vertex F, d[v] > d[u] + edge [u][v], d[ F ] > d[ E ] + edge [ E ][ F ], 31 > 22 + 5, 31 > 27 sehingga didapat d[ F ]= 27 untuk vertex F. Dapat dilihat pada gambar 2.14. Gambar 2.14 Graph Rute yang dipilih dari Vertex E ke Vertex F Hasil yang didapat dari contoh sederhana menentukan rute terpendek dengan algoritma L-Deque ialah : AB = 6 (direct) AE = 22 = AB + BD + DE AC = 10 (direct) AF = 27 = AB + BD + DE + EF AD = 15 = AB + BD 2.5 Random walk Algoritma Random Walk adalah algoritma pencarian lintasan terpendek dengan menggunakan metode acak, berjalan secara acak untuk mendapatkan hasil yang optimum dengan menghasilkan percobaan lebih dari satu kali namun memiliki batas percobaan, random (acak) dan walk (jalan) memiliki cara yang fleksibel untuk menentukan arah untuk sampai ke titik vertex yang diinginkan. Karena Random walk fleksibel maka hasil yang di dapat untuk mengetahui lintasan terpendek akan semakin mudah karena memiliki bahan perbandingan lebih dari satu.( patrick siarry, 2016). Algoritma Random Walk adalah proses stokastik yang dibentuk oleh penjumlahan berturut-turut independen, identik variabel acak terdistribusi adalah salah satu topik yang paling dasar dan dipelajari dengan baik probabilitas teori. Untuk jalan-jalan acak pada bilangan bulat, referensi utama adalah buku klasik oleh Spitzer. Teks ini menganggap hanya sebagian jalan-jalan tersebut, yaitu orang-orang yang sesuai dengan kenaikan distribusi dengan nol varians mean dan terbatas. Dalam hal ini,

seseorang dapat merangkum Hasil utama yang sangat cepat: teorema limit sentral menyiratkan bahwa di bawah sesuai rescaling yang membatasi distribusi normal, dan fungsional pusat teorema limit menyiratkan bahwa distribusi dari proses jalan-dihargai sesuai (setelah rescaling standar waktu dan ruang) pendekatan bahwa dari gerak brown (patrick siarry 2016). Algoritma Random walk dalam mencari lintasan terpendek dapt dirumuskan sebagai berikut : 1. Input semua vertex yang ada pada graph ke dalam daftar data random. 2. Tentukan vertex yang akan menjadi vertex asal dan tandai dengan nilai tertentu pada vertex tersebut, kemudian berikan nilai tertentu kepada setiap vertex lainnya. 3. Periksa semua vertex yang dapat dikunjungi dari vertex asal (keberangkatan) secara acak, kemudian lakukan perhitungan sesuai jalur yang di kunjungi sampai bertemu vertex tujuan.cara perhitungan Random Walk sebagai berikut : 1. Hitung : a1 (vertex asal) + a2 (vertex acak) + a3 (vertex acak) +... n (vertex tujuan) 2. Dengan cara yang sama, ulangi langkah 2 untuk menentukan lintasan terpendek berikutnya secara acak. Contoh sederhana penyelesaian sebuah graph untuk menentukan rute terpendek menggunakan algoritma Random walk dengan vertex awal A dan vertex akhir F dapat dilihat pada gambar 2.15. Lintasan terpendek pertama yang harus dipilih dari edge yang langsung bersisian dengan vertex A ialah acak, ada kemungkinan vertex B (AB) dengan bobot 6 atau vertex C (AC) dengan bobot 10, ditunjukkan pada gambar 2.15. A 10 12 C D 16 6 8 9 7 F B 17 E 5 Gambar 2.15 Graph Rute yang dipilih dari Vertex A ke Vertex B atau Vertex A ke Vertex C

Selanjutnya jika sudah memilih salah satu edge maka nilai yang di ambil di simpan untuk di lanjutkan pencarian secara acak kembali, sementara edge yang tidak dipilih disimpan didalam list untuk tidak di lalui kembali. Contoh edge yang dipilih adalah AB selanjutnya dipilih secara acak kembali,yang berdekatan dengan edge AB, yaitu edge BD dengan bobot 9 sehingga bobot totalnya 15, edge BE juga berdekatan dengan edge AB dengan bobot 17 sehingga bobot totalnya 23.maka dipilih salah satu dari edge secara acak Jadi memilih edge BD maka edge BE di simpan dalam list untuk tidak di lewati, ditunjukkan pada gambar 2.16. Gambar 2.16 Graph Rute yang dipilih dari Vertex B ke Vertex D Selanjutnya ketika titik akhir sudah ditemukan maka edge yang langsung dipilih adalah edge yang langsung bertemu dengan titik akhir, yaitu edge DF dengan bobot 16 sehingga bobot totalnya 31,. Jadi memilih edge DF karena langsung berhadapan dengan titik tujuan, ditunjukkan pada gambar 2.17. Gambar 2.17 Graph Rute yang dipilih dari Vertex D ke Vertex E

Hasil yang didapat dari contoh sederhana diatas menentukan rute terpendek menggunakan algoritma Greedy ialah A B D F dengan total jarak 31. 2.6 Kompleksitas Algoritma Pada bagian ini suatu algoritma dapat ditinjau efisiensinya, terdapat 2 jenin efisiensi yang dapat diaplikasikan yaitu efisiensi waktu (time efficiency) dan efisiensi ruang (space efficiency). Efisiensi waktu juga disebut time complexity yang mengindikasikan seberapa cepat sebuah algoritma tersebut berjalan. Efisiensi ruang juga disebut space complexity yang mengacu pada jumlah satuan memory yang diperlukan oleh sebuah algoritma terkecuali ruang yang diperlukan untuk input dan output. Adalah suatu hal yang penting untuk mencari efesiensi suatu algoritma karena dari efesiensi dapat dilihat kekurangan dan kelebihan algoritma terhadap beberapa entitas yang mempengaruhinya. Efesiensi algoritma didefinisikan dengan parameter n, dimana n adalah nilai input dari suatu algoritma. Parameter tersebut akan dihidangkan dengan polinomial p(n) = axn x +... + a0 dengan dregree n (Levitin, A. 2012).

BAB 3 ANALISIS DAN PERANCANGAN SISTEM 3.1 Analisis Sistem Analisis sistem adalah suatu proses mengumpulkan dan menginterpretasikan kenyataankenyataan yang ada, mendiagnosa persoalan dan menggunakan keduanya untuk memperbaiki sistem (kristanto, 2003). Selain itu pendapat lain,analisis sistem adalah teori sistem umum yang sebagai sebuah landasan konseptual yang mempunyai tujuan untuk memperbaiki berbagai fungsi di dalam sistem yang sedang berjalan agar menjadi lebih efisien, mengubah sasaran sistem yang sedang berjalan, merancang/mengganti output yang sedang digunakan, untuk mencapai tujuan yang sama dengan seperangkat input yang lain atau melakukan beberapa perbaikan serupa (Mulyanto, Agus. 2009 : 125). Dalam tugas akhir, fase analisis sistem merupakan bagian penting dalam penelitian ini. Pembahasan yang akan dibahas adalah analisis masalah dan analisis kebutuhan, analisis masalah bertujuan untuk mempermudah dalam memahami masalah yang akan diteliti, sedangkan analisis kebutuhan untuk menjelaskan fungsi-fungsi yang mampu dikerjakan oleh sistem. 3.1.1 Analisis Masalah Banyak pariwisata di simalungun yang sangat bagus untuk sarana liburan keluarga, dalam hal ini untuk mengunjungi semua titik pariwisata yang ada di simalungun diperlukan cara yang efektif dalam mencari jarak terpendek dan mendapatkan solusi yang lebih optimal, sehingga dapat menghemat waktu dengan efesiendengan ini penulis melakukan penelitian untuk mencari jarak terpendek untuk kasus pariwisata di simalungun dengan menggunakan algoritma Random Walk dan algoritma L-Deque. Permasalahan pada penelitian ini bukan hanya sebatas pencarian jarak terpendek dengan menggunakan perbandingan algoritma Random walk dan algoritma L-Deque,tetapi juga dengan mencari real running time dari algoritma tersebut. Vertex ditentukan berdasarkan beberapa nama wisata yang telah dipilih yang terdapat di Kabupaten Simalungun, dan edge merupakan panjang jarak jalan yang akan dilalui nantinya dari wisata satu ke wisata lainnya.

Terdapat 20 buah vertex,dalam representasi graph, penentuan hubungan antar vertexdan edge pada tempat wisata di Kabupaten Simalungun sangat diperlukan agar proses berjalan optimal. Dengan graph berarah terhubung dimana suatu graphjika ada walk yang menghubungkan setiap dua vertex (titiknya).setelah itu sistem akan melakukan perbandingan dengan menggunakan graph yang sama terhadap kedua algoritma Random Walk dan L-Deque.Analisis masalah dapat diidentifikasi dengan menggunakan diagram Ishikawa (fishbone diagram). Diagram Ishikawa merupakan suatu alat visual untuk mengidentifikasimengeksplorasidan secara graphik menggambarkan secara detail semua penyebab yang berhubungan dengan suatu permasalahan. Diagram Ishikawa sistem ini dapat dilihat pada Gambar 3.1. Material Metode Tidak adarute terpendek yang akan dilalui dari titik awal ke titik tujuan Tidak ada informasi jarak terpendek antar tempat wisata Algoritma L-Deque membutuhkan waktu yang lama Algoritma Random Walk tidak optimum Tidak ada aplikasi yang menghasilkan jarak valid untuk mencari rute terpendek antar tempat wisata Penentuan Rute Terpendek Antar Tempat Wisata di Kabupaten Simalungun dengan Algoritma Random Walk dan L-Deque User Sistem Gambar 3.1 Diagram Ishikawa

3.1.2 Analisis Kebutuhan Sistem Terdapat dua bagian pada analisis kebutuhan sistem yaitu kebutuhan fungsional dan kebutuhan non-fungsional. 3.1.2.1 Kebutuhan Fungsional Analisis kebutuhan fungsional mendekripsikan tentang sistem yang disediakan. Sistem ini melakukan perhitungan, perbandingan jarak dan waktu pencarian rute terpendek tempat wisata di Kabupaten Simalungun. Terdapat beberapa persyaratan fungsional antara lain: 1. Sistem ini menggunakan graphtempat wisata di Simalungun yang telah ditentukan. 2. Sistem ini dapat mengunakan vertex awal yang sudah ditentukan sebagai vertex asal. 3. Sistem mendapatkan hasil rute mana saja yang akan dilaui pada graph dengan menggunakan algoritma Random Walk dan algoritma L-Deque. 4. Sistem ini memilih parameter yang digunakan untuk perbandingan yaitu kesesuaian kompleksitas Big Ө (theta) kedua algoritma dan running time yang dibutuhkan untuk mendapatkan jarak terpendek. 3.1.2.2 Kebutuhan Non-Fungsional Kebutuhan non-fungsional adalah kebutuhan yang berisi kinerja operasional dan performance dari suatu sistem. 3.1.3Flowchart Flowchartadalahsuatu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses secara mendetail dan hubungan antara suatu proses (instruksi) dengan proses lainnya dalam suatu program.

3.1.3.1 Flowchart Sistem Flowchart darisistem yang akan dibangun dapat dilihat pada gambar 3.2 Mulai Masukkan Lokasi Awal dan Lokasi Tujuan Mencari Lokasi Awal dan Lokasi Tujuan Membentuk Graph Berbobot dan nama tempat wisata Hitung Rute Terpendek dengan Algoritma Random walk atau L- Deque Menampilkan Lintasan Terpendek dan Execution Time Selesai Gambar 3.2 Flowchart Sistem 3.1.3.2 Flowchart Algoritma L-Deque Flowchart dari algoritma L-Deque dapat dilihat pada Gambar 3.3.

Mulai Input Vertex Inisialisasi Q = jumlah vertex dalam Asumsikan vertex awal = 0 dan Mencari jarak terpendek dari vertex yang dipilih Tidak du+ luv<dv Ya d v = + Pv = u dv= du+ luv Simpan hasil jarak yang diperoleh Q = 0 Tidak Tampilkan Hasil Lintasan terpendek Selesai Gambar 3.3Flowchart Algoritma L-Deque

Keterangan : Dv : Nilai Titik Tujuan Du : Nilai Titik Asal Q : Hasil perhitungan + : Tidak terhingga UV : Asal + Tujuan

3.1.3.2Flowchart Algoritma Random Walk Flowchart dari algoritma RandomWalkdapat dilihat pada Gambar 3.4. Mulai Tentukan titik awal dan titik tujuan Memilih titik Secara Acak Menghitung jarak titikacak ke titik awal Memasukkan titik dan jarakterpilih acak dalam point untuk dilanjutkan kembali, dan titik tidak terpilih dimasukkan dalam list untuk tidak di gunakan lagi Pilih jarak secara acak dan dibatasi Memilih jarak yang paling dekat Tidak Ya Tampilakan Hasil Lintasan Terpendek Selesai Gambar 3.4Flowchart Algoritma Random Walk

3.2 Pemodelan Sistem ini dibangun dengan membuat use case diagram, sequence diagram dan activity diagram. 3.2.1 Use Case Diagram Use case adalah gambaran fungsional suatu sistem, sehingga user mengetahui layanan yang disediakan oleh sistem. Dimana penggambaran sistem dari sudut pandang user itu sendiri sehingga use case lebih ditekankan pada fungsionalitas yang ada pada sistem, bukan berdasarkan alur atau urutan kejadian. Berikut use case diagram dapat dilihat pada Gambar 3.5 Gambar 3.5 Use Case Diagram Random Walk dan L-Deque 3.2.2. Activity Diagram Activity diagramdapat menggambarkan berbagai alur aktivitas dalam sistem yang akan dirancang, bagaimana masing-masing alur berawal, decision yang mungkin terjadi dan bagaimana berakhir.

3.2.2.1 Activity Diagram Cara Kerja Sistem Dengan Algoritma L-Deque Activity diagram pada Gambar 3.6 menjelaskan proses kerja dari sistem untuk proses menentukan titik asal dan tujuan serta memilih algoritma L-Deque yang akan digunakan oleh user. Activity diagramsistem pada aplikasi yang dibuat dapat dilihat pada Gambar 3.6. Gambar 3.6Activity DiagramCara Kerja Sistem dengan Algortima L-Deque 3.2.2.2 Activity Diagram Cara Kerja Sistem Dengan Algoritma Random Walk Activity diagram pada Gambar 3.7 menjelaskan proses kerja dari sistem untuk proses menentukan titik asal dan tujuan serta memilih algoritma Random Walkyang akan digunakan oleh user. Activity diagramsistem pada aplikasi yang dibuat dapat dilihat pada Gambar 3.7.

Gambar 3.7Activity DiagramCara Kerja Sistem Dengan Algortima Random walk 3.2.3 Sequence Diagram Sequence diagram mengilustrasikan bagaimana message dikirim dan diterima diantara objek dan diurutan yang sama, sequence membantu untuk menggambarkan data yang masuk dan keluar sistem. Sequence diagram sistem ini dapat dilihat pada Gambar 3.8. 3.3 Perancangan Antarmuka (Interface) Gambar 3.8Sequence Diagram Sistem

Perancangan antarmuka (interface) merupakan bagian penting dalam membangun sebuah sistem.antarmuka yang baik perlu memperhatikan faktor pengguna dalam menggunakan sistem, selain untuk mempermudah pengguna dalam menggunakan sistem yang dibangun juga perlu diperhatikan kenyamanan dari pengguna dalam menggunakan sistem tersebut. Antarmuka yang terdapat pada sistem ini adalah halaman menu Home, Shortest Path, Help dan About. 3.3.1 Halaman Menu Home Halaman Home merupakan halaman utama yang ditampilkan dari sistem ketika sistem dijalankan.tampilan rancangan halaman menu Home dapat dilihat padagambar 3.9 dan keterangan gambar rancangan halaman pada Tabel 3.1. Gambar 3.9 Rancangan Antarmuka Halaman Menu Home Tabel 3.1 Keterangan Gambar Rancangan Antarmuka Halaman Menu Home

No Keterangan 1 TabControl berfungsiuntuk menunjukkan halaman-halaman yang tersediapadasistem 2 Text Box untuk menampilkan judul skripsi, nama dan NIM 3 Picture Box untuk menampilkan logo 4 Text Box untuk menampilkan Program Studi 3.3.2 Halaman Menu Shortest Path Halaman Shortest Pathmerupakan halaman yang tampil saat pengguna memilih menu Shortest Path pada halaman utama Home. Pada halaman ini pengguna dapat melihat graph yang akan ditampilkan, memilih algoritma yang akan digunakan, serta melihat hasil total jarak, rute dan execution time dari kedua algoritma tersebut. Rancangan halaman menu Shortest Path dapat dilihat pada Gambar 3.10 dan keterangan gambar rancangan halaman pada Tabel 3.2. 1 Home Shortest Path Help About 2 3 4 Informasi Tempat Wisata Terdekat Berdasarkan Jarak Nama Tempat Wisata Rute yang dilalui Jarak 12 13 5 6 7 8 9 10 11 15 Lihat objek Wisata Lihat Graph 14 Gambar 3.10 Rancangan Antarmuka Halaman Menu Shortest Path Tabel 3.2 Keterangan Gambar RancanganAntarmuka Halaman Menu Shortest Path

No Keterangan 1 Tab Control untuk menunjukkan halaman yang tersedia pada sistem 2 Label untuk Tentukan Rute 3 Label untuk Asal 4 Combo Box untuk pemilihan vertex asal 5 Label untuk Tujuan 6 Combo Box untuk pemilihan vertex tujuan 7 Label untuk Algoritma 8 Combo Box untuk Pilihan Algoritma 9 Button untuk menampilkan Proses 10 Label untuk Waktu Proses 11 Text Boxuntuk menampilkan Hasil Wakru Proses 12 Label untuk judul tabel 13 Datagridview untuk menampilkaninformasi tempat wisata terdekat berdasarkan jarak 14 Button untuk menampilkan graph 15 Button untuk menampilkan objek wisata yang tersedia 3.3.3 Halaman Menu Help Halaman Helpmerupakan halaman yang tampil saat pengguna memilih menupada menu bar. Pada halaman ini pengguna dapat melihat petunjuk penggunaan dari sistem. Rancangan halaman menu Help dapat dilihat pada Gambar 3.11 dan keterangan gambar rancangan halaman pada Tabel 3.3.

1 Home Shortest Path Help About PETUNJUK PENGGUNAAN SISTEM 2 3 Gambar 3.11 Rancangan Antarmuka Halaman Menu Help Tabel 3.3 Keterangan Gambar RancanganAntarmuka HalamanMenu Help No Keterangan 1 Tab Control untuk menunjukkan halaman yang tersedia pada sistem 2 Label untuk menampilkan judul petunjuk penggunaan system 3 Text Box untuk menampilkan urutan penggunaan system 3.3.5 Halaman Menu About Halaman Tentangmerupakan halaman yang berisi biodata penulis dan penjelasan lainnya, rancangan halaman menu Tentang dapat dilihat pada Gambar 3.12 dan keterangan gambar rancangan halaman pada Tabel 3.4.

1 Home Shortest Path Help About 2 3 Gambar 3.12 Rancangan Antarmuka Halaman Menu About Tabel 3.4 Keterangan Gambar RancanganAntarmuka HalamanMenu About No Keterangan 1 Tab Control untuk menunjukkan halaman yang tersedia pada sistem 2 Text Box untuk menampilkan informasi tentang aplikasi secara umum 3 Picture Box untuk menampilkan logo fakultas

BAB 4 IMPLEMENTASI DAN PENGUJIAN 4.1 Implementasi Implementasi sistem merupakan lanjutan dari tahap analisis dan perancangan sistem. Sistem ini menggunakan bahasa pemograman JAVA. Pada sistem ini terdapat 4 (empat) tampilan halaman yang akan di gunakan yaitu Halaman Home, Halaman Shortest Path, Halaman Help dan Halaman About. 4.1.1 Tampilan Halaman Menu Home Tampilan halaman menu home merupakan tampilan halaman awal ketika menjalankan sistem. Halaman berisi Judul sisitem nama penulis, nim penulis, logo Universitas dan nama Pogram Studi. Tampilan halaman menu home dapat dilihat pada Gambar 4.1. Gambar 4.1 Tampilan Menu Home 4.1.2 Tampilan Halaman Menu Shortest-Path Tampilan halaman menu shortest-path merupakan tampilan kedua yang berisi asal, tujuan, algoritma yang akan di gunakan, proses waktu proses, lihat graph, dan informasi tempat

wisata berdasarkan jarak. Tampilan halaman menu shortest-path dapat dilihat pada Gambar 4.2. Gambar 4.2 Tampilan Halaman Menu Shortest-Path Tampilan Graph dapat dilihat pada gambar 4.3. Gambar 4.3 Graph Tempat Wisata di Kabupaten Simalungun 4.1.3 Tampilan Halaman Menu Help Tampilan halaman menu help merupakan halaman yang berfungsi sebagai petunjuk penggunaan dari sistem ini. Tampilan halaman menu help dapat dilihat pada gambar 4.4.

Gambar 4.4 Tampilan Halaman Menu Help 4.1.4 Tampilan Halaman Menu About Tampilan halaman menu About merupakan halaman yang berisi deskripsi singkat tentang aplikasi dan biodata penulis serta penjelasan lainnya. Tampilan halaman menu about dapat dilihat pada Gambar 4.5. Gambar 4.5 Tampilan Halaman Menu About

4.2 Pengujian Pengujian sistem merupakan tahap lanjutan setelah implementasi sistem. Pengujian sistem bertujuan untuk menguji sistem berjalan sesuai harapan. Pengujian sistem dilakukan pada graph tempat wisata yang telah ditentukan dengan menggunakan dua algoritma dan membandingkan real running time serta hasil dari jarak terpendek. 4.2.1 Pengujian Proses Implementasi Proses pengujian dilakukan dengan cara memilih salah satu tempat wisata sebagai titik asal, contohnya Perapat dan juga memilih salah satu tempat wisata sebagai titik tujuan akhir, jika menggunakan Algoritma Random walk, contoh Perapat ke Simarjarunjung digunakan salah satu algoritma Random walk. Maka akan muncul tampilan seperti Gambar 4.6. Gambar 4.6 Proses Pengujian Implementasi 4.2.2 Pengujian Proses Algoritma L-Deque Algoritma L-Deque tidak harus ditentukan titik tujuan, yang harus ditentukan hanya titik awal, contohnya Perapat dan algoritma yang dipilih, contohnya Algoritma L-Deque. Kemudian klik button Proses dimana button Proses akan melakukan pencarian menggunakan algoritma L-Deque dan hasil pencarian akan ditampilkan pada tabel

Informasi Tempat Wisata Terdekat Berdasarkan jarak serta menampilkan waktu yang dibutuhkan algoritma tersebut dalam melakukan proses pencarian, dapat dilihat pada gambar 4.7. Gambar 4.7 Hasil Pengujian menggunakan Algoritma L-Deque 4.2.2.1 Perhitungan Manual Algoritma L-Deque Contoh pencarian lintasan terpendek dengan menggunakan algoritma L-Deque dapat dilihat pada Gambar 4.8. Gambar 4.8 Graph Perhitungan Algoritma L-Deque

Tentukan vertex yang akan menjadi titik asal yaitu vertex A kemudian tandai dengan nilai 0 dan vertex lainnya nilai inf ( ). Contohnya graph pada gambar 4.8 dimana : d [ A ] = 0 d [ E ] = inf d [ I ] = inf d [ M ] = inf d [ Q ] = inf d [ B ] = inf d [ F ] = inf d [ J ] = inf d [ N ] = inf d [ R ] = inf d [ C ] = inf d [ G ] = inf d [ K ] = inf d [ O ] = inf d [ S ] = inf d [ D ] = inf d [ H ] = inf d [ L ] = inf d [ P ] = inf d [ T ] = inf Kemudian beri nilai null pada point (p) tiap vertex : d [ A ] = null d [ F ] = null d [ K ] = null d [ P ] = null d [ B ] = null d [ G ] = null d [ L ] = null d [ Q ] = null d [ C ] = null d [ H ] = null d [ M ] = null d [ R ] = null d [ D ] = null d [ I ] = null d [ N ] = null d [ R ] = null d [ E ] = null d [ J ] = null d [ O ] = null d [ T ] = null Dapat dilihat pada gambar 4.9. Gambar 4.9 Graph Perhitungan Algoritma L-Deque dalam Penentuan Vertex Asal Vertex yang bisa dikunjungi dari vertex A ialah vertex B dengan bobot jarak 19,8, vertex C dengan bobot jarak 30,4 dan vertex 15 dengan bobot jarak 25,5. Hitung d[v] untuk vertex B : d[v] > d[u] + edge [u][v] d[ B ] > d[ A ] + edge [ A ][ B ] d[ B ] > 0 + 19,8 inf > 19,8 Jadi diperoleh d[ B ] = 19,8 yaitu lintasan terpendek dari vertex A ke vertex B melalui vertex A.Kemudian hitung untuk vertex C : d[v] > d[u] + edge [u][v] d[ C ] > d[ A ] + edge [ A ][ C ]

d[v] > 0 + 30,4 inf > 30,4 Jadi diperoleh d[ C ] = 30,4 yaitu lintasan terpendek dari vertex A ke vertex C melalui vertex A. Kemudian hitung untuk vertex 15 : d[v] > d[u] + edge [u][v] d[ 15 ] > d[ A ] + edge [ A ][ 15 ] d[v] > 0 + 25,5 inf > 25,5 Jadi diperoleh d[ C ] = 25,5 yaitu lintasan terpendek dari vertex A ke vertex 15 melalui vertex A. Maka dari tiga percobaan awal dimana vertex 1 sebagai titik acuan, maka nilai minimum adalah perhitungan vertex 1 ke vertex 2 dengan bobot jarak 19,8 Km. Gambar 4.10 perhitungan Graph dari Vertex asal ke vertex 2,3,15 Selajutnya vertex 2 dijadikan sebagai titik perbandingan berikutnya. Vertex 2 akan mengecek sesuai Index yang di tetapkan. Dan ditemukan vertex yang bersinggungan dengan vertex 2 adalah vertex 4. Kemudian hitung untuk vertex 4 : d[v] > d[u] + edge [u][v] d[ 4 ] > d[ 2 ] + edge [ 2 ][ 4 ]

d[v] > 19.8 + 14.7 inf > 34,5 Gambar 4.11 Graph Perhitungan vertex 2 ke vertex 4 karena vertex 4 langsung bersinggungan dengan vertex tujuan maka vertex 4 langsung mengeksekusi vertex 5. Kemudian hitung vertex 5: d[v] > d[u] + edge [u][v] d[ 5 ] > d[ 4 ] + edge [ 4 ][ 5 ] d[v] > 34.5 + 31.3 inf > 65.8 Gambar 4.12 Graph Perhitungan vertex 4 ke vertex 5 Maka, urutan path yang di lewati adalah 1-2-3-4-5 = 65.8 Hasil lintasan terpendek yang diperoleh dari graph diatas dengan algoritma L-Deque ialah

1-2 = 19.8 4-5= 65.8 2-4 = 34.5 (12+24+45)= 65.8 4.2.3.1 Perhitungan Manual Algoritma Random Walk Contoh pencarian lintasan terpendek dengan menggunakan algoritma Random Walk dengan vertex awal A dan vertex akhir f dapat dilihat pada gambar 4.30. Gambar 4.13 Graph Perhitungan Algoritma Random walk Lintasan Awal dari vertex 1 dilakukan acak, Random walk meniadakan bobot minimum ataupun maksimum, yang terpenting adalah tetap memiliki jalur untuk di lewati ketitik tujuan. Maka jalur yang dipilih dari vertex awal adalah bersifat acak. Misalkan jalur yang dipilih adalah vertex 3, (1.3) dengan bobot 30,4 ditunjukkan dengan gambar 4.31 Gambar 4.14 Graph Algoritma Random walk dengan Rute yang dipilih dari Vertex 1 ke Vertex 3 Selanjutnya memilih edge yang acak dengan edge 1.3, yaitu edge 3.4 dengan bobot 14,3 sehingga bobot totalnya 44.7, ditunjukkan pada gambar 4.32.

Gambar 4.15 Graph Algoritma Random walk dengan Rute yang dipilih dari Vertex 3 ke Vertex 4 Karena vertex 4 sudah bersisian langsung dengan tujuan maka vertex 4 langsung di jumlahkan dengan vertex 5 dengan bobot nilai 31.3 maka bobot totalnya menjadi 76. Ditunjukkan dengan gambar 4.33. Gambar 4.16 Graph Algoritma Random walk dengan Rute yang dipilih dari Vertex 4 ke Vertex 5 Hasil yang didapat dari contoh sederhana diatas menentukan rute terpendek menggunakan algoritma Randomwalk ialah 1 3 4 5 dengan total jarak 76 Km. 4.3 Kompleksitas

4.3.1 Kompleksitas Algoritma L-Deque Perhitungan kompleksitas algoritma L-Deque dapat dilihat pada Tabel 4.1. Tabel 4.1 Kompleksitas Algoritma L-Deque Listing Program C # C*# for (i = 0; i < N_node; i++) { C1 N C1N dist[i] = 99999; C2 N C2N prev[i] = -1; } C2 N C2N start = source; C2 1 C2 selected[start] = 1; C2 1 C2 dist[start] = 0; C2 1 C2 while (selected[target] == 0) { C3 N C3N min = 99999; C2 N C2N m = 0; C2 N C2N for (i = 0; i < N_node; i++) { C1 N 2 C1N 2 d = dist[start] + cost[start][i]; C2 N 2 C2N 2 if (d < dist[i] && selected[i] == 0) { C4 N 2 C4N 2 dist[i] = d; C2 N 2 C2N 2 prev[i] = start; } C2 N 2 C2N 2 if (min > dist[i] && selected[i] == 0) { C4 N 2 C4N 2 min = dist[i]; C2 N 2 C2N 2 m = i; }} C2 N 2 C2N 2

start = m; C2 N C2N selected[start] = 1; } C2 N C2N Dari perhitungan kompleksitas waktu pada Tabel 4.1 maka diperoleh T( n ) yang merupakan jumlah kolom C*# sebagai berikut: T (n) = nn ii=1 Ci#i = (C1+5C2+2C4)N 2 +(C1+6C2+C3)N+3C2 = Ɵ (n 2 ) Tabel 4.1 menunjukkan hasil perhitungan kompleksitas algoritma L- Deque. Kolom CC pada tabel 4.1 merupakan kolom yang menunjukkan berapa kali processor melakukan komputasi. Kolom # sebagai variabel untuk menghitung pengerjaan satu baris program. Kolom CC xx # menghitung hasil perkalian kolom CC dengan #. Hasil dari kolom CC xx # dijumlahkan sehingga diperoleh hasil kompleksitas algoritma L Deque yaitu Ɵ (nn 2 ). 4.4.2 Kompleksitas Algoritma Random walk Perhitungan kompleksitas algoritma Random walk dapat dilihat pada Tabel 4.2. Tabel 4.2 Kompleksitas Algoritma Random walk Listing Program C # C*# for (i = 0; i < N_node; i++) { C1 N C1N dist[i] = 0; C2 N C2N prev[i] = -1; } C2 N C2N start = source; C2 1 C2 selected[start] = 1; C2 1 C2 while (selected[target] == 0) { C3 N C3N test_track = test_backtrack(cost, selected, start, N_node); C2 N C2N

if (test_track == 1) { C4 N C4N if (cost[start][target] == inf) { C4 N C4N for (i = 0; i < N_node; i++) { C1 N 2 C1N 2 matriks[i] = cost[start][i]; } C2 N 2 C2N 2 random = getrandom(matriks); C2 N C2N while (matriks[random] == inf selected[random] == 1) random = getrandom(matriks); } } C3 N 2 C3N 2 C2 N 2 C2N 2 else { random = target; } C2 N C2N i = random; C2 N C2N d = dist[start] + cost[start][i]; C2 N C2N dist[i] = d; C2 N C2N prev[i] = start; C2 N C2N start = i; C2 N C2N selected[start] = 1; } else { C2 N C2N for (i = 0; i < N_node; i++) { C1 N 2 C1N 2 if (i == start) { C4 N 2 C4N 2 start = prev[i]; C2 N 2 C2N 2 dist[i] = dist[i] - cost[start][i]; C2 N 2 C2N 2 prev[i] = -1; } } } } C2 N 2 C2N 2

Dari perhitungan kompleksitas waktu pada Tabel 4.1 maka diperoleh T( n ) yang merupakan jumlah kolom C*# sebagai berikut: T (n) = nn ii=1 Ci#i = (2C1+5C2+C3+C4)N2+(C1+2C2+C3+2C4)N+2C2 = Ɵ (n 2 ) Tabel 4.1 menunjukkan hasil perhitungan kompleksitas algoritma Random walk. Kolom CC pada tabel 4.1 merupakan kolom yang menunjukkan berapa kali processor melakukan komputasi. Kolom # sebagai variabel untuk menghitung pengerjaan satu baris program. Kolom CC xx # menghitung hasil perkalian kolom CC dengan #. Hasil dari kolom CC xx # dijumlahkan sehingga diperoleh hasil kompleksitas algoritma Random walk yaitu Ɵ (nn 2 ). 4.4 Real Running-Time Pengujian dilakukan untuk mencari real running time dengan algoritma L-Deque dan algoritma Random walk. Sebelum mengetahui real running time, user harus memilih titik awal dan titik tujuan tempat wisata yang akan dikunjungi. Pengujian dilakukan sebanyak tiga kali terhadap tempat wisata yang akan dijadikan titik asal ke tempat wisata terdekat. Kemudian dihitung nilai rata-rata waktu proses yang diperoleh. 4.4.1 Real Running Algoritma L-Deque Proses pengujian dilakukan secara manual dengan bahasa pemrograman JAVA. Hasil pengujian yang dilakukan terhadap tempat wisata yang dijadikan titik asal ke tempat wisata terdekat menggunakan algoritma L-Deque dapat dilihat pada tabel 4.3 Tabel 4.3 Hasil Pengujian Running Time Algortima L-Deque No Rute Total Jarak (km) Waktu proses (ms) 1 1 4 34.5 0.017676 2 2 4 14.7 0.011974 3 3 4 14.3 0.16535 4 5 4 31.3 0.014824 5 6 4 79.8 0.022237 6 7 4 60.7 0.019386 7 8 4 47.9 0.021667

8 9 4 73.2 0.03079 9 10 4 94.4 0.041053 10 11 4 100.1 0.038202 11 12 4 116.8 0.038772 12 13 4 169.2 0.042764 13 14 4 189.3 0.057062 14 15 4 222.1 0.061579 15 16 4 80.5 0.023948 16 17 4 147.5 0,03877 17 18 4 79.1 0.026229 4.4.2 Real Running Algoritma Random walk Proses pengujian dilakukan secara manual dengan bahasa pemrograman JAVA. Hasil pengujian yang dilakukan terhadap tempat wisata yang dijadikan titik asal ke titik tujuan tempat wisata menggunakan algoritma Random walk dapat dilihat pada tabel 4.4. Tabel 4.4 Hasil Pengujian Running Time Algortima Random walk NO Rute Total Jarak Waktu proses (ms) (km) 1 1 4 58.3 0,102633 2 2 4 14.7 0,063861 3 3 4 14.3 0,087808 4 5 4 31.3 0,06557 5 6 4 80.8 0,396846 6 7 4 60.7 0,96931 7 8 4 125.8 0,266275 8 9 4 245.9 0,193862 9 10 4 94.4 0,174475 10 11 4 272.8 0,391714 11 12 4 144 0,194431 12 13 4 341.9 0,362635 13 14 4 216.6 0,12487

14 15 4 356.2 0,12 601 15 16 4 265.4 0,15851 16 17 4 198.8 0,109474 17 18 4 79.1 0,115177

BAB 5 KESIMPULAN DAN SARAN 5.1 Kesimpulan Berdasarkan hasil studi literatur, implementasi, dan pengujian sistem ini, maka kesimpulan yang didapat adalah sebagai berikut: 1. Telah diterapkannya algoritma Random walk dan algoritma L-Deque dalam penentuan rute terpendek antar tempat wisata di Kabupaten Simalungun. 2. Hasil pencarian rute terpendek antar tempat wisata di Kabupaten Simalungun. dengan menggunakan algoritma Random walk dan algoritma L-Deque diperoleh bahwa algoritma L-Deque lebih optimum dibandingkan algoritma Random walk. 3. Berdasarkan hasil pengujian dari kedua algoritma, algoritma Random walk memiliki nilai running time yang lebih lama dibandingkan algoritma L-Deque yang memiliki running time yang lebih cepat dan optimum. 4. Hasil pengujian algoritma Random walk dan algoritma L-Deque ini hanya berlaku pada penelitian ini dan bisa jadi berbeda untuk graph atau Lokasi yang berbeda dari penelitian wisata Kab. Simalungun 5.2 Saran Saran-saran yang dapat dipertimbangkan untuk penelitian maupun pengembangan berikutnya adalah: 1. Sistem ini sebaiknya dikembangkan dengan menambah jumlah simpul (vertex) dan sisi (edge). 2. Sistem ini menggunakan algoritma Random walk dan algoritma L-Deque. Untuk pengembangan selanjutnya sebaiknya menggunakan algortima yang lain atau lebih dari 2 algoritma untuk lebih mengetahui algoritma mana yang lebih baik dan lebih cepat serta mengetahui perbandingan kinerja tiap algoritma. 3. Sistem ini dapat dikembangkan pada studi kasus lainnya.

Daftar pustaka Wahyudi, Bambang. 2004. Penghantar struktur data dan algoritma : penerbit andi Gallo, Giorgo dan pallotino, Stefano. 1998. Shortest Path algorithms. Annals of Operation research 13.3-79 3. Barakbah, Ali Ridho., Karlita, Tita., Ahsan, Ahmad Syauqi. 2013. Logika dan Algoritma. Surabaya. Gallo, G &Pallotino, S. 1986. Shortest Path Methods : A Unifying Approach. Mathematical Programming Study 26: 38-64. Irvanda, K. 2016. Implimentasi dan Perbandingan Algoritma L-Deque dengan Algoritma Floyd Warshall Dalam Pencarian Foto Studio Terdekat di Kota Medan. Skripsi. Universitas Sumatera Utara. Munir, R. 2014. Matematika Diskrit. Edisi Revisi Kelima. Informatika Bandung: Bandung. Wirdasari, Dian.2011.Teori Graph Dan ImplementasinyaDalamIlmuKomputer: JurnalSAINTIKOM,Vol. 10 / No. 1 / Januari 2011,Program StudiIlmu Komputer,. Siaary, Patrick. 2016. Metaheuristics : Ebook Springer International Publishing Switzerland. Pallottino, Stefano. Grazia Scutella, Maria. 1997. Shortest Path Algorithms in Transportation model: classical and innovative aspects. Dipartimento Di Informatica, Universita Di Pisa. Mishra, P. K. 20016. Computational Efficiency of Shortestpath Algorithms In C Language. Birla Institute of Technology India. Agus Mulyanto. 2009. Sistem Informasi Konsep dan Aplikasi. Pustaka Pelajar. Yogyakarta Andri Kristanto, 2003, Perancangan Sistem Informasi dan Aplikasinya, Penerbit :Gava. Media, Jakarta

LISTING PROGRAM Random Walk /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools Templates * and open the template in the editor. */ package algoritma; import java.util.random; import java.util.scanner; /** * * @author Ramadhani */ public class RandomWalk { public int dist[]; public int prev[]; public int selected[];

public static int inf = 99999; public int N_node; public char path[]; public int adjacencymatrix[][]; int matriks[]; long tstart = 0, tstop = 0, tdelta = 0; public String hasil; public RandomWalk(int N_node) { this.n_node = N_node; dist = new int[n_node]; prev = new int[n_node]; selected = new int[n_node]; path = new char[n_node]; matriks = new int[n_node]; } public static int test_backtrack(int cost[][], int selected[], int source, int n_node) { int i, test_back = 0; for (i = 0; i < n_node; i++) { { if (cost[source][i]!= inf && selected[i] == 0) test_back = 1; } } return test_back;

} public static int getrandom(int[] array) { int rnd = new Random().nextInt(array.length); return rnd; } public int ldque(int cost[][], int source, int target) throws InterruptedException { tstart = System.currentTimeMillis(); int i, start, d, j, random = 0, test_track; for (i = 0; i < N_node; i++) { dist[i] = 0; prev[i] = -1; } start = source; selected[start] = 1; while (selected[target] == 0) { test_track = test_backtrack(cost, selected, start, N_node); if (test_track == 1) { if (cost[start][target] == inf) {

for (i = 0; i < N_node; i++) { matriks[i] = cost[start][i]; } random = getrandom(matriks); while (matriks[random] == inf selected[random] == 1) { random = getrandom(matriks); } } else { } random = target; i = random; d = dist[start] + cost[start][i]; dist[i] = d; prev[i] = start; start = i; selected[start] = 1; } else { for (i = 0; i < N_node; i++) { if (i == start) { start = prev[i];

dist[i] = dist[i] - cost[start][i]; prev[i] = -1; } } } } start = target; j = 0; hasil = ""; while (start!= -1) { path[j++] = (char) (start + 65); start = prev[start]; } for (i = path.length - 1; i >= 0; i--) { if ((int) path[i]!= 0) { hasil += path[i]; } } System.out.print("\n\n"); tstop = System.currentTimeMillis(); tdelta = tstop - tstart; return dist[target];

} public String getpath(){ return hasil; } public long gettime() { return tdelta; } }

LISTING PROGRAM L-Deque /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools Templates * and open the template in the editor. */ package algoritma; /** * * @author Ramadhani */ public class LDeque { public static int dist[]; public static int prev[]; public static int selected[]; public static int inf = Integer.MAX_VALUE; public int N_node; public static char path[]; public static int adjacencymatrix[][]; long tstart = 0, tstop = 0, tdelta = 0; public String hasil; public LDeque(int N_node) { this.n_node = N_node;

dist = new int[n_node]; prev = new int[n_node]; selected = new int[n_node]; path = new char[n_node]; } public int ldque(int cost[][], int source, int target) { tstart = System.currentTimeMillis(); int i, m, min, start, d, j; for (i = 0; i < N_node; i++) { dist[i] = 99999; prev[i] = -1; } start = source; selected[start] = 1; dist[start] = 0; while (selected[target] == 0) { min = 99999; m = 0; for (i = 0; i < N_node; i++) { d = dist[start] + cost[start][i];

if (d < dist[i] && selected[i] == 0) { dist[i] = d; prev[i] = start; } if (min > dist[i] && selected[i] == 0) { min = dist[i]; m = i; } } start = m; selected[start] = 1; } start = target; j = 0; while (start!= -1) { path[j++] = (char) (start + 65); start = prev[start]; } hasil = ""; for (i = path.length - 1; i >= 0; i--) { if ((int) path[i]!= 0) { hasil += path[i]; }

} tstop = System.currentTimeMillis(); tdelta = tstop - tstart; return dist[target]; } public String getpath(){ return hasil; } public long gettime() { return tdelta; } }

CURICULUM VITAE Nama Lengkap : Ramadani Nama Panggilan : Dani Tempat/Tanggal Lahir : Medan / 09 Februari 1996 Jenis Kelamin : Pria Agama : Islam Warga Negara : Indonesia Alamat : Jl. Menteng 7, Grand Menteng Indah No.88 M, Medan Sumatera Utara Mobile Phone : 081397660250 E-mail : madansyafaat@gmail.com PENDIDIKAN Perguruan Tinggi Fakultas Ilmu Komputer dan Teknologi Informasi Program Studi S1 Ilmu Komputer Sekolah Menengah Atas MAN Simalungun 2010-2013 Sekolah Menengah Pertama SMP Muhammadiyah 54 Kerasaan,Simalungun 2007-2010 Sekolah Dasar SD Negeri 091633 Kerasaan II Kec.Pem.bandar Simalungun

2001-2007 KEMAMPUAN KOMPUTER Programming: C++, HTML,Java,VB.net Database : MySQL IDE : Dev CPP, Notepad ++ Software : Ms. Word, Ms.office,SPSS,Visual Basic,Eclips,C++ PROJEK YANG PERNAH DIKERJAKAN Sistem Aljabar boolean Dev Pascal Tugas Mata Kuliah Logika Komputer Sistem Periksa Kesehatan Masyarakat Umum Dev Cpp Tugas Mata Kuliah Algoritma dan Pemograman Sistem Informasi Beasiswa Notepad ++ Tugas Mata Kuliah Pemograman Internet Sistem Pemasukan Administrasi Keuangan Database Rumah Sakit Tugas Mata Kuliah SMDB(Sistem Manajemen Dan Database) Permainan Perhitungan Dengan Mengunakan Java Tugas Praktikum Pemograman Berorientasi Objek PENGALAMAN KERJA No Instansi/Lembaga Jabatan/Posisi Tahun 1 Private course Teacher 2013-2015 2 Molen Arab Reseller 2013-2015

PENGALAMAN PELATIHAN No. Pelatihan Tahun 1 Training Islami Ceria dan Kreatif (TRICK) 2013 2 Training Oganisasi leadershipp (TROL) 2013 3 TRAP Ukmi Alkhuarizmi 2014 4 Training Relawan Narkoba 2011 5 Akademy Alkhuarizmi (AA) 2014 6 Training Fun Way to Be Smart 2014 7 National Ladership Camp 2014 8 DPD(Daurah Pionir Dakwah) 2014 9 Pelatihan Design UI & UX DI.LO 2014 10 Pelatihan Teknik Persidangan 2013 PENGALAMAN ORGANISASI/KEPANITIAAN No Organisasi Jabatan Tahun 1 UKMI Al-Khuwarizmi Ketua Divisi Database dan Pembinaan Kaderisasi 2014 4 Smart Generation Comunity Anggota Smart one 2014 6 Kepanitian Open BTS Anggota Pubdekdok 2014 7 Kepanitian Pekan Raya Kader USU Anggota PTT 2014 8 Kepanitian Hari Ibu Ketua Panitia 2013

9 SABUN(Sahabat Beasiswa untuk Negeri) Staff 2013-Sekarang 10 Kepanitiaan Competition Sains Se- Ketua Divisi Sosialisasi dan Publikasi SUMUT Aceh Sekolah 2014 11 Kepanitiaan Porseni Fasilkom-TI Anggota Acara 2014-2015 12 TRICK (Training Islam Ceria & Kreatif) Kadiv Humas 2014-2015 13 AFEST(Alkhuarizmi Festival) Anggota Peralatan 2014 14 Panitia Smart 1 Kordinator PTT 2015 15 Kepanitiaan Temu Wilayah MITI Sumbagut Staff Dana 2015 16 KAM RABBANI Kepala Bidang Kaderisasi 2015-2016 PRESTASI No Prestasi Tahun 1 Juara 3 lomba Pidato Kebangsaan BKKBN 2013 2 Juara 2 Lomba Lari 2014 SEMINAR No. Seminar Tahun 1 Seminar Kompas Gramedia 2014 2 Seminar Open BTS 2014 3 Seminar What Will you be 2013 4 Seminar Gelora Literasi Teknologi Informasi & Komunikasi Si GELITIK 2013 5 Seminar Kesehatan Sekolah 2012 6 Seminar Relawan Narkoba SMA 2012 7 Seminar Kebangsaan Proxy War Oleh Jend.Gatot Nurmintyo TNI AD 2014

8 Seminar International Youth Convention Young People of Character-The Hope of the Future 2014 9 Senarai 2014 10 Seminar EDUTAINMENT Para CEO Terkemuka 2014 11 Seminar XL FutureLeader 2015 Motto Hidup : Jika Ingin perubahan besar maka rubahlah pola pikir mu tetapi jika ingin perubahan yang kecil dan sederhana maka rubahlah sikapmu Demikian riwayat hidup ini saya perbuat dengan sebenar-benarnya. Medan, 29 September 2017 Ramadani Ramadani NIM. 131401021