## Implementasi Algoritma Turbo Boyer Moore Pada Aplikasi Tarian Tradisional Berbasis Android

## Sulastri
Prodi Teknik Informatika, Universitas Budi Darma, Medan, Indonesia Email: trisulas597@gmail.com
Abstrak −Tarian  tradisional  adalah  sebuah  tari  yang  diwariskan  secara  turun  menurun  kepada  masyarakatnya  yang  tumbuh  dan berkembang pada daerah tertentu. Tarian tradisional ini memiliki suatu nilai historis yang tinggi dalam beradat istiadat. Tidak hanya memiliki  nilai  historis yang  tinggi  dalam  adat  istiadat, tarian  tradisional  juga  memiliki  makna  yang berbeda-beda  dari  satu daerah dengan  daerah  lainnya.  Dibuatlah  aplikasi  tarian  tradisional  berbasis  android  ini  yang  akan  berguna  untuk  kalangan  masyarakat khususnya remaja sebagai suatu informasi kepada mereka, dan akan lebih menghemat dalam pembelian buku tentang tarian daerah. Dengan adanya aplikasi ini akan lebih mempermudah pembaca untuk mengetahui makna dari sebuah tari yang ada di daerah masing- masing.  Algoritma  turbo  boyer  moore  merupakan  algoritma  turunan  dari  algoritma  boyer  moore.  Dimana  algoritma  turbo  boyer moore  ini  memiliki  keuggulan  yaitu  memiliki  kemungkinan  untuk  melompati  faktor  dari  sebuah  teks  dan  algoritma  turbo  boyer moore juga memiliki keunggulan mengizinkan pergeseran turbo.

## Kata Kunci : Tari Tradisional, Android, Turbo Boyer Moore
Abstract −Traditional dance is a dance that is passed down from the community to its people who grow and develop in certain areas. This  traditional  dance  has  a  high  historical  value  in  customs.  Not  only  does  it  have  high  historical  value  in  customs,  tradit ional dances also have different meanings from one region to another. This android-based traditional dance application was created which would  be  useful  for  the  community,  especially  teenagers,  as  information  for  them,  and  would  save  more  in  buying  books  about regional dances. With this application, it will make it easier for readers to find out the meaning of a dance in their respective areas. The moore turbo boyer algorithm is an algorithm derived from the moore boyer algorithm. Where the moore turbo boyer algorithm has the advantage of having the possibility to skip the factor of a text and the moore turbo boyer algorithm also has the advantage of allowing turbo shift.
Keywords : Traditional Dance, Android, Turbo Boyer Moore

## 1. PENDAHULUAN
Tari merupakan suatu gerakan yang dimainkan oleh tubuh yang diiringi dengan irama-irama tertentu sebagai ungkapan dari  suatu  perasaan,  maksud  dan  pikiran.  Tari  dapat  dibedakan  menjadi  empat  yaitu  tari  tradisional,  tari  klasik,  tari kreasi  dan  tari  kontemporer.  Tari  tradisional  merupakan  sebuah  tarian  yang  diwariskan  secara  turun  temurun  kepada masyarakatnya yang saat  ini tumbuh dan mulai  berkembang di  daerah tertentu. Dimana tari  tradisional memiliki nilai historis yang tinggi dan juga beradaptasi pada nilai adat dan istiadat di daerah tersebut.
Dengan  perkembangan  teknologi  yang  semakin  pesat,  kebudayaan  Indonesia  khususnya  tari  tradisional  sudah tidak lagi digemari oleh kalangan remaja, hal itu membuat  seni  tari  tradisional tidak lagi banyak dipertunjukan dalam acara pentas seni. Kalangan remaja lebih mengenal dan membudayakan tarian yang sedang populer saat ini yaitu tarian yang  bukan  menciri  khaskan  kebudayaan  Indonesia  seperti  tari-tarian  yang  dipertunjukan  oleh  artis-artis  di  televisi. Tidak  hanya  itu,  keterbatasan  sebuah  informasi  menyebabkan  kurangnya  minat  remaja  untuk  mengenal  atau  bahkan mempelajari kebudayaan Indonesia khususnya pada tarian tradisional.
Dengan demikian, perlunya sebuah informasi  yang praktis yang dapat diakses kapan saja dan dimana saja oleh semua masyarakat  khususnya para remaja. Hal  itu guna memberikan pengetahuan kepada masyarakat  khususnya para remaja  akan  pentingnya  mengenal  dan  memahami  kebudayaan  Indonesia  khususnya  pada  seni  tari  tradisional.  Maka dari  itu  aplikasi  yang  dirancang  ini  merupakan  sebuah  aplikasi  yang  akan  memperkenalkan  macam-macam  tarian tradisional beserta maknanya yang bersifat offline . Hal ini dapat membantu pengetahuan bagi remaja betapa pentingnya mengenal  dan  memahami  keindahan  budaya  yang  ada  di  daerahnya  khususnya  tentang  tarian  tradisional  serta  dapat membantu meminimalkan biaya dalam pembelian buku yang membahas tentang tarian tradisional.
Pada  penelitian  sebelumnya  telah  dilakukan  sebuah  penelitian  tentang  tarian  tradisional  dimana  didalam penelitian  tersebut  membahas  tentang  makna  dari  gerakan  tari  tor-tor  [1].  Dimana  dalam  penelitian  ini  membahas makna  dibalik  setiap  gerakan,  pola  lantai,  properti  yang  digunakan,  tatarias,  busana  yang  dikenakan,  panggung,  dan musik  yang  mengiringi  tari  tersebut.  Adapun  solusi  yang  dapat  ditarik  dari  permasalahan  tersebut  ialah  dengan  cara merancang  suatu  aplikasi  tarian  tradisional  berbasis  android  yang  dapat  diakses  dan  dipahami  dengan  mudah  oleh masyarakat khususnya para remaja. Maka sangat diperlukan string matching untuk pencarian nama tarian tersebut. Penelitian sebelumnya juga telah dilakukan sebuah perancangan aplikasi chord ukulele menggunakan algoritma turbo  boyer  moore [2] . Dimana  dalam  pencarian cord ukulele  tersebut  dilakukan  dengan  memasukan  judul  lagu  atau penyanyi  kedalam  kolom  pencarian.  Dari  permasalahan  tersebut  maka  dapat  ditarik  satu  solusi  ialah  bagaimana  cara merancang  suatu  aplikasi  tarian  tradisional  berbasis  android  dengan  menggunakan  algoritma string  matching salah satunya yaitu algoritma turbo boyer moore. Algoritma string  matching merupakan  suatu  algoritma  pencocokan string yang  sifatnya  mencari  sebuah string yang terdiri dari beberapa pattern (karakter) dalam jumlah teks yang besar. Untuk aplikasi tarian tradisional dan makna berbasis  android  dirancang  menggunakan  algoritna turbo  boyer  moore .  Algoritma turbo  boyer  moore adalah  sebuah
variasi  dari  algoritma boyer  moore. Bila  dibandingkan  dengan  algoritma boyer  moore, algoritma  ini  membutuhkan ruang lebih tapi tidak memerlukan pemrosesan ekstra. Teknik ini mempunyai dua keunggulan dimana algoritma turbo boyer moore memungkinkan untuk melompati faktor dari teks tersebut, dan mengizinkan pergeseran turbo [2]. Untuk mengatasi masalah pencarian tarian tradisional, maka digunakan algoritma string matching salah satunya yaitu  algoritma turbo  boyer  moore. Dengan  menggunakan  algoritma turbo  boyer  moore ,  pencarian  tarian  tradisional akan  dilakukan  dengan  cara  memasukan  judul  tari  pada  kotak  pencarian,  jika  tarian  ditemukan  maka  akan  muncul makna dibalik tarian tradisional tersebut. Dimana makna tersebut membahas tentang asal tari, gerakan, kostum dan lain sebagainya

## 2. METODOLOGI PENELITIAN

## 2.1 String Matching
String  Matching adalah  proses  pencarian  semua  kemunculan query yang  selanjutnya  disebut pattern ke  dalam string yang  lebih  panjang  (teks). Pattern dilambangkan  dengan  x=x[0..m-1]  dan  panjangnya  adalah  m.  Teks  dilambangkan dengan y=y[0..n-1] dan panjangnya adalah n. Kedua string terdiri dari sekumpulan karakter yang disebut alfabet yang dilambangkan  dengan  ∑  (sigma)  dan  mempunyai  ukuran  ơ  (tao). String  matching dibagi  menjadi  dua,  yakni exact matching dan heuristic atau statistical matching [6].

## 2.2 Exact Matching
Exact  matching digunakan  untuk  menemukan pattern yang  berasal  dari  satu  teks.  Contoh  pencarian exact  matching adalah pencarian kata pelajar dalam kalimat ”saya seorang pelajar” atau “saya seorang siswa”. Sistem akan memberikan hasil  kalimat  bahwa  kalimat  pertama  mengandung  kata  “pelajar”  sedangkan  kalimat  kedua  tidak,  meskipun kenyataannya pelajar dan siswa adalah kata yang  bersinonim. Algoritma exact  matching diklasifikasikan menjadi  tiga bagian menurut arah pencariannya, yaitu:
1. Arah pembaca dari kiri ke kanan. Algoritma yang termasuk kaegori ini adalah Brute Force, Knuth Morris and Pratt (yang kemudian dikembangkan oleh Knuth Morris dan Pratt).
2. Arah pembacaan dari kanan ke kiri. Algoritma yang termasuk kategori ini adalah Boyer dan Moore yang kemudian dikembangkan menjadi algoritma Turbo Boyer Moore, Tuned Boyer Moore dan Zhu Takaoka.
3. Arah  pembacaan  yang  ditentukan  pemrogram.  Algoritma  yang  termasuk  kategori  ini  adalah  algoritma Colussi, Crochemore-Perrin [6].

## 2.3 Algoritma Turbo Boyer Moore
Algoritma Turbo Boyer Moore adalah sebuah algoritma pencocokan pola tertentu terhadap suatu kalimat atau paagraf. Algoritma Turbo  Boyer  Moore merupakan  varian  dari  Algoritma Boyer  Moore yang  memungkinkan  terjadinya ‘lompatan’ melewati segmen yang tidak memerlukan preprosesing  tambahan dengan kecepatan yang baik. Algoritma Turbo Boyer Moore adalah sebuah perbaikan dari algoritma Boyer Moore. Algoritma Turbo Boyer Moore mengambil metode pencarian String Boyer Moore yaitu good suffix dan bad character suffix. Akan tetapi, algoritma Turbo Boyer Moore dimungkinkan terjadinya ‘lompatan’ melewati segmen mengingat  faktor dari  teks yang cocok dengan akhiran dari  pattern  selama  attempt  terakhir  sehingga  memanfaatkan  teknik turbo  shift. Algoritma Turbo  Boyer  Moore mempunyai dua keunggulan [7]. 1. Memungkinkan untuk melompati faktor dari teks tersebut.
2. Mengizinkan pergeseran turbo.
Proses perpindahan yang dilakukan pada saat  pencarian string, berbeda dengan proses perpindahan pada turbo. Proses  perpindahan  pada  turbo  hanya  dapat  dilakukan  pada  saat  melakukan  sebuah  perbandingan,  yaitu  panjang  dari sebuah karakter yang sama antara pattern dan teks.
Adapun prinsip kerja dari algoritma Turbo Boyer Moore sebagai berikut :
1. Algoritma Boyer Moore mulai mencocokkan pattern pada awal teks.
2. Dari kanan ke kiri, algoritma ini akan mencocokkan karakter per karakter pattern dengan karakter pada teks yang bersesuaian sampai salah satu kondisi berikut dipenuhi :
a. Di pattern dan di teks yang dibandingkan tidak cocok ( missmatch ).
b. Semua karakter di pattern cocok. Algoritma akan memberitahukan penemuan di posisi ini.
c. Algoritma  kemudian  menggeser pattern dengan  memaksimalkan  nilai  penggeseran good-suffix dan penggeseran bad-character , lalu mengulangi langkah 2 sampai pattern berada di ujung teks. Ketentuan : a. Shift by bmBc – m + (index bawah + 1 ) b. Shift by bmGs = Shift by bmBc [2].

## 3. HASIL DAN PEMBAHASAN
Algoritma turbo boyer moore dapat diterapkan dalam pencarian tarian tradisional berbasis android. Hal itu guna untuk mempermudah  pencarian  karakter  dalam  pencocokan pattern berdasarkan  dengan  teks.  Proses  pencarian  tarian tradisional  dilakukan  dengan  memasukan  judul  tari  pada  kolom  pencarian  yang  telah  tersedia  pada  aplikasi  tersebut. Jika tari yang dicari pada kolom pencarian tersebut ditemukan, maka akan ditampilkan makna dari tari tersebut. Tarian tradisional  dikumpulkan  dengan  cara  mencari  sebuah  referensi  yang  ada  pada  internet  kemudian  dikumpulkan  dan disimpan pada database.
Pencarian tarian tradisional ini dirancang dengan menggunakan algoritma Turbo Boyer Moore, dimana algoritma ini sebagai  solusi  dalam  pencarian  tarian  tradisional,  karena  banyaknya  macam-macam  tarian  di  wilayah  Indonesia sehingga  sangat  sulit  untuk  menampilkan  penyajian  tarian  tradisional  itu  menurut  dengan  abjadnya.  Tidak  hanya  itu, dengan  terbatasnya  ukuran  layar smartphone yang  dimiliki,  maka  sangat  diperlukan string  matching sebagai  suatu proses dalam pencarian. Dimana dalam algoritma string matching penyajian tarian tradisional akan lebih sedikit karena adanya proses pengecekan berdasarkan pattern.
Aplikasi pencarian tarian tradisional berbasis android ini dirancang dengan  menggunakan Eclipse Juno. Eclipse adalah  suatu IDE  (Integrated  Development  Environment) pengembang  aplikasi  pada  android.  Dalam  pengembangan aplikasi ini menggunakan bahasa pemograman Java. Penggunaan algoritma Turbo Boyer Moore untuk pencarian pattern dalam teks, seperti pada contoh dibawah ini:
Tabel 1. Kumpulan Data Tarian
Nama Tari Sekapur Sirih
Sirih Kuning Sirih Tanduk Serampang Dua Belas
Rentak Basapih
Pada  contoh  kasus  ini  tari  yang  akan  dicari  adalah  tari  Sekapur  Sirih  yang  berasal  dari  Jambi,  pencarian dilakukan berdasarkan judul tari, misalkan dalam pencarian digunakan kata/pattern “sirih”, maka proses pencariannya adalah sebagai berikut:
Teks : Sekapur Sirih Pattern : Sirih
Tabel 2. Tabel BmBc dan BmGs Index 0 1 2 3 4 Pattern S I R I H Pergeseran BmBc 4 3 2 1 0 Pergeseran BmGs 4 2 4 2 1 Temu Pola 1 Tari Sekapur Sirih-Jambi Teks S E K A P U R S I R I H 1 Pattern S I R I H
Pada pola pertama karakter pada pattern belum cocok, maka pattern digeser kekanan sebesar empat kali.
Temu Pola 2 Tari Sekapur Sirih-Jambi Teks S E K A P U R S I R I H 1 Pattern S I R I H
Pada pola kedua karakter pada pattern belum ada kecocokan, maka pattern digeser ke kanan sebesar empat kali.
Temu Pola 3 Tari Sekapur Sirih-Jambi Teks S E K A P U R S I R I H Pattern S I R I H
Pada pola ketiga pattern sudah mengalami kecocokan pada index terakhir.
Tari Sirih Tanduk-Riau Teks S I R I H T A N D U K - Pattern S I R I H
Pada  pencarian  tari  sirih  tanduk,  temu  pola  pertama  sudah  ditemukan pattern yang  dicari  maka  index  mengalami kecocokan.
Temu Pola 1 Tari Sirih Kuning-Jakarta Teks S I R I H K U N I N G - Pattern S I R I H
Begitu pula pada pencarian tari sirih kuning, pada temu pola pertama kecocokan  telah ditemukan.
Temu Pola 1 Tari Serampang Dua Belas-Sumatra Utara Teks S E R A M P A N G D U A B E L A S 1 Pattern S I R I H
Pada  Pencarain  tari  serampang  dua  belas  dilakukan  pencocokan pattern, karakter  pada pattern belum  cocok  dengan karakter pada teks maka pencarian di lanjutkan dengan menggeser karakter pattern sebanyak empat kali. Temu Pola 2
Tari Serampang Dua Belas-Sumatra Utara Teks S E R A M P A N G D U A B E L A S 1 Pattern S I R I H
Karakter pada pattern belum cocok dengan karakter pada teks maka pencarian di lanjutkan dengan menggeser karakter pattern sebanyak empat kali. Temu Pola 3
Tari Serampang Dua Belas-Sumatra Utara Teks S E R A M P A N G D U A B E L A S 1 Pattern S I  R I H
Karakter pada pattern belum cocok dengan karakter pada teks maka pencarian di lanjutkan dengan menggeser karakter pattern sebanyak empat kali. Temu Pola 4
Tari Serampang Dua Belas-Sumatra Utara Teks S E R A M P A N G D U A B E L A S
1 Pattern S I  R I H
Karakter pada pattern belum cocok dengan karakter pada teks maka pencarian di lanjutkan dengan menggeser karakter pattern sebanyak dua kali. Temu Pola 5
Tari Serampang Dua Belas-Sumatra Utara Teks S E R A M P A N G D U A B E L A S 1 Pattern S I R I H
Pada pola kelima karakter pada pattern tidak juga memiliki kecocokan dengan karakter pada teks. Maka pencarian tidak sesuai.
Temu Pola 1 Tari Rentak Basapih-Jambi Teks R E N T A K B A S A P I H 1 Pattern S I R I H
Pada Pencarain tari Rentak Basapih dilakukan pencocokan pattern, karakter pada pattern belum cocok dengan karakter pada teks maka pencarian di lanjutkan dengan menggeser karakter pattern sebanyak empat kali. Temu Pola 2
Tari Rentak Basapih-Jambi Teks R E N T A K B A S A P I H 1 Pattern S I R I H
Karakter pada pattern belum cocok dengan karakter pada teks maka pencarian di lanjutkan dengan menggeser karakter pattern sebanyak empat kali.
Temu Pola 3 Tari Rentak Basapih-Jambi Teks R E N T A K B A S A P I H 1 Pattern S I R I H
Karakter pada pattern belum cocok dengan karakter pada teks maka pencarian di lanjutkan dengan menggeser karakter pattern sebanyak satu kali.
Temu Pola 4 Tari Rentak Basapih-Jambi Teks R E N T A K B A S A P I H - Pattern S I R I H
Pada pola keempat juga tidak ditemukan karakter yang cocok dengan pattern. Maka pencarian tidak sesuai. Maka dari kelima contoh tarian diatas hanya ada tiga tarian yang akan muncul dalam pencarian tarian daerah dengan pattern sirih. Yaitu sekapur sirih, sirih tanduk, dan sirih kuning.

## 4. KESIMPULAN
Berdasarkan  analisa  dari  hasil  bab-bab  sebelumnya,  maka  dapat  ditarik  sebuah  kesimpulan,  dimana  dari  kesimpulan- kesimpulan tersebut  dapat  berguna bagi pembaca,  sehingga penulisan skripsi  ini dapat lebih bermanfaat  bagi. Adapun kesimpulan-kesimpulan yang dapat ditarik adalah sebagai berikut:
1. Algoritma turbo  boyer  moore dapat  diterapkan  dalam  pencarian  tarian  tradisional  berbasis  android.  Hal  itu  guna untuk mempermudah pencarian karakter dalam pencocokan pattern berdasarkan dengan teks. 2. Algoritma  turbo  boyer  moore  dapat  diimplementasikan  sebagai  solusi  dalam  pencarian  tarian  tradisional.  Karena banyaknya  nama  tarian  yang  ada  di  wilayah  Indonesia  dan  berhubung  keterbatasan  layar  dari  masing-masing smartphone, maka  diperlukan  string  matching  dalam  proses  pencarian  tarian  tradisional.  Dimana  dalam  algoritma ini penyajian tarian tradisional menjadi lebih sedikit karena adanya proses pengecekkan berdasarkan pattern.

## REFERENCES
[1] R.  Rayhanul  Safra,  Taat Kurnita,  “Bentuk  Penyajian  dan  Makna  Gerak  Tari Tortor  Pada  Upacara  Kematian Adat  Batak  Di Desa Penanggalan Kecamatan Penanggalan Kota Subulussalam Provinsi Aceh,” vol. nomor 4:28, 2016.
[2] K. Kunci, T. Boyer Moore PENDAHULUAN, and L. Belakang Masalah, “PERANCANGAN APLIKASI CHORD UKULELE BERBASIS  ANDROID  MENGGUNAKAN  ALGORITMA  TURBO  BOYER  MOORE  Oleh :  Sry  Asliza  Br  Purba (13110053).”
[3] Nurdin Usman, Konteks Implementasi Berbasis Kurikulum . Jakarta: PT.Raja Grafindo Persada, 2002.
[4] Guntur Seiawan, Implementasi Dalam Birokrasi Pembangunan . Bandung: Remaja Rosdakarya Offset, 2004.
[5] E. Rinaldi Munir, Algoritma dan Pemrograman dalam Pascal dan C,Revisi Ed. Bandung: Informatika Bandung, 2011.
[6] E. Yeni Anistyasari, dan Rahmi Fitri Riyanto Sarno, Semantic Search . Yogyakarta: Andi Offset, 2012.
[7] E. Charras C dan Lecroq, Hand Book Of Exact String Matching Algorithms . London: King’s College Publication, 2004.
[8] Jogiyanto Hartono, Pengenalan Komputer . Yogyakarta: CV Andi Offset, 2004.
[9] MADCOMS, Aplikasi Pemograman Web dengan PHP dan MySQL . Yogyakarta: Andika, 2006.
[10]  Rosa A.S dan M Shalahuddin, Ed., Rekayasa Perangkat Lunak . Bandung: Informatika Bandung, 2014.
[11]  J. Enterprise, Mengenal dasar-dasar pemograman android . Jakarta: Elex Media Komputindo, 2015.
[12]  Nazaruddin Safaat, Ed., Pemograman Aplikasi Mobile Smartphone dan Tablet Pc. Bandung: Informatika Bandung, 2012.
[13]  Rini Agustina Dodit Suprianto, Ed., pemograman aplikasi Android . Yogyakarta: Medikom, 2012.
[14]  Nadia Firly, Create Your Own Android Aplication . Jakarta: PT Elex Media Komputindo, 2018.
[15]  Janner Simarmata, Ed., Perancangan Basis Data . Yogyakarta: Andi Offset, 2007.
[16]  N. S. P. S. Harni Kusniyati, “APLIKASI EDUKASI BUDAYA TOBA SAMOSIR BERBASIS ANDROID,” Tek. Infomatika , vol. 9, no.1, 2016.
[17]  S.  K.  Alfa  Satyaputra,  M.Sc,  Eva  Maulina  Aritinang, Java  for  Beginners  with  Eclipse  4.2  Juno .  Jakarta:  Elex  Media Komputindo, 2012.