• Tidak ada hasil yang ditemukan

Implementasi Metode Generate And Test Pada Pemilihan Angkutan Umum Bertrayek Dengan Jarak Terpendek

N/A
N/A
Protected

Academic year: 2016

Membagikan "Implementasi Metode Generate And Test Pada Pemilihan Angkutan Umum Bertrayek Dengan Jarak Terpendek"

Copied!
71
0
0

Teks penuh

(1)

IMPLEMENTASI METODE GENERATE AND TEST PADA PEMILIHAN ANGKUTAN UMUM BERTRAYEK DENGAN JARAK TERPENDEK

SKRIPSI

MARTHIN FEBRIANTO PAKPAHAN

081401057

PROGRAM STUDI S-1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

(2)

IMPLEMENTASI METODE GENERATE AND TEST PADA PEMILIHAN ANGKUTAN UMUM BERTRAYEK DENGAN JARAK TERPENDEK

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer

MARTHIN FEBRIANTO PAKPAHAN 081401057

PROGRAM STUDI S-1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : IMPLEMENTASI METODE GENERATE AND TEST PADA

PEMILIHAN ANGKUTAN UMUM BERTRAYEK

DENGAN JARAK TERPENDEK

Kategori : SEMINAR HASIL

Nama : MARTHIN FEBRIANTO PAKPAHAN

Nomor Induk Mahasiswa : 081401057

Program Studi : SARJANA (S1) ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

Komisi Pembimbing :

Pembimbing II Pembimbing I,

Dr. Syahriol Sitorus, S.Si, MIT Ade Candra, ST,M.Kom

NIP. 197909042009121002 NIP: 19710310 199602 1 001

Diketahui/disetujui oleh

Program Studi S1 IlmuKomputer Ketua,

(4)

PERNYATAAN

IMPLEMENTASI METODE GENERATE AND TEST PADA PEMILIHAN ANGKUTAN

UMUM BERTRAYEK DENGAN JARAK TERPENDEK

SKRIPSI

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

Medan, 16 April 2015

(5)

PENGHARGAAN

Puji dan syukur kehadirat Tuhan Yang Maha Esa karena atas segala rahmat dan karunia-Nya penulis dapat menyelesaikan skripsi ini dalam waktu yang telah ditetapkan sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer, Program Studi Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

Pada kesempatan ini, penulis menyampaikan ucapan terima kasih kepada:

1. Bapak Dr. Poltak Sihombing, M.Kom sebagai Ketua Program Studi S1 Ilmu Komputer.

2. Bapak Bapak Ade Chandra, ST, M.Kom dan Bapak Dr. Syahriol Sitorus, S.Si, MIT

selaku pembimbing yang telah meluangkan waktu, tenaga, dan pikiran serta dalam membimbing, mengarahkan, menasehati, memotivasi, dan menyemangati penulis agar dapat menyelesaikan skripsi ini.

3. Ibu Dian Rachmawati, S.Si, M.Kom dan Bapak Drs. Agus Salim Harahap, M.Si sebagai dosen penguji yang telah memberikan kritik dan saran yang berguna bagi penulis.

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

5. Dekan, Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi, dan pegawai di S1 Ilmu Komputer USU.

6. Orang tua yang paling saya sayangi,ibunda Bintang R Silaen dan ayahanda dr. Rudolf H Pakpahan Sp.Rad yang telah mendukung penulis dengan penuh kasih sayang dan kesabaran yang tak terhingga, juga kepada kakak dan adik kesayangan penulis Deborah A Pakpahan, Andre H Pakpahan S.E dan Antonius H Pakpahan yang selalu menyayangi penulis sampai saat ini.

7. Tante dan Uda saya selaku orang tua angkat penulis M Silaen dan R Siahaan, S.E yang telah memberikan banyak bantuan, nasehat dan dukungan selama penulis menyelesaikan studi S1, juga kepada Morna G Siahaan, Dolly M Siahaan,Yusuf M Silaen, Grace Sibarani yang telah memberikan motivasi dan dukungan kepada penulis.

8. Terkhusus kepada Adek Sari R Siregar yang selalu setia mendampingi dan memberikan semangat kepada penulis.

(6)

10. Teman-teman dari Barisan Solid Scorpio yang telah memberikan saya motivasi dan dukungan

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

Penulis menyadari bahwa skripsi ini masih banyak kekurangan. Oleh karena itu penulis menerima kritik dan saran yang bersifat membangun demi kesempurnaan skripsi ini. Semoga skripsi ini dapat bermanfaat bagi penulis dan pembaca, khususnya rekan-rekan mahasiswa lainnya yang mengikuti perkuliahan di Universitas Sumatera Utara (USU) Medan.

Penulis,

(7)

ABSTRAK

Kota Medan merupakan kota metropolitan terbesar di luar Pulau Jawa dan kota terbesar ketiga di Indonesia setelah Jakarta dan Surabaya yang memiliki rute yang luas antara satu lokasi dengan lokasi lainnya. Kurangnya informasi sering menyulitkan dalam mencari rute dan nomor trayek angkutan umum yang paling optimum untuk menempuh perjalanan dari suatu lokasi ke lokasi lain, karena banyaknya nomor angkutan umum dan rute yang ada, sehingga menyebabkan banyaknya pilihan jalur yang dapat ditempuh. Dengan hanya melihat pada peta dan bertanya kepada orang lain, seseorang akan membutuhkan waktu yang lama dalam menentukan jenis angkutan umum dan nomor trayek angkutan umum yang memiliki jarak terpendek menuju lokasi tujuan dan terkadang informasi yang di dapat kurang tepat. Pada penelitian ini dibuat sistem untuk mencari jarak terpendek antar lokasi dengan menggunakan metode Generate and Test. Cara kerja metode Generate and Test merupakan penggabungan antara Depth - First Search dengan backtracking, di mana solusi harus dibangkitkan secara lengkap sebelum dilakukan test dan juga disebut prosedur backtracking

karena ketika tidak ada lagi simpul yang bisa dibangkitkan pada satu lintasan dan solusi juga belum ditemukan maka dilakukan backtracking terhadap simpul terdekatnya. Sistem dibuat menggunakan bahasa pemrograman Microsoft Visual Basic Net 10. Hasil dari sistem ini adalah berupa list rute angkutan umum, nomor trayek angkutan umum, jenis angkutan umum yang memiliki jarak terpendek dengan total jarak yang ditempuh.

(8)

IMPLEMENTATION OF GENERATE AND TEST METHOD AT THE ELECTION OF PUBLIC TRANSPORT NUMBERED WITH SHORTEST DISTANCE

ABSTRACT

Medan City is the largest metropolitan city outside Java and the third largest city in Indonesia after Jakarta and Surabaya, which has a broad route between one location to another. The lack of information is often difficult to find the route and the number of public transport most optimum to travel from one location to another, because many numbers of the public

transport routes and the routes that exist, resulting in a rich assortment of lines that can be taken. By just looking at the map and ask others, someone will take a long time to determine the type of public transportation and the number of public transport that has the shortest distance to the destination location, and sometimes the information that can be less precise. In this study, the system to find the shortest distance between locations by using the Generate and Test Method. Way of Generate and Test method is a merger between the Depth - First Search with backtracking, in which a solution must be raised in full prior to the test and also called backtracking procedure because when there are no more nodes that can be raised on the track and then the solution has not been found to be backtracking to the nearest node. The system is built using Microsoft Visual Basic .Net 10. The result of this system is a form of public transportation route list, the number of public transport, the type of public transport that has the shortest distance to the total distance traveled.

(9)

DAFTAR ISI

1.1 Latar Belakang Masalah 1

1.2 Rumusan Masalah 2 2.2.2 Pencarian Buta (Blind Search/Un-informed Search) 12

2.2.1.1 Breadth First Search (BFS) 12

2.2.1.2 Depth First Search (DFS) 13

2.2.3 Backtracking 15

2.3 Lintasan Terpendek (Shortest Path) 16

2.4 Pengertian Database 16

2.6.4 Analisis Persyaratan dengan UML 22

2.6.5 Desain dengan UML 23

BAB 3 ANALISIS DAN PERANCANGAN

(10)

3.1.1 Analisis Masalah (Problem Analisis) 24

3.2 Analisis Persyaratan (Requirement Analysis) 25

3.2.1 Persyaratan Fungsional 25

3.3.2.1 Activity DiagramGenerate and Test 28

3.3.3 Sequence Diagram 29

4.1.1.3 Tampilan Hasil Jarak Terdekat 40

4.1.1.4 Tampilan View Map 41

4.2.1 Pengujian Jarak Terdekat 44

(11)

DAFTAR TABEL

Halaman

2.1 Isi Stack dalam DFS ( Depth First Search ) 14

2.2 Simbol-simbol Flowchart Program 18

3.1 Tabel UUser 31

3.2 Tabel Rute 31

(12)

DAFTAR GAMBAR

3.4 Sequence Diagram Generate and Test 29

3.5 FlowchartGenerate and Test 30

3.6 Database Relasi 32

3.7 Perancangan Menu Utama 33

3.8 Perancangan Login 33

3.9 Perancangan Pencarian Jarak Terpendek 34

3.10 Perancangan Data User 35

3.11 Perancangan Edit Rute 35

3.12 Perancangan Edit Jarak dan Nomor Trayek 36

3.13 Perancangan About 37

4.1 Tampilan Menu Utama 39

4.9 Tampilan Pengujian Jarak TerpendekUSU-Cambridge 44

4.10 Tampilan Pengujian Jarak TerpendekUSU-Gramedia 45

4.11 Tampilan Pengujian Jarak Terpendek USU-Grand Aston 45

4.12 Tampilan Pengujian Jarak TerpendekUSU-Hermes 46

4.13 Tampilan Pengujian Jarak Terpendek USU-Millenium 46

(13)

4.15 Peta Cambridge-Grand Aston 47

4.16 Graph Cambridge-Grand Aston 48

4.17 Pohon Pencarian Cambridge-Grand Aston 49

(14)

ABSTRAK

Kota Medan merupakan kota metropolitan terbesar di luar Pulau Jawa dan kota terbesar ketiga di Indonesia setelah Jakarta dan Surabaya yang memiliki rute yang luas antara satu lokasi dengan lokasi lainnya. Kurangnya informasi sering menyulitkan dalam mencari rute dan nomor trayek angkutan umum yang paling optimum untuk menempuh perjalanan dari suatu lokasi ke lokasi lain, karena banyaknya nomor angkutan umum dan rute yang ada, sehingga menyebabkan banyaknya pilihan jalur yang dapat ditempuh. Dengan hanya melihat pada peta dan bertanya kepada orang lain, seseorang akan membutuhkan waktu yang lama dalam menentukan jenis angkutan umum dan nomor trayek angkutan umum yang memiliki jarak terpendek menuju lokasi tujuan dan terkadang informasi yang di dapat kurang tepat. Pada penelitian ini dibuat sistem untuk mencari jarak terpendek antar lokasi dengan menggunakan metode Generate and Test. Cara kerja metode Generate and Test merupakan penggabungan antara Depth - First Search dengan backtracking, di mana solusi harus dibangkitkan secara lengkap sebelum dilakukan test dan juga disebut prosedur backtracking

karena ketika tidak ada lagi simpul yang bisa dibangkitkan pada satu lintasan dan solusi juga belum ditemukan maka dilakukan backtracking terhadap simpul terdekatnya. Sistem dibuat menggunakan bahasa pemrograman Microsoft Visual Basic Net 10. Hasil dari sistem ini adalah berupa list rute angkutan umum, nomor trayek angkutan umum, jenis angkutan umum yang memiliki jarak terpendek dengan total jarak yang ditempuh.

(15)

IMPLEMENTATION OF GENERATE AND TEST METHOD AT THE ELECTION OF PUBLIC TRANSPORT NUMBERED WITH SHORTEST DISTANCE

ABSTRACT

Medan City is the largest metropolitan city outside Java and the third largest city in Indonesia after Jakarta and Surabaya, which has a broad route between one location to another. The lack of information is often difficult to find the route and the number of public transport most optimum to travel from one location to another, because many numbers of the public

transport routes and the routes that exist, resulting in a rich assortment of lines that can be taken. By just looking at the map and ask others, someone will take a long time to determine the type of public transportation and the number of public transport that has the shortest distance to the destination location, and sometimes the information that can be less precise. In this study, the system to find the shortest distance between locations by using the Generate and Test Method. Way of Generate and Test method is a merger between the Depth - First Search with backtracking, in which a solution must be raised in full prior to the test and also called backtracking procedure because when there are no more nodes that can be raised on the track and then the solution has not been found to be backtracking to the nearest node. The system is built using Microsoft Visual Basic .Net 10. The result of this system is a form of public transportation route list, the number of public transport, the type of public transport that has the shortest distance to the total distance traveled.

(16)

BAB 1 PENDAHULUAN

1.1Latar Belakang

Dalam kehidupan ini selalu dilakukan perjalanan dari suatu titik atau lokasi ke lokasi lain dengan mempertimbangkan waktu dan biaya. Dalam hal ini diperlukan ketepatan dalam menentukan jalur terpendek antara suatu titik atau lokasi yang diinginkan. Hasil pencarian jarak terpendek nantinya akan menjadi informasi yang dibutuhkan orang pada saat ini.

Salah satu informasi yang biasa dicari oleh orang yang akan mengunjungi suatu tempat di sebuah kota besar adalah sarana transportasi yang dapat digunakan untuk mencapai tempat tersebut. Sering terdapat kesulitan dalam mencari angkutan umum bertrayek dengan rute yang paling optimum untuk menempuh perjalanan dari suatu tempat ke tempat lain, karena banyaknya angkutan umum bertrayek yang ada. Oleh karena itu diperlukan suatu informasi komputerisasi yang dapat membantu dalam pencarian tersebut.

Metode Generate and Test merupakan penggabungan antara depth-first search

dengan pelacakan mundur (backtracking), yaitu bergerak ke belakang menuju pada suatu keadaan awal. Metode ini perlu membangkitkan semua kemungkinan sebelum dilakukan pengujian dan membutuhkan waktu yang cukup lama dalam pencariannya.

Mencermati hal diatas penulis ingin melakukan penelitian yang berjudul

IMPLEMENTASI METODE GENERATE AND TEST PADA PEMILIHAN

ANGKUTAN UMUM BERTRAYEK DENGAN JARAK TERPENDEK. Penulis akan membahas pemilihan angkutan umum bertrayek dengan rute terpendek menggunakan metode

(17)

1.2Rumusan Masalah

Berdasarkan latar belakang, maka yang menjadi rumusan masalah pada penelitian ini adalah bagaimana mengimplementasikan metode Generate and Test pada teknik pencarian jarak terdekat untuk menentukan nomor dan jenis angkutan umum bertrayek terdekat dari lokasi awal menuju lokasi tujuan.

1.3Batasan Masalah

Batasan masalah yang menjadi acuan dalam pengerjaan skripsi ini adalah sebagai berikut:

1. Metode yang digunakan dalam teknik pencarian jarak terpendek adalah Generate and Test.

2. Sistem yang dibangun berbasis desktop.

3. Sisi merupakan representasi jarak. 4. Rute berorientasi dua arah.

5. Menggunakan bahasa pemograman Visual Basic.Net 2010 6. Simpul adalah representasi gedung atau tempat umum.

7. Simpul dibatasi pada 10 lokasi yaitu Sun Plaza (jl. Zainul Arifin), USU (jl. Dr.Mansyur), Grand Aston (jl. Balai Kota), Plaza Millenium (jl. Kapt. Muslim), Hermes Palace (jl. Mongonsidi), Pajak USU (jl. Jamin Ginting), RSU. Pringadi (jl. Prof. H.M Yamin), Swiss Bell (jl. S.Parman), Gramedia (jl. Gajah Mada), Restaurant TipTop (jl. Ahmad Yani) karena keterbatasan waktu dan data yang dimiliki.

8. Hasil pencarian berupa keterangan rute yang dilalui, total jarak terpendek, nomor trayek serta jenis angkutan umum dan tidak disertai dengan peta.

1.4Tujuan Penelitian

(18)

1.5Manfaat Penelitian

Dari penelitian ini diharapkan masyarakat mendapatkan sebuah sistem yang mampu menemukan jarak terpendek, rute alternatif (jika ada), nomor dan jenis trayek angkutan umum yang digunakan, analisis perhitungan setiap rute yang dilewati serta keterangan rute yang dilalui untuk mencapai tempat tujuan.

1.6Metodologi Penelitian

Dalam penelitian ini, tahapan-tahapan yang akan dilalui adalah sebagai berikut: 1. Studi Literatur

Tahap ini dilaksanakan studi literatur dengan mempelajari tentang metode pencarian,

shortest path, metode Generate and Test serta bahasa pemograman Visual Basic.Net 2010.

2. Analisis dan Perancangan Perangkat Lunak

Pada tahap ini digunakan untuk mengolah data peta Sumatera dan kemudian melakukan analisis terhadap hasil studi literatur yang diperoleh sehingga menjadi suatu informasi untuk digunakan dalam merancang perangkat lunak yang akan dihasilkan. Dalam tahapan ini juga dilakukan perancangan UML (Unified Modeling Language), flow chart, database, antarmuka (user interface) sistem serta proses kerja sistem untuk memudahkan dalam proses implementasi berikutnya.

3. Implementasi dan Pengujian Sistem

Pada tahap ini dilakukan pemasukan data lokasi, jarak antar lokasi, rute perjalanan serta keterangan rute dan mengolah data tersebut untuk mendapatkan rute yang optimal.

4. Dokumentasi

(19)

1.7Sistematika Penulisan

Dalam penulisan skripsi ini penulis membuat sistematika sebagai berikut:

BAB 1 PENDAHULUAN membahas Latar Belakang, Perumusan Masalah, Batasan Masalah, Tujuan penelitian, Manfaat Penelitian, Metode Penelitian yang dilakukan serta Sistematika penulisan.

BAB 2 LANDASAN TEORI membahas tentang graf, metode pencarian, shortest path,metode Generate and Test,UML(Unified Modeling Language),database dan flowchart.

BAB 3 ANALISIS DAN PERANCANGAN SISTEM membahas mengenai cara kerja metode Generate and Test dalam mencari jarak tedekat, pemodelan sistem dengan UML, flow chart sistem,database dan perancangan antar muka pengguna.

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM membahas tentang implementasi dan pengujian sistem.

(20)

BAB 2

LANDASAN TEORI

2.1Graph

Graf digunakan untuk merepresentasikan objek diskrit dan hubungan antara objek-objek tersebut. Gambar 2.1 merupakan sebuah graf yang menyatakan peta jaringan jalan raya yang menghubungkan sejumlah kota di Provinsi Jawa Tengah (Rinaldi Munir : 2007).

Gambar 2.1 Jaringan jalan raya di Provinsi Jawa Tengah

Sesungguhnya peta tersebut adalah sebuah graf, yang dalam hal ini kota dinyatakan sebagai bulatan (simpul) sedangkan jalan dinyatakan sabagai garis (sisi). Dengan diberikannya peta tersebut, kita dapat mengetahui apakah ada lintasan jalan antara dua buah kota.

2.1.1 Definisi Graph

(21)

2.1.2 Jenis-jenis Graph

Pengelompokan graf dapat dipandang berdasarkan ada tidaknya sisi ganda, berdasarkan jumlah simpul atau berdasarkan orientasi arah pada sisi. Berdasarkan ada tidaknya gelang atau sisi ganda pada suatu graf, maka graf digolongkan menjadi dua jenis yaitu (Rinaldi Munir : 2007) :

1. Graf sederhana (simple graph).

Merupakan graf yang tidak mengandung gelang maupun sisi – ganda. Pada graf sederhana, sisi adalah pasangan tak-terurut ( unordered pairs ). Jadi, menuliskan sisi (u,v)

sama saja dengan (v,u)

Gambar 2.2 Graf sederhana

Gambar 2.2 adalah graf dengan himpunan simpul V dan himpunan sisi E adalah V = { 1,2,3,4 } dan E = { (1,2), (1,3), (2,3), (2,4), (3,4) }.

2. Graf tak - sederhana (unsimple-graph).

(22)

Gambar 2.3 Graf ganda

Gambar 2.3 merupakan graf ganda dengan V = { 1, 2, 3, 4 }, E = { (1, 2), (2, 3), (1, 3), (1, 3), (2, 4), (3, 4), (3, 4) } = { e1, e2, e3, e4, e5, e6, e7}. Sisi e3 = (1, 3) dan sisi e4 = (1, 3) dinamakan sisi-ganda (multiple edges atau pararel edges) karena kedua sisi ini menghubungkan dua buah simpul yang sama, yaitu simpul 1 dan simpul 3.

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.

Gambar 2.4 Graf semu

Gambar 2.4 adalah graf dengan V = { 1, 2, 3, 4 } E = { (1, 2), (2, 3), (1, 3), (1, 3), (2, 4), (3, 4), (3, 4), (3, 3) } = { e1, e2, e3, e4, e5, e6, e7, e8}. Pada sisi e8 = (3, 3) dinamakan gelang

(loop) karena berawal dan berakhir pada simpul yang sama.

Berdasarkan jumlah simpul pada suatu graf, maka secara umum graf dapat digolongkan menjadi dua jenis:

1. Graf berhingga (limited graph).

Graf berhingga adalah graf yang jumlah simpulnya berhingga. 2. Graf tak-berhingga (unlimited graph)

(23)

Merupakan graf yang sisinya tidak mempunyai orientasi arah. Urutan pasangan simpul yang dihubungkan oleh sisi tidak diperhatikan. Jadi, (u , v) = (v , u) adalah sisi yang sama.

2. Graf berarah(directed graph atau digraph).

Graf yang setiap sisinya diberikan orientasi arah disebut sebagai graf berarah. Pada graf berarah, (u , v) dan (v , u) menyatakan dua buah busur yang berbeda, dengan kata lain (u , v) ≠ (v , u). Simpul (u) dinamakan simpul asal dan simpul (v) dinamakan simpul terminal. Pada graf berarah, gelang diperbolehkan, tetapi sisi ganda tidak.

Gambar 2.5 Graf berarah

Definisi graf dapat diperluas sehingga mencakup graf-ganda berarah (directed multigraph). Pada graf-ganda berarah, gelang dan sisi ganda diperbolehkan ada.

Gambar 2.6 Graf-ganda berarah

2.2Metode Pencarian

(24)

buta/tanpa informasi (blind atau un-informed search) dan pencarian heuristik/dengan informasi (heuristic atau informed search) (Dewi Yusra Aini : 2010).

2.2.1 Pencarian Heuristik

Heuristik adalah teknik yang digunakan untuk meningkatkan efisiensi dari proses pencarian. Teknik ini baik diterapkan dalam tujuan yang umum, tapi tidak untuk tujuan yang khusus.Heuristik yang baik, dapat memecahkan permasalahan yang berat, seperti pada masalah perjalanan salesman. Sebuah fungsi heuristik mengevaluasi keadaan permasalahan tersendiri dan menentukan bagaimana diperlukan fungsi ini dalam memecahkan suatu permasalahan. Sebuah fungsi heuristik adalah sebuah fungsi yang memetakan keadaan permasalaan, yang mendeskripsikan daya tarik dan digambarkan dalam sebuah angka (Andri Kristanto : 2004).

Beberapa metode pencarian yang menggunakan fungsi heuristik dalam mencari solusi, yaitu Generate and test, Hill climbing, dan Best First Search (greedy best first search dan A*) (Dewi Yusra Aini : 2010).

2.2.1.1Generate and Test (Bangkitkan dan Uji)

Generate and Test merupakan penggabungan antara Depth - First Search dengan

backtracking. Metode ini hanya melibatkan setiap node dalam ruang pencarian dan pengujian untuk melihat apakah itu simpul tujuan atau bukan. Jika ya, pencarian telah berhasil dan tidak

perlu dilanjutkan, jika tidak pindah ke node berikutnya.

Metode ini merupakan bentuk sederhana dari brute force search (pencarian lengkap), disebut demikian karena pecarian dilakukan dengan cara hanya melintasi pohon pencarian dan bagaimana mengidentifikasi node awal dan node tujuan, dan pada akhirnya akan memeriksa setiap node di pohon sampai menemukan tujuan (Coppin Ben : 2004 ).

(25)

karena ketika tidak ada lagi simpul yang bisa dibangkitkan pada satu lintasan maka dilakukan

backtracking terhadap simpul terdekatnya.

Generate and Test memiliki tiga sifat :

1. Bangkitkan suatu solusi yang mungkin. Untuk beberapa permasalahan, pembangkitan ini berarti membangkitkan suatu simpul tertentu atau lintasan tertentu dari keadaan awal.

2. Uji untuk melihat apakah simpul tersebut benar-benar merupakan solusinya dengan cara membandingkan simpul yang dipilih atau simpul akhir suatu lintasan yang dipilih dengan kumpulan tujuan yang dapat diterima atau diharapkan.

3. Jika solusi telah diperoleh maka keluar. Jika tidak maka ulangi kembali langkah pertama.

Generate and Test dapat diterapkan pada sejumlah masalah di mana orang memecahkan masalah ketika tidak ada informasi tambahan untuk mencapai solusi. Generate and test juga sering disebut sebagai teknik pencarian buta (Coppin Ben : 2004).

Contoh kasus penyelesaian dengan menggunakan Generate and Test yaitu seorang salesman ingin mengunjungi sejumlah n kota. Akan dicari rute terpendek di mana setiap kota hanya boleh dikunjungi tepat 1 kali dan jarak setiap kota sudah diketahui. Misalkan ada 4 kota dengan jarak antara setiap kota seperti terlihat pada gambar berikut:

(26)

Penyelesaian dengan menggunakan Generate and Test dilakukan dengan membangkitkan solusi-solusi yang mungkin dengan menyusun kota-kota dalam urutan abjad dan membuat pohon pencarian :

1. A-B-C-D 2. A-B-D-C 3. A-C-B-D

4. A-C-D-B , dan seterusnya.

Gambar 2.8 Pohon pencarian Generate and Test

Misalkan kita mulai dari node A. Kita pilih sebagai keadaan awal adalah lintasan ABCD dengan panjang lintasan = 18. Kemudian kita lakukan backtracking untuk mendapatkan lintasan ABDC dengan panjang lintasan = 19. Lintasan ini kita bandingkan dengan lintasan ABCD, ternyata ABDC > ABCD, sehingga lintasan terpilih adalah ABCD. Kita lakukan lagi backtracking untuk mendapatkan lintasan ACBD =16, ternyata ACBD < ABCD, maka lintasan terpilih sekarang adalah ACBD. Demikian seterusnya hingga ditemukan solusi yang sebenarnya.

2.2.2 Pencarian Buta (Blind Search/Un-informed Search)

Dikatakan pencarian buta, karena pada pencarian ini tidak ada informasi awal. Disini hanya akan dibahas dua metode pencarian, yaitu Breadth First Search dan Depth First Search

(27)

2.2.2.1 Breadth First Search (BFS)

Dalam hal ini, simpul – simpul yang terdekat dengan simpul awal ( start node ) akan dicari paling awal sehingga urutan pencarianya mempunyai sifat yang horizontal. Algoritma ini tidak akan terperangkap untuk menksplorasi sebuah jalan yang salah. Hal ini berlawanan dengan algoritma depth first search yang mungkin mengikuti jalan tunggal yaitu jalan yang salah dan waktu yang lama (Andri Kristanto : 2004).

Gambar 2.9 Tree untuk Breadth First Search

2.2.2.2Depth First Search (DFS)

Depth – First Search (DFS) menggunakan struktur data Stack untuk mengingat kemana seharusnya DFS pergi saat ia mencapai suatu simpul tertentu. DFS memiliki aturan tertentu, aturan untuk DFS adalah (Nugroho Adi. 2009).:

1. Jika mungkin, lakukan kunjungan pada simpul-simpul pendamping (adjacent vertex) yang belum pernah dikunjungi, tandai dan masukkan (push) ke Stack. Ketika tidak ada lagi simpul pendamping yang belum dikunjungi. Masuk ke aturan 2.

2. Jika saat melakukan aturan diatas mengalami kesulitan, keluarkan (popped off) simpul dari Stack maka akan sampai ke simpul di bawahnya. Jika simpul dibawahnya bukan simpul pendamping yang belum dikunjungi, keluarkan lagi. Demikian selanjutnya hingga tidak dapat melakukannya lagi dan masuk ke aturan 3.

S

B A

C F

H G

(28)

3. Jika tidak dapat lagi mengikuti aturan 1 dan aturan 2, berarti algoritma DFS telah selesai

Gambar 2.10 Lintasan Depth First Seacrh

(29)

Pop E A

Pop A -

FINISH

2.2.3 Backtracking

Backtracking adalah cara yang metodologis mencoba beberapa sekuens keputusan, sampai menemukan sekuens yang bekerja. Algoritma backtracking banyak diterapkan untuk program

games seperti permainan tic-tac-toe, menemukan jalan keluar dalam sebuah labirin, catur,

crossword puzzle, sudoku¸dan masalah – masalah pada bidang kecerdasan buatan (artificial intelligence).

Penyelesaian dengan backtracking :

1. Solusi dicari dengan membentuk lintasan dari akar ke daun. Aturan yang dipakai adalah mengikuti Depth - First Search. Simpul – simpul yang sudah dilahirkan dinamakan simpul hidup dan simpul hidup yang sedang diperluas dinamakan simpul-E. Simpul dinomori dari atas kebawah sesuai dengan kelahirannya.

2. Jika lintasan yang diperluas yang sedang dibentuk tidak mengarah ke solusi, maka simpul-E tersebut dibunuh sehingga menjadi simpul mati (dead node). Simpul yang sudah mati ini tidak akan diperluas lagi.

3. Jika pembentukan lintasan berakhir dengan simpul mati, maka proses pencarian diteruskan dengan membangkitkan simpul anak lainnya. Bila tidak ada lagi simpul anak yang dibangkitkan, maka pencarian solusi dilanjutkan dengan melakukan

backtracking ke simpul hidup terdekat. Selanjutnya simpul ini menjadi simpul-E yang terbaru.

(30)

2.3 Lintasan Terpendek (Shortest Path)

Lintasan terpendek (Shortest Path) merupakan lintasan minimum yang diperlukan untuk mencapai suatu titik dari titik tertentu. Dalam pencarian lintasan terpendek, masalah yang dihadapi adalah mancari lintasan mana yang akan dilalui, sehingga didapat lintasan yang paling pendek dari satu verteks ke verteks yang lain.

Ada beberapa macam persoalan lintasan terpendek, antara lain: 1. Lintasan terpendek antara dua buah verteks.

2. Lintasan terpendek antara semua pasangan verteks.

3. Lintasan terpendek dari verteks tertentu ke semua verteks yang lain

4. Lintasan terpendek antara dua buah verteks yang melalui beberapa verteks tertentu.

Pada persoalan lintasan terpendek, yang menjadi masalah adalah lintasan terpendek antara dua buah verteks, dimana bobot pada setiap edge graph digunakan untuk menyatakan jarak antar kota dalam satuan kilometer (km) (Dewi Yusra Aini : 2010).

2.4 Pengertian Database

Kumpulan file – file yang mempunyai kaitan antara satu file dengan file yang lain sehingga membentuk satu bangunan data untuk menginformasikan satu perusahaan, instansi dalam batasan terntentu. Bila terdapat file yang tidak dapat dipadukan atau diubungkan dengan file

yang lainnya berarti file tersebut bukanla kelompok dari satu database, ia akan dapat membentuk satu database sendiri (Ir. Harianto Kristanto).

Beberapa istilah yang digunakan dalam Sistem Basis Data (Database):

1. Entity : merupakan orang,tempat, kejadian tau konsep yang informasinya direkam. Pada bidang Administrasi Siswa misalnya, entity adalah siswa, buku, pembayaran, nilai test. Pada bidang kesehatan, entity adalah pasien,dokter,obat,kamar,diet.

(31)

nama orang tua, hobby. Atribute juga disebut sebagai data elemen, data field, data item.

3. Data value (nilai atau isi data) : merupakan data aktual atau informasi yang disimpan pada tiap data elemen atau atribute. Atribute nama karyawan menunjukan tempat dimana informasi nama karyawan disimpan, sedangkan data valuenya adalah Sutrisno, Budiman, merupakan isi data nama karyawan tersebut

4. Record / Tuple : merupakan kumpulan elemen - elemen yang saling berkaitan menginformasikan tentang suatu entity secara lengkap. Satu record mewakili satu data atau informasi tentang seseorang misalnya, nomor karyawan, nama karyawan, alamat, kota, tanggal masuk.

5. File : merupakan kumpulan record-record sejenis yang mempunyai panjang elemen yang sama, atribut yang sama, namun berbeda-beda data valuenya.

6. Database Management System (DBMS) : merupakan kumpulan file yang saling berkaitan bersama dengan program untuk pengelolaannya. Database adalah kumpulan datanya, sedang program pengelolaannya berdiri sendiri dalam satu paket program yang komersial untuk membaca data, mengisi data, menghapus data, melaporkan data dalam database.

2.5 Flow Chart

Flowchart adalah bagan yang menggambarkan urutan logika dari suatu prosedur pemecaan masalah. Simbol yang digunkan pada flowcart dapat dilihat pada tabel berikut (Heri Sismoro : 2005).

Tabel 2.2 Simbol-simbol Flowchart Program

Simbol Fungsi

Terminator

Menunjukkan awal dan akhir suatu proses.

Preparation

(32)

Processing

Menunjukan pengolahan aritmatika dan pemindahan data

Input/output

Menunjukan proses input dan output Decision

Mewakili operasi perbandingan logika

Predefined Process

Proses yang ditulis sebagai subprogram, yaitu prosedur / fungsi

2.6 UML (Unified Modeling Language)

Unified Modeling Language adalah sebuah bahasa graphis yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML merupakan dasar fundamental dari teknik analisis berorientasi objek, berbentuk diagram-diagram yang digunakan untuk menampilkan konstruksi dari sistem berorientasi objek, seperti cetak biru (blue print) suatu pembangunan gedung yang menggambarkan konstruksi bangunan tersebut (Mardiansyah Matondang : 2012).

2.6.1 Use-case Diagram

Use-case diagram menggambarkan secara graphis perilaku perangkat lunak. Diagram ini memberikan gambaran menurut perspektif pengguna perangkat lunak. Sebuah use-case

(33)

2.6.1.1Actor

Actor merupakan segala sesuatu yang perlu berinteraksi dengan sistem untuk pertukaran informasi. Actor memberikan suatu gambaran jelas tentang apa yang harus dilakukan perangkat lunak. Actor dinotasikan seperti pada Gambar 2.11.

Gambar 2.11Actor

2.6.1.2Use case

Use case merupakan hasil penyusunan kembali lingkup fungsionalitas sistem menjadi banyak pernyataaan fungsionalitas sistem yang lebih kecil. Sebuah use case merepresentasikan satu tujuan tunggal dari sistem dan menggambarkan satu rangkaian kegiatan dan interaksi pengguna untuk mencapai tujuan. Use case menggambarkan fungsi-fungsi sistem dari sudut pandang pengguna eksternal. Diagram ini juga dapat diartikan sebagai urutan transaksi berkaitan yang dilakukan satu actor dengan perangkat lunak.Use case dinotasikan seperti pada Gambar 2.12 berikut:

Gambar 2.12Use case

2.6.1.3 Interaksi Actor dengan Use-case

(34)

Gambar 2.13Use-case Diagram

2.6.2 Activity Diagram

Activity diagram memodelkan alur kerja (workflow) sebuah proses bisnis dan urutan aktifitas dalam suatu proses. Diagram ini sangat mirip dengan sebuah flowchart karena kita dapat memodelkan sebuah alur kerja dari satu aktifitas ke aktifitas lainnya atau dari satu aktifitas ke dalam keadaan sesaat (state).

Activity diagram menggambarkan aliran aktifitas dari sistem yang sedang dirancang, bagaimana masing-masing aliran berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Diagram ini juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Contoh activity diagram diperlihatkan pada Gambar 2.14.

Gambar 2.14Activity Diagram

Gambar 2.14 Activity Diagram

User Memilih tombol Menu Sistem Menampilkan sub Menu

User dapat memilih sub Menu

User Memilih sub Menu Peta

User dapat melihat peta

(35)

2.6.3Sequence Diagram

Sequence diagram menjelaskan interaksi objek yang disusun dalam suatu urutan waktu. Diagram ini memperlihatkan tahap demi tahap apa yang harus terjadi untuk menghasilkan sesuatu di dalam use-case. Sequence diagram secara khusus berinteraksi dengan use-case (Mardiansyah Matondang : 2012).

Masing-masing sequence diagram menggambarkan aliran pada suatu use case.

Sequence diagram dapat dibaca dengan melihat pada objek-objek dan pesan-pesan (message). Objek-objek yang berperan dalam aliran diperlihatkan pada kotak empat persegi panjang yang melintas pada bagian atas diagram. Setiap objek memiliki garis hidup (lifeline), yang digambarkan sebagai garis vertikal di bawah nama suatu objek.Notasi sequence diagram dijelaskan seperti Gambar 2.15.

Gambar 2.15Sequence Diagram

2.6.4 Analisis Persyaratan dengan UML

(36)

dilakukan untuk mendapatkan informasi atau persyaratan cukup untuk mempersiapkan model yang menggambarkan apa yang diperlukan dari perspektif pengguna (Mardiansyah Matondang : 2012).

Diagram yang digunakan dalam analisis persyaratan yaitu:

1. Use case diagram yang digunakan untuk menunjukkan fungsionalitas suatu sistem dan bagaimana sistem berinterakasi dengan dunia luar.

2. Activity diagram yang menunjukkan alur kerja (work flow) sebuah proses bisnis dan urutan aktivitas dalam suatu proses.

3. Class diagram yang membantu dalam visualisasi struktur sistem yang mendeskripsikan jenis-jenis objek dalam suatu sistem dan hubungan yang terdapat diantara objek tersebut.

4. Package diagram yang digunakan untuk mengelompokkan elemen-elemen model atau kelas.

2.6.5 Desain dengan UML

Saat membuat desain adalah saat untuk berpikir secara teknis dalam menggambarkan diagram-diagram UML. Diagram yang digunakan dalam mendesain sistem yaitu:

1. Class diagram dalam sudut pandang perangkat lunak, untuk menunjukkan class yang terdapat di dalam perangkat lunak dan bagaimana mereka saling berhubungan.

2. Sequence diagram untuk menjelaskan interaksi objek yang disusun dalam suatu urutan waktu.

3. Package diagram yang digunakan untuk mengelompokkan elemen-elemen model atau kelas.

(37)

BAB 3

ANALISIS DAN RANCANGAN

3.1Analisis

Pencarian rute terdekat dilakukan dengan menggunakan metode Generate and Test

melakukan pencarian jarak terpendek dengan cara mencari terlebih dahulu jarak terpendek antar lokasi. Pada penelitian ini penulis merancang pencarian rute terdekat angkutan umum bertrayek.

3.1.1 Analisis Masalah (Problem Analysis)

Untuk mengidentifikasi masalah digunakan diagram Ishikawa (fishbone diagram). Diagram

Ishikawa adalah sebuah alat grafis yang digunakan untuk mengidentifikasi, mengeksplorasi dan menggambarkan suatu masalah serta sebab dan akibat dari masalah tersebut. Diagram ini juga sering disebut sebagai diagram sebab-akibat atau diagram tulang ikan. Identifikasi terhadap permasalahan akan membantu analisis persyaratan sistem yang nantinya akan dikembangkan.

Masalah utama yang mendapat perhatian adalah mendapatkan nomor trayek angkutan umum dengan rute terdekat. Selanjutnya masalah ini diuraikan ke dalam beberapa kategori yaitu, kategori human (people), rute (method), jarak (material) dan angkutan umum (procedure).

l

Gambar 3.1 Diagram Ishikawa untuk Analisis Permasalahan Sistem

(38)

Pada diagram Ishikawa diatas masalah utama ditunjukkan oleh segi empat paling kanan (kepala ikan), sedangkan kategori ditunjukkan oleh segi empat yang dihubungkan oleh sebuah garis ke tulang utama (garis horizontal yang terhubung ke kepala ikan). Selanjutnya sebab akibat yang muncul ditunjukkan oleh tulang-tulang kecil yang diwakili oleh garis panah yang mengarah ke tulang-tulang kategori masalah.

3.2Analisis Persyaratan (Requirement Analysis)

Analisis persyaratan sebuah sistem dikelompokkan ke dalam dua bagian besar yaitu, analisis persyaratan fungsional dan analisis persyaratan non-fungsional.

3.2.1 Persyaratan Fungsional

Persyaratan fungsional yang harus dipenuhi oleh sistem adalah segala sesuatu yang harus dimiliki oleh sistem. Sistem harus menyediakan informasi tentang peta lokasi, nomor trayek angkutan umum, jarak antar lokasi serta keterangan dari rute.

3.2.2 Analisis Persyaratan Non-Fungsional

Persyaratan non-fungsional adalah persyaratan apa yang harus dilakukan sistem. Seringkali berupa batasan atau sesuatu yang menjadi perhatian stakeholder sebuah sistem. Beberapa persyaratan non-fungsional yang harus dipenuhi oleh sistem yang dirancang adalah sebagai berikut.

1. Sistem dapat menampilkan jarak setiap rute yang diproses.

2. Sistem yang dibangun harus sederhana agar mudah dipelajari dan digunakan.

(39)

3.3Perancangan Sistem

Perancangan sistem dilakukan untuk memperoleh gambaran yang lebih jelas tentang objek apa saja yang akan berinteraksi dengan sistem serta hal-hal apa saja yang harus dilakukan oleh sebuah sistem sehingga sistem dapat berfungsi dengan baik sesuai dengan fungsionalitasnya.

Perancangan fungsionalitas pemilihan jarak terpendek yang nantinya akan dikembangkan dimodelkan dengan diagram use-case. Actor yang nantinya akan berinteraksi dengan sistem adalah human. Human dikategori sebagai entitas yang memberi informasi rute-rute serta menerima hasil jarak terpendek.

Adapun metode pemilihan jarak terpendek menggunakan Generate and Test dengan langkah sebagai berikut:

1. Pilih lokasi asal. 2. Pilih lokasi tujuan. 3. Lakukan pencarian.

3.3.1 Use-Case Diagram

Use-case diagram merupakan diagram yang memodelkan perilaku dari sebuah sistem. Use-case diagram memiliki actoruse-case dan interaksi apa saja yang dilakukan actor tersebut.

3.3.1.1Use-Case Generate and Test

(40)

Gambar 3.2Use CaseGenerate and Test

Gambar 3.2 Usecase Generate and Test

Pada diagram Gambar 3.2 tersebut tampak bahwa seorang User (pengguna) hanya bekerja dengan mengakses use-case sistem pencarian jarak terpendek menggunakan metode

Generate And Test. Pengguna tidak perlu mengetahui secara jelas proses apa saja yang terjadi pada setiap tahap. Dengan demikian untuk memutuskan proses apa yang nantinya dilakukan pada setiap tahap adalah menjadi tanggung jawab sistem.

3.3.2 Activity Diagram

Activity diagram merupakan gambaran dari alur aktivitas sistem. Berikut ini activity diagram

untuk masing-masing use case yang terdapat dalam sistem ini.

3.3.2.1Activity Diagram untuk Use-CaseShortestpath

Activity diagram untuk use-caseGenerate and Test dapat dilihat seperti pada Gambar 3.3.

User

Generate and Test

Bangkitkan solusi dengan DFS

Backtracking

PENCARIAN JARAK TERPENDEK MENGGUNAKAN METODE GENERATE AND

TEST

extends

(41)

User Sistem

Gambar 3.3 Activity DiagramGenerate and Test

3.3.3 Sequence Diagram

Proses pencarian jarak terpendek menggunakan metode Generate and Test adalah dengan melakukan pembangkitan rute-rute dengan DFS (Depth First Search), Backtracking serta proses pencarian serta informasi hasil pencarian jarak terpendek yang dalam penelitian ini digambarkan sebagai sequence diagram seperti pada Gambar 3.4.

Input Lokasi Asal dan tujuan Membangkitkan semua solusi lintasan yang sesuai dengan

DFS

Perhitungan jarak berdasarkan urutan rute yang sesuai

Backtracking

(42)

Gambar 3.4 Sequence Diagram Generate and Test

3.4 Flowchart Sistem

Berdasarkan penjelasan sebelumnya, maka dapatlah digambarkan flowchart metode Generate and Test dalam mencari jarak terpendek dapat dilihat seperti pada Gambar 3.5.

GENERATE AND TEST

BANGKITKAN DFS

BACKTRACKING

Membangkitkan solusi dengan DFS

Melakukan Backtracking

Menampilkan hasil pencarian jarak terpendek

USER

(43)

Gambar 3.5Flowchart Sistem D= jarak

n = bilangan bulat (jumlah rute backtracking) (1,2,3 …) j = banyaknya rute

Yes No

Mulai

Input Lokasi Awal dan Tujuan

Tentukan Rute awal (n) dan jaraknya (D)

Lakukan backtracking Rute (n+1) dan Hitung Jarak

Tampilkan jarak terpendek

Selesai J=0 ?

Bangkitkan rute-rute yang memungkinkan (j)

(44)

3.5 Perancangan Database

Database pada aplikasi ini berfungsi untuk tempat penyimpanan data antara lain: 1. Tabel UUser

Tabel ini berfungsi sebagai sumber informasi tentang pengguna sistem. Struktur tabel UUser dapat dilihat pada Tabel 3.1.

Tabel ini berfungsi sebagai tempat penyimpanan informasi asal dan tujuan. Struktur tabel Rute dapat dilihat pada Tabel 3.2.

Tabel 3.2 Tabel Rute

Tabel ini berfungsi sebagai tempat penyimpanan informasi detail rute berupa rute, jarak serta nama dan nomor trayek angkutan umum. Struktur tabel DRute dapat dilihat pada Tabel 3.3.

(45)

3.5.1 Perancangan Relasi Antartabel

Perancangan relasi antartabel berfungsi untuk menampilkan informasi hubungan relasi ketergantungan (dependence) antar tabel pada database. Rancangan relasi antar tabel dapat dilihat seperti pada Gambar 3.6.

Gambar 3.6 Database Relasi

3.6 Perancangan Antarmuka Pengguna (UserInterface)

Dalam membangun sebuah sistem perlu adanya perancangan antarmuka (User Interface) yang nantinya sangat membantu memudahkan pengoperasian sistem. Dalam merancang antarmuka pengguna, ada beberapa syarat yang harus dipenuhi agar tercipta sebuah perangkat lunak yang mudah dan informatif untuk pengguna (user friendly).

3.6.1 Perancangan Menu Utama

Perancangan Menu Utama berfungsi untuk tempat menu keberadaan program-program pendukung sistem pencarian rute terdekat yang terdiri dari menu Login, Aplikasi Pencarian Jarak Terpendek, View Map, Edit Data User, Edit Data Rute, About dan Keluar. Perancangan Menu Utama menampilkan menu-menu sebagai berikut:

1. Login, berfungsi untuk melakukan pemasukan hak akses sebagai pengguna sistem. 2. Aplikasi Pencarian Jarak Terpendek, berfungsi untuk melakukan pencarian jarak terdekat

antara rute-rute.

(46)

5. Edit Data Rute,berfungsi untuk mengedit data rute dan jarak sistem. 6. About, berfungsi untuk menampilkan profile.

7. Keluar, berfungsi sebagai tombol untuk menutup menu utama.

Bentuk rancangan Menu Bar terlihat seperti pada Gambar 3.7 berikut:

Gambar 3.7 Rancangan Menu Utama

3.6.2 Perancangan Login

Perancangan Login berfungsi sebagai otorisasi hak akses dengan pemasukan AdminID (nama pengguna) serta Password. Bentuk perancangan Login dapat dilihat seperti pada Gambar 3.8 berikut.

Gambar 3.8 Rancangan Login

Edit Data User

Aplikasi Pencarian Jarak Terpendek

Keluar Login

View Map

ABOUT

xxxxxxxxx Admin ID

Password

OK Exit

(47)

3.6.3 Perancangan Pencarian

Perancangan Pencarian Jarak Terpendek berfungsi untuk pencarian rute terpendek dengan angkutan umum bertrayek. Perancangan Pencarian Jarak Terpendek dapat dilihat seperti pada Gambar 3.9.

Gambar 3.9 Perancangan Pencarian Jarak Terpendek

Perancangan pencarian jarak terpendek terdiri dari Tombol Cari berfungsi untuk melakukan pencarian rute terpendek dengan pemasukan lokasi asal dan tujuan yang ditampilkan berupa rute-rute lokasi yang dilalui beserta jarak dan dalam bentuk list. Tombol Batal berfungsi untuk membersihkan hasil pencarian rute terdekat serta Tombol Keluar untuk menutup tampilan halaman Pencarian Jarak Terpendek.

3.6.4 Perancangan Data User

Perancangan Data User adalah tampilan berfungsi untuk melakukan pemasukan data nama pengguna (UserId) dan Password. Pada rancangan ini terdapat enam tombol. Tombol Tambah berfungsi untuk menambah data User, Tombol Cari berfungsi untuk mencari user, Tombol Ubah berfungsi untuk melakukan perubahan data, Tombol Hapus berfungsi untuk menghapus data, Tombol Batal berfungsi untuk melakukan pembatalan dan Tombol Keluar

(48)

berfungsi untuk keluar dari halaman Data User dan kembali ke Menu Utama. Bentuk Perancangan Data User dapat dilihat pada Gambar 3.10

.

Gambar 3.10 Perancangan Data User

3.6.5 Perancangan Edit Rute

Perancangan Edit Rute berfungsi untuk menambah atau merubah rute asal, tujuan, nama rute, jarak serta nama angkutan. Pada rancangan ini terdapat empat tombol. Tombol Tambah berfungsi untuk menambah lokasi, Tombol Save berfungsi untuk menyimpan data, Tombol Pilih Titik berfungsi untuk menambahkan simpul dan Tombol OK berfungsi untuk menutup tampilan. Perancangan Edit Rute dapat dilihat pada gambar 3.11.

Gambar 3.11 Perancangan Edit Rute

3.6.6 Perancangan Edit Jarak dan Nomor Trayek

Perancangan Edit Jarak dan Nomor Trayek berfungsi untuk memasukkan data jalan, nomor trayek angkutan umum serta jarak antar lokasi. Pada perancangan ini terdapat dua tombol.

Asal

Tujuan

User ID xxxxxxxxx

Password xxxxxxxxx

Add Save Query Edit Delete Clear Quit

Add Save Query Edit Delete Clear Quit

(49)

Tombol Save berfungsi untuk menyimpan data, tombol OK berfungsi untuk menutup tampilan. Perancangan jalan dan jarak dapat dilihat pada Gambar 3.12.

Gambar 3.12 Perancangan Edit Jarak dan Nomor Trayek

3.6.7 Perancangan About

Perancangan About berguna untuk menampilkan informasi tentang profil penulis. Profil

penulis meliputi biodata penulis, foto penulis serta data-data akademik. Untuk lebih jelasnya dapat dilihat pada Gambar 3.13.

Gambar 3.13 Perancangan About

Gambar 3.13 Perancangan About

(50)

BAB 4

IMPLEMENTASI DAN PENGUJIAN

4.1Implementasi

Implementasi metode Generate And Test Pada Pemilihan Angkutan Umum Bertrayek Dengan Jarak Terpendek terdiri dari tampilan antarmuka (user interface) hasil rancangan dari penulisan kode program dalam bahasa pemrograman Microsoft Visual Basic .NET 2010

dimulai dari program menu utama yang terdiri dari menu program pendukung lainya.

4.1.1 Tampilan Antarmuka

Tampilan antarmuka dari aplikasi pencarian jarak terdekat dengan menggunakan metode

Generate and Test adalah terdiri dari Menu Utama yang terdiri dari tombol-tombol: a. Login.

b. Aplikasi Pencarian Jarak Terpendek c. View Map

d. Edit Data User

e. Edit Data Rute

f. About

g. Keluar

4.1.1.1Tampilan Menu Utama

(51)

Gambar 4.1 Tampilan Menu Utama

Pada tampilan Menu Utama di atas terdiri dari tombol Login, Aplikasi Pencarian Jarak Terpendek, Edit Data User, Edit data Rute, About serta Keluar.

4.1.1.2Tampilan Login

Tampilan Login berfungsi untuk melakukan memasukkan hak otoritas pengguna sistem dengan inputan berupa User ID dan password. Tombol Ok berfungsi untuk melakukan verifikasi data user dan jika user ID dan password ditemukan pada database User, maka proses dilajutkan dengan pemberian hak akses sistem seperti dapat dilihat pada Gambar 4.2.

(52)

Program Login pada gambar 4.2 di atas dengan nama user dan password akan mengaktifkan tombol data user untuk melakukan edit data user.

4.1.1.3Tampilan Hasil Jarak Terpendek

Tampilan Hasil Jarak Terpendek berfungsi untuk menampilkan pencarian rute trayek angkutan kota yang terpendek dengan metode Generate and Test. Pada tampilan ini terdapat tampilan peta jalan-jalan kota Medan. Rute-rute yang terpilih ditampilkan pada peta seperti pada Gambar 4.3.

Gambar 4.3 Tampilan Pencarian Jarak Terpendek

4.1.1.4Tampilan View Map

(53)

Gambar 4.4 Tampilan View Map

4.1.1.5Tampilan EditDataUser

(54)

Gambar 4.5 Tampilan Edit Data User

4.1.1.6Tampilan Edit Data Rute

Tampilan Edit Data Rute berfungsi untuk penginputan dan mengedit data rute angkutan kota. Tampilan Edit Data Rute dapat dilihat pada Gambar 4.6.

(55)

Tampilan Edit Data Jarak berfungsi untuk penginputan dan mengedit data rute angkutan kota. Tampilan Edit Data Jarak dapat dilihat pada Gambar 4.7.

Gambar 4.7 Tampilan Edit Data Jarak

4.1.1.8Tampilan About

Tampilan About berfungsi untuk menampilkan keterangan - keterangan tentang penulis skripsi. Tampilan About dapat dilihat seperti pada Gambar 4.8.

(56)

4.2Pengujian

Tampilan Pengujian berfungsi untuk menampilkan hasil pengujian pencarian jarak terpendek trayek angkutan kota di kota Medan.

4.2.1 Pengujian Jarak Terpendek antar lokasi USU-Cambridge

Pengujian pencarian jarak terpendek antar lokasi-lokasi yang dilewati oleh angkutan umum dengan menampilkan rute-rute yang memungkinkan dan menghasilkan satu jarak terdekat.

a. Pengujian Jarak Terpendek antar lokasi USU dengan lokasi Cambridge dapat dilihat seperti pada Gambar 4.9.

Jarak Terpendek: 4 Km

Gambar 4.9 Tampilan Pengujian Pencarian Jarak Terpendek USU-Cambridge

(57)

Jarak Terpendek: 3 Km

Gambar 4.10 Tampilan Pengujian Pencarian Jarak Terpendek USU-Gramedia

c. Pengujian Jarak Terpendek antar lokasi USU dengan lokasi Grand Aston dapat dilihat seperti pada Gambar 4.11.

Jarak Terpendek: 5 Km

Gambar 4.11 Tampilan Pengujian Pencarian Jarak Terpendek USU-Grand Aston

(58)

Jarak Terpendek: 4 Km

Gambar 4.12 Tampilan Pengujian Pencarian Jarak Terpendek USU-Hermes

e. Pengujian Jarak Terpendek antar lokasi USU dengan lokasi Millenium dapat dilihat seperti pada Gambar 4.13.

Jarak Terpendek: 4 Km

Gambar 4.13 Tampilan Pengujian Pencarian Jarak Terpendek USU-Millenium

(59)

Jarak Terpendek: 6 Km

Gambar 4.14 Tampilan Pengujian Pencarian Jarak Terpendek USU-Sun Plaza

4.3 Perhitungan Manual

Perhitungan manual pencarian jarak terpendek dari lokasi asal Cambridge dan lokasi tujuan Grand Aston menggunakan metode Generate and Test. Gambar 4.15 merupakan peta kota Medan dengan jalur antar lokasi Camridge dan Grand Aston.

Gambar 4.15. Peta Cambridge – Grand Aston

Keterangan gambar : A = Cambridge

(60)

D = Pengadilan Negeri E = Grand Aston

Gambar dibawah ini sebuah graf yang menyatakan peta jaringan rute antar lokasi Cambrigde dengan Grand Aston di kota Medan.

Gambar 4.16. Graf Cambridge – Grand Aston

A dinyatakan sebagai simpul awal dan E dinyatakan sebagai simpul tujuan. Berikut cara pencarian jarak terpendek dengan menggunakan Generate and Test. Penyelesaian dengan menggunakan Generate and Test dilakukan dengan membangkitkan solusi-solusi yang memungkinkan dan membuat pohon pencarian :

1. A-B-D-E 2. A-C-D-E

Gambar 4.17. Pohon Pencarian

A

B

D

E

C

D

(61)

Kita pilih sebagai keadaan awal adalah lintasan ABDE dengan panjang lintasan = 1900. Kemudian kita lakukan backtracking untuk mendapatkan lintasan ACDE dengan panjang lintasan = 1800. Lintasan ini kita bandingkan dengan lintasan ABDE, ternyata ACDE < ABDE, sehingga lintasan yang terpilih adalah ACDE.

(62)

BAB 5

KESIMPULAN DAN SARAN

5.1Kesimpulan

Berdasarkan pengujian sistem yang telah dilakukan, dapat diambil beberapa kesimpulan yaitu:

1. Metode Generate and Test dapat melakukan pencarian rute angkutan umum di kota Medan dengan jarak terpendek.

2. Tampilan hasil pencarian berupa list data dengan menampilkan semua rute yang memungkinkan serta mencari jarak yang terpendek.

3. Hasil total jarak ditampilkan dalam satuan kilometer.

5.2Saran

Berdasarkan dari kesimpulan di atas, maka penulis memberikan beberapa saran untuk pengembangan sistem ini selanjutnya, yaitu:

1. Agar dapat dibandingkan dengan metode lain seperti Algoritma Genetika maupun Algoritma Djikstra.

(63)

DAFTAR PUSTAKA

Aini, Dewi Yusra. 2010. Analisis Algoritma A* Dan Implementasinya Dalam Pencarian Rute Terpendek Pada Jalur Lintas Sumatera Di Provinsi Sumatera Utara. Skripsi. Universitas Sumatera Utara.

Alamsyah. 2010. Pemanfaatan metode Heuristik pada pencarian jalur terpendek dengan algoritma genetika. Jurnal SMARTek. Vol. 8 No. 4: hal. 1-10.

Arifin, Muhammad Siregar. 061401070. Analisis Dan Perancangan Aplikasi Pelelangan Barang Berbasis Short Message Service (SMS). Studi kasus: Perum Pegadaian Kasuari Medan. Skripsi. Universitas Sumatera Utara Medan 2010.

Arifianto Sofyan. 2012. Sistem Aplikasi Penentuan Rute Terpendek Pada Jaringan Multi Moda Transportasi Umum Menggunakan Algoritma Dijkstra. Tesis. Semarang, Indonesia : S2 Sistem Informasi. Universitas Diponegoro.

Ben, Coffin. 2004. Artifical Intelligence Illuminated. Jones and Bartlett Illuminated Series : United States of America.

Kristanto, Harianto, Ir. 1993,1994. Konsep & Perancangan Database. ISBN: 979-533-861-7. Edisi Ketiga. Penerbit ANDI : Yogyakarta.

Kristanto, Andri. 2004. Kecerdasan Buatan. ISBN: 979-3289-57-0. Graha Ilmu : Yogyakarta

Matondang, Mardiansyah. 2012. Perancangan Perangkat Lunak Pencarian Rute Terdekat Kota – Kota Di Sumatera Dengan Algoritma Djikstra. Skripsi. Universitas Sumatera Utara.

Munir, Rinaldi. 2007. Matematika Diskrit. Edisi Ketiga. Informatika Bandung : Bandung, Indonesia.

Munir, Rinaldi. 2012-2013. Algoritma Runut-balik (Backtracking). Bahan Kuliah IF3051 Strategi Algoritma. http://informatika.stei.itb.ac.id/~rinaldi.munir/Stmik/2012-2013/Algoritma%20Runut-balik.ppt. (diakses 16 Agustus 2014).

(64)

Nugroho, Adi. 2009. Algoritma dan Struktur Data dengan C#. Penerbit ANDI : Yogyakarta, Indonesia.

Nurdiana, Dian. 2010. Implementasi Algoritma Lebah Untuk Pencarian Jalur Terpendek Dengan Mempertimbangkan Heuristik. Skripsi. Bandung, Indonesia : S1 Ilmu Komputer, Universitas Pendidikan Indonesia.

Purwananto, Yudhi., Purwitasari, Diana & Wahyu Wibowo, Agung. 2005. Implementasi dan analisis algoritma pencarian rute terpendek di kota Surabaya. Jurnal Penelitian dan Pengembangan TELEKOMUNIKASI. Vol. 10 No.2: hal. 1-8.

Sarana angkutan umum. 27 Februari 2013.

http://www.pemkomedan.go.id/images/saranaangkutan.pdf&sa=U&ei=iLxaUYvBOU rgevj4CQBQ&ved=0CBgQFjAA&sig2=Ifp1idC8j_tTYtvacttS7Q&usg=AFQjCNES ZZZ1eXDaBxE2Qs4vpsshMh0kPQ. (diakses 16 Agustus 2014).

Silaban, Ferry. 2009. Perancangan Aplikasi Sistem Informasi Pemetaan Trayek Angkutan Umum Di Kotamadya Medan. Skripsi. Medan, Indonesia : S1 Ilmu Komputer Universitas Sumatera Utara.

Sismoro, Heri. 2005. Pengantar Logika Informatika, Algoritma dan Pemograman Komputer.

ISBN: 979-763-004-8. PenerbitANDI : Yogyakarta.

(65)

LAMPIRAN

Dim IDSimpulAsal As Integer, IDSimpulTujuan As Integer Dim IDRute As Integer, IDDRute As Integer

Dim strSimpul1 As String, strSimpul2 As String, TstrSimpul As String, strTTSimpul As String

Dim ItemList1 As New ArrayList() Dim ItemList2 As New ArrayList() Dim ItemList3 As New ArrayList()

Private Sub frmMainProg_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Call KoneKsi()

CMD = New OleDbCommand("select distinct(asal) from Rute order by Asal asc", Conn)

(66)
(67)

' CMD3.Dispose() IDRute=" & IDRute & "", Conn)

' RD1 = CMD1.ExecuteReader()

(68)

CMD = New OleDbCommand("select * from Rute where Asal='" & Combo1.Text & "'",

Private Sub Combo2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Combo2.SelectedIndexChanged

CMD = New OleDbCommand("select * from Rute where Asal='" & Combo1.Text & "' and Tujuan='" & Combo2.Text & "'", Conn)

RD = CMD.ExecuteReader

Private Sub btnBatal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBatal.Click

(69)

ListBox2.Items.Add("---values (" & RD.Item("IDDRute") & "," & IDRute & "," & Jarak & ")", Conn)

RD1 = CMD1.ExecuteReader and jarak=" & Jarak & "", Conn)

(70)

ListBox2.Items.Add("--- ---")

End If

End Sub

Private Sub cmdQuit_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdQuit.Click

Close() End Sub

(71)

CURRICULUM VITAE

DATA PRIBADI

Nama : Marthin Febrianto Pakpahan

Tempat, Tanggal Lahir : Medan, 13 Februari 1990 Jenis Kelamin : Laki – laki

Agama : Kristen Protestan

Alamat : Jl. Sei Ular Baru 78c Medan

4. 2008 – 2015 : Program Sarjana (S-1) Ilmu Komputer Universitas Sumatera Utara

Non Formal

1. 2000 – 2007 : Kursus Bahasa Inggris di YPPIA Medan

DATA KEMAMPUAN

1. Mampu mengoperasikan aplikasi Photoshop.

2. Mampu mengoperasikan aplikasi dasar pada komputer. 3. Mampu mengoperasikan aplikasi Microsoft Office.

4. Mampu menggunkan bahasa Indonesia dan bahasa Inggris.

DATA ORGANISASI

1. Anggota 234 SC Medan ( 234 Solidarity Community Medan )

2. Anggota Sapma PP Ilmu Komputer USU

Gambar

Gambar 2.13 Use-case Diagram
Gambar 2.15 Sequence Diagram
Gambar 3.1 Diagram Ishikawa untuk Analisis Permasalahan Sistem
Gambar 3.2 Use Case Generate and Test
+7

Referensi

Dokumen terkait

Hasil penelitian menunjukkan bahwa penambahan tepung tempe dan ikan teri yang berbeda dalam pembuatan produk serabi berpengaruh terhadap banyaknya jumlah serabi

Melalui pengimplementasian optimalisasi RADIUS server sebagai sistem otentikasi dan otorisasi untuk proses login multi aplikasi web berbasis PHP, maka dapat diambil suatu

Kebijakan lingkungan di Indonesia sejak tahun 1973 sudah dapat dijadikan indikator suatu negara yang menerapkan dan telah melaksanakan pembangunan yang berwawasan

Jumlah partisipan sebanyak 4 pasien dan 4 keluarga untuk pre action research dengan accidental sampling, 6 perawat untuk action research dengan purposive sampling, 4 pakar

Berdasarkan tabel 4 tentang tabulasi silang hubungan perilaku menonton televisi dengan kualitas tidur pada anak usia remaja di SMA Negeri 1 Srandakan, Bantul

result shows that adding activated zeolite increased specific pore size of the adsorbent average size of pores, the activated sludge.. are very important to adsorb ions

Tujuan dari posyandu sendiri adalah memberikan layanan kesehatan dasar dan ikut menurunkan angka kematian ibu dan balita (Kementrian Kesehatan RI, 2011). Salah satu

Dukungan suami juga dapat menjadi faktor pepndukung keberhasilan IMD paska persalinan. Bentuk dukungan yang dapat dilakukan oleh suami antara lain dengan