Pada penelitian ini dilakukan eksperimen dengan menggunakan komputer untuk melakukan proses perhitungan terhadap metode yang diusulkan. Spesifikasi perangkat keras dan sistem operasi yang digunakan pada penelitian ini adalah menggunakan sebuah laptop DELL dengan prosessor Intel(R) Core(TM) i5-3340M CPU @ 2.70GHz, memori (RAM) 4,00 GB, dan menggunakan sistem operasi Windows 10 Pro 64-bit. Sedangkan tools yang digunakan pada penelitian ini antara lain: Microsoft Excel, RapidMiner, dan Rstudio.
Hasil penelitian ini berupa perhitungan pengembangan model dan hasil pengukuran kinerja model. Untuk menerapkan algoritma yang diusulkan dengan klasterisasi k-means dibutuhkan sejumlah dataset sebagai alat uji. Dataset yang diterapkan untuk metode yang diusulkan diantaranya: Iris dan dataset NASA MDP (CM1, KC1, KC3, MC2, MW1, PC1, PC2, PC3, PC4). Dataset iris digunakan karena dataset ini mempunyai jumlah label yang multi cluster sebagai alat uji terhadap algoritma yang diusulkan untuk menentukan jumlah π (cluster). Dataset NASA MDP digunakan untuk menguji terhadap algoritma yang diusulkan dan dengan jumlah actual label sebanyak 2 cluster (Y dan N), selain itu proses klusterisasi ini untuk menangkap kesalahan cluster pada software.
1. Dataset iris
Dalam penelitian ini selain menggunakan dataset NASA MDP juga menggunakan dataset iris karena dataset iris sering digunakan sebagai standar uji algoritma clustering. Penelitian ini menggunakan dataset iris karena dataset ini mempunyai jumlah label yang multi cluster sebagai alat uji terhadap algoritma yang diusulkan untuk menentukan jumlah π (cluster). Dataset ini menggunakan 3 class (setosa, versicolor, virginica) dan 150 sample data. Setiap sample mempunyai 4 atribut yaitu: sepal length, sepal width, petal length, petal width. Perhitungan algoritma yang diusulkan diawali dengan menghitung nilai rata-rata dan nilai
Tabel 4.1. Descriptive statics dataset iris
Statistics Sepal length Sepal width Petal length Petal width
π₯Μ π 5,8433 3,0540 3,7587 1,1987
π (π₯π) 0,8281 0,4336 1,7644 0,7632
Setelah mendapatkan nilai rata-rata dan standar deviasi selanjutnya tetapkan titik center data. Titik center data ditentukan sebagai π = [5.8433 , 3.0540] didapatkan dari atribut sepal length dan sepal width disajikan dalam Gambar 4.1 kemudian menghitung kandidat point center pertama (π1) yang didapat dari maksimal jarak euclidean.
Gambar 4.1. Titik center data iris
Selanjutnya menentukan variabel X dan Y yaitu π = [1.1987 , 3.7587] untuk titik center yang didapatkan dari atribut petal width (π₯πΌ) dan petal length (π₯πΌπΌ). Untuk penentuan kandidat point center kedua (π2) dan kandidat point center selanjutnya (ππ) dengan menggunakan rumus euclidean. Nilai untuk distance didapatkan π1= 2.1878 , π2 = 5.6921, π3= 6.2626, karena nilai distance keempat sama dengan sebelumnya yaitu distance ketiga maka jumlah cluster pada dataset ini sebanyak 3 cluster (π). Kemudian didapatlah titik point center dari keanggotaan cluster yaitu
ππ
ππ π
selanjutnya menghitung clustering data dengan algoritma k-means di dalam tools R dengan memasukkan nilai point center terlebih dahulu kemudian didapatlah cluster berdasarkan nilai π. Dan perbaruan nilai centroid adalah:
π1 = [1.36 4.3]
π2 = [0.244 1.464]
π3 = [2.05 5.63]
Gambar 4.2. Cluster dataset iris dengan algoritma point center k-means Dari gambar 4.2 disajikan pembagian cluster berdasarkan algoritma yang diusulkan, dari pengelompokan tersebut jumlah π1 sebanyak 54 data, π2 sebanyak 50 data, dan π3 sebanyak 46 data. Perbandingan antara label cluster yang didapat dengan label class yang sebenarnya dapat disajikan dalam bentuk tabel 4.2 confusion matrix berikut ini:
ππ°π°
ππ° π1
π2
π3
Tabel 4.2. Confusion matrix proposed method dataset iris Aktual
Setosa Versicolor Virginica Predicted
Dan jika dibandingkan dengan simple k-means yang menetapkan centroid awal secara random maka hasil tabel confusion matrix yang didapat adalah sebagai berikut:
Tabel 4.3. Confusion matrix k-means dataset iris Aktual
Setosa Versicolor Virginica Predicted
Dataset PC1 merupakan data sistem perangkat lunak penerbangan satelit yang mengorbit bumi, memiliki jumlah atribut sebanyak 36, jumlah sample data sebanyak 759. Tabel 4.4 menyajikan nilai rata-rata dan standar deviasi:
Tabel 4.4. Descriptive statics dataset PC1
Atribut Dataset NASA MDP PC1
π₯Μ π π (π₯π)
LOC counts
LOC_total 30,33 40,15
LOC_blank 8,59 14,27
LOC_code_and_comment 1,29 3,97
Atribut π₯Μ π π (π₯π)
LOC_executable 29,04 38,18
Number_of_lines 46,33 59,68
Halstead Content 37,09 30,70
Difficulty 20,09 17,59
Effort 41103,33 205045,10
Error_est 0,31 0,58
Length 154,18 222,94
Level 0,079 0,059
Prog_time 2283,52 11391,39
Volume 938,25 1738,06
Num_operands 66,93 96,83
Num_operators 87,25 126,88
Num_unique_operands 26,61 32,78
Num_unique_operators 16,34 7,88
McCabe Cyclomatic_complexity 7,49 10,21
Cyclomatic_density 0,29 0,16
Design_complexity 4,30 7,50
Design_density 0,63 0,29
Essential_complexity 3,58 5,57
Misc. Branch_count 13,40 18,78
Call_pairs 3,16 3,57
Condition_count 21,26 31,79
Decision_count 9,89 15,09
Decision_density 2,17 0,38
Edge_count 29,45 42,54
Essential_density 0,29 0,38
Parameter_count 0,88 1,15
Maintance_severity 0,50 0,28
Modified_condition_count 5,69 8,41
Multiple_condition_count 10,69 15,99
Normalize_cyclo_cmplx 0,22 0,21
Percent_comments 12,76 15,41
Node_count 23,94 32,64
Selanjutnya tetapkan titik awal data π = [41103.331 , 0.079]
Gambar 4.3. Titik center data PC1
Variabel X dan Y yaitu dengan nilai titik π = [0.079 , 41103.33] didapatkan dari atribut HALSTEAD_LEVEL (π₯πΌ) dan HALSTEAD_EFFORT (π₯πΌ). Nilai jarak yang didapatkan π1 = [4238530.68] dan π1 = [4279576.86]. sehingga nilai point center yaitu π1 = [4279633.01 0.0] dan π2 = [56.15 0.5], jumlah cluster π = 2. Dan perbaruan nilai centroid dengan metode k-means:
π1 = [0.005 3505135.12]
π2 = [0.08 31951.33]
ππ
ππ π
Gambar 4.4. Cluster dataset PC1 dengan algoritma point center k-means Dari gambar 4.4 disajikan pembagian cluster berdasarkan algoritma yang diusulkan, dari pengelompokan tersebut jumlah π1 sebanyak 698 data dan π2 sebanyak 61 data. Perbandingan antara label cluster yang didapat dengan label class yang sebenarnya dapat disajikan dalam bentuk tabel confusion matrix:
Tabel 4.5. Confusion matrix proposed method dataset PC1 Aktual
False (non faulty)
True (faulty)
Predicted
False
(non faulty) 697 1
True
(Faulty) 60 1
πΈππππ =60 + 1
759 = 0.08 π πππ πΌππππ₯ =697 + 1
759 = 0.92 ππ
ππ
Tabel 4.6. Confusion matrix k-means dataset PC1
Dataset PC2 merupakan data simulator dinamis untuk sistem kontrol perilaku, memiliki jumlah atribut sebanyak 35, jumlah sample data sebanyak 1585. Tabel 4.7 menyajikan nilai rata-rata dan standar deviasi:
Tabel 4.7. Descriptive statics dataset PC2
Atribut Dataset NASA MDP PC2
π₯Μ π π (π₯π)
LOC counts
LOC_total 11,252 24,115
LOC_code_and_comment 9,252 21,114
LOC_comments 2,881 9,711
LOC_executable 2 3,293
Number_of_lines 16,538 31,109
Halstead Content 16,837 22,064
Difficulty 11,752 10,457
Effort 7010,177 35366,358
Error_est 0,87 0,241
Length 51,593 101,821
Level 0,142 0,093
Prog_time 389,454 1964,798
Volume 260,02 722,123
Num_operands 20,811 41,656
Num_operators 30,782 60,604
Num_unique_operands 8,895 12,883
Num_unique_operators 10,702 4,750
McCabe Cyclomatic_complexity 3,439 4,936
Cyclomatic_density 0,494 0,316
Design_complexity 2,613 4,016
Design_density 0,788 0,257
Essential_complexity 1,692 3,636
Atribut π₯Μ π π (π₯π)
Misc. Call_pairs 2,809 4,115
Condition_count 9,150 17,804
Decision_count 4,323 8,622
Decision_density 2,135 0,380
Edge_count 14,211 24,728
Essential_density 0,1 0,3
Parameter_count 1,806 1,525
Maintance_severity 0,518 0,249
Modified_condition_count 2,413 4,631 Multiple_condition_count 4,578 8,903
Normalize_cyclo_cmplx 0,333 0,295
Percent_comments 73,059 19,067
Node_count 12,771 19,977
Selanjutnya tetapkan titik awal data π = [7010.2 , 0.14244]
Gambar 4.5. Titik center data PC2 ππ
ππ π
Variabel X dan Y yaitu dengan nilai titik π = [0.0866 , 7010.2] didapatkan dari atribut HALSTEAD_ERROR_EST (π₯πΌ) dan HALSTEAD_EFFORT (π₯πΌπΌ). Nilai jarak yang didapatkan π1 = [875618.5] dan π2 = [882605.4]. Sehingga nilai point center yaitu π1 = [5,52 882628.7] dan π2 = [0 23.22], jumlah cluster π = 2. Dan perbaruan nilai centroid dengan metode k-means:
π1 = [2.285 405829.068]
π2 = [0.076 4987]
Dari gambar 4.6 disajikan pembagian cluster berdasarkan algoritma yang diusulkan, dari pengelompokan tersebut jumlah π1 sebanyak 8 data dan π2 sebanyak 1577 data. Perbandingan antara label cluster yang didapat dengan label class yang sebenarnya dapat disajikan dalam bentuk tabel confusion matrix:
ππ
ππ
Gambar 4.6. Cluster dataset PC2 dengan algoritma point center k-means
Aktual
Tabel 4.9. Confusion matrix k-means dataset PC2 Aktual
Dataset PC3 merupakan data sistem perangkat lunak penerbangan satelit yang mengorbit bumi, memiliki jumlah atribut sebanyak 36, jumlah sample data sebanyak 1125. Tabel 4.10 menyajikan nilai rata-rata dan standar deviasi tiap atribut:
Tabel 4.10. Descriptive statics dataset PC3
Atribut Dataset NASA MDP PC3
π₯Μ π π (π₯π)
LOC LOC_total 29,348 47,242
Atribut Dataset NASA MDP PC3
π₯Μ π π (π₯π)
LOC_comments 5,453 10,247
LOC_executable 27,591 46,513
Number_of_lines 44,277 58,527
Halstead Content 42,994 81,839
Difficulty 18,253 16,59
Effort 45957,2 421464,003
Error_est 0,339 1,206
Length 160,233 399,169
Level 0,085 0,059
Prog_time 2553,176 23414,667
Volume 1017,848 3617,846
Num_operands 71,734 179,380
Num_operators 88,499 221,340
Num_unique_operands 27,286 43,577
Num_unique_operators 15,076 6,381
McCabe Cyclomatic_complexity 7,111 12,355
Cyclomatic_density 0,288 0,157
Design_complexity 3,612 5,054
Design_density 0,604 0,283
Essential_complexity 3,029 4,587
Misc. Branch_count 12,852 24,146
Call_pairs 2,836 3,119
Condition_count 21,049 45,062
Decision_count 9,812 21,818
Decision_density 2,176 0,364
Edge_count 28,129 52,794
Essential_density 0,248 0,365
Parameter_count 1,417 1,234
Maintance_severity 0,473 0,265
Modified_condition_count 5,619 11,691 Multiple_condition_count 10,612 22,654
Normalize_cyclo_cmplx 0,213 0,187
Percent_comments 15,844 19,308
Node_count 23,018 40,635
Selanjutnya tetapkan titik awal data π = [45957.2 , 0.059]
ππ
Gambar 4.7. Titik center data PC3
Variabel X dan Y yaitu dengan nilai titik π = [0.085 , 45957.2] didapatkan dari atribut HALSTEAD_LEVEL (π₯πΌ) dan HALSTEAD_EFFORT (π₯πΌπΌ). Nilai jarak yang didapatkan π1 = [12705494.1] dan π2 = [12751451.3]. Sehingga nilai point center yaitu π1 = [0.01 12751451.28] dan π2 = [0.5 36.19], jumlah cluster π = 2. Dan perbaruan nilai centroid dengan metode k-means:
π1 = [0.01 12751451.3]
π2 = [0.085 34653.34]
ππ π
Gambar 4.8. Cluster dataset PC3 dengan algoritma point center k-means Dari gambar 4.8 disajikan pembagian cluster berdasarkan algoritma yang diusulkan, dari pengelompokan tersebut jumlah π1 sebanyak 1 data dan π2 sebanyak 1124 data. Perbandingan antara label cluster yang didapat dengan label class yang sebenarnya dapat disajikan dalam bentuk tabel confusion matrix:
Tabel 4.11. Confusion matrix proposed method dataset PC3 Aktual
False (non faulty)
True (faulty)
Predicted
False
(non faulty) 984 140
True
(faulty) 1 0
πΈππππ =1 + 140
1125 = 0.125
π πππ πΌππππ₯ = 984
1125= 0.875 ππ
ππ
Aktual
Dataset PC4 merupakan data sistem perangkat lunak penerbangan satelit yang mengorbit bumi, memiliki jumlah atribut sebanyak 36, jumlah sample data sebanyak 1399. Tabel 4.13 menyajikan nilai rata-rata dan standar deviasi tiap atribut:
Tabel 4.13. Descriptive statics dataset PC4
Atribut Dataset NASA MDP PC4
π₯Μ π π (π₯π)
LOC counts
LOC_total 21,483 25,396
LOC_blank 7,292 9,945
LOC_code_and_comment 2,198 5,410
LOC_comments 5,069 9,632
LOC_executable 19,285 22,461
Number_of_lines 37,57 45,64
Halstead Content 27,455 70,143
Difficulty 17,201 16,630
Effort 20328,125 63776,51
Error_est 0,189 0,406
Length 105,771 173,618
Level 0,115 0,012
Prog_time 1129,34 3543,14
Volume 566,92 1218,93
Num_operands 40,34 72,486
Num_operators 65,431 105,352
Num_unique_operands 14,663 20,784
Atribut Dataset NASA MDP PC4
π₯Μ π π (π₯π)
McCabe Cyclomatic_density 0,301 0,306
Design_complexity 2,841 4,061
Design_density 0,724 0,282
Essential_complexity 2,276 3,775
Misc. Branch_count 8,287 12,599
Call_pairs 2,321 2,851
Condition_count 7,424 16,221
Decision_count 3,390 7,547
Decision_density 1,048 1,128
Edge_count 18,478 26,903
Essential_density 0,154 0,314
Parameter_count 0,836 1,154
Maintance_severity 0,597 0,327
Modified_condition_count 2,017 4,397 Multiple_condition_count 3,758 8,383
Normalize_cyclo_cmplx 0,195 0,225
Percent_comments 18,215 21,34
Node_count 15,683 20,82
Selanjutnya tetapkan titik awal data π = [20328.125 , 0.115]
Gambar 4.9. Titik center data PC4
Variabel X dan Y yaitu dengan nilai titik π = [0.115 , 20328.125] didapatkan dari atribut HALSTEAD_LEVEL (π₯πΌ) dan HALSTEAD_EFFORT (π₯πΌπΌ). Nilai jarak yang didapatkan π = [1381391.3] dan π = [1401719.5] sehingga nilai
ππ
π
ππ
π = 2. Dan perbaruan nilai centroid dengan metode k-means:
π1 = [0.016 405200.6]
π2 = [0.117 14463]
Gambar 4.10. Cluster dataset PC4 dengan algoritma point center k-means Dari gambar 4.10 disajikan pembagian cluster berdasarkan algoritma yang diusulkan, dari pengelompokan tersebut jumlah π1 sebanyak 21 data dan π2 sebanyak 1378 data. Perbandingan antara label cluster yang didapat dengan label class yang sebenarnya dapat disajikan dalam bentuk tabel confusion matrix:
Tabel 4.14. Confusion matrix proposed method dataset PC4 Aktual
False (non faulty)
True (faulty)
Predicted
False
(non faulty) 1207 171
ππ
ππ
πΈππππ =14 + 171
1399 = 0.132 π πππ πΌππππ₯ =1207 + 7
1399 = 0.868
Tabel 4.15. Confusion matrix k-means dataset PC4 Aktual
Dataset MW1 merupakan data percobaan nol gravitasi yang berhubungan dengan pembakaran, memiliki jumlah atribut sebanyak 36, jumlah sample data sebanyak 264. Tabel 4.16 menyajikan nilai rata-rata dan standar deviasi tiap atribut:
Tabel 4.16. Descriptive statics dataset MW1
Atribut Dataset NASA MDP MW1
π₯Μ π π (π₯π)
LOC counts
LOC_total 26,155 19,703
LOC_blank 6,208 5,906
LOC_code_and_comment 0,254 1,779
LOC_comments 5,170 6,131
LOC_executable 25,902 19,707
Number_of_lines 38,534 29,273
Halstead Content 45,659 28,235
Difficulty 11,978 8,13
Effort 10579,305 18947,944
Error_est 0,193 0,191
Length 102,75 86,2
Level 0,124 0,076
Atribut π₯Μ π π (π₯π)
Volume 578,76 572,086
Num_operands 45,189 38,261
Num_operators 57,561 48,445
Num_unique_operands 25,129 17,226
Num_unique_operators 13,299 6,523
McCabe Cyclomatic_complexity 5,886 5,114
Cyclomatic_density 0,244 0,115
Design_complexity 4,39 4,092
Design_density 0,795 0,253
Essential_complexity 2,447 3,128
Misc. Branch_count 10,042 8,915
Call_pairs 5,462 4,818
Condition_count 14,121 13,767
Decision_count 6,258 5,947
Decision_density 2,291 1,047
Edge_count 25,678 21,751
Essential_density 0,08 0,271
Parameter_count 0,841 1,056
Maintance_severity 0,434 0,251
Modified_condition_count 3,932 4,122 Multiple_condition_count 7,189 7,296
Normalize_cyclo_cmplx 0,169 0,085
Percent_comments 15,873 13,939
Node_count 21,792 17,168
Selanjutnya tetapkan titik awal data π = [10579.3 0.124]
Gambar 4.11. Titik center data MW1
Variabel X dan Y yaitu dengan nilai titik π = [0.8, 10579.3] didapatkan dari atribut ESSENTIAL_DENSITY (π₯πΌ) dan HALSTEAD_EFFORT (π₯πΌπΌ). Nilai jarak yang didapatkan π1 = [165769.2] dan π2 = [176257.2] sehingga nilai point center yaitu π1 = [0.0 176348.54] dan π2 = [0.0 91.35], jumlah cluster π = 2.
Dan perbaruan nilai centroid dengan metode k-means:
π1 = [0.125 92029.123]
π2 = [0.08 8034]
ππ ππ
π
Gambar 4.12. Cluster dataset MW1 dengan algoritma point center k-means Dari gambar 4.12 disajikan pembagian cluster berdasarkan algoritma yang diusulkan, dari pengelompokan tersebut jumlah π1 sebanyak 8 data dan π2 sebanyak 256 data. Perbandingan antara label cluster yang didapat dengan label class yang sebenarnya dapat disajikan dalam bentuk tabel confusion matrix:
Tabel 4.17. Confusion matrix proposed method dataset MW1 Aktual
False (non faulty)
True (faulty)
Predicted
False
(non faulty) 231 25
True
(faulty) 6 2
πΈππππ =6 + 25
264 = 0.117 π πππ πΌππππ₯ =231 + 2
264 = 0.883 ππ
ππ
Tabel 4.18. Confusion matrix k-means dataset MW1
Dataset CM1 merupakan data Instrumen pesawat ruang angkasa, memiliki jumlah atribut sebanyak 36, jumlah sample data sebanyak 344. Tabel 4.19 menyajikan nilai rata-rata dan standar deviasi tiap atribut:
Tabel 4.19. Descriptive statics dataset CM1
Atribut Dataset NASA MDP CM1
π₯Μ π π (π₯π)
LOC counts
LOC_total 45,017 55,342
LOC_blank 16,052 22,801
LOC_code_and_comment 5,407 9,908
LOC_comments 16,701 29,941
LOC_executable 39,61 48,377
Number_of_lines 79,064 94,613
Halstead Content 48,334 41,185
Difficulty 19,549 14,918
Effort 46857,334 156662,163
Error_est 0,404 0,638
Length 189,093 244,897
Level 0,79 0,57
Prog_time 2603,185 8703,453
Volume 1210,643 1914,179
Num_operands 73,846 97,037
Num_operators 115,247 148,793
Num_unique_operands 34,07 37,707
Num_unique_operators 18,663 9,273
McCabe Cyclomatic_complexity 7,084 9,281
Cyclomatic_density 0,171 0,065
Design_complexity 4,779 6,248
Atribut π₯Μ π π (π₯π)
Design_density 0,708 0,27
Essential_complexity 2,997 4,16
Misc. Branch_count 12,567 16,544
Call_pairs 3,651 3,9
Condition_count 20,163 26,805
Decision_count 9,517 12,485
Decision_density 2,115 0,315
Edge_count 29,637 37,618
Essential_density 0,213 0,343
Parameter_count 1,756 1,893
Maintance_severity 0,444 0,252
Modified_condition_count 5,323 7,194 Multiple_condition_count 10,113 13,442
Normalize_cyclo_cmplx 0,109 0,058
Percent_comments 29,027 18,977
Node_count 24,552 28,749
Selanjutnya tetapkan titik awal data π = [46857.3 0.079]
Gambar 4.13. Titik center data CM1
Variabel X dan Y yaitu dengan nilai titik π = [0.079 46857.3] didapatkan dari atribut HALSTEAD_LEVEL (π₯πΌ) dan HALSTEAD_EFFORT (π₯πΌπΌ). Nilai jarak
ππ ππ
π
point center yaitu π1 = [0.01 2109679.46] dan π2 = [0.43 124.02], jumlah cluster π = 2. Dan perbaruan nilai centroid dengan metode k-means:
π1 = [0.01 1804682]
π2 = [0.08 36577.66]
Gambar 4.14. Cluster dataset CM1 dengan algoritma point center k-means Dari gambar 4.14 disajikan pembagian cluster berdasarkan algoritma yang diusulkan, dari pengelompokan tersebut jumlah π1 sebanyak 2 data dan π2 sebanyak 342 data. Perbandingan antara label cluster yang didapat dengan label class yang sebenarnya dapat disajikan dalam bentuk tabel confusion matrix:
Tabel 4.20. Confusion matrix proposed method dataset CM1 Aktual
False (non faulty)
True (faulty)
Predicted
False
(non faulty) 300 42
True
(faulty) 2 0
ππ
ππ
πΈππππ =
344 = 0.128 π πππ πΌππππ₯ =300
344= 0.872
Tabel 4.21. Confusion matrix k-means dataset CM1 Aktual
Dataset KC1 merupakan data manajemen penyimpanan data lapangan, memiliki jumlah atribut sebanyak 21, jumlah sample data sebanyak 2096. Tabel 4.22 menyajikan nilai rata-rata dan standar deviasi tiap atribut:
Tabel 4.22. Descriptive statics dataset KC1
Atribut Dataset NASA MDP KC1
π₯Μ π π (π₯π)
LOC counts
LOC_total 20,370 29,833
LOC_blank 1,769 3,867
LOC_code_and_comment 0,132 0,705
LOC_comments 0,95 3,094
LOC_executable 14,614 24,237
Halstead Content 21,371 21,503
Difficulty 6,812 7,871
Effort 5274,9 17494,119
Error_est 0,086 0,173
Length 50,137 83,767
Level 0,32 0,316
Prog_time 293,05 971,895
Volume 260,3 517,514
Num_operands 18,902 32,140
Atribut Dataset NASA MDP KC1
π₯Μ π π (π₯π)
Num_unique_operators 7,678 5,718
McCabe Cyclomatic_complexity 2,843 3,912
Design_complexity 2,550 3,386
Essential_complexity 1,678 2,207
Misc. Branch_count 4,676 7,815
Selanjutnya tetapkan titik awal data π = [5274.9 0.086]
Gambar 4.15. Titik center data KC1
Variabel X dan Y yaitu dengan titik π = [0.086 5274.9] didapatkan dari atribut HALSTEAD_ERROR_EST (π₯πΌ) dan HALSTEAD_EFFORT (π₯πΌπΌ). Nilai jarak yang didapatkan π1 = [319528.6] dan π2 = [2324803.5] sehingga nilai point center yaitu π1 = [2.64 324803.51] dan π2= [0.0 0.0], jumlah cluster π = 2.
Dan perbaruan nilai centroid dengan metode k-means:
π1 = [0.77 79207.4]
π2 = [0.06 2607.044]
ππ
ππ π
Gambar 4.16. Cluster dataset KC1 dengan algoritma point center k-means Dari gambar 4.16 disajikan pembagian cluster berdasarkan algoritma yang diusulkan, dari pengelompokan tersebut jumlah π1 sebanyak 73 data dan π2 sebanyak 2023 data. Perbandingan antara label cluster yang didapat dengan label class yang sebenarnya dapat disajikan dalam bentuk tabel confusion matrix:
Tabel 4.23. Confusion matrix proposed method dataset KC1 Aktual
False (non faulty)
True (faulty)
Predicted
False
(non faulty) 1740 283
True
(faulty) 31 42
πΈππππ =31 + 283
2096 = 0.15 π πππ πΌππππ₯ =1740 + 42
2096 = 0.85 ππ
ππ
Tabel 4.24. Confusion matrix k-means dataset KC1
Dataset KC3 merupakan data manajemen penyimpanan data lapangan, memiliki jumlah atribut sebanyak 38, jumlah sample data sebanyak 200. Tabel 4.26 menyajikan nilai rata-rata dan standar deviasi tiap atribut:
Tabel 4.25. Descriptive statics dataset KC3
Atribut Dataset NASA MDP KC3
π₯Μ π π (π₯π)
LOC counts
LOC_total 31,995 33,858
LOC_blank 4,68 5,747
LOC_code_and_comment 0,225 0,835
LOC_comments 2,395 4,733
LOC_executable 31,77 33,469
Number_of_lines 40,495 42,43
Halstead Content 50,647 31,614
Difficulty 17,277 9,509
Effort 30131 63482,585
Error_est 0,366 0,485
Length 182,930 202,612
Level 0,075 0,04
Prog_time 1673,943 3526,81
Volume 1098,246 1455,087
Num_operands 67,545 77,326
Num_operators 115,385 125,572
Num_unique_operands 28,785 25,291
Num_unique_operators 15,96 4,872
McCabe Cyclomatic_complexity 6,265 5,569
Cyclomatic_density 0,232 0,086
Design_complexity 5,370 4,767
Design_density 0,881 0,157
Essential_complexity 2,635 3,979
Atribut π₯Μ π π (π₯π)
Misc. Branch_count 10,685 9,975
Call_pairs 9,350 7,781
Condition_count 13,9 14,11
Decision_count 6,52 6,516
Decision_density 2,132 0,324
Edge_count 37,34 37,22
Essential_density 0,221 0,321
Parameter_count 0,935 0,951
Maintance_severity 0,447 0,235
Modified_condition_count 3,69 3,834 Multiple_condition_count 6,955 7,056
Global_data_complexity 5,145 4,76
Global_data_density 0,828 0,192
Normalize_cyclo_cmplx 0,184 0,07
Percent_comments 5,514 8,455
Node_count 33,075 31,885
Selanjutnya tetapkan titik awal data π = [30131 0.075]
Gambar 4.17. Titik center data KC3
Variabel X dan Y yaitu dengan nilai titik π = [0.075 30131] yang didapatkan dari atribut HALSTEAD_LEVEL (π₯πΌ) dan HALSTEAD_EFFORT (π₯πΌπΌ). Nilai jarak
ππ
ππ π
center yaitu π1 = [0.02 582830.4] dan π2 = [0.29 238.4], jumlah cluster π = 2. Dan perbaruan nilai centroid dengan metode k-means:
π1 = [0.02 237295.4]
π2 = [0.08 18073.8]
Gambar 4.18. Cluster dataset KC3 dengan algoritma point center k-means Dari gambar 4.18 disajikan pembagian cluster berdasarkan algoritma yang diusulkan, dari pengelompokan tersebut jumlah π1 sebanyak 11 data dan π2 sebanyak 189 data. Perbandingan antara label cluster yang didapat dengan label class yang sebenarnya dapat disajikan dalam bentuk tabel confusion matrix:
Tabel 4.26. Confusion matrix proposed method dataset KC3 Aktual
False (non faulty)
True (faulty)
Predicted
False
(non faulty) 158 31
True
(faulty) 5 6
ππ
ππ
πΈππππ =
200 = 0.18 π πππ πΌππππ₯ =158 + 6
200 = 0.82
Tabel 4.27. Confusion matrix k-means dataset KC3 Aktual 10. Dataset NASA MDP MC2
Dataset MC2 merupakan data sistem panduan video, memiliki jumlah atribut sebanyak 38, jumlah sample data sebanyak 127. Tabel 4.4 menyajikan nilai rata-rata dan standar deviasi tiap atribut:
Tabel 4.28. Descriptive statics dataset MC2
Atribut Dataset NASA MDP MC2
π₯Μ π π (π₯π)
LOC counts
LOC_total 43,331 52,489
LOC_blank 11,071 16,196
LOC_code_and_comment 2,346 4,489
LOC_comments 13,56 21,2
LOC_executable 40,984 49,869
Number_of_lines 70,425 86,123
Halstead Content 35 26,585
Difficulty 27,415 24,415
Effort 64050,81 153155
Error_est 0,395 0,555
Length 202,173 249,598
Level 0,077 0,088
Prog_time 3558,378 8508,61
Volume 1185,238 1664,521
Num_operands 85,598 104,11
Num_operators 116,575 146,754
Atribut Dataset NASA MDP MC2
π₯Μ π π (π₯π)
McCabe Cyclomatic_complexity 8,835 10,948
Cyclomatic_density 0,27 0,18
Design_complexity 3,063 3,696
Design_density 0,424 0,223
Essential_complexity 4,386 7,311
Misc. Branch_count 16,3 21,586
Call_pairs 2,213 3,233
Condition_count 27,118 37,2
Decision_count 12,346 16,077
Decision_density 2,106 0,203
Edge_count 34,795 43,606
Essential_density 0,231 0,316
Parameter_count 0,858 1,060
Maintance_severity 0,446 0,226
Modified_condition_count 7,386 10,638 Multiple_condition_count 13,583 18,668
Global_data_complexity 6,913 9,573
Global_data_density 0,791 0,292
Normalize_cyclo_cmplx 0,170 0,115
Percent_comments 21,015 15,508
Node_count 27,961 32,965
Selanjutnya tetapkan titik awal data π = [64050.81 0.077]
Gambar 4.19. Titik center data MC2 ππ
ππ π
atribut HALSTEAD_LEVEL (π₯πΌ) dan HALSTEAD_EFFORT (π₯πΌπΌ). Nilai jarak yang didapatkan π1 = [927578.7] dan π2 = [991617.6] sehingga nilai point center yaitu π1 = [0.01 991629.6] dan π2 = [0.69 12], jumlah cluster π = 2.
Dan perbaruan nilai centroid dengan metode k-means:
π1 = [0.01 627370.7]
π2 = [0.08 31190.5]
Gambar 4.20. Cluster dataset MC2 dengan algoritma point center k-means Dari gambar 4.20 disajikan pembagian cluster berdasarkan algoritma yang diusulkan, dari pengelompokan tersebut jumlah π1 sebanyak 7 data dan π2 sebanyak 120 data. Perbandingan antara label cluster yang didapat dengan label class yang sebenarnya dapat disajikan dalam bentuk tabel confusion matrix:
ππ
ππ
Tabel 4.29. Confusion matrix proposed method dataset MC2
Tabel 4.30. Confusion matrix k-means dataset MC2 Aktual
Pada bagian ini akan dibahas hasil pengukuran dari hasil penelitian yang didapatkan dengan membandingkan hasil pengukuran menggunakan simple means dan k-means mengggunakan metode yang diusulkan. Dataset yang diuji sebanyak 10 dataset yang terdiri dari dataset iris yang mempunyai 3 cluster dan 9 dataset NASA MDP (PC1, PC2, PC3, MW1, CM1, KC1, KC3, dan MC2) yang masing-masing memiliki 2 cluster. Dari hasil eksperimen, algoritma yang dinamakan point center dapat menentukan jumlah cluster (π) dan menentukan nilai centroid awal algoritma
didapatkan hasil sebagai berikut:
Tabel 4.31. Tabel Jumlah Cluster (π)
Dari tabel 4.31 membandingkan antara jumlah cluster (π) label sebenarnya dengan jumlah cluster (π) yang didapatkan melalui proposed method. Jumlah cluster (π) yang didapat menggunakan proposed method sesuai dengan jumlah cluster label sebenarnya artinya dengan menggunakan algoritma proposed method bisa untuk menentukan jumlah cluster yang pada algoritma k-means harus ditentukan terlebih dahulu. Selain untuk penentuan cluster, algoritma ini dapat menentukan nilai centroid awal. Eksperimen dilakukan dua sampai tiga kali pada algoritma k-means yang mendapatkan nilai centroid random, hasil yang didapat terjadi perubahan nilai centroid tiap eksperimen namun tingkat error yang dihasilkan sama saat diuji dengan menggunakan tools R.
Metode yang diusulkan untuk klasterisasi ini bertujuan untuk menentukan nilai centroid awal kemudian nilai centroid tersebut diimplementasikan dengan metode k-means. Hasil komparasi antara metode yang diusulkan dengan metode k-means yang nilai awal ditetapkan secara random disajikan dalam tabel 4.32 berikut.
Tabel 4.32. Hasil Pengujian Metode Berdasarkan Persentase Tingkat Error Datasets k-means (%) Proposed method
(%) Selisih (%)
Iris 10.7 5.3 5.4
Datasets Jumlah
atribut Jumlah Data Jumlah cluster
Datasets k-means (%) Proposed method
(%) Selisih (%)
PC2 1.7 1.4 0.3
PC3 12.5 12.5 0
PC4 13.6 13.2 0.4
MW1 18.2 11.7 6.5
CM1 12.8 12.8 0
KC1 15 15 0
KC3 18.5 18 0.5
MC2 30.7 30.7 0
Total 133.78 120.68 13.1
Dari tabel 4.32 hasil pengujian simple k-means dan metode yang diusulkan didapatkan hasil dari error menggunakan metode yang diusulkan lebih rendah dibandingkan dengan metode k-means. Selisih nilai error dengan 10 dataset diantara keduanya sebesar 13.1%.
Gambar 4.21. Perbandingan Presentase Error 10 Dataset
Dari hasil komparasi antara simple k-means dengan metode yang diusulkan disajikan dengan gambar 4.32 menggunakan 10 dataset dan didapatlah hasil 5 dataset (Iris, PC2, PC4, MW1, KC3) mendapatkan hasil error yang lebih rendah dan terjadi penurunan tingkat error jika menggunakan teknik klusterisasi dari
0 5 10 15 20 25 30 35
Iris PC1 PC2 PC3 PC4 CM1 MW1 KC1 KC3 MC2
Error (%)
Dataset
Presentase Tingkat Error
K-Means Proposed Method
centroid awal karena itu mempengaruhi nilai cluster center yang tetap sehingga tingkat error yang dihasilkan lebih rendah dibandingkan simple k-means yang mendapatkan nilai centroid secara random sehingga cluster center yang dihasilkan tidak tetap. Algoritma yang diusulkan memiliki tinggat lebih bagus untuk dataset NASA MDP seperti dataset PC2, PC4, MW1, dan KC3, untuk dataset NASA lainnya memiliki tingkat yang sebanding dengan simple k-means.
Selain menggunakan pengukuran tingkat error, hasil klusterisasi ini juga dibandingkan menggunakan pengukuran rand index yang disajikan dalah tabel 4.33.
Tabel 4.33. Hasil Pengujian Metode berdasarkan nilai Rand Index
Datasets k-means Proposed method
Iris 0.893 0.947
PC1 0.92 0.92
PC2 0.983 0.986
PC3 0.875 0.875
PC4 0.864 0.868
MW1 0.82 0.883
CM1 0.872 0.872
KC1 0.85 0.85
KC3 0.815 0.82
MC2 0.69 0.69
Rand index berada di antara 0 dan 1, nilai yang mendekati 1 artinya rand index sempurana dan nilai dilihat dari tingginya nilai rand index. Dari hasil tabel 4.34 didapatkan hasil menggunakan metode yang diusulkan lebih tinggi dibandingkan metode simple k-means.
Gambar 4.22. Perbandingan Rand Index metode k-means dan metode yang diusulkan
Dilihat dari gambar 4.22, dari 10 dataset yang dibandingkan dataset iris, PC2, PC4, CM1, dan MW1 mendapatkan hasil rand index tertinggi dengan menggunakan proposed method. Setelah menghitung kinerja proposed method pada 10 dataset uji, 9 dataset diantaranya adalah dataset NASA MDP tujuannya untuk mengkategorikan modul perangkat lunak menjadi cacat dan tidak cacat menggunakan algoritma clustering dan untuk menangkap kesalahan cluster pada perangkat lunak.
Tabel 4.34. Jumlah Modul Cacat Software
Datasets Jumlah atribut Jumlah Modul
Iris PC1 PC2 PC3 PC4 CM1 MW1 KC1 KC3 MC2
Nilai Rand Index
Dataset
Rand Index
K-means Proposed Method
cacat pada dataset NASA MDP. Untuk menangkap kesalahan cluster pada perangkat lunak dengan algoritma clustering point center k-means (PCKM) bisa dilihat dari tingkat error yang diperoleh. Pada 9 dataset NASA MDP (PC1, PC2, PC3, PC4, MW1, CM1, KC1, KC3, dan MC2) dihitung total keseluruhan error sebesar 115,38. Jadi kurang lebih sebesar 12,82% algoritma PCKM menangkap
cacat pada dataset NASA MDP. Untuk menangkap kesalahan cluster pada perangkat lunak dengan algoritma clustering point center k-means (PCKM) bisa dilihat dari tingkat error yang diperoleh. Pada 9 dataset NASA MDP (PC1, PC2, PC3, PC4, MW1, CM1, KC1, KC3, dan MC2) dihitung total keseluruhan error sebesar 115,38. Jadi kurang lebih sebesar 12,82% algoritma PCKM menangkap