## APLIKASI CHATTERBOT MEMANFAATKAN ALGORITMA BOYER MOORE PADA PENDAFTARAN SISWA BARU
Rizky Tahara Shita 1) , Lauw Li Hin 2)
1,2 Universitas Budi Luhur, Fakultas Teknologi Informasi, Jl. Ciledug Raya. Petukangan Utara. Jakarta Selatan, Jakarta, 12260 Telp: (021) 5853753, Fax : (021) 5853753 E-mail: rizky.tahara@gmail.com 1) , lihinwap@gmail.com 2)

## Abstract
New student enrollment is always opened by each school and prospective students who will register must ask the officer about  the registration process, the learning process, the lesson, the schedule and the school  itself; and this also occurs in Assa'adatul Abadiyah Moslem Junior High School which often gets general questions that are often asked by prospective students. Sometimes the officer can answer well, but sometimes the questions are not answered  consistently  for  the  same  questions  raised  by  different  prospective  students  due  to  the  absence  of records for the frequently asked answers. To overcome this, there is a computer application called chatterbot; where  chatterbot  is  one  of  the  artificial  intelligence  products  that  can  make  conversations  in  the  form  of  text (chat) with humans and this can be achieved by applying certain algorithms to chatterbot can find answers from some  words  (keywords)  provided  by  the  asker.  The  algorithm  applied  to  be  an  important  role  in  providing answers, one of which is the Boyer Moore algorithm that can do word matching with the concept of search from right to left and with this application, it is expected that the frequently asked questions can be handled well just by doing some word input.
Keywords: Chatterbot, Boyer Moore

## Abstrak
Pendaftaran  siswa  baru  selalu  dibuka  oleh  tiap  sekolah  dan  calon  siswa  yang  akan  mendaftar  pasti  bertanya kepada petugas tentang proses pendaftaran, proses belajar, matapelajaran, jadwal maupun tentang sekolah itu sendiri; dan hal ini juga terjadi pada SMP Islam Assa’adatul Abadiyah yang sering mendapatkan pertanyaan umum  yang  sering  diajukan  oleh  calon  siswa.  Terkadang  petugas  dapat  menjawab  dengan  baik,  akan  tetapi terkadang  juga  pertanyaan  tidak  dijawab  dengan  konsisten  untuk  pertanyaan  yang  sama  yang  diajukan  oleh calon siswa yang berbeda yang disebabkan tidak adanya catatan untuk jawaban yang sering diajukan tersebut. Untuk  mengatasi  hal  ini,  maka  terdapat  sebuah  aplikasi  komputer  yang  disebut  dengan  chatterbot;  dimana chatterbot  adalah  salah  satu  produk intelejensia  buatan  yang dapat  melakukan percakapan dalam bentuk teks (chat) dengan manusia dan hal ini dapat dicapai dengan menerapkan algoritma tertentu agar chatterbot dapat mencari  jawaban  dari  beberapa  kata  (keyword)  yang  diberikan  oleh  penanya.  Algoritma  yang  diterapkan menjadi peranan penting dalam memberikan jawaban, salah satunya adalah algoritma Boyer Moore yang dapat melakukan  pencocokan  kata  dengan  konsep  pencarian  dari  kanan  ke  kiri  dan  dengan  adanya  aplikasi  ini, diharapkan  pertanyaan  yang  sering  diajukan  dapat  ditangani  dengan  baik  hanya  dengan  melakukan  input beberapa kata.
Kata kunci: Chatterbot, Boyer Moore
1. PENDAHULUAN
1.1. Latar Belakang Masalah SMP Islam Assa’adatul Abadiyah adalah salah satu  sekolah  yang  tiap  tahunnya  membuka penerimaan  siswa  baru.  Calon  siswa  yang  akan mendaftar  akan  melakukan  observasi,  mulai  dari pertanyaan  yang  umum  sampai  pada  yang  lebih spesifik.
Pertanyaan ini terkadang dapat dijawab dengan oleh para  petugas;  akan  tetapi  tidak  dapat  dipungkiri terkadang  juga  tidak  dapat  dijawab  dengan  baik; sehingga calon siswa kurang mendapatkan informasi yang akurat mengenai sekolah tersebut.
Chatterbot merupakan suatu aplikasi komputer yang dapat  berinteraksi  dengan  manusia  ( user )  dan berguna  untuk  mengetahui  suatu  informasi  yang dibutuhkan user .
Dengan  melakukan  pembuatan  aplikasi chatterbot , pertanyaan  yang  sering  diajukan  oleh  calon  siswa dapat  dikumpulkan  dalam  sebuah  database  dan aplikasi chatterbot dengan  algoritma  Boyer  Moore diharapkan  dapat  membantu  memberikan  informasi yang  dibutuhkan  dengan  melakukan  pencarian  kata tertentu yang dibutuhkan oleh calon siswa.

## 1.2. Masalah
Permasalahan yang terjadi selama penelitian :

## BIT VOL 14 No.2 September 2017                                    ISSN : 1693-9166
 Sulitnya  mendapatkan  informasi  yang konsisten terhadap sebuah pertanyaan  yang sering ditanyakan oleh calon siswa.
 Jawaban  dari  petugas  terkadang  tidak konsisten terhadap sebuah pertanyaan  yang sama,  hal  ini  dikarenakan  tidak  adanya jawaban  yang  dicatat  untuk  pertanyaan yang sering diajukan oleh calon siswa.
 Keterbatasan  kemampuan  manusia  untuk menjawab segala pertanyaan yang ditanyakan  oleh user dimana  pun  dan,
kapan pun.
1.3. Tujuan
Tujuan  dari  penulisan  ini  adalah  sebagai berikut :
 Mengurangi  waktu  yang  dibutuhkan  untuk mencari  informasi  yang  digunakan  dan dapat meringankan pekerjaan administrasi.
 Langsung  mendapatkan  informasi  yang dibutuhkan karena chatterbot
akan menjawab langsung pada pokok
permasalahan.
 Membuat aplikasi chatterbot dengan mencocokan  kata  ( string  text )  dengan  kata ( string  pattern )  menggunakan  algoritma Boyer Moore.
1.4. Batasan Masalah
Agar penelitian ini tidak keluar dari pembahasan maka  diperlukan  ruang lingkup masalah, seperti :
 Bagaimana program komputer dapat
mensimulasikan percakapan cerdas
terhadap  manusia  dengan  menggunakan bahasa Indonesia.
 Kata  yang  di  input  oleh user akan dicocokan  dengan  pattern  yang  ada  di database.
 Metode penelusuran menggunakan algoritma Boyer Moore.
2. LANDASAN TEORI
2.1 Chatterbot Pada  era  1950an  Turing  menerbitkan  artikel mengenai  " Computing  Machine  and  Intelligent ". Yang  merupakan  intisari  dari  tes  turing  tersebut adalah  mengenai  kriteria  dari  kecerdasan  mesin. Kriteria yang dimaksud bergantung pada
kemampuan sebuah program komputer untuk meniru manusia  dalam  hal  komunikasi  interaktif  real  time. Hasil  dari  test  turing  tersebut  merangsang  minat beberapa peneliti, termasuk Joseph
Weizenbaum(Berlin,  8  Januari  1923).  Dia  mampu menciptakan  ELIZA  yang  diterbitkan  pada  tahun 1966.
Pada  pengenalannya  pertama  kali,  user  percaya seakan  bercakap-cakap  dengan  manusia  nyata, padahal  tidak  demikian.  Metode  kunci  operasi  eliza melibatkan  komponen  kata-kata  isyarat  atau  frase yang  di input kan,  dan output yang  disajikan merupakan  tanggapan  yang  sebelumnya  telah disiapkan  dengan  alur  pergerakan  percakapan  maju yang  disesuaikan  dan  dianggap  tampak  bermakna, misalnya dengan menginputkan kalimat "MOTHER",  maka  respon  yang  ada  "TELL  ME MORE  ABOUT  YOUR  FAMILY".  Hasil  dari pemahaman  inputan  berhasil,  meskipun  pengolahan maksud  yang dirasa kurang  memiliki  bentuk respon yang dianggap tepat.
Eliza  menunjukan  bahwa  penafsiran  'cerdas' merupakan  ciri  program  sebagai chatbot tepatnya daripada  sebagai natural  language  processing system .  Adapun  yang  menjadi  sentralnya  adalah produksi  respon  yang  dihasilkan  dari  tiap-tiap inputan.
2.1.1 Cara Kerja
Mesin  komputer  menganalisis  semua  jawaban yang akan ditanyakan oleh user (manusia), jadi pada saat user menginput  pertanyaan  menggunakan bahasa  alami  dan  sistem  akan  menjawab  dengan respon  yang  masuk  akal  atau  bisa  dikatakan  cerdas untuk bahasa yang sebenarnya.

## 2.2 Boyer Moore
Algoritma  Boyer  Moore  diperkenalkan  oleh  Bob Boyer  dan  J.S.  Moore  pada  tahun  1977.  Pada Metode  ini  pencocokan  kata  dimulai  dari  karakter terakhir  kata  kunci  munuju  karakter  awalnya.  Jika terjadi perbedaan antara karakter terakhir kata kunci dengan  kata  yang  dicocokan,  maka  karakter- karakter  dalam  potongan  kata  yang  dicocokan  tadi akan  diperiksa  satu  per  satu.  Hal  ini  dimaksudkan untuk  mendeteksi  apakah  ada  karakter  yang  ada pada kata kunci.

## 2.2.1 Kelebihan
Berikut  ini  beberapa  kelebihan  yang  dimiliki  oleh Boyer Moore [7], yaitu:
 Dapat  memecahkan  hampir  sebagian  besar masalah.
 Algoritma  Boyer  Moore  semakin  panjang polanya waktu pencarian semakin singkat.

## 2.2.2 Kekurangan
Berikut  ini  beberapa  kelemahan  yang  dimiliki  oleh Boyer Moore [7], yaitu:

## BIT VOL 14 No.2 September 2017                                    ISSN : 1693-9166
 Efektifitas dari algoritma ini akan berkurang  seiring  dengan  bertambahnya jumlah alphabet (jenis karakter) dari teks.
 Lebih sulit dihapalkan.

## 2.2.3 Cara Kerja
Berikut  ini  beberapa  langkah  cara  kerja  yang dimiliki oleh Boyer Moore [7], yaitu:
 Melakukan pencocokan karakter  teks dengan  pattern  dari  karakter  yang  paling kanan.
 Jika terjadi tidak cocok, ada 2 kondisi :
◦ Jika  karakter  pada  teks  terdapat  pada pattern , maka pattern akan bergeser ke kanan sejauh panjang pattern .
◦ Jika  karakter  pada  teks  terdapat  pada pattern ,  maka pattern akan  bergeser  1 karakter ke kanan.
◦ Jika  karakter  pada  teks  cocok,  maka pemeriksaan  akan  bergeser  kekiri  dan melakukan  pencocokan  pada  karakter berikutnya.  Lalu  lakukan  langkah  2 sampai karakter paling kiri dari pattern.
3. ANALISA MASALAH DAN PERANCANGAN 3.1 Analisa Masalah
Permasalahan  yang  dihadapi  adalah  dimana  saat calon siswa yang ingin mendapatkan informasi pada website  memerlukan  waktu  yang  lama,  karena  user harus  membaca  setiap  page  untuk  mendapatkan informasi  yang  dicari.  Selain  dengan  menggunakan media elektronik, user juga dapat bertanya kebagian administrasi  untuk  mendapatkan  informasi  yang dibutuhkan. Akan tetapi hal tersebut akan menambah  beban  pekerjaan  dibagian  administrasi. Untuk  itu  adanya  aplikasi  cerdas  yang  mampu menggantikan  manusia  memberikan  respon  yang tepat  bagi user .  Hal  ini  tentu  saja  dimungkinkan mengingat  kemajuan  pada  bidang  kecerdasan  tiruan (AI) Artificial Intelligence yang semakin pesat.
3.2 Pemecahan Masalah Berdasarkan masalah yang dikemukakan sebelumnya,  maka  solusi  yang  mungkin  diterapkan adalah  dengan  membuat  suatu  aplikasi chatterbot yang menggunakan metode Boyer Moore yang dapat membantu  menyelesaikan  pertanyaan-pertanyaan dari user .  Komputer  akan  menjadi  media  untuk memberikan  informasi  yang  berguna  bagi  manusia dengan  menggunakan  teknik  tersebut.  Sehingga mempermudah manusia untuk mendapatkan informasi dengan cepat dan efektif.

## 3.3 Penerapan Algoritma
Algoritma Boyer Moore melakukan
perbandingan  dimulai  dari  kanan  ke  kiri,  tetapi pergerseran window tetap  dari  kiri  ke  kanan.  Jika terjadi  kecocokan  maka  dilakukan  perbandingan karakter  teks  dan  karakter  pola  yang  sebelumnya, yaitu  dengan  sama-sama  mengurangi  indeks  teks dan  pola  masing-masing  sebanyak  satu.  Jika  terjadi ketidakcocokan  maka  ada  beberapa  kondisi  untuk melakukan pergeseran. Kemungkinan ini berdasarkan  karakter  pada  teks  yang  menyebabkan terjadinya ketidakcocokan.

## 3.4 Rancangan Basis Data
3.4.1Class Diagram
Bentuk  Classs  Diagram  dari  struktur  database yang digunakan:

## 3.4.2 Spesifikasi Basis Data
 Tabel ms_account
Nama Field Tipe Panjang  Keterangan acc_id Int 3  Id acc_username  Varchar 35  Username acc_password  Varchar 64  Password acc_level Int 1  Level  Tabel ms_pattern Nama Field Tipe Panjang  Keterangan pattern_word Varchar 35  Pattern word pattern_index  Int 2  Pattern Index pattern_group  Int 11  Pattern Group chat_id Varchar 6  Chat Id Gambar 1: Class Diagram

## BIT VOL 14 No.2 September 2017                                    ISSN : 1693-9166
 Tabel ms_chat
Nama Field Tipe Panjang  Keterangan chat_id Varchar 6  Chat Id chat_answer  Longtext -  Chat Answer

## 3.5 User Interface
3.5.1 Form Chatterbot
Form chatterbot ini  terdapat textbox yang berguna  untuk  menginputkan  pertanyaan  yang dilakukan  oleh user dan  secara  langsung  akan dijawab oleh bot .

## 3.5.2 Flowchat Form Chatterbot
Flowchart ini merupakan alur dari proses untuk menampilkan form chatterbot :

## 3.5.3 Entry Obrolan
Form entry data  obrolan  serta  tombol  simpan  dan batal.  Juga  terdapat  list  data  obrolan  yang  sudah tersimpan di database serta tombol ubah dan hapus:

## 3.5.4 Flowchat Entry Obrolan
Flowchart  ini  merupakan  alur  dari  proses  untuk menampilkan form entry data obrolan:

## 3.5.5 Flowchat Boyer Moore
Flowchart  ini  merupakan  alur  dari  sebuah  proses untuk mendapatkan kata-kata yang dicari berdasarkan kata kunci. Berikut ini adalah flowchart Function Boyer Moore :

## Gambar 2: Form Chatterbot
Gambar 3: Flowchat Form
Chatterbot
Gambar 4: Flowchat Entry Obrolan
4. Hasil Implementasi dan Analisa Program 4.1 Implementasi
Implementasi  dari  analisa  yang  telah  dilakukan akan  diterapkan  agar  program chatterbot dapat digunakan  oleh user .  Tujuannya  adalah  untuk mengukur  sejauh  mana chatterbot ini  dapat
menyelesaikan
masalah.
Dengan adanya
pengimplementasian serta uji coba, dapat mempermudah  untuk  melihat  adanya  kekurangan pada  program  yang  telah  dibuat.  Sehingga,  pada masa yang akan datang dapat dilakukan pengembangan aplikasi kearah yang lebih baik lagi. Analisa  program  dilakukan  untuk  mengukur  sejauh mana  program  ini  dapat  berjalan  dengan  baik.  Pada program chatterbot ini  dibuat  beberapa  tampilan untuk  mempermudah  pemakai  dalam  menggunakan program  chatterbot  ini.  Implementasi  merupakan salah  satu  tahapan  dalam  pengembangan  aplikasi dan  aplikasi chatterbot ini  dibuat  menggunakan bahasa  pemrograman  PHP  dan  basis  datanya menggunakan MySQL.
4.2 Uji Kasus Program Chatterbot
dikembangkan menggunakan  PHP,  setiap  algoritma  yang  ada  pada aplikasi ini dibuat sedemikian rupa sehingga aplikasi ini  dapat  berjalan  dengan  cepat  dan  tidak membutuhkan persyaratan yang tinggi, ini telah diuji pada komputer dengan spesifikasi hardware sebagai berikut:
 Mainboard: ASUS
 Processor: AMD Brazos
 Memory: 6 GB
 Harddisk: 1 TB
Software  yang  digunakan  dalam  uji  coba  pada hardware di atas memiliki spesifikasi, yaitu :
 Operating  System  :  Microsoft  Windows  7 Ultimate 64-bit
 WEB Server : Apache
 Bahasa Pemrograman : PHP dan MySQL

## 4.2.1 Hasil Pengujian
Berikut  ini  adalah  hasil  pengujian  dari  kecepatan response  untuk  beberapa  kata  /  kalimat  yang diajukan  oleh  user  yang  terkait  dengan  pendaftaran sekolah: Kata / Kalimat Waktu (ms) Pembagian kelasnya bagaimana 96 Bagaimana prosedur pembagian kelas 114 Gimana cara daftar ulang 361 Dimana tempat melakukan pembayaran daftar ulang 400 Cara mendaftar sekolah gimana 272

## 4.3 Kelebihan
 Aplikasi chatterbot ini  efektif  membantu dalam menjawab pertanyaan.
 Aplikasi ini tidak membutuhkan persyaratan sistem yang canggih.
 Desain  antarmuka  pengguna  yang  menarik dan mudah digunakan.
4.4 Kekurangan
 Pada  saat user bertanya  dan bot menjawab yang  jawabannya  tidak  sesuai  dengan pertanyaan user ,  hal ini  disebabkan semakin  banyak  pertanyaan  yang  masuk pada  database  dan  pertanyaan  tersebut hampir sama dengan pertanyaan sebelumnya;  maka  bot  akan  menjawab bobot kata yang paling banyak.
 User  harus  memberikan  pertanyaan  yang sesuai dengan EYD (Ejaan Yang Disempurnakan).

## 5. PENUTUP
5.1 Kesimpulan
Kesimpulan  yang  dapat  diambil  dari  Aplikasi Chatterbot  dengan  memanfaatkan  Algoritma  Boyer Moore pada Pendaftaran Siswa Baru adalah  sebagai berikut :
 Algoritma Boyer Moore merupakan sebuah algoritma  yang  melakukan  pencocokan string  dengan  bergerak  dari  kanan  kekiri, semakin  panjang  polanya  waktu  pencarian semakin singkat.
 Implementasi  Algoritma  Boyer  Moore sangat  baik  dalam  proses  berpikir  pada komputer  untuk  melakukan  pencocokan string  yang  cepat  dan  akurat,  semakin banyak  data  percakapan  yang  disimpan akan semakin cerdas chatterbot .
 Pada  saat user bertanya  dan bot menjawab yang  jawabannya  tidak  sesuai  dengan pertanyaan user ,  hal  tersebut  dikarenakan semakin banyak pertanyaan-pertanyaan yang  masuk  ke  dalam  database  dan pertanyaan  tersebut  hampir  sama  dengan
Gambar 5: Flowchat Boyer Moore

## BIT VOL 14 No.2 September 2017                                    ISSN : 1693-9166
pertanyaan-pertanyaan  sebelumnya,  maka bot akan  menjawab  bobot  kata yang paling banyak.

## 5.2 Saran
Adapun  saran  yang  diterapkan  pada  konsep Algoritma Boyer Moore, yaitu:
 Dapat diadakan penelitian lanjutan terhadap metode  /  algoritma  lain  yang  lebih  baik untuk mengatasi kekurangan yang ada pada algoritma Boyer Moore.
 Perlu melakukan pembaharuan untuk menyempurnakan  sistem chatterbot ini, serta penambahan algoritma-algoritma yang sesuai dengan pencocokan kata.

## 6. DAFTAR PUSTAKA
[1] Fatima, Chairunnisa. Pencocokan String pada
Aplikasi Chatbot Sederhana. Institut Teknologi Bandung. Bandung
[2] Kusumadewi, Sri.
2003. Artificial Intelligence (Teknik dan Aplikasi).
Yogyakarta: Graha Ilmu [3] Paris H, Leonardi 2010, Mengenal Chat Bot, dilihat 30 April 2014 <http://10106365.blog.unikom.ac.id/mengena l- chat-bot.qz> [4] PuspitaN, Devia, Nurma Sari, Juni,
Rachmawati,  Heni.  Aplikasi  Chatterbot Untuk  SMA  Cendana  Rumabai  Dengan Menggunakan Metode Boyer Moore. Politeknik Caltex Riau. Pekanbaru.
[5] Sjukani,  Moh.  2010.  Algoritma  :  Algoritma dan Struktur Data 1 dengan C, C++ dan Java Edisi 6. Jakarta : Mutra Wancana Media
[6] Siswanto.  2010.  Kecerdasan  Tiruan  Edisi kedua. Yogyakarta: Graha Ilmu
[7] Utomo,  Darmawan,  Wijaya  harjo,  Eric, Handoko.  Perbandingan  Algoritma  String Searching  Brute  Force.  Knuth  Morris  Pratt, Boyer  Moore,  dan  Karp  Rabin  Pada  teks alkitab Bahasa Indonesia. UKSW. Salatiga