• Tidak ada hasil yang ditemukan

PENERAPAN ALGORITME DIJKSTRA PADA RUTE ANGKOT BOGOR BERBASIS ANDROID MUHAMMAD IRAWAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "PENERAPAN ALGORITME DIJKSTRA PADA RUTE ANGKOT BOGOR BERBASIS ANDROID MUHAMMAD IRAWAN"

Copied!
39
0
0

Teks penuh

(1)

PENERAPAN ALGORITME DIJKSTRA PADA RUTE

ANGKOT BOGOR BERBASIS ANDROID

MUHAMMAD IRAWAN

ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

BOGOR

2013

(2)
(3)

PERNYATAAN MENGENAI SKRIPSI DAN

SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA

Dengan ini saya menyatakan bahwa skripsi berjudul Penerapan Algoritme Dijkstra pada Rute Angkot Bogor Berbasis Android adalah benar karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir disertasi ini.

Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor.

Bogor, Juli 2013 Muhammad Irawan NIM G64061092

(4)

ABSTRAK

MUHAMMAD IRAWAN. Penerapan Algoritme Dijkstra pada Rute Angkot Bogor Berbasis Android. Dibimbing oleh ENDANG PURNAMA GIRI.

Bogor mempunyai beberapa permasalahan angkot, yaitu jumlah yang banyak dan jalur yang membingungkan. Sistem informasi mengenai angkot dengan menggunakan algoritme Dijkstra di dalamnya dibutuhkan untuk membantu pengguna menentukan angkot yang tepat sehingga didapatkan rute terpendek untuk mencapai lokasi tujuan. Sistem ini dibangun dengan bahasa pemrograman Java dan XML. Sistem ini telah diuji dengan metode blackcox dan berhasil memberikan pengguna tentang informasi jalur terpendek dan informasi angkot sesuai dengan kebutuhan utama sistem.

Kata kunci: Android, Angkot, Dijkstra

ABSTRACT

MUHAMMAD IRAWAN. Dijkstra Algorithm Implementation on Angkot of Bogor Based on Android. Supervised by ENDANG PURNAMA GIRI.

There are some problems dealing with angkot in Bogor. The problems are related to the complexity of route system and amount of angkot unit. In this research, information system was developed for guiding user in order to choose the most efficient route to reach the purpose location. The Dijkstra algorithme was employed to support the system in order to find the route that provide the shortest distance from the origin to the purpose location. The system was developed by using Java and XML programming language and evaluated by applying black box testing method. The evaluation results show that the system can succesfully meet all requirements, particularly providing the most efficient route of a certain location.

(5)

Skripsi

sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer

pada

Departemen Ilmu Komputer

PENERAPAN ALGORITME DIJKSTRA PADA RUTE

ANGKOT BOGOR BERBASIS ANDROID

MUHAMMAD IRAWAN

ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

BOGOR

2013

(6)

Penguji:

1 Dr Eng Heru Sukoco, SSi, MT 2 Hendra Rahmawan, SKom, MT

(7)

Judul Skripsi : Penerapan Algoritme Dijkstra Pada Rute Angkot Bogor Berbasis Android

Nama : Muhammad Irawan NIM : G64061092

Disetujui oleh

Diketahui oleh

Endang Purnama Giri, S.Kom, M.Kom Pembimbing I

Dr Ir Agus Buono, M.Si, M.kom Ketua Departemen

(8)

PRAKATA

Puji dan syukur penulis panjatkan kepada Allah subhanahu wa ta’ala atas segala karunia-Nya sehingga karya ilmiah ini berhasil diselesaikan. Pada kesempatan ini penulis ingin menyampaikan ucapan terima kasih kepada Orang tua dan adik satu-satunya atas dukungan yang telah diberikan. Penulis juga ingin menyampaikan terima kasih kepada pembimbing, yaitu Bapak Endang yang telah bersabar membantu dalam penulisan skripsi ini hingga selesai. Ucapan terima kasih juga penulis sampaikan untuk para penguji, yaitu Bapak Heru dan Bapak Hendra atas kritik dan saran untuk pengerjaan karya ilmiah ini.

Penulis ingin menyampaikan terima kasih secara khusus kepada Windu, Dede, Rendi, Faizal, Antoni, Erri, dan Hamidah atas berbagai bantuan dalam pengerjaan skripsi ini. Secara umum penulis juga ingin berterima kasih kepada teman-teman yang rasanya tidak mungkin penulis sebutkan seluruhnya. Penulis juga tidak lupa ingin mengucapkan rasa terima kasih kepada para dosen dan para pegawai Departemen Ilmu Komputer, khususnya kepada Mbak Rahma, Okta, dan Mas Irfan yang telah banyak membantu dalam urusan administrasi.

Penulis berharap dari karya ilmiah ini dapat memberi manfaat kepada pihak lain dan dapat dikembangkan lebih baik dari ini. Terakhir, penulis pun selalu berharap Allah ta’ala membalas dengan kebaikan bagi kita semua.

Bogor, Juli 2013

(9)

DAFTAR ISI

DAFTAR TABEL vi DAFTAR GAMBAR vi DAFTAR LAMPIRAN vi PENDAHULUAN 1 Latar Belakang 1 Tujuan Penelitian 2 Manfaat Penelitian 3

Ruang Lingkup Penelitian 3

METODE 3

Requirement Definition 4

System and Software Design 4

Implementation and Unit Testing 4 Integration and System Testing 4

Operation and Maintenance 4

HASIL DAN PEMBAHASAN 5

Requirement Definition 5

System and Software Design 6

Implementation and Unit Testing 12 Integration and System Testing 19

SIMPULAN DAN SARAN 19

Simpulan 19

Saran 19

DAFTAR PUSTAKA 19

LAMPIRAN 21

(10)

DAFTAR TABEL

1 Perbandingan Jumlah Angkot di Beberapa Kota 1 2 Daftar tabel dan penjelasan tabel pada database aplikasi angkot mobile 9

DAFTAR GAMBAR

1 Pertumbuhan Android Dibandingkan dengan Sistem Operasi lain 2

2 Waterfall model (Sommerville 2007) 3

3 Use Case aplikasi angkot mobile 6

4 Ilustrasi Algoritme Dijkstra (Cormen et al 2002) 7

5 Activity mencari jalur terpendek 7

6 Activity info perjalanan 8

7 Activity pencarian angkot 8

8 Activity mengubah tampilan peta 9

9 Rancangan antarmuka pembuka aplikasi angkot mobile 10 10 Rancangan antarmuka pencarian jalur aplikasi angkot mobile 11 11 Gambar rancangan antarmuka hasil pencarian aplikasi angkot mobile 11 12 Rancangan antarmuka pencarian angkot menurut lokasi 12

13 Rancangan antarmuka informasi angkot 12

14 Implementasi antarmuka halaman pembuka 13

15 Implementasi antarmuka pencarian jalur 14

16 Implementasi antarmuka hasil pencarian jalur dalam peta 14 17 Implementasi antarmuka daftar angkot untuk bisa sampai tujuan 15

18 Implementasi antarmuka informasi angko t 16

19 Implementasi antarmuka menu pilihan peta 16

20 Implementasi antarmuka perubahan jenis peta 17 21 Implementasi antarmuka pencarian angkot berdasarkan lokasi 17 22 Implementasi antarmuka daftar angkot yang lewat suatu lokasi 18

DAFTAR LAMPIRAN

1 Tabel skenario uji dan hasil pengujian sistem angkot mobile 21

2 ERD database aplikasi angkot mobile 22

3 Kode XML untuk menampilkan antarmuka pada Gambar 15 23 4 Kode XML untuk menampilkan antarmuka pada Gambar 16 23 5 Kode XML untuk menampilkan antarmuka pada Gambar 18 23 6 Kode XML untuk menampilkan antarmuka pada Gambar 21 23

(11)

PENDAHULUAN

Latar Belakang

Bogor dikenal sebagai kota hujan dan kota sejuta angkot. Angkot (Angkutan Kota) merupakan moda transportasi darat di daerah perkotaan yang dipergunakan untuk umum (KBBI 2008). Jumlah angkot yang terdapat di kota Bogor memang sangat banyak jika dibandingkan dengan kota-kota lain di sekitarnya, disebutkan di dalam situs resmi kota Bogor terdapat 3412 unit angkutan kota, sedangkan luas wilayah kota Bogor sendiri sekitar 119 km2. Sebagai perbandingan, menurut data yang terdapat di situs pemerintah kota Bekasi, Bogor, Depok, dan Tangerang Selatan (Tangsel) didapatkan data luas kota Depok dengan wilayah yang lebih besar (201 km2) dari kota Bogor ‘hanya’ memiliki angkot sebanyak 2800-an unit. Memang kota Bekasi memiliki jumlah angkot yang lebih banyak daripada kota Bogor, yaitu 4487 unit tapi kota Bekasi memiliki luas wilayah yang lebih besar dari kota Bogor (211 km2). Jika dibandingkan secara singkat dengan menghitung jumlah angkot per 1 km2

Tabel 1 Perbandingan Jumlah Angkot di Beberapa Kota

, didapatkan hasil seperti di dalam Tabel 1 di bawah ini:

Keterangan Tangsel Depok Bekasi Bogor

Luas 148 km2 201 km2 211 km2 119 km2

Unit 2297 2884 4487 3412

Unit/Luas 16 14 21 29

Tabel di atas (Tabel 1) memberikan gambaran bahwa kota Bogor memiliki perbandingan antara luas wilayah dengan jumlah angkot yang terbesar dengan 29 unit per 1 km2

Selain masalah jumlah angkot yang sangat banyak, ada persoalan rumit lain yang menghinggapi dunia angkutan perkotaan di kota Bogor dan sebagian daerah yang bertetanggaan. Perbedaan jalur yang ditempuh suatu angkot untuk mencapai suatu tujuan. Hal ini dimungkinkan terjadi karena terdapat beberapa jalur (jalan) yang bersifat satu arah sehingga membuat angkot akan melalui jalan yang berbeda setiap kali ‘pergi’ dan ‘pulang’. Di samping itu, pencirian trayek angkot yang berbeda di kota bogor hanya menggunakan pembedaan warna pada bagian bawah dari mobil angkot yang bersangkutan dan sebagian orang yang kurang memperhatikan hal ini akan menemukan kesulitan untuk membedakan angkot dengan trayek berbeda. Tidak sedikit orang yang menganggap angkot di kota . Belum lagi apabila ditambahkan dengan sebagian angkot dari daerah kabupaten yang juga melewati wilayah kota Bogor. Oleh karena itu, dapat disimpulkan bahwa Bogor memang sangat padat dengan angkot. Setiap jalan di kota Bogor hampir pasti dilalui oleh angkot, bahkan beberapa jalan kecil dan kompleks perumahan pun dilalui angkot. Jumlah angkot yang banyak ini tentu berpengaruh pada trayek atau jalur yang dilayani. Jumlah trayek yang banyak tentu akan membuat para pengguna jasa angkutan umum ini menjadi bingung, terutama para pendatang. Bahkan, sebagian mahasiswa yang sudah beberapa lama tinggal di Bogor saja terkadang masih bingung dalam menentukan angkot yang akan ditumpangi. Ditambah lagi dengan nama daerah yang tidak dikenal sehingga menambah kerumitan dalam memilih angkot yang akan dinaiki.

(12)

2

Bogor berwarna hijau semua. Hal-hal seperti inilah yang semakin memberikan kesan bahwa angkutan perkotaan di Bogor sangat membingungkan.

Beberapa kenyataan merepotkan di atas menjadi latar belakang untuk mengembangkan suatu aplikasi yang dapat membantu warga Bogor dan para pendatang dalam menggunakan angkot yang ada di Bogor. Aplikasi yang dibuat akan berjalan di perangkat mobile dengan sistem operasi Android. Aplikasi ini menggunakan bahasa pemrograman Java dan memanfaatkan API dari GoogleMaps. Database yang digunakan dalam sistem ini adalah SQLite. Dalam operasinya sistem ini membutuhkan jaringan internet agar dapat mengakses peta dari GoogleMaps.

Aplikasi ini berbasis Android karena Android merupakan salah satu sistem operasi perangkat mobile yang populer digunakan saat ini. Untuk mendukung pernyataan ini diberikan grafik pada Gambar 1 yang menampilkan jumlah pengguna Android bila dibandingkan dengan sistem operasi mobile lainnya hingga April 2013. Android sendiri dapat diartikan sebagai sistem operasi untuk perangkat bergerak berbasis linux yang mencakup sistem operasi, middleware, dan aplikasi. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka (Safaat 2012). Selain karena kepopulerannya yang telah disebutkan di atas, Android juga dipilih karena bersifat open source sehingga lebih mudah untuk dikembangkan oleh siapa saja.

Gambar 1 Pertumbuhan Android dibandingkan dengan sistem operasi lain (gs.statcounter.com, Mei 2013)

Tujuan Penelitian

Penelitian ini memiliki tujuan, yaitu membuat sebuah aplikasi mobile berbasis Android yang dapat membantu pengguna untuk menentukan rute terpendek dan angkot yang dapat digunakan untuk menempuh rute tersebut ketika ingin berpindah lokasi dari satu tempat ke tempat lain di kota Bogor.

(13)

3 Manfaat Penelitian

Penelitian ini diharapkan dapat mempermudah pengguna untuk bisa menentukan angkot yang tepat dengan pilihan jalur yang paling dekat berdasarkan jarak antar lokasi. Selain itu, sistem ini diharapkan dapat menjadi panduan bagi pengguna angkutan umum di Bogor untuk menemukan informasi dari suatu angkot di wilayah Bogor. Bahkan untuk pengguna kendaraan pribadi, sistem ini pun dapat memberi informasi jalur mana yang terpendek untuk mencapai suatu lokasi.

Ruang Lingkup Penelitian

Ruang lingkup dan batasan dari penelitian ini adalah sebagai berikut: 1 Implementasi dilakukan menggunakan bahasa pemrograman Java dan XML. 2 DBMS yang digunakan adalah SQLite Database Browser Portable.

3 Penelitian ini hanya dapat digunakan pada perangkat dengan sistem operasi Android.

4 Data yang digunakan dalam penelitian ini terbatas hanya pada beberapa titik atau daerah tertentu saja dan beberapa data yang dipakai bukan data aktual. 5 Algoritme yang digunakan adalah Dijkstra untuk mencari rute terpendek

berdasarkan bobot jarak dalam satuan meter.

6 Pemilihan rute tidak mempertimbangkan kemungkinan macet, nilai tarif, ataupun kenyamanan.

7 Informasi yang ditampilkan meliputi rute jalan, informasi angkot yang digunakan, serta tarif dari masing-masing angkot yang ada di Kota Bogor.

METODE

Penelitian ini dibagi ke dalam lima tahap, yaitu requirement definition, system and software design, implementation and unit testing, integration and system testing, operation and maintenance. Tahap yang dilakukan ini mengacu pada model waterfall yang diberikan pada Gambar 2.

Requirement definition

System and software design

Implementation and unit testing

Integration and system testing

Operation and maintenance

(14)

4

Requirement Definition

Pada tahap ini diperkirakan kebutuhan yang harus ada pada sebuah aplikasi transportasi. Melalui studi pustaka dan melihat aplikasi lain untuk perjalanan kereta api dan layanan bus Transjakarta. Melalui pendekatan terhadap aplikasi yang telah ada dan melihat tujuan pada bab pendahuluan, dapat mengetahui kebutuhan minimal yang harus disiapkan untuk membuat sebuah aplikasi angkot yang berjalan di dalam perangkat mobile (bergerak). Tahap ini penting untuk dilakukan agar dapat diketahui kebutuhan sistem dan data dalam pembuatan aplikasi ini.

System and Software Design

Tahap ini dilakukan setelah requirement definition (analisis kebutuhan) selesai dilakukan. Perancangan dimodelkan dengan Unified Modelling Language (UML). UML dipilih karena merupakan notasi standar untuk sistem berorientasi objek. Perancangan dilakukan agar dimiliki gambaran umum mengenai aplikasi meliputi tampilan dan cara kerja sistem. Tahap ini dilakukan agar tahap pengembangan menjadi lebih mudah dan terarah. Tahap ini dibagi menjadi tiga bagian, yaitu perancangan sistem, perancangan database, dan perancangan antarmuka.

Implementation and Unit Testing

Tahap implementasi dilakukan mengacu kepada tahap sebelumnya, yaitu system and software design (perancangan). Tahap ini dilakukan dengan menuangkan perancangan ke dalam kumpulan kode program atau beberapa unit program ke dalam bahasa pemrograman java. Dari beberapa bagian kode yang dibuat untuk merepresentasikan tata letak dari tampilan aplikasi digunakan dokumen berformat XML.

Integration and System Testing

Tahapan ini dilakukan apabila tiga tahap sebelumnya telah selesai dilaksanakan. Tahap ini dilakukan untuk melakukan penggabungan dari seluruh modul hasil implementasi, selanjutnya hasil penggabungan tersebut akan dievaluasi secara keseluruhan sehingga apabila terdapat kekurangan di dalam sistem dapat diketahui dan diperbaiki sebelum dipakai oleh pengguna.

Operation and Maintenance

Tahap terakhir dalam perancangan dengan menggunakan model waterfall ini adalah operation and maintenance (pemakaian dan perawatan). Pada tahap ini selain pemakaian aplikasi juga dilakukan perbaikan kesalahan yang mungkin belum ditemukan pada tahap sebelumnya. Jika ada, akan ditambahkan kebutuhan baru ke dalam aplikasi ini.

(15)

5

HASIL DAN PEMBAHASAN

Telah disebutkan sebelumnya bahwa dalam pembuatan aplikasi ini digunakan metodologi Waterfall. Pada bab ini akan dipaparkan secara lebih rinci dari setiap tahapan yang dilakukan ketika aplikasi ini dibuat.

Requirement Definition

Sistem ini ditujukan untuk membantu pengguna agar dapat memilih angkot untuk mencapai suatu tujuan dengan jarak tempuh yang paling pendek dari beberapa jalur yang tersedia. Ada beberapa hal yang meliputi perjalanan dari sebuah angkot, yaitu:

1 Lokasi, meliput i tempat asal, tempat yang dilewati, dan tempat tujuan yang akan dicapai.

2 Jarak, jarak antara beberapa tempat yang dilalui sebelum sampai tujuan maupun jarak total dari rute yang dilalui.

3 Nomor angkot, digunakan untuk membedakan trayek yang dilalui setiap angkot.

4 Tarif, nilai uang yang harus dibayarkan ketika menggunakan angkot. Pada aplikasi ini digunakan nilai tarif termahal dari setiap trayek angkot.

Empat hal ini merupakan data penting yang seharusnya ada untuk sebuah aplikasi angkot yang akan dibuat. Selain itu, untuk memudahkan pengguna membaca informasi pada aplikasi ini juga dibutuhkan peta agar dapat menampilkan jalur yang dilalui oleh suatu angkot. Jadi pengguna dapat melihat jalur untuk mencapai lokasi tujuan dari lokasi asal. Hasil dari analisis kebutuhan tersebut dituangkan ke dalam bentuk Use case diagram (Gambar 3) dengan 5 (lima) use case yaitu:

1 Mencari angkot merupakan use case untuk mendapatkan angkot melalui pencarian pada suatu lokasi.

2 Mengubah tampilan peta memberikan keleluasaan bagi pengguna untuk mengganti jenis peta tertampil (empat jenis peta).

3 Mencari jalur terpendek adalah use case untuk mendapatkan rute terpendek berdasarkan lokasi yang telah dipilih sebelumnya, yaitu lokasi asal dan lokasi tujuan.

4 Melihat info perjalanan memberikan daftar angkot yang harus dinaiki oleh pengguna agar bisa mencapai lokasi tujuan.

5 Melihat gambar angkot merupakan use case yang memberikan informasi mengenai suatu angkot berupa gambar, tarif, dan trayek dari sebuah angkot. Use case ini ditemukan setelah pengguna melalui use case mencari angkot dan melihat info perjalanan.

(16)

6

Gambar 3 Use Case aplikasi angkot mobile

System and Software Design

Tahap perancangan terbagi ke dalam tiga bagian, yaitu perancangan sistem, perancangan database, dan perancangan antarmuka.

1 Perancangan Sistem

Salah satu inti aplikasi ini adalah mencari jalur terpendek dengan menggunakan algoritme Dijkstra. Dijkstra dipilih karena memang dikembangkan sebagai sebuah algoritme yang efisien untuk menemukan jalur terpendek berdasarkan suatu bobot bernilai positif, dari sebuah verteks awal (Uo) ke semua verteks yang lain di dalam sebuah graf G yang terboboti (Chartrand dan Oellermann 1993). Penjelasan detail mengenai algoritme Dijkstra dapat dilihat pada Lampiran 7.

Asumsi w(u, v) ≥ 0 untuk setiap edge (jalan) (u, v) ∈ E. Q merupakan urutan nilai minimum dari beberapa verteks, ditunjukkan oleh nilai d. S adalah himpunan yang berisi verteks yang telah dicek oleh Dijkstra. Q adalah himpunan verteks dalam suatu graf G. π adalah verteks yang harus dilalui sebelum sampai ke verteks tujuan. Di bawah ini terdapat algoritme Dijkstra (Cormen et al. 2002).

DIJKSTRA(G,w, s) 1 INITIALIZE-SINGLE-SOURCE(G, s) 2 S ← ∅ 3 Q ← V[G] 4 while Q ≠ ∅ 5 do u ← EXTRACT-MIN(Q) 6 S ← S ∪ {u}

7 for each vertex v ∈ Adj[u]

8 do RELAX(u, v,w)

RELAX (u, v,w)

1 if d[v] > d[u] + w(u, v)

2 then d[v] ← d[u] + w(u, v) 3 π[v]← u Pengguna Mencari jalur terpendek Mengubah tampilan peta Mencari angkot Melihat info perjalanan Melihat gambar angkot

(17)

7

Di bawah ini, di Gambar 4 terdapat ilustrasi dari implementasi algoritme Dijkstra (Cormen et al 2002):

Gambar 4 Ilustrasi Algoritme Dijkstra (Cormen et al 2002)

Aplikasi ini memiliki lima activity utama. Activity ini dibuat berdasarkan use case yang ada. Berikut adalah sebagian gambar dari activity yang dituangkan ke dalam activity diagram:

Pilih Lokasi

Cari Jalur

Lihat Jalur

Gambar 5 Activity mencari jalur terpendek

Activity diagram pada Gambar 5 menggambarkan tiga tahap dalam mencari jalur terpendek. Pertama, pengguna memilih lokasi asal dan lokasi tujuan. Kedua, pengguna menekan tombol cari jalur setelah menentukan dua lokasi (asal dan tujuan). Ketiga, muncul peta beserta jalur yang terpendek yang disarankan oleh aplikasi.

(18)

8

Pilih lokasi

Lihat jalur

Lihat info perjalanan

Gambar 6 Activity info perjalanan

Activity pada Gambar 6 dapat ditemui pengguna setelah melewati activity pada Gambar 5. Ketika peta telah muncul, pengguna menekan tombol pilihan pada perangkatnya dan memilih menu info perjalanan. Pada menu ini akan muncul daftar angkot yang harus dinaiki pengguna agar bisa sampai ke lokasi tujuan.

Activity pada Gambar 7 dimulai dengan memasukkan nama lokasi pada tempat yang telah disediakan lalu menekan tombol cari angkot. Setelah tombol cari angkot ditekan akan muncul hasil pencarian berupa daftar angkot yang lewat pada suatu lokasi.

Masukkan lokasi

Tekan tombol cari

Lihat hasil pencarian

(19)

9 Activity melihat gambar angkot dapat ditemukan setelah activity info perjalanan dan activity pencarian angkot. Activity ini akan diaktifkan apabila pengguna memilih daftar angkot yang tampil pada activity info perjalanan dan activity pencarian angkot.

Activity yang ada pada Gambar 8 hanya dapat dilakukan apabila pengguna telah melalui activity mencari jalur terpendek. Setelah peta standar muncul, pengguna dapat menekan tombol pilihan pada perangkatnya dan memilih menu mode peta untuk bisa memilih jenis peta yang diinginkan.

Activity yang dibuat telah sesuai dengan tujuan, yaitu dapat membantu pengguna untuk menentukan angkot yang tepat berdasarkan jarak terpendek.

Pilih lokasi

Lihat jalur

Ubah tampilan peta

Gambar 8 Activity mengubah tampilan peta 2 Perancangan Database

Aplikasi ini memiliki empat tabel pada database. Penjelasan mengenai data yang digunakan di dalam database dapat dilihat pada Tabel 2.

Tabel 2 Daftar tabel dan penjelasan tabel pada database aplikasi angkot mobile

Nama Tabel Penjelasan

Angkot Tabel ini berisi kolom idangkot, nomor pada angkot, lokasi satu(awal), lokasi dua(akhir), dan tarif(tertinggi)

AngkotLokasi Tabel ini menyimpan kolom idangkotlokasi, idangkot, dan idlokasi. Tabel ini digunakan untuk memberi keterangan angkot yang lewat pada suatu lokasi.

Lokasi Tabel ini memiliki kolom idlokasi, lati, longi, namalokasi, dan status. Kolom lati berarti latitude dari lokasi tersebut, sedangkan longi berarti longitude.

VertexTetangga tabel ini punya 4 kolom, yaitu id, posisiawal, tetangga, jarak. Tabel ini berfungsi untuk menjelaskan lokasi yang bertetangga.

(20)

10

Aplikasi ini dirancang untuk penggunaan secara portrait, sehingga hasil tidak cocok untuk ditampilkan dalam bentuk landscape. Tampilan awal (Gambar 9) menampilkan dua tombol di tengah layar, yaitu pencarian jalur dan pencarian angkot. Rancangan antarmuka utama (Gambar 10), yaitu pencarian jalur diisi dengan dua list yang setiap list dipilih dengan dropdown. Setiap list berisi lokasi-lokasi yang dapat dipilih. Setelah pengguna menentukan lokasi-lokasi asal dan tujuan, dibutuhkan tombol untuk eksekusi algoritme Dijkstra dan menampilkan peta.

Gambar 9 Rancangan antarmuka pembuka aplikasi angkot mobile

Tombol pencarian jalur pada Gambar 9 akan mengarahkan pengguna ke rancangan pada Gambar 10. Pada Gambar 10 akan ditampilkan daftar lokasi asal dan lokasi tujuan dan tombol untuk melakukan pencarian dengan algoritme Dijkstra. Setelah menekan tombol pencarian pengguna akan diarahkan ke rancangan pada Gambar 11 yang menampilkan peta dan jalur terpendek yang telah ditemukan dengan algoritme dijsktra.

Rancangan pada Gambar 11 menyediakan dua buah menu apabila pengguna menekan tombol pilihan pada perangkatnya. Menu yang tersedia ada dua, yaitu info perjalanan dan mode peta. Menu info perjalanan akan berisi daftar angkot yang harus dinaiki pengguna untuk bisa sampai ke lokasi tujuan, sedangkan mode peta memberikan pilihan bagi pengguna untuk mengubah tampilan peta dari peta standar yang muncul setiap kali ditekan tombol pencarian menjadi peta jenis lain yang telah tersedia.

(21)

11

Gambar 10 Rancangan antarmuka pencarian jalur aplikasi angkot mobile Tombol pencarian angkot pada Gambar 9 akan mengarahkan pengguna ke antarmuka seperti tampak pada Gambar 12. Pada Gambar 12 pengguna memasukkan nama lokasi yang diinginkan lalu menekan tombol cari angkot sehingga akan muncul daftar angkot yang dapat dipilih. Setelah dipilih salah satu angkot maka ditampilkan Gambar 13.

(22)

12

Gambar 12 Rancangan antarmuka pencarian angkot menurut lokasi

Gambar 13 Rancangan antarmuka informasi angkot

Gambar 13 memperlihatkan rancangan antarmuka yang dapat dilihat oleh pengguna berisi informasi mengenai suatu angkot, yaitu nomor trayek angkot, tarif angkot, rute angkot, dan gambar angkot.

Implementation and Unit Testing

1 Implementasi Perangkat Keras

Spesifikasi perangkat keras yang digunakan dalam penelitian ini, yaitu: • Harddisk 320 GB

(23)

13 • Memory RAM 2GB

• Processor Intel(R) Core(TM) i3 M380 • Samsung Galaxy Mini

• Vandroid S5

2 Implementasi Perangkat Lunak

Perangkat lunak yang digunakan adalah sebagai berikut: • Android Developer Tools v21.0.1-543035

• Bahasa pemrograman Java • Framework Android SDK

• Emulator Android Virtual Device • DBMS SQLite Database 1.3 • Library GoogleMaps API • Windows 7 Professional 3 Implementasi Database

Aplikasi ini memiliki database dengan empat tabel mengikuti yang terdapat pada tahap perancangan tanpa ada perubahan. Database untuk aplikasi ini dibuat dengan bantuan aplikasi SQLite browser portable yang dapat digunakan untuk sistem operasi mobile berbasis Android.

4 Implementasi Antarmuka

Antarmuka dari aplikasi yang dikembangakan ini dibuat dengan bantuan Android Developer Tools v21.0.1-543035. Antarmuka yang dibuat mengacu pada perancangan untuk setiap activity dengan menu info perjalanan dan perubahan tampilan peta terdapat pada rancangan antarmuka tampilan peta dan jalur pada Gambar 11.

Berikut ini adalah gambar-gambar dari implementasi antarmuka pada perangkat mobile berbasis Android. Implementasi ini diujikan pada perangkat Samsung Galaxy Mini, Vandroid S5, dan emulator Android.

(24)

14

Gambar 14 muncul setelah antarmuka yang berisi judul aplikasi (splash screen) tampil. Implementasi yang terdapat pada Gambar 14 mengacu pada rancangan antarmuka yang telah dibuat sebelumnya. Tampak pada Gambar 14 antarmuka diisi oleh dua tombol yang terletak di tengah.

Gambar 15 Implementasi antarmuka pencarian jalur

Gambar 15 menunjukkan tampilan antarmuka untuk memilih lokasi asal dan tujuan. Di bagian bawah pada Gambar 15 terdapat tombol Cari Jalur yang akan melakukan eksekusi algoritme Dijkstra sekaligus menampilkan peta.

(25)

15 Gambar 16 menunjukkan peta dengan jalur terpendek yang telah didapatkan dengan algoritme Dijkstra. Di peta ini terdapat titik-titik berwarna hijau berupa lokasi yang dilewati dan garis berwarna merah yang menunjukkan jalur untuk mencapai lokasi yang dituju, sedangkan dua balon berwarna merah menunjukkan lokasi asal dan tujuan yang telah dipilih sebelumnya oleh pengguna.

Antarmuka peta yang digunakan adalah peta yang disediakan oleh GoogleMaps. Peta diakses dengan menggunakan Google API. Peta yang ditampilkan berdasarkan nilai tengah dari titik-titik koordinat yang ada pada database lalu dihitung nilai tengahnya. Sehingga didapatkan ukuran peta yang sesuai untuk menampilkan semua titik dari sebuah rute.

Penentuan titik lokasi (titik hijau dan balon merah) dilakukan setelah perhitungan untuk menemukan jalur terpendek dilakukan. Setelah itu diambil nilai koordinat (latitude dan longitude) dari tiap lokasi lalu dimasukkan sebagai parameter untuk menentukan titik dari tiap lokasi (titik hijau dan balon merah) sekaligus memberi tanda jalan (garis merah) yang ditempuh untuk mencapai lokasi tujuan.

Antarmuka yang berisi peta dan jalur memberikan dua pilihan menu, yaitu info perjalanan dan mode peta. Menu info perjalanan (Gambar 17) menampilkan daftar angkot yang harus dinaiki untuk sampai ke lokasi tujuan. Sedangkan mode peta memungkinkan pengguna untuk mengubah tampilan peta menjadi normal, hybrid, satellite,dan terrain.

Gambar 17 Implementasi antarmuka daftar angkot untuk bisa sampai tujuan Gambar 18 akan muncul setelah pengguna melakukan tap pada salah satu daftar angkot yang tersedia di menu info perjalanan (Gambar 17). Pada antarmuka ini ditampilkan gambar angkot dan informasi lainnya (nomor trayek, tarif, dan rute angkot) dari suatu angkot agar pengguna bisa mengetahui informasi angkot yang sesuai dengan tujuannya.

(26)

16

Gambar 18 Implementasi antarmuka informasi angkot

Gambar 19 Implementasi antarmuka menu pilihan peta

Gambar 19 menunjukkan pilihan jenis peta. Ada jenis peta normal yang langsung tampil setelah pengguna menekan tombol cari jalur. Peta normal menampilkan peta dalam bentuk dua dimensi dengan keterangan jalan-jalan yang ada di sekitar suatu wilayah. Peta hybrid menampilkan peta penggabungan antara foto satelit dengan peta normal yang berisi wilayah dan jalan di sekitarnya. Peta satellite menampilkan peta hasil foto satelit yang telah dimiliki GoogleMaps. Terakhir, peta terrain menampilkan peta yang menunjukkan relief permukaan bumi yang menunjukkan ketinggian dari suatu lokasi.

Pada Gambar 20 pengguna telah mengubah jenis peta yang ditampilkan menjadi hybrid. Tampak di Gambar 20 foto satelit dengan keterangan wilayah-wilayah.

(27)

17

Gambar 20 Implementasi antarmuka perubahan jenis peta

Gambar 21 memperlihatkan tampilan menu pencarian angkot berdasarkan lokasi yang dimasukkan oleh pengguna. Setelah tombol cari angkot ditekan pengguna akan diarahkan menuju Gambar 22.

Gambar 22 menunjukkan tampilan daftar angkot yang lewat pada lokasi yang telah dimasukkan sebelumnya. Apabila pengguna memilih salah satu angkot, maka pengguna akan diarahkan kembali ke Gambar 18 yang menunjukkan informasi dari suatu angkot.

(28)

18

Gambar 22 Implementasi antarmuka daftar angkot yang lewat suatu lokasi 5 Implementasi Sistem

Fitur pencarian jalur terpendek di dalam aplikasi ini menggunakan algoritme dijstra. Dijkstra akan memilih rute yang memiliki total jarak terpendek untuk mencapai suatu lokasi atau verteks dari nilai jarak yang dimasukkan ke dalam database di dalam tabel vertextetangga.

Nilai jarak didapatkan dari jarak yang harus ditempuh dari satu titik menuju titik yang lain (verteks yang bertetangga). Titik pada suatu lokasi ditentukan dari nilai latitude dan longitude. Nilai latitude dan longitude didapatkan dengan bantuan GoogleMaps. Dengan nilai latitude dan longitude dari suatu titik yang bertetangga didapatkan nilai jarak dalam satuan meter dan disimpan ke dalam database untuk dihitung dengan Dijkstra. Nilai latitude dan longitude yang sudah didapatkan disimpan juga ke dalam database untuk dipanggil kembali ketika menentukan titik dari suatu lokasi.

Rute angkot didapatkan melalui proses berikut ini: 1 Pengguna menentukan lokasi asal dan tujuan.

2 Dijkstra menghitung dan memilih jarak terpendek berdasarkan tetangga dari suatu verteks sampai ditemuka n lokasi tujuan.

3 Rute terpendek yang telah didapatkan oleh Dijkstra disimpan.

4 Setelah rute untuk mencapai tujuan diketahui, sistem akan mengecek kembali database untuk melihat angkot-angkot yang lewat pada lokasi yang dilalui untuk sampai tujuan. Kueri yang digunakan untuk melakukan pengecekan ini adalah (contoh lokasi: duber)

5 Angkot yang dipilih adalah angkot yang mampu mencapai lokasi terjauh jika terdapat angkot yang sama pada suatu rute.

select a.idAngkot, a.nomor, a.tarif, a.awal, a.akhir from angko tlokasi al left join angko t a

on al.idangko t = a.idAngko t where al.idLokasi = (select idlokasi from lokasi where namalokasi = 'duber')

(29)

19

Integration and System Testing

Aplikasi ini telah diuji dengan emulator dan perangkat bergerak, yaitu ponsel Android froyo dan yang lebih tinggi dari itu. Metode pengujian yang dipilih adalah blackbox untuk mengetahui fungsi dari aplikasi dapat bekerja dengan baik atau tidak. Rincian skenario pengujian sistem dapat dilihat pada Lampiran 1. Hasil pengujian menunjukkan bahwa sistem bekerja sesuai dengan skenario uji atau sukses. Hasil dari pengujian juga dapat dilihat pada Lampiran 1.

SIMPULAN DAN SARAN

Simpulan

Aplikasi penentuan rute angkot menggunakan algoritme Dijkstra telah selesai dibuat. Fungsi utama dari Aplikasi ini yaitu menyediakan informasi angkot yang sesuai dengan rute terpendek untuk mencapai suatu lokasi. Selain itu pada aplikasi ini juga disediakan informasi secara umum yang berkaitan dengan angkot di Kota Bogor berupa nomor angkot, tarif, dan trayeknya. Dari penelitian ini juga dapat disimpulkan bahwa aplikasi yang dibuat telah berjalan sesuai dengan skenario uji yang dilakukan. Algoritme Dijkstra dapat berjalan di dalam lingkungan perangkat mobile berbasis Android untuk mencari rute terpendek berdasarkan parameter jarak. Pemilihan Android sebagai lingkunagan sistem operasi ditujukan untuk memberikan kemudahan baik bagi pengguna maupun bagi pengembang dalam mengembangkan aplikasi di masa mendatang dalam kaitannya dengan fleksibilitas penggunaan beragam perangkat keras yang dapat digunakan untuk instalasi aplikasi yang dihasilkan.

Saran

Aplikasi yang dihasilkan dari penelitian ini masih memiliki beberapa kekurangan, oleh karena itu beberapa saran yang harapannya dapat menjadikan aplikasi ini lebih baik, yaitu:

1 Penambahan data sehingga cakupan lokasi menjadi lebih luas.

2 Penggunaan fitur GPS di Android untuk menentukan lokasi asal dengan mempertimbangkan lokasi dan jalan terdekat di sekitarnya.

3 Penambahan fungsi validasi dan rancangan input output yang lebih mudah dengan mempertimbangkan usability untuk mengo lah data agar menghindari kesalahan dalam pemasukan data yang dapat berpengaruh pada hasil pencarian.

DAFTAR PUSTAKA

Chartrand G, Oellermann OR. 1993. Applied and Algorithmic Graph Theory. New York (US): McGraw-Hill Inc.

Cormen TH, Leiserson CE, Rivest RL, Stein C. 2002. Introduction to Algorithms. Ed ke-2. New York (US): McGraw-Hill Inc.

(30)

20

Depdiknas. 2008. Kamus Besar Bahasa Indonesia Pusat Bahasa. Ed Ke-4. Jakarta (ID). Gramedia Pustaka Utama

Murphy ML. 2011. Android Programming Tutorials. Macungie (US): CommonsWare, LLC.

Safaat N. 2012. Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android: Edisi Revisi. Bandung (ID): Informatika Bandung.

Sommerville I. 2007. Software Engineering. Ed ke-8. Harlow (UK): Pearson Education Ltd.

Statcounter. 2013. StatCounter Global Stats: Top 8 Mobile Operating Systems in Indonesia from Nov 2012 to Apr 2013. [Internet]. [diunduh 12 Mei 2012]. Tersedia pada: http://gs.statcounter.com/#mobile_os-ID-monthly-201211-201304.

(31)

21 Lampiran 1 Tabel skenario uji dan hasil pengujian sistem angkot mobile

Pengujian

Kondisi Awal Skenario Hasil yang Diharapkan Hasil Uji Tingkat Nama Device Mengganti

lokasi asal Activity utama

Memilih daftar lokasi

asal dengan

dropdown

Tampil beberapa lokasi yang dapat

dipilih

Sukses

Mengganti

lokasi tujuan Activity utama

Memilih daftar lokasi tujuan dengan

dropdown

Tampil beberapa lokasi yang dapat

dipilih Sukses Mencari jalur terpendek (Dijkstra) Activity utama Menekan tombol cari jalur setelah menentukan lokasi asal dan tujuan Muncul jalur terpendek berdasarkan algoritme Dijkstra Sukses Menampilkan

peta google Activity utama

Menekan tombol cari jalur setelah menentukan lokasi asal dan tujuan

Muncul peta google Sukses

Melihat info perjalanan Sudah tampil peta google dengan jalur terpendek Menekan tombol menu di perangkat lalu memilih menu info perjalanan Muncul pop-up yang menampilkan

angkot yang dapat dinaiki Sukses Mengubah tampilan peta Sudah tampil peta google dengan jalur terpendek Menekan tombol menu di perangkat lalu memilih menu mode peta Tampilan peta berubah dari tampilan standar Sukses Melihat info lokasi Sudah tampil peta google dengan jalur terpendek Melakukan

tap pada titik

lokasi

Muncul pop-up kecil yang berisi sedikit info lokasi

Sukses Mencari angkot berdasarkan lokasi Halaman pembuka Menekan tombol pencarian angkot Muncul pop-up daftar angkot yang

melewati lokasi tersebut Sukses Melihat informasi dari suatu angkot Sudah tampil info perjalanan atau daftar angkot pada pencarian Melakukan

tap pada salah

satu angkot dari daftar angkot yang muncul Muncul tampilan informasi angkot yang berisi trayek,

tarif, dan gambar angkot

(32)

22

Lampiran 2 ERD database aplikasi angkot mobile

Memiliki angkot angkotlokasi lokasi vertextetanga nomor idangkot awal akhir tarif idangkotlokasi idangkot idlokasi idlokasi namalokasi idangkot lati longi jarak tetangga posisiawal id status

(33)

23 <?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:stretchColumns="1"> <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/banneraplikasi" /> <TableRow> <TextView android:text="Asal " /> <Spinner android:id="@+id/spinnerDari" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="5dp" android:contentDescription="Asal" /> </TableRow> <TableRow> <TextView android:text="Tujuan "/> <Spinner android:id="@+id/spinnerKe" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="5dp" /> </TableRow> <Button android:id="@+id/button1" android:layout_width="128dp" android:layout_height="wrap_content" android:layout_gravity="right" android:layout_marginBottom="5dp" android:layout_marginLeft="5dp" android:layout_marginRight="5dp" android:layout_marginTop="20dp" android:text="Cari Jalur" /> </TableLayout>

(34)

24 <!-- <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/fragment_container" android:layout_width="match_parent" android:layout_height="match_parent" > <fragment xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" class="com.google.android.gms.maps.SupportMapFragment"/> </FrameLayout>

(35)

25 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".InfoPerjalanan" > <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:src="@drawable/ic_launcher" /> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/textView1" android:layout_centerHorizontal="true" android:layout_marginTop="39dp" android:text="TextView" /> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="46dp" android:text="TextView" android:textSize="20dp" /> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView3" android:layout_below="@+id/textView3" android:text="TextView" /> </RelativeLayout>

(36)

26

Lampiran 6 Kode XML untuk menampilkan antarmuka pada Gambar 21

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".PencarianAngkot" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:text="Cari Angkot" /> <AutoCompleteTextView android:id="@+id/txtLokasi" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/button1" android:layout_centerHorizontal="true" android:layout_marginBottom="58dp" android:ems="10" /> </RelativeLayout>

(37)

27

Keterangan:

- Graf di atas adalah graf G dengan usaha (edge) telah ditentukan dan bobot awal adalah tak hingga kecuali source (0).

- S adalah himpunan yang berisikan verteks yang telah didapatkan nilai terpendeknya

- Q adalah himpunan verteks dari graf - Source adalah verteks A

Setelah menginisialisasi graf yang terdapat source dan verteks lain dilanjutkan dengan melihat S. S adalah himpunan kosong dan Q adalah himpunan yang berisikan verteks-verteks dari graf.

Ketika Q belum kosong maka ambil nilai paling minimal dari sebuah titik (ambil dari Q). Diambil nilai A karena source tidak membutuhkan usaha untuk mencapainya. Saat ini himpunan S telah memiliki anggota, yakni A. Lihat tetangga dari A ada B dan C. Setelah didapatkan tetangga dari A dilakukan perbandingan nilai usaha antara yang yang telah diinisialisasi sebelumnya (tak hingga) dengan nilai terbaru.

- Bobot C awal > bobot A + 2 (nilai edge atau usaha untuk mencapai verteks C)

Jadi bobot dari verteks C adalah tak hingga, jika bobot C lebih besar daripada nilai bobot pada verteks sebelumnya ditambah usaha (edge) untuk mencapai C maka bobot C diganti. Jika dituliskan dalam fungsi matematis akan seperti di bawah ini,

- Tak hingga > 0 (source) + 2 - Tak hingga > 2

- Maka bobot C yang sebelumnya bernilai tak hingga diganti dengan 2 apabila melalui verteks A.

Lakukan pengecekan kembali pada himpunan Q, apakah sudah kosong? Ternyata belum. Maka lakukan kembali seperti sebelumnya (kalimat bergaris bawah).

- Bobot B awal > bobot A + 10 - Tak hingga > 0+10

- Maka bobot B sekarang bernilai 10 melalui verteks A.

Mulai kembali cek tetangga dari yang paling kecil (tadi C yang paling kecil, 2). Lampiran 7 Narasi penjelasan algoritme dijkstra.

(38)

28

Himpunan Q pun belum kosong, maka lakukan kembali perbandingan seperti di atas.

- Bobot B awal > bobot C + 5

- 10 (karena nilai tak hingga sudah diganti dengan yang lebih kecil) > 2 +5 - Maka bobot B saat ini adalah 7 melalui verteks C.

Cek himpunan Q, belum kosong (masih tersisa B, D, E) Bandingkan kembali - Bobot D awal > bobot C + 3

- Tak hingga > 2 + 3

- Maka bobot D diubah menjadi 5 lewat verteks C. Ternyata ada jalan untuk sampai ke D melalui B tapi tidak diambil karena lewat C lebih baik.

Cek lagi Q, belum kosong maka lanjut dengan lihat tetangga dari D, ternyata hanya ada B. Bandingkan lagi.

- Bobot B awal > bobot D + 1 - 7 (lewat C) > 5 + 1

- Maka bobot B berubah kembali menjadi 6 lewat verteks D.

Cek himpunan Q, saat ini masih ada B dan E saja. Karena belum kosong lihat tetangga dari B lalu bandingkan kembali.

- Bobot E awal > bobot B + 5 - Tak hingga > 6 + 5

- Untuk mencapai E hanya membutuhkan usaha sebesar 11 lewat verteks B, maka bobot E diganti menjadi 11.

Apakah E punya tetangga, ada D. Ternyata untuk mencapai D telah didapatkan bobot sebelumnya dan lebih baik sehingga tidak ada perubahan nilai. Selain D, verteks E tidak punya tetangga lain jadi graf G telah selesai dijelajahi.

Cek himpunan Q, ternyata sudah kosong karena semua sudah dicek. Lihat pula himpunan S, ternyata S sudah memiliki anggota berupa verteks A, C, D, B, E. Agar memudahkan kembali untuk mengecek tujuan lain, telah diketahui pula verteks yang harus dilalui. Contohnya, untuk mencapai B dengan bobot terbaik (6) harus lewat D. Dengan keberadaan verteks sebelumnya untuk mencapai suatu verteks akan memudahkan pengecekan terhadap verteks lain. Di bawah ini akan disajikan tabel yang berisi verteks disertai bobot dan verteks sebelumnya berdasarkan graf di atas.

Verteks Bobot Verteks sebelumnya

A 0 Tidak ada

B 6 D

C 2 A

D 5 C

(39)

29

RIWAYAT HIDUP

Penulis dilahirkan pada tanggal 17 Juli 1988 di Tangerang sebagai anak pertama dari dua bersaudara dari pasangan Jan Hasanuddin dan Sulasih. Tahun 2003 penulis mulai menempuh jenjang pendidikan tingkat SMA di SMA Islam PB Soedirman. Selama di tingkat SMA penulis masuk program penjurusan IPA. Penulis menyelesaikan masa belajar tingkat SMA pada tahun 2006.

Selama masa kuliah, penulis pernah menjadi pengajar di salah satu Sekolah Menengah Kejuruan. Penulis menjadi pengajar di jurusan Teknik Komputer dan Jaringan selama dua tahun.

Tahun 2006 pula penulis diterima sebagai mahasiswa IPB melalui jalur SPMB. Setelah satu tahun menjalani program TPB, penulis diterima sebagai mahasiswa Departemen Ilmu Komputer. Tahun 2009 penulis melaksanakan kegiatan Praktik Kerja Lapang (PKL) di Direktorat Komunikasi dan Sistem Informasi (DKSI) IPB selama 40 hari kerja. Selama masa kuliah penulis pernah menjadi anggota dari Himpunan Mahasiswa Ilmu Komputer (Himalkom).

Gambar

Tabel 1 Perbandingan Jumlah Angkot di Beberapa Kota
Gambar 1 Pertumbuhan Android dibandingkan dengan sistem operasi lain  (gs.statcounter.com, Mei 2013)
Gambar 2 Waterfall model (Sommerville 2007)
Gambar 3  Use Case aplikasi angkot mobile
+7

Referensi

Dokumen terkait

Tabel : 3.1.3 BANYAKNYA PENDUDUK DIRINCI MENURUT JENIS KELAMIN DAN KELOMPOK UMUR TAHUN

Hal tersebut dapat dilihat pada pengelompokan pada Automatic Dependent Surveillance-Broadcast (ADS-B), metode tersebut menjadi kelompok metode terbaik pada lima dari enam

Dari hasil analisa yang diperoleh maka semakin banyak pelarut etanol terhadap natrium silika pada percobaan, maka ukuran partikel yang dihasilkan akan semakin kecil.. Namun

Pengumuman ini sesuai dengan Peraturan Direktur Jenderal Pengelolaan Hutan Produksi Lestari Nomor : P.14lPHPL/SETl4l20l6 tentang Standar dan Pedoman Pelaksanaan Penilaian

[r]

Sedangkan hasil penelitian Pemeriksaan Kandungan Bakteri Escherichia coli pada Petis Ikan di Pasar Klampis Bangkalan Madura yang telah dilakukan di dapatkan hasil

Iklan-iklan yang memanfaatkan figur wanita sebagai daya tarik, diklasifikasikan. dalam dua kategori menurut tipe pendekatan keterlibatan wanita di

biasanya digunakan untuk hal yang berkaitan dengan peristiwa gempa bumi.. Sedangkan seismograf memiliki cara kerja yang lebih