• Tidak ada hasil yang ditemukan

ANALISIS DAN PERANCANGAN

3.2. Analisis Metode String Matching

Dalam melakukan pencarian solusi pada aplikasi permainan Word Scramble, aplikasi ini menggunakan metode String Matching. Dalam menentukan pattern yang akan dikembangkan, metode ini akan mencocokkan kata pada board dengn kata kunci untuk mencapai solusi yang diinginkan (goal). Secara umum langkah-langkah pencarian pada metode String matching adalah sebagai berikut :

a. Mulai mencocokkan pattern pada awal teks

b. Dimulai dari kiri kekanan, kanan kekiri, atas kebawah, bawah keatas, diagonal kanan kebawah, diagonal kiri keatas, diagonal kanan keatas, dan diagonal kiri kebawah. metode ini akan mencocokkan karakter perkarakter pattern dengan karakter di teks yang bersesuaian, sampai salah satu kondisi berikut terpenuhi :

1. Karakter di pattern dan di teks yang dibandingkan tidak cocok (mismatch).

2. Semua karakter di pattern cocok. Kemudian metode ini akan memberitahukan penemuan posisi ini.

c. Metode kemudian menggeser pattern berdasarkan table next, lalu mengulangi langkah 2 sampai pattern berada diujung teks.

Berikut flowchart dari langkah-langkah metode String Matching pada permainan word Scramble yang akan dibuat pada gambar 3.3

Yes START Load Kamus Load pattern Check Pattern h.f Check Pattern h.b No Check Pattern v.d No Check Pattern V.u No Check Pattern d.r.d No Check Pattern d.l.u No Check Pattern d.r.u Check Pattern d.l.d No No Simpan Koordinat Node Yes Yes Yes Yes Yes Yes End

Adapun penjelasan langkah-langkah pencarian solusi dengan metode String Matching pada permainan Word Scramble adalah sebagai berikut :

1. Load kamus (database) sebagai pengambilan data kata yang akan dicari pada board

2. Load pattern sebagai acuan pada aturan pencarian pada acakan kata

3. Memeriksa pattern dari horizontal forward, kata akan dicek apakah ada kata yang sesuai pada bagian ini apabila ada maka koordinat dari node ini akan disimpan dan apabila tidak ada maka akan diproses ke pengecekan berikutnya

4. Memeriksa pattern dari horizontal backward, kata akan dicek apakah ada kata yang sesuai pada bagian ini apabila ada maka koordinat dari node ini akan disimpan dan apabila tidak ada maka akan diproses ke pengecekan berikutnya 5. Memeriksa pattern dari vertical down, kata akan dicek apakah ada kata yang

sesuai pada bagian ini apabila ada maka koordinat dari node ini akan disimpan dan apabila tidak ada maka akan diproses ke pengecekan berikutnya

6. Memeriksa pattern dari vertical up, kata akan dicek apakah ada kata yang sesuai pada bagian ini apabila ada maka koordinat dari node ini akan disimpan dan apabila tidak ada maka akan diproses ke pengecekan berikutnya.

7. Memeriksa pattern dari diagonal right down, kata akan dicek apakah ada kata yang sesuai pada bagian ini apabila ada maka koordinat dari node ini akan disimpan dan apabila tidak ada maka akan diproses ke pengecekan berikutnya 8. Memeriksa pattern dari diagonal left up, kata akan dicek apakah ada kata yang

sesuai pada bagian ini apabila ada maka koordinat dari node ini akan disimpan dan apabila tidak ada maka akan diproses ke pengecekan berikutnya

9. Memeriksa pattern dari diagonal right up, kata akan dicek apakah ada kata yang sesuai pada bagian ini apabila ada maka koordinat dari node ini akan disimpan dan apabila tidak ada maka akan diproses ke pengecekan berikutnya

10.Memeriksa pattern dari diagonal left down, kata akan dicek apakah ada kata yang sesuai pada bagian ini apabila ada maka koordinat dari node ini akan disimpan dan apabila tidak ada maka akan diproses ke pengecekan berikutnya

3.2.1. Pencocokan Pattern

Pada metode String Matching, kita membutuhkan pencocokan string sesuai dengan pattern yang ada. Pattern berguna sebagai aturan prioritas node mana yang akan lebih dahulu dievaluasi atau diexpand. String awal yang digunakan penulis pada aplikasi ini yaitu, dengan menghitung ada berapa banyak kemungkinan huruf yang bisa terjadi sesuai pada kata kunci yang ada pada grid.

Sebagai contoh kita ingin mencari kata dari kata kunci LASAGNE sama seperti yang terlihat pada gambar berikut.

LASAGNE

Q

S

E

B

L

B

A

E

E

T

I

A

T

P

H

C

L

S

S

E

R

C

I

E

C

A

B

I

I

U

P

U

G

R

C

U

J

S

I

N

O

O

Q

O

Q

T

E

S

T

Gambar 3.4 Papan Permainan pada word Scramble

Kita akan mencari kata LASAGNE pada board yang teracak. Kata LASAGNE terdiri dari 7 huruf.

Untuk pengecekan pertama dilakukan dengan aturan pengecekan horizontal ke kanan. Kata kunci : L – A – S – A – G – N –E ……….. (1)

L – B –A ……… (2)

sesuai dengan kata kunci yaitu A. sehingga sistempun beralih ke pencarian posisi berikut nya.

Untuk pengecekan kedua dilakukan dengan aturan pengecekan horizontal ke kiri. Kata kunci : L – A – S – A – G – N –E ……….. (1)

L – B – E – S - Q ………(3)

Huruf awal yang muncul adalah L, kata L pada pengecekan Horizontal kekiri sesuai dengan kata kunci. Maka pencarian dilanjutkan. Huruf kedua adalah B dan tidak sesuai dengan kata kunci yaitu A. sehingga sistempun beralih ke pencarian posisi berikut nya.

Untuk pengecekan ketiga dilakukan dengan aturan pengecekan vertical keatas. Kata kunci : L – A – S – A – G – N –E ……….. (1)

L ………(4)

Huruf awal yang muncul adalah L, kata L pada pengecekan Horizontal keatas sesuai dengan kata kunci. Maka pencarian dilanjutkan. Huruf kedua tidak ditemukan dikarenan board yang digunakan terbentur dengan posisi kata yang dicari. sehingga sistempun beralih ke pencarian posisi berikut nya.

Untuk pengecekan ketiga dilakukan dengan aturan pengecekan vertical kebawah. Kata kunci : L – A – S – A – G – N –E ……….. (1)

L – A – S – A – G – N –E.………(5)

Huruf awal yang muncul adalah L, kata L pada pengecekan Vertikal kebawah sesuai dengan kata kunci. Maka pencarian dilanjutkan. Huruf kedua adalah A dan sesuai dengan kata kunci yaitu A. huruf bergeser ke S dan sesuai dengan kata kunci. huruf bergeser ke A dan sesuai dengan kata kunci. huruf bergeser ke G dan sesuai dengan kata kunci. huruf bergeser ke N dan sesuai dengan kata kunci. huruf bergeser ke E dan sesuai dengan kata kunci. Kata yang dicari sesuai dengan kata kunci sehingga

LASAGNE

Q

S

E

B

L

B

A

E

E

T

I

A

T

P

H

C

L

S

S

E

R

C

I

E

C

A

B

I

I

U

P

U

G

R

C

U

J

S

I

N

O

O

Q

O

Q

T

E

S

T

Gambar 3.5 Pencarian kata yang sesuai dengan kata kunci

Dokumen terkait