Implementasi algoritma fuzzy c-means untuk pengelompokan sekolah menengah atas di diy berdasarkan nilai ujian nasional dan nilai sekolah.

(1)

viii

ABSTRAK

Data mining merupakan penambangan atau penemuan informasi baru dengan mencari pola atau aturan tertentu dari sejumlah data dalam jumlah besar . Salah satu metode data mining yaitu clustering. Clustering adalah proses mengelompokkan objek ke dalam suatu kelompok (cluster) sehingga objek memiliki kemiripan sangat besar dengan objek lain yang berada pada cluster yang sama, tetapi memiliki ketidakmiripan yang besar dengan objek yang berada pada cluster berbeda. Salah satu algoritma clustering adalah Fuzzy C-Means (FCM). FCM adalah metode clustering fuzzy dimana keberadaan tiap titik data dalam suatu cluster ditentukan oleh derajat keanggotaan. Dengan metode ini, data akan dikelompokkan ke dalam cluster yang berbeda sesuai persentase keanggotaannya di masing-masing klaster.

Pada tugas akhir ini akan diimplementasikan algoritma Fuzzy C-Means untuk mengelompokkan data Sekolah Menengah Atas di DIY berdasarkan nilai Ujian Nasional dan Nilai Sekolah. Hasil tugas akhir ini yaitu sebuah perangkat lunak yang dapat digunakan sebagai alat bantu untuk pengelompokan Sekolah Menengah Atas menggunakan algoritma Fuzzy C-Means . Pengujian terhadap sistem ini terdiri dari pengujian blackbox, dan pengujian validitas implementasi algoritma Fuzzy C-Means.

Berdasarkan hasil pengujian blackbox yang dilakukan, disimpulkan bahwa sistem pengelompokan ini dapat menghasilkan keluaran yang sesuai dengan yang diharapkan pengguna. Berdasarkan hasil pengujian validitas implementasi algoritma Fuzzy C-Means. yang dilakukan, disimpulkan bahwa Metode clustering algoritma Fuzzy C-Means terbukti dapat mengelompokkan sekumpulan data bertipe numerik.


(2)

ix

ABSTRACT

Data mining is mining procces or extracting information by getting pattern or specific rules from large amounts of data . One of the data mining method is clustering. Clustering is the process of grouping objects into a group (cluster) so that the object has a very great similarity with other objects that are on the same cluster, but has a great dissimilarity with objects that are in different clusters. One algorithm of clustering is Fuzzy C-Means (FCM). FCM is a technique of fuzzy clustering in which each data point in a cluster is determined by the degree of membership. With this method, the data will be grouped into different clusters according to percentage of membership in each cluster.

This thesis will implement Fuzzy C-Means algorithm was used to clustering high school data based on the value of National Exam and School Exam. The results of this thesis is a software that can be used as a tool to cluster high school data using Fuzzy C-Means algorithm. The testing of this system consists of blackbox testing and validity testing of Fuzzy C-Means algorithm implementation.

Based on blackbox testing, it can be concluded that the clustering system could produce output as expected and handle any incorrect functions. Based on validity testing of Fuzzy C-Means algorithm implementation, it can be concluded that the clustering method Fuzzy C-Means algorithm, is able to classify the type of numerical data set


(3)

IMPLEMENTASI ALGORITMA FUZZY C-MEANS UNTUK PENGELOMPOKAN SEKOLAH MENENGAH ATAS

DI DIY BERDASARKAN NILAI UJIAN NASIONAL DAN NILAI SEKOLAH

SKRIPSI

Diajukan Untuk Memenuhi salah Satu Syarat

Memperoleh Gelar Sarjana Komputer Program Studi Teknik Informatika

Disusun Oleh : Maria Riana Megawati

115314058

PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA YOGYAKARTA


(4)

ii

THE IMPLEMENTATION OF FUZZY C-MEANS ALGORITHM FOR CLUSTERING SENIOR HIGH SCHOOL BASED ON THE VALUE OF

NATIONAL EXAM AND VALUE OF SCHOOL

A THESIS

Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Komputer Degree In Departement of Informatic Engineering

By :

Maria Riana Megawati 115314058

INFORMATICS ENGINEERING STUDY PROGRAM DEPARTMENT OF INFORMATICS

ENGINEERING FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY

YOGYAKARTA 2015


(5)

iii


(6)

iv


(7)

v

HALAMAN PERSEMBAHAN

“Success does not suddenly come to you. You have to go out and work hard to get it”

“Time is like a river. You cannot touch the same water t

wice, because the flow that has

passed will never pass again.

Enjoy every moment of life…”

”When you keep saying you are busy, then you are never free.

When you keep saying you have no time, then you will never have time.

When you keep saying that you wil

l do it tomorrow, then your tomorrow will never come”

“Intelligence is not the determinant of success, but hard work is the real determinant of

your success.”

“Do n’t be afraid to move, because the distance of 1000 miles starts by a single step.”

“Aku i

ni adalah hamba Tuhan; terjadilah padaku menurut perkataan-

Mu”

(Luk 1:38)

Skripsi ini , penulis persembahkan untuk :

Kedua orangtua ku Terimakasih atas semua doa, kasih saying, dukungan , kepercayaan, dan bantuannya selama ini.


(8)

vi

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa skripsi saya yang saya tulis ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah saya sebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.

Yogyakarta , 31 Agustus 2015 Penulis,


(9)

vii

LEMBAR PERNYATAAN PERSETUJUAN

PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama : Maria Riana Megawati Nomor Mahasiswa : 115314058

Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan Universitas Sanata Dharma karya ilmiah saya yang berjudul :

“IMPLEMENTASI ALGORITMA FUZZY C-MEANS UNTUK

PENGELOMPOKAN SEKOLAH MENENGAH ATAS DI DIY BERDASARKAN NILAI UJIAN NASIONAL DAN NILAI SEKOLAH“

beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, me-ngalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis.

Demikian pernyataan ini yang saya buat dengan sebenarnya. Dibuat di Yogyakarta

Pada tanggal : 31 Agustus 2015 Yang menyatakan,


(10)

viii

ABSTRAK

Data mining merupakan penambangan atau penemuan informasi baru dengan mencari pola atau aturan tertentu dari sejumlah data dalam jumlah besar . Salah satu metode data mining yaitu clustering. Clustering adalah proses mengelompokkan objek ke dalam suatu kelompok (cluster) sehingga objek memiliki kemiripan sangat besar dengan objek lain yang berada pada cluster yang sama, tetapi memiliki ketidakmiripan yang besar dengan objek yang berada pada cluster berbeda. Salah satu algoritma clustering adalah Fuzzy C-Means (FCM). FCM adalah metode clustering fuzzy dimana keberadaan tiap titik data dalam suatu cluster ditentukan oleh derajat keanggotaan. Dengan metode ini, data akan dikelompokkan ke dalam cluster yang berbeda sesuai persentase keanggotaannya di masing-masing klaster.

Pada tugas akhir ini akan diimplementasikan algoritma Fuzzy C-Means untuk mengelompokkan data Sekolah Menengah Atas di DIY berdasarkan nilai Ujian Nasional dan Nilai Sekolah. Hasil tugas akhir ini yaitu sebuah perangkat lunak yang dapat digunakan sebagai alat bantu untuk pengelompokan Sekolah Menengah Atas menggunakan algoritma Fuzzy C-Means . Pengujian terhadap sistem ini terdiri dari pengujian blackbox, dan pengujian validitas implementasi algoritma Fuzzy C-Means.

Berdasarkan hasil pengujian blackbox yang dilakukan, disimpulkan bahwa sistem pengelompokan ini dapat menghasilkan keluaran yang sesuai dengan yang diharapkan pengguna. Berdasarkan hasil pengujian validitas implementasi algoritma Fuzzy C-Means. yang dilakukan, disimpulkan bahwa Metode clustering algoritma Fuzzy C-Means terbukti dapat mengelompokkan sekumpulan data bertipe numerik.


(11)

ix

ABSTRACT

Data mining is mining procces or extracting information by getting pattern or specific rules from large amounts of data . One of the data mining method is clustering. Clustering is the process of grouping objects into a group (cluster) so that the object has a very great similarity with other objects that are on the same cluster, but has a great dissimilarity with objects that are in different clusters. One algorithm of clustering is Fuzzy C-Means (FCM). FCM is a technique of fuzzy clustering in which each data point in a cluster is determined by the degree of membership. With this method, the data will be grouped into different clusters according to percentage of membership in each cluster.

This thesis will implement Fuzzy C-Means algorithm was used to clustering high school data based on the value of National Exam and School Exam. The results of this thesis is a software that can be used as a tool to cluster high school data using Fuzzy C-Means algorithm. The testing of this system consists of blackbox testing and validity testing of Fuzzy C-Means algorithm implementation.

Based on blackbox testing, it can be concluded that the clustering system could produce output as expected and handle any incorrect functions. Based on validity testing of Fuzzy C-Means algorithm implementation, it can be concluded that the clustering method Fuzzy C-Means algorithm, is able to classify the type of numerical data set


(12)

x

KATA PENGANTAR

Puji syukur kepada Tuhan Yesus Kristus, atas segala berkat dan karunia sehingga penulis dapat menyelesaikan tugas akhir yang berjudul “Implementasi Algoritma Fuzzy C-Means untuk Pengelompokan Sekolah Menengah Atas di DIY Berdasarkan Nilai Ujian Nasional dan Nilai Sekolah”. Tugas akhir ini ditulis sebagai salah satu syarat memperoleh gelar sarjana program studi Teknik Informatika, Falkutas Sains dan Teknologi Sanata Dharma.

Penulisan tugas akhir ini berjalan dengan baik dari awal hingga akhir karena adanya dukungan doa, semangat dan motivasi yang diberikan oleh banyak pihak. Untuk itu, penulis ingin mengucapkan terima kasih kepada:

1. Tuhan Yesus Kristus dan Bunda Maria yang selalu memberikan anugerah, rahmat, kekuatan dan keberuntungan sehingga penulis dapat menyelesaikan tugas akhir ini.

2. Kedua Orang Tua saya, Ir. Agustinus Sumasriyana M.Si dan Fransiska Wiwik Suryani S.Pd atas doa, kasih sayang, perhatian,kepercayaaan, dukungan baik moral maupun financial yang diberikan kepadaku.

3. Kakak ku tersayang, Catharina Andrian Shinta Dewi, dan saudara-saudarku tersayang, Lintang Sari P, serta Sukma yang menemani dalam penyusunan tugas akhir.

4. Ibu Paulina Heruningsih Prima Rosa, S.Si., M.Sc. selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta sekaligus Dosen Pembimbing yang telah dengan sabar membimbing dan memberikan motivasi.

5. Ibu Dr. Anastasia Rita Widiarti selaku Ketua Program Studi Teknik Informatika Falkutas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.


(13)

xi

6. Bapak Puspaningtyas Sanjoyo Adi, S.T.,M.T. selaku Dosen Pembimbing Akademik .

7. Ibu Agnes Maria Polina, S.Kom,M.Sc, dan Bapak Robertus Adi Nugroho, S.T., M.Eng selaku Dosen Penguji, atas kritik dan saran yang telah diberikan. 8. Seluruh Dosen jurusan Teknik Informatika Universitas Sanata Dharma, yang

telah mengajarkan banyak ilmu kepada penulis.

9. Para sahabat Fany, Evi , terimakasih atas doa, dan dukungan kalian bagi penulis.

10.Untuk Meity, Lia, Kezia, Monic, terima kasih atas dukungan dan bantuannya selama ini bagi penulis.

11.Seluruh teman-teman TI angkatan 2011 untuk kebersamaan kita selama menjalani masa perkuliahan ini.

12.Serta semua pihak yang telah membantu penyusunan skripsi yang tidak dapat disebutkan satu, persatu.

Penulisan menyadari bahwa penulisan laporan tugas akhir ini masih memiliki banyak kekurangan. Untuk itu, penulis sangat membutuhkan saran dan kritik untuk perbaikan di masa yang akan datang. Semoga penulisan laporan tugas akhir ini dapat berguna dan bermanfaat bagi semua pihak.

Yogyakarta , 31 Agustus 2015


(14)

xii

DAFTAR ISI

HALAMAN JUDUL ... i

HALAMAN JUDUL (BAHASA INGGRIS) ... ii

HALAMAN PERSETUJUAN ... iii

HALAMAN PENGESAHAN ... iv

HALAMAN PERSEMBAHAN ... iv

PERNYATAAN KEASLIAN KARYA ... vi

LEMBAR PERNYATAAN PERSETUJUAN ... vii

PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ... vii

ABSTRAK ... viii

ABSTRACT ... ix

KATA PENGANTAR ... x

DAFTAR ISI ... xii

DAFTAR TABEL ... xvi

DAFTAR GAMBAR ... xviii

BAB I ... 1

PENDAHULUAN ... 1

1.1 LATAR BELAKANG ... 1

1.2 RUMUSAN MASALAH ... 2

1.3 TUJUAN ... 3

1.4 BATASAN MASALAH ... 3

1.5 MANFAAT PENELITIAN ... 3


(15)

xiii

1.7 SISTEMATIKA PENULISAN ... 5

BAB II ... 7

TINJAUAN PUSTAKA DAN DASAR TEORI ... 7

2.1 TINJAUAN PUSTAKA ... 7

2.2 DASAR TEORI ... 8

2.2.1 Ujian Nasional (UN) dan Ujian Sekolah (US) ... 8

2.2.1.1 Ujian Nasional (UN) ... 8

2.2.1.2 Ujian Sekolah (US) ... 9

2.2.1.3 Standar Kelulusan ... 9

2.2.2 Knowledge Discovery in Database (KDD) ... 11

2.2.3 Konsep Clustering ... 13

2.2.4 Algoritma Fuzzy C-Means (FCM) ... 16

2.2.5 Contoh Penerapan Fuzzy C-Means (FCM) ... 19

BAB III ... 24

ANALISIS DAN PERANCANGAN SISTEM ... 24

3.1 ANALISIS KEBUTUHAN ... 24

3.1.1 Identifikasi sistem ... 24

3.1.2 Use case Diagram ... 25

3.1.3 Input Sistem ... 25

3.1.4 Proses Sistem ... 25

3.1.5 Output Sistem ... 27

3.1.6 Kebutuhan Perangkat Lunak ... 28

3.1.7 Kebutuhan Perangkat Keras ... 28

3.2 PERANCANGAN SISTEM ... 28

3.2.1 Desain Proses Umum Sistem ... 28

3.2.2 Diagram Aktivitas (Activity diagram)... 31


(16)

xiv

3.2.4 Diagram Sekuen (Sequence Diagram) ... 32

3.3 PERANCANGAN ANTAR MUKA ... 34

3.3.1 Halaman Awal ... 34

3.3.2 Halaman Praproses ... 35

3.3.3 Halaman Distribusi Atribut ... 35

3.3.4 Halaman Fuzzy C-Means ... 36

3.3.5 Halaman Plot Klaster ... 37

3.3.6 Halaman Bantuan ... 38

BAB IV ... 39

IMPLEMENTASI DAN PENGUJIAN SISTEM ... 39

4.1 IMPLEMENTASI ANTAR MUKA ... 40

4.1.1 Implementasi Halaman Awal ... 40

4.1.2 Implementasi Halaman Praproses Data ... 40

4.1.3 Implementasi Halaman Distribusi Atribut ... 42

4.1.4 Implementasi Halaman Fuzzy C-Means ... 43

4.1.5 Implementasi Halaman Plot Clustering ... 45

4.1.6 Implementasi Halaman Bantuan ... 45

4.2 IMPLEMENTASI KELAS ... 46

4.2.1 Implementasi Kelas MenuAwal ... 46

4.2.2 Implementasi Kelas PraprosesGUI ... 47

4.2.3 Implementasi Kelas Distribusi Atribut ... 49

4.2.4 Implementasi Kelas Fuzzy C-Means ... 51

4.2.5 Implementasi Kelas ScatterAdd ... 55

4.2.6 Implementasi Kelas tProgram ... 56

4.3 PENGUJIAN SISTEM ... 56

4.3.1 Pengujian Blackbox ... 57

4.3.2 Pengujian Validitas Implementasi Algoritm FCM ... 58


(17)

xv

4.3.2.2 Pengujian Perbandingan Hasil Secara Manual dan Sistem ... 61

4.3.2.3 Pengujian Perubahan Nilai Galat(e) dan Maksimal Iterasi(i) ... 62

4.3.2.4 Pengujian Perbandingan Hasil Sistem dengan Matlab ... 64

4.4 KELEBIHAN DAN KEKURANGAN SISTEM ... 75

4.4.1 Kelebihan Sistem ... 75

4.4.2 Kekurangan Sistem ... 76

BAB V ... 77

KESIMPULAN DAN SARAN ... 77

5.1 KESIMPULAN ... 77

5.2 SARAN ... 77

DAFTAR PUSTAKA ... 78

LAMPIRAN ... 79

LAMPIRAN TABEL RINGKASAN USECASE ... 79

LAMPIRAN DIAGRAM AKTIFITAS (ACTIVITY DIAGRAM) ... 80

LAMPIRAN DIAGRAM KONTEKS ... 85

LAMPIRAN UJI PERUBAHAN NILAI GALAT(E), DAN MAKSIMAL ITERASI (I) ... 86

LAMPIRAN DATA UJI MATLAB ... 90

LAMPIRAN GAMBAR SCREENSHOT UJI MATLAB... 91

LAMPIRAN GAMBAR SCREENSHOT HASIL UJI SISTEM ... 97

LAMPIRAN PERBANDINGAN DETAIL TABEL 4.14 ... 104

LAMPIRAN UJI MANUAL ... 108


(18)

xvi

DAFTAR TABEL

Tabel 2.1 Kunjungan Objek Wisata ... 19

Tabel 2.2 Pembangkitan Matriks partisi Uik ... 20

Tabel 2.3 Perhitungan Pusat Cluster v1 ... 20

Tabel 2.4 Perhitungan Pusat Cluster v2 ... 20

Tabel 2.5 Perhitungan Pusat Cluster v3 ... 20

Tabel 4.1 Tabel nama kelas yang diimplementasikan ... 39

Tabel 4.2 Tabel Hasil Pengujian Blackbox ... 57

Tabel 4.3 Tabel Data Uji Algoritma FCM ... 58

Tabel 4.4 Sampel Data Uji Secara Manual dan Sistem ... 61

Tabel 4.5 Uji Perbandingan Algoritma FCM Secara Manual dan Sistem ... 62

Tabel 4.6 Hasil uji perbandingan member percluster secara manual dan sistem ... 62

Tabel 4.7 Uji perubahan nilai Galat ( e) dan maksimal Iterasi (i) ... 63

Tabel 4.8 Uji Perbandingan Algoritma FCM dengan matlab dan Sistem ... 64

Tabel 4.9 Hasil uji perbandingan member percluster nilai ujian nasional, nilai sekolah ... 64

Tabel 4.10 Uji Perbandingan Algoritma FCM dengan matlab dan Sistem ... 68

Tabel 4.11 Hasil uji perbandingan member percluster nilai ujian ... 68


(19)

xvii

Tabel 4.13 Hasil uji perbandingan member percluster nilai ujian sekolah ... 71 Tabel 4.14 Hasil uji perbandingan hasil jumlah member percluster ... 75


(20)

xviii

DAFTAR GAMBAR

Gambar 1.1 Metodologi Perangkat Lunak (Classic life Cycle/Waterfall) ... 4

Gambar 2.1 Tahapan proses sebuah sistem KDD (Jiawei Han & Micheline Kamber,2006) ... 12

Gambar 3.1 Use Case Diagram ... 25

Gambar 3.2 Flowchart Algoritma Fuzzy C-Means ... 27

Gambar 3.3 Proses buka dan cek berkas input ... 28

Gambar 3.4 Desain Proses Clustering Fuzzy C-Means pada aplikasi ... 30

Gambar 3.5 Diagram Kelas ... 32

Gambar 3.6 Diagram Sekuen Buka Berkas ... 32

Gambar 3.7 Diagram Sekuen Clustering ... 33

Gambar 3.8 Rancangan Halaman Awal ... 34

Gambar 3.9 Rancangan Halaman Praproses ... 35

Gambar 3.10 Rancangan Halaman Distribusi Atribut ... 36

Gambar 3.11 Rancangan Halaman Fuzzy C-Means... 37

Gambar 3.12 Rancangan Halaman Plot Klaster... 37

Gambar 3.13 Halaman Bantuan ... 38

Gambar 4.1 Antarmuka Halaman Awal ... 40

Gambar 4.2 Antarmuka Halaman Praposes Data... 41

Gambar 4.3 Antarmuka Halaman Praposes Data (Berkas .xls atau .csv) ... 41


(21)

xix

Gambar 4.5 Antarmuka Halaman Distribusi Atribut ... 43

Gambar 4.6 Antarmuka Halaman Fuzzy C-Means ... 43

Gambar 4.7 Antarmuka Halaman Fuzzy C-Means (Clustering) ... 44

Gambar 4.8 Antarmuka Halaman Plot Klaster ... 45

Gambar 4.9 Antarmuka Halaman Bantuan ... 46


(22)

BAB I PENDAHULUAN

1.1 Latar Belakang

Penambangan data (Data mining) adalah kegiatan yang meliputi pengumpulan, pemakaian data historis untuk menemukan keteraturan, pola atau hubungan dalam set data berukuran besar. Penambangan data dalam bidang pendidikan, berfokus pada pengembangan metode-metode untuk mengekstrak knowledge dari data-data pendidikan. Data pendidikan dapat berupa data pribadi atau akademik. Penambangan data berkembang menjadi alat bantu untuk mencari pola-pola yang berharga dalam suatu database yang sangat besar jumlahnya, sehingga tidak memungkinkan dicari secara manual.

Clustering adalah salah satu teknik dari penambangan data. Teknik penambangan data seperti clustering dapat digunakan untuk pengelompokan dan analisis. Clustering adalah proses pengelompokan atau segmentasi sejumlah data objek menjadi beberapa cluster yang mirip satu sama lain antar objeknya. Kondisi kualitas cluster yang baik dimana pada saat cluster memiliki homogenitas internal yang tinggi dan heterogenitas eksternal yang tinggi. Beberapa algoritma telah dikembangkan untuk melakukan clustering. Salah satu algoritma untuk clustering adalah Fuzzy C-Means (FCM).

Fuzzy C-Means (FCM), dikenal juga sebagai Fuzzy ISODATA. Fuzzy C-Means merupakan salah satu algoritma dari cluster analysis , dimana keberadaan tiap-tiap titik data dalam suatu cluster ditentukan oleh derajat atau tingkat keanggotaannya. Teknik ini pertama kali diperkenalkan oleh Jim Bezdek pada tahun 1981. Fuzzy C-Means menerapkan pengelompokan fuzzy dimana setiap data memungkinkan menjadi bagian anggota dari beberapa cluster dengan keanggotaan yang berbeda-beda untuk setiap cluster. Fuzzy C-Means memiliki tujuan yaitu mendapatkan pusat cluster sehingga dapat digunakan untuk mengetahui data yang ada di dalam sebuah cluster (Kusumadewi S, 2010).


(23)

Kelebihan yang dimiliki oleh Fuzzy C-Means adalah clustering dapat dilakukan lebih dari satu variabel secara bersamaan (Hadi HY,2005).

Algoritma Fuzzy C-Means (FCM) dapat diimplementasikan pada sekumpulan data numerik dalam proses pengelompokan data. Salah satu contoh data numerik yaitu data sekolah yang berupa data nilai ujian nasional dan nilai sekolah.

Permendiknas No. 63 tahun 2009 tentang Sistem Penjaminan Mutu Pendidikan (SPMP) pasal 20 dimana dinyatakan salah satu jenis kegiatan penjaminan mutu pendidikan adalah evaluasi dan pemetaan mutu satuan atau program pendidikan oleh Pemerintah, pemerintah provinsi, dan pemerintah kabupaten atau kota. Pemerintah telah menentukan kebijakan dalam meningkatkan standar mutu pendidikan dengan melakukan Ujian Nasional (UN) dan Ujian Sekolah (US) setiap tahunnya.

Konsep clustering adalah membagi data menjadi kelompok-kelompok dapat membantu dalam proses pengelompokan Sekolah Menengah Atas khususnya yang ada di DIY berdasarkan data Nilai Ujian Nasional dan Nilai Sekolah.

Berdasarkan hal diatas, maka penulis tertarik untuk mengimplementasikan algoritma Fuzzy C-Means dan mengangkat judul skripsi yaitu “Implementasi Algoritma Fuzzy C-Means untuk Pengelompokan Sekolah Menengah Atas di DIY berdasarkan Nilai Ujian Nasional dan Nilai Sekolahuntuk membantu dan mempermudah dalam proses pengelompokan data Sekolah Menengah Atas dengan algoritma Fuzzy C-Means .

1.2 Rumusan Masalah

Dari uraian diatas maka permasalahan yang dicoba untuk diselesaikan adalah:

1. Bagaimana mengimplementasikan algoritma Fuzzy C-Means untuk mengelompokkan sekolah menengah atas di DIY berdasarkan nilai Ujian Nasional dan Nilai Sekolah?


(24)

2. Apakah implementasi algoritma Fuzzy C-means dapat dipergunakan untuk mengelompokan sekolah dengan valid?

1.3 Tujuan

Penelitian ini bertujuan membantu, mendesain, mengimplementasikan algoritma Fuzzy C-Means untuk mempermudah pengguna dalam mengelompokkan Sekolah Menengah Atas berdasarkan nilai ujian nasional dan nilai sekolah dengan algoritma Fuzzy C-Means.

1.4 Batasan Masalah

Batasan masalah dalam penelitian ini adalah:

1. Metode yang digunakan dalam penelitian ini adalah metode clustering algoritma Fuzzy C-Means

2. Data uji yang digunakan adalah data nilai ujian nasional dan nilai Sekolah Menengah Atas di Daerah Istimewa Yogyakarta pada tahun 2011 - 2014. 3. Atribut-atribut clusteringnya berupa nilai mata ujian sekolah (US) dan

ujian nasional (UN) yang diujikan di jurusan IPA dan IPS di wilayah provinsi DIY . Meliputi, nilai mata pelajaran Bahasa Indonesia, Bahasa Inggris, Matematika, Kimia, Fisika, Biologi untuk jurusan IPA, dan nilai mata pelajaran Bahasa Indonesia, Bahasa Inggris, Matematika, Geografi, Sosiologi, Ekonomi untuk jurusan IPS.

4. Aplikasi akan dibuat mengunakan pemrograman Java Desktop Standard Edition (J2SE).

1.5 Manfaat Penelitian

Manfaaat yang diperoleh dalam penelitian ini antara lain:

1. Memberikan gambaran tentang langkah – langkah desain, dan implementasi algoritma Fuzzy C-Means dalam menghasilkan pengelompokan Sekolah Menengah Atas berdasarkan nilai ujian nasional dan nilai sekolah.


(25)

2. Sebagai refensi bagi penelitian yang berkaitan dengan clustering pemetaan atau pengelompokan sekolah yang lebih lanjut.

1.6 Metodologi Penelitian

Metode yang dipergunakan untuk merancang sistem dan menyelesaikan permasalahan adalah dengan cara sebagai berikut.

1. Studi pustaka

Penyusun mencari liteatur-literatur untuk mengenal dan mempelajari cara kerja dari algoritma Fuzzy C-Means.

2. Pengembangan Sistem

Pada tahap ini penulis menggunakan paradigma waterfall. Adapun metode waterfall mempunyai tahapan-tahapan sebagai berikut :

Gambar 1.1 Metodologi Perangkat Lunak (Classic life Cycle/Waterfall) (Pressman,2002)

Keterangan :

a. Rekayasa perangkat lunak (Software Engineering), merupakan kegiatan untuk menentukan software apa yang akan dibangun.

b. Analisis perangkat lunak (Software Analysis), dilakukan dengan cara menganalisa kebutuhan akan fungsi – fungsi perangkat lunak yang

Analysis

Design

Coding

Testing

Maintenance Sistem


(26)

dibutuhkan. Adapun fungsi – fungsi tersebut meliputi fungsi masukan, fungsi proses, dan fungsi keluaran.

c. Perancangan perangkat lunak (Software Design), merupakan perancangan perangkat lunak yang dilakukan berdasarkan data – data yang telah dikumpulkan pada tahap sebelumnya. Perancangan tersebut meliputi perancangan struktur file, struktur menu, struktur program, format masukan (input), dan format keluaran (output). d. Implementasi perangkat lunak (Coding), yaitu kegiatan yang

mengimplementasikan hasil dari perancangan perangkat lunak kedalam kode program yang dimengerti oleh bhasa mesin.

e. Pengujian perangkat lunak (Testing), memfokuskan pada logika internal dari perangkat lunak, fungsi eksternal, dan mencari segala kemungkinan kesalahan, memeriksa apakah input sesuai dengan hasil yang diinginkan setelah proses.

f. Pemeliharaan perangkat lunak (Maintenance), merupakan suatu kegiatan untuk memelihara perangkat lunak yang sudah dibuat, pemeliharaan tersebut dilakukan agar keutuhan program dapat terjaga seperti validasi data, update data, dan integrasi data.

3. Validasi hasil

Pada tahap ini dilakukan validasi terhadap hasil pengujian aplikasi terhadap hasil perhitungan manual, dan dengan hasil uji algoritma FCM dengan tools matlab

1.7 SISTEMATIKA PENULISAN

Penulisan tugas akhir ini tersusun dari 5 (lima) bab dengan sistematika penulisan sebagai berikut:

BAB I. PENDAHULUAN

Pendahuluan berisi tentang latar belakang masalah, rumusan masalah, tujuan, batasan masalah, manfaat penelitian, metode penelitian dan sistematika penulisan.


(27)

BAB II. TINJAUAN PUSTAKA DAN DASAR TEORI

Tinjauan pustaka dan dasar teori berisi tentang sumber acuan , penjelasan dan uraian singkat mengenai teori-teori yang berkaitan dengan topik dari tugas akhir ini.

BAB III. ANALISIS DAN PERANCANGAN SISTEM

Analisis dan perancangan sistem berisi tentang identifikasi sistem meliputi Analisa kebutuhan, use case diagram, input, proses dan output, kebutuhan perangkat keras dan perangkat lunak, serta perancangan sistem seperti,disain umum sistem, , activity diagram, class diagram, ,sequence diagram, dan rancangan antarmuka sistem.

BAB IV. IMPLEMENTASI DAN PEMBAHASAN SISTEM

Implementasi sistem berisi tentang implementasi program dari sistem yang akan dibuat, pembahasan sistem, implementasi antarmuka, hasil implementasi pemrograman, dan pengujian sistem dengan data yang sudah siap untuk diproses.

BAB V. KESIMPULAN DAN SARAN

Kesimpulan dan saran berisi tentang kesimpulan dari sistem yang telah dibuat, serta saran untuk pengembangan dan penyempurnaan Tugas Akhir yang dibuat


(28)

BAB II

TINJAUAN PUSTAKA DAN DASAR TEORI

2.1 Tinjauan Pustaka

Asih (2008) meneliti tentang penerapan algoritma Fuzzy C-Means untuk pengelompokan penduduk berdasarkan kemampuan ekonominya. Penelitian ini menggunakan kriteria jumlah penghasilan, luas bangunan tempat tinggal dan rekening listrik sebagai atribut pengelompokan. Hasil dari penelitian ini berupa suatu aplikasi yang dapat mengelompokan penduduk menjadi 2 cluster yakni mampu dan tidak mampu, serta juga dapat mengelompokkan penduduk menjadi 4 cluster yaitu penduduk Pra Sejahtera, Keluarga Sejahtera I, Keluarga Sejahtera II dan Keluarga Sejahtera III.

Ernawati dan Susanto (2009), meneliti tentang penerapan Fuzzy Clustering untuk pembagian kelas peserta kuliah . Penelitian ini menggunakan sampel 121 orang mahasiswa Jurusan Teknik Informatika Universitas Atma Jaya Yogyakarta yang menempuh perkuliahan Struktur Data Lanjut. Setiap mahasiswa dicirikan oleh dua atribut, yaitu nilai yang pernah mereka peroleh untuk dua mata kuliah prasyarat (Algoritma dan Pemrograman dan Struktur Data). Dalam pembahasan untuk menilai anggota kelompok yang sah dan valid, menggunakan ukuran Fukuyama-Sugeno’s Fuzzy Cluster Validity Index. Hasil dari penelitian ini adalah pembagian kelas para peserta kuliah sebagai hasil penerapan algoritma Fuzzy Clustering terhadap data ke-121 peserta mata kuliah Struktur Data Lanjut untuk pelbagai kemungkinan jumlah kelas, dan rekomendasi peserta kelas yang valid.

Luthfi (2007), meneliti tentang algoritma Fuzzy C-Means untuk Clustering Data Performance Mengajar Dosen Dalam penelitian tersebut dilakukan percobaan untuk mengetahui kemungkinan adanya cluster-cluster dari data performance mengajar dosen. Penelitian menggunakan beberapa kriteria sebagai acuan dalam proses clustering yaitu: penguasaan dan kemampuan dalam menjelaskan materi, kemampuan dalam menjawab pertanyaan, kemampuan dalam member motivasi mahasiswa, kemampuan dalam membuat suasana kelas menyenangkan dan kedisiplinan hadir dalam perkuliahan. Penelitian ini berhasil


(29)

memunculkan beberapa custer data yang dapat dianalisis lebih lanjut persamaan dan perbedaannya. Dari 4 pusat cluster yang di set di awal iterasi, ada 2 cluster yang mempunyai nilai sama, yaitu cluster 3 dan cluster 4, dengan demikian hanya dihasilkan 3 buah cluster performance mengajar dosen.

2.2 Dasar Teori

2.2.1 Ujian Nasional (UN) dan Ujian Sekolah (US)

2.2.1.1 Ujian Nasional (UN)

Ujian nasional (UN) merupakan kebijakan pemerintah dalam bidang pendidikan untuk menentukan standar mutu pendidikan. Pemerintah telah menetapkan nilai standar kelulusan UN minimal yang harus dicapai oleh peserta didik dalam kelulusan.

Tujuan UN adalah untuk mengukur pencapaian hasil belajar siswa; mengukur mutu pendidikan di tingkat nasional, provinsi, kabupaten atau kota, dan sekolah/madrasah; dan mempertanggungjawabkan penyelenggaraan pendidikan secara nasional, provinsi, kabupaten atau kota, dan sekolah/ madrasah, kepada masyarakat. UN tetap penting karena tidak hanya untuk memetakan kualitas sekolah, tetapi juga mengetahui kualitas murid dan standarisasi pendidikan. UN adalah sebuah tes yang dikategorikan sebagai high-stakes (taruhan besar) karena digunakan untuk menjadi penentu utama dalam menilai siswa, dan bahkan menjadi penentu utama untuk menetapkan apakah seorang siswa lulus atau tidak.

Dalam pelaksanaan UN 2014, Badan Standar Nasional Pendidikan (BSNP) menerbitkan Prosedur Operasi Standar Kelulusan UN 2014 SMP/MTs, SPMLB dan SMK No. 22 Th 2013. Pemerintah telah mengambil kebijakan untuk menerapkan UN sebagai salah satu bentuk evaluasi pendidikan. Menurut Surat Edaran Bersama Menteri Pendidikan Nasional No.420 tahun 2014 tentang UN tahun pelajaran 2013/2014 disebutkan bahwa tujuan UN adalah untuk mengukur pencapaian hasil belajar peserta didik melalui pemberian tes pada siswa SLTP dan siswa SLTA. Selain itu UN bertujuan untuk mengukur mutu pendidikan dan


(30)

mempertanggungjawab-kan penyelengga-raan pendidikan di tingkat nasional, provinsi, kabupaten, sampai tingkat sekolah.

UN berfungsi sebagai alat pengendalian mutu pendidikan secara nasional, pendorong peningkatan mutu pendidikan secara nasional, bahan dalam menentukan kelulusan peserta didik, dan sebagai bahan pertimbangan dalam seleksi penerimaan pada jenjang pendidikan yang lebih tinggi. UN merupakan salah satu bentuk evaluasi belajar pada akhir tahun pelajaran yang diterapkan pada beberapa mata pelajaran yang dianggap penting.

2.2.1.2 Ujian Sekolah (US)

US adalah ujian yang dilaksanakan oleh sekolah, dan mata pelajaran yang diujikan dtentukan oleh sekolah sendiri. Untuk dinyatakan lulus, bukan hanya lulus UN berarti dinyatakan lulus. Tetapi harus US juga dinyatakan lulus. Hasil lulus UN dan UAS ini sangat penting dalam kelulusan siswa. Jika salah satunya tidak lulus sama dengan tidak lulus.

2.2.1.3 Standar Kelulusan

Sistem penilaian biasa digunakan, yakni penilai acuan norma (PAN) dan penilaian acuan patokan (PAP). Batas kelulusan hasil penilaian mempunyai kaitan dengan kedua sistem penilai tersebut. Dengan demikian, ada batas kelulusan yang berorientasi pada PAN, yakni batas lulus aktual dan batas lulus ideal. Di samping itu ada batas kelulusan yang berorientasi kepada sistem PAP, yakni batas lulus purposif. Deskripsi ketiga batas kelulusan di atas sebagai berikut.

1. Batas lulus aktual.

Batas lulus aktual didasarkan atas nilai rata-rata yang dapat dicapai oleh kelompok siswa. Unsur yang diperlukan untuk menentukan batas lulus actual adalah nilai rata-rata aktual dan simpangan baku aktual. Biasanya skor yang dinyatakan lulus adalah skor di atas ( X + 0,25 SD ) dimana X adalah nilai rata-rata kelas dan SD adalah simpangan baku. Misalnya siswa kelas III SMA diberi tes bahasa Inggris dengan menggunakan bentuk pilihan ganda sebanyak 60 pertanyaan. Setiap pertanyaan yang dijawab


(31)

benar diberi skor satu, sehingga skor maximal yang mungkin dicapai adalah siswa sebanyak 60. kemudian dihitung nilai rata-ratanya (X) dari semua siswa yang ada di kelas tersebut, misalnya 25 dan simpangan bakunya (SD) adalah 8,0. dengan demikian, skor yang dinyatakan lulus adalah 25 + 0,25 (8,0) = 27, Skor-skor di atas 27 dinyatakan lulus sedangkan skor di bawah 27 dinyatakan gagal atau tidak lulus.

2. Batas lulus ideal

Batas lulus ideal sama dengan batas lulus aktual, yaitu menentukan batas lulus dengan menggunakan nilai rata-rata dan simpangan baku ideal. Nilai rata-rata dan simpangan baku dalam batas lulus ideal mudah dihitung menggunakan aturan sebagai berikut: Nilai rata-rata ideal adalah setengah dari maksimum skor. Simpangan baku ideal adalah sepertiga dari nilai rata-rata ideal. Misalnya, kembali pada contoh dalam batas lulus aktual. Skor maksimum yang mungkin dicapai dari tes bahasa Inggris adalah 60. rata-rata idealnya adalah setengah dari 60, yakni 30, sedangkan simpangan bakunya adalah sepertiga dari rata-rata ideal, yakni 10. batas lulusan idealnya adalah 30 + 0,25 (10) = 32,50. skor dia atas 32,50 dinyatakan lulus, sedangkan skor di bawah 32,50 dinyatakan gagal atau tidak lulus. 3. Batas lulus purposif

Batas lulus purposif mengacu pada PAP sehingga tidak perlu menghitung nilai rata-rata dan simpangan baku. Dalam hal ini ditentukan kriteria-nya, misalnya 75%. Artinya skor yang dinyatakan lulus adalah skor di atas 75 % dari skor maksimum. Pada contoh di atas maka batas lulusnya adalah 75% dari 60, yakni 45. skor yang besarnya di atas 45 dinyatakan lulus dan yang berada di bawahnya dinyatakan gagal atau tidak lulus. Makin tinggi kriteria kelulusannya, maka makin tinggi pula kualitas hasil belajar yang dituntutnya. Sebaliknya, makin rendah kriterianya, makin rendah pula kualitas hasil belajar yang dihasilkannya (Sudjana, 2001:106-107).

Standar kriteria kelulusan dalam UAN sudah ditetapkan dalam POS kelulusan UN yaitu 5,5. Artinya skor di atas 5,5 dinyatakan lulus, sedangkan skor di bawah 5,5 dinyatakan gagal atau tidak lulus. Batas


(32)

kelulusan yang digunakan dalam UN adalah menggunakan sistem penilaian acuan patokan (PAP), yakni batas lulus purposif. Hasil UN digunakan sebagai salah satu pertimbangan untuk (PerMenDikBud No.3/2013):

1. Pemetaan mutu satuan dan/atau program pendidikan 2. Seleksi masuk jenjang berikutnya

3. Penentuan kelulusan peserta didik dari suatu satuan pendidikan 4. Akreditasi satuan pendidikan

5. Pembinaan dan pemberian bantuan kepada satuan pendidikan dalam upaya peningkatan mutu pendidikan.

2.2.2 Knowledge Discovery in Database (KDD)

Knowledge Discovery in Database (KDD) adalah kegiatan yang meliputi pengumpulan, pemakaian data historis untuk menemukan keteraturan, pola atau hubungan dalam set data berukuran besar. Data mining (Penambangan data) merupakan bagian dari Knowledge Discovery in Database yang merupakan kegiatan yang meliputi pengumpulan , pemakaian data historis untuk menemukan keteraturan, pola atau hubungan dalam data yang berukuran besar (Santosa, 2007). Istilah data mining dan KDD sering disalah artikan secara bergantian untuk menjelaskan proses penggalian informasi tersembunyi dalam suatu kumpulan data yang besar. Data mining dan KDD memiliki konsep yang berbeda tetapi saling berkaitan satu sama lain. Salah satu tahapan dalam proses KDD adalah data mining (Han&Kamber,2006). Sebagai komponen dalam KDD, data mining berkaitan dengan ekstrasi dan penghitungan pola-pola dari data yang terdembunyi dalam database.

Tahapan KDD merupakan suatu rangkaian proses data mining dan dapat dibagi menjadi beberapa tahap. Tahap-tahap tersebut bersifat interaktif di mana pemakai terlibat langsung atau melalui perantara knowledge base.


(33)

Gambar 2.1 Tahapan proses sebuah sistem KDD (Jiawei Han &Micheline Kamber,2006)

Tahapan prosesnya yaitu : 1. Pembersihan data (data cleaning)

Pada tahap ini dilakukan untuk proses pembersihan data untuk menghilangkan noise dan data yang konsisten atau data tidak relevan. Secara umum data yang diperoleh, memiliki data-data yang tidak sempurna seperti data yang hilang atau data yang tidak lengkap,data yang mengandung noise, data yang tidak konsisten atau juga hanya sekedar salah ketik.

2. Integrasi data (data integration)

Pada tahap ini , dilakukan penggabungan data dari berbagai sumber-sember yang berbeda ke dalam satu database. Integrasi data dilakukan pada atribut-aribut yang mengidentifikasikan entitas-entitas yang unik seperti atribut nama, jenis produk, nomor pelanggan dan lainnya.

3. Seleksi Data (Data Selection)

Pada proses ini , data yang ada pada database akan diseleksi dan diambil data yang relevan atau sesuai untuk dianalisis.

4. Transformasi data (Data Transformation)

Pada tahap ini data diubah ke dalam format yang sesuai untuk diproses dalam data mining. Beberapa metode data mining membutuhkan format data yang


(34)

khusus sebelum bisa diaplikasikan. Proses ini meliputi : penghalusan, agregasi, generalisasi dari data, normalisasi dan konstruksi atribut atau fitur.

5. Proses data mining

Pada tahap ini, merupakan suatu proses utama saat metode diterapkan untuk mengekstrasi pola data, menemukan pengetahuan atau knowledge yang berharga dan tersembunyi dari data.

6. Evaluasi pola (pattern evaluation),

Pada tahap ini, dilakukan identifikasi pola-pola yang meresentasikan knowledge atau berdasarkan beberapa pengukuran yang menarik atau penting. 7. Presentasi pengetahuan (knowledge presentation),

Pada tahap ini, merupakan visualisasi dan penyajian pengetahuan mengenai metode yang digunakan untuk memperoleh pengetahuan yang diperoleh pengguna. Tahap terakhir dari proses data mining adalah bagaimana memformulasikan keputusan atau aksi dari hasil analisis yang didapat. Dalam presentasi ini, visualisasi juga bisa membantu mengkomunikasikan hasil data mining.

Tahap 1 sampai tahap 4 termasuk dalam data preprocessing, dimana data disiapkan untuk di mining. Setelah melakukan tahapan preprocessing maka hasilnya siap di proses mining. Data yang dipakai merupakan sekumpulan obyek data dan atribut.

2.2.3 Konsep Clustering

Konsep dasar data mining (penambangan data) adalah menemukan informasi tersembunyi dalam sebuah basis data dan merupakan bagian dari Knowledge Discovery in Database (KDD) untuk menemukan informasi dan pola yang berguna dalam data (Dunham, 2003). Data mining mencari informasi baru, berharga dan berguna dalam sekumpulan data dengan melibatkan komputer dan manusia serta bersifat iteratif baik melalui proses yang otomatis ataupun manual. Secara umum sifat data mining adalah:


(35)

a. Predictive: menghasilkan model berdasarkan sekumpulan data yang dapat digunakan untuk memperkirakan nilai data yang lain. Metode yang termasuk dalam prediktif data mining adalah:

1) Klasifikasi: pembagian data ke dalam beberapa kelompok yang telah ditentukan sebelumnya.

2) Regresi: memetakan data ke suatu prediction variable.

3) Time Series Analisys: pengamatan perubahan nilai atribut dari waktu ke waktu.

b. Descriptive: mengidentifikasi pola atau hubungan dalam data untuk menghasilkan informasi baru. Metode yang termasuk dalam deskriptif data mining adalah:

1) Clustering: identifikasi kategori untuk mendeskripsikan data.

2) Association Rules: Identifikasi hubungan antar data yang satu dengan yang lainnya.

3) Summarization: pemetaan data ke dalam subset dengan deskripsi sederhana.

4) Sequence Discovery: identifikasi pola sekuensial dalam data

Clustering membagi data menjadi kelompok-kelompok atau cluster berdasarkan suatu kemiripan atribut-atribut diantara data tersebut(Dunham, 2003). Karakteristik tiap cluster tidak ditentukan sebelumnya, melainkan tercermin dari kemiripan data yang terkelompok di dalamnya. Oleh sebab itu hasil clustering seringkali perlu diinterprestasikan oleh pihak-pihak yang benar-benar mengerti mengenai karakter domain data tersebut. Selain digunakan sebagai metode yang independen dalam data mining, clustering juga digunakan dalam pra-pemrosesan data sebelum data diolah dengan metode data mining yang lain untuk meningkatkan pemahaman terhadap domain data.

Karakteristik terpenting dari hasil clustering yang baik adalah suatu instance data dalam suatu cluster lebih ”mirip” dengan instance lain di dalam cluster tersebut daripada dengan instance di luar dari cluster itu (Kantardzic, 2003). Ukuran kemiripan (similarity measure) tersebut bisa bermacam-macam dan mempengaruhi perhitungan dalam menentukan anggota suatu cluster. Jadi


(36)

tipe data yang akan di-cluster (kuantitatif atau kualitatif) juga menentukan ukuran apa yang tepat digunakan dalam suatu algoritma. Selain kemiripan antar data dalam suatu cluster, clustering juga dapat dilakukan berdasarkan jarak antar data atau cluster yang satu dengan yang lainnya.Ada beberapa macam rumus perhitungan jarak antar cluster. Untuk Tipe data numerik, sebuah data set X beranggotakan x1∈ X, i = 1, ..., n, tiap item direpresentasikan sebagai vektor X1= {Xi1, Xi2, Xim} dengan m sebagai jumlah dimensi dari item. Rumus-rumus yang biasa digunakan sebagai ukuran jarak antara

Xi dan Xj untuk data numerik ini antara lain: a. Euclidean Distance

...(2.1)

Ukuran ini sering digunakan dalam clustering karena sederhana. Ukuran ini memiliki masalah jika skala nilai atribut yang satu sangat besar dibandingkan nilai atribut lainnya. Oleh sebab itu, nilai-nilai atribut sering dinormalisasi sehingga berada dalam kisaran 0 dan 1.

b. Manhattan Distance

...(2.2)

Jika tiap item digambarkan sebagai sebuah titik dalam grid, ukuran jarak ini merupakan banyak sisi yang harus dilewati suatu titik untuk mencapai titik yang lain seperti halnya dalam sebuah peta jalan.

c. Minkwoski Metric

...(2.3)

Ukuran ini merupakan bentuk umum dari Euclidean Distance dan Manhattan Distance. Euclidean Distance adalah kasus dimana nilai p=2 sedangkan Manhattan Distance merupakan bentuk Minkwoski dengan p=1. Dengan demikian, lebih banyak nilai numerik yang dapat ditempatkan pada jarak terjauh di antara 2 vektor. Seperti pada Euclidean


(37)

Distance dan juga Manhattan Distance, ukuran ini memiliki masalah jika salah satu atribut dalam vektor memiliki rentang yang lebih besar dibandingkan atribut-atribut lainnya.

d. Cosine – Corelation (ukuran kemiripan dari model Euclidean n-dimensi) ...(2.4)

Ukuran ini bagus digunakan pada data dengan tingkat kemiripan tinggi walaupun sering pula digunakan bersama pendekatan lain untuk membatasi dimensi dari permasalahan.

Dalam mendefenisikan ukuran jarak antar cluster yang digunakan beberapa algoritma untuk menentukan cluster mana yang terdekat, perlu dijelaskan mengenai atribut-atribut yang menjadi referensi dari suatu cluster (Kantardzic, 2003). Untuk suatu cluster Km berisi N item {Xm1, Xm2, ..., Xmn}:

a) Centroid: suatu besaran yang dihitung dari rata-rata nilai dari setiap itemdari suatu cluster menurut rumus:

...(2.5)

b) Medoid: item yang letaknya paling tengah

2.2.4 Algoritma Fuzzy C-Means (FCM)

Ada beberapa algoritma clustering data, salah satu diantaranya adalah Fuzzy C-Means (FCM). FCM adalah suatu teknik clustering data yang mana keberadaan tiap-tiap titik data dalam suatu cluster ditentukan oleh derajat keanggotaan. Teknik ini pertama kali diperkenalkan oleh Jim Bezdek pada tahun 1981.

Konsep dasar FCM, pertama kali adalah menentukan pusat cluster, yang akan menandai lokasi rata-rata untuk tiap-tiap cluster. Pada kondisi awal, pusat cluster ini masih belum akurat. Tiap-tiap titik data memiliki derajat keanggotaan


(38)

untuk tiap-tiap cluster. Dengan cara memperbaiki pusat cluster dan derajat keanggotaan tiap-tiap titik data secara berulang, maka akan dapat dilihat bahwa pusat cluster akan bergerak menuju lokasi yang tepat. Perulangan ini didasarkan pada minimisasi fungsi objektif yang menggambarkan jarak dari titik data yang diberikan ke pusat cluster yang terbobot oleh derajat keanggotaan titik data tersebut.

Dalam metode Fuzzy C Means dipergunakan variabel membership fucntion iku, yang merujuk pada seberapa besar kemungkinan suatu data bisa menjadi anggota ke dalam suatu cluster . Pada metode ini juga digunakan suatu variabel m yang merupakan weighting exponent dari membership function. Variabel ini dapat mengubah besaran pengaruh dari membership function iku dalam proses clustering. Variabel m mempunyai wilayah nilai m > 1 , sampai pada saat ini tidak ada ketentuan yang jelas berapa besar nilai m yang optimal dalam melakukan optimasi suatu permasalahan clustering. Nilai m yang umum digunakan adalah 2 (Wahyuni,2009) .

Secara mendasar terdapat dua cara pengalokasian data kembali kedalam masing-masing cluster pada saat proses iterasi clustering. Yang pertama adalah pengalokasian dengan cara tegas (hard). Dimana data item secara tegas dinyatakan sebagai anggota cluster yang satu dan tidak menjadi anggota cluster yang lain. Yang kedua dengan menggunakan nilai Fuzzy dimana masing-masing data item diberikan nilai kemungkinan untuk bisa bergabung ke setiap cluster yang ada. Pada K-Means pengalokasian data kembali didasarkan pada perbandingan jarak antara data dengan centroid setiap cluster yang ada. Pada Fuzzy C Means pengalokasian kembali data kedalam masing-masing cluster dipergunakan variabel membership function uik yang merujuk pada seberapa besar kemungkinan suatu data bisa menjadi anggota dalam satu cluster.

Keluaran dari FCM bukan merupakan sistem inferensi fuzzy, namun merupakan deretan pusat cluster dan beberapa derajat keanggotaan untuk tiap – tiap titik data.


(39)

1. Masukan data yang akan di cluster U , berupa matriks berukuranmxn (n = jumlah sampel data,m = atribut setiap data). Uik = data sampel ke-i ( i=1,2,...,n),atribut ke- k( k =1,2,...,m).

2. Menetapkan nilai pangkat w (misal: w=2), Eps/galat terkecil (misal:10-5), MaxIter (misal:100), jumlah cluster c > 1, dan iterasi awal t = 1, Menetapkan fungsi objektif awal: Pt(c) = 0.

3. Menetapkan matriks partisi µf (c) awal sembarang, sebagai berikut.

4. Menaikkan nomor iterasi: t=t+1.

5. Menghitung pusat vektor tiap-tiap cluster untuk matrik partisi tersebut sebagai berikut.

6. Memodifikasi tiap-tiap nilai keanggotaan sebagai berikut. a. Jika yk ≠ vfi,

b. Jika yk = vfi,

µik (yk) = 1, jika i =g;

µik (yk) = 0, jika i ≠g;

7. Menghitung fungsi objektif sebagai berikut.


(40)

9. Memeriksa kondisi untuk berhenti, yaitu:

(Pt(c) - Pt-1(c) < Eps) atau (t > MaxIter)

Jika Ya berhenti, dan jika Tidak maka ulangi dari langkah ke-4.

2.2.5 Contoh Penerapan Fuzzy C-Means (FCM)

Berikut contoh penerapan perhitungan FCM pada kasus kunjungan pariwisata kota Yogyakarta(Y. Aditya,2010), sebagai berikut.

Tabel 2.1 Kunjungan Objek Wisata

Tempat Tahun

2006 2007 2008 2009 2010 Kraton

Yogyakarta 45,450 31,723 43,103 47,486 58,235 Taman Sari 4,104 5,422 5,424 22,292 12,575

Gembira Loka 43,783 45,357 51,066 88,967 86,857

Purawisata 8,615 13,346 11,346 9,460 13,215

Data pada Tabel 2.1 merupakan data kunjungan wisata dari tahun 2006 - 2010 dalam satuan ribuan orang. Berdasarkan data tersebut ditentukan beberapa parameter sebagai berikut.

1. Banyaknya cluster yang diinginkan; c = 3 2. Pangkat (pembobot); w = 2

3. Maksimum Iterasi; MaksIter = 1 4. Error Terkecil; Eps = 10-3

5. Fungsi Objektif awal Pt(0) = 0 6. Iterasi awal; t = 1


(41)

Tabel 2.2 Pembangkitan Matriks partisi Uik

i µik

k1 k2 k3 1 0.8 0.2 0

2 0.1 0.9 0

3 0 0.8 0.2

4 0 1 0

Tabel 2.2 merupakan tahap ke-3 dari perhitungan FCM. Bangkitkan matriks µik dengan komponen i= banyaknya data; k= banyak cluster (acak dari nilai 0 - 1). Kemudian ubah nilai iterasi menjadi t=1.

Langkah selanjutnya adalah menghitung pusat cluster v dengan rumus algoritma langkah 5, sebagai berikut.

Tabel 2.3 Perhitungan Pusat Cluster v1

i µi1w µi1w* Xi1 µi1w* Xi2 µi1w* Xi3 µi1w* Xi4 µi1w* Xi5

1 0.64 29088 20302.72 27585.92 30391.04 37270.4

2 0.01 41.04 54.22 54.24 222.92 125.75

3 0 0 0 0 0 0

4 0 0 0 0 0 0

Jml 0.65 29129.04 20356.94 27640.16 30613.96 37396.15 Tabel 2.4 Perhitungan Pusat Cluster v2

i µi2w µi2w* Xi1 µi2w* Xi2 µi2w* Xi3 µi2w* Xi4 µi2w* Xi5

1 0.04 1818 1268.92 1724.12 1899.44 2329.4

2 0.81 3324.24 4391.82 4393.44 18056.52 10185.75

3 0.64 28021.12 29028.48 32682.24 56938.88 55588.48

4 1 8615 13346 11346 9460 13215

Jml 2.49 41778.36 48035.22 50145.8 86354.84 81318.63 Tabel 2.5 Perhitungan Pusat Cluster v3

i µi3w

µi3w*

Xi1

µi3w*

Xi2

µi3w*

Xi3

µi3w*

Xi4

µi3w*

Xi5

1 0 0 0 0 0 0

2 0 0 0 0 0 0


(42)

4 0 0 0 0 0 0

Jml 0.04 1751.32 1814.28 2042.64 3558.68 3474.28

Tabel 2.3 - 2.5 merupakan data perhitungan v yang dipisah kan setiap komponen µij, sehingga hasil akhir dari perhitungan pusat cluster v, sebagai berikut.

v11 = 29129.04/0.65 = 44813.908 v12 = 20356.94/0.65 = 31318.369 v13 = 27640.16/0.65 = 42523.323 v14 = 30613.96/0.65 = 47098.4 v15 = 37396.15/0.65 = 57532.538 v21 = 41778.36/2.49 = 16778.458 v22 = 48035.22/2.49 = 19291.253 v23 = 50145.8/2.49 = 20138.876 v24 = 86354.84/2.49 = 34680.659 v25 = 81318.63/2.49 = 32658.084 v31 = 1751.32/0.04 = 43783 v32 = 1814.28/0.04 = 45357 v33 = 2042.64/0.04 = 51066 v34 = 3558.68/0.04 = 88967 v35 = 3474.28/0.04 = 86857


(43)

Langkah berikutnya adalah menghitung fungsi objektif sebagai berikut. Cluster 1 :

(Xi1 - Vi1)2 (Xi2 - Vi2)2 (Xi3 - Vi3)2 (Xi4 - Vi4)2 (Xi5 -

Vi5)2 P1

404,613 163,726 336,025 150,234 493,452 1,548,051 1,657,296,584 670,621,939 1,376,359,773 615,357,481 2,021,180,265 6,340,816,042 1,062,771 197,083,154 72,977,329 1,752,979,666 859,924,045 2,884,026,964 1,310,360,918 323,006,056 972,025,474 1,416,649,155 1,964,044,215 5,986,085,818

LT1 15,212,476,875 Cluster 2 :

(Xi1 - Vi1)2

(Xi2 - Vi2)2

(Xi3 -

Vi3)2 (Xi4 - Vi4)2 (Xi5 - Vi5)2 P2

822,057,330 154,548,333 527,351,014 163,976,767 654,178,615 2,322,112,060 160,641,881 192,356,179 216,527,561 153,478,863 403,330,277 1,126,334,761 729,245,298 679,423,166 956,487,030 2,947,006,859 2,937,522,459 8,249,684,811 66,642,044 35,346,033 77,314,660 636,081,622 378,033,529 1,193,417,887

LT2 12,891,549,519 Cluster 3 :

(Xi1 - Vi1)2 (Xi2 - Vi2)2 (Xi3 - Vi3)2 (Xi4 - Vi4)2 (Xi5 -

Vi5)2 P3

2,778,889 185,885,956 63,409,369 1,720,673,361 819,218,884 2,791,966,459 1,574,423,041 1,594,804,225 2,083,192,164 4,445,555,625 5,517,815,524 15,215,790,579

0 0 0 0 0 0

1,236,788,224 1,024,704,121 1,577,678,400 6,321,363,049 5,423,144,164 15,583,677,958

LT3 33,591,434,996

Kemudian langkah selanjutnya merupakan perhitungan untuk memperbarui keanggotaan matriks µij, sebagai berikut.

I µij µij µij

1 0.000101762 0.180126683 0.083115427

2 0.416816807 0.087370006 0.452966376

3 0.189582997 0.639929653 0


(44)

Langkah selanjutnya adalah menghitung kondisi berhenti, dengan pembulatan nilai desimal yaitu :

(Pt(c) - Pt-1(c) < Eps) atau (t > MaxIter) i P - 0

1 0 0.18 0.08

2 0.42 0.09 0.45

3 0.19 0.64 0

4 0.39 0.09 0.47

Dikarenakan hasilnya belum memenuhi lebih kecil dari Eps/galat = 0,01 maka iterasi berulang sampai galat terpenuhi.


(45)

BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Kebutuhan 3.1.1 Identifikasi sistem

Permendiknas No. 63 tahun 2009 tentang Sistem Penjaminan Mutu Pendidikan (SPMP) pasal 20 dimana dinyatakan salah satu jenis kegiatan penjaminan mutu pendidikan adalah evaluasi dan pemetaan mutu satuan atau program pendidikan oleh Pemerintah, pemerintah provinsi, dan pemerintah kabupaten atau kota. Pemerintah telah menentukan kebijakan dalam meningkatkan standar mutu pendidikan dengan melakukan Ujian Nasional (UN) dan Ujian Sekolah (US) setiap tahunnya.

Konsep clustering adalah membagi data menjadi kelompok-kelompok dapat membantu dalam proses pengelompokan Sekolah Menengah Atas khususnya yang ada di DIY berdasarkan data Nilai Ujian Nasional dan Nilai Sekolah.

Sistem ini merupakan implementasi algoritma Fuzzy C-means untuk melakukan proses pengelompokan (clustering) . Data yang digunakan pada sistem ini merupakan data yang sudah siap untuk diproses clustering. Data yang digunakan dalam penelitian yaitu data nilai Ujian Nasional(UN) dan Nilai Sekolah(NS) khususnya Sekolah Menengah Atas (SMA) di Provinsi DIY tahun pelajaran 2011 - 2014. Data nilai yang digunakan meliputi nilai mata pelajaran Bahasa Indonesia, Bahasa Inggris, Matematika, Kimia, Fisika, Biologi untuk jurusan IPA, dan nilai mata pelajaran Bahasa Indonesia, Bahasa Inggris, Matematika, Geografi, Sosiologi, Ekonomi untuk jurusan IPS.

Sistem ini bertujuan untuk membantu dan mempermudah Dinas Pendidikan dalam proses pengelompokkan Sekolah Menengah Atas dengan menggunakan algoritma Fuzzy C-means.


(46)

3.1.2 Use case Diagram

Diagram use case digunakan untuk menggambarkan interaksi antara pengguna dengan sistem. Pengguna sistem ini sebanyak satu orang. Fungsi yang dapat dijalankan oleh pengguna sistem ini adalah fungsi memasukkan data dalam bentuk file .xls, atau .csv. Fungsi berikutnya itu seleksi atribut dan distribusi atribut. Fungsi berikutnya yaitu fungsi proses clustering dengan memasukkan nilai k,w,i dan e. Fungsi berikutnya yaitu fungsi lihat grafik plot hasil clustering, dan simpan hasil clustering. Fungsi terakhir yaitu fungsi lihat bantuan. Gambar dari use case diagram aplikasi dapat dilihat pada Gambar 3.1.

Gambar 3.1 Use Case Diagram

3.1.3 Input Sistem

Sistem clustering dengan algoritma Fuzzy C-Means hanya dapat menerima masukan dari pengguna berupa file berekstensi .xls atau .csv yang berisi data nilai ujian nasional dan nilai sekolah pada sekolah menengah atas di Daerah Istimewa Yogyakarta. Data diambil pada tahun 2011-2014 khususnya jurusan IPA dan IPS.

3.1.4 Proses Sistem

Sistem implementasi algoritma Fuzzy C-Means untuk pengelompokan sekolah menengah atas di DIY berdasarkan nilai ujian nasional dan nilai sekolah ini memiliki beberapa tahapan proses. Pertama, pengguna memasukkan data yang


(47)

akan diolah dalam bentuk file berformat .xls atau .csv. Kedua, pengguna dapat melakukan seleksi atribut serta melihat distribusi atribut. Seleksi atribut digunakan untuk memilih atribut tertentu yang akan dihapus. Distribusi atribut digunakan untuk melihat variasi nilai dalam setiap atribut berserta jumlahnya dalam bentuk tabel. Tahap kedua ini merupakan tahap pilihan sehingga tidak harus dikerjakan. Ketiga, pengguna harus memasukkan jumlah cluster (k), jumlah pembobot(w), maksimum iterasi(i), toleransi kesalahan/Galat(e). Kemudian sistem akan melakukan proses clustering sesuai dengan algoritma Fuzzy C-Means sebagai berikut :

1. Membentuk matriks partisi awal keanggotaan (Uik) yg nilai awalnya acak, i= banyak data, k = banyak kluster(antara0 -1),

2. Menghitung pusat vektor tiap-tiap cluster untuk matrik partisi tersebut, 3. Menghitung fungsi objektif ,

4. Memodifikasi matriks partisi sebagai berikut.

5. Memeriksa kondisi untuk berhenti,(Pt(c) - Pt-1(c) < Eps) atau (t > MaxIter),

Jika Ya berhenti, dan jika Tidak maka ulangi dari langkah ke-2.

6. Menampilkan hasil dari algoritma Fuzzy C-Means berupa fungsi objektif (Pt), matriks keanggotaan (µik) dan pusat kluster (Vkj).


(48)

Gambar 3.2 Flowchart Algoritma Fuzzy C-Means

(Kusumadewi,2010). 3.1.5 Output Sistem

Keluaran yang diperoleh dari sistem yang dibangun adalah data-data yang sudah dikelompokkan dan hasil grafik clustering data sekolah.

Bentuk matriks partisi awal keanggotaan (Uik) yg nilai awalnya acak, i= banyak data, k = banyak kluster(antara 0-1)

TIDAK


(49)

3.1.6 Kebutuhan Perangkat Lunak

Perangkat lunak yang digunakan dalam pembuatan aplikasi ini adalah Sistem Operasi Windows 7, JDK 1.7, dan NetBeans IDE 7.4.

3.1.7 Kebutuhan Perangkat Keras

Perangkat keras yang digunakan untuk membuat aplikasi ini adalah Laptop dengan spesifikasi prosessor Intel Core i5, Ram 4 GB, HDD 500 GB.

3.2 Perancangan Sistem

3.2.1 Desain Proses Umum Sistem


(50)

Pada gambar 3.3 diperlihatkan proses dari aplikasi mulai dari membuka berkas berekstensi .xlx atau .csv kemudian aplikasi akan memeriksa kondisi berkas, jika berkas .xlx atau .csv sesuai dan format penulisannya benar, maka aplikasi akan melanjutkan menampilkan ukuran dan jumlah instances yang berada pada berkas. Namun jika tidak maka aplikasi akan memerintahkan untuk membuka berkas kembali.Setelah berkas diperiksa langkah selanjutnya adalah merubah isi berkas ke bentuk array list agar dapat diolah oleh aplikasi.

Gambar 3.4 menunjukkan aplikasi memproses clustering menggunakan algoritma Fuzzy C-Means. Dimulai dari mengambil array list data yang kemudian diubah ke bentuk matriks (mxn). Proses selanjutnya adalah memasukkan jumlah cluster yang diinginkan, banyaknya maksimum iterasi dan galat (batas kesalahan yang diperbolehkan). Aplikasi kemudian akan mengelompokkan data sesuai algoritma clustering pada Gambar 3.2, terus berulang sampai didapatkan kondisi selisih fungsi objektif kurang dari galat (Pt(c) - Pt-1(c) < Eps) atau kondisi iterasi

maksimum sudah terpenuhi.

Secara singkat proses dari clustering dalam aplikasi ini adalah menentukan centroid atau pusat data secara random dari salah satu titik data yang ada pada instances, sebanyak jumlah cluster yang diinginkan. Proses kemudian dilanjutkan dengan perhitungan jarak dari titik instances ke centroid. Perhitungan jarak akan terus dilakukan untuk mencari jarak terdekat semua titik ke centroid yang ada. Jika semua data instances sudah terkelompokkan, namun masih ada instance yang tidak sesuai dengan kelompoknya maka aplikasi akan menentukan centroid baru dengan mencari rata-rata (mean) jarak instance terhadap centroid yang sudah ada. Proses akan terus berulang sampai ditemukan jarak yang terdekat sesuai centroid.Jika iterasi cluster sudah mencapai maksimum, atau data instances sudah terkelompokkan dengan baik, maka aplikasi akan menampilkan data kelompok tersebut.

Hasil yang ditampilkan oleh aplikasi adalah hasil clustering berupa poin cluster dan instances data yang termasuk didalamnya, jumlah iterasi yang telah dilakukan, fungsi objektif yang dicapai (Pt) , nilai kesalahannya serta grafik clustering .


(51)


(52)

3.2.2 Diagram Aktivitas (Activity diagram)

Diagram aktivitas digunakan untuk menunjukan aktivitas yang dikerjakan oleh pengguna dan sistem dalam setiap use case yang disebutkan dalam gambar 3.1 Berikut adalah diagram aktivitas dari setiap use case:

1. Diagram Aktivitas Input Data File .xls, .csv 2. Diagram Aktivitas Seleksi Artibut

3. Diagram Aktivitas Distribusi Atribut

4. Diagram Aktivitas Proses Clustering input k,w,i,e 5. Diagram Aktivitas Lihat grafik plot

6. Diagram Aktivitas Simpan Hasil Proses Clustering 7. Diagram Aktivitas Lihat bantuan

Detail diagram aktivitas dari setiap use case dapat dilihat pada bagian lampiran diagram aktivitas dalam tugas akhir ini.

3.2.3 Diagram Kelas (Class Diagram)

Gambar 3.5 menggambarkan relasi–relasi terjadi antar kelas, kelas Praproses ber-relasi asosiasi dengan kelas MenuAwal dan kelas FuzzyC-Means, relasi asosiasi yang dimaksud adalah kelas MenuAwal memanggil fungsi dari kelas Praproses untuk menampilkan data input, sedangkan kelas FuzzyC-Means digunakan kelas Praproses untuk menjalankan proses clustering.


(53)

Gambar 3.5 Diagram Kelas 3.2.4 Diagram Sekuen (Sequence Diagram)

Pada Gambar 3.6 diperlihatkan diagram sekuen mengenai pembukaan berkas.

Gambar 3.6 Diagram Sekuen Buka Berkas

Pengguna MenuAwal Praproses

run()

masuk()

pilihBerkas() requestInput()

InputFile(.xls || .csv)

cekAtribut() cekAtribut(OK)

tabelPraproses.setEnabled() showData()


(54)

Pengguna melakukan perintah run() kepada objek MenuAwal, kemudian objek MenuAwal akan menjalankan perintah masuk() ke objek Praproses. Pada objek Praproses tersebut perintah pilihBerkas() dijalankan, return value dari objek Praproses diterima pengguna berupa request untuk memasukkan berkas.

Pengguna kemudian memasukkan berkas ekstensi .xls atau .csv ke objek Praproses, yang kemudian menjalankan perintah cekAtribut(), untuk memeriksa kondisi atribut dalam berkas. Return message dari objek Praproses kemudian digunakan untuk mengambil path atau alamat dari berkas yang kemudian akan ditampilkan kepada pengguna dalam bentuk tabel.

Gambar 3.7 Diagram SekuenClustering

Diagram Sekuen pada Gambar 3.7 terdapat suatu message connection antara objek Pengguna, Praproses, FuzzyCMeans dan PlotKlastering. Pesan yang

Pengguna Praproses Fuzzy CMeans PlotKlastering

run()

klastering()

data(OK)

proses(parameter)

matriksAwal()

hitungPusatKlaster()

fObjektif()

matriksUBaru()

tampilHasil() plot()

scatter(Tabel)


(55)

terjadi dimulai dari Pengguna ketika aplikasi dimulai, objek Pengguna akan melakukan event meminta run() terhadap Praproses yang kemudian dijawab oleh objek FuzzyCMeans dengan melakukan klastering(). Setelah mendapatkan return message data() sudah baik dari objek FuzzyCMeans, maka Pengguna melanjutkan perintah proses() dengan input parameter klaster, begitu seterusnya sampai pada akhirnya objek pengguna mendapatkan return message berupa tampilan hasil analisa clustering dari PlotKlaster.

3.3 Perancangan Antar Muka

Sistem Implementasi algoritma Fuzzy C-Means untuk pengelompokan Sekolah Menengah Atas di DIY berdasarkan nilai ujian nasional dan nilai sekolah ini memiliki desain antarmuka yang digunakan untuk melakukan interaksi dengan pengguna. Antarmuka sistem terdiri dari 6 tampilan yang terdiri dari Halaman Awal, Halaman Praproses, Halaman Distribusi Atribut, Halaman Fuzzy C-Means, Halaman Plot Klaster dan Halaman Bantuan.

3.3.1 Halaman Awal

Halaman awal adalah halaman yang digunakan sebagai halaman yang pertama kali akan muncul ketika aplikasi dijalankan. Halaman ini berisi judul aplikasi, tombol masuk dan identitas pembuat aplikasi.

Rancangan halaman awal dapat dilihat pada Gambar 3.8 sebagai berikut.


(56)

3.3.2 Halaman Praproses

Halaman praproses merupakan halaman yang akan ditampilkan ketika pengguna menekan tombol masuk pada halaman awal. Halaman ini berfungsi sebagai sarana pengguna memasukkan data, memeriksa distribusi data dan menghapus data yang akan di cluster.

Rancangan halaman praproses dapat dilihat pada Gamabr 3.9 sebagai berikut.

Gambar 3.9 Rancangan Halaman Praproses 3.3.3 Halaman Distribusi Atribut

Halaman distribusi atribut merupakan halaman tambahan yang dapat digunakan oleh pengguna untuk melihat distribusi atribut dari data yang akan di cluster. Rancangan dapat dilihat pada gambar 3.10 berikut.


(57)

Gambar 3.10 Rancangan Halaman Distribusi Atribut

3.3.4 Halaman Fuzzy C-Means

Halaman Fuzzy C-Means ini akan ditampilkan saat pengguna menekan tombo clustering pada halaman praproses sistem. Halaman ini berfungsi sebagai sarana pengguna untuk mengatur jumlah cluster (klaster), pembobot, maks Iterasi, dan Toleransi Error untuk melakukan proses clustering Pada halaman ini pengguna juga dapat melihat plot hasil clustering serta menyimpan hasil dari proses clustering. Terdapat menu pilihan untuk proses, ulang, plot, simpan dan kembali. Rancangan dapat dilihat pada gambar 3.11.


(58)

Gambar 3.11 Rancangan Halaman Fuzzy C-Means

3.3.5 Halaman Plot Klaster

Rancangan halaman Plot klaster ini digunakan untuk menampilkan hasil iterasi dan distribusinya pada setiap cluster dalam bentuk grafik tipe XY (XYSeriresCollection). Rancangannya dapat dilihat pada gambar 3.12 berikut.


(59)

3.3.6 Halaman Bantuan

HalamanBantuan ini ditampilkan saat pengguna menekan tombol Bantuan di Halaman Utama. Jika ingin keluar dari halaman ini dan kemali ke Halaman Utama maka pengguna menekan tombol keluar. Halaman Bantuan ini digunakan untuk menampilkan informasi programmer aplikasi. Rancangannya dapat dilihat pada gambar 3.13 berikut.


(60)

BAB IV

IMPLEMENTASI DAN PENGUJIAN SISTEM

Implementasi sistem merupakan prosedur yang harus dilakukan untuk menyelesaikan pemrograman sistem berdasarkan pada analisis dan perancangan sistem pada bab sebelumnya. Impementasi sistem pada aplikasi ini dilakukan dengan menggunakan tools Netbeans Integrated Development Environment (IDE) 7.4 pada komputer dengan spesifikasi prosessor Intel Core i5, RAM 4 GB, HDD 500 GB. Implementasi sistem pada bab ini terdiri dari implementasi antarmuka dan implementasi kelas. Sedangkan pada pembahasan sistem terdiri dari pengujian penggunaan sistem dengan data yang sudah siap untuk diproses clustering dan hasil pengujian. Daftar nama kelas yang diimplementasikan dalam sistem ini dapat dilihat pada tabel 5.1 berikut.

Tabel 4.1 Tabel nama kelas yang diimplementasikan

No Nama Kelas Nama Berkas

1 Halaman Awal MenuAwal.java

2 Halaman Praproses Data PraprosesGUI.java

3 Halaman Distribusi Atribut DistribusiAtributGUI.java 4 Halaman Fuzzy C-Means FCMGUI.java

5 Halaman Plot Klaster ScatterAdd.java 6 Halaman Bantuan tProgram.java

7 Model Tabel Tabel.java

8 Model Data Data.java

9 Model Hasil Cetak.java

10 Model Seleksi SeleksiAtribut.java

11 Model Check Box CheckBoxTabelModel.java 12 Write TextArea CostumOutputStream.java

13 Write Excel WriteExcel.java


(61)

4.1 Implementasi Antarmuka

Sistem Pengelompokan Implementasi algoritma Fuzzy C-Means untuk pengelompokan Sekolah Menengah Atas di DIY berdasarkan nilai ujian nasional dan nilai sekolah telah selesai dibangun, maka pada sub bab ini akan ditampilkan antarmuka dari sistem tersebut.

4.1.1 Implementasi Halaman Awal

Pada saat aplikasi pertama kali dijalankan akan ditampilkan form awal seperti ditunjukkan pada Gambar 4.1 berikut.

Gambar 4.1 Antarmuka Halaman Awal

Pada halaman awal tersebut terdapat tombol masuk yang akan mengarah ke halaman proposes data.

4.1.2 Implementasi Halaman Praproses Data

Halaman ini merupakan halaman yang digunakan untuk mempersiapkan data yang akan diolah yang berasal dari berkas .xls atau .csv. Pengolahan awal (praproses) data dimaksudkan agar format data sesuai dengan proses pengelompokan (clustering) yang akan dilakukan. Format data yang diperbolehkan dalam algoritma Fuzzy C-Means yaitu data dengan format angka


(62)

(numerik). Implementasi halaman praproses data ditunjukkan pada Gambar 4.2 berikut.

Gambar 4.2 Antarmuka Halaman Praproses Data

Pengguna kemudian dapat memilih tombol “Pilih Berkas” yang digunakan untuk memasukkan berkas berekstensi .xls atau .csv. Hasil setelah berkas data dimasukkan seperti ditunjukkan pada Gambar 4.3 berikut.


(63)

Pengguna dapat melakukan seleksi atribut pada tabel atribut, dengan cara menandai atribut yang ingin dihapus. Atribut yang sudah dilakukan proses hapus akan hilang dari tabel data. Tampilan penanda hapus atribut seperti ditunjukkan pada Gambar 4.4 berikut.

Gambar 4.4 Antarmuka Halaman Praproses Data (Hapus Atribut) 4.1.3 Implementasi Halaman Distribusi Atribut

Halaman distribusi atribut digunakan untuk menlihat dan mngetahui sebaran nilai pada atribut yang dipilih dalam data yang dimasukkan. Halaman ini akan tampil ketika pengguna memilih tombol “Distribusi Atribut” pada halaman praproses data. Tampilan halaman distribusi atribut ditunjukkan pada Gambar 4.5 berikut.


(64)

Gambar 4.5 Antarmuka Halaman Distribusi Atribut 4.1.4 Implementasi Halaman Fuzzy C-Means

Halaman ini merupakan halaman utama dalam sistem implementasi algoritma Fuzzy C-Means untuk pengelompokan sekolah menengah atas di DIY berdasarkan nilai ujian nasional dan nilai sekolah (FCM).

Isi dari halaman ini yaitu tampilan data yang sudah dilakukan praproses data pada kolom data, parameter masukan untuk proses clustering metode FCM terdapat pada kolom Parameter FCM dan kolom hasil untuk menampilkan hasil clustering. Tampilan halaman Fuzzy C-Means ditunjukkan pada Gambar 4.6 berikut.


(65)

Nilai-nilai yang ditampilkan pada kolom parameter FCM, merupakan nilai default ketika halaman ini ditampilkan. Pengguna dapat merubah nilai-nilai parameter tersebut dengan menggeser tombol slider, dan nilainya akan ditampilkan pada textfield yang berada di bawah tombol slider.

Pemberian nilai default pada halaman ini dimaksudkan agar jika pengguna lupa memasukkan nilai-nilai parameter FCM pada aplikasi maka nilai-nilai default tersebut yang digunakan sebagai parameter untuk proses clustering.

Pengguna dapat melakukan proses clustering dengan menekan tombol “Proses”, yang kemudian hasilnya akan ditampilkan pada kolom hasil. Tampilan hasil clustering seperti ditunjukkan pada Gambar 4.7 berikut.


(66)

Pengguna juga dapat melakukan operasi simpan hasil clustering, seperti yang ditampilkan pada kolom hasil kedalam bentuk dokumen berekstensi .xls,.txt atau .doc.

4.1.5 Implementasi Halaman Plot Clustering

Halaman ini digunakan untuk menampilkan grafik plot setelah proses clustering selesai dilakukan. Tampilan grafik plot cluster ditunjukkan pada Gambar 4.8 sebagai berikut.

Gambar 4.8 Antarmuka Halaman Plot Clustering

4.1.6 Implementasi Halaman Bantuan

Halaman bantuan adalah halaman yang akan ditampilkan ketika pengguna memilih menu petunjuk pada halaman praproses data. Halaman ini berisi informasi mengenai aplikasi dan petunjuk penggunaan aplikasi.


(67)

Gambar 4.9 Antarmuka Halaman Bantuan 4.2 Implementasi Kelas

Pada bagian ini terdapat beberapa listing program dari kelas-kelas utama yang digunakan dalam sistem ini. Method-method yang ditampilkan dari setiap kelas hanya method yang memuat fungsi utama sistem yang berkaitan dengan algoritma Fuzzy C-Means.

4.2.1 Implementasi Kelas MenuAwal

Method-method penting yang ada dalam kelas MenuAwal antara lain : method btnMasukActionPerformed() dan method run(). Penjelasannya sebagai berikut.


(68)

Method btnMasukActionPerformed() berisi perintah untuk menjalankan frame PraprosesGUI jika tombol btnMasuk ditekan. Sedangkan method run() berisi perintah untuk menjalankan tampilan dialog MenuAwal.

4.2.2 Implementasi Kelas PraprosesGUI

Method-method penting yang ada dalam kelas PraprosesGUI antara lain : method pilihBerkas(), method distribusiAtribut(), method hapusatribut(), method method pilihXLS(), pilihCSV() dan cekAtribut(). Penjelasannya sebagai berikut.

Method pilihBerkas() berisi perintah untuk mengarahkan pengguna ke dialog pilihan berkas yang dijalankan oleh kelas JFileChooser. Setelah pengguna

private void pilihBerkas(){

JFileChooser chooser = new JFileChooser(); int returnVal = chooser.showOpenDialog(null); if (returnVal == JFileChooser.APPROVE_OPTION) {

String nama_file = chooser.getSelectedFile().getPath(); String[] potong = nama_file.split("\\.");

if (potong[1].equals("xls")) { //FILE EXCEL pilihXLS(chooser, nama_file);

} else if (potong[1].equals("csv")) { //FILE CSV pilihCSV(chooser, nama_file);

} else {

JOptionPane.showMessageDialog(null, "File yang dipilih harus berformat .xls atau .csv");

} } }

btnMasukActionPerformed(java.awt.event.ActionEvent evt) { this.dispose();

PraprosesGUI pg = new PraprosesGUI(); pg.setLocationRelativeTo(null);

pg.setVisible(true);

pg.setExtendedState(pg.MAXIMIZED_BOTH); }

public void run() {

MenuAwal dialog = new MenuAwal(new javax.swing.JFrame(), true);

dialog.addWindowListener(new java.awt.event.WindowAdapter() {

public void windowClosing(java.awt.event.WindowEvent e) { System.exit(0);

} });

dialog.setVisible(true); }


(1)

119

10 230.25302077227119

.. …

16 229.56468745177847

2. Nilai pusat cluster atau center

Pada iterasi terakhir (iterasi ke-16), pusat cluster Vkj yang dihasilkan dengan k=1,2,3 dan j=1,2 adalah:

3. Derajat keanggotaan lulusan untuk sertiap cluster pada iterasi terakhir (iterasi ke-16) Tabel 2. Derajat keanggota Pada Ketiga Cluster

Data ke-

Derajat Keanggotaan (μ) SMA Setiap Cluster Pada Iterasi Terakhir

μi1 μi2 μi3

1 0.05 0.108 0.842

2 0.024 0.068 0.909

3 0.012 0.031 0.957 4 0.027 0.066 0.906

7.152 4.619 3.673 3.623 3.698 4.717 8.811 8.757 8.74 8.751 8.722 8.741 7.831 5.651 4.94 4.732 4.907 5.951 8.397 8.359 8.331 8.308 8.318 8.339 8.313 7.05 6.986 6.62 6.436 7.433 8.376 8.39 8.297 8.318 8.339 8.344


(2)

120

5 0.045 0.191 0.763

6 0.022 0.06 0.918

7 0.069 0.316 0.614

8 0.277 0.675 0.048

. . .

. . .

. . .

. . .

141 0.428 0.514 0.059

Dari derajat keanggotaan lulusan pada iterasi terakhir dapat diperoleh informasi mengenai kecenderungan lulusan untuk masuk ke cluster mana. Derajat keanggotaan terbesar menunjukkan bahwa kecenderungan tertinggi lulusan untuk masuk menjadi anggota cluster tersebut. Misalnya untuk lulusan ke-1, dapat menjadi:

a. Anggota cluster pertama dengan derajat keanggotaan 0.05 b. Anggota cluster kedua dengan derajat keanggotaan 0.108 c. Anggota cluster ketiga dengan derajat keanggotaan 0.842

Derajat keanggotaan terbesarnya terletak di cluster ketiga, maka data ke -1 akan dimasukkan kedalam cluster ketiga. Hasil selengkapnya pengelompokkan ke-141 SMA kedalam 3 cluster dapat dilihat pada di bawah ini:


(3)

121 Tabel 3. Anggota Pada Ketiga Cluster

Cluster Beranggotakan SMA dengan data ke-

1 10, 11, 16, 17, 19, 20, 21, 22, 23, 28, 30, 31, 33, 34, 35, 36, 47, 49, 50, 51, 52, 62, 63, 64, 66, 67, 69, 72, 78, 79, 80, 86, 92, 93, 94, 95, 97, 98, 99, 100, 105, 110, 111, 112, 114, 117, 130, 131, 133, 137, 138, 139, 140 2 8, 9, 12, 25, 29, 32, 38, 40, 45, 46, 48, 53, 54, 55, 58, 60, 61, 65, 68, 70,

71, 76, 81, 82, 83, 84,8 5, 87, 88, 96, 102, 103, 104, 107,108,115,116, 118, 119, 120, 121, 122, 123, 126, 127, 128, 129, 132, 134, 135, 136, 141 3 1, 2, 3, 4, 5, 6, 7, 13, 14, 15, 18, 24, 26, 27, 37, 39, 41, 42, 43, 44, 56, 57,


(4)

122 Cluster Jumla

h Anggo ta

Bahasa indoUN Bahasa InggrisUN MatematikaUN FisikaUN KimiaUN BiologiUN

RAT A-RAT

A

MAX MI N

RAT A-RAT

A

MAX MI N RAT A-RAT A MA X

MIN RAT A-RAT

A

MAX MIN RAT A-RAT

A

MAX MIN RAT A-RAT

A

MAX MI N

1 53 7.15 2

8.50 5.3 0

4.61 9

5.93 3.5 7

3.67 3

4.7 5

2.89 3.62 3

5.00 2.65 3.69 8

4.78 2.39 4.71 7

6.25 3.2 1 2 25 7.83

1

8.25 6.8 4

5.65 1

7.76 4.3 8

4.94 6.3 1

4.17 4.73 2

6.99 3.66 4.90 7

6.03 4.08 5.95 1

6.83 5.1 0 3 36 8.31

3

9.40 5.5 1

7.05 8.20 5.8 5

6.98 6

8.3 5

5.50 6.62 7.83 5.00 6.43 6

7.25 5.59 7.43 3

9.00 6.4 0

Bahasa indoUS Bahasa InggrisUS MatematikaUS FisikaUS KimiaUS BiologiUS

RAT A-RAT

A

MAX MI N

RAT A-RAT

A

MAX MI N RAT A-RAT A MA X

MIN RAT A-RAT

A

MAX MIN RAT A-RAT

A

MAX MIN RAT A-RAT

A

MAX MI N

8.81 1

9.71 8.0 2

8.75 7

9.74 7.8 0

8.74 9.7 2

7.96 8.75 1

9.72 7.97 8.72 2

9.69 8.00 8.74 1

9.71 7.7 3 8.39

7

9.28 7.9 6

8.35 9

9.03 7.7 5

8.33 1

8.9 1

7.87 8.30 8

8.96 7.82 8.31 8

8.96 7.81 8.33 9

8.93 7.9 1 8.37

6

9.32 7.8 0

8.39 9.45 7.8 0

8.29 7

9.3 4

7.67 8.31 8

9.34 7.77 8.33 9

9.31 7.81 8.34 4

9.29 7.7 7


(5)

123 Dari hasil di atas dapat diperoleh:

a. Berdasarkan uji coba clustering yang dilakukan, pada data SMA di DIY pada tahun 2011 jurusan IPA diset dalam 3 cluster.

b. Dari hasil uji coba, ketiga cluster tersebut diketahui bahwa pada cluster 1 memiliki jumlah yang paling banyak dengan 53 sekolah sedangkan cluster 2 dengan 52 sekolah dan cluster 3 dengan 36 sekolah.

c. Untuk cluster 1 memiliki criteria nilai yang rendah dibanding kedua cluster yang lain di bagian nilai UN dan memiliki nilai tinggi dibagian nilai US, sedangkan cluster 2 memiliki criteria nilai yang sedang dibanding kedua cluster yang lain di bagian nilai UN dan memiliki nilai rendah dibagian nilai US, dan cluster 3 memiliki criteria nilai yang tinggi dibanding kedua cluster yang lain di bagian nilai UN dan memiliki nilai sedang dibagian nilai US.


(6)