Perbandingan Algoritma Boyer-Moore Dan Algoritma Rabin Karp Pada Pencarian Teks Dalam Undang Undang Perlindungan Anak

BAB 1
PENDAHULUAN

1.1 Latar Belakang
Kekerasan terhadap anak adalah tindakan melukai yang berulang-ulang secara fisik dan
emosi terhadap anak yang ketergantungan, melalui desakan hasrat, hukuman badan yang tak
terkendali, degredasi dan cemoohan permanen atau kekerasan seksual, biasanya dilakukan
para orang tua atau pihak lain yang seharusnya merawat anak (Abdullah, 2010). Kekerasan
terhadap anak sering kali terjadi di Indonesia. Jumlah kasus kekerasan pada anak di Indonesia
terus meningkat.
Selain tindak kekerasan terhadap anak, anak juga sering menjadi korban eksploitasi
pihak yang tidak bertanggung jawab. Eksploitasi anak menunjuk pada sikap diskriminatif
atau perlakuan sewenang-wenang terhadap anak yang dilakukan oleh keluarga maupun
masyarakat (Rahman, 2010).
Kebanyakan dari anak Indonesia belum memahami betul apa saja hak-hak dan
perlindungan yang sepantasnya mereka dapatkan dari negara. Pentingnya memahami hak-hak
dan perlindungan bagi anak merupakan pembekalan yang baik bagi anak untuk melindungi
diri dari pelanggaran hak anak.
Untuk memberikan solusi tentang masalah undang-undang perlindungan anak, maka
penulis mencoba merancang sebuah aplikasi pencarian undang-undang perlindungan anak
berbasis android. Terdapat beberapa macam algoritma string matching yang dapat digunakan

untuk melakukan pencarian string, diantaranya : algoritma Rabin-Karp dan algoritma BoyerMoore. Cara kerja algoritma Boyer-Moore yaitu dengan mencocokkan karakter dari kanan
teks ke kiri teks. Algoritma ini mencocokkan karakter per karakter pada teks. Jika tidak cocok
maka karakter di pattern tidak cocok (mismatch). Jika cocok maka algoritma akan
memberitahu penemuan posisi ini. Sedangkan algoritma Rabin-Karp merupakan pencocokan
string yang menggunakan fungsi hash sebagai pembanding antara string yang dicari (m)
dengan substring pada teks(n). Apabila hash value keduanya sama maka akan dilakukan

Universitas Sumatera Utara

2

perbandingan sekali lagi terhadap karakter-karakternya. Apabila hasil keduanya tidak sama,
maka substring akan bergeser ke kanan. Pergeseran dilakukan sebanyak (n-m) kali.
Algoritma Boyer-Moore memiliki ke-efisienan waktu yang cukup baik dalam
memproses sebuah pattern yang berukuran panjang, karena lompatan karakternya yang
cukup besar. Algoritma Rabin-Karp memiliki beberapa kelebihan dalam melakukan pola
pencocokkan string, yaitu: tidak banyak menggunakan kapasitas memory, proses dalam
mencari pola pattern-nya yang tidak terlalu rumit.
Berdasarkan beberapa kelebihan-kelebihan yang dipunyai oleh kedua algoritma ini,
maka penulis akan melakukan perbandingan terhadap kedua algoritma dalam pencarian

undang-undang perlindungan anak. Sehingga akan didapatkan algoritma mana yang lebih
baik.
1.2 Rumusan Masalah
Rumusan masalah pada penelitian ini sebagai berikut:
1. Bagaimana melakukan pencarian undang-undang perlindungan anak berbasis android
dengan algoritma Boyer-Moore dan algoritma Rabin-Karp.
2. Bagaimana mendeteksi perbedaan kecepatan real-running time string antara algoritma
Boyer-Moore dan algoritma Rabin-Karp dalam penemuan sebuah string yang tepat.
3. Bagaimana meneliti dan membandingkan kompleksitas algoritma Ɵ (big Theta) antara
algortima Boyer-Moore dan algoritma Rabin-Karp.
1.3 Batasan Masalah
Batasan masalah penelitian sebagai berikut:
1. Inputan satu kata atau lebih.
2. Pencarian berpusat pada : teks undang-undang perlindungan anak.
3. Bahasa yang pemrograman yang digunakan adalah Bahasa Java dan Android Studio
sebagai compiler-nya.
4. Penelitian ini hanya membahas perbandingan algoritma Boyer-Moore dan algoritma
Rabin-Karp tidak membahas algoritma lain.
5. Parameter perbandingan yang akan dibahas yaitu: real-running time dan Ɵ (big Theta)
algoritma antara algoritma Boyer-Moore dan algoritma Rabin-Karp.


Universitas Sumatera Utara

3

1.4 Tujuan Penelitian
Tujuan Penelitian ini adalah sebagai berikut :
1. Mengimplementasi dan membandingkan algoritma Boyer-Moore dan algoritma RabinKarp ke dalam sebuah pencarian teks dalam undang-undang perlindungan anak.
2. Mengetahui perbandingan kecepatan real-running time string antara algoritma BoyerMoore dan Rabin-Karp dalam penemuan sebuah string yang tepat.
3. Mengetahui perbandingan kompleksitas algoritma Ɵ (Big Theta) algoritma Boyer-Moore
dan algoritma Rabin-Karp.
1.5 Manfaat Penelitian
Manfaat penelitian ini adalah sebagai berikut :
a. Manfaat bagi penulis :
a. Menambah pengetahuan penulis dalam merancang aplikasi berbasis android.
b. Menambah pengetahuan penulis tentang algoritma Boyer-Moore dan algoritma
Rabin-Karp.
b. Manfaat bagi bidang ilmu adalah sebagai bahan referensi bagi peneliti lain yang ingin
merancang perangkat lunak berbasis android lainnya.
c. Manfaat bagi masyarakat adalah membantu masyarakat dalam melakukan proses

pencarian undang-undang perlindungan anak.
d. Mengetahui perbandingan Ɵ (Big Theta) dan real-running time antara algoritma BoyerMoore dan algoritma Rabin-Karp .

1.6 Metode Penelitian
Penelitian ini menerapkan beberapa metode penelitian sebagai berikut:
1. Studi Literatur
Pada tahap ini dilakukan pengumpulan referensi yang diperlukan dalam penelitian.
Hal ini dilakukan untuk memperoleh informasi dan data yang diperlukan untuk
penulisan skripsi ini. referensi yang digunakan dapat berupa buku, jurnal, artikel, situs
internet yang berkaitan dengan penelitian ini.
2. Pengumpulan dan Perancangan Sistem
Pada tahap ini dilakukan pengumpulan dan perancangan sistem yang berhubungan
dengan penelitian ini seperti fungsi algoritma Boyer-Moore dan Algoritma Rabin-Karp
bisa bekerja dalam sebuah pencarian undang-undang agar penulis mengetahui karakter

Universitas Sumatera Utara

4

(string) yang akan dihitung, serta merancang sistem sesuai dengan rencanca yang telah

ditentukan, yaitu meliputi perancangan desain awal seperti button maupun font. Proses
perancangan ini berdasarkan pada batasan masalah dari penelitian ini.
3. Implementasi Sistem
Pada tahap ini pembuatan aplikasi pencarian undang-undang perlindungan anak telah
selesai dilaksanakan dengan mengimplementasikan algoritma Boyer-Moore dan algoritma
Rabin-Karp serta membandingkannya.
4. Pengujian Sistem
Pada tahap ini akan dilakukan pengujian terhadap sistem yang telah dikembangkan.
5. Dokumentasi Sistem
Melakukan pembuatan dokumentasi sistem mulai dari tahap awal hingga pengujian
sistem, untuk selanjutnya dibuat dalam bentuk laporan penelitian (skripsi).

1.7 Sistematika Penulisan
Sistematika penulisan skripsi ini terdiri dari beberapa bagian utama, yaitu:
BAB 1 PENDAHULUAN
Bab ini menjelaskan latar belakang judul skripsi ”Perbandingan Algoritma Boyer-Moore dan
Algoritma Rabin-Karp pada Pencarian Teks dalam Undang-Undang Perlindungan Anak”,
rumusan masalah, batasan masalah, tujuan penelitian, manfaatpenelitian, metode penelitian
dan sistematika penulisan.
BAB 2


LANDASAN TEORI

Bab ini berisi tentang penjelasan singkat mengenai Anak, Android, Android Studio, Query,
Search Engine, Algoritma, Algoritma string matching, Algoritma Boyer-Moore, dan
Algoritma Rabin-Karp.
BAB 3

ANALISIS DAN PERANCANGAN

Bab ini menjelaskan tentang analisis terhadap masalah penelitian dan perancangan terhadap
sistem yang akan dibangun, cara kerja sistem disertai pembuatan flowchart, Unified Modeling
Language (UML), Design Interface.
BAB 4

IMPLEMENTASI DAN PENGUJIAN

Bab ini berisi tentang pembuatan sistem dan coding sesuai dengan analisis dan perancangan,
kemudian melakukan pengujian sistem serta membahas hasil dari sistem.


Universitas Sumatera Utara

5

BAB 5

KESIMPULAN DAN SARAN

Bab ini memuat kesimpulan dari seluruh uraian bab maupun subbab yang sebelumnya beserta
saran berdasarkan hasil pengujian yang diharapkan dapat bermanfaat untuk penelitian yang
akan datang

Universitas Sumatera Utara