• Tidak ada hasil yang ditemukan

Implimentasi dan Perbandingan Algoritma L-Deque dan Algoritma Floyd Dalam Pencarian Foto Studio Terdekat di Kota Medan

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implimentasi dan Perbandingan Algoritma L-Deque dan Algoritma Floyd Dalam Pencarian Foto Studio Terdekat di Kota Medan"

Copied!
86
0
0

Teks penuh

(1)

LISTING PROGRAM

Kode Program Algoritma L-Deque: Public Class Ldeque

Public graph As New List(Of List(Of edge_))() Private shortestDistances As New List(Of Double)() Private predecessorVertex As New List(Of Double)() Public totalJarak As Double

Public path As List(Of Integer)

Private watch As New Classes.Stopwatch() Public elapsedTimeMs As Double = 0

Public Sub New(graph As List(Of List(Of edge_))) Me.graph = graph

path = New List(Of Integer)() End Sub

(2)

Dim k As Double

Public P As List(Of List(Of Double)) Public M As List(Of List(Of Double)) Public totalJarak As Double

Public startIndex As Integer Public endIndex As Integer

Public result As List(Of Integer) Public N As Integer

Private watch As New Classes.Stopwatch() Public elapsedTimeMs As Double = 0

Public Sub init(inputTable As List(Of List(Of Double)), N As Double)

Me.N = CInt(Math.Truncate(N)) P = New List(Of List(Of Double))() result = New List(Of Integer)() endIndex As Integer) As List(Of Integer)

(3)

If totalJarak <> Double.PositiveInfinity Then

Public Sub getPath(u As Integer, v As Integer) Dim k As Double

Public Function FloydAlgo(M As List(Of List(Of Double))) As List(Of List(Of Double))

(4)

CURRICULUM VITAE

Data Diri

Nama : Kevin Irfanda

Tempat/Tanggal Lahir : Medan, 20 November 1994

Alamat Sekarang : Jl. Binjai km 9,1 No. 17 Kp. Lalang,

Email : kevinirfanda20@gmail.com

Riwayat Pendidikan

2000 – 2006 : SD Swasta Supriyadi 2006 – 2009 : SMP Negeri 30 Medan 2009 – 2012 : SMK Negeri 9 Medan

2012 – Sekarang : S1 Ilmu Komputer Universitas Sumatera Utara, Medan

Keahlian

Bahasa : Indonesia, Inggris Bahasa Pemrograman : C#, Visual Basic

DBMS : MySQL

Multimedia : Adobe Flash

Design : Photoshop

(5)

Pengalaman Kepanitiaan

2012 : Anggota Publikasi Dekorasi dan Dokumentasi Dies Natalis IMILKOM 2013 : Anggota Dana Ilkom Goes To School 2013

2014 : Anggota Publikasi Dekorasi dan Dokumentasi Porseni IMILKOM 2014 : Anggota Publikasi Dekorasi dan Dokumentasi PMB 2014

2014 : Anggota Acara Meet & Greet Kam Rabbani 2014 : Anggota Acara ARTechno 2014

2014 : Anggota Acara Science Competition 2014

Pengalaman Organisasi

2014 – 2015 : Anggota Departemen Komunikasi dan Informasi Ikatan Mahasiswa Ilmu Komputer USU (IMILKOM USU) 2015 – 2016 : Sekretaris Departemen Komunikasi dan Informasi Ikatan

Mahasiswa Ilmu Komputer USU (IMILKOM USU)

Pengalaman Bekerja

2011 : Praktik Kerja Industri di PT. Telekomunikasi Indonesia, Tbk 2015 : Praktik Kerja Lapangan di PT. Pertamina (Persero)

Seminar

(6)

DAFTAR PUSTAKA

Gallo, G & Pallotino, S. 1986. Shortest Path Methods : A Unifying Approach.

Mathematical Programming Study 26: 38-64.

Harahap, R.C. 2015. Implimentasi Algoritma Floyd Warshall Dalam Menentukan Jarak Terpendek (Medan - Bandara Kuala Namu). Skripsi. Universitas Sumatera Utara.

Hayati, E.N. & Yohanes, A. 2014. Pencarian Rute Terpendek Menggunakan Algoritma Greedy. Prosiding Seminar Nasional IENACO 2014, pp. 391-397.

Kriswanto, Y.R., Bendi, R.K.J. & Aliyanto, A. 2014. Penentuan Jarak Terpendek Dengan Algoritma Floyd Warshall. Prosiding Seminar Nasional Teknologi

Informasi dan Komunasi Terapan 2014 (SEMANTIK 2014), pp. 209-216.

Munir, R. 2014. Matematika Diskrit. Edisi Revisi Kelima. Informatika Bandung: Bandung.

Pinem, A. 2014. Analisis dan Perbandingan Algoritma A* Dan Kombinasi Floyd-Warshall Dengan Bryte Force Pada Penentuan Jalur Monitoring Di Badan Penanaman Modal Kota Medan. Skripsi. Universitas Sumatera Utara.

Purwananto, Y., Purwitasari, D. & Wibowo, A.W. 2005. Implementasi dan Analisis Algoritma Pencarian Rute Terpendek di Kota Surabaya. Jurnal

Penelitian dan Pengembangan TELEKOMUNIKASI Vol.10, No.2: 94-101.

(7)

BAB 3

ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Sistem

Analisis sistem merupakan tahapan yang menjelaskan beberapa permasalahan yang akan membantu proses perancangan model sistem yang nantinya akan diimplementasikan dan menjadi penyelesaian dari masalah yang dikaji. Aplikasi Pencarian Foto Studio Terdekat Di Kota Medan ini merupakan aplikasi untuk menentukan jarak terpendek yang paling efektif untuk mencapai tempat tersebut. Pembuatan aplikasi ini melalui beberapa tahapan untuk mempermudah perancangan dan pembuatannya.

3.1.1 Analisis Masalah

Banyak cara untuk mencapai suatu tempat yang diinginkan dengan mudah, dalam hal ini untuk menuju foto studio yang diinginkan diperlukan suatu cara yang cepat dalam mencari jarak terpendeknya dan dapat memilih solusi yang paling optimal, sehingga dapat menghemat waktu dan membuat perjalanan lebih efektif dan efisien. Dengan dasar ini penulis mencari suatu cara untuk mencari foto studio terdekat di Kota Medan dengan menggunakan dua buah algoritma yaitu algoritma L-Deque dan Algoritma Floyd.

Permasalahan pada penelitian ini, bukan hanya sebatas pencarian jarak terdekat dengan dua buah algoritma L-Deque dan algoritma Floyd, tetapi juga dengan membandingkan jarak, real running time time, dan hasil kerja kedua algoritma tersebut dan dalam pengaplikasiannya graf dibentuk dengan mengikuti peta Kota Medan, dimana

vertex ditentukan berdasarkan beberapa nama foto studio besar yang telah di pilih yang

(8)

Terdapat 10 nama foto studio besar di Kota Medan yang telah dipilih dan akan diterapkan kedalam graf pada sistem yang dibuat, nama-nama foto studio yang digunakan dapat dilihat pada Tabel 3.1 berikut:

Tabel 3.1 Nama-Nama Foto Studio yang Menjadi Vertex

No Nama Foto Studio

1 My Studio Photography 2 Maripro

3 Topaz Hexagon 4 Lensa 10 Studio 5 Studio Bukkola 6 HW Photo Studio

7 Proffesional Photo Studio & Bridal 8 Raja Photo Studio - Bridal Medan 9 Quality Photo Studio

10 Junio Photo Studio

(9)
(10)

Dalam representasi graf, penentuan hubungan antar simpul (vertex) dan sisi (edge) pada graf foto studio di Kota Medan sangat diperlukan, dengan memperhatikan bobot agar dapat dilakukan proses yang lebih optimal, hubungan antar sebuah simpul (vertex) dengan simpul (vertex) lainnya saling berkaitan karna tiap simpul memiliki sisi (edge) yang menghubungkan sebuah simpul (vertex) dengan simpul (vertex) lainnya agar dapat membentuk graf. Data simpul (vertex) pada graf foto studio di Kota Medan yang telah dipilih dapat lihat pada Tabel 3.2.

Tabel 3.2 Data Simpul (Vertex) Pada Graf Foto Studio di Kota Medan

No Nama Vertex Nama Tetangga Bobot

1 My Studio Photography Maripro 3,2 km

Topaz Hexagon 3,9 km

2 Maripro

My Studio Photography 1,9 km

Topaz Hexagon 4,8 km

HW Photo Studio 6,3 km

3 Topaz Hexagon

My Studio Photography 4,1 km

Maripro 3,6 km

(11)

8 Raja Photo Studio – Bridal

Quality Photo Studio 8,7 km Junio Photo Studio 5,5 km

Quality Photo Studio 5,8 km

Dalam mengidentifikasi suatu masalah dapat menggunakan diagram Ishikawa (fishbone

diagram). Diagram Ishikawa merupakan suatu alat visual untuk mengidentifikasi,

(12)

Diagram Ishikawa diatas terbagi atas 2 (dua) bagian yaitu head dan bone. Bone terdiri dari 4 aspek yaitu material, metode, user dan sistem. Material adalah apa saja yang diperlukan dalam menjalankan sistem yaitu jarak dan rute yang digunakan untuk mengetahui seberapa jauh jalan yang akan ditempuh dan rute yang akan dilalui. Metode adalah kebutuhan yang spesifik dari proses yang terdiri dari 3 (tiga) bagian yaitu bagian algoritma L-Deque, algoritma Floyd dan Hsil Pencarian dan Perbandingan kedua algoritma yang akan digunakan untuk menjalankan hasil graf yang terbentuk. User adalah apa saja yang akan diketahui dari sistem yang akan dikerjakan diaman user sebelumnya user belum mengetahui cara kerja sistem. Sistem adalah hal yang akan dilakukan atau dibuat yaitu dengan membuat aplikasi pencarian foto studio terdekat di Kota Medan dengan menggunakan algoritma L-Deque dan algoritma Floyd, melakukan perbandingan dari hasil kerja kedua algoritma tersebut.

3.1.2 Analisis Persyaratan

Terdapat dua bagian pada analisis persyaratan, yaitu persyaratan fungsional dan persyaratan non-fungsional.

3.1.2.1 Persyaratan Fungsional

Analisis kebutuhan fungsional disini mendekripsikan tentang sistem yang disediakan. sistem ini melakukan perhitungan, perbandingan jarak dan waktu pencarian foto studio terdekat di Kota Medan dengan membandingkan dua buah algoritma yaitu L-Deque dan Floyd, terdapat beberapa persyaratan fungsional antara lain:

1. Sistem ini menggunakan graf foto studio di Kota Medan yang telah dipilih dan dapat ditampilkan pada sistem sesuai dengan representasi graf yang telah ditentukan. 2. Sitem yang dibangun menggunakan simpul (vertex) dan sisi (edge) pada graf dan

dapat ditampilkan pada sistem beserta nama, bobot, alamat dan rute yang akan dilalui menuju foto studio tersebut dari setiap sisi (edge) yang terhubung dengan simpul (vertex).

3. Sistem mampu menambahkan simpul (vertex) baru, sisi (edge), alamat dan rute yang akan dilalui menuju foto studio tersebut dengan menambahkannya pada fitur yang telah tersedia.

4. Sitem ini mendapatkan hasil pencarian dengan graf menggunakan dua algoritma yaitu L-Deque dan Floyd dapat diterapkan pada sistem.

(13)

6. Sistem mendapatkan hasil pada graf dengan menggunakan dua algoritma L-Deque dan Floyd yang dapat menentukan rute mana saja yang akan dilalui yang diterapkan dalam sistem.

3.1.2.2 Persyaratan Non-Fungsional

Kebutuhan non-fungsional adalah kebutuhan yang berisi kinerja operasional dan

performance dari suatu sistem. Terdapat beberapa persyaratan non-fungsional yang

harus dipenuhi diantaranya : 1. User Friendly

Sistem yang akan dibangun harus mudah digunakan (user friendly), artinya sistem ini akan mudah digunakan oleh user dengan tampilan yang sederhana dan dapat dimengerti.

2. Performa

Sistem atau perangkat lunak yang akan dibangun harus dapat menunjukkan hasil

running time dan rute foto studio dari algoritma yang diterapkan yaitu algoritma

L-Deque dan Floyd. 3. Hemat Biaya

Sistem atau perangkat lunak yang digunakan tidak memerlukan perangkat tambahan yang dapat mengeluarkan biaya.

4. Manajemen Kualitas

Sistem atau perangkat lunak yang akan dibangun harus memiliki kualitas yang baik yaitu dapat menunjukkan perbandingan jarak, real running time, rute foto studio yang akan dilalui dan hasil kerja dari kedua algoritma yang dibandingkan.

3.1.3 Analisis Proses

(14)

3.1.4 Flowchart

Flowchart adalah suatu 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.4.1 Flowchart Sistem

Flowchart dari sistem yang dibangun dapat dilihat pada Gambar 3.3.

(15)

3.1.4.2 Flowchart Algoritma L-Deque

Flowchart dari algoritma L-Deque dapat dilihat pada Gambar 3.4.

Gambar 3.4 Flowchart Algoritma L-Deque Keterangan:

P: Titik Awal d(u): Jarak Awal I: Panjang Jarak Awal ke Tujuan

(16)

3.1.4.3 Flowchart Algoritma Floyd

Flowchart dari algoritma Floyd dapat dilihat pada Gambar 3.5.

Gambar 3.5 Flowchart algoritma Floyd Keterangan:

(17)

3.2 Perancangan Sistem

Pada bagian ini digunakan Unified Modeling Languange (UML) sebagai bahasa spesifikasi standar suatu model yang berfungsi untuk membantu merancang sistem. Sistem ini dibangun dengan membuat use case diagram, sequence diagram dan activity

diagram.

3.2.1 Use Case Diagram

Use case adalah gambaran fungsionalitas dari suatu sistem, sehingga user paham dan

mengerti mengenai kegunaan sistem yang dibangun, dimana penggambaran sistem dari sudut pandang user itu sendiri sehingga use case lebih dititikberatkan pada fungsionalitas yang ada pada sistem, bukan berdasarkan alur atau urutan kejadian. Berikut use case diagram dapat dilihat pada Gambar 3.6.

(18)

3.2.2. Activity Diagram

Activity diagram dapat menggambarkan proses bisnis dan urutan aktivitas dalam sebuah

proses, serta dapat menggambarkan alir aktivitas kerja pada sistem yang sedang dirancang ataupun berjalan, bagaimana masing-masing alur berawal, decision yang mungkin terjadi, dan bagaimana berakhir.

3.2.2.1 Activity Diagram Cara Menampilkan Graf

Activity diagram pada gambar 3.7 menjelaskan proses kerja dari sistem untuk

menampilkan graf dari foto studio yang telah ditentukan. Activity diagram sistem pada aplikasi yang dibuat dapat dilihat pada Gambar 3.7.

Gambar 3.7 Activity Diagram Cara Menampilkan Graf

3.2.2.2 Activity Diagram Cara Kerja Sistem

Activity diagram pada gambar 3.8 menjelaskan proses kerja dari sistem untuk proses

menentukan titik awal dan akhir serta memilih algoritma yang akan digunakan oleh

(19)

Gambar 3.8 Activity Diagram Cara Kerja Sistem

3.2.3 Sequence Diagram

Sequence diagram mengilustrasikan bagaimana message dikirim dan diterina diantara

(20)

Gambar 3.9 Sequence Diagram Sistem

3.3 Perancangan Antarmuka (Interface)

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. Adapun antarmuka yang terdapat pada sistem ini adalah halaman menu

Home, Foto Studio ke Foto Studio, Pengaturan, Bantuan dan Tentang.

3.3.1 Halaman Menu Home

(21)

Gambar 3.10 Rancangan Antarmuka Halaman Menu Home

Tabel 3.3 Keterangan Gambar Rancangan Antarmuka Halaman Home

No Keterangan

1 Label untuk menampilkan keterangan judul sistem

2 Menu “Home” untuk menampilkan beranda sistem

3 Menu “Foto Studio Ke Foto Studio” untuk menampilkan graf , rute dan

perbandingan hasil algoritma

4 Menu “Pengaturan” untuk mengelola vertex dan edge

5 Menu “Bantuan” untuk menampilkan halaman pentunjuk penggunaan

sistem

6 Menu “Tentang” untuk menampilkan data dari penulis

7 Text Box untuk menampilkan judul skripsi, nama dan NIM

8 Picture Box untuk menampilkan logo Universitas Sumatera Utara

(22)

3.3.2 Halaman Menu Foto Studio ke Foto Studio

Halaman Foto Studio Ke Foto Studio merupakan halaman yang tampil saat pengguna memilih menu Foto Studio ke Foto Studio pada halaman utama Home. Pada halaman ini pengguna dapat melihat graf yang akan ditampilkan, memilih algoritma yang akan digunakan, serta melihat hasil total jarak, rute dan execution time dari kedua algoritma tersebut. Rancangan halaman menu Foto Studio ke Foto Studio dapat dilihat pada Gambar 3.11 dan keterangan gambar rancangan halaman pada Tabel 3.4.

(23)

Tabel 3.4 Keterangan Gambar Rancangan Antarmuka Halaman Foto Studio ke Foto Studio

No Keterangan

1 Menu “Home” untuk menampilkan beranda sistem

2 Menu “Foto Studio Ke Foto Studio” untuk menampilkan graf , rute dan perbandingan hasil algoritma

3 Menu “Pengaturan” untuk mengelola vertex dan edge

4 Menu “Bantuan” untuk menampilkan halaman pentunjuk penggunaan sistem

5 Menu “Tentang” untuk menampilkan data dari penulis

6 Label untuk Tentukan Rute

7 Material Flat Button untuk Dari

8 Material Flat Button untuk Ke

9 Combo Box untuk node asal

10 Combo Box untuk node tujuan 11 Combo Box untuk Pilihan Algoritma 12 Button untuk menampilkan Hasil 13 List View untuk menampilkan Rute 14 Material Flat Button untuk Total Jarak 15 Material Flat Button untuk Execution Time 16 WPF Element Host untuk menampilkan Graf 17 Button untuk menampilkan graf yang teracak

3.3.3 Halaman Menu Pengaturan

(24)

Gambar 3.12 Rancangan Antarmuka Halaman Menu Pengaturan Tabel 3.5 Keterangan Gambar Rancangan Antarmuka Halaman Pengaturan

No Keterangan

1 Tree View untuk menu root menampilkan vertex yang terdapat pada graf

2 Button untuk menghapus node yang dipilih

3 Button untuk Tag

4 Label untuk Tag

5 Button untuk nama node

6 Label untuk menampilkan nama node

7 Button untuk memberikan alamat node

8 Label untuk menampilkan alamat node

9 Combo Box untuk memilih vertex yang bisa ditambahkan

(25)

3.3. 4 Hal ama n Men u Bantuan

Halaman Bantuan merupakan halaman yang tampil saat pengguna memilih menu pada

menu bar. Pada halaman ini pengguna dapat melihat petunjuk penggunaan dari sistem.

Adapun rancangan halaman menu Bantuan dapat dilihat pada Gambar 3.13 dan keterangan gambar rancangan halaman pada Tabel 3.6.

Gambar 3.13 Rancangan Antarmuka Halaman Menu Bantuan 11 List View untuk menampilkan tetangga , jarak dan rute

12 Button untuk menghapus sebuah tetangga (neighbor)

13 Text Field untuk menginputkan nama sebuah node (vertex) baru 14 Button untuk menghasilkan sebuah node baru

(26)

Tabel 3.6 Keterangan Gambar Rancangan Antarmuka Halaman Bantuan

3.3.5 Halaman Menu Tentang

Halaman Tentang merupakan halaman yang berisi biodata penulis dan penjelasan lainnya, Adapun rancangan halaman menu Tentang dapat dilihat pada Gambar 3.14 dan keterangan gambar rancangan halaman pada Tabel 3.7.

Gambar 3.14 Rancangan Antarmuka Halaman Menu Tentang

Tabel 3.7 Keterangan Gambar Rancangan Antarmuka Halaman Tentang

No Keterangan

1 Label untuk menampilkan judul petunjuk penggunaan system 2 Text Box untuk menampilkan urutan penggunaan system

No Keterangan

1 Label untuk menampilkan Tentang

(27)
(28)

BAB 4

IMPLEMENTASI DAN PENGUJIAN

4.1 Implementasi

Implementasi sistem merupakan lanjutan dari tahap analisis dan perancangan sistem. Sistem ini dibangun dengan menggunakan bahasa pemrograman Visual Basic 2015 dan menggunakan Visual Studio 2015. Pada sistem ini terdapat 5 (lima) tampilan halaman, yaitu Halaman Home, Halaman Foto Studio ke Foto Studio, Halaman Pengaturan, Halaman Bantuan dan Halaman About.\

4.1.1 Tampilan Halaman Menu Home

Halaman home merupakan tampilan halaman yang muncul pertama sekali pada saat sistem dijalankan. Halaman ini berisi judul sistem, nama dan nim penulis, logo Universitas dan nama Pogram Studi. Tampilan halaman menu home dapat dilihat pada gambar 4.1

(29)

4.1.2 Tampilan Halaman Menu Foro Studio ke Foto Studio

Halaman menu Foto Studio ke Foto Studio merupakan halaman yang digunakan untuk mengatur node awal dan node tujuan pada graf, menampilkan rute yang akan dilalui serta menampilkan hasil total jarak dan execution time dari graf. Tampilan menu Foto

Studio ke Foto Studio dapat dilihat pada gambar 4.2.

Gambar 4.2 Tampilan Halaman Menu Foto Studio ke Foto Studio

4.1.3 Tampilan Halaman Menu Pengaturan

Tampilan halaman pengaturan merupakan halaman yang tampil saat pengguna memilih

menu pada menubar. Halaman ini pengguna dapat mengelola graf yang akan

(30)

Gambar 4.3 Tampilan Halaman Menu Pengaturan

4.1.4 Tampilan Halaman Menu Bantuan

Tampilan halaman Bantuan merupakan halaman yang tampil saat pengguna memilih

menu pada menu bar. Pada halaman ini pengguna dapat melihat petunjuk penggunaan

dari system. Tampilan halaman menu bantuan dapat dilihat pada gambar 4.4.

(31)

4.1.5 Tampilan Halaman Menu Tentang

Tampilan halaman menu tentang merupakan halaman yang berisi biodata penulis dan penjelasan lainnya. Tampilan halaman menu tentang dapat dilihat pada gambar 4.5.

Gambar 4.5 Tampilan Halaman Menu Tentang

4.2 Pengujian

Pengujian sistem merupakan tahap lanjutan setelah implementasi sistem. Pengujian sistem bertujuan untuk membuktikan sistem yang dibangun telah berjalan dengan baik. Pengujian sistem ini dilakukan pada graf Foto Studio yang telah ditentukan dengan 10 buah simpul (vetex) dan 36 buah sisi (edge).

4.2.1 Pengujian Proses Implementasi

(32)

Gambar 4.6 Tampilan Load Graf

User hanya dapat membuka graf yang sudah dibuat terlebih dahulu atau telah tersedia

dalam hal ini graf Foto Studio yang telah ditentukan. Setelah user menekan button load maka sistem akan menampilkan graf yang tersedia untuk dipilih dan dimasukkan ke dalam proses pengujian. Kemudian graf dapat ditampilkan dalam sistem dengan membuka halaman Foto Studio ke Foto Studio kemudian menekan button reload dapat membantu untuk menampilkan graf yang lebih baik, graf yang telah di load dapat dilihat pada gambar 4.7.

(33)

Setelah user memasukkan graf kemudian user dapat melihat nama setiap Foto Studio dan Alamat setiap Foto Studio, dengan cara mengarahkan kursor ke node (vertex). Tampilan tersebut dapat dilihat pada gambar 4.8

Gambar 4.8 Tampilan Nama dan Alamat Setiap Foto Studio

4.2.2 Pengujian Proses Algoritma L-Deque

(34)

Gambar 4.9 Tampilan Pengujian Pencarian Foto Studio dengan Algoritma L-Deque

4.2.2.1 Perhitungan Manual Algoritma L-Deque

Contoh pencarian lintasan terpendek dengan maenggunakan algoritma L-Deque dapat dilihat pada gambar 4.11 berikut

Gambar 4.10 Graf Algoritma L-Deque

Tentukan node yang akan menjadi titik asal kemudian tentukan node yang akan menjadi titik tujuan. Pencarian dilakukan dengan cara penempatan di dalam sebuah

array Deque dan menggunakan dua buah petunjuk yaitu LEFT dan RIGHT, yang

berturut-turut menunjuk pada sisi kiri dan sisi kanan deque. Diketahui: Titik Asal = E, Titik Tujuan = B

(35)

Maka dapat dilakukan pencarian dalam penempatan sebuah array

D C

Dilakukan operasi berturut turut:

1. B ditambahkan ke kanan dari sebuah array/deque 2. 1 item dihapus yang paling kanan

3. E ditambahkan ke bagian kiri

4. B ditambahkan ke bagian paling kanan 5. Array telah penuh.

5. LEFT + RIGHT+1, Queue penuh dan terjadi OVERFLOW

4.2.3 Pengujian Proses Algoritma Floyd

Algoritma Floyd-Warshall adalah sebuah Algoritma Analisis graf untuk mencari bobot minimum dari graf berarah. Algoritma Floyd-Warshall adalah matriks hubung graf berarah berlabel, dan keluarannya adalah path terpendek dari semua titik ke titik yang lain.

(36)

Gambar 4.11 Tampilan Pemilihan Graf

Setelah graf di tampilkan, maka akan dilakukan pengujian terhadap graf untuk menentukan lintasan terpendek dari satu node asal menuju node tujuan atau dalam hal ini yaitu Foto Studio ke Foto Studio lainnya yang dapat ditentukan oleh user.

Gambar 4.12 Tampilan Pengujian Pencarian Foto Studio dengan Algoritma Floyd

4.2.3.1 Perhitungan Manual Algoritma Floyd

(37)

Gambar 4.13 Graf Floyd

Tabel 4.1 Inisialisasi Matriks

A B C D E F G H I J

A 0 3,2 3,9 ∞ ∞ ∞ ∞ ∞ ∞ ∞

B 1,9 0 4,8 ∞ ∞ 6,3 ∞ ∞ ∞ ∞

C 4,1 3,6 0 5,3 7 3 3,6 ∞ ∞ ∞

D ∞ ∞ 4,7 0 2,6 ∞ ∞ 5,2 ∞ ∞

E ∞ ∞ 5 1,6 0 4,9 3,7 ∞ ∞

F 4,4 2,5 ∞ ∞ 0 0,6 ∞ ∞ ∞

G ∞ ∞ 2,4 6,4 1,3 0 7,3 7,6

H ∞ ∞ ∞ 5 4,5 7,5 0 8,7 5,5

I ∞ ∞ ∞ ∞ ∞ ∞ 4,1 5,8 0 5,6

J ∞ ∞ ∞ ∞ ∞ ∞ ∞ 4,6 5,8 0

Langkah 2. Mencari nilai jarak dengan perhitungan matriks

(38)

Tabel 4.2 Matriks R0

A B C D E F G H I J

A 0 3,2 3,9 ∞ ∞ ∞ ∞ ∞ ∞ ∞

B 1,9 0 4,8 ∞ ∞ 6,3 ∞ ∞ ∞ ∞

C 4,1 3,6 0 5,3 7 3 3,6 ∞ ∞ ∞

D ∞ ∞ 4,7 0 2,6 ∞ ∞ 5,2 ∞ ∞

E ∞ ∞ 5 1,6 0 4,9 3,7 ∞ ∞

F 4,4 2,5 ∞ ∞ 0 0,6 ∞ ∞ ∞

G ∞ ∞ 2,4 6,4 1,3 0 7,3 7,6

H ∞ ∞ ∞ 5 4,5 7,5 0 8,7 5,5

I ∞ ∞ ∞ ∞ ∞ ∞ 4,1 5,8 0 5,6

J ∞ ∞ ∞ ∞ ∞ ∞ ∞ 4,6 5,8 0

(39)

Tabel 4.3 Matriks R1

A B C D E F G H I J

A 0 3,2 3,9 ∞ ∞ 9,5 ∞ ∞ ∞ ∞

B 1,9 0 4,8 ∞ ∞ 6,3 ∞ ∞ ∞ ∞

C 4,1 3,6 0 5,3 7 3 3,6 ∞ ∞ ∞

D ∞ ∞ 4,7 0 2,6 ∞ ∞ 5,2 ∞ ∞

E ∞ ∞ 5 1,6 0 4,9 3,7 ∞ ∞

F 6,3 4,4 2,5 ∞ ∞ 0 0,6 ∞ ∞ ∞

G ∞ ∞ 2,4 6,4 1,3 0 7,3 7,6

H ∞ ∞ ∞ 5 4,5 7,5 0 8,7 5,5

I ∞ ∞ ∞ ∞ ∞ ∞ 4,1 5,8 0 5,6

J ∞ ∞ ∞ ∞ ∞ ∞ ∞ 4,6 5,8 0

Proses Perhitungan Jarak R1

(40)

Tabel 4.4 Matriks R2

A B C D E F G H I J

A 0 3,2 3,9 9,2 10,9 6,9 7,5 ∞ ∞ ∞ B 1,9 0 4,8 10,1 11,8 6,3 8,4 ∞ ∞ ∞

C 4,1 3,6 0 5,3 7 3 3,6 ∞ ∞ ∞

D 8,8 8,3 4,7 0 2,6 7,7 8,3 5,2 ∞ ∞

E 9,1 8,6 5 1,6 0 8 4,9 3,7 ∞ ∞

F 6,3 4,4 2,5 7,8 9,5 0 0,6 ∞ ∞ ∞

G 6,5 6 2,4 7,7 6,4 1,3 0 7,3 7,6 ∞

H ∞ ∞ ∞ 5 4,5 7,5 0 8,7 5,5

I ∞ ∞ ∞ ∞ ∞ ∞ 4,1 5,8 0 5,6

J ∞ ∞ ∞ ∞ ∞ ∞ ∞ 4,6 5,8 0

(41)

Tabel 4.5 Matriks R3

A B C D E F G H I J

A 0 3,2 3,9 9,2 10,9 6,9 7,5 14,4 ∞ ∞ B 1,9 0 4,8 10,1 11,8 6,3 8,4 ∞ ∞ ∞ C 4,1 3,6 0 5,3 7 3 3,6 10,5 ∞ ∞

D 8,8 8,3 4,7 0 2,6 7,7 8,3 5,2 ∞ ∞

E 9,1 8,6 5 1,6 0 8 4,9 3,7 ∞ ∞

F 6,3 4,4 2,5 7,8 9,5 0 0,6 ∞ ∞ ∞

G 6,5 6 2,4 7,7 6,4 1,3 0 7,3 7,6 ∞

H 13,8 13,3 9,7 5 4,5 12,7 7,5 0 8,7 5,5

I ∞ ∞ ∞ ∞ ∞ ∞ 4,1 5,8 0 5,6

J ∞ ∞ ∞ ∞ ∞ ∞ ∞ 4,6 5,8 0

(42)

Tabel 4.6 Matriks R4

A B C D E F G H I J

A 0 3,2 3,9 9,2 10,9 6,9 7,5 14,4 ∞ ∞ B 1,9 0 4,8 10,1 11,8 6,3 8,4 15,5 ∞ ∞ C 4,1 3,6 0 5,3 7 3 3,6 10,5 ∞ ∞

D 8,8 8,3 4,7 0 2,6 7,7 7,5 5,2 ∞ ∞

E 9,1 8,6 5 1,6 0 8 4,9 3,7 ∞ ∞

F 6,3 4,4 2,5 7,8 9,5 0 0,6 13,2 ∞ ∞

G 6,5 6 2,4 7,7 6,4 1,3 0 7,3 7,6 ∞

H 13,6 13,1 9,5 5 4,5 12,5 7,5 0 8,7 5,5

I ∞ ∞ ∞ ∞ ∞ ∞ 4,1 5,8 0 5,6

J ∞ ∞ ∞ ∞ ∞ ∞ ∞ 4,6 5,8 0

(43)

Tabel 4.7 Matriks R5

A B C D E F G H I J

A 0 3,2 3,9 9,2 10,9 6,9 7,5 14,4 ∞ ∞ B 1,9 0 4,8 10,1 11,8 6,3 6,9 15,5 ∞ ∞ C 4,1 3,6 0 5,3 7 3 3,6 10,5 ∞ ∞

D 8,8 8,3 4,7 0 2,6 7,7 7,5 5,2 ∞ ∞

E 9,1 8,6 5 1,6 0 8 4,9 3,7 ∞ ∞

F 6,3 4,4 2,5 7,8 9,5 0 0,6 13,2 ∞ ∞

G 6,5 5,7 2,4 7,7 6,4 1,3 0 7,3 7,6 ∞

H 13,6 13,1 9,5 5 4,5 12,5 7,5 0 8,7 5,5

I ∞ ∞ ∞ ∞ ∞ ∞ 4,1 5,8 0 5,6

J ∞ ∞ ∞ ∞ ∞ ∞ ∞ 4,6 5,8 0

(44)

Tabel 4.8 Matriks R6

A B C D E F G H I J

A 0 3,2 3,9 9,2 10,9 6,9 7,5 14,4 15,1 ∞ B 1,9 0 4,8 10,1 11,8 6,3 6,9 14,2 14,5 ∞ C 4,1 3,6 0 5,3 7 3 3,6 10,5 11,2 ∞ D 8,8 8,3 4,7 0 2,6 7,7 7,5 5,2 15,1 ∞ E 9,1 8,6 5 1,6 0 6,2 4,9 3,7 12,5 ∞

F 6,3 4,4 2,5 7,8 7 0 0,6 7,9 8,2 ∞

G 6,5 5,7 2,4 7,7 6,4 1,3 0 7,3 7,6 ∞

H 13,6 13,1 9,5 5 4,5 8,8 7,5 0 8,7 5,5 I 10,6 9,8 6,5 11,8 10,5 5,4 4,1 5,8 0 5,6

J ∞ ∞ ∞ ∞ ∞ ∞ ∞ 4,6 5,8 0

(45)

Tabel 4.9 Matriks R7

A B C D E F G H I J

A 0 3,2 3,9 9,2 10,9 6,9 7,5 14,4 15,1 19,9 B 1,9 0 4,8 10,1 11,8 6,3 6,9 14,2 14,5 19,7 C 4,1 3,6 0 5,3 7 3 3,6 10,5 11,2 16 D 8,8 8,3 4,7 0 2,6 7,7 7,5 5,2 13,9 10,7 E 9,1 8,6 5 1,6 0 6,2 4,9 3,7 12,4 9,2 F 6,3 4,4 2,5 7,8 7 0 0,6 7,9 8,2 13,4 G 6,5 5,7 2,4 7,7 6,4 1,3 0 7,3 7,6 12,8 H 13,6 13,1 9,5 5 4,5 8,8 7,5 0 8,7 5,5

I 10,6 9,8 6,5 10,8 10,3 5,4 4,1 5,8 0 5,6 J 18,2 17,7 14,1 9,6 9,1 13,4 12,1 4,6 5,8 0

(46)

Tabel 4.10 Matriks R8

A B C D E F G H I J

A 0 3,2 3,9 9,2 10,9 6,9 7,5 14,4 15,1 19,9 B 1,9 0 4,8 10,1 11,8 6,3 6,9 14,2 14,5 19,7 C 4,1 3,6 0 5,3 7 3 3,6 10,5 11,2 16 D 8,8 8,3 4,7 0 2,6 7,7 7,5 5,2 13,9 10,7 E 9,1 8,6 5 1,6 0 6,2 4,9 3,7 12,4 9,2 F 6,3 4,4 2,5 7,8 7 0 0,6 7,9 8,2 13,4 G 6,5 5,7 2,4 7,7 6,4 1,3 0 7,3 7,6 12,8 H 13,6 13,1 9,5 5 4,5 8,8 7,5 0 8,7 5,5

I 10,6 9,8 6,5 10,8 10,3 5,4 4,1 5,8 0 5,6 J 16,4 15,6 12,3 9,6 9,1 11,2 9,9 4,6 5,8 0

(47)

Tabel 4.11 Matriks R9

A B C D E F G H I J

A 0 3,2 3,9 9,2 10,9 6,9 7,5 14,4 15,1 19,9 B 1,9 0 4,8 10,1 11,8 6,3 6,9 14,2 14,5 19,7 C 4,1 3,6 0 5,3 7 3 3,6 10,5 11,2 16 D 8,8 8,3 4,7 0 2,6 7,7 7,5 5,2 13,9 10,7 E 9,1 8,6 5 1,6 0 6,2 4,9 3,7 12,4 9,2 F 6,3 4,4 2,5 7,8 7 0 0,6 7,9 8,2 13,4 G 6,5 5,7 2,4 7,7 6,4 1,3 0 7,3 7,6 12,8 H 13,6 13,1 9,5 5 4,5 8,8 7,5 0 8,7 5,5

I 10,6 9,8 6,5 10,8 10,3 5,4 4,1 5,8 0 5,6 J 16,4 15,6 12,3 9,6 9,1 11,2 9,9 4,6 5,8 0

(48)

4.3 Real Running-Time

Untuk mencari real running time harus dilakukan proses pengujian sistem dengan algoritma L-Deque dan algoritma Floyd dimana sebelum mengetahui real running time-nya user harus memilih titik awal foto studio dia berada untuk menuju foto studio yang akan dikunjungi. Akan dilakukan tiga kali proses pengujian. Proses pengujian pertama akan dicari foto studio “A” ke foto studio “J” dengan menggunakan algoritma L-Deque dan dapat dilihat pada gambar 4.14.

Gambar 4.14 Hasil Pengujian Pertama dengan Algoritma L-Deque

(49)

Gambar 4.15 Hasil Pengujian Pertama dengan Algoritma Floyd

Dari pengujian pertama didapatkan total jarak dengan algoritma L-Deque yaitu 19,9 km dan execution time yang didapat yaitu 0,0333ms dan total jarak dengan menggunakan algoritma Floyd yaitu 19,9km dan execution time yang didapat yaitu 0,2198ms. Jadi untuk percobaan pertama algoritma L-Deque dan algoritma Floyd menghasilkan total jarak yang sama dan execution time yang berbeda yaitu algoritma L-Deque lebih cepat dari algoritma Floyd.

(50)

Gambar 4.16 Hasil Pengujian Kedua dengan Algoritma L-Deque

Selanjutnya dilakukan pengujian dengan menggunakan algoritma Floyd. Titik awal foto studio dan foto studio yang akan dikunjungi sama untuk pengujian di algoritma ini agar dapat dilihat perbedaan hasilnya. Hasil dari pengujian kedua dengan algoritma Floyd dapat dilihat pada gambar 4.17.

Gambar 4.17 Hasil Pengujian Kedua dengan Algoritma Floyd

Dari pengujian kedua didapatkan total jarak dengan algoritma L-Deque yaitu 9,8km dan

execution time yang didapat yaitu 0,0282ms dan total jarak dengan menggunakan

(51)

jarak yang sama dan execution time yang berbeda yaitu algoritma L-Deque lebih cepat dari algoritma Floyd.

Untuk pengujian ketiga, akan dilakukan perubahan yaitu dengan Proses pengujian yang dicari yaitu foto studio “F” ke foto studio “J” Hasil pengujian kedua dengan menggunakan algoritma L-Deque dapat dilihat pada gambar 4.18.

Gambar 4.18 Hasil Pengujian Ketiga dengan Algoritma L-Deque

(52)

Gambar 4.19. Hasil Pengujian Ketiga dengan Algoritma Floyd

Dari pengujian kedua didapatkan total jarak dengan algoritma L-Deque yaitu 13,4km dan execution time yang didapat yaitu 0,0355ms dan total jarak dengan menggunakan algoritma Floyd yaitu 13,4km dan execution time yang didapat yaitu 0,2523ms. Jadi untuk percobaan pertama algoritma L-Deque dan algoritma Floyd menghasilkan total jarak yang sama dan execution time yang berbeda yaitu algoritma L-Deque lebih cepat dari algoritma Floyd.

Untuk melihat hasil dari ketiga pengujian dengan menggunakan algoritma L-Deque dan algoritma Floyd dapat dilihat pada Tabel 4.17.

Tabel 4.12 Hasil Dari Ketiga Pengujian

Algoritma

Pengujian (km/ms)

Pengujian Pertama Pengujian Kedua Pengujian Ketiga

(53)

Dari Tabel 4.17 tersebut dapat diambil kesimpulan bahwa algoritma L-Deque lebih cepat karena menghasilkan execution time yang lebih kecil daripada Algoritma Floyd.

4.4 Kompleksitas

4.4.1 Kompleksitas Algoritma L-Deque

Perhitungan kompleksitas algoritma L-Deque dapat dilihat pada Tabel 4.24 berikut Tabel 4.13 Kompleksitas Algoritma L-Deque

Code C # C#

public Sub New(graph As List(Of List(Of edge_))) C1 1 C1

Me.graph = graph C2 1 C2

path = new List(Of Integer)(); C2 1 C2 public Sub LQueue(startIndex As Integer, toIndex

(54)

Deque.PushFront(v) C7 1 C7 merupakan jumlah kolom C*# sebagai berikut:

Ʃ = T(n) = 2C1+11C2+2C3+C4+2C5+2C6+4C7+C9+6C10+2C11+2C8N Ʃ = T(n) = Ɵ(N)

4.4.2 Kompleksitas Algoritma Floyd

Perhitungan kompleksitas algoritma Floyd dapat dilihat pada Tabel 4.25

Tabel 4.14 Kompleksitas Algoritma Floyd

Code C # C#

(55)

As Double) As Integer, endIndex As Integer) As List(Of Integer)

getPath(startIndex, endIndex) C9 1 C9

If totalJarak <> Double.PositiveInfinity Then C10 1 C10

End if C6 1 C6

getPath(u, Cint(Math.Truncate(k))) C9 1 C9 Result.Add(Cint(Math.Truncate(k))) C3 1 C3 getPath(CInt(Math.Truncate(k)), v) C9 J C9

(56)

Public Function FloydAlgo(M As List(Of Double)))

Public Function min(i As Integer, j As Integer) As Integer

Dari perhitungan kompleksitas waktu pada Tabel 4.2 maka didapat T(|n|) yang merupakan jumlah kolom C*# sebagai berikut

Ʃ = T(n)

= 5C1 + 8C2 + 2C3 + 2C5 + 10C6 + C7 + C8 + 3C9 + 2C10 +C11 + C2N + 2C3N + C4N + 2C3N² + C3N3

(57)

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 L-Deque dan algoritma Floyd dalam pencarian foto studio terdekat di Kota Medan.

2. Hasil pencarian jalur foto studio terdekat di Kota Medan dengan menggunakan algoritma L-Deque dan algoritma Floyd menghasilkan total jarak yang bernilai sama dan running time yang berbeda.

3. Berdasarkan hasil pengujian dari kedua algoritma, algoritma L-Deque memiliki nilai

running time yang lebih cepat dibandingkan algoritma Floyd

5.2 Saran

Adapun saran-saran yang dapat dipertimbangkan untuk penelitian maupun pengembangan berikutnya adalah:

1. Sistem ini sebaiknya dikembangkan dengan menambah jumlah simpul (vertex) dan sisi (edge).

(58)
(59)

BAB 2

LANDASAN TEORI

2.1 Pengertian Algoritma

Algoritma adalah teknik penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat dengan jumlah kata terbatas tetapi tersusun secara logis dan sitematis (Harahap, 2015).

Kata algoritma sendiri ditemukan dengan nama algorism yang berarti proses menghitung dengan angka Arab. Kata algorism berasal dari nama penulis buku Arab yang terkenal yaitu, Abu Ja’far Muhammad Ibnu Musa al-Khuwarizmi (al-Khuwarizmi dibaca orang Barat menjadi algorism) dan algoritma adalah urutan logis langkah-langkah penyelesaian masalah yang disusun secara sistematis (Munir, 2014).

2.2 Teori Dasar Graf

Graf adalah suatu diagram yang terdiri dari titik dan garis yang mengandung informasi tertentu jika disampaikan dengan benar. Suatu graf G terdiri dari dua himpunan yang berhingga, yaitu himpunan titik tidak kosong (simbol V(G)) dan himpunan garis (simbol

E(G)) (Siang, 2006).

Graf terdiri dari sekumpulan node yang dihubungkan dengan sekumpulan arc. Notasi untuk mendeskripsikan suatu graph adalah (V, E), dimana V adalah sekumpulan

node (vertex) dan E adalah sekumpulan dari arc (edge) dengan nilai-nilai yang

berasosiasi pada setiap node. Nilai-nilai yang berasosiasi itu adalah jumlah node, jumlah

arc, dan panjang dari arc yang mengh ubungkan antara node i dan j yang dinotasikan

(60)

2.2.1 Jenis - Jenis Graf

Dilihat dari ada tidaknya gelang atau sisi ganda pada suatu graf, maka secara umum graf dapat dibagi menjadi dua jenis, yaitu:

1. Graf Sederhana (simple graph) adalah graf yang tidak memiliki garis paralel ataupun

loop. Titik-titik pada graf sederhana dihubungkan tepat dengan satu garis ke setiap

titik yang lain dan tidak ada garis yang titik awal dan akhirnya sama (Pinem, 2014). 2. Graf Tidak Sederhana (unsimple graph) adalah graf yang memiliki loop atau garis

paralel. Graf tidak sederhana kemudian terbagi lagi menjadi graf semu (pseudograph) dan graf ganda (multiple graph) (Pinem, 2014). Graf semu adalah graf yang mengandung gelang (loop). Graf semu lebih umum daripada graf ganda, karena sisi pada graf semu dapat terhubung ke dirinya sendiri sedangkan Graf ganda adalah graf yang mengandung sisi ganda. Sisi ganda yang menghubungkan sepasang simpul bisa lebih dari dua buah (Munir, 2014).

Loop merupakan suatu sisi dapat menghubungkan suatu simpul dengan simpul

yang sama. Pada gambar 2.1 adalah contoh graf sederhana, graf ganda dan graf semu.

Gambar 2.1 (a) Graf Sederhana, (b) Graf Ganda, dan (c) Graf Semu

Sisi pada graf dapat mempunyai orientasi arah. Berdasarkan orientasi arah pada sisi, maka secara umum graf dibedakan atas dua jenis:

(61)

Gambar 2.2 Graf Tidak Berarah

2. Graf berarah (directed graph atau digraph) adalah graf yang setiap sisinya diberikan orientasi arah. Pada graf berarah, (u,v) dan (v,u) menyatakan dua buah busur yang berbeda, dengan kata lain (u,v) (v,u). Untuk busur (u,v), simpul u dinamakan simpul asal (initial vertex) dan simpul v dinamakan simpul terminal (terminal vertex) (Munir, 2014). Pada gambar 2.3 adalah contoh graf berarah.

Gambar 2.3 Graf Berarah

2.2.2 Graf Berbobot (Weighted Graph)

(62)

Gambar 2.4 Graf Berbobot

2.3 Shortest Path

Shortest Path (Jalur Terpendek) adalah pencarian suatu masalah untuk menemukan

lintasan terpendek antara dua atau lebih simpul yang saling berhubungan.

Lintasan terpendek adalah jalur yang dilalui dari suatu node ke node lain dengan besar atau nilai pada sisi yang jumlah akhirnya dari node awal ke node akhir paling kecil. Lintasan terpendek adalah lintasan minimum yang diperlukan untuk mencapai suatu tempat dari tempat lain. Lintasan minimum yang dimaksud dapat dicari dengan menggunakan graf. Graf yang digunakan adalah graf yang berbobot yaitu graf yang setiap sisinya diberikan suatu nilai atau bobot (Hayati & Yohanes, 2014).

2.4 Algoritma L-Deque

(63)

Deque bisa disebut juga dengan linier list atau daftar linear, yang penambahan dan penghapusan elemennya dapat dilakukan pada kedua sisi ujung list, tetapi tidak dapat dilakukan di tengah-tengah list. Dalam kata lain, deque disebut dengan queue ganda atau double queue.

Dequeue terdiri dari dua jenis, yaitu :

1. Input -Restricted-Deque

Deque yang operasi pemasukan elemen datanya hanya dapat dilakukan di satu ujung kanannya (right), tetapi dapat menghapus dari kedua ujungnya (left dan

right).

2. Output-Restricted-Deque

Deque yang operasi pemasukan elemen datanya dapat dilakukan melalui kedua ujungnya (left dan right), tetapi hanya dapat menghapus dari ujung kanannya (right).

2.5 Algoritma Floyd

Algoritma floyd adalah salah satu varian dari pemrograman dinamis, yaitu suatu metode yang melakukan pemecahan masalah dengan memandang solusi yang akan diperoleh sebagai suatu keputusan yang saling terkait. Artinya solusi-solusi tersebut dibentuk dari solusi yang berasal dari tahap sebelumnya dan ada kemungkinan solusi lebih dari satu (Kriswanto, et al. 2014).

Algoritma floyd adalah algoritma penghitungan rute terpendek yang dapat mencari semua jarak node (all pairs shortest path) pada suatu jaringan (Purwananto, et al. 2005).

Algoritma floyd dapat digunakan untuk mencari jarak terpendek antara semua titik dalam graf. Berikut adalah contoh pencariannya:

(64)

Graf berbobot diatas dapat dijadikan sebagai inisialiasi matriks seperti pada Tabel

Dilihat dari inisialisasi matriks dapat dicari R0, R1, R2, R3, R4 dan R5. Kotak abjad berwarna hijau disamping kiri adalah titik awal dan kotak abjad berwarna merah yang ada di atas adalah titik tujuannya. Sedangkan kotak angka hijau dan merah berfungsi untuk menentukan sebuah index. sebagai contoh :

C(5), E(3) (titik awal, titik tujuan) = 5,3

Pada gambar 1.3 diatas dapat dilihat bahwa graf terdapat 5 buah titik, yaitu A, B, C, D, E maka akan ada 6 proses yang akan dilewati yaitu R0, R1, R2, R3, R4 dan R5 sebagai hasil akhir, perlu diingat bahwa hasil dari sebuah proses akan digunakan untuk proses berikutnya.

Dari proses perhitungan tersebut maka akan didapatkan hasil yang dapat dilihat pada gambar 2.6 berikut:

(65)

(66)

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Semakin dengan berkembangnya teknologi fotografi di Indonesia, khususnya di Kota Medan, fotografi tidak hanya sebagai sarana atau alat untuk mengabadikan suatu kejadian atau momen spesial saja tetapi juga menjadi sarana atau alat dalam bidang seni dan alat komunikasi. Kebutuhan ruang studio foto sebagian besar tidak dapat menampung seluruh keinginan pasar yang bervariasi beserta kebutuhannya, sehingga dibutuhkan foto studio yang bisa melayani segala sesuatu yang berhubungan dengan foto yang mampu melayani semua keinginan dan permintaan konsumen, mulai dari jasa cetak, studio foto anak, remaja, keluarga, pernikahan, wisuda, foto stiker dan lain sebagainya. Pembiasan pandangan ini yang menjadi dasar untuk menghadirkan sebuah foto studio.

Terdapat beberapa pilihan yang dapat ditempuh untuk mencapai jarak atau jalur terpendek ke suatu foto studio, dalam hal ini telah ditentukan posisi awal user berdasarkan tempat user tersebut berada dan menuju tempat foto studio yang diinginkan user, sehingga dapat mendefenisikan jarak, waktu dan biaya yang dibutuhkan untuk mencapai ke tempat foto studio tersebut.

(67)

Terdapat banyak algoritma yang dapat digunakan dalam pencarian foto studio terdekat di Kota Medan, tapi dalam hal ini dipilihlah dua metode algoritma yang akan dikembangkan dan yang akan menyelesaikan persoalan jalur terpendek diantaranya algoritma L-Deque dan algoritma Floyd yang akan menentukan jalur terpendek antar Foto Studio di Kota Medan, dimana algoritma L-Deque dapat digunakan suatu linier list yang menambah dan menghapus elemennya dapat dilakukan pada kedua sisi ujung list, tetapi tidak dapat dilakukan ditengah tengah list, sedangkan fungsinya yaitu untuk mengambil sebuah elemen dari queue.

Algoritma floyd menghitung bobot terkecil dari semua jalur yang menghubungkan sebuah pasangan titik, dan melakukannya sekaligus untuk semua pasangan titik. Dengan kata lain pada saat perhitungan rute optimum yang akan dilalui terlebih dahulu (Kriswanto, et al. 2014).

Dengan menerapkan algoritma L-Deque atau algoritma Floyd pada sebuah sistem, diharapkan permasalahan untuk menentukan pemilihan jarak terpendek diantara kedua algoritma diatas dapat teratasi. Jadi, bagi pengguna yang memerlukan penentuan jarak terpendek untuk mengunjungi foto studio dapat memilih solusi yang paling optimal.

Mencermati hal-hal yang telah diterapkan, maka penulis tertarik membuat penelitian yang berjudul Implimentasi dan Perbandingan Algoritma L-Deque dan Algoritma Floyd

dalam Pencarian Foto Studio Terdekat di Kota Medan.

1.2 Rumusan Masalah

Rumusan masalah yang akan diteliti adalah bagaimana merancang aplikasi untuk mencari jarak atau jalur terpendek antar Foto Studio di Kota Medan dengan menggunakan algoritma L-Deque dan algoritma Floyd lalu membandingkan kedua algoritma tersebut sehingga dapat menentukan jarak terpendek yang paling efektif untuk mencapai tempat tersebut.

1.3 Ruang Lingkup Masalah

(68)

1. Dalam kasus ini yang diteliti yaitu sebuah graf berarah terhubung (directed

connected graph) dengan menggunakan vertex yang telah ditentukan.

2. Bobot yang digunakan adalah jarak.

3. Perhitungan dilakukan dengan membandingkan Running time dan kompleksitas Big Theta dengan satuan waktu yang digunakan adalah Milisekon serta membandingkan hasil (Result) masing-masing algoritma L-Deque dan algoritma Floyd.

7. Semua jalan dianggap satu arah pada jalan utama di Kota Medan.

8. Pengambilan data bobot jarak dengan simpul (vertex) sebanyak 10 buah dan sisi (edge) sebanyak 36 buah pada graf yang merepresentasikan jarak antara foto studio menggunakan bantuan dari Google Maps.

9. Aplikasi ini menggunakan data titik awal yang diinginkan dan posisi foto studio yang sudah ditentukan.

10.Aplikasi ini Offline dan dirancang dengan bantuan Visual Studio 2015 dan dengan menggunakan bahasa pemograman Visual Basic 2015.

1.4 Tujuan Penelitian Tujuan Penelitian ini adalah:

1. Menerapkan Algoritma L-Deque dan Algoritma Floyd dalam pencarian foto studio terdekat di Kota Medan.

(69)

1.5 Manfaat Penelitian

Manfaat yang dihasilkan dari penelitian ini dapat mengetahui algoritma mana dari algoritma L-Deque dan algoritma Floyd yang lebih efektif dan efesien dalam pencarian foto studio terdekat di Kota Medan.

1.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 pengertian algoritma, graf, jenis- jenis graf, shortest path, algoritma

L-Deque dan algoritma Floyd.

2. Pengumpulan dan Analisis Data

Pada tahap ini dilakukan pengumpulan dan analisa data yang berhubungan dengan penelitian ini seperti fungsi algoritma L-Deque dan algortima Floyd dalam pencarian foto studio terdekat di Kota Medan.

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

(70)

5. Pengujian Sistem

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 “Implementasi dan Perbandingan Algoritma L-Deque dan Algoritma Floyd Dalam Pencarian Foto Studio Terdekat Di Kota Medan”. 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 graph, algoritma lintasan terpendek, running time dan sebagainya.

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

(71)

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM

Pada tahap ini dilakukan pembuatan sistem dan coding sesuai dengan analisis dan perancangan, kemudian melakukan pengujian sistem.

BAB 5 KESIMPULAN DAN SARAN

(72)

ABSTRAK

Kebutuhan foto studio di Kota Medan termasuk cukup besar, dimana foto studio dapat melayani sesuai keinginan dan permintaan konsumen, mulai dari jasa cetak, studio foto anak, remaja, keluarga, pernikahan, wisuda, foto stiker dan lain sebagainya. Sehingga dibutuhkan foto studio yang bisa melayani segala sesuatu yang berhubungan dengan foto yang mampu melayani semua keinginan dan permintaan konsumen. Terdapat pilihan yang dapat ditempuh untuk menuju foto studio terdekat yang diinginkan, foto studio yang dipilih adalah foto studio ternama di Kota Medan. Data seperti jarak dan rute untuk menuju foto studio yang diinginkan diambil dari google maps, dengan jumlah simpul (vertex) sebanyak 10 buah dan sisi (edge) sebanyak 36 buah, dalam pencarian foto studio terdekat di Kota Medan tersebut akan diterapkan kedalam sebuah graf. Dalam menyelesaikan graf diperlukan pula algoritma, algoritma yang akan digunakan yaitu algoritma L-Deque dan algoritma Floyd, dimana algoritma L-Deque penambahan dan penghapusan elemennya dapat dilakukan pada kedua sisi ujung list, tetapi tidak dapat dilakukan di tengah-tengah list dan algoritma Floyd memberikan solusi-solusi yang dibentuk dari solusi yang berasal dari tahap sebelumnya dan ada kemungkinan solusi lebih dari satu. Berdasarkan Hasil pencarian foto studio terdekat di Kota Medan dengan menggunakan algoritma L-Deque dan algoritma Floyd menghasilkan total jarak yang bernilai sama dan running time yang berbeda dimana algoritma L-Deque memiliki nilai running time yang lebih cepat dibandingkan algoritma Floyd.

.

(73)

IMPLIMENTATION AND COMPARISON OF L-DEQUE ALGORTIHM AND FLOYD ALGORITHM IN

A SEARCH OF THE NEAREST PHOTO STUDIO IN MEDAN CITY consumer demand. There are choices that can be taken to go to the nearest studio photos desired, photo studio selected is a photo studio brand in Medan City. Data like distance and a route for to photo studio desired taken from google maps. with the number of vertices (vertex) of 10 pieces and the side (edge) of 36 pieces, In search of the nearest photo studio in medan city will be applied into a graf. In resolving graf need to algorithms, An algorithm to be used Deque algorithm and Floyd algorithm, where L-deque algorithm additional and removal of the elements came can be done on either side of the list, But could not be performed in the midst of list and Floyd algorithm give solutions formed of the solutions that derived from the previous and there is a possibility solution more than one. Based on the results of search photo studio nearest in Medan City with algorithm L-Deque and Floyd algorithm produce total distance of equal value and running time different, where L-Deque algorithm having value running time that faster than Floyd algorithm.

(74)

PENCARIAN

FOTO

STUDIO

TERDEKAT

DI

KOTA

MEDAN

SKRIPSI

KEVIN IRFANDA 121401085

PROGRAM STUDI S-1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

(75)

L-DEQUE DAN ALGORITMA FLOYD DALAM

PENCARIAN FOTO STUDIO TERDEKAT

DI KOTA MEDAN

SKRIPSI

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

KEVIN IRFANDA 121401085

PROGRAM STUDI S-1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

(76)

PERSETUJUAN

Judul : IMPLEMENTASI DAN PERBANDINGAN ALGORITMA L-DEQUE DAN ALGORITMA FLOYD DALAM PENCARIAN FOTO STUDIO TERDEKAT DI KOTA MEDAN

Kategori : SKRIPSI

Nama : KEVIN IRFANDA

Nomor Induk Mahasiswa : 121401085

Program Studi : SARJANA(S1) ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

Diluluskan di

Medan, Oktober 2016 Komisi Pembimbing :

Dosen Pembimbing II Dosen Pembimbing I

Dian Rachmawati, S.Si., M.Kom Prof. Dr. Iryanto, M.Si

NIP. 198307232009122004 NIP. 194604041971071001

Diketahui/disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

(77)

PERNYATAAN

IMPLEMENTASI DAN PERBANDINGAN ALGORITMA L-DEQUE DAN ALGORITMA FLOYD DALAM

PENCARIAN FOTO STUDIO TERDEKAT DI KOTA MEDAN

SKRIPSI

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

Medan, Oktober 2016

(78)

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 Universitas Sumatera Utara.

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, Universitas Sumatera Utara.

3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.

4. Bapak Prof. Dr. Iryanto, M.Si 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. Bapak M. Andri Budiman, S.T., M.Comp.Sc., M.E.M selaku Dosen Pembanding I yang memberikan kritik dan saran untuk penyempurnaan skripsi ini.

7. Ibu Amalia, S.T, M.T selaku Dosen Pembanding II yang memberikan kritik dan saran untuk penyempurnaan skripsi ini.

(79)

9. Teristimewa Ayahanda Irwansyah dan Ibunda Triani br Sembiring yang tidak henti-hentinya memberikan doa, dukungan dan motivasi yang selalu menjadi semangat penulis untuk meyelesaikan skripsi ini.

10.Kakak, Abang dan Adik tersayang Nidya Novriawan, S.Sos., Ruli Dharmawan, S.E dan Nouval Syahputra yang memotivasi penulis untuk menyelesaikan skripsi ini.

11.Teman-teman yang luar biasa Dhika Handayani Rangkuti, S.Kom., Natasha Maharani Siregar, Novita Chairunissa, S.Kom., Ratu Mutiara Siregar, S.Kom., Yohanes Simare-mare, S.Kom dan Zulaiha Yulandari yang telah memberikan doa, dukungan dan membantu penulis dalam menyelesaikan skripsi ini.

12.Teman-teman Kom B 2012, serta teman-teman stambuk 2012 atas doa dan dukunganya sehingga penulis dapat menyelesaikan skripsi ini.

13.Rekan-rekan pengurus IMILKOM (Ikatan Mahasiswa S1 Ilmu Komputer) Fasilkom-TI USU Periode 2015-2016 yang telah memberikan dukungan, tempat belajar berorganisasi yang benar dan menimba pengalaman.

14.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, Oktober 2016 Penulis,

(80)

ABSTRAK

Kebutuhan foto studio di Kota Medan termasuk cukup besar, dimana foto studio dapat melayani sesuai keinginan dan permintaan konsumen, mulai dari jasa cetak, studio foto anak, remaja, keluarga, pernikahan, wisuda, foto stiker dan lain sebagainya. Sehingga dibutuhkan foto studio yang bisa melayani segala sesuatu yang berhubungan dengan foto yang mampu melayani semua keinginan dan permintaan konsumen. Terdapat pilihan yang dapat ditempuh untuk menuju foto studio terdekat yang diinginkan, foto studio yang dipilih adalah foto studio ternama di Kota Medan. Data seperti jarak dan rute untuk menuju foto studio yang diinginkan diambil dari google maps, dengan jumlah simpul (vertex) sebanyak 10 buah dan sisi (edge) sebanyak 36 buah, dalam pencarian foto studio terdekat di Kota Medan tersebut akan diterapkan kedalam sebuah graf. Dalam menyelesaikan graf diperlukan pula algoritma, algoritma yang akan digunakan yaitu algoritma L-Deque dan algoritma Floyd, dimana algoritma L-Deque penambahan dan penghapusan elemennya dapat dilakukan pada kedua sisi ujung list, tetapi tidak dapat dilakukan di tengah-tengah list dan algoritma Floyd memberikan solusi-solusi yang dibentuk dari solusi yang berasal dari tahap sebelumnya dan ada kemungkinan solusi lebih dari satu. Berdasarkan Hasil pencarian foto studio terdekat di Kota Medan dengan menggunakan algoritma L-Deque dan algoritma Floyd menghasilkan total jarak yang bernilai sama dan running time yang berbeda dimana algoritma L-Deque memiliki nilai running time yang lebih cepat dibandingkan algoritma Floyd.

.

(81)

IMPLIMENTATION AND COMPARISON OF L-DEQUE ALGORTIHM AND FLOYD ALGORITHM IN

A SEARCH OF THE NEAREST PHOTO STUDIO IN MEDAN CITY consumer demand. There are choices that can be taken to go to the nearest studio photos desired, photo studio selected is a photo studio brand in Medan City. Data like distance and a route for to photo studio desired taken from google maps. with the number of vertices (vertex) of 10 pieces and the side (edge) of 36 pieces, In search of the nearest photo studio in medan city will be applied into a graf. In resolving graf need to algorithms, An algorithm to be used Deque algorithm and Floyd algorithm, where L-deque algorithm additional and removal of the elements came can be done on either side of the list, But could not be performed in the midst of list and Floyd algorithm give solutions formed of the solutions that derived from the previous and there is a possibility solution more than one. Based on the results of search photo studio nearest in Medan City with algorithm L-Deque and Floyd algorithm produce total distance of equal value and running time different, where L-Deque algorithm having value running time that faster than Floyd algorithm.

(82)

DAFTAR ISI

1.7Sistematika Penulisan 5

Bab 2 Landasan Teori

2.1 Pengertian Algoritma 7

2.2 Teori Dasar Graf 7

Bab 3 Analisis dan Perancangan Sistem

3.1 Analisis Sistem 14

3.1.1 Analisis Masalah 14

3.1.2 Analisis Persyaratan 20

3.1.2.1 Persyaratan Fungsional 20

3.1.2.2 Persyaratan Non-Fungsional 21

3.1.3 Analisis Proses 21

3.1.4 Flowchart 22

3.1.4.1 Flowchart Sistem 22

3.1.4.2 Flowchart Algoritma L-Deque 23

(83)

3.2 Perancangan Sistem 25

3.3 Perancangan Antarmuka (Interface) 28

3.3.1 Halaman Menu Home 28

3.3.2 Halaman Menu Foto Studio ke Foto Studio 30

3.3.3 Halaman Menu Pengaturan 31

3.3.4 Halaman Menu Bantuan 33

3.3.5 Halaman Menu Tentang 33

Bab 4 Implementasi dan Pengujian

4.1Implementasi 35

4.1.1 Tampilan Halaman Menu Home 35

4.1.2 Tampilan Halaman Menu Foto Studio ke Foto Studio 36

4.1.3 Tampilan Halaman Menu Pengaturan 36

4.1.4 Tampilan Halaman Menu Bantuan 37

4.1.4 Tampilan Halaman Menu Tentang 38

4.2 Pengujian 38

4.2.1 Pengujian Proses Implementasi 38

4.2.2 Pengujian Proses Algoritma L-Deque 40

4.2.2.1 Perhitungan Manual Algortima L-Deque 41

4.2.3 Pengujian Proses Algoritma Floyd 42

4.2.3.1 Perhitungan Manual Algoritma Floyd 43

4.3 Real Running-Time 55

4.4 Kompleksitas 60

4.4.1 Kompleksitas Algoritma L-Deque 60

4.4.2 Kompleksitas Algoritma Floyd 61

Bab 5 Kesimpulan dan Saran

5.1 Kesimpulan 64

5.2. Saran 64

Daftar Pustaka 66

(84)

DAFTAR TABEL

Halaman

Tabel 2.1 Inisialisasi Matriks 12

Tabel 3.1 Nama-Nama Foto Studio yang Menjadi Vertex 15 Tabel 3.2 Data Simpul (Vertex) Pada Graf Foto Studio di Kota Medan 17 Tabel 3.3 Keterangan Gambar Rancangan Antarmuka Halaman Home 29 Tabel 3.4 Keterangan Gambar Rancangan Antarmuka Halaman Foto Studio ke

Foto Studio 30

Tabel 3.5 Keterangan Gambar Rancangan Antarmuka Halaman Menu Pengaturan 32 Tabel 3.6 Keterangan Gambar Rancangan Antarmuka Halaman Menu Bantuan 33 Tabel 3.7 Keterangan Gambar Rancangan Antarmuka Halaman Menu Tentang 34

Tabel 4.1 Inisialilasi Matriks 44

Tabel 4.2 Matriks R0 45

Tabel 4.12 Hasil Dari Ketiga Pengujian 59

Tabel 4.13 Kompleksitas Algoritma L-Deque 60

Gambar

Gambar 4.4 Tampilan Halaman Menu Bantuan
Gambar 4.5 Tampilan Halaman Menu Tentang
Gambar 4.8 Tampilan Nama dan Alamat Setiap Foto Studio
Gambar 4.9 Tampilan Pengujian Pencarian Foto Studio dengan Algoritma L-Deque
+7

Referensi

Dokumen terkait

Demikian atas perhatian dan partisipasinya diucapkan terima kasih.. Semarang, 11 Juni 2013

Surat undangan ini disamping dikirimkan melalui e-mail juga diumumkan melalui halaman berita di website LPSE Provinsi Jawa Tengah, oleh karenanya Panitia

Kegiatan Pemeliharaan Saluran Irigasi Pekerjaan Pemeliharaan. Saluran Irigasi Desa

[r]

Surat undangan ini disamping dikirimkan melalui e-mail juga diumumkan melalui halaman berita di website LPSE Provinsi Jawa Tengah, oleh karenanya Panitia

Berdasarkan hasil penelitian didapatkan bahwa pengunaan FreeRADIUS, MySQL dan EAP-TLS memberikan keamanan yang baik untuk client melalui proses otentikasi,

Data hasil prestasi belajar dilihat dari kondisi awal atau pra siklus nilai ulangan siswa yang mencapai (KKM) sebanyak lima siswa atau sebesar 27.78%, Pada

Buatlah object Box, kita bisa memasukkan sembarang object karena parameter pada method add adalah Class Object, tapi pada saat mengambil object tersebut harus.. diubah sesuai