## Penerapan Algoritma

## K-Nearest Neighbor pada Game Pesawat untuk  Pembelajaran Matematika Dasar
YOULLIA INDRAWATI N, ASEP NANA HERMANA, MUHAMMAD KHARISMA Program Studi Informatika, Institut Teknologi Nasional Bandung Email : youllia@itenas.ac.id
Received 2 Oktober 2019 | Revised 15 November 2019 | Accepted 30 November 2019

## ABSTRAK
Pada tahun 2010, menurut hasil penelitian Computer Technology Reaserch (CTR), menyatakan bahwa manusia memiliki daya ingat sekitar 20% dari apa yang dilihat dan  memiliki  daya  ingat  sekitar  30%  dari  apa  yang  didengar.  Sementara  itu manusia memiliki daya ingat sekitar 50% dari apa yang dilihat dan didengar dalam waktu yang bersamaan. Persentasi daya ingat manusia yang terbesar adalah 80%, jika  ditampilkan  sesuatu  yang  dilihat,  didengar  dan  sesuatu  yang  dipraktekkan secara  bersamaan.  Untuk  mencapai  persentasi  ingatan  manusia  hingga  80%, dibutuhkan  suatu  metode  yang  membutuhkan  penggunaan  indera  penglihatan, pendengaran  dan  gerak  tubuh  secara  bersamaan  salah  satunya  adalah pembelajaran yang interaktif seperti game educative. Untuk membuat berhitung lebih  menyenangkan  dan  bisa  mengingat  sebesar  lebih  dari  50%,  maka dirancanglah  sebuah  game  yang  bernama  “Tembak  Matematika”  yang  memiliki tampilan  berupa  gambar-gambar  dan  angka  hitungan  matematika  serta  audio. Game Tembak Matematika bisa digunakan sebagai media belajar berhitung dan mengingat untuk anak usia sekolah dasar (SD).
Kata Kunci : Berhitung, K-Nearest Neighbor ,Game, Media Pembelajaran

## ABSTRACT
In 2010, according to research results from Computer Technology Research (CTR), it was stated that humans have a memory capacity of around 20% of what is seen, and a memory capacity of about 30% of what is heard. Meanwhile, humans have a memory of about 50% of what is seen and heard at the same time. The highest percentage of human memory is 80%, if displayed something that is seen, heard and something that is practiced simultaneously. To achieve a percentage of human memory up to 80%, we need a method that requires the use of the senses of sight and hearing and gestures simultaneously one of which is interactive learning such as educative games. To make math more fun and be able to remember for more than 50%, then designed a game called "Shoot Mathematics" which has a display of pictures and numbers on math and audio. Game Shoot Math can be used as a medium of learning to count and remember to children of primary school age (SD).
Keywords: Numeracy, K-Nearest Neighbor, Game, Media Education

## 1 . PENDAHULUAN
Pada tahun 2010, menurut hasil penelitian Computer Technology Reaserch (CTR), menyatakan bahwa manusia memiliki daya ingat sekitar 20% dari apa yang dilihat dan memiliki daya ingat sekitar 30% dari apa yang didengar. Sementara itu manusia memiliki daya ingat sekitar 50% dari  apa  yang  dilihat  dan  didengar  dalam  waktu  yang  bersamaan.  Persentasi  daya  ingat manusia  yang  terbesar  adalah  80%,  jika  ditampilkan  sesuatu  yang  dilihat,  didengar  dan sesuatu yang dipraktekkan secara bersamaan. Untuk mencapai persentasi ingatan manusia hingga 80%, dibutuhkan suatu metode yang membutuhkan penggunaan indera penglihatan, pendengaran  dan  gerak  tubuh  secara  bersamaan  salah  satunya  adalah  pembelajaan  yang interaktif seperti game educative (Musfiroh, 2008) .
Untuk membuat berhitung lebih menyenangkan dan bisa mengingat sebesar lebih dari 50%, maka dirancanglah sebuah game yang bernama “Tembak Matematika” yang memiliki tampilan berupa  gambar-gambar  dan  angka  hitungan  matematika  serta  audio.  Game  Tembak Matematika bisa digunakan sebagai media belajar berhitung dan mengingat untuk anak usia sekolah dasar (SD) (Mastoni, 2009) .
Dalam mengoperasikan game Tembak Matematika dibutuhkan algoritma K-Nearest Neighbor untuk mengetahui jarak euclidean antara pesawat jet dan alien sebagai target. Jika algoritma K-Nearest Neighbor tidak diterapkan, maka pesawat jet tidak akan bisa mendeteksi alien yang didekatinya.

## 1.2 Rumusan Masalah
Dari latar belakang masalah penelitian yang telah disampaikan adalah bagaimana menerapkan algoritma K-Nearest Neighbor untuk menghasilkan game berhitung antar muka yang sesuai untuk siswa sekolah dasar kelas 4.

## 1.3 Tujuan
Tujuan  Penelitian  yaitu  mengimplementasikan  algoritma K-Nearest  Neighbor  pada  game tembak untuk mata pelajaran Matematika bagi siswa Sekolah Dasar kelas 4.

## 1.4 Batasan Masalah
Pada game Tembak Matematika ini perlu didefinisikan sejauh mana pembuatan game ini dapat dikerjakan. Beberapa batasan tersebut yakni :
a. Algoritma K-Nearest Neighbor hanya digunakan untuk mencari posisi alien terdekat dengan pesawat jet.
b. Game  pesawat  ini  terdiri  dari  3  buah  tingkat  kesulitan,  yakni  easy,  normal,  dan  hard. Masing-masing tingkat kesulitan memiliki 10 level. Semakin sulit tingkatnya, semakin sulit soal yang diberikan.
1) Untuk mode easy : soal terdiri dari penjumlahan dan pengurangan.
2) Untuk mode normal : soal mode easy ditambahkan perkalian dan pembagian.
3) Untuk mode hard : soal mode normal ditambahkan akar dan pangkat.
c. Jawaban untuk setiap soal pada game ini hanya bilangan bulat.
d. Bilangan  dari soal yang tersedia 0 sampai 9.
e. Multimedia Development Life Cycle diimplementasikan sampai tahap testing.
f. Target user yaitu anak usia sekolah dasar.

## 1.5 Metodologi Penelitian
Pada pembuatan game yang berjudul “Implementasi Algoritma K-Nearest Neighbor pada game pesawat  untuk  pembelajaran  matematika  dasar”  akan  menggunakan  metodologi  penelitian Multimedia Development Life Cycle. Metodologi ini memiliki enam tahap, yaitu concept, design, material collecting, assembly, testing, dan distribution. Keenam tahapan tersebut tidak harus berurutan,  tetapi  tahap-tahap  tersebut  dapat  saling  bertukar  posisi.  Meskipun  begitu, tahap concept memang harus pertama  kali yang dilakukan. Tahap pengembangannya dapat ditunjukkan seperti pada Gambar 1 .
Gambar 1. Tahapan Multimedia Development Life Cycle.

## 2. LANDASAN TEORI

## 2.1 Algoritma K-Nearst Neighbor
Algoritma K  -  nearest  neighbor  (KNN)  adalah  suatu  metode  untuk  melakukan  klasifikasi terhadap objek yang diuji berdasarkan data pembelajaran yang jaraknya paling dekat dengan objek tersebut. Algoritma K - nearest neighbor (KNN) termasuk algoritma supervised learning, hasil  dari query  instance  yang  baru  (objek  uji)  akan  diklasifikasikan  dalam  bentuk  kelas berdasarkan mayoritas dari kategori pada KNN. Kelas hasil klasifikasi adalah kelas yang paling banyak muncul (Arifin, Arieshanti, & Arifin, 2013) .
Bentuk  algoritma  metode K-Nearest  Neighbor  (KNN)  adalah  sangat  sederhana.  Algoritma tersebut  bekerja  berdasarkan  jarak  terpendek  dari query  instance  ke  data  latih  (training sample) untuk menentukan nilai KNN-nya. Data latih diproyeksikan ke suatu ruang berdimensi banyak, tiap-tiap dimensi merepresentasikan fitur dari data. Ruang ini dibagi menjadi bagian- bagian berdasarkan klasifikasi data latih. Contoh sebuah titik pada ruang ini ditandai dengan nama kelas C, karena kelas C merupakan klasifikasi yang paling banyak muncul pada K buah tetangga terdekat dari titik tersebut. Dekat atau jauhnya jarak antara objek satu dengan objek tetangga dapat dihitung berdasarkan Euclidean Distance.
Euclidean  Distance  merupakan  rumus  yang  digunakan  untuk  menghitung  jarak  kesesuaian atau kedekatan. Euclidean distance berfungsi menguji ukuran yang dapat digunakan sebagai interpretasi jarak kedekatan antara dua buah obyek yang ditentukan. Perhitungan Algoritma K-Nearest Neighbor untuk kasus pembuatan game pesawat menggunakan algoritma K-Nearest Neighbor yaitu dengan mentukan titik koordinat x dan titik koordinat y serta menggunakan Persamaan (1) sebagai teorema Pitagoras.
Teorema pitagoras berfungsi untuk mengetahui jarak antara dua buah titik, yang dinamakan jarak Euclidean.

## 2.2 Education Game
Perkembangan teknologi video game yang semakin pesat dan video game merupaka media yang efektif  dan  interaktif sehingga  banyak  dikembangkan oleh  perindustrian.  Hal  tersebut menjadikan  teknologi  video  game  banyak  diaplikasikan  untuk  pendidikan  (edukasi)  yang berbasis game. Dengan adanya keberadaan teknologi video game tersebut, banyak dikalangan pendidik untuk memberikan materi pembelajaran dengan menggunakan komponen rancangan game  dan menerapkan  game  pada  kurikulum  dengan penggunaan  industri berbasis  game. Education game yang dibuat harus memiliki rancangan antarmuka yang interaktif dan mudah penggunaannya serta memiliki unsur menyenangkan dalam penggunaan aplikasinya (Hurd & Jenuings, 2009) .

## 2.2.1 Pengertian Education Game
Game edukasi merupakan game yang dirancang secara khusus untuk melatih pengguna dalam suatu  proses  pembelajaran,  pengembangan  konsep  dan  pemahaman  serta  membimbing mereka dalam melatih kemampuan mereka, serta memotivasi mereka untuk menggunakan dan memainkan game edukasi (Hurd & Jenuings, 2009) .

## 3.  METODE PENELITIAN
Pada tahap ini akan dibahas konsep dan desain dari game yang dikembangkan sesuai dengan metodologi penelitian yang digunakan yaitu multimedia development life cycle.

## 3.1 Konsep
Pada tahap ini di paparkan konsep dari game yang dikembangkan. Berikut adalah paparan kosep game yang dikembangkan:
a. Tema
Tema yang diangkat untuk game ini adalah tantangan. Tantangan lebih di titik beratkan kepada proses berhitung.
b. Judul Judul  yang  dipilih  adalah  Tembak  Matematika.  Karena user  menembak  alien  yang mempunyai soal matematika yang mengacu terhadap jawaban pada box jawaban.
c. Tokoh/karakter Dalam game ini terdapat dua tokoh, diantaranya :
(1) Pesawat jet
Pesawat  jet  mempunyai  watak  superhero  dan  bersifat  protagonis,  siap  untuk membasmi alien-alien dengan cara menghitung jawaban yang benar lalu tembak untuk membasmi alien.
(2) Pesawat Alien
Alien mempunyai sifat antagonis siap untuk menghindari pesawat tempur yang coba untuk membasmi alien.
d. Media masukan
Media masukan yang digunakan dalam game ini adalah keyboard.

## 3.2 Desain
Tahap  ini  memaparkan  rancangan  game  yang  di  kembangkan  dan  rancangan  penerapan algoritma K-Nearest Neighbor. alur cerita direpresentasikan melalui storyboard dan storyline, sedangkan k-nearest dijelaskan melalui flowchart.

## 3.2.1 Storyline
Storyline merupakan sebuah tulisan yang digunakan untuk mengembangkan ide cerita dalam pembuatan game. Di dalam  storyline terdapat beberapa point yang menjadi gambaran secara garis  besar  sebuah scene  tertentu.  Dalam  game  tembak  matematik  yang  menggunakan algoritma K-Nearest Neighbor, storyline yang dibuat antara lain sebagai berikut.
1. Menu Awal
Pada menu awal terdiri dari Play, About dan Exit.
2. Menu Utama
Pada menu Utama terdapat tingkan kesulitan yaitu easy, normal dan hard.
3. Tampilan permainan
Terdapat pesawat jet dan beberapa alien serta jawaban dan soal.
4. Tampilan Alien Tertembak
Salah satu alien mempunyai soal yang benar, lalu pesawat jet menembak alien tersebut dengan menekan tombol spasi.
3.2.2 Storyboard Dalam game  pesawat  yang  menggunakan  algoritma  K-Nearest  Neighbor,  storyboard  yang dibuat  antara  lain  sebagai  berikut.  Gambar  3  di  bawah  ini  adalah  contoh storyboard  yang menggambarkan halaman Menu Utama dari aplikasi game edukasi. Pada halaman menu utama tersebut  memiliki  tiga  buah  tombol  yaitu  tombol Play,  About,  dan  Exit.  Judul  Game  pada tengah-tengah di atas tombol play.

## Gambar 3. Storyboard Menu Utama

## 3.2.3 Flowchart  K-nearest
K-nearest diimplementasikan dalam game ini pada saat pesawat tempur menembak target. Jadi pesawat alien akan menghalangi jalan dari pesawat tempur, untuk menghindari tabrakan pesawat tempur harus menembak jatuh pesawat alien. Disetiap pesawat alien membawa 2 angka dan satu tanda operator. Pesawat alien yang bisa di tembak jatuh adalah pesawat yang apabila angkanya di hitung nilainya sama dengan jawaban yang sudah di tentukan. Karena target dari game ini adalah anak sekolah dasar maka kontrol dari game ini dibuat sederhana. Pemain tidak perlu mengarahkan tembakan ke target, pemain hanya mendekati target lalu tekan  tombol  spasi untuk  menembak. Tembakan  otomatis mengarah  pada target  terdekat. Untuk merealisasikan hal tersebut dapat dilakukan dengan algoritma k-nearest berikut adalah flowchart dari k-nearest:
Gambar 3. FlowChart Algoritma K-Nearest Neighbor

## 3.3 Contoh Kasus
Contoh kasus penerapan algoritma K-Nearest Neighbor untuk menembak alien terdekat yang memiliki jawaban yang sesuai dengan soal :
1. Player menekan tombol tembak.
2. Maka proses K-Nearest Neighbor akan dimulai, yaitu:
3. Menampung jawaban dari soal, misal jika soalnya adalah 1+3=4, maka 4 adalah nilai yang di tampung
4. Menampung data jet, dimana data yang dilihat adalah posisi jet yang di representasikan oleh  x  dan  y.  misal  jika  jet  tersebut  berada  di  kordinat  (200,200)  maka  data  di representasikan seperti Tabel 1 :
Tabel 1. Koordinat Jet Axis Kordinat x 200 y 200

## Gambar 4. Perhitungan Titik Koordinat
5. Pada Gambar 4 dijelaskan mengenai perhitungan titik koordinat yang berada di kanan atas dari gambar, menampung data masing-masing alien dimana setiap alien memiliki data: x, y, jawaban dan jarak, dimana data x,y jawaban telah terisi tetapi data jarak belum terisi. Misal jika terdapat 5 alien, maka data dari 5 alien tersebut disimpan seperti yang di representasikan oleh Tabel 2.
Tabel 2. Koordinat Alien No  Alien x y jawaban  Jarak 1 Alien 1  350  400 14 0 2 Alien 2  270  300 35 0 3 Alien 3  140  190 2 0 4 Alien 4  120  180 4 0 5 Alien 5  500  670 16 0

## Gambar 5. Perhitungan Teorema Pitagoras
6. Pada  Gambar  5  dijelaskan  mengenai  perhitungan  pitagoras.  Titik  x  dan  titik  y  sudah diketahui,  mencari  panjang  diagonal  seperti  pada  Gambar  5,  menggunakan  teorema pitagoras dengan formula Persamaan (1) seperti berikut,
Sehingga jika diterapkan pada setiap alien akan menghasilkan nilai jarak. Sebagai contoh jarak antara jet dengan alien pertama dapat dihasilkan dengan hasil akar dari (x2-x1) kuadrat + (y2-y1) kuadrat dimana:
X1: nilai x dari alien 1 Y1: nilai y dari alien 1
y x 100 200 300 400 500 100 200 300 400 500 x = 150 y = 200 ?
X2: nilai x dari jet Y2: nilai y dari jet Sehingga jika nilai x dan y tersebut dimasukkan pada teorema pitagoras, menghasilkan:
= (200 − 350) + (200 − 400)
= (150) + (200)
= √22500 + 40000 = √22500 + 40000 = √62500 =250 Maka jarak diagonal adalah 250 Data akan terbentuk pada Tabel 3 berikut ini:
Tabel 3. Koordinat Alien Setelah Dihitung
Index  Alien x y jawaban Jarak 1 Alien 1  350  400  14 250 2 Alien 2  270  300  35 197.230 3 Alien 3  140  190  2 41.231 4 Alien 4  120  180  4 28.284 5 Alien 5  500  670  16 617.170
7. Setelah  mendapatkan  semua  jarak  dari  masing-masing  alien  maka  urutkan  alien  secara ascending berdasarkan jarak, seperti Tabel 4.
Tabel 4. Koordinat Alien Setelah Dihitung Secara Ascending Index  Alien x y jawaban Jarak 1 Alien 4  120  180  4 28.284 2 Alien 3  140  190  2 41.231 3 Alien 2  270  300  35 197.230 4 Alien 1  350  400  14 291.547 5 Alien 5  500  670  16 617.170
8. Tentukan nilai K. nilai K yang di pakai dalam program ini adalah K=2, maka ambilah  alien yang berada di dalam 2 index teratas yaitu index 1 dan 2 dan dihasilkan alien 4 dan alien 3
9. Periksalah masing masing jawaban dari alien 3 dan alien 4. Apabila salah satu dari alien tersebut memiliki jawaban yang sesuai dengan soal maka tembaklah alien tersebut, apabila 2  alien  tersebut  memilki  jawaban  yang  sama  dengan  soal  maka  tembaklah  kedua  alien tersebut, apabila kedua alien tersebut tidak memiliki jawaban yang sama dengan soal maka jet tidak akan menembak ke alien manapun maka nyawa berkurang.

## 4 HASIL DAN PEMBAHASAN

## 4.1 Material Collecting

## Gambar 6. Pesawat Tempur
Pada Gambar 6 adalah gambar pesawat tmpur pada game yang fungsinya sebagai pemeran utama dalam game.

## Gambar 7. Alien
Gambar 7 adalah gambar beberapa alien menurut warna nya, pada warna kuning akan muncul operator tambah (+), warna hijau akan muncul operator minus (-), warna merah akan muncul operator akar (sqrt) dan pada warna biru akan muncul operator kali (*).

## Gambar 8. Box Jawaban
Gambar 8 adalah adalah box jawaban berfungsi untuk menyimpan jawaban yang akan menjadi acuan untuk menembak alien.

## Gambar 9. Efek Tembak
Gambar  9  adalah  efek  dari  tembakan  pesawat  tempur  bila  ada  soal  yang  cocok  dengan jawaban.

## 4.2 Pengujian Sistem
Pengujian aplikasi game edukasi ini menggunakan metode alfa dan beta, dimana metode alfa menggunakan metode black box
4.2.1 pengujian alfa
Pada aplikasi yang dirancang  ini, dilakukan  pengujian alfa  untuk menjalankan algoritma  K- Nearest Neighbor. Pengujian dilakukan untuk mengetahui apakah algoritma ini telah sesuai dengan  keingina.  Berikut  ini  akan  ditampilkan  tabel  pengujian  uang  dilakukan  dengan menggunakan metode pengujian Black Box serta hasil dari pengujian tersebut.
Tabel 5. Pengujian Alfa menggunakan metode Black Box Kasus dan Hasil Uji Hal yang diuji Yang diharapkan Pengamatan Kesimpulan Menentukan nilai jawaban secara random
Jawaban tampil secara random Jawaban tampil secara random Tercapai Menampung data jet x, y Data jet x, y tertampung Data jet x, y tertampung Menampung data alien x, y Data alien x, y tertampung Data alien x, y tertampung Mencari jarak menggunakan pytagoras Antara alien dan jet Hasil jarak Antara alien dan jet Hasil jarak Antara alien dan jet
Kasus dan Hasil Uji Hal yang diuji Yang diharapkan Pengamatan Kesimpulan Ascending data jarak Antara alien dan jet Data tersusun secara ascending Data tersusun secara ascending Tentukan dua jarak terdekat Antara alien dan jet Terdapat dua jarak terdekat Antara alien dan jet Terdapat dua jarak terdekat Antara alien dan jet Mengambil salah satu jawaban yang benar dari dua jarak yang terdekat Antara alien dan jet Terpilih satu jawaban yang benar dari dua jarak Terpilih satu jawaban yang benar dari dua jarak 4.2.2 pengujian algoritma k-nearest neighbor kedalam aplikasi game
Berikut  adalah  hasil  dari  pengujian  Algoritma K-Nearest  Neighbor  dengan  aplikasi  ,  dapat dilihat dari Gambar 10.
Gambar 10. Hasil Algoritma K-Nearest Neighbor  Ke dalam Aplikasi
Pengujian ini dapat dibuktikan, bahwa algoritma K-Nearest Neighbor  sudah di imppletasikan kedalam aplikasi game Tembak Matematika.

## 4.2.3 pengujian beta
Pengujian ini dilakukan terhadap siswa usia sekolah dasar, pengujian beta ini berfungsi untuk mengetahui  respon  pemain  terhadap game  Tembak  Matematika  yang  sudah terimplementasikan.
Berikut ini hasil perolehan pengujian beta:
1. Lima dari sepuluh anak menyukai game tembak matematika.
2. Lima dari sepuluh anak beranggapan game tembak matematika sulit untuk di mainkan.

## 5 KESIMPULAN
Berdasarkan  dari  hasil  implementasi  algoritma  yang  telah  dilakukan  pada game  tembak matematika,  dapat  disimpulkan  bahwa,  implementasi  berhasil  dilakukan.  Dengan  adanya algoritma ini pesawat jet dapat mendeteksi dimana jawaban dari alien yang benar. Dengan berhasilnya algoritma yang diterapkan terhadap game tembak matematika ini, game Tembak Matematika ini bisa menjadi media pembelajaran alternatif untuk anak usia sekolah dasar (SD).

## 6 DAFTAR RUJUKAN
_________. (2010, September 13). Video Games Lead to Faster Decisions that are No Less Accurate. Diambil kembali dari University of Rochester:
https://rochester.edu/news/show.php?id=3679
Arifin, A. D., Arieshanti, I., & Arifin, A. Z. (2013). Implementasi Algoritma K-Nearest Neighbor yang berdasarkan One Pass Clustering Untuk Kategori Teks. Paper and Presentation, Informatics Engineering, RSIf 518.1 Ari i, 2012. Surabaya: ITS Library. Diambil kembali dari  https://docplayer.info/35029019-Implementasi-algoritma-k-nearest-neighbour- yang-berdasarkan-one-pass-clustering-untuk-kategorisasi-teks.html.
Hurd, D., & Jenuings, E. (2009). Standardized Educational Games Rating: Suggested Criteria.
Karya Tulis Ilmiah.
Mastoni. (2009). Belajar Calistung pada Anak Usia Dini. Jurusan Matematika Fakultas Sains dan Teknologi UIN Malang.
Musfiroh, T. (2008). Cerdas Melalui Bermain. Jakarta: Grasindo.
Suyanto. (2011). Artificial Intelligence. Bandung: Informatika.
Yosep, & Setiawan, W. (2008). Model Pembelajaran Gaya Belajar VARK dalam Mata Pelajaran Teknologi  Informasi  Dan  Komunikasi  Berbasis  Multimedia  Interaktif.  Universitas Pendidikan Indonesia Bandung.