BAB IV IMPLEMENTASI SISTEM DAN ANALISIS HASIL
4.2 Analisis Hasil Implementasi Algoritma K-Means++ Clustering
4.2.1 Uji Validasi
4.2.1.2 Perhitungan Manual
Pada tabel 5.1 berikut akan ditunjukkan dataset yang digunakan.
Tabel 5.1 Dataset Uji Validasi
Nama
sekolah Provinsi
Umu
KETAPANG tan Barat
SMP IT
Proses clustering dengan mengimplementasikan algoritma K-Means++ Clustering, dilakukan dengan tahapan-tahapan sebagai berikut :
1. Dalam awal proses clustering, dilakukan pemilihan satu centroid awal.
Pada algoritma K-Means++ pemilihan dilakukan secara random Centroid 1 : SMP IT AL MUMTAZ
2. Penentuan centroid kedua dan seterusnya. Dalam proses penentuan ini diawali dengan melakukan penghitungan jarak tiap data ke centroid yang telah terpilih, lalu mencari jarak centroid terdekat dari setiap data dan hitung kuadrat dari jarak terdekat tersebut. Langkah selanjutnya dengan menggunakan formula randomized seeding technique, hitung probabilitas dan probabilitas secara kumulatif pada setiap data. Hasil penghitungan ditampilkan pada tabel 5.2 berikut :
Tabel 5.2 Hasil Penghitungan Randomized Seeding Technique
Nama Sekolah D1 Min Min2 D(x)2/ D( )2 Kumulatif
HILIR 15,8113883 15,8113883 250 0,00745217 0,0077385
SMP HARAPAN
MASA DEPAN 7,41619849 7,4161985 55 0,00036069 0,0080991
CERAH 01 SMP NEGERI 6
KETAPANG 17,6635217 17,6635217 311,9999988 0,01160679 0,0197059
SMP DARUL
HIJRAH PUTERI 17,4068952 17,4068952 303,0000005 0,01094682 0,0306528 SMP ISLAM AL
HASYIMIYYAH 12,083046 12,0830460 146,0000006 0,00254161 0,0331944
SMP PLUS
CITRA
MADINATUL
ILMI 11,3578167 11,3578167 129,0000002 0,00198419 0,0351785 SMP NEGERI 14
BANJARMASIN 19,4164878 19,4164878 376,9999985 0,01694672 0,0521253 SMP NEGERI 1
PULAU
SEMBILAN 12,8840987 12,8840987 165,9999993 0,00328563 0,0554109
SMP ISLAM
NURUL IHSAN 13,3416641 13,3416641 178,0000010 0,00377783 0,0591887 SMP NEGERI 2
NUNUKAN 15,9059737 15,9059737 252,9999993 0,0076321 0,0668208 SMP NEGERI 2
SENDAWAR 19,5703858 19,5703858 383,0000004 0,01749043 0,0843113 SMP
HASBUNALLAH 12,083046 12,0830460 146,0000006 0,00254161 0,0868529
SMP IT
QARDHAN
HASANA 12,2065556 12,2065556 148,9999996 0,00264713 0,0895000 Dalam menentukan centroid yang terpilih, diperlukan nilai random. Nilai random yang ditentukan sebesar 0,00 setelah itu membandingkan antara kumulatif probabilitas setiap data dengan nilai random tersebut. Data yang mempunyai nilai random yang lebih kecil dari kumulatif probabilitas, akan terpilih menjadi centroid. Pada gambar 4.13 akan ditampilkan gambaran mengenai nilai random.
Gambar 4.13 . Nilai random pada excel
Centroid 2 : SMP NEGERI 1 SEKADAU HILIR
3. Ketika telah berhasil mendapatkan seluruh centroid awal untuk proses clustering, langkah selanjutnya ialah penghitungan jarak setiap data ke seluruh centroid dengan mengimplementasikan formula Euclidean Distance. Kemudian melakukan perbandingan antara penghitungan jarak ke suatu centroid, dengan jarak ke centroid lainnya, tentukan jarak terdekat dengan centroid dan menetapkan sebuah data yang akan tergabung ke dalam cluster. Data yang dimaksud ialah apabila mempunyai jarak terdekat dengan suatu centroid, maka posisi data berada dalam satu cluster dengan centroid tersebut. Pada tabel 5.3 akan ditampilkan hasil dari iterasi pertama.
Tabel 5.3 . Iterasi pertama
Nama
Sekolah C1 C2 Jarak
Terpendek Cluster
SMPIT AL
MUMTAZ 0 15,81 0 1
SMPIT AL-
FITYAN 7 14,25 7 1
SMP NEGERI 1 SEKADAU
HILIR 15,81 0 0 2
SMP HARAPAN MASA DEPAN
CERAH 01 7,42 14,80 7,42 1
SMP NEGERI 6
KETAPANG 17,66 12,17 12,17 2
SMP DARUL
HIJRAH PUTERI 17,41 18,57 17,41 1
SMP ISLAM AL
HASYIMIYYAH 12,08 13,11 12,08 1
SMP PLUS CITRA MADINATUL
ILMI 11,36 15,33 11,36 1
SMP NEGERI 14
BANJARMASIN 19,42 6,71 6,71 2
SMP NEGERI 1 PULAU
SEMBILAN 12,88 15,17 12,88 1
SMP ISLAM
NURUL IHSAN 13,34 14,49 13,34 1
SMP NEGERI 2
NUNUKAN 15,91 12,21 12,21 2
SMP NEGERI 2
4. Ketika anggota dari tiap cluster telah diketahui, tahap selanjutnya yang dilakukan ialah penghitungan centroid baru berdasarkan anggota cluster
Centroid 1
Umur Guru Kurang dari 30 Tahun
(23+20+16+15+15+15+14+14+13+13) / 10 = 15,8 Umur Guru 31 – 35 Tahun Umur Guru Lebih dari 55 Tahun (0+0+0+1+0+0+0+0+2+0) / 10 = 0,3 Centroid 2
Umur Guru Kurang dari 30 Tahun (19+16+14+13+13) / 5 = 15 Umur Guru 31 – 35 Tahun
(6+6+4+10+5) / 5 = 6,2 Umur Guru 36 – 40 Tahun (4+9+5+4+1) / 5 = 4,6 Umur Guru 41 – 45 Tahun (4+4+2+9+4) / 5 = 4,6 Umur Guru 46 – 50 Tahun (8+13+7+8+7) / 5 = 8,6 Umur Guru 51 – 55 Tahun (10+2+13+4+14) / 5 = 8,6 Umur Guru Lebih dari 55 Tahun (6+1+5+0+2) / 5 = 2,8
5. Langkah selanjutnya setelah menentukan centroid baru ialah melakukan penghitungan ulang jarak setiap data ke seluruh centroid baru, dan pastikan setiap data telah masuk ke cluster yang sama. Apabila posisi data dalam cluster berubah, diperlukan iterasi selanjutnya hingga posisinya tetap. Pada tabel 5.4 berikut ditampilkan hasil dari iterasi kedua
Tabel 5.4 Iterasi Kedua
Nama
Sekolah C1 C2 Jarak
Terpendek Cluster
SMPIT AL
MUMTAZ 8,82 16,13 8,82 1
SMPIT AL-
FITYAN 5,70 13,98 5,70 1
SMP NEGERI 1 SEKADAU
HILIR 13,44 5,41 5,41 2
SMP HARAPAN MASA DEPAN
CERAH 01 3,75 13,34 3,75 1
SMP NEGERI 6
KETAPANG 13,06 9,32 9,32 2
SMP DARUL
HIJRAH PUTERI 16,90 16,78 16,78 2
SMP ISLAM AL
HASYIMIYYAH 4,78 10,49 4,78 1
SMP PLUS CITRA MADINATUL
ILMI 4,54 13,53 4,54 1
SMP NEGERI 14
BANJARMASIN 14,69 6,29 6,29 2
SMP NEGERI 1 PULAU
SEMBILAN 4,74 12,86 4,74 1
SMP ISLAM
NURUL IHSAN 5,18 11,95 5,18 1
SMP NEGERI 2
NUNUKAN 11,89 8,22 8,22 2
SMP NEGERI 2
SENDAWAR 15,29 7,15 7,15 2
SMP
HASBUNALLAH 3,98 12,84 3,98 1
SMP IT 4,90 14,00 4,90 1
QARDHAN HASANA
6. Pada iterasi kedua telah terjadi pergeseran posisi data, sehingga menyebabkan data berpindah cluster. Maka diperlukan untuk melakukan iterasi selanjutnya, dan didapatkan hasil iterasi pada tabel 5.5 berikut :
Tabel 5.5 Iterasi Ketiga
Nama
Sekolah C1 C2 Jarak
Terpendek Cluster
SMPIT AL
MUMTAZ 9,38 15,11 9,38 1
SMPIT AL-
FITYAN 4,83 13,99 4,83 1
SMP NEGERI 1 SEKADAU
HILIR 14,06 6,54 6,54 2
SMP HARAPAN MASA DEPAN
CERAH 01 4,39 12,51 4,39 1
SMP NEGERI 6
KETAPANG 13,96 8,82 8,82 2
SMP DARUL
HIJRAH PUTERI 18,77 13,98 13,98 2
SMP ISLAM AL
HASYIMIYYAH 4,51 10,64 4,51 1
SMP PLUS CITRA MADINATUL
ILMI 2,78 13,75 2,78 1
SMP NEGERI 14
BANJARMASIN 15,13 7,93 7,93 2
SMP NEGERI 1 PULAU
SEMBILAN 4,12 12,79 4,12 1
SMP ISLAM
NURUL IHSAN 4,77 11,98 4,77 1
SMP NEGERI 2
NUNUKAN 13,05 7,11 7,11 2
SMP NEGERI 2
SENDAWAR 15,63 8,92 8,92 2
SMP
HASBUNALLAH 3,60 12,58 3,60 1
SMP IT QARDHAN
HASANA 3,74 14,01 3,74 1
7. Setelah mendapatkan hasil dari iterasi ketiga, dapat dilihat tidak ada pergeseran posisi data yang menyebabkan berpindahnya ke cluster lain.
Oleh karenanya, maka iterasi dihentikan. Sehingga hasil akhir dari proses clustering ini terpampang di iterasi ketiga pada tabel 5.5
4.2.1.2 Perhitungan Perangkat Lunak
Pada gambar 4.14 berikut akan ditampilkan hasil dari proses clustering yang berjalan pada perangkat lunak.
Gambar 4.14 . Hasil Clustering Pada Perangkat Lunak
Pada output yang dihasilkan oleh perangkat lunak, ditampilkan baris array (dari atas ke bawah) untuk cluster pertama, kedua, dan seterusnya. Apabila ingin menambahkan jumlah cluster, maka baris array akan bertambah secara otomatis.
Dalam suatu struktur array menggambarkan data usia guru dari sebuah SMP.
Kumpulan angka pada struktur array merupakan jumlah orang dari masing-masing rentang usia guru yang terdapat dalam suatu SMP.
4.2.1.3 Perhitungan MATLAB
Pada perhitungan menggunakan software MATLAB, didapatkan hasil dalam tabel 5.6 berikut :
Tabel 5.6 Perhitungan Matlab
Nama Sekolah C1 C2 Min.
Distance Cluster SMP ISLAM AL
HASYIMIYYAH 6,73 8,91 6,73 1
SMP HARAPAN MASA DEPAN
CERAH 01 5,88 11,47 5,88 1
SMP IT AL
MUMTAZ 13,45 15,10 13,45 1
SMP IT AL
FITYAN 8,22 12,34 8,22 1
SMP ISLAM
NURUL IHSAN 5,56 12,21 5,56 1
SMP NEGERI 1 PULAU
SEMBILAN 8,39 11,90 8,39 1
SMP PLUS
CITRA
MADINATUL
ILMI 4,20 10,98 4,20 1
SMP
HASBUNALLAH 5,33 12,09 5,33 1
SMP NEGERI 14
BANJARMASIN 14,26 8,28 8,28 2
SMP NEGERI 2
NUNUKAN 12,03 9,47 9,47 2
SMP IT QARDHAN
HASANA 5,71 12,40 5,71 1
SMP NEGERI 2
SENDAWAR 15,70 4,23 4,23 2
SMP NEGERI 6
KETAPANG 14,34 9,77 9,77 2
SMP DARUL
HIJRAH PUTERI 16,07 15,89 15,89 2
SMP NEGERI 1 SEKADAU
HILIR 13,66 5,67 5,67 2
4.2.2 Evaluasi Hasil Perhitungan Manual, Perangkat Lunak, dan MATLAB Berdasarkan hasil pengujian, didapatkan kesimpulan bahwasanya proses clustering pada penghitungan perangkat lunak dan manual memiliki hasil akhir yang sama. Tabel 5.7 berikut merupakan hasil akhir dari kedua percobaan penghitungan yang dilakukan oleh peneliti.
Tabel 5.7 . Hasil Akhir Perhitungan Manual, Perangkat Lunak, dan MATLAB
Perhitungan Manual Perhitungan Perangkat Lunak
CERAH 01
4.3 Analisis Penentuan Jumlah Cluster terbaik
Dalam sistem ini mengimplementasikan metode Elbow sebanyak k = 15 untuk mencari jumlah cluster terbaik. Pada tabel 5.8 ditampilkan nilai SSE (Sum of Square Error) pada data DAPODIK tahun 2018
Tabel 5.8 . Nilai SSE (Sum of Square Error) pada data DAPODIK tahun 2018
K Sum of Square Error
1 2115,484807
2 1837,452101
3 1547,786126
4 1528,083668
5 1517,600624
6 1352,632353
7 1339,305281
8 1293,408517
9 1283,615996
10 1278,604203
11 1274,176775
12 1271,171150
13 1268,638885
14 1264,930056
15 1263,207481
Pada gambar 4.15 menampilkan gambar grafik Elbow untuk data DAPODIK tahun 2018. Sumbu X merepresentasikan jumlah cluster, sedangkan sumbu Y merepresentasikan nilai Sum of Square Error. Pada gambar 4.15 terjadi penurunan nilai SSE secara signifikan saat k = 1 menuju k = 3, hingga k = 6.
Grafik Elbow
2500,000000
2000,000000 1500,000000 1000,000000 500,000000 0,000000
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Gambar 4.15 . Grafik Elbow data DAPODIK tahun 2018
Metode Elbow menyatakan bahwa jumlah cluster terbaik memiliki ciri-ciri berupa grafik membentuk siku dan tidak ada penurunan maupun kenaikan nilai Sum of Square Error yang signifikan. Berdasarkan persyaratan tersebut, didapati bahwa jumlah cluster terbaik terletak pada k = 3, karena pada jumlah cluster ini grafik membentuk siku, dan setelahnya tidak ada penurunan nilai Sum of Square Error secara signifikan. Oleh karenanya, k = 3 direkomendasikan sebagai jumlah cluster yang terbaik.
BAB V PENUTUP
5.1 Simpulan
Penelitian tugas akhir dengan judul “Pengelompokan Sekolah Menengah Pertama Berdasarkan Distribusi Usia Guru dengan Algoritma K-Means++
Clustering” menghasilkan beberapa kesimpulan sebagai berikut :
1. Sistem Pengelompokan Sekolah Menengah Pertama Berdasarkan Distribusi Usia Guru berhasil dibangun dengan mengimplementasikan algoritma K-Means++
Clustering.
2. Pengujian metode Elbow yang dilakukan dengan jumlah cluster sebanyak 1 hingga 15 menghasilkan nilai k = 3 sebagai jumlah cluster yang terbaik/optimal di dalam proses clustering, dikarenakan grafik menunjukkan bahwa k = 3 mendekati bentuk sudut siku.
5.2 Saran
Pengembangan sistem sangat dibutuhkan untuk penelitian mendatang, supaya sistem dapat melakukan :
1. Menerima input dari berbagai macam tipe file.
2. Menyimpan hasil clustering
3. Menampilkan hasil clustering dengan informasi yang detail
4. Menguji kualitas suatu cluster dengan metode Silhouette Coefficien
56
DAFTAR PUSTAKA
Arthur, D.; Vassilvitskii, S. (2007). "k-means++: the advantages of careful seeding" (PDF). Proceedings of the eighteenth annual ACM-SIAM symposium on Discrete algorithms. Society for Industrial and Applied Mathematics Philadelphia, PA, USA. pp. 1027–1035.
Bangoria, B., Mankad, N., dan Pambhar, V., 2013, A Survey on Efficient Enhanced K-Means Clustering Algorithm, International Journal for Scientific Research
& Development, vol. 9, hal 1698-700.
Chandra, M., Fenty, E., dan Fitri, M., 2017, Pengelompokan Kualitas Kerja Pegawai Menggunakan Algoritma K-Means++ dan COP-Kmeans Untuk Merencanakan Program Pemeliharaan Kesehatan Pegawai di PT. PLN P2B JB Depok, Jurnal Pseudocode, vol. 4, hal 16-17.
Davies, and Paul Beynon.2004. Database Systems Third Edition. New York:
Palgrave Macmillan.
Dubes dan Jain, A, (1988), Algorithm for Clustering Data, New Jersey: Prentice Hall.
Efraim Turban, dkk. 2005. “Dec S S e a d I e ge S e . Yogyakarta:ANDI.
Fayyad, U. M, 1996, Advances in Knowledge Discovery and Data Mining.
Camberidge, MA: The MIT Press
Han, J. dan M.Kamber. 2006. “Data Mining Concepts and Techniques Second Ed . San Francisco: Morgan Kaufmann.
Inmon, William H. 2005. B d g T e Da a Wa e e (4 ed.) . Indianapolis :Wiley Publishing, Inc..
Izenman AJ. 2008. “Modern Multivariate Statistical Techniques: Regression, C a f ca , a d Ma f d Lea g . New York (US): Springer.
John. J. Longkutoy. 1989. “Pe ge a a K e : Cetakan Keenam. Jakarta:
PT. Mutiara Sumber Widya.
Kanungo, T.; Mount, D.; Netanyahu, N.; Piatko, C.; Silverman, R.; Wu, A. (2004),
"A Local Search Approximation Algorithm for k-Means Clustering" (PDF), Computational Geometry: Theory and Applications, 28 (2–3): 89–112,
doi:10.1016/j.comgeo.2004.03.003, archived from the original (PDF) on 2006-02-09.
Kodinariya, T. M., & Makwana, P. R. (2013). Review on determining number of cluster in K-Means Clustering. . International Journal of Advance Research in Computer Science and Management Studies,I(6),90-95.
L. Kaufman and P.J. Rousseuw, “F d g G Da a , New York: John Wiley & Sons, 1990.
Madhulatha, T.S., 2012, “A O e e O C e g Me d , IOSR Journal of Engineering, II(4), pp.719-25.
Manvreet dan Usvir (2013). “Comparison Between K-Mean and Hierarchical A g U g Q e Red ec . India: Department of CSE, Sri Guru Granth Sahib World University, Fatehgarh Sahib, Punjab.
Rui Xu dan Donald C. Wunsch II, 2009, “C e g , A John Wiley & Sons, Inc., Publication.
Santoso, Budi. 2007. “Data Mining : Teknik Pemanfaatan data untuk keperluan b . Yogyakarta:Graha Ilmu.
Sugiyono (2015). “Me de Pe e a K b a (M Me d ) . Bandung:
Alfabeta
Vercellis, Bernadth. (2009). “Sistem Informa . Yogyakarta: Lokomedia
LAMPIRAN 1 DESAIN ALGORITMA
Nama Method chooseInitialCenters(points:Collection<T>) : List<CentroidCluster<T>>
Fungsi Method Mencari centroid awal, kedua, dan seterusnya
Input Data bertipe array
Output Data bertipe list
Algoritma :
1. Mengubah tipe data menjadi List untuk indeks yang akan diakses 2. Menentukan jumlah data yang ada di dalam List
3. Mendeklarasikan List centroid awal yang akan dihasilkan 4. Memilih salah satu centroid secara acak dari antara data
5. Lakukan penghitungan jarak terdekat antardata dengan menggunakan Euclidean Distance
6. Gunakan formula randomized seeding technique untuk menentukan probabilitas data yang akan menjadi centroid kedua dengan bantuan nilai acak 7. Jika ditemukan data yang memiliki kumulatif probabilitas yang lebih besar daripada nilai acak, maka akan terpilih sebagai centroid kedua.
8. Lakukan langkah 5 – 7 jika ingin mencari centroid seterusnya
Nama Method Cluster(points:Collection<T>:List Fungsi Method Menampilkan list cluster yang telah
dibentuk
Input Data bertipe list
Output Cluster 1,2 dan seterusnya
Algoritma:
1. Melakukan pengecekan apakah jumlah cluster lebih besar dari jumlah data, jika tidak maka list cluster tidak dapat dibentuk
Nama Method hitungSSE
Fungsi Method Menampilkan nilai Sum of Square Error
Input double [][] points, double[][] centroids
Output Nilai Sum of Square Error
Algoritma:
1. Mendeklarasikan variabel “sse” dengan tipe data double 2. Mendeklarasikan variabel “assignedClust” dengan tipe data int 3. Looping sebanyak cluster yang telah ditentukan
4. Variabel “assignedClust” untuk menampung cluster sebanyak looping sebelumnya
5. Variabel “sse” untuk menjumlahkan hasil perhitungan selisih jarak data dengan centroid dari sejumlah cluster pada langkah 4
2. Jika jumlah cluster lebih besar dari jumlah data, maka buat array berisi list cluster yang telah terbentuk.
3. Lakukan iterasi untuk mengetahui banyaknya list cluster yang akan ditampung terhadap array
4. Jika tidak ada lagi perubahan terhadap list cluster, maka iterasi dihentukan