BAB 1
PENDAHULUAN
1.1 Latar Belakang
Berkomunikasi satu sama lain merupakan salah satu sifat dasar manusia.
Komunikasi berfungsi sebagai sarana untuk saling berinteraksi satu sama lain.
Manusia terkadang ingin menguasai lebih dari satu bahasa asing. Apalagi jika
bahasa itu sedang popular. Manusia pun tidak ingin ketinggalan zaman menguasai
bahasa itu. Dengan adanya kamus maka manusia dapat mempelajari bahasa serta
mengetahui bahasa-bahasa apa saja yang ingin dikuasai. Selama ini jika seseorang
ingin mempelajari bahasa asing, salah satu contohnya adalah bahasa Korea, media
yang digunakan untuk memperlancar penguasaan kosakatanya adalah melalui
kamus. Oleh karena kamus bentuknya masih berupa seperti buku, tidak fleksibel,
susah untuk dibawa, mengakibatkan kurang efektif apabila sedang berada di luar
atau dijalan.
Diperlukan sebuah media baru yang praktis dan efektif seperti media
Smartphone karena Smartphone mendukung berbagai macam aplikasi seperti
aplikasi kamus. Aplikasi kamus didalam Smartphone tidak mencari kata secara
manual. Tetapi adanya Fasilitas pencarian pada aplikasi kamus tersebut
mempermudah user mendapatkan kata yang ingin dicarinya. Dengan
memanfaatkan salah satu dari Algoritma string matching seperti Algoritma Knuth
Morris Pratt dan Boyer Moore, maka mempermudah dan mempercepat pencarian
kata dalam kamus.
Dijelaskan bahwa Algoritma Knuth Morris Pratt mulai mencocokkan
pattern pada awal teks. Pencocokan kata dimulai dari posisi kiri hingga akhirnya
karakter pattern dengan karakter di teks yang bersesuaian, sampai salah satu
kondisi berikut dipenuhi yaitu karakter di pattern dan di teks yang dibandingkan
tidak cocok (mismatch) dan semua karakter di pattern cocok, kemudian algoritma
akan memberitahukan penemuan di posisi ini. Algoritma kemudian menggeser
pattern berdasarkan tabel shift, lalu mengulangi langkah 2 sampai pattern berada
di ujung teks (Wibowo, T., et al. 2012).
Sedangkan Algoritma Boyer Moore ini melakukan pencocokan kata dimulai
dari posisi kanan hingga akhirnya sampai pada posisi paling kiri,langkah ini
berbeda dengan metode pencarian string matching sejenisnya yang memulai
pencarian kata dari posisi kiri. Algoritma ini menerapkan prinsip good sufix
(dimana karakter yang dicari disejajarkan dengan karakter yang menyerupainya)
serta prinsip bad character (dimana jika karakter tidak memiliki kemiripan akan
langsung dieliminasi). Dengan kedua prinsip ini, informasi string yang diperoleh
dalam pencarian akan semakin banyak sehingga output yang dihasilkan akan
menjadi lebih baik (Susanto,2014).
Menurut Bille, P. (2011) Algoritma Knuth Morris Pratt memecahkan
masalah pencocokan string dalam waktu linear itu optimal karena kita dapat
membaca satu karakter pada waktu yg bersamaan. Pada string kita dapat
membaca beberapa karakter dalam waktu yang konstan (tidak berubah-ubah) dan
karenanya berpotensi lebih baik untuk pencocokan string.
Menurut Franek, F., et al. (2007) Algoritma Boyer Moore menyediakan
Average-Case dan Best-Case yang hampir optimal, dan juga melakukan eksekusi
sangat cepat dalam prakteknya.
Menurut Linhart, C. & Shamir, R. (2009) banyak sekali algoritma yang
efisien dikembangkan selama beberapa tahun terakhir, tetapi algoritma tercepat
untuk menyelesaikan masalah dalam waktu linear, yaitu seperti Algoritma Knuth
Morris Pratt dan Algoritma Boyer Moore.
Untuk mengetahui Algoritma yang mampu mencocokkan string paling
cepat, maka kedua algoritma ini akan dibandingkan. Algoritma Knuth Morris
Pratt dan Algoritma Boyer Moore telah dibahas pada penelitian yang terdahulu
untuk fitur Autocomplete dan Autocorrect pada aplikasi katalog perpustakaan
daerah Aceh Timur (Hajar, T.I. 2015) dan Implementasi Algoritma Levenshtein
Distance dan Knuth Morris Pratt dalam fitur word completion pada search engine
(Priyatna, R.D. 2015).
1.2 Perumusan Masalah
Berdasarkan uraian dari latar belakang diatas, rumusan masalah yang akan
dibahas adalah bagaimana melakukan pencarian kata pada Kamus Bahasa Asing
dengan menggunakan Algoritma String Matching.
1.3 Ruang Lingkup Penelitian
Adapun batasan masalah dalam penelitian ini adalah sebagai berikut :
1. Input dan hasil pencarian hanya berupa kata dan tidak berupa kalimat.
2. Aplikasi ini dirancang untuk menerjemahkan kata dari Bahasa Indonesia
ke Bahasa Korea dan sebaliknya secara Offline.
3. Mengingat banyaknya kata yang terdapat didalam kamus maka penulis
membatasi kata yang diinputkan yaitu 1400 kata.
4. Parameter pembanding yang digunakan adalah Running Time dan
Kompleksitas Algoritma yaitu Big O, Big Ω, dan Big Ɵ.
5. Algoritma string matching yang digunakan adalah Algoritma Knuth
Morris Pratt dan Algoritma Boyer Moore .
6. Aplikasi ini dirancang untuk Smartphone android versi 4.2 Jelly Bean,
Menggunakan bahasa pemrograman Java dan Android Studio sebagai
compilernya.
7. Aplikasi menggunakan DBMS SQLite untuk penyimpanan data kamus.
1.4 Tujuan Penelitian
Adapun tujuan penelitian dalam tugas akhir ini adalah :
1. Membangun Aplikasi Kamus Bahasa Indonesia-Korea dengan
2. Mengetahui Algoritma yang lebih baik diantara Algoritma Knuth Morris
Pratt dan Algoritma Boyer Moore untuk proses pencocokan kata.
1.5 Manfaat Penelitian
Adapun manfaat dari penelitian ini adalah :
1. Penelitian ini diharapkan memudahkan pengguna Smarthphone dalam
mencari kata terjemahan dari Bahasa Indonesia ke Bahasa Korea dan
sebaliknya.
2. Penelitian ini diharapkan mampu membantu pengguna mempelajari
Bahasa Korea.
3. Penelitian ini diharapkan menghasilkan perbandingan dalam pembuatan
sistem berbasis Android menggunakan Algoritma Knuth Morris Pratt dan
Algoritma Boyer Moore.
4. Penelitian ini diharapkan dapat dijadikan acuan dalam memilih antara
Algoritma Knuth Morris Pratt dan Algoritma Boyer Moore sebagai
Algoritma dalam Kamus pada search engine.
1.6 Metode Penelitian
Tahapan penelitian yang dilakukan dalam penelitian ini adalah :
1. Studi Literatur
Pada tahap ini dilakukan pengumpulan referensi. Hal ini dilakukan untuk
memperoleh informasi dan data yang diperlukan untuk penulisan skripsi ini.
Referensi yang digunakan dapat berupa buku, jurnal, paper, baik berupa media
cetak maupun media internet mengenai Algoritma pencocokan string
khususnya untuk Algoritma Knuth Morris Pratt dan Algoritma Boyer Moore.
2. Analisis dan Perancangan
Pada tahap ini digunakan untuk mengolah data dari hasil studi literatur yang
kemudian dilakukan analisis dan perancangan sistem. Kemudian sistem
dirancang dengan membuat gambaran sistem menggunakan flowchart, UML,
3. Implementasi
Pada tahap ini perancangan diimplementasikan dalam pembuatan suatu
aplikasi berbasis android dengan menggunakan Bahasa Pemrograman Java dan
menggunakan DBMS SQLite sebagai penyimpanan data kamus.
4. Pengujian
Pada tahap ini dilakukan pengujian kinerja sistem dan kebenaran hasil
perbandingan yang dilakukan dengan dua Algoritma pencocokan string yang
berbeda.
5. Dokumentasi
Pada tahap ini pendokumentasian dilakukan selama penelitian dalam bentuk
skripsi.
1.7 Sistematika Penulisan
Dalam penulisan skripsi ini penulis membagi membuat sistematika penulisan
terbagi menjadi lima bab dengan susunan sebagai berikut:
BAB 1 PENDAHULUAN
Bab ini membahas tentang latar belakang pemilihan judul, perumusan
masalah, ruang lingkup penelitian, tujuan penelitian, manfaat penelitian,
metode penelitian, dan sistematika penulisan.
BAB 2 LANDASAN TEORI
Bab ini membahas tentang teori-teori yang berhubungan dengan
Algoritma String Matching, Algoritma Knuth Morris Pratt, Algoritma
Boyer Moore, Kompleksitas Algoritma dan Android.
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
Bab ini membahas mengenai Analisis Sistem serta perancangan Aplikasi
BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM
Bab ini membahas tentang hasil implementasi dan pengujian sistem serta
pembahasan dari hasil yang diperoleh.
BAB 5 KESIMPULAN DAN SARAN
Bab ini membahas tentang kesimpulan yang diperoleh dari hasil penelitian
serta saran-saran yang ditujukan bagi para pembaca dan pengembang