Analisis Perbandingan Algoritma Generate and Test Dengan Hill Climbing Pada Penyelesaian Traveling Salesman Problem Untuk Kunjungan Wisata di Kabupaten Tapanuli Tengah Chapter III V
20
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
Bab ini berisi tentang pembahasan analisis dan perancangan sistem aplikasi, termasuk
di dalamnya Ishikawa Diagram, Use Case Diagram, Activity Diagram, Sequential
Diagram, Flowchart, dan desain interface.
3.1
Analisis Sistem
Pada tahapan ini yang dilakukan ialah menganalisa sistem untuk menghasilkan
pemahaman yang menyeluruh akan kebutuhan sistem yang terdiri dari tugas-tugas
yang akan dikerjakan oleh sistem. Tahapan ini dilakukan untuk mengurangi terjadinya
kesalahan yang mempengaruhi kenerja sistem dalam proses perancangan aplikasi.
Tahapan analisis dalam tugas akhir ini terdiri dari analisis masalah, analisis
persyaratan dan analisis proses.
Kelayakan masalah perlu dipahami dan dibahas dalam analisis masalah serta
merta menjelaskan fungsi-fungsi yang ditawarkan dan dapat dikerjakan oleh sistem
juga dibahas dianalisis persyaratan. Analisis proses diperlukan guna mengetahui
bagaimana proses tersebut akan bekerja dan bagaimana langkah-langkah yang harus
ditempuh untuk mendapatkan hasil yang optimum.
3.1.1 Analisis masalah
Diagram Ishikawa (fishbone diagram) biasanya disebut juga diagram sebab akibat
yang digunakan untuk mengidentifikasi masalah yang ada pada sistem yang akan
dirancang. Dengan menggunakan diagram ini, kita dapat mengidentifikasi,
mengeksplorasi dan menggambarkan suatu masalah dengan mengikutsertakan sebab
dan akibat dari permasalahan terkait. Dengan demikian proses pencapaian sistem akan
sangat terbantu.
Permasalahan utama dari sistem yang akan dikembangkan pada penelitian ini
adalah bagaimana mendapatkan lintasan tercepat yang akan dilalui dalam melakukan
kunjungan keseluruh tempat dan kembali ketempat awal. Selanjutnya masalah ini
diuraikan ke beberapa kategori, antara lain: pengguna sistem, jarak antar titik, validasi
Universitas Sumatera Utara
21
jalur terpilih, dan perbandingan. Maka dari keseluruhan kategori tersebut dijelaskan
melalui diagram Ishikawa yang dapat dilihat pada Gambar 3.1.
Man
Membutuhkan
informasi
lokasi-lokasi objek wisata
yang akan dikunjungi
Waktu yang dibutuhkan
untuk menentukan lintasan
tercepat sangat lama
Bagaimana mesin menggunakan
metode heuristik menentukan
lintasan tercepat
Belum diketahui perbandingan
antara Algoritma Generate and
Test dan Algoritma Hill Climbing
Machine
Material
Objek-objek wisata yang
ditentukan
pada
peta
Kabupaten Tapanuli Tengah
dan dinyatakan sebagai node
Jarak antar node yang terhubung
dinyatakan sebagai edge dengan
nilai sebagai bobot
Penentuan
lintasan
tercepat
selama
ini
menggunakan
metode
deterministik
Penetuan lintasan tercepat untuk
mengunjungi objek-objek wisata
terpilih di Kabupaten Tapanuli
Tengah mengunakan Algoritma
Generate and Test dengan
Algoritma Hill Climbing
Metode secara manual tidak
efisien sehingga digunakan
deterministik atau heuristik
Method
Gambar 3.1 Diagram Ishikawa (Fishbone) untuk Analisis Permasalahan Sistem
Pada gambar 3.1 permasalahan pada penelitian ini ditunjukan pada akhir garis
horizontal utama (head) dan penyebab dari permasalahan tersebut ditunjukan dari
garis-garis diagonal (bone). Bone dibagi menjadi empat aspek yang terdiri dari
pengguna, material, sistem dan metode. Pengguna (Man) berkaitan dengan tindakan
ataupun upaya yang dilakukan pengguna untuk menjalankan sistem
dengan
memasukkan data berupa node dan edge kemudian memilih algoritma yang digunakan
untuk menentukan lintasan dalam penyelesaian Traveling Salesman Problem yang
ditampilkan dalam graph. Mesin ialah sistem itu sendiri dimana sistem akan
menerapkan metode dari Algoritma Generate and Test atau Algoritma Hill Climbing
untuk kemudian dibandingkan berdasarkan hasil dari kedua algoritma tersebut.
Material mencakup hal-hal yang dibutuhkan dalam membangun sistem dimana dalam
penelitian ini material yang digunakan adalah jarak. Metode merupakan cara yang
digunakan dalam memperoleh lintasan tercepat untuk Traveling Salesman Problem
dan metode yang digunakan yaitu Algoritma Generate and Test dan Hill Climbing.
Universitas Sumatera Utara
22
3.1.2 Analisis kebutuhan sistem
Analisis kebutuhan sistem dibagi menjadi dua bagian, yaitu kebutuhan fungsional dan
kebutuhan non-fungsional.
1.
Kebutuhan Fungsional
Analisis kebutuhan fungsional pada sistem ini menjabarkan mengenai tahap-tahap
atau fungsi-fungsi yang dapat dilakukan atau tersedia pada sistem. Fungsi-fungsi
tersebut yang akan bekerja untuk dapat menampilkan hasil penetuan dari algoritma
Generate and Test dan algoritma Hill Climbing dalam menentukan hasil dalam
penyelesaian Traveling Salesman Problem atau jarak terkecil yang paling optimal
dalam pengunjungan objek-objek wisata yang akan dikunjungi, serta membandingkan
hasil kerja dari kedua algoritma tersebut.
Beberapa kebutuhan fungsional yang terdapat pada sistem ini, antara lain:
a.
Sistem dibuat sesuai dengan representasi graf yang sebenarnya dati Peta
Kabupaten Tapanuli Tengah yang ditampilkan.
b.
Sistem dapat membaca data berupa simpul (vertex) dan sisi (edge) yang sudah
disimpan di dalam memori dalam bentuk matriks 2 dimensi.
c.
Sistem mampu menghitung dan menampilkan hasil pencarian optimum
menggunakan algoritma Generate and Test dan algoritma Hill Climbing yang
telah digunakan dalam sistem.
d.
Sistem mampu menghitung dan menentukan kecepatan waktu proses (running
time) dari masing-masing algoritma.
2.
Kebutuhan Non-Fungsional
Analisis kebutuhan non-fungsional pada sistem ini berupa kinerja atau performansi
dari sistem berdasarkan algoritma yang digunakan serta kemudahan pengunaanya.
Beberapa kebutuhan non-fungsional yang terdapat pada sistem ini, antara lain:
a.
Kinerja atau Performansi
Sistem atau perangkat lunak yang akan dibangun harus mampu menampilkan hasil
dari algoritma yang diterapkan di dalam sistem, yaitu algoritma Generate and Test dan
algoritma Hill Climbing.
b.
Mudah Digunakan
Sistem atau perangkat lunak yang akan dibangun harus mudah digunakan oleh user
dimana user dapat dengan mudah memilih algoritma mana yang digunakan dengan
Universitas Sumatera Utara
23
tampilan yang sederhana namun dapat dengan mudah dipahami.
c.
Hemat Biaya
Sistem atau perangkat lunak yang akan dibangun tidak membutuhkan perangkat
tambahan yang dapat mengeluarkan biaya tambahan.
d.
Manajemen Kualitas Sistem
Sistem atau perangkat lunak yang akan dibangun harus mempunyai kualitas yang baik
dan hasil yang tepat.
3.1.3 Analisis proses
Sistem dibangun menggunakan bahasa pemrograman Basic. Algoritma untuk
penyelesaian Traveling Salesman Problem yang digunakan untuk menentukan lintasan
tercepat dalam mengunjungi semua objek wisata terpilih adalah Generate and Test dan
Hill Climbing. Hasil yang diperoleh dari kedua algoritma tersebut akan dibandingkan
sehingga dapat diperoleh algoritma yang paling efisien tetapi memberikan hasil
optimum dalam waktu proses tercepat dalam menentukan jarak optimum.
Berdasarkan data yang ada, Kabupaten Tapanuli Tengah memiliki banyak objek
wisata, namun pada penelitian ini penulis hanya mengunakan 10 objek wisata yang
lebih dikenal warga setempat. Adapun daftar objek wisata yang akan diterapkan
sebagai verteks di dalam sistem ini dapat dilihat pada Tabel 3.1 berikut:
Tabel 3. 1 Daftar Objek Wisata Yang Dijadikan Sebagai Verteks
No.
Nama Objek Wisata
A.
Bandara F.L. Tobing
B.
Pantai Batu Gajah
C.
Pantai Pandan
D.
Air Terjun Sihobuk
E.
Patai Pandaratan
F.
Air Terjun Silaklak
G.
Pantai Binasi
H.
Makam Papan Tinggi
I.
Pantai Kahona
J.
Air Terjun Mursala
Pada penelitian ini, penulis membatasi jumlah simpul (vertex) sebanyak 10 simpul
yang akan diterapkan pada graf ini. Graf yang digunakan pada penelitian ini ialah graf
tidak berarah dan berbobot yang mengacu pada peta Kabupaten Tapanuli Tengah yang
dapat dilihat pada Gambar 3.2.
Universitas Sumatera Utara
24
Gambar 3.2 Peta Kabupaten Tapanuli Tengah
Dalam representasi graf, bobot dari setiap sisi (edge) yang menghubungkan setiap
simpul (vertex) adalah jarak dari antar objek wisata yang akan dijadikan sebagai
simpul. Graf akan digambarkan berdasarkan jarak tempuh dari setiap simpul ke
simpul tetangga yang saling terhubung. Data tersebut dikumpulkan dan disimpan
dalam data matriks 2 dimensi.
Pada penelitian ini nilai bobot dari setiap edge ditentukan berdasarkan jarak tempuh
dari objek wisata yang satu ke objek wisata lainnya berdasarkan perhitungan dari
google maps. Jarak tersebut merupakan jarak terkecil antar objek wisata tanpa melalui
objek wisata lainnya, dengan kata lain jarak tersebut merupakan jarak langsung antara
2 objek wisata yang saling berdekatan. Sehingga edge yang terbentuk pada penelitian
ini antara lain:
Universitas Sumatera Utara
25
1.
Edge AB
Bobot dari edge AB ialah 18,4 km yang diambil dari jarak antara objek wisata A ke
objek wisata B, dapat dilihat pada gambar 3.3.
Gambar 3.3 Jarak tempuh objek A ke objek B
2.
Edge AC
Bobot dari edge AC ialah 22 km yang diambil dari jarak antara objek wisata A ke
objek wisata C, dapat dilihat pada gambar 3.4.
Gambar 3.4 Jarak tempuh objek A ke objek C
Universitas Sumatera Utara
26
3.
Edge BC
Bobot dari edge BC ialah 4,9 km yang diambil dari jarak antara objek wisata B ke
objek wisata C, dapat dilihat pada gambar 3.5.
Gambar 3.5 Jarak tempuh objek B ke objek C
4.
Edge BH
Bobot dari edge BH ialah 43,27 km yang diambil dari jarak antara objek wisata B ke
objek wisata H melalui transportasi laut, dapat dilihat pada gambar 3.6.
Gambar 3.6 Jarak tempuh objek B ke objek H
5.
Edge CD
Bobot dari edge CD ialah 8,8 km yang diambil dari jarak antara objek wisata C ke
objek wisata D, dapat dilihat pada gambar 3.7.
Universitas Sumatera Utara
27
Gambar 3.7 Jarak tempuh objek C ke objek D
6.
Edge CE
Bobot dari edge CE ialah 6,9 km yang diambil dari jarak antara objek wisata C ke
objek wisata E, dapat dilihat pada gambar 3.8.
Gambar 3.8 Jarak tempuh objek C ke objek E
Universitas Sumatera Utara
28
7.
Edge CH
Bobot dari edge CH ialah 42,15 km yang diambil dari jarak antara objek wisata C ke
objek wisata H melalui transportasi laut, dapat dilihat pada gambar 3.9.
Gambar 3.9 Jarak tempuh objek C ke objek H
8.
Edge DE
Bobot dari edge DE ialah 7,1 km yang diambil dari jarak antara objek wisata D ke
objek wisata E, dapat dilihat pada gambar 3.10.
Gambar 3.10 Jarak tempuh objek D ke objek E
9.
Edge DF
Bobot dari edge DF ialah 22,3 km yang diambil dari jarak antara objek wisata D ke
objek wisata F, dapat dilihat pada gambar 3.11.
Universitas Sumatera Utara
29
Gambar 3.11 Jarak tempuh objek D ke objek F
10.
Edge DH
Bobot dari edge DH ialah 37,71 km yang diambil dari jarak antara objek wisata D ke
objek wisata H melalui transportasi laut, dapat dilihat pada gambar 3.12.
Gambar 3.12 Jarak tempuh objek D ke objek H
11.
Edge EF
Bobot dari edge EF ialah 24,2 km yang diambil dari jarak antara objek wisata E ke
objek wisata F, dapat dilihat pada gambar 3.13.
Universitas Sumatera Utara
30
Gambar 3.13 Jarak tempuh objek E ke objek F
12.
Edge FG
Bobot dari edge FG ialah 27 km yang diambil dari jarak antara objek wisata F ke
objek wisata G, dapat dilihat pada gambar 3.14.
Gambar 3.14 Jarak tempuh objek F ke objek G
13.
Edge GH
Bobot dari edge GH ialah 25,43 km yang diambil dari jarak antara objek wisata G ke
objek wisata H melalui transportasi laut, dapat dilihat pada gambar 3.15.
Universitas Sumatera Utara
31
Gambar 3.15 Jarak tempuh objek G ke objek H
14.
Edge GJ
Bobot dari edge GJ ialah 24,3 km yang diambil dari jarak antara objek wisata G ke
objek wisata J, dapat dilihat pada gambar 3.16.
Gambar 3.16 Jarak tempuh objek G ke objek J
Universitas Sumatera Utara
32
15.
Edge HI
Bobot dari edge HI ialah 40,81 km yang diambil dari jarak antara objek wisata H ke
objek wisata I melalui transportasi laut, dapat dilihat pada gambar 3.17.
Gambar 3.17 Jarak tempuh objek I ke objek H
16.
Edge IJ
Bobot dari edge IJ ialah 13,3 km yang diambil dari jarak antara objek wisata I ke
objek wisata J, dapat dilihat pada gambar 3.18.
Gambar 3.18 Jarak tempuh objek I ke objek J
Universitas Sumatera Utara
33
Setelah keseluruhan bobot telah didapatkan maka graf tidak berarah dan berbobot
dapat dilihat pada gambar 3.19.
Gambar 3.19 Graf tidak berarah Kabupaten Tapanuli Tengah
3.2
Pemodelan Sistem
Pemodelan sistem pada penelitian ini menggunakan Unified Modelling Language
(UML) sebagai bahasa spesifikasi standar suatu model yang berfungsi untuk
membantu merancang sistem dengan tujuan untuk menggambarkan peran pengguna
terhadap sistem yang dibuat. Sistem ini dirancang dengan menggunakan use case
diagram, activity diagram, dan sequence diagram, serta flowchart.
3.2.1 Use Case Diagram
Use case diagram merupakan suatu teknik pemodelan yang digunakan untuk
menggambarkan kegiatan atau interaksi yang terjadi antara sistem, pengguna, dan
eksternal sistem. (Whitten, et al. 2004)
Universitas Sumatera Utara
34
Use case diagram digunakan untuk mengetahui kebutuhan sistem dari sudut pandang
user (pengguna) dan merepresentasikan interaksi antara user tersebut dengan sistem.
Use case diagram dari sistem pada penelitian ini dapat dilihat pada Gambar 3.20.
Sistem
Buat Jalur
Generate & Test
Bobot Graf
Implementasi
Buat Jalur
Hill Climbing
Algoritma
Bobot Graf
Pengguna
Running Time
Perbandingan
Total Bobot Lintasan
Gambar 3.20 Use Case Diagram Sistem
3.2.2 Activity Diagram
Activity Diagram merupakan diagram aktivitas yang menggambarkan langkah demi
langkah proses atau aktivitas dari suatu sistem. Activity diagram menampilkan
aktivitas sistem yang berjalan secara bersamaan. (Whitten, et al. 2004). Activity
diagram dari sistem yang akan dibangun dapat dilihat pada Gambar 3.21.
Universitas Sumatera Utara
35
User
Sistem
Tentukan Verteks –
verteks yang akan
dikunjungi
Tentukan nilai setiap
Edge
Pilih Menu
“Proses”
Menampilkan graf berupa
vertex dan weighted edge
Pilih Algoritma
“Generate and Test”
Tampilkan Total Jarak Tempuh
dan Running Time Algoritma
Generate and Test
Pilih Algoritma
“Hill Climbing”
Tampilkan Total Jarak Tempuh
dan Running Time Algoritma
Hill Climbing
Gambar 3.21 Activity Diagram Sistem
Gambar 3.21 menjelaskan activity diagram dari sistem. Sistem bekerja dimulai dari
tindakan user dengan menentukan objek-objek wisata yang akan dikunjungi dalam
data berupa vertex dan menetukan edge beserta dengan bobot yang sudah disimpan
dalam sebuah data matriks. Sistem kemudian menampilkan graf yang sudah disimpan
oleh user. Kemudian user melakukan proses analisis dan perhitungan terhadap jarak
(bobot) pada setiap sisi (edge) yang saling terhubung pada setiap simpul (vertex)
menggunakan algoritma Generate and Test dan algoritma Hill Climbing kemudian
menampilkan graf total jarak tempuh dan waktu proses (running time)-nya.
Universitas Sumatera Utara
36
3.2.3 Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek juga dapat mengindikasikan
komunikasi antar objek yang berhubungan. Sequence diagram pencarian lintasan
tercepat sistem ini dapat dilihat pada gambar 3.22.
Form Penentuan
Lintasan Terpendek
User
Algoritma Generate
and Test
Algoritma Hill
Climbing
Tentukan Verteks-verteks
Tujuan dan Edge
Menampilkan
Graf Berbobot
Pilih Algoritma Generate and Test
Menampilkan Total Lintasan dan Running Time
Algoritma Generate and Test
Pilih Algoritma Hill Climbing
Menampilkan Total Lintasan dan Running Time Algoritma Hill Climbing
Gambar 3.22 Sequence Diagram Sistem
3.2.4 Flowchart
Flowchart atau yang disebut juga diagram alir merupakan suatu pemodelan dari
langkah-langkah logis yang dibutuhkan untuk memecahkan suatu masalah. (Farrell,
2013). Flowchart dari algoritma Generate and Test ditunjukkan pada Gambar 3.23
dan flowchart dari algoritma Hill Climbing ditunjukkan oleh Gambar 3.24.
Universitas Sumatera Utara
37
Mulai
Tentukan titik dan
jarak antar titik
Tentukan lintasan awal
dan nilainya
Lintasan_Terpilih = Lintasan_Baru
Semua kemungkinan lintasan
sudah dibangkitkan
Lintasan_terpilih = Lintasan_Awal
Nilai Lintasan_terpilih = Nilai Lintasan_awal
Bangkitkan Lintasan_Baru
dan hitung nilainya
Tidak
Tidak
Ya
Ya
Lintasan_Terpilih
Nilai Lintasan_Baru
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
Bab ini berisi tentang pembahasan analisis dan perancangan sistem aplikasi, termasuk
di dalamnya Ishikawa Diagram, Use Case Diagram, Activity Diagram, Sequential
Diagram, Flowchart, dan desain interface.
3.1
Analisis Sistem
Pada tahapan ini yang dilakukan ialah menganalisa sistem untuk menghasilkan
pemahaman yang menyeluruh akan kebutuhan sistem yang terdiri dari tugas-tugas
yang akan dikerjakan oleh sistem. Tahapan ini dilakukan untuk mengurangi terjadinya
kesalahan yang mempengaruhi kenerja sistem dalam proses perancangan aplikasi.
Tahapan analisis dalam tugas akhir ini terdiri dari analisis masalah, analisis
persyaratan dan analisis proses.
Kelayakan masalah perlu dipahami dan dibahas dalam analisis masalah serta
merta menjelaskan fungsi-fungsi yang ditawarkan dan dapat dikerjakan oleh sistem
juga dibahas dianalisis persyaratan. Analisis proses diperlukan guna mengetahui
bagaimana proses tersebut akan bekerja dan bagaimana langkah-langkah yang harus
ditempuh untuk mendapatkan hasil yang optimum.
3.1.1 Analisis masalah
Diagram Ishikawa (fishbone diagram) biasanya disebut juga diagram sebab akibat
yang digunakan untuk mengidentifikasi masalah yang ada pada sistem yang akan
dirancang. Dengan menggunakan diagram ini, kita dapat mengidentifikasi,
mengeksplorasi dan menggambarkan suatu masalah dengan mengikutsertakan sebab
dan akibat dari permasalahan terkait. Dengan demikian proses pencapaian sistem akan
sangat terbantu.
Permasalahan utama dari sistem yang akan dikembangkan pada penelitian ini
adalah bagaimana mendapatkan lintasan tercepat yang akan dilalui dalam melakukan
kunjungan keseluruh tempat dan kembali ketempat awal. Selanjutnya masalah ini
diuraikan ke beberapa kategori, antara lain: pengguna sistem, jarak antar titik, validasi
Universitas Sumatera Utara
21
jalur terpilih, dan perbandingan. Maka dari keseluruhan kategori tersebut dijelaskan
melalui diagram Ishikawa yang dapat dilihat pada Gambar 3.1.
Man
Membutuhkan
informasi
lokasi-lokasi objek wisata
yang akan dikunjungi
Waktu yang dibutuhkan
untuk menentukan lintasan
tercepat sangat lama
Bagaimana mesin menggunakan
metode heuristik menentukan
lintasan tercepat
Belum diketahui perbandingan
antara Algoritma Generate and
Test dan Algoritma Hill Climbing
Machine
Material
Objek-objek wisata yang
ditentukan
pada
peta
Kabupaten Tapanuli Tengah
dan dinyatakan sebagai node
Jarak antar node yang terhubung
dinyatakan sebagai edge dengan
nilai sebagai bobot
Penentuan
lintasan
tercepat
selama
ini
menggunakan
metode
deterministik
Penetuan lintasan tercepat untuk
mengunjungi objek-objek wisata
terpilih di Kabupaten Tapanuli
Tengah mengunakan Algoritma
Generate and Test dengan
Algoritma Hill Climbing
Metode secara manual tidak
efisien sehingga digunakan
deterministik atau heuristik
Method
Gambar 3.1 Diagram Ishikawa (Fishbone) untuk Analisis Permasalahan Sistem
Pada gambar 3.1 permasalahan pada penelitian ini ditunjukan pada akhir garis
horizontal utama (head) dan penyebab dari permasalahan tersebut ditunjukan dari
garis-garis diagonal (bone). Bone dibagi menjadi empat aspek yang terdiri dari
pengguna, material, sistem dan metode. Pengguna (Man) berkaitan dengan tindakan
ataupun upaya yang dilakukan pengguna untuk menjalankan sistem
dengan
memasukkan data berupa node dan edge kemudian memilih algoritma yang digunakan
untuk menentukan lintasan dalam penyelesaian Traveling Salesman Problem yang
ditampilkan dalam graph. Mesin ialah sistem itu sendiri dimana sistem akan
menerapkan metode dari Algoritma Generate and Test atau Algoritma Hill Climbing
untuk kemudian dibandingkan berdasarkan hasil dari kedua algoritma tersebut.
Material mencakup hal-hal yang dibutuhkan dalam membangun sistem dimana dalam
penelitian ini material yang digunakan adalah jarak. Metode merupakan cara yang
digunakan dalam memperoleh lintasan tercepat untuk Traveling Salesman Problem
dan metode yang digunakan yaitu Algoritma Generate and Test dan Hill Climbing.
Universitas Sumatera Utara
22
3.1.2 Analisis kebutuhan sistem
Analisis kebutuhan sistem dibagi menjadi dua bagian, yaitu kebutuhan fungsional dan
kebutuhan non-fungsional.
1.
Kebutuhan Fungsional
Analisis kebutuhan fungsional pada sistem ini menjabarkan mengenai tahap-tahap
atau fungsi-fungsi yang dapat dilakukan atau tersedia pada sistem. Fungsi-fungsi
tersebut yang akan bekerja untuk dapat menampilkan hasil penetuan dari algoritma
Generate and Test dan algoritma Hill Climbing dalam menentukan hasil dalam
penyelesaian Traveling Salesman Problem atau jarak terkecil yang paling optimal
dalam pengunjungan objek-objek wisata yang akan dikunjungi, serta membandingkan
hasil kerja dari kedua algoritma tersebut.
Beberapa kebutuhan fungsional yang terdapat pada sistem ini, antara lain:
a.
Sistem dibuat sesuai dengan representasi graf yang sebenarnya dati Peta
Kabupaten Tapanuli Tengah yang ditampilkan.
b.
Sistem dapat membaca data berupa simpul (vertex) dan sisi (edge) yang sudah
disimpan di dalam memori dalam bentuk matriks 2 dimensi.
c.
Sistem mampu menghitung dan menampilkan hasil pencarian optimum
menggunakan algoritma Generate and Test dan algoritma Hill Climbing yang
telah digunakan dalam sistem.
d.
Sistem mampu menghitung dan menentukan kecepatan waktu proses (running
time) dari masing-masing algoritma.
2.
Kebutuhan Non-Fungsional
Analisis kebutuhan non-fungsional pada sistem ini berupa kinerja atau performansi
dari sistem berdasarkan algoritma yang digunakan serta kemudahan pengunaanya.
Beberapa kebutuhan non-fungsional yang terdapat pada sistem ini, antara lain:
a.
Kinerja atau Performansi
Sistem atau perangkat lunak yang akan dibangun harus mampu menampilkan hasil
dari algoritma yang diterapkan di dalam sistem, yaitu algoritma Generate and Test dan
algoritma Hill Climbing.
b.
Mudah Digunakan
Sistem atau perangkat lunak yang akan dibangun harus mudah digunakan oleh user
dimana user dapat dengan mudah memilih algoritma mana yang digunakan dengan
Universitas Sumatera Utara
23
tampilan yang sederhana namun dapat dengan mudah dipahami.
c.
Hemat Biaya
Sistem atau perangkat lunak yang akan dibangun tidak membutuhkan perangkat
tambahan yang dapat mengeluarkan biaya tambahan.
d.
Manajemen Kualitas Sistem
Sistem atau perangkat lunak yang akan dibangun harus mempunyai kualitas yang baik
dan hasil yang tepat.
3.1.3 Analisis proses
Sistem dibangun menggunakan bahasa pemrograman Basic. Algoritma untuk
penyelesaian Traveling Salesman Problem yang digunakan untuk menentukan lintasan
tercepat dalam mengunjungi semua objek wisata terpilih adalah Generate and Test dan
Hill Climbing. Hasil yang diperoleh dari kedua algoritma tersebut akan dibandingkan
sehingga dapat diperoleh algoritma yang paling efisien tetapi memberikan hasil
optimum dalam waktu proses tercepat dalam menentukan jarak optimum.
Berdasarkan data yang ada, Kabupaten Tapanuli Tengah memiliki banyak objek
wisata, namun pada penelitian ini penulis hanya mengunakan 10 objek wisata yang
lebih dikenal warga setempat. Adapun daftar objek wisata yang akan diterapkan
sebagai verteks di dalam sistem ini dapat dilihat pada Tabel 3.1 berikut:
Tabel 3. 1 Daftar Objek Wisata Yang Dijadikan Sebagai Verteks
No.
Nama Objek Wisata
A.
Bandara F.L. Tobing
B.
Pantai Batu Gajah
C.
Pantai Pandan
D.
Air Terjun Sihobuk
E.
Patai Pandaratan
F.
Air Terjun Silaklak
G.
Pantai Binasi
H.
Makam Papan Tinggi
I.
Pantai Kahona
J.
Air Terjun Mursala
Pada penelitian ini, penulis membatasi jumlah simpul (vertex) sebanyak 10 simpul
yang akan diterapkan pada graf ini. Graf yang digunakan pada penelitian ini ialah graf
tidak berarah dan berbobot yang mengacu pada peta Kabupaten Tapanuli Tengah yang
dapat dilihat pada Gambar 3.2.
Universitas Sumatera Utara
24
Gambar 3.2 Peta Kabupaten Tapanuli Tengah
Dalam representasi graf, bobot dari setiap sisi (edge) yang menghubungkan setiap
simpul (vertex) adalah jarak dari antar objek wisata yang akan dijadikan sebagai
simpul. Graf akan digambarkan berdasarkan jarak tempuh dari setiap simpul ke
simpul tetangga yang saling terhubung. Data tersebut dikumpulkan dan disimpan
dalam data matriks 2 dimensi.
Pada penelitian ini nilai bobot dari setiap edge ditentukan berdasarkan jarak tempuh
dari objek wisata yang satu ke objek wisata lainnya berdasarkan perhitungan dari
google maps. Jarak tersebut merupakan jarak terkecil antar objek wisata tanpa melalui
objek wisata lainnya, dengan kata lain jarak tersebut merupakan jarak langsung antara
2 objek wisata yang saling berdekatan. Sehingga edge yang terbentuk pada penelitian
ini antara lain:
Universitas Sumatera Utara
25
1.
Edge AB
Bobot dari edge AB ialah 18,4 km yang diambil dari jarak antara objek wisata A ke
objek wisata B, dapat dilihat pada gambar 3.3.
Gambar 3.3 Jarak tempuh objek A ke objek B
2.
Edge AC
Bobot dari edge AC ialah 22 km yang diambil dari jarak antara objek wisata A ke
objek wisata C, dapat dilihat pada gambar 3.4.
Gambar 3.4 Jarak tempuh objek A ke objek C
Universitas Sumatera Utara
26
3.
Edge BC
Bobot dari edge BC ialah 4,9 km yang diambil dari jarak antara objek wisata B ke
objek wisata C, dapat dilihat pada gambar 3.5.
Gambar 3.5 Jarak tempuh objek B ke objek C
4.
Edge BH
Bobot dari edge BH ialah 43,27 km yang diambil dari jarak antara objek wisata B ke
objek wisata H melalui transportasi laut, dapat dilihat pada gambar 3.6.
Gambar 3.6 Jarak tempuh objek B ke objek H
5.
Edge CD
Bobot dari edge CD ialah 8,8 km yang diambil dari jarak antara objek wisata C ke
objek wisata D, dapat dilihat pada gambar 3.7.
Universitas Sumatera Utara
27
Gambar 3.7 Jarak tempuh objek C ke objek D
6.
Edge CE
Bobot dari edge CE ialah 6,9 km yang diambil dari jarak antara objek wisata C ke
objek wisata E, dapat dilihat pada gambar 3.8.
Gambar 3.8 Jarak tempuh objek C ke objek E
Universitas Sumatera Utara
28
7.
Edge CH
Bobot dari edge CH ialah 42,15 km yang diambil dari jarak antara objek wisata C ke
objek wisata H melalui transportasi laut, dapat dilihat pada gambar 3.9.
Gambar 3.9 Jarak tempuh objek C ke objek H
8.
Edge DE
Bobot dari edge DE ialah 7,1 km yang diambil dari jarak antara objek wisata D ke
objek wisata E, dapat dilihat pada gambar 3.10.
Gambar 3.10 Jarak tempuh objek D ke objek E
9.
Edge DF
Bobot dari edge DF ialah 22,3 km yang diambil dari jarak antara objek wisata D ke
objek wisata F, dapat dilihat pada gambar 3.11.
Universitas Sumatera Utara
29
Gambar 3.11 Jarak tempuh objek D ke objek F
10.
Edge DH
Bobot dari edge DH ialah 37,71 km yang diambil dari jarak antara objek wisata D ke
objek wisata H melalui transportasi laut, dapat dilihat pada gambar 3.12.
Gambar 3.12 Jarak tempuh objek D ke objek H
11.
Edge EF
Bobot dari edge EF ialah 24,2 km yang diambil dari jarak antara objek wisata E ke
objek wisata F, dapat dilihat pada gambar 3.13.
Universitas Sumatera Utara
30
Gambar 3.13 Jarak tempuh objek E ke objek F
12.
Edge FG
Bobot dari edge FG ialah 27 km yang diambil dari jarak antara objek wisata F ke
objek wisata G, dapat dilihat pada gambar 3.14.
Gambar 3.14 Jarak tempuh objek F ke objek G
13.
Edge GH
Bobot dari edge GH ialah 25,43 km yang diambil dari jarak antara objek wisata G ke
objek wisata H melalui transportasi laut, dapat dilihat pada gambar 3.15.
Universitas Sumatera Utara
31
Gambar 3.15 Jarak tempuh objek G ke objek H
14.
Edge GJ
Bobot dari edge GJ ialah 24,3 km yang diambil dari jarak antara objek wisata G ke
objek wisata J, dapat dilihat pada gambar 3.16.
Gambar 3.16 Jarak tempuh objek G ke objek J
Universitas Sumatera Utara
32
15.
Edge HI
Bobot dari edge HI ialah 40,81 km yang diambil dari jarak antara objek wisata H ke
objek wisata I melalui transportasi laut, dapat dilihat pada gambar 3.17.
Gambar 3.17 Jarak tempuh objek I ke objek H
16.
Edge IJ
Bobot dari edge IJ ialah 13,3 km yang diambil dari jarak antara objek wisata I ke
objek wisata J, dapat dilihat pada gambar 3.18.
Gambar 3.18 Jarak tempuh objek I ke objek J
Universitas Sumatera Utara
33
Setelah keseluruhan bobot telah didapatkan maka graf tidak berarah dan berbobot
dapat dilihat pada gambar 3.19.
Gambar 3.19 Graf tidak berarah Kabupaten Tapanuli Tengah
3.2
Pemodelan Sistem
Pemodelan sistem pada penelitian ini menggunakan Unified Modelling Language
(UML) sebagai bahasa spesifikasi standar suatu model yang berfungsi untuk
membantu merancang sistem dengan tujuan untuk menggambarkan peran pengguna
terhadap sistem yang dibuat. Sistem ini dirancang dengan menggunakan use case
diagram, activity diagram, dan sequence diagram, serta flowchart.
3.2.1 Use Case Diagram
Use case diagram merupakan suatu teknik pemodelan yang digunakan untuk
menggambarkan kegiatan atau interaksi yang terjadi antara sistem, pengguna, dan
eksternal sistem. (Whitten, et al. 2004)
Universitas Sumatera Utara
34
Use case diagram digunakan untuk mengetahui kebutuhan sistem dari sudut pandang
user (pengguna) dan merepresentasikan interaksi antara user tersebut dengan sistem.
Use case diagram dari sistem pada penelitian ini dapat dilihat pada Gambar 3.20.
Sistem
Buat Jalur
Generate & Test
Bobot Graf
Implementasi
Buat Jalur
Hill Climbing
Algoritma
Bobot Graf
Pengguna
Running Time
Perbandingan
Total Bobot Lintasan
Gambar 3.20 Use Case Diagram Sistem
3.2.2 Activity Diagram
Activity Diagram merupakan diagram aktivitas yang menggambarkan langkah demi
langkah proses atau aktivitas dari suatu sistem. Activity diagram menampilkan
aktivitas sistem yang berjalan secara bersamaan. (Whitten, et al. 2004). Activity
diagram dari sistem yang akan dibangun dapat dilihat pada Gambar 3.21.
Universitas Sumatera Utara
35
User
Sistem
Tentukan Verteks –
verteks yang akan
dikunjungi
Tentukan nilai setiap
Edge
Pilih Menu
“Proses”
Menampilkan graf berupa
vertex dan weighted edge
Pilih Algoritma
“Generate and Test”
Tampilkan Total Jarak Tempuh
dan Running Time Algoritma
Generate and Test
Pilih Algoritma
“Hill Climbing”
Tampilkan Total Jarak Tempuh
dan Running Time Algoritma
Hill Climbing
Gambar 3.21 Activity Diagram Sistem
Gambar 3.21 menjelaskan activity diagram dari sistem. Sistem bekerja dimulai dari
tindakan user dengan menentukan objek-objek wisata yang akan dikunjungi dalam
data berupa vertex dan menetukan edge beserta dengan bobot yang sudah disimpan
dalam sebuah data matriks. Sistem kemudian menampilkan graf yang sudah disimpan
oleh user. Kemudian user melakukan proses analisis dan perhitungan terhadap jarak
(bobot) pada setiap sisi (edge) yang saling terhubung pada setiap simpul (vertex)
menggunakan algoritma Generate and Test dan algoritma Hill Climbing kemudian
menampilkan graf total jarak tempuh dan waktu proses (running time)-nya.
Universitas Sumatera Utara
36
3.2.3 Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek juga dapat mengindikasikan
komunikasi antar objek yang berhubungan. Sequence diagram pencarian lintasan
tercepat sistem ini dapat dilihat pada gambar 3.22.
Form Penentuan
Lintasan Terpendek
User
Algoritma Generate
and Test
Algoritma Hill
Climbing
Tentukan Verteks-verteks
Tujuan dan Edge
Menampilkan
Graf Berbobot
Pilih Algoritma Generate and Test
Menampilkan Total Lintasan dan Running Time
Algoritma Generate and Test
Pilih Algoritma Hill Climbing
Menampilkan Total Lintasan dan Running Time Algoritma Hill Climbing
Gambar 3.22 Sequence Diagram Sistem
3.2.4 Flowchart
Flowchart atau yang disebut juga diagram alir merupakan suatu pemodelan dari
langkah-langkah logis yang dibutuhkan untuk memecahkan suatu masalah. (Farrell,
2013). Flowchart dari algoritma Generate and Test ditunjukkan pada Gambar 3.23
dan flowchart dari algoritma Hill Climbing ditunjukkan oleh Gambar 3.24.
Universitas Sumatera Utara
37
Mulai
Tentukan titik dan
jarak antar titik
Tentukan lintasan awal
dan nilainya
Lintasan_Terpilih = Lintasan_Baru
Semua kemungkinan lintasan
sudah dibangkitkan
Lintasan_terpilih = Lintasan_Awal
Nilai Lintasan_terpilih = Nilai Lintasan_awal
Bangkitkan Lintasan_Baru
dan hitung nilainya
Tidak
Tidak
Ya
Ya
Lintasan_Terpilih
Nilai Lintasan_Baru