## SISTEM PENDUKUNG KEPUTUSAN PENENTUAN CALON PENERIMA KARTU JAKARTA PINTAR (KJP) MENGGUNAKAN K-NEAREST NEIGHBOR
Retnani Latifah 1 , Emi Susilowati 2 , Wulan Febriyanti 3 1,2,3 Teknik Informatika, Fakultas Teknik, Universitas Muhammadiyah Jakarta retnani.latifah@ftumj.ac.id 1 , emi.susilowati@ftumj.ac.id 2 , wulanfebri1402@gmail.com 3

## Abstrak
Pemerintah provinsi DKI Jakarta memiliki program Kartu Jakarta Pintar (KJP) yang ditujukan untuk para siswa yang berdomisili di Jakarta. Kartu tersebut merupakan salah  satu  bentuk  kepedulian  dan  bantuan  pemerintah  provinsi  DKI  Jakarta  di pendidikan.  SMK  XYZ  merupakan  salah  satu  sekolah  yang  diberi  kewenangan untuk mengajukan siswa mana yang berhak mendapatkan KJP. Namun, dalam proses pengajuan SMK XYZ mengalami beberapa kesulitan yaitu proses seleksi siswa di sekolah dilakukan secara manual oleh guru. Hal ini menyebabkan adanya kebutuhan untuk membuat suatu sistem yang secara otomatis dapat memberikan rekomendasi apakah  seorang  siswa  berhak  mendapatkan  KJP  atau  tidak.  Proses  rekomendasi dilakukan dengan memanfaatkan algoritma K-Nearest Neighbor (KNN) yang secara otomatis  mengelompokkan  siswa  sesuai  dengan  hasil  pembelajaran  mesin  yang dilakukan. Akurasi  KNN  diuji  dengan  cara  memakai  40  data  siswa  yang  melalui proses  5 cross  fold  validation dengan  jumlah  k  tetangga  3,  5,  dan  7.  Hasilnya diperoleh bahwa rata-rata akurasi tertinggi dari 5 cross fold validation adalah 74.93% dengan k=3. Di mana nilai akurasi tertinggi adalah 91.67% dengan k=3.
Kata Kunci: sistem pendukung keputusan,sistem rekomendasi,klasifikasi,KNN, KJP

## Abstract
Jakarta’s  government  has  a  program  called  Kartu  Jakarta  Pintar  (KJP  /  Jakarta’s Smart Card) which target the students living in Jakarta. This program showed that Jakarta’s government has concern and support for education. SMK XYZ is a school in Jakarta which has an authority to select some students to get KJP. In the process there is a problem in selecting the students because it was done manually by the teachers.  This  called  the  need  to  build  a  system  which  can  automatically  give recommendation whether a student could get a KJP or not. The recommendation was done  by  using  K-Nearest  Neighbot  (KNN)  which  could  give  an  automatic recommendation about a student based on how the machine learned. The accuration of the KNN was tested by testing 40 data which going through 5 cross fold validation with the number of k neighbors are 3, 5 and 7. The highest average accuration of 5- cross validation was 74.93% with k=3. While the highest accuration was 91.67% with k=3.
Keywords: decision support system, recommender system, classification, KNN, KJP
1. Pendahuluan
Beberapa  siswa  di  Jakarta  memiliki kesempatan untuk mendapatkan kartu jakarta
pintar  (KJP)  dari  pemerintah  provinsi  DKI Jakarta.  KJP  merupakan  program  strategis untuk  memberikan  akses  bagi  warga  Jakarta dari kalangan masyarakat tidak mampu untuk
mengambil  pendidikan  minimal  sampai dengan  tamat  SMA/SMK  dengan  dibiayai penuh  oleh  APBD  Provinsi  DKI  Jakarta (Kartu Jakarta Pintar, 2016). Beberapa sekolah di  Jakarta  diberi  kewenangan  untuk melakukan seleksi untuk memilih siswa mana saja  yang  berhak  mendapatkan  KJP.  Seleksi dilakukan  secara  manual  yaitu  melakukan pengecekan  berkas-berkas  setiap  siswa.  Hal ini  menyulitkan  sekolah  karena  siswa  yang dimiliki banyak.
Pemerintah  provinsi  Jakarta  memiliki sebuah  aplikasi  web  yang  dapat  digunakan sekolah  untuk  mendaftarkan  siswa  yang berhak  menerima  KJP.  Namun,  standar  yang digunakan  di  aplikasi  tersebut  tidak  sama dengan yang digunakan oleh beberapa sekolah sehingga  menyulitkan  dalam  pengumpulan data antara lain karena data siswa yang telah disetujui oleh sekolah ditolak oleh aplikasi.
SMK XYZ merupakan salah satu SMA di  Jakarta  yang  para  siswanya  berhak mendapatkan  KJP  dan  diberi  kesempatan untuk  melakukan  seleksi.  SMK  XYZ memerlukan suatu aplikasi seleksi siswa yang dapat mempermudah proses seleksi sehingga hasil  seleksi  dapat  digunakan  di  aplikasi Pemerintah Provinsi Jakarta. Dalam melakukan  seleksi,  SMK  XYZ  perlu mengelompokkan  siswanya  sesuai  nilai kompetensi beserta data-data yang lain.
Penelitian ini bertujuan untuk merancang  dan  membangun  suatu  sistem pendukung  keputusan  yang  sesuai  dengan kebutuhan  SMK  XYZ  dalam  melakukan seleksi siswa yang berhak mendapatkan KJP. Proses  penentuan  siswa  akan  dipilih menggunakan  metode K-Nearest  Neighbor (KNN)  yang  merupakan  metode  populer untuk melakukan klasifikasi. Hasil dari sistem kemudian  akan  menjadi  rekomendasi  untuk sekolah  dalam  memilih  siswa  yang  berhak mendapatkan KJP.

## 2. Tinjauan Pustaka
Suatu  sistem  pendukung  keputusan adalah  sistem  informasi  yang  memberikan informasi, memodelkan data, manipulasi data dan digunakan untuk melakukan pengambilan keputusan (Ariansyah,  Aknuranda, & Rachmadi,  2013).  Suatu  sistem  pendukung keputusan  memiliki  tujuan  untuk  membantu
dan/atau  memberikan  pertimbangan  bagi pemimpin organisasi untuk mengambil suatu keputusan. Selain itu juga dapat meningkatkan efektifitas  keputusan  yang  diambil  (Kusrini, 2007).
K-Nearest Neighbor (KNN) merupakan salah satu metode klasifikasi yang populer dan banyak  digunakan  untuk  menyelesaikan berbagai  permasalahan  termasuk  diantaranya adalah klasifikasi teks (Guo, Wang, Bell, Bi, &  Greer,  2004;  Ridok  &  Latifah,  2015) maupun untuk penentuan keputusan (Adeniyi, Wei,  &  Yongquan,  2016).  Hasil  studi  dari Adeniyi  dkk  (2016)  mengemukakan  bahwa pada salah satu penelitian yang membandingkan  KNN  dengan  metode klasifikasi  yang  lain,  KNN  memiliki  hasil yang  lebih  baik  dibandingkan  dengan algoritma-algoritma yang lain. Hasil pengujian dari salah satu penelitian (Ridok & Latifah, 2015) juga menunjukkan bahwa KNN memiliki  akurasi  yang  cukup  baik  yaitu  di sekitar angka 80%.
KNN  merupakan  algoritma  yang sederhana, fleksibel, transparan, konsisten dan mudah  untuk  diimplementasikan  (Adeniyi, Wei,  &  Yongquan,  2016).  KNN  merupakan algoritma  klasifikasi  non  parametrik  yang bekerja di N dimensi dengan cara menghitung kedekatan  Untuk menghitung kemiripan dari yang  akan  diklasifikan  dengan  data  training yang sudah ada (Al-Kadi, 2015). KNN dapat menggunakan Euclidean  distance (Adeniyi, Wei,  &  Yongquan,  2016), cosine  similarity (Guo, Wang, Bell, Bi, & Greer, 2004) maupun yang  lainnya  untuk  menghitung  kedekatan. Data  yang  diklasifikasikan  (data  uji)  akan dibandingkan  dengan  data  terdekat  yang dipilih sebanyak k dan diklasifikasikan sesuai dengan  hasil  yang  paling  dekat  (Al-Kadi, 2015; Adeniyi, Wei, & Yongquan, 2016).
KNN  termasuk  algoritma  yang  malas karena KNN hanya menyimpan data training dan menunggu sampai ada data uji yang perlu dikasifikasikan. Selain itu KNN juga disebut sebagai instance  based  learner yang  berarti pembelajar berbasis kasus sehingga algoritma ini hanya akan membuat model klasifikasi saat ada  data  yang  diujikan  (Adeniyi,  Wei,  & Yongquan, 2016).
3. Metodologi Penelitian
Langkah-langkah  yang  dilakukan  pada penelitian ini adalah yang pertama melakukan peninjauan pustaka terkait sistem
pengambilan  keputusan  dan  algoritma  KNN yang  digunakan  untuk  melakukan  seleksi siswa. Langkah selanjutnya adalah melakukan analisis  kebutuhan  yang  diperlukan  untuk merancang dan membangun sistem informasi. Hal  ini  dilakukan  dengan  melakukan observasi dengan pihak SMK XYZ. Observasi ini  dilakukan  untuk  mengetahui  proses  yang berjalan  di  SMK  XYZ  dalam  menentukan siswa yang akan diajukan untuk memperoleh KJP.  Hasil  dari  observasi  adalah  analisis sistem  berjalan  yang  kemudian  digunakan untuk  merancang  diagram usecase ,  diagram aktivitas, database relasi yang diperlukan serta tampilan  sistem.  Selain  itu  juga  digunakan untuk mengidentifikasi di bagian mana KNN perlu diterapkan.
Rancangan yang telah dibuat kemudian digunakan untuk membangun sistem pendukung  keputusan  yang  diperlukan  oleh SMK  XYZ.  Sistem  ini  dibangun  dengan menggunakan  bahasa  pemrograman  PHP dengan database menggunakan  MySQL. Hasil implementasi sistem kemudian diuji dari sisi metode KNN yang digunakan dan dari sisi output aplikasi  menggunakan black  box testing .
Prosedur yang dilakukan untuk
menentukan  siswa  mana  yang  berhak  untuk mendapatkan KJP adalah sebagai berikut : 1. Sekolah memberikan formulir KJP
kepada  siswa  yang  dipilih secara  manual
berdasarkan status yatim-piatu siswa atau status kurang mampu yang kemudian akan diisi oleh orang tua murid
2. Formulir  yang  telah  diisi  kemudian dikembalikan  ke  pihak  sekolah  beserta surat  keterangan  tidak  mampu  dari kelurahan tempat tinggal siswa
3. Data  calon  penerima  KJP  kemudian diajukan  ke  pihak  Bank  yang  menjalin kerjasama  dengan  pemerintah  provinsi DKI. Hal ini diperlukan untuk mendapatkan  ID  dan  password  untuk mengakses sistem yang disedikan pemerintah provinsi DKI.
4. Pihak  sekolah  kemudian  melakukan survey  secara  langsung  ke  rumah  siswa dan melakukan wawancara
5. Pihak  sekolah  memasukkan  semua  data yang  telah  dicek  ke  sistem  pemerintah provinsi  DKI  dan  menunggu  hasil verifikasi.
Dari prosedur tersebut, diketahui bahwa pihak  sekolah  masih  melakukan  pemilihan secara  manual  yang  cenderung  tidak  akurat karena  data  yang  ada  cukup  banyak.  Usulan yang  diberikan  pada  penelitian  ini  adalah pihak sekolah melakukan seleksi secara lebih sistematis  sesuai  dengan  kriteria  yang ditetapkan  oleh  pemerintah  provinsi  DKI. Kriteria-kriteria  yang  digunakan  adalah informasi  kondisi  rumah,  kondisi sosial- ekonomi  dan  aset  yang  dimiliki.  Untuk mendapatkan  hasil  kriteria  dari  setiap  siswa maka diperlukan suatu kuesioner seperti yang ditampilkan pada Tabel 1, Tabel 2 dan Tabel 3.

## TABEL  1 INFORMASI ANGGOTA RUMAH TANGGA
No Bagaimanakah kondisi demografis rumah tangga? Status A1 Kepala rumah tangga memiliki pendidikan SMA kebawah 0 = tidak  ,  1 = ya A2 Kepala rumah tangga mempunyai pekerjaan tidak tetap 0 = tidak  ,  1 = ya A3 Kepala rumah tangga memiliki penyakit kronis / yang menyulitkan untuk bekerja  0 = tidak  ,  1 = ya A4 Salah satu atau kedua orang tua kandung sudah meninggal 0 = tidak  ,  1 = ya A5 Ada  anak  didalam  keluarga  antara  7-18  tahun  yang  sedang  tidak  bersekolah karena alasan ekonomi 0 = tidak  ,  1 = ya A6 Ayah/ibu pegawai/karyawan swasta/wiraswastawan berpenghasilan cukup 0 = tidak  ,  1 = ya A7 Memberikan uang jajan kepada anak per hari Rp 10.000,- atau lebih 0 = tidak  ,  1 = ya TABEL  2 KONDISI SOSIAL EKONOMI No Bagaimanakah kondisi status sosial-ekonomi rumah tangga Status B1 Tempat tinggal yang ditempati bukan milik sendiri 0 = tidak  ,  1 = ya B2 Luas lantai bangunan tempat tinggal kurang dari 8 m² per orang 0 = tidak  ,  1 = ya B3 Jenis lantai terluas terbuat dari tanah/bambu/kayu berkualitas rendah/semen 0 = tidak  ,  1 = ya
B4 Jenis dinding tempat tinggal dari bambu/kayu berkualitas rendah/tembok tanpa plester 0 = tidak  ,  1 = ya B5 Tempat  tinggal  tidak  memiliki  fasilitas  buang  air  besar  atau  bersama  –  sama dengan rumah tangga lain 0 = tidak  ,  1 = ya B6 Sumber penerangan rumah tangga tidak menggunakan listrik atau menggunakan listrik dengan daya dibawah atau sama dengan 450 watt 0 = tidak  ,  1 = ya B7 Sumber air minum berasal dari sumur 0 = tidak  ,  1 = ya B8 Bahan  bakar  untuk  memasak  sehari-hari  adalah  kayu  bakar/gas  3  kg/tidak memasak 0 = tidak  ,  1 = ya TABEL  3 ASET RUMAH TANGGA No Apakah rumah tangga memiliki sendiri asset sebagai berikut Status C1 Mobil 1 = tidak  ,  0 = ya C2 Kapal motor 1 = tidak  ,  0 = ya C3 Perahu motor lebih dari atau sama dengan dua 1 = tidak  ,  0 = ya C4 Sepeda motor lebih dari atau sama dengan dua 1 = tidak  ,  0 = ya C5 Lemari es/kulkas dua pintu atau lebih 1 = tidak  ,  0 = ya C6 Komputer / laptop 1 = tidak  ,  0 = ya C7 Telepon rumah (bukan HP) 1 = tidak  ,  0 = ya C8 Anak memiliki HP berharga diatas Rp 1.000.000,- 1 = tidak  ,  0 = ya C9 Rumah mewah 1 = tidak  ,  0 = ya C10 Rumah kontrakan / kos 1 = tidak  ,  0 = ya
Hasil  dari  kuesioner  adalah  0  atau  1 yang  dipakai  untuk  melakukan  klasifikasi menggunakan  KNN,  selain  itu  data  yang digunakan  adalah  data  rata-rata  nilai  siswa. Untuk membangun model klasifikasi diperlukan  sejumlah  data  training  yang  telah diketahui  apakah  siswa  menerima  KJP  atau tidak  berdasarkan  hasil  pengisian  kuesioner. Contoh hasil pengisian kuesioner dapat dilihat di Gambar 1. Data training tersebut digunakan untuk  menguji  hasil  siswa  lain  yang  belum diketahui  apakah  sudah  mendapatkan  KJP atau belum. Contoh data uji dapat dilihat pada
Gambar 2. Data uji kemudian dihitung
menggunakan Euclidean  distance terhadap setiap data training. Setelah didapatkan jarak terdekat,  kemudian  dipilih  sebanyak  k  data untuk  menentukan  klasifikasi  dari  data  uji. Kedekatan  dihitung  menggunakan Euclidean distance yaitu  sebagai  berikut  (Kusrini, 2013) :
𝑑 𝑖 = √∑ (𝑥 2𝑖 − 𝑥 1𝑖 ) 2 𝑝 𝑖=1 (1)
Gambar 1  Contoh Hasil Data Training
Gambar 2 Contoh Hasil Kuesioner Data Uji
Misal atas nama Galang Maulana diuji apakah  mendapatkan  KJP  atau  tidak.  Hasil perhitungan  jarak  antara  Galang  Maulana dengan  kesepuluh  data training dapat  dilihat pada  Tabel  4.  Contoh  perhitungan  antara Galang Maulana dengan siswa pertama adalah sebagai berikut :
ɖ1 = √(1-1)² + (1-1)² + (1-0)² + (1-0)² + (1-0)² + (1-0)² + (1-1)² + (1-1)² +(1-1)² + (1-0)² + (1-0)² + (1-0)² + (1-0)² + (1- 1)² + (1-1)² + (1-1)² + (1-1)² +   (1-
1)² + (1-1)² + (1-1)² + (1-1)² + (1-1)² + (1-1)² + (1-1)² + (1-1)² +    (10-8)² ɖ1 = √ 12  = 3,46
Dengan menggunakan k=5 maka 5 jarak terdekat adalah dengan Siswa no 3, 2, 1 7 dan 9.  Dengan  menggunakan majority  voting maka  dapat  disimpulkan  bahwa  Galang Maulana dapat menerima KJP. Majority voting merupakan  metode  untuk  menentukan kategori apa yang tepat untuk data uji. Dengan melihat  nilai  kedekatan  antara  data training dengan  data  uji  dan  dipilih  k  terdekat,  maka akan terlihat data uji lebih condong ke kategori yang mana.

## TABEL  4 HASIL PERHITUNGAN JARAK DATA UJI DENGAN DATA TRAINING
No  Siswa Jarak  Status 1 Wahyu 3,46 Menerima 2 Andi Setiawan 3 Menerima 3 Kezia 2,82 Tidak 4 Fika Melinda 4,58 Menerima 5 Inayah 4,24 Menerima 6 M Sidki 4,12 Tidak 7 Cindy Widiyanti  3,46 Menerima 8 M Farchan 4,69 Menerima 9 Bella Nurul 3,46 Tidak 10  Rozalia Alvianti  4,69 Menerima
Kebutuhan  fungsional  yang  diperlukan oleh  sistem  pendukung  keputusan  ini  adalah
sistem  dapat  melakukan  pengolahan  hasil kuesioner, menginputkan nilai rata-rata siswa untuk dapat digunakan melakukan klasifikasi secara  otomatis  melalui  sistem.  Rancangan use  case dari  kebutuhan  sistem  dapat  dilihat pada gambar 3.

## Gambar 3 Use Case Sistem Pendukung Keputusan Calon Penerima KJP
Dari  diagram use  case dapat  dilihat bahwa  terdapat  admin  yang  bertugas  untuk menginputkan  nilai  siswa  dan  mengisikan hasil  dari  kuesioner.  Fungsional  sistem  yang ada  adalah  klasifikasi  siswa  secara  otomatis dengan menggunakan KNN, pemasukan data kebutuhan  untuk  KNN  yaitu  nilai  dan  hasil kuesioner,  dan  pengelolaan  data  penunjang lain.
Rancangan selanjutnya adalah
perancangan  diagram  aktivitas  dan  relasi database . Rancangan diagram aktivitas dapat dilihat  pada  gambar  4  yang  menunjukkan aktivitas  pengisian  kuesioner KJP sedangkan gambar 5 menunjukkan relasi database yang telah  dirancang  dan  diimplementasikan  di MySQL.
Gambar 4 Diagram Aktivitas Pengisian Kuesioner KJP
Data kuesioner dimasukkan dengan cara memilih  jawaban  di  setiap  pertanyaan. Dengan  nilai  0  dan  1  tergantung  dari  jenis pertanyaan yang diisi. Setelah disimpan, maka sistem  akan  secara  otomatis  mengubah menjadi angka untuk kemudian diproses pada
proses klasifikasi.
Data yang diperlukan adalah data siswa, data kuesioner KJP, data rata-rata nilai siswa, data  wali  kelas  dan  data  admin. Masing- masing data memiliki atribut yang diperlukan untuk mendukung sistem.
Gambar 5 Entity Relationship Diagram Sistem Pendukung Keputusan Calon Penerima KJP
4. Hasil dan Pembahasan
Implementasi dilakukan dengan
menggunakan  bahasa  pemrograman  PHP dengan database MySQL.  Gambar  6 menunjukkan  gambar  tampilan  utama  dari sistem.  Setiap  admin  harus  melalui  proses login ke sistem sebelum dapat menggunakan fungsi-fungsi yang ada di sistem.

## Gambar 6 Tampilan Halaman Utama
Tampilan  halaman  utama  cukup sederhana  yaitu  terdapat  tulisan  selamat datang dan tombol untuk menuju ke halaman login. User perlu memasukkan username dan password yang benar. Jika berhasil maka user akan  diarahkan  ke  halaman  utama  setelah login seperti terlihat pada gambar 7.

## Gambar 7 Tampilan Halaman Utama Setelah Login
Terdapat empat menu yaitu home , input data, lihat data dan user setting. Home adalah halaman utama setelah login , input data terdiri dari  input  data  KJP  yang  merupakan  proses pemasukan  hasil  kuesioner  dan  nilai  siswa, input data siswa secara umum, dan input data wali. Tampilan halaman input data KJP dapat dilihat pada gambar 8.

## Gambar 8 Tampilan Pengisian Data KJP
Pengisian  data  KJP  terdiri  dari pertanyaan  kuesioner  yang  kemudian  diisi oleh admin dan juga memasukkan nilai siswa. Sistem akan memberikan rekomendasi apakah siswa  dapat  menerima  KJP  atau  tidak.  Hasil rekomendasi dapat dilihat di menu lihat data seperti terlihat pada gambar 9.

## Gambar 9 Tampilan Halaman Lihat Data KJP
Pada  halaman  lihat  data,  dapat  dilihat keseluruhan  rekomendasi  setiap  siswa  atau dapat mencari nama siswa tertentu. Pengujian metode KNN dilakukan dengan menggunakan 40 data siswa (dari satu kelas) yang dilakukan 5 kali cross fold validation . Untuk setiap fold , data  dibagi  menjadi  70%  data  training  dan 30% data uji dengan siswa yang dipilih secara acak. Hasil perhitungan akurasi KNN dengan 5 fold, dan jumlah k 3, 5, dan 7 ditunjukkan pada tabel 5.
Tabel  5 Hasil Akurasi KNN K-fold K-NN 3 5 7 1 83.33% 66.70% 75.00% 2 75% 75% 58% 3 58% 67% 83% 4 91.67% 75.00% 58.33% 5 66.67% 83.33% 75.00% Rata - Rata 74.93% 73.41% 69.93%
Dari  tabel  hasil  akurasi  dapat  dilihat bahwa KNN bekerja dengan cukup baik. Pada fold  ke-3,  akurasi  KNN  tergolong  cukup rendah hal ini dikarenakan data training yang digunakan  kurang  memiliki  variasi  yang sesuai  dengan  data  uji  yang  digunakan. Karena data training yang digunakan sedikit, k  tetangga  yang  memiliki  nilai  akurasi tertinggi juga berbeda.
Untuk  fold  pertama  dan  keempat,  k=3 memiliki  akurasi  tertinggi,  sedangkan  untuk fold  ketiga,  k=7  memiliki  akurasi  tertinggi. Untuk  fold  kelima,  k=5  memiliki  akurasi tertinggi.  Hasil  akurasi  tertinggi  adalah 91.67% pada fold keempat dengan k=3. Dari hasil  juga  dapat  diketahui  bahwa  rata-rata akurasi  berada  di  sekitar  70%  yang menunjukkan nilai yang cukup baik meskipun data yang digunakan belum terlalu banyak.
Dari  sisi  sistem  aplikasi,  dilakukan pengujian  mengenai output dari  aplikasi dengan  menggunakan  pengujian blackbox . Bagian yang diuji adalah fungsi login , fungsi jika field password kosong, fungsi pengelolaan data wali murid, fungsi pengisian dan penghapusan data siswa, fungsi pengisian dan  penghapusan  data  kuesioner  dan  fungsi pengelolaan  data  administrator.  Dari  hasil pengujian diperoleh bahwa semua fungsi yang diimplementasikan  sudah  berjalan  dengan benar dan memberikan output yang tepat dan sesuai  harapan.  Namun,  masih  ada  beberapa bagian  tampilan  yang  perlu  ditingkatkan seperti untuk pengisian kuesioner seharusnya dapat dilakukan oleh orang tua siswa dengan didampingi  wali  kelas  untuk  menghindari adanya kesalahan pemasukan data.

## 5. Kesimpulan
Dari  hasil  penelitian  yang  telah dilakukan  dapat  diketahui  bahwa  KNN bekerja dengan cukup baik dalam memberikan rekomendasi siswa mana yang dapat diajukan untuk  menjadi  penerima  KJP.  Hasil  akurasi tertinggi  diperoleh  dengan  nilai  91,67% dengan  k=3  pada  hasil  pembagian  fold keempat.  Rata-rata  akurasi  tertinggi  dari  5 cross fold adalah 74.93% dengan menggunakan  k=3.  Kelemahannya  adalah data  yang  digunakan  untuk training terlalu sedikit dan perlu ditambah.
Hasil  pengujian  dengan  menggunkan blackbox
menunjukkan bahwa hasil
implementasi  fungsi-fungsi  yang  diperlukan sudah bekerja dengan baik dan sesuai dengan yang  diharapkan.  Namun,  masih  ada  bagian tampilan  yang  perlu  ditingkatkan  demi meminimalisir kesalahan pemasukan data.

## Daftar Pustaka
Adeniyi,  D.  A.,  Wei,  Z.,  &  Yongquan,  Y. (2016).  Automated  web  usage  data mining  and  recommendation  system using  K-Nearest  Neighbor  (KNN) classification method. Applied
Computing and Informatics .
Al-Kadi,  O.  S.  (2015).  A  multiresolution clinical decision support system based on  fractal  model  design  for classification  of  histological  brain tumours. Computerized Medical Imaging and Graphics .
Ariansyah, S., Aknuranda, I., & Rachmadi, A. (2013). Sistem Pendukung Keputusan
Evaluasi  Kinerja  Penyidik  Anggota POLRI Dengan Menggunakan
Metode  Promethee  (Studi  Kasus Direktorat  Reserse  Kriminal  Umum Polda  Jatim  Surabaya). Repositori Jurnal Mahasiswa PTIIK UB . Guo, G., Wang, H., Bell, D., Bi, Y., & Greer, K.  (2004).  An  kNN  Model-based Approach and Its Application in Text Categorization. European Commision Projects ICONS . Kartu  Jakarta  Pintar .  (2016).  Diambil kembali dari http://www.kjp.jakarta.go.id/kjp2/ Kusrini.  (2007). Konsep  dan Aplikasi  Sistem Pendukung  Keputusan. Yogyakarta: Andi.
Ridok, A.,  &  Latifah,  R.  (2015).  Klasifikasi Teks  Bahasa  Indonesia  Pada  Corpus Tak. Konferensi  Nasional  Sistem  & Informatika (hal.  222-227).  Bali: STMIK STIKOM Bali.