24
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 State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

  • Upload
    others

  • View
    19

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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

Page 2: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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

Page 3: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga
Page 4: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga
Page 5: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga
Page 6: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga
Page 7: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga
Page 8: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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

Page 9: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW 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].

Page 10: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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]

Page 11: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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.

Page 12: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

- 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

Page 13: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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.

Page 14: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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)}

Page 15: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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

Page 16: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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 ᶓ ᶓ

Page 17: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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

Page 18: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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)

Page 19: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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

Page 20: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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;

Page 21: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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

Page 22: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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.

Page 23: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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

Page 24: Penerapan Finite State Automata Pada Pencarian Rute ...€¦ · Penerapan Finite State Automata Pada Pencarian Rute Terpendek Perjalanan Mahasiswa dari Rumah ke Kampus UKSW Salatiga

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)