16
Penerapan Finite State Automata Pada Proses Peminjaman Buku di Perpustakaan Universitas Kristen Satya Wacana Artikel Ilmiah Peneliti : Raymond Elias Mauboy (672013158) Prof. Ir. Danny Manongga, MS.c., Ph.D. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga Mei 2017

Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

  • Upload
    others

  • View
    39

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

Penerapan Finite State Automata Pada Proses Peminjaman

Buku di Perpustakaan Universitas Kristen Satya Wacana

Artikel Ilmiah

Peneliti :

Raymond Elias Mauboy (672013158)

Prof. Ir. Danny Manongga, MS.c., Ph.D.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

Mei 2017

Page 2: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

ii

Page 3: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

iii

Page 4: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

iv

Page 5: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

v

Page 6: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

6

1. Pendahuluan

Perpustakaan adalah mencakup suatu ruangan, bagian dari gedung / bangunan

atau gedung tersendiri yang berisi buku-buku koleksi, yang diatur dan disusun

demikian rupa, sehingga mudah untuk dicari dan dipergunakan apabila sewaktu-

waktu diperlukan oleh pembaca [1].

Perpustakaan adalah kumpulan atau bangunan fisik sebagai tempat buku dikumpulkan

dan disusun menurut sistem tertentu atau keperluan pemakai [2].

Secara lebih konkrit perpustakaan dapat dirumuskan sebagai suatu unit kerja

dari sebuah lembaga pendidikan yang berupa tempat penyimpanan koleksi buku-buku

pustaka untuk menunjang proses pendidikan. Berdasarkan beberapa pengertian diatas,

dapat disimpulkan bahwa perpustakaan adalah tempat untuk mengembangkan

informasi dan pengetahuan yang dikelola oleh suatu lembaga pendidikan, sekaligus

sebagai sarana edukatif untuk membantu memperlancar cakrawala pendidik dan

peserta didik dalam kegiatan belajar mengajar.

Sejalan dengan perkembangan zaman, pengertian perpustakaan berubah secara

berangsur-angsur. Pada mulanya setiap ada kumpulan buku koleksi yang dikelola

secara rapi dan teratur disebut perpustakaan, tetapi karena adanya perkembangan

teknologi modern dalam usaha pelestarian dan pengembangan informasi.

Teori Bahasa dan Automata merupakan salah satu bagian ilmu komputer yang

didasari oleh model dan gagasan mendasar mengenai komputer. Sebagai keluaran dari

automata, bahasa memungkinkan penyampaian gagasan dan pemikiran manusia,

sedangkan sebagai ilmu yang juga mempelajari mengenai mesin abstrak, automata

dapat membaca input berupa string dari alphabet yang diberikan dari input file.

Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses

Peminjaman Buku di perpustakaan Universitas Kristen Satya Wacana,dimana proses

yang dilakukan di mulai dari peminjam mulai meminjam buku hingga berakhir

setelah peminjam mengembalikan buku Peminjaman Buku yang dilakukan adalah

untuk bagaimana peminjam melakukan peminjaman sebuah buku yang baik dan benar

sesuai yang aturanya telah di tetapkan oleh pihak kampus sendiri. Berdasarkan latar

belakang tersebut maka dilakukan penelitian yang menerapkan finite state automata

pada Proses Peminjaman Buku di Perpustakaan Universitas Kristen Satya Wacana.

2. Tinjauan Pustaka

Banyak penelitian tentang penerapan atau penggunaan Finite State Auotmata,

salah satu contoh penelitian dengan judul “Penerapan Finite State Automata Pada

Perangkat ajar ”, dimana membuat sebuah aplikasi untuk membantu mahasiswa agar

dapat dengan mudah mempelajari bahasa automata menggunakan aplikasi ajar [3].

Penelitian yang kedua tentang atau Penggunaan Finite State Automata, salah satu

contoh penelitian dengan judul „„Penerapan Finite State Automata Pada Pemetaan

Sistem Parkiran Kendaraan Motor di Kampus UKSW Salatiga”, aplikasi ini

Page 7: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

7

mengajarkan bagaimana cara Finite state automata digunakan sebagai logika dasar

untuk melakukan pemetaan sistem parkiran kendaraan motor di kampus UKSW[4]

Penelitian yang ketiga tentang atau penggunann Finite State Automata, salah satu

contoh penelitian dengan judul “Implementasi Finite State Automata pada Aplikasi

Translator Latin ”, aplikasi untuk mengajarkan bagaimana cara belajar bahasa aksara

jawa menggunakan aplikasi yang dapat dipakai berbagai orang dan juga dapat

memperkenalkan pada orang lain tentang cara belajar bahasa akasara jawa [5].

Penelitian yang keempat berjudul “Perangkat Lunak Pengucapan Kata Bahasa

Indonesia Berdasarkan Pemenggalan Kata Dengan Finite State Automata”. Penelitian

ini menjelaskan tentang perancangan aplikasi yang menggunakan Finite State

Automata sebagai mesin abstrak yang akan mengenali dan memenggal kata dalam

kalimat, sesuai dengan kalimat yang diucapkan [6]

Berdasarkan penelitian yang pernah dilakukan terlebih dahulu maka dilakukan

penelitian yang membahas tentang penerapan finite state automata Pada Proses

Peminjaman buku di Universitas Kristen Satya Wacana.

Finite State Automata (FSA) disebut juga Finite Automata (FA) merupakan

suatu model matematika dari suatu sistem dan yang menerima input menghasilkan

output diskrit [7]. 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.

NDFA (Non Deterministic Finite Automata) adalah salah satu bagian dari automata

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 :

Q adalah sebuah himpunan hingga dari state.

Σ adalah sebuah abjad masukan.

s adalah salah satu kedudukan di dalam Q yang ditetapkan sebagai kedudukan

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 1.

Page 8: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

8

Gambar 1 Rangkaian NDFA (Non Deterministic Finite Automata) [6]

Rangkaian pada Gambar 1 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

Tahapan Penelitian yang digunakan dalam penelitian ini dapat dibagi ke dalam 5

(lima) tahap yaitu: (1) tahap analisis kebutuhan, (2) tahap studi literatur, (3) tahap

perancangan sistem, (4) tahap pengujian sistem, (5) tahap penulisan laporan.

Gambar 2 Tahapan Penelitian

Analisi Kebutuhan dan

Pengumpulan Data

Perancangan Finite state

automata

Implementasi dan

Pengujian Finite state

automata

Penulisan Laporan

Page 9: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

9

Tahapan Penelitian pada Gambar 2, dapat dijelaskan sebagai berikut, Tahap

Analisis Kebutuhan: Pada tahap ini dilakukan analisis terkait dengan sistem yang

dilakukan pada proses Peminjaman buku di perpustakaan Universitas Kristen Satya

Wacana; Tahap Studi Literatur: Dalam tahap ini dilakukan pengumpulan data dari

sumber-sumber mengenai pembahasan terkait penelitian tersebut; Tahap

Perancangan: Pada tahap ini akan dilakukan perancangan finite state automata

menggunakan NDFA (Non Deterministic Finite Automata); Tahap Pengujian Sistem:

Pada tahap terakhir ini dilakukan pengujian terhadap penerapan finite state automata

pada proses Peminjaman Buku di perpustakaan Universitas Kristen Satya Wacana

menggunakan NDFA (Non Deterministic Finite Automata) yang telah dibuat.

Pengujian dilakukan dengan evaluasi terhadap keseluruhan perancangan finite state

automata pada proses Peminjaman buku di perpustakaan Universitas Kristen Satya

Wacana menggunakan NDFA (Non Deterministic Finite Automata) yang telah dibuat;

Tahap Penulisan Laporan: Dalam tahap ini dilakukan penulisan laporan dari tahapan

penelitian yang dilakukan.

Gambar 3 Rancangan Proses Peminjaman Buku

Page 10: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

10

Pada Gambar 3 terlihat proses peminjaman buku yang menampilkan segala

kemungkinan yang terjadi dalam proses peminjaman buku yang ditunjukan menggunakan

state/kondisi yang terjadi pada finite satate automata

4. Hasil dan Pembahasan

Rancangan state diagram pada pemetaan sistem proses peminjaman buku pada

perpustakaan Universitas Kristen Satya Wacana, lihat pada Gambar 4, yang menjelaskan

tentang proses peminjaman buku pada Universitas Kristen Satya Wacana berdasarkan

sistem atau tahap yang dilakukan oleh mahasiswa/i tersebut. Sistem atau tahap yang

dilakukan mahasiswa/i pada proses peminjaman buku pada Universitas Kristen Satya

Wacana, adalah sebagai berikut :

0. Form Pengunjung

1. Komputer

2. Cari Buku

3. Pegawai Perpustakaan

4. Batas Pengembalian Buku

5. Valid Thru

6. Bayar Denda

7. Pengembalian Buku

8. Rak Tempat Buku

Gambar 4 Diagram N-DFA Proses Peminjaman Buku

Page 11: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

11

Secara formal N-DFA pada Gambar 4 dinyatakan dalam 5 tupel atau M=(Q, ∑, S, F, Δ),

artinya :

Q = himpunan state / kedudukan

∑ = himpunan simbol input / masukan / abjad

S = state awal / kedudukan awal ( initial state )

F = himpunan state akhir

Δ = relasi transisi

Keterangan dari Gambar 4 dengan menggunakan tupel, sebagai berikut:

Q = {Q0,Q1,Q2,Q3,Q4,Q5,Q6,Q7,Q8}

∑ = {0,1}

S = {Q0}

F = {Q6,Q8}

Δ={((Q0,1)Q1),((Q0,0),Q0),((Q1,1)Q2),((Q1,0)Q1),((Q2,1)Q3),((Q2,0)Q1),((Q3,1),Q5),((Q5

,1)Q4),((Q5,0)Q3),((Q4,1)Q7),((Q4,0)Q6),((Q6,0)Q6),((Q6,1)Q7),((Q7,1)Q8).

Ada 8 (delapan) state yaitu user mengisi form pengunjung (S1) menuju computer (S2)

menuju pegawai perpustakaan (S3) menuju batas pengembalian buku (S4) Valid Thru (S5)

bayar denda (S6) pengembalian buku (S7) rak tempat buku (S8) sedangkan input yang ada

sebagai berikut : (0,1)

Tabel 3 Relasi Transisi Peminjaman Buku di Perpustakaan

∆ 0 1

Q0 Q0 Q1

Q1 Q1 Q2

Q2 Q1 Q3

Q3 Ø Q5

Q4 Q6 Q7

Q5 Q3 Q4

Q6 Q6 Q7

Q7 Ø Q8

Q8 Ø Ø

Page 12: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

12

Algoritma Proses Peminjaman buku di perpustakaan Universitas Kristen Satya Wacana

adalah sebagai berikut :

1.Pengunjung atau user mengisi form pengunjung

2.Apabila pengunjung salah menginput data diri maka proses akan kembali meminta user mengisi form

pengunjung, jika benar maka proses akan dilanjutkan

3.Pengunjung melakukan pencarian buku

4.Apabilan pengunjung salah mencari buku maka proses kembali pada proses pencarian buku , jika

benar proses dilanjutkan

5.Pengunjung mengambil buku

6.Pengunjung menyerahkan buku kepada pegawai perpustakaan

7.Jika pengunjung mengembalikan buku lebih dari 30 hari maka peminjam dikenakan denda , jika

pengunjung mengembalikan buku tidak lewat dari batas pengemabalian buku maka proses dilanjutkan

8.Pengunjung mengembalikan buku kepada pegawai perpustakaan

Algoritma proses peminjaman buku didasarkan pada rancangan flowchart N-DFA . Algoritma

tersebut membantu user untuk membuat aplikasi atau program berdasarkan rancangan N-DFA

yang telah dibuat. Dan pada tahap selanjutnya adalah proses pembuatan pseudocode yang

digunakan sebagai acuan pembuatan aplikasi atau program

Kamus

Nama_peminjam,Data_peminjam,dan Pegawai_perpus = String

Start

Input Id_ pengunjung

Read Id_pengunjung

Input Nama_pengunjung

Read Nama_pengunjung

IF Pengunjung mencari buku THEN mencari buku

IF Pengunjung mengambil buku AND

IF Pengunjung menyerahkan Buku AND

IF Pengunjung menyerahkan THEN FOR 1…30 DO and

IF Pengunjung menyerahkan Buku THEN FOR 30…. AND bayar Denda

IF Menyerahkan Buku ke pegawai

end

Rancangan pseudocode merupakan sebuah gambaran konsep aplikasi yang

dibuat, berguna untuk membantu pegunjung dalam peminjaman buku dan

pengembalian buku sesuai aturan yang telah ditetapkan oleh pihak kampus

Page 13: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

13

Kode Program 1 Perintah untuk menampilkan proses peminjaman buku

Kode Program 1 merupakan perintah yang digunakan untuk menginput data diri

pengunjung, data diri pengunjung yang dimasukan kedalam aplikasi yang dimasukan oleh

pengunjung berguna untuk aplikasi dalam menentukan pengunjung dapat meminjam buku

atau tidak .

Kode Program 2 Perintah untuk menampilkan proses pengembalian buku

Page 14: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

14

Kode Program 2 merupakan perintah yang digunakan untuk menampilkan proses

pengembalian buku pada petugas. kemudian aplikasi akan menentukan pengunjung yang

dikenakan denda atau tidak pada saat proses peminjaman buku.

Program dibuat menggunakan bahasa pemograman java dan merupakan program

dengan tampilan console application. Konsep program dirancang berdasarkan proses

peminjaman buku di Kampus UKSW, yang dijalankan oleh pegawai perpustakaan

Gambar 5 Output Program

Gambar 5 adalah hasil output dari program yang dibuat. Input dilakukan secara

manual menggunakan keyboard oleh pengunjung perpustakaan, kemudian diproses sehingga

menampilkan buku mana saja yang dipinjam dan dikembalikan oleh pengunjung .

Tabel 4 Tabel analisis Pengujian dan Hasil

Start state Input State yang dilewati Final state Jumlah state

yang dilewati

Jumlah

input

Q0 1,0 Q1,Q2,Q3,Q5,Q4 Q6 5 6

Q0 0,1 Q1,Q2,Q3,Q5,Q4 Q6 5 12

Q0 1 Q1,Q2 Q8 2 3

Q0

Q0

Q0

Q0

Q0

1,0

1,€

1,€,0

1,0

1,0

Q1,Q2

Q1,Q2,Q3,Q5,Q4,Q7

Q1,Q2,Q3,Q5,Q4,Q6,Q7

Q1,Q2,Q3,Q5,Q4,Q6,Q7

Q1,Q2,Q3,Q5,Q4,Q6,Q7

Q8

Q8

Q8

Q6,Q8

Q6,Q8

2

5

6

7

7

7

6

13

8

15

Tabel 4 menjelaskan tentang analisis pengujian dan hasil dari konsep finite state

automata yang dibuat. Anilisis pengujian dan hasil pertama menunjukan, start state Q0

samapi final state Q6 melalui 5 state , yaitu state Q1,Q2,Q3,Q5,Q4, memiliki 2 input, yaitu

input 1,0. Anilisis pengujian dan hasil kedua menunujukan, start state Q0 sampai final state

Page 15: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

15

Q6 melalui 5 state, yaitu state Q1,Q2,Q3,Q5,Q4 memiliki 2 input, yaitu input 1,0. Anilisis

pengujian dan hasil ketiga menunjukan, start state Q0 sampai final state Q8 , melalui 2 state,

yaitu state Q1 dan Q2 dan memiliki 1 input , yaitu 1 Anilisis pengujian dan hasil keempat

menunjukan, start state Q0 sampai final state Q8 melalui 2 state yaitu Q1 dan Q2, dan

memiliki 2 input, yaitu input 1,0. Anilisis pengujian dan hasil kelima menunjukan start state

Q0 sampai final state Q8 , melalui 6 state yaitu Q1,Q2,Q3,Q5,Q4,Q7 dan memiliki 2 input

yaitu 1, €. Anilisis pengujian dan hasil keenam menunjukan, start state Q0 sampai final state

Q8 , melalui 6 state yaitu Q1,Q2,Q3,Q5,Q4,Q7 dan memiliki 3 input yaitu 1,€,0. Anilisis

pengujian dan hasil ketujuh menunjukan, start state Q0 sampai final state Q6 dan Q8 ,

melalui 7 state yaitu Q1,Q2,Q3,Q5,Q4,Q6,Q7 dan memiliki 2 input yaitu 1,0. Anilisis

pengujian dan hasil kedelapan menunjukan , start state Q0 sampai final state Q6 dan Q8 ,

melalui 7 state yaitu Q1,Q2,Q3,Q5,Q4,Q6,Q7 dan memiliki 2 input yaitu 1,0.

5. Simpulan

Berdasarkan hasil penelitian, dan implementasi finite state automata pada pemetaan

proses peminjaman buku di perpustakaan Universitas Kristen Satya Wacana yang

dilakukan dapat diambil kesimpulan bahwa : (1) Finite state automata digunakan sebagai

logika dasar untuk melakukan pemetaan proses peminjaman buku di perpustakaan

Universitas Kristen Satya Wacana; (2) Pemetaan yang dilakukan adalah membagi tiap

proses ke dalam bentuk state sehingga memudahkan penyelesaian proses; (3) Algoritma

dan pseudocode merupakan gambaran aplikasi yang dibuat untuk menjelaskan proses

peminjaman buku di perpustakaan Universitas Kristen Satya Wacana

6. Daftar Pustaka

[1] Sutarno,NS,2006:11,.Pengertian,JenisdanTujuanPerpustakaan

http://www.kajianpustaka.com/2012/11/perpustakaan , (diakses tgl 30 Desember 2016

[2] Lasa,2007:12.,PengeritanPerpustakaan

http://www.kajianpustaka.com/2012/11/perpustakaan , (diakses tgl 30 desember

2016)

[3] Hamid, A., Marlindawati., Yulianingsih, E., 2015. „„Perangkat Ajar Finite State

Automata ”

[4] Pelupessy, J. A., Pakereng, M A I., November 2016. Penerapan Finite State Automata

Pada Pemetaan Sistem Parkiran Kendaraan Motor di Kampus UKSW Salatiga.

[5] Wabula, A. M., “Implementasi Finite State Automata Pada Aplikasi Translator

Latin- AksaraJawa”.

http://simki.unpkediri.ac.id/mahasiswa/file_artikel/2015/11.1.03.02.0236.pdf

[6] Kuswardayan, I., Tjahyanto, A., Siregar, K. M. S., 2005. Perangkat Lunak

Pengucapan Kata Bahasa Indonesia Berdasarkan Pemenggalan Kata Dengan Finite

State Automata. Insitute Teknologi Sepuluh Nopember.

Page 16: Penerapan Finite State Automata Pada Proses Peminjaman ...€¦ · Salah satu contoh penerapan teori bahasa dan automata adalah dalam Proses Peminjaman Buku di. perpustakaan. Universitas

16

[7] Sutopo, M., 2010, Non Deterministic Finite Automata

(NFA)(http://mursids.blogspot.co.id/2010/02/nondeterministic-finite-automata-

nfa.html, diakses tanggal 12 Desember 2016)