Upload
others
View
12
Download
1
Embed Size (px)
Citation preview
Penerapan Finite State Automata Pada Pencarian Rute
Terpendek Perjalanan Mahasiswa dari Rumah ke
Kampus UKSW Salatiga
Artikel Ilmiah
Peneliti:
Harly Nanulaitta (672012071)
Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
November 2016
Penerapan Finite Automata Pada Pencarian Rute
Terpendek Perjalanan Mahasiswa dari Rumah ke
Kampus UKSW Salatiga
Artikel Ilmiah
Diajukan kepada
Fakultas Teknologi Informasi
untuk memperoleh Gelar Sarjana Komputer
Peneliti:
Harly Nanulaitta (672012017)
Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
November 2016
Penerapan Finite Automata Pada Pencarian Rute
Terpendek Perjalanan Mahasiswa dari Rumah ke
Kampus UKSW Salatiga
Harly Nanulaitta 1, Magdalena A. Ineke Pakereng 2
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Jl. Diponegoro 52-60, Salatiga 50771, Indonesia
Email: [email protected], [email protected] 2
Abstract
This study aims to search students the shortest route from home to the Parent
Campus of SWCU and Campus 3 FTI. This study using finite state automata by mapping
the existing street name into the state to facilitate the search for the shortest route. Using
this method the shortest route search can be analyzed easily step by step so that if
something goes wrong in the process, it can be easily identified and tracked using finite
state automata.
Keywords: Finite State Automata, Shortest Route
Abstrak
Penelitian ini bertujuan untuk pencarian rute terpendek mahasiswa dari
rumah menuju Kampus Induk UKSW dan Kampus 3 FTI. Penelitian ini
menggunakan Finite state automata dengan cara memetakan nama jalan yang ada
ke dalam state untuk memudahkan dalam pencarian rute terpendek. Penggunaan
metode ini dalam pencarian rute terpendek dapat dilakukan dengan mudah tahap
demi tahap sehingga jika terjadi kesalahan pada proses maka dapat dengan mudah
diketahui dan dilacak menggunakan finite state automata.
Kata Kunci : Finite State Automata, Rute Terpendek
1Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen
Satya Wacana Salatiga 2Staf Pengajar Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga
1. Pendahuluan
Waktu yang cepat untuk sampai ke tempat tujuan merupakan hal yang
diinginkan oleh sebagian besar orang. Orang sering mengabaikan beberapa faktor
yang dapat memperlambat dalam perjalanan, seperti: rute perjalanan dan waktu
yang ditempuh. Rute perjalanan yang tepat ke suatu tempat, dapat memudahkan
untuk sampai ke tempat tersebut dengan cepat tanpa harus membuang banyak
waktu di perjalanan. Mahasiswa juga sering mengalami hal yang sama, dimana
sering salah dalam menentukan rute perjalanan ke kampus. Tanpa disadari, hal ini
dapat mempunyai pengaruh terhadap efisiensi waktu.
Universitas Kristen Satya Wacana (UKSW) adalah sebuah universitas
swasta tertua dan salah satu yang terbaik di Indonesia, terletak di Salatiga, Jawa
Tengah. Lokasi kampus UKSW Salatiga, antara lain: (1) Kampus Induk, Jl.
Diponegoro No. 52-60, (2) Kampus 2 Stiba, Jl. RA. Kartini No.17-23, (3) Kursus
Musik FSP, Jl. Osamaliki No.96, (4) Kampus 3 FTI, Jl. Fatmawati-Gunung
Payung, Bukit Soka, (5) Kampus Lab Agro UKSW, Kopeng. Dalam penelitian
ini, hanya akan mencari jalur terpendek dari rumah mahasiswa ke Kampus Induk
UKSW dan Kampus 3 FTI UKSW.
Finite state automata berguna dalam membantu proses pengujian
kesalahan yang terjadi pada pada proses pencarian rute terpendek. Tahapan
pencarian rute terpendek dapat digambarkan secara sederhana menggunakan finite
state automata sehingga akan mempermudah dalam pemahaman dan
penyampaian ide atau pemikiran dalam pengembangannya lebih lanjut.
Berdasarkan latar belakang yang ada, maka dilakukan penelitian yang
bertujuan untuk mencari Rute Terpendek Perjalanan Mahasiswa dari Rumah ke
Kampus UKSW Salatiga menggunakan Finite State Automata.
2. Tinjauan Pustaka
Sudah banyak penelitian tentang penerapan atau penggunaan Finite State
Automata, salah satu contoh penelitian berjudul “Penerapan Teori Bahasa dan
Automata untuk Mengecek Kebenaran Format SMS pada SMS Premium”,
menjelaskan tentang penggunaan teori bahasa dan automata untuk mengatasi
permasalahan terhadap pengecekan format SMS premium. Ini telah dibuktikan
dengan tiga hal yang menjadi ciri-ciri algoritma yang baik telah dipenuhi oleh
algoritma teori bahasa dan automata untuk pengecekan tersebut, yaitu pertama
algoritma teori bahasa dan automata memberikan keluaran yang benar terhadap
hasil yang diinginkan, kedua algoritma teori bahasa dan automata memberikan
hasil yang pasti terhadap string yang diberikan, dan yang ketiga adalah dengan
menggunakan algoritma teori bahasa dan automata diperoleh efisiensi waktu dan
efisiensi memori [1].
Penelitian yang kedua “Perancangan dan Implementasi Finite Automata
pada Simulasi Vending Machine. Lewat rancangan state diagram berdasarkan
konsep Mealy Machine yang telah dibuat, maka aplikasi simulasi vending
machine dapat dibuat, dan hasil dari setiap input yang dipilih oleh user pada
aplikasi sesuai dengan hasil rancangan tersebut [2].
Penelitian yang ketiga “Penentuan Jalur Terpendek Pada Pelayanan Agen
Travel Khusus Pengantaran Wilayah Semarang Berbasis SIG dengan Algoritma
Branch And Bound”. Adanya kedua algoritma tersebut, memberikan dampak
cukup baik untuk solusi optimal pada masalah pemilihan jalur terpendek. Dalam
pemilihan jalur terpendek tersebut dikembangkan sebuah sistem informasi yang
disebut Sistem Informasi Geografis Pencarian Jalur Terpendek (SIGPEJAP).
Sistem ini dikembangkan dengan menggunakan metode Unified Process. Sistem
yang dihasilkan dapat membantu agen travel dalam memilih rute terpendek yang
sebaiknya dilewati oleh sopir [3].
Penelitian yang keempat “Penentuan Jalur Terpendek Menuju Cafe di
Kota Malang Menggunakan Metode Bellman – Ford dengan Location Based
Service Berbasis Android”. Simulasi perhitungan menggunakan peta dari Open
street map yang di dalamnya terdapat informasi jarak jalan, titik persimpangan
jalan, koordinat tempat asal dan tujuan, dimana kampus Asia sebagai tempat asal
dan cafe Kopi.Net sebagai tujuan sehingga terbentuk suatu graf. Metode Bellman -
Ford ini menghitung jumlah jarak jalan antara tempat asal dengan beberapa
persimpangan jalan yang akan dilaluinya pertama kali dengan nilai paling terkecil
sehingga akan mengetahui jalan mana yang akan dipilih selanjutnya, dan
persimpangan terpilih sebagai titik awal perhitungan yang berikutnya. Proses
perhitungan tersebut akan diulang sejumlah titik persimpangan yang ada sampai
mendapatkan jumlah jarak jalan terpendek menuju tempat tujuan.
Berdasarkan proses simulasi, disimpulkan bahwa metode Bellman – Ford dapat
digunakan untuk menentukan jalur terpendek [4].
Berdasarkan penelitian-penelitian yang terdahulu tentang penerapan finite
automata dan pencarian jarak terpendek, maka akan dilakukan penelitian tentang
penerapan finite automata pada Pencarian Rute Terpendek Perjalanan Mahasiswa
dari Rumah ke Kampus UKSW Salatiga menggunakan NDFA (Non Deterministic
Finite Automata). Model pencarian ini menerapkan metode Finite State Automata
untuk menentukan lokasi awal sebagai input dan lokasi tujuan sebagai output
yang tentunya akan memudahkan dalam mencari lokasi tujuan.
Finite State Automata (FSA) disebut juga Finite Automata (FA)
merupakan suatu model matematika dari suatu sistem yang menerima input dan
menghasilkan output diskrit. Finite State Automata memiliki state yang
banyaknya berhingga (terbatas), dan dapat berpindah-pindah dari satu state ke
state lain. Perubahan state ini dinyatakan dengan fungsi transisi. State adalah
kondisi atau keadaan atau kedudukan. Prinsip kerja Finite State Automata adalah
sebagai berikut: (1) Menerima input string, (2) Membaca (menyerap substring)
karakter awal dengan kontrol berada pada state awal, (3) Dengan kontrol dan
karakter awal yang telah dibaca, state akan berpindah ke state baru, (4) Proses
berlanjut sampai semua string terserap habis, (5) Jika state akhir yang ditempati
saat string habis tersebut berada dalam himpunan final state yang telah ditentukan,
maka string tersebut diterima atau dikenali oleh Finite State Automata tersebut.
Jika tidak, maka string tersebut ditolak atau tidak dikenali oleh Finite State
Automata itu.
Sebuah Finite State Automata M dinyatakan dengan lima tupel, yaitu (Q ,
Σ , δ , S , F ), dimana: [5]
Q = himpunan state
Σ = himpunan alfabet masukan
δ = fungsi transisi
S = initial state atau state awal
F = final state atau himpunan state akhir
Gambar 1. Contoh State Diagram Finite State Automata. [5]
Keterangan Gambar 1 : (1) Gambar lingkaran menyatakan state, (2) Label
pada lingkaran adalah nama state tersebut, (3) Busur panah menyatakan transisi
atau perpindahan state, (4) Gambar lingkaran yang didahului sebuah busur panah
tanpa label menyatakan state awal, (5) Gambar lingkaran ganda menyatakan final
state.
Maka;
Q = {A, B}
∑ = {0, 1}
S = {A}
F = {B}
ẟ = Fungsi transisi
{((A,0), A), ((A,1), B), ((B,0), B), ((B,1), A)}
Contoh bila string yang masuk adalah ‘1011’, maka string tersebut
bergerak dari Start ke state A, kemudian membaca karakter ‘1’ dan berpindah ke
state B, yang merupakan state tujuan dari hasil pembacaan karakter ‘1’.
Kemudian string selanjutnya yang dibaca adalah ‘0’. Karena state tujuan dari
pembacaan karakter ‘0’ adalah B sendiri, maka state tidak berpindah. Selanjutnya
membaca karakter ‘1’. Berpindah dari state B ke state A yang merupakan state
tujuan setelah membaca karakter ‘1’. Setelah itu, karakter ‘1’ dibaca dan state
berpindah ke state B. Pembacaan string berhenti karena karakter sudah habis.
State terkahir yang ditempati adalah state B, dank arena state B berada dalam
himpunan final state, maka string ‘1011’ diterima oleh Finite State Automata
tersebut.
NDFA (Non Deterministic Finite Automata) adalah salah satu bagian dari
otomata berhingga atau Finite State Automata (FSA). Pada Non deterministic
Finite Automata (NFA) dimungkinkan satu simbol menimbulkan transisi ke lebih
dari satu kondisi dan memberikan beberapa kemungkinan gerakan sehingga
keluarannya tidak dapat dipastikan. Selain itu dimungkinkan juga terjadinya
transisi spontan atau transisi –ε.
NDFA (Non Deterministic Finite Automata) didefenisikan sebagai M yang
merupakan sebuah koleksi dari 5 obyek (Q , Σ , s , F , ∆ ) dimana: [6]
- Q adalah sebuah himpunan hingga dari state.
- Σ adalah sebuah abjad masukan.
- s adalah salah satu state di dalam Q yang ditetapkan sebagai state permulaan.
- F adalah sebuah koleksi dari kedudukan-kedudukan yang diterima atau final
(koleksi/himpunan dari kondisi akhir).
- ∆ adalah sebuah relasi pada (Q x Σ) x Q dan dinamakan relasi transisi.
Salah satu rangkaian NDFA (Non Deterministic Finite Automata) terlihat
pada Gambar 2.
Gambar 2 Rangkaian NDFA (Non Deterministic Finite Automata) [7]
Rangkaian pada Gambar 2 tergolong dalam NDFA (Non Deterministic
Finite Automata) karena beberapa transisi yang berasal dari satu kondisi yaitu
kondisi q0 memiliki input yang sama yaitu ‘a’. Rangkaian tersebut akan menerima
string ab, aab, aabaab, aba, dan abaaba, tetapi tidak akan menerima string abb dan
aabb.
3. Metode dan Perancangan Sistem
Penelitian yang dilakukan, diselesaikan melalui tahapan penelitian yang
terbagi dalam lima tahapan, yaitu: (1) Identifikasi masalah, (2) Pengumpulan data,
(3) Perancangan sistem, (4) Implementasi dan pengujian sistem, (5) Penulisan
laporan.
Gambar 3 Tahapan Penelitian
Tahapan Penelitian pada Gambar 3, dapat dijelaskan sebagai berikut,
Tahap Identifikasi Masalah : Pada tahapan ini dilakukan analisis terhadap
permasalahan yang ada, terkait dengan proses penerapan Finite State Automata
pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke kampus
UKSW Salatiga; Tahap Pengumpulan Data : Dalam tahapan ini dilakukan
pengumpulan terhadap data dari jurnal-jurnal terkait, buku, serta sumber
mengenai pembahasan terkait penelitian tersebut; Tahap Perancangan Sistem :
pada tahap ini akan dilakukan perancangan Finite State Automata menggunakan
NDFA (Non Deterministic Finite Automata); Tahap Implementasi dan Pengujian
Sistem : membuat sistem dengan mengimplementasikan Finite State Automata
untuk Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke kampus
UKSW Salatiga dan pengujian dilakukan dengan evaluasi terhadap keseluruhan
perancangan Finite State Automata Pencarian Rute Terpendek Perjalanan
Mahasiswa dari Rumah ke kampus UKSW Salatiga menggunakan NDFA (Non
Deterministic Finite Automata) yang telah dibuat, apakah sudah berjalan dengan
semestinya. Jika belum maka dilakukan perbaikan-perbaikan yang diperlukan;
Tahap Penulisan Laporan : pada tahap ini, yang dilakukan adalah menyusun
laporan dari hasil pengujian yang telah dilakukan
Perancangan sistem yang dibangun dijelaskan sebagai berikut. Diagram
state digunakan sebagai pendefinisian tupel dan alur program.
Gambar 4 Proses Diagram State Gambar 4 menunjukkan proses diagram state dari sistem. Start state dari
proses diagram state adalah lokasi awal dan menuju ke final state yaitu kampus
UKSW Salatiga dan kampus FTI UKSW dengan menerima input dari jalan kaki
atau angkutan umum.
4. Hasil dan Pembahasan
Hasil rancangan sistem Pencarian Rute Terpendek Perjalanan Mahasiswa
dari Rumah ke Kampus UKSW Salatiga dijelaskan sebagai berikut.
T1
T12
T17
T4
T5
T9 T10
T6 T7
T8
T2
T3
T21
T11
T13
T14 T15
T16
T22
T18 T20
T19
a, b
a
a, b
a, b
a
a a
aa
a
a
a, b
a, b a, b
a
a
a
a
a
a
a
a
a
a, b
a, b
a
a
a
a
a
Gambar 5 Rancangan Diagram State Pencarian Rute Terdekat
Gambar 5 menunjukkan rancangan diagram state pencarian rute terdekat
dengan tuple sebagai berikut :
∑ = {a, b}
Q = {T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16,
T17, T18, T19, T20, T21, T22}
S = {T1}
F = {T21, T22}
= {((T1,a), T2), ((T1,a), T3), ((T1,a), T4), ((T1,b), T3), ((T1,b), T4), ((T2,a),
T4), ((T3,a), T5), ((T4,a), T5), ((T4,a), T6), ((T4,a), T9), ((T4,b), T5),
((T5,a), T11), ((T5,a), T16), ((T5,a), T17), ((T5,a), T21), ), ((T5,b), T16),
((T5,b), T17), ((T5,b), T21), ((T6,a), T7), ((T7,a), T5), ((T8,a), T6),
((T9,a), T7), ((T9,a), T8), ((T9,a), T10), ((T10,a), T5), ((T10,b), T5),
((T11,a), T12), ((T12,a), T13), ((T12,a), T16), ((T13,a), T21), ((T13,a),
T14), ((T14,a), T15), ((T15,a), T16), ((T16,a), T19), ((T17,a), T18),
((T17,b), T18), ((T18,a), T20), ((T19,a), T22), ((T20,a), T22)}
Himpunan hingga dari state ditunjukkan pada Tabel 1.
Tabel 1 Himpunan State
STATE DESKRIPSI T1 Jalan Imam Bonjol, adalah start state,
dimana merupakan titik awal dan juga
lokasi rumah mahasiswa
T2 Jalan Kauman
T3 Jalan Sinoman Tempel
T4 Jalan KH Wahid Hasyim
T5 Jalan Diponegoro
T6 Jalan Seruni
T7 Jalan Monginsidi
T8 Jalan Cempaka
T9 Jalan Kartini
T10 Jalan Moh. Yamin
T11 Jalan Turen
T12 Jalan Cemara Raya
T13 Jalan Kemiri Raya
T14 Jalan Panorama
T15 Jalan Pemandangan
T16 Jalan Ki Penjawi
T17 Jalan Blotongan
T18 Jalan Fatmawati-Blotongan
T19 Jalan KH Ahmad Dahlan
T20 Jalan Gn. Payung I
T21 Kampus Induk UKSW Salatiga, adalah
final state, dimana kampus Induk UKSW
Salatiga merupakan lokasi yang akan dituju
oleh mahasiswa
T22 Kampus FTI-UKSW Salatiga, adalah final
state, dimana kampus FTI-UKSW Salatiga
juga merupakan lokasi yang akan dituju
mahasiswa
Himpunan abjad yang sudah ditentukan, ditunjukkan pada Tabel 2.
Tabel 2 Himpunan Abjad
ABJAD DESKRIPSI
A a adalah inisial untuk Jalan Kaki
B b adalah inisial untuk Angkutan Umum
Fungsi transisi ditunjukkan pada Tabel 3.
Tabel 3 Fungsi Transisi
ᵟ a b
T1 T2, T3, T4 T3, T4
T2 T4 ᶓ
T3 T5 ᶓ
T4 T5, T6, T9 T6
T5 T11, T16, T17, T21 T16, T17, T21
T6 T7 ᶓ
T7 T5 ᶓ
T8 T6 ᶓ
T9 T7, T8, T10 ᶓ
T10 T5 T5
T11 T12 ᶓ
T12 T13, T16 ᶓ
T13 T14, T21 ᶓ
T14 T15 ᶓ
T15 T16 ᶓ
T16 T19 ᶓ
T17 T18 T18
T18 T20 ᶓ
T19 T22 ᶓ
T20 T22 ᶓ
T21 ᶓ ᶓ
T22 ᶓ ᶓ
Pencarian rute terpendek menuju final state pertama ditunjukkan pada Tabel 4.
Tabel 4 Rute Menuju Final State Pertama
Jalur State Awal State yang dilewati State Akhir Jumlah State
yang dilewati A T1 T2, T4, T5 T21 3
B T1 T3, T5 T21 2
C T1 T4, T5 T21 2
D T1 T4, T6, T7, T5 T21 4
E T1 T4, T9, T6, T7, T5 T21 5
F T1 T4, T9, T7, T5 T21 4
G T1 T4, T9, T10, T5 T21 4
H T1 T2, T4, T5, T11,
T12,T13 T21 6
I T1 T3, T5, T11, T12,T13 T21 5
J T1 T4, T5, T11, T12,T13 T21 5
K T1 T4, T6, T7, T5, T11,
T12,T13 T21 7
L T1 T4, T9, T6, T7, T5,
T11, T12,T13 T21 8
M T1 T4, T9, T7, T5, T11,
T12,T13 T21 7
N T1 T4, T9, T10, T5, T11,
T12,T13 T21 7
Pencarian rute terpendek menuju final state kedua ditunjukkan pada Tabel 5.
Tabel 5 Rute Menuju Final State Kedua
Jalur State Awal State yang dilewati State Akhir
Jumlah State
yang
dilewati A T1 T2, T4, T5, 17, 18, 20 T22 6
B T1 T3, T5, 17, 18, 20 T22 5
C T1 T4, T5, 17, 18, 20 T22 5
D T1 T4, T6, T7, T5, 17, 18, 20 T22 7
E T1 T4, T9, T6, T7, T5, 17, 18,
20 T22 8
F T1 T4, T9, T7, T5, 17, 18, 20 T22 7
G T1 T4, T9, T10, T5, 17, 18, 20 T22 7
H T1 T2, T4, T5, T11, T12,T13,
T14, 15, 16, 19 T22 10
I T1 T3, T5, T11, T12,T13, T14,
15, 16, 19 T22 9
J T1 T4, T5, T11, T12,T13, T14,
15, 16, 19 T22 9
K T1 T4, T6, T7, T5, T11,
T12,T13, T14, 15, 16, 19 T22 11
L T1 T4, T9, T6, T7, T5, T11,
T12,T13, T14, 15, 16, 19 T22 12
M T1 T4, T9, T7, T5, T11,
T12,T13, T14, 15, 16, 19 T22 11
N T1 T4, T9, T10, T5, T11,
T12,T13, T14, 15, 16, 19 T22 11
O T1 T2, T4, T5, T11, T12,T13 T22 6
P T1 T3, T5, T16, T19 T22 4
Q T1 T4, T5, T16, T19 T22 4
R T1 T4, T6, T7, T5, T16, T19 T22 6
S T1
T4, T9, T6, T7, T5 T16,
T19, T22 7
T T1 T4, T9, T7, T5, T16, T19 T22 6
U T1 T4, T9, T10, T5, T16, T19 T22 6
Jalur terpendek didapat dari jumlah langkah yang diperlukan dari start
state/state awal menuju ke final state/state akhir. Semakin kecil jumlah langkah
antar state, maka semakin baik jalur tersebut.
Berdasarkan Tabel 4 dan Tabel 5, diambil lima (5) jalur dengan jumlah
langkah terkecil untuk dilakukan perbandingan. Perbandingan tersebut akan
ditunjukkan pada Tabel 6 dan Tabel 7.
Tabel 6 Perbandingan Jalur Pada Rute Menuju Final State Pertama
Jalur State
Awal
State yang
dilewati
State
Akhir
Jumlah
State yang
dilewati
Total
(SAwal +
JS +
SAkhir)
Urutan
Jalur
Terpendek
B T1 T3, T5 T21 2 4 1
C T1 T4, T5 T21 2 4 1
A T1 T2, T4, T5 T21 3 5 2
D T1 T4, T6, T7,
T5 T21 4 6 3
F T1 T4, T9, T7,
T5 T21 4 6 3
Tabel 7 Perbandingan Jalur Pada Rute Menuju Final State Kedua
Jalur State
Awal
State yang
dilewati
State
Akhir
Jumlah
State yang
dilewati
Total
(SAwal +
JS +
SAkhir)
Urutan
Jalur
Terpendek
P T1 T3, T5, T16,
T19 T22 4 6 1
Q T1 T4, T5, T16,
T19 T22 4 6 1
B T1 T3, T5, 17,
18, 20 T22 5 7 2
C T1 T4, T5, 17,
18, 20 T22 5 7 2
A T1 T2, T4, T5,
17, 18, 20 T22 6 8 3
Berdasarkan perbandingan jalur dalam Tabel 6 dan Tabel 7, didapatlah
jalur terpendek pada rute menuju Final State pertama dan kedua. Ada 2 jalur
terpendek menuju Kampus Induk UKSW yaitu (1) Jalan Imam Bonjol – Jalan KH
Wahid Hasyim – Jalan Diponegoro – Kampus Induk/ T1 – T4 – T5 – T21, (2)
Jalan Imam Bonjol – Jalan Sinoman Tempel – Jalan Diponegoro – Kampus Induk
UKSW/ T1 – T3 – T5 –T21. Sedangkan untuk menuju Kampus 3 FTI UKSW, ada
2 jalur terpendek yang dapat ditempuh yaitu (1) Jalan Imam Bonjol – Jalan KH
Wahid Hasyim – Jalan Diponegoro – Jalan Ki Penjawi – Jalan KH Ahmad Dahlan
– Kampus 3 FTI UKSW/ T1 – T4 – T5 – T16- T19 - T22, (2) Jalan Imam Bonjol
– Jalan Sinoman Tempel – Jalan Diponegoro – Jalan Ki Penjawi – Jalan KH
Ahmad Dahlan – Kampus 3 FTI UKSW/ T1 – T3 – T5 – T16- T19 - T22.
Setelah rancangan N-DFA selesai dibuat, tahap selanjutnya adalah
mengaplikasikan rancangan agar dapat dengan mudah digunakan dan diterapkan.
Agar pembuatan aplikasi atau program dapat diselesaikan dengan mudah maka
dilakukanlah pembuatan algoritma dan pseudocode.
Algoritma proses menuju Kampus Induk UKSW, adalah sebagai berikut : Proses dari Jalur 1
1 Mahasiswa dari Jalan Imam Bonjol
2 Mahasiswa menuju Jalan Sinoman Tempel dengan Jalan Kaki, atau
3 Mahasiswa menuju Jalan Sinoman Tempel dengan Angkutan Umum
4 Mahasiswa sampai di Jalan Sinoman Tempel
5 Dari Jalan Sinoman Tempel, mahasiswa menuju Jalan Diponegoro dengan Jalan Kaki
6 Mahasiswa sampai di Jalan Diponegoro
7 Dari Jalan Diponegoro, mahasiswa menuju Kampus Induk UKSW dengan Jalan Kaki,
atau
8 Dari Jalan Diponegoro, mahasiswa menuju Kampus Induk UKSW dengan Angkutan
Umum
9 Mahasiswa sampai di Kampus Induk UKSW
Proses dari Jalur 2
1 Mahasiswa dari Jalan Imam Bonjol
2 Mahasiswa menuju Jalan KH Wahid Hasyim dengan Jalan Kaki, atau
3 Mahasiswa menuju Jalan KH Wahid Hasyim dengan Angkutan Umum
4 Mahasiswa sampai di Jalan KH Wahid Hasyim
5 Dari Jalan KH Wahid Hasyim, mahasiswa menuju Jalan Diponegoro dengan Jalan
Kaki, atau
6 Dari Jalan KH Wahid Hasyim, mahasiswa menuju Jalan Diponegoro dengan Angkutan
Umum
7 Mahasiswa sampai di Jalan Diponegoro
8 Dari Jalan Diponegoro, mahasiswa menuju Kampus Induk UKSW dengan Jalan Kaki,
atau
9 Dari Jalan Diponegoro, mahasiswa menuju Kampus Induk UKSW dengan Angkutan
Umum
10 Mahasiswa sampai di Kampus Induk UKSW
Algoritma proses menuju Kampus 3 FTI UKSW, adalah sebagai berikut : Proses dari Jalur 1
1 Mahasiswa dari Jalan Imam Bonjol
2 Mahasiswa menuju Jalan Sinoman Tempel dengan Jalan Kaki, atau
3 Mahasiswa menuju Jalan Sinoman Tempel dengan Angkutan Umum
4 Mahasiswa sampai di Jalan Sinoman Tempel
5 Dari Jalan Sinoman Tempel, mahasiswa menuju Jalan Diponegoro dengan Jalan
Kaki
6 Mahasiswa sampai di Jalan Diponegoro
7 Dari Jalan Diponegoro, mahasiswa menuju Jalan Ki Penjawi dengan Jalan Kaki,
atau
8 Dari Jalan Diponegoro, mahasiswa menuju Jalan Ki Penjawi dengan Angkutan
Umum
9 Mahasiswa sampai di Jalan Ki Penjawi
10 Dari Jalan Ki Penjawi, mahasiswa menuju Jalan KH Ahmad Dahlan dengan Jalan
Kaki
11 Mahasiswa sampai di Jalan KH Ahmad Dahlan
12 Dari Jalan KH Ahmad Dahlan, mahasiswa menuju Kampus 3 FTI UKSW dengan
Jalan Kaki
13 Mahasiswa sampai di Kampus 3 FTI UKSW
Proses dari Jalur 2
1 Mahasiswa dari Jalan Imam Bonjol
2 Mahasiswa menuju Jalan KH Wahid Hasyim dengan Jalan Kaki, atau
3 Mahasiswa menuju Jalan KH Wahid Hasyim dengan Angkutan Umum
4 Mahasiswa sampai di Jalan KH Wahid Hasyim
5 Dari Jalan KH Wahid Hasyim, mahasiswa menuju Jalan Diponegoro dengan Jalan
Kaki, atau
6 Dari Jalan KH Wahid Hasyim, mahasiswa menuju Jalan Diponegoro dengan
Angkutan Umum
7 Mahasiswa sampai di Jalan Diponegoro
8 Dari Jalan Diponegoro, mahasiswa menuju Jalan Ki Penjawi dengan Jalan Kaki,
atau
9 Dari Jalan Diponegoro, mahasiswa menuju Jalan Ki Penjawi dengan Angkutan
Umum
10 Mahasiswa sampai di Jalan Ki Penjawi
11 Dari Jalan Ki Penjawi, mahasiswa menuju Jalan KH Ahmad Dahlan dengan Jalan
Kaki
12 Mahasiswa sampai di Jalan KH Ahmad Dahlan
13 Dari Jalan KH Ahmad Dahlan, mahasiswa menuju Kampus 3 FTI UKSW dengan
Jalan Kaki
14 Mahasiswa sampai di Kampus 3 FTI UKSW
Algoritma proses menuju Kampus Induk UKSW dan Kampus 3 FTI
UKSW didasarkan pada rancangan N-DFA pencarian jalur terpendek. Algoritma
tersebut akan mempermudah pembuatan aplikasi atau program berdasarkan
rancangan N-DFA yang telah dibuat. Selanjutnya adalah tahap pembuatan
pseudocode, yang dimana akan menjadi acuan dalam pembuatan aplikasi atau
program.
Kamus
lokasi_tujuan = string; rute, rute_1, rute_2 = int;
Start
INPUT lokasi_tujuan
READ lokasi_tujuan
If lokasi_tujuan “Kampus Induk”, then “pilih rute”;
INPUT rute;
READ rute;
If rute = 1 then,
cetak “Jl. Imam Bonjol – Jl. Sinoman Tempel – Jl. Diponegoro –
Kampus Induk UKSW”;
else rute = 2 then,
cetak “Jl. Imam Bonjol – Jl. KH Wahid Hasyim – Jl. Diponegoro –
Kampus Induk UKSW”;
else lokasi_tujuan “Kampus 3 FTI”, then “pilih rute”;
INPUT rute;
READ rute;
If rute = 1 then,
Cetak “Jl. Imam Bonjol – Jl. Sinoman Tempel – Jl. Diponegoro – Jl.
Ki Penjawi – Jl. KH Ahmad Dahlan – Kampus 3 FTI”;
else rute = 2 then,
Cetak “Jl. Imam Bonjol – Jl. KH Wahid Hasyim – Jl. Diponegoro –
Jl. Ki Penjawi – Jl. KH Ahmad Dahlan – Kampus 3 FTI”;
end
Berdasarkan pseudocode yang ada, maka akan dibuat program dengan
bahasa pemrograman C# dalam bentuk console.
Kode Program 1 Perintah untuk Memilih Lokasi Tujuan
1. string tujuan,rute;
2. Console.WriteLine("Masukkan lokasi tujuan : kampus induk / kampus 3");
tujuan = Console.ReadLine();
Kode Program 1 merupakan perintah untuk memilih lokasi tujuan antara
Kampus Induk dengan Kampus 3 FTI. Mahasiswa harus memasukkan lokasi yang
akan dituju sebagai awal untuk melakukan perjalanan.
Kode Program 2 Perintah untuk Memilih Rute Menuju Kampus Induk UKSW
1. if (tujuan=="kampus induk") {
2. Console.WriteLine("Pilih rute yang dituju : rute 1 / rute 2"); 3. rute = Console.ReadLine(); 4. if (rute == "1")
{
5. Console.WriteLine("Jl. Imam Bonjol – Jl. Sinoman Tempel – Jl.
Diponegoro – Kampus Induk UKSW");
}
6. else
{
7. Console.WriteLine("Jl. Imam Bonjol – Jl. KH Wahid Hasyim –
Jl. Diponegoro – Kampus Induk UKSW");
}
}
Kode Program 2 merupakan perintah untuk memilih rute yang akan
dilewati oleh mahasiswa, dalam hal ini menuju Kampus Induk UKSW. Rute
tersebut merupakan rute menuju Kampus Induk UKSW dengan 2 (dua) alternatif
yaitu (1) Dari Jalan Imam Bonjol, mahasiswa harus menuju Jalan Sinoman
Tempel. Kemudian akan menuju ke Jalan Diponegoro sebelum tiba di Kampus
Induk UKSW (2) Dari Jalan Imam Bonjol, mahasiswa harus menuju Jalan KH
Wahid Hasyim sebelum menuju ke Jalan Diponegoro. Kemudian dari Jalan
Diponegoro akan menuju Kampus Induk UKSW.
Kode Program 3 Perintah untuk Memilih Rute Menuju Kampus 3 FTI
1. else if (tujuan == "kampus 3")
{
2. Console.WriteLine("Pilih rute yang dituju : rute 1 / rute 2");
3. rute = Console.ReadLine();
4. if (rute=="1")
{
5. Console.WriteLine("Jl. Imam Bonjol – Jl. Sinoman Tempel – Jl.
Diponegoro – Jl. Ki Penjawi – Jl. KH Ahmad Dahlan – Kampus 3 FTI");
}
6. else
{
7. Console.WriteLine("Jl. Imam Bonjol – Jl. KH Wahid Hasyim – Jl.
Diponegoro – Jl. Ki Penjawi – Jl. KH Ahmad Dahlan – Kampus 3 FTI");
}
}
Kode Program 3 merupakan perintah untuk memilih rute yang akan
dilewati oleh mahasiswa, menuju Kampus 3 FTI. Rute tersebut merupakan rute
menuju Kampus 3 FTI dengan 2 (dua) alternatif yaitu (1) Dari Jalan Imam Bonjol,
mahasiswa harus menuju Jalan Sinoman Tempel. Kemudian akan menuju ke Jalan
Diponegoro sebelum tiba di Jalan Ki Penjawi. Setelah tiba di Jalan Ki Penjawi,
mahasiswa harus melanjutkan perjalanan ke Jalan KH Ahmad Dahlan untuk
sampai di Kampus 3 FTI.
Kode Program 4 Perintah untuk Kesalahan Input
1. Else
{
2. Console.WriteLine("Input salah");
}
3. Console.ReadKey();
}
Kode Program 4 merupakan perintah yang digunakan untuk mengecek
kebenaran input.
Gambar 6 Output Pencarian Jalur Terpendek
Gambar 6 merupakan output dari aplikasi Pencarian Jalur Terpendek
menuju Kampus Induk UKSW dan Kampus 3 FTI.
5. Simpulan
Berdasarkan hasil penelitian, dan pembahasan yang dilakukan, maka
kesimpulan yang dapat diambil sebagai berikut : (1) Finite state automata
digunakan sebagai logika dasar untuk melakukan Pencarian Rute Terpendek
menuju Kampus Induk UKSW dan Kampus 3 FTI; (2) Pemetaan yang dilakukan
adalah membagi tiap jalan menjadi bentuk state sehingga memudahkan dalam
penyelesaian masalah; (3) Gambaran aplikasi yang dibuat dalam bentuk
algoritma, pseudocode dan console application sama dengan rancangan state yang
dibuat. Saran untuk pengembangan ke depannya adalah dapat memadukan finite
state automata dalam pencarian jalur terpendek dengan Geographic Information
System (GIS) agar dapat mengetahui lokasi tujuan dengan tepat.
6. Daftar Pustaka
[1]. Sugiono, B., 2010. Penerapan Teori Bahasa dan Automata untuk
Mengecek Kebenaran Format SMS pada SMS Premium, Skripsi,
Salatiga: Universitas Kristen Satya Wacana
[2]. Irawan, J. Ch., Pakereng, M. A. I., Somya, R., Perancangan dan
Implementasi Finite Automata pada Simulasi Vending Machine, Skripsi,
Salatiga: Universitas Kristen Satya Wacana.
[3]. Rosa, W. R., Suhartono., Wibawa, H. A., 2013. “Penentuan Jalur
Terpendek Pada Pelayanan Agen Travel Khusus Pengantaran Wilayah
Semarang Berbasis SIG dengan Algoritma Branch And Bound”.
Semarang: Universitas Diponegoro.
http://ejournal.undip.ac.id/index.php/jmasif/article/view/8453/7177.
Diakses Tanggal 13 Agustus 2016.
[4]. Rofiq, M., Uzzy, R. F., 2014. “Penentuan Jalur Terpendek Menuju Cafe
di Kota Malang Menggunakan Metode Bellman – Ford dengan Location
Based Service Berbasis Android”. Malang: STMIK Asia Malang.
http://lp3m.asia.ac.id/wp-content/uploads/2015/05/JURNAL-
MUHAMMAD-ROFIQ.pdf. Diakses Tanggal 13 Agustus 2016.
[5]. Utdirartatmo, F., 2001. Teori Bahasa dan Otomata. Yogyakarta: Penerbit
JJ Learning.
[6]. Kelley, D., 1995. Teoría de autómatas y lenguajes formales. Madrid:
Prentice Hall.
[7]. Sutopo, M., 2010, Nondeterministic Finite Automata (NFA)
(http://mursids.blogspot.co.id/2010/02/nondeterministic-finite-automata-
nfa.html, diakses tanggal 5 Agustus 2016)