• Tidak ada hasil yang ditemukan

ANALISA PERBANDINGAN ALGORITMA BRUTE FOR

N/A
N/A
Protected

Academic year: 2018

Membagikan "ANALISA PERBANDINGAN ALGORITMA BRUTE FOR"

Copied!
7
0
0

Teks penuh

(1)

Analisa Perbandingan Algoritma Brute Force dan Boyer Moore Dalam Pencarian Word  

ANALISA PERBANDINGAN ALGORITMA BRUTE FORCE DAN

BOYER MOORE DALAM PENCARIAN WORD SUGGESTION

MENGGUNAKAN METODE PERBANDINGAN

EKSPONENSIAL

Andri Januardi (0911532)

Mahasiswa Program Studi Teknik Informatika STMIK Budi Darma Medan Jl. Sisingamangaraja No. 338 Sp. Limun Medan

http : www.stmik-budidarma.ac.id // Email: andri_januardi@yahoo.com

ABSTRAK

Word Suggestion adalah aplikasi pencari sugesti hasil terdekat dalam sebuah pencarian, dalam perancangannya aplikasi ini membutuhkan algoritma pencocokan string (String Matching). Algoritma Boyer Moore dan Algoritma Brute Force merupakan bagian dari algoritma String Matching yang memiliki cara kerja berbeda, sehingga jika diterapkan dalam pencarian Word Suggestion akan membuat kecepatan dalam pencariannya berbeda, mengakibatkan kecepatan pencarian informasi juga menjadi berbeda. Dengan adanya perbedaan tersebut, maka perlu adanya analisa yang membandingkan kedua algoritma string matching ini di dalam pencarian Word Suggestion.

Metode Perbandingan Eksponensial merupakan metode yang dapat menganalisa perbandingan kedua algortima tersebut. Sehingga dapat dilihat algoritma mana diantara kedua algoritma tersebut yang paling tepat digunakan dalam perancangan Word Suggestion.

Kata Kunci : Word Suggestion, Algoritma Brute Force, Algoritma Boyer Moore, Perbandingan Eksponensial

   

1. Pendahuluan 1.1 Latar Belakang

Hadirnya Mesin Pencarian (Search Engine) didalam sistem komputer memudahkan pengguna komputer dalam mencari berbagai informasi, untuk memudahkan penggunanya, Search Engine

menambahkan fitur pencari sugesti hasil terdekat dengan pencarian yaitu fitur Word Suggestion.

Dalam perancangannya Word Suggestion

membutuhkan algoritma pencocokan string (String Matching), yaitu algoritma yang dapat mencocokkan suatu kata dengan kata yang lain. Algoritma Boyer Moore dan Algoritma Brute Force merupakan bagian dari algoritma String Matching yang memiliki cara kerja berbeda, sehingga jika diterapkan dalam pencarian Word Suggestion akan membuat kecepatan dalam pencariannya berbeda, mengakibatkan kecepatan pencarian informasi juga menjadi berbeda.

Dengan adanya perbedaan tersebut, maka perlu adanya analisa yang membandingkan kedua algoritma

string matching ini di dalam pencarian Word Suggestion.Untuk dapat menganalisa perbandingan kedua algortima tersebut dalam pencarian Word Suggestion, maka dalam hal ini penulis menggunakan Metode Perbandingan Eksponensial.

1.2 Rumusan Masalah

1. Bagaimana cara kerja Algoritma Brute Force dan Algoritma Boyer Moore dalam melakukan pencarian Word Suggestion?

2. Bagaimana menerapkan Metode Perbandingan Eksponensial untuk menganalisa perbandingan dalam pencarian Word Suggestion?

3. Bagaimana merancang aplikasi untuk mensimulasikan Metode Perbandingan Eksponensial dalam menganalisa kecepatan Algoritma Brute Force dan Algoritma Boyer Moore pada pencarian Word Suggestion?

1.3 Tujuan Penelitian

1. Bagaimana cara kerja Algoritma Brute Force dan Algoritma Boyer Moore dalam melakukan pencarian Word Suggestion?

2. Bagaimana menerapkan Metode Perbandingan Eksponensial untuk menganalisa perbandingan dalam pencarian Word Suggestion?

3. Bagaimana merancang aplikasi untuk mensimulasikan Metode Perbandingan Eksponensial dalam menganalisa kecepatan Algoritma Brute Force dan Algoritma Boyer Moore pada pencarian Word Suggestion?

1.4 Manfaat Penelitian

1. Untuk dapat mengetahui perbedaaan kecepatan antara Algoritma Brute Force dan Algoritma

Boyer Moore dalam pencarian Word Suggestion.

2. Dapat dijadikan sebagai acuan dalam memilih antara Algoritma Brute Force atau Algoritma

(2)

Analisa Perbandingan Algoritma Brute Force dan Boyer Moore Dalam Pencarian Word   3. Untuk menghasilkan aplikasi yang

mensimulasikan analisa perbedaaan kecepatan pencarian Word Suggestion.

2. Landasan Teori 2.1 Word Suggestion

Word Suggestion merupakan kata berbahasa inggris yang berarti “Sugesti Kata”. Jika kita uraikan menurut Kamus Umum Bahasa Indonesia, “Kata” berarti apa-apa yang dilahirkan dengan ucapan ; bicara; cakap (Hal. 524), sedangkan “Sugesti” adalah anjuran; saran; pengaruh yang dapat menggerakkan hati orang (Hal. 789).

Menurut Fandi Pradhana (2012) Word Suggestion

merupakan fungsi dari Aplikasi Auto Text yang digunakan untuk memberikan saran terhadap kata yang akan diketik atau dicari. Dengan mengetikkan beberapa huruf atau seluruh huruf maka sistem akan mencari ke dalam database apakah ada sebuah kata yang memenuhi kriteria dari huruf-huruf yang dimasukkan. Jika setelah dicek dan ternyata di dalam

database ada, maka akan muncul list yang menunjukkan sugesti kata yang ada. Pengecekan itu sendiri berdasarkan dari kecocokan huruf dari kata yang dimasukkan user dengan list kata-kata yang ada di database.

2.2 Algoritma String Matching

String Matching is a very important subject in the wider domain of the text processing. String Matching consists in finding one, or more generally, all the occurences of a string (more generally caled a pattern) in a text. The pattern is denotaes by ; its length is equal to m. the text is denoted by ; its length is equal to n.

(Christian Charras dan Thierry Lecroq (2004:11) )

2.3 Algoritma Brute Force

The Brute Force Algorithm consists in cheking, at all positions in the text between 0 and , whether an occurence of the pattern starts there or not. then, after each attempt, it shifts the pattern by exactly one position to right. (Christian Charras dan Thierry Lecroq (2004:19))

2.4 Algoritma Boyer Moore

Boyer Moore is the algorithm scans the character of the pattern from right to left beginning with the rightmost one. In case of a mismatch(or complete match of the whole pattern) it uses two precomputed function to shift the window to right. These tho shift function are called the good-suffix shift (also called matching shift) and the bad-character shift (also called the occurence shift). (Christian Charras dan Thierry Lecroq (2004:91))

2.5 Metode Perbandingan Eksponensial

Menurut Marimin (2005), yang dikutip oleh Didie Nanda Pribadi (2011) Metode Perbandingan Eksponensial (MPE) merupakan salah satu metode

untuk menentukan urutan prioritas alternatif keputusan dengan kriteria jamak.

Metode Perbandingan Ekponensial memiliki prosedur dalam pengerjaannya, yaitu :

1. Menyusun alternatif-alternatif

2. Menentukan kriteria atau perbandingan

3. Menentukan tingkat kepentingan dari setiap kriteria keputusan.

4. Melakukan penilaian terhadap semua alternatif pada setiap kriteria.

5. Menghitung skor atau nilai total setiap alternatif. 6. Menentukan urutan prioritas keputusan

Adapun rumus matematika yang dipakai dalam menggunakan Metode Perbandingan Ekponensial adalah :

Gambar 1 Rumus Metode Perbandingan Eksponensial

Keterangan :

TNi : Total nilai alternatif ke-i

RKij : Derajat kepentingan relatif kriteria ke-j pada pilihan keputusan i

TKKj : Derajat kepentingan kriteria keputusan ke-j; TKKj > 0;

m : Jumlah kriteria keputusan n : Jumlah pilihan keputusan j : 1,2,3,…m; m : Jumlah kriteria

i :1,2,3,…,n; n : Jumlah pilihan alternatif

3. Analisa

3.1 Analisa Word Suggestion

Adapun cara kerja pencarian Word Suggestion

adalah sebagai berikut:

1. Misalnya seorang user ingin mencari kata “buku”. 2. User menggetikkan huruf pertama yaitu “b”. 3. Word Suggestion kemudian memeriksa semua

data pada database informasi yang huruf pertamanya mengandung huruf “b”.

4. Misalnya di dalam database informasi terdapat 4 data yaitu “abu”, “bus”, “buku”, “besi”.

5. Maka Word Suggestion akan menampilkan seluruh kata pada database yang diawali oleh huruf “b” sebagai sugesti dari kata yang dicari oleh user.

6. Jika user mengetikkan huruf-huruf berikutnya dari kata “buku” tadi, maka ini akan membuat hasil sugesti semakin tepat.

7. Misalnya user mengetikkan kata “buk”, maka

(3)

Analisa Perbandingan Algoritma Brute Force dan Boyer Moore Dalam Pencarian Word  

database tidak ditampilkan karena tiga huruf pertamanya tidak mengandung kata “buk”.

 

Tabel 1 Simulasi Pencarian Word Suggestion

Percobaan

Dari analisa Word Suggestion di atas, saat mencocokan kata yang diketikkan oleh user dengan data yang ada pada database informasi, word sugestion membutuhkan algoritma string matching

yang berkerja untuk melakukan pencocokan karakter, sehingga dapat menghasilkan sugesti yang tepat.

 

3.2 Cara Kerja Algoritma Brute Force Pada Word Suggestion

1. Menentukan pattern dan teks

Algoritma Brute Force adalah algoritma pencocokan string yang tediri dari dua komponen utama, yaitu pattern dan teks. Pattern adalah kata yang akan dicari, sedangkan teks adalah kata-kata yang akan dicocokan dengan pattern. Jika diimplementasikan kedalam pencarian Word Suggestion, maka yang menjadi pattern adalah kata yang diketikkan oleh user, sedangkan teks adalah kata-kata didalam database.

Berdasarkan dari contoh kasus analisa pencarian

Word Suggestion sebelumnya, maka pengelompokan

pattern dan teks dapat dilihat pada Tabel berikut :

Tabel 2 Pattern dan Teks Setelah Jumlah Hurufnya Disamakan

2. Proses pencarian Word Suggestion

Setelah pattern dan teks terbentuk maka proses selanjutnya adalah pencocokan karakter. Algoritma

Brute Force adalah algoritma yang melakukan pencocokan karakter dari sebelah kiri ke kesebelah kanan dan jika antara pattern dan teks terdapat kecocokan (match) maka algoritma akan menghasilkan nilai true.

Berikut adalah tabel yang mengambakan ilustrasi pencocokan karakter yang dilakukan oleh Algoritma

Brute Force.

Tabel 3. Simulasi Cara Kerja Algoritma Brute Force

Dalam Pencarian Word Suggestion

Pros

Berdasarkan analisa cara kerja diatas, menunjukkan bahwa Algoritma Brute Force dapat digunakan dengan baik pada pencarian Word Suggestion.

3.3 Cara Kerja Algoritma Boyer Moore Pada Word Suggestion

1. Menentukan Pattern dan Teks

Algoritma Boyer Moore adalah algoritma pencocokan string yang juga tediri dari dua komponen utama, yaitu pattern dan teks, dan untuk penentuan

(4)

Analisa Perbandingan Algoritma Brute Force dan Boyer Moore Dalam Pencarian Word   analisa percobaan Algoritma Brute Force, yaitu pada

Tabel 3.

2. Proses pencarian Word Suggestion

Setelah pattern dan teks terbentuk maka proses selanjutnya adalah melakukan pencocokan karakter. Berbeda dengan Algoritma Brute Force, Algoritma

Boyer Moore adalah algoritma yang melakukan pencocokan karakter dari sebelah kanan ke kesebelah kiri dan jika antara pattern dan teks terdapat kecocokan (match) maka algoritma akan menghasilkan nilai true.

Berikut adalah tabel yang mengambakan ilustrasi pencocokan karakter yang dilakukan oleh Algoritma

Boyer Moore.

Tabel 4. Simulasi Cara Kerja Algoritma Boyer Moore

Dalam Pencarian Word Suggestion

Pros

Berdasarkan analisa cara kerja diatas, menunjukkan bahwa Algoritma Boyer Moore juga dapat digunakan dengan baik pada pencarian Word Suggestion.

3.4 Analisa Perbandingan Metode Perbandingan Eksponensial

1. Menentukan Alternatif 

Untuk menganalisa perbandingan kecepatan antara Algoritma Brute Force dengan Algoritma

Boyer Moore dalam pencarian Word Suggestion, adapun yang menjadi Alternatif adalah Algoritma

Brute Force dan Algoritma Boyer Moore.  

2. Menentukan Kriteria 

Untuk dapat membandingkan kedua alternatif diatas, maka selanjutnya yang perlu dilakukan adalah

menentukan kriteria dalam analisa ini, Secara rinci kriteria dijelaskan pada tabel berikut :

Tabel 5. Penentuan Kriteria Kriteria Keterangan

Jumlah  Iterasi  Algoritma  

Perhitungan jumlah iterasi / perulangan (Looping) yang terjadi pada saat algoritma melakukan usaha pencocokan

string

Jumlah  Huruf  Pada 

pattern  

Jumlah huruf yang dicocokkan oleh algoritma.

 

3. Menentukan Bobot Kriteria 

Penentuan bobot merupakan salah satu komponen yang sangat berpengaruh terhadap hasil dari analisa, untuk itu penulis menetapkan bobot kriteria berdasarkan tingkat pengaruh dalam menentukan kecepatan dari algoritma dalam pencarian Word Suggestion. Secara rinci, pembobotan kriteria dijelaskan pada tabel berikut :

Tabel 6. Pembobotan Kriteria

Kriteria sangat tinggi karena semakin banyak perulangan / iterasi maka akan semakin lambat suatu algoritma

Jumlah huruf pada pattern

merupakan kriteria yang juga

mempengaru hi kecepatan, namun tidak lebih

berpengaruh dari pada iterasi

 

(5)

Analisa Perbandingan Algoritma Brute Force dan Boyer Moore Dalam Pencarian Word   Tahap ini adalah tahap dimana setiap kriteria

yang telah terbentuk diberi nilai. Untuk dapat memberikan nilai, berikut adalah contoh hasil simulasi pencarian Word Suggestion yang diambil dari pembahsan analisa Algoritma Brute Forcedan analisa Algoritma Boyer Moore sebelumnya.

Tabel 7 Pemberian Nilai Pada Setiap Kriteria

Kriteria

Alternatif Proses

ke- Jumlah Iterasi

Brute Force

3 9 3 1 4 1 2 6 2 Algoritma

Boyer Moore

3 6 3

5. Menghitung Skor 

Setelah nilai pada setiap kriteria dimasukkan, maka tahapan selanjutnya adalah melakukan perhitungan dengan menggunakan rumus Metode Perbandingan Eksponensial .

Tabel 8. Simulasi Perhitungan Analisa Menggunakan Metode Perbandingan Ekponensial

Kriteria

Total Nilai  16,968 14,812

Keterangan :

Contoh perhitungan : Nilai Pada Proses 1 Nilai BF = (4)0,8 + (1)0,2

= 4,031

Nilai BM = (4)0,8 + (1)0,2

= 4,031

6. Mentukan Prioritas Keputusan 

Setelah Total Nilai dari setiap alternatif dihitung maka yang tahapan selanjutnya adalah tahapan terakhir yaitu menentukan prioritas keputusan

berdasarkan total nilai dari setiap alternatif. Secara rinci dapat dilihat di tabel berikut.

Tabel 9. Prioritas Keputusan

Alternatif Total

Nilai Rangking Algoritma Boyer Moore  14,812 1

Algoritma Brute Force  16,968 2

Pada Tabel di atasTerlihat bahwa total nilai dari alternatif terendah yang memperoleh rangking pertama, hal ini dikarenakan semakin tinggi total nilai yang diperoleh maka akan semakin tinggi jumlah usaha yang dilakukan oleh algoritma tersebut dalam pencarian Word Suggestion.

Berdasarkan analisa tersebut maka Algoritma

Boyer Moore yang menjadi algoritma tercepat dalam pencarian Word Suggestion, serta permasalahan dalam penelitian ini dapat terpecahkan.

4. Algoritma Dan Implementasi

4.1 Algoritma Brute Force Pada Word Suggestion

Prodesur BruteForce (String x, String y) Boolean

{Prosedur pencocokan string yang dilakukan Algoritma Brute Force}

Deklarasi :

Integer IterasiBF, i, n;

Deskripsi :

IterasiBF ← 0;

4.2 Algoritma Boyer Moore Pada Word Suggestion

Prodesur BoyerMoore (String x, String y) Boolean

{Prosedur pencocokan string yang dilakukan Algoritma Boyer Moore}

(6)

Analisa Perbandingan Algoritma Brute Force dan Boyer Moore Dalam Pencarian Word  

IterasiBM ← IterasiBM + 1; If x[i] != y[i] Then

Return False; Endfor

Endif Endfor

Return True;

Else

Return False;

Endif

4.3 Algoritma Perbandingan Metode

Perbandingan Eksponensial

Algoritma Perhitungan Medote Perbandingan Eksponensial

{Tahapan perhitungan untuk menganalisa perbadingan Algoritma Brute Force dan Algoritma Boyer Moore menggunakan Metode Perbandingan Eksponensial}

Input :

Double BobotC1, BobotC2;

Double SkorBF, SkorBM;

String Kesimpulan;

String x ← huruf yang dari kata yang akan dicari; Output :

Kesimpulan ← Hasil Analisa;

Proses :

BobotC1 ← 0,8; BobotC2 ← 0,2;

SkorBF ← (IterasiBF ^ BobotC1) + (Length(x) ^ BobotC2);

SkorBM ← (IterasiBF ^ BobotC1) + (Length(x) ^ BobotC2);

If SkorBF > SkorBM Then

Kesimpulan ← “Algortima Tercepat Dalam Pencarian Word Suggestion Adalah Algortima Brute Force Karena Nilai Analisa Lebih Kecil (Jumlah Iterasi Kecil)”;

Elseif SkorBF < SkorBM Then

Kesimpulan ← "Algortima Tercepat Dalam Pencarian Word Suggestion Adalah Algortima Boyer Moore Karena Nilai Analisa Lebih Kecil (Jumlah Iterasi Kecil)";

Else

Kesimpulan ← "Algortima Sama Cepat Dalam Pencarian Word Suggestion"; Endif

4.4 Implementasi 1. Proses Input

Gambar 2. Tampilan Ketika User Menginputkan Pencarian

2. Proses Output

Gambar 3. Tampilan Grafik Perbangan Algoritma yang dilakukan MPE

Gambar 4. Tampilan Kesimpulan

5. Kesimpulan Dan Saran 5.1 Kesimpulan

1. Word Suggestion dapat dibuat menggunakan algoritma String Matching baik itu yang mencari karakter dari sebelah kiri dan dari sebelah kanan. 2. Untuk dapat menganalisa kedua algoritma ini,

(7)

Analisa Perbandingan Algoritma Brute Force dan Boyer Moore Dalam Pencarian Word   3. Dengan adanya total nilai dari perbandingan

eksponensial yang dilakkan pada penelitian ini maka terbukti bahwa Algoritma Boyer Moore

yang tercepat dalam melakukan pencarian Word Suggestion.

5.2 Saran

1. Dalam perbandingan menggunakan Metode Perbandingan Eksponensial disarankan algoritma yang dibandingankan ditambah dengan algoritma-algoritma String Matching lainnya.

2. Perangkat lunak yang dikembangkan disarankan dapat dirancang dengan berbasis web sehingga penerapannya juga akan menjadi lebih beragam, tidak hanya pada aplikasi desktop.

3. Diharapkan agar dapat menjadi referensi dan bahan pembelajaran untuk melakukan penelitian dengan objek berbeda selain Word Suggestion

DAFTAR PUSTAKA

[1] Fandi Pradhana. 2012. Penerapan String Matching pada Fitur Auto Correct dan Fitur Auto Text di Smart Phones. Bandung. Institut Teknologi Bandung.

[2] Christian Charras. Thierry Lecroq. 2004.Handbook of Exact String Matching Algorithms (E-Book). English .College Publications

[3] Didie Nanda Pribadi. 2011. Sistem Pendukung Keputusan Pemberian Reward kepada Karyawan Menggunakan Metode Perbadingan Eksponensial. http://ppta.stikom.edu/ upload/ upload/file/05410100136Makalah%20TA%20fix. pdf. Palembang. Universitas Bina Darma. Waktu Akses : 03 April 2013 01:12 WIB.

Gambar

Gambar 1 Rumus Metode Perbandingan Eksponensial
Tabel 3. Simulasi Cara Kerja Algoritma Brute Force Dalam Pencarian Word Suggestion
Tabel 4. Simulasi Cara Kerja Algoritma Boyer Moore Dalam Pencarian Word Suggestion
Tabel 7 Pemberian Nilai Pada Setiap Kriteria
+2

Referensi

Dokumen terkait

Pola yang digunakan dalam pencarian adalah data segment marker dari setiap segmen seperti yang telah ditunjukkan pada Tabel 1.. Algoritma Brute Force string matching

In making the dictionary, string matching methods are needed, the search method strings used in the making of this dictionary is the Boyer-Moore string search algorithm and

Judul : PERBANDINGAN ALGORITMA TURBO BOYER MOORE DAN STRING MATCHING ON ORDERED ALPHABETS UNTUK APLIKASI KAMUS FISIKA BERBASIS ANDROID.. Kategori

Penerapan String Matching Menggunakan Algoritma Boyer-Moore pada Translator Bahasa Pascal ke C.. Fitrianingsih &amp;

Dari gambar di atas tampak perbedaan jelas antara algoritma brute force dengan Knutt-Morris-Pratt dalam proses pencarian string, yaitu algoritma Knutt-Morris- Pratt

Hasil yang dicapai dari penerapan algoritma brute force dapat melakukan pencocokan string dan memberikan hasil yang diinginkan dsesuai dengan data pencarian pada katalog

Hasil penelitian menunjukkan bahwa pencarian string pada teks bahasa medis dengan menggunakan algoritma Boyer-Moore lebih. baik dibandingkan dengan algoritma

Algoritma brute force akan melakukan pencocokan string dengan data yang telah tersimpan dalam sebuah database dengan bantuan bahasa pemrograman PHP.. Berikut