Anda di halaman 1dari 178

PERANCANGAN APLIKASI MODUL PRAKTIKUM

DATA MINING UNTUK CLUSTERING DAN


ASSOCIATION RULE

TUGAS AKHIR

Disusun dalam rangka memenuhi salah satu persyaratan

Untuk menyelesaikan program Strata-1 Departemen Teknik Informatika

Universitas Hasanuddin

Makassar

Disusun Oleh :

D42114302 ANGELA HERVINA GOSAL

DEPARTEMEN TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS HASANUDDIN
MAKASSAR
2018
ABSTRAK

Saat ini, algoritma-algoritma data mining dapat diimplementasikan secara


lebih efektif dengan menggunakan aplikasi data mining. Namun, aplikasi data
mining yang sudah ada tidak menjelaskan proses yang dilakukan oleh algoritma
tersebut secara rinci melainkan langsung menampilkan hasil dari algoritma
tersebut. Pemahaman mengenai konsep algoritma data mining seringkali
didapatkan melalui proses pembelajaran atau praktikum dalam perkuliahan dengan
menggunakan kasus data sederhana. Oleh karena itu, dibutuhkan adanya suatu
modul berupa tools atau aplikasi data mining, khususnya dalam ruang lingkup
praktikum data mining yang dapat menjelaskan proses algoritma secara rinci dan
akan digunakan selama pembelajaran mata kuliah Data Mining.

Dalam penelitian ini, telah dirancang suatu aplikasi modul praktikum data
mining untuk algoritma K-Means dan Fuzzy C-Means dari metode clustering serta
algoritma Apriori dari metode association rule yang menampilkan secara rinci dan
bertahap setiap proses yang terjadi selama algoritma tersebut bekerja. Aplikasi ini
mampu menyelesaikan permasalahan data mining dalam skala kasus sederhana dan
mampu memberikan pemahaman kepada penggunanya. Hal ini terbukti dari hasil
pengisian kuisioner oleh 10 orang responden di mana terdapat 58.75% yang sangat
paham dan 40% yang cukup paham dengan algoritma K-Means dan Apriori setelah
menggunakan aplikasi tersebut.

Kata kunci: algoritma data mining, K-Means, FCM, Apriori, aplikasi modul

praktikum

iii
KATA PENGANTAR

Assalamu Alaikum Wr. Wb.

Puji dan syukur penulis panjatkan ke hadirat Tuhan Yang Maha Esa karena

atas berkat rahmat dan karunia-Nya, tugas akhir yang berjudul “PERANCANGAN

APLIKASI MODUL PRAKTIKUM DATA MINING UNTUK

CLUSTERING DAN ASSOCIATION RULE” ini dapat diselesaikan sebagai

salah satu syarat dalam menyelesaikan jenjang Strata-1 pada Departemen Teknik

Informatika Fakultas Teknik Universitas Hasanuddin.

Dalam penyusunan penelitian ini disajikan hasil penelitian terkait judul

yang telah diangkat dan telah melalui proses pencarian dari berbagai sumber baik

jurnal penelitian, prosiding pada seminar-seminar nasional/internasional, buku

maupun dari situs-situs di internet.

Penulis menyadari bahwa tanpa bantuan dan bimbingan dari berbagai pihak,

mulai dari masa perkuliahan sampai dengan masa penyusunan tugas akhir,

sangatlah sulit untuk menyelesaikan tugas akhir ini. Oleh karena itu, penulis dengan

senang hati menyampaikan banyak terima kasih kepada:

1) Kedua orang tua penulis, Bapak Andreas Gosal dan Ibu Lenny Lengkong

serta saudari-saudara penulis, yang senantiasa memberikan dukungan, doa,

dan semangat;

2) Bapak Dr. Indrabayu, S.T., M.T., M.Bus.Sys., selaku pembimbing 1 dan Ibu

Anugrayani Bustamin, S.T., M.T., selaku pembimbing II yang senantiasa

iv
memberikan waktu, tenaga, pikiran, perhatian, doa serta wejangan yang luar

biasa untuk mengarahkan penulis dalam penyusunan tugas akhir;

3) Bapak Amil Ahmad Ilham, S.T., M.IT., Ph.D., selaku Ketua Departemen

Teknik Informatika Fakultas Teknik Universitas Hasanuddin atas bantuan

dan bimbingannya selama masa perkuliahan penulis;

4) Ibu Intan Sari Areni selaku dosen Departemen Teknik Informatika

Universitas Hasanuddin atas bantuan, doa, wejangan serta bimbingannya

dalam penyusunan tugas akhir ini;

5) Segenap keluarga AIMP Research Group Universitas Hasanuddin yang

telah memberikan begitu banyak bantuan selama penelitian, pengambilan

data dan diskusi progress penyusunan tugas akhir serta memberikan

semangat di masa-masa sulit;

6) Para sahabat penulis terutama Erlangga, Anisah Mayang Sari, Tiwi Nur

Safitri, Gian Aron Angelo, Syahdan Edy Murad yang telah memberikan

doa, bantuan dan dukungan sejak masa awal perkuliahan, serta kakak

Himawan Sandhi, kakak Sofyan Tandungan, kakak Nurhajar Anugraha

yang telah memberikan doa, nasihat, bantuan, dukungan dan semangat

selama proses penyelesaian tugas akhir ini;

7) Seluruh teman-teman angkatan 2014 Departemen Teknik Informatika FT-

UH atas semua bantuan dan semangat yang diberikan selama ini;

8) Para sahabat dekat penulis terutama Angelina Kounang, Clara Alverina

Santoso, dan Fellicia Lionard yang telah memberikan doa, nasihat dan

semangat dalam menjalani masa-masa sulit selama penyusunan tugas akhir;


9) Segenap staf Departemen Teknik Informatika Fakultas Teknik Universitas

Hasanuddin yang telah membantu kelancaran penyelesaian tugas akhir

penulis;

10) Orang-orang berpengaruh lainnya yang tanpa sadar telah menjadi inspirasi

bagi penulis.

Akhir kata, penulis berharap semoga Tuhan Yang Maha Esa berkenan

membalas segala kebaikan dari semua pihak yang telah banyak membantu. Semoga

tugas akhir ini dapat memberikan manfaat bagi pengembangan ilmu selanjutnya.

Amin.

Wassalam

Gowa, Agustus 2018

Penulis
DAFTAR ISI

HALAMAN JUDUL ............................................. Error! Bookmark not defined.

HALAMAN PENGESAHAN ............................... Error! Bookmark not defined.

ABSTRAK ............................................................................................................. iii

KATA PENGANTAR ........................................................................................... iv

DAFTAR ISI ......................................................................................................... vii

DAFTAR GAMBAR .............................................................................................. x

DAFTAR TABEL .............................................................................................. xviii

BAB I PENDAHULUAN ....................................................................................... 1

1.1. Latar Belakang .............................................................................................1

1.2. Rumusan Masalah ........................................................................................3

1.3. Tujuan Penelitian .........................................................................................3

1.4. Batasan Penelitian ........................................................................................4

1.5. Manfaat Penelitian .......................................................................................5

1.6. Sistematika Penulisan ..................................................................................6

BAB II TINJAUAN PUSTAKA ............................................................................ 7

2.1. Modul Praktikum .........................................................................................7

2.2. Data Mining .................................................................................................9

2.3. Metode Clustering .....................................................................................15

2.3.1 Algoritma K-Means ......................................................................17

2.3.2 Algoritma Fuzzy C-Means ...........................................................20


2.4. Metode Association Rule ...........................................................................22

2.4.1. Algoritma Apriori .........................................................................25

2.5. GUIDE MATLAB .....................................................................................27

2.6. Unified Modeling Language (UML) ..........................................................30

BAB III METODOLOGI PENELITIAN ............................................................. 32

3.1. Tempat dan Waktu Penelitian ....................................................................32

3.2. Instrumen Penelitian ..................................................................................32

3.3. Metode Penelitian ......................................................................................33

3.4. Perancangan Program Algoritma ...............................................................35

3.4.1. Program Algoritma K-Means .......................................................35

3.4.2. Program Algoritma Fuzzy C-Means (FCM).................................39

3.4.3. Program Algoritma Apriori ..........................................................42

3.5. Perancangan Graphical User Interface (GUI) ............................................47

3.5.1. Rancangan Sistem ........................................................................47

3.5.2. Rancangan Antarmuka Aplikasi ...................................................51

3.6. Pengujian Perangkat Lunak .......................................................................59

BAB IV HASIL DAN PEMBAHASAN .............................................................. 60

4.1. Hasil Penelitian ..........................................................................................60

4.1.1. Hasil Implementasi GUI Aplikasi ................................................60

4.1.2. Hasil Pengujian Aplikasi ............................................................144


4.2. Pembahasan..............................................................................................152

BAB V PENUTUP ............................................................................................. 156

5.1. Kesimpulan ..............................................................................................156

5.2. Saran ........................................................................................................156

DAFTAR PUSTAKA ......................................................................................... 158

LAMPIRAN
DAFTAR GAMBAR

Gambar 2.1. Tahapan data mining sebagai proses penemuan pengetahuan (Kamber

dkk., 2000) ......................................................................................................10

Gambar 2.2. Identifikasi kelompok dengan clustering (Tan dkk., 2005b).............15

Gambar 2.3. Tahapan proses dalam K-Means clustering .......................................18

Gambar 2.4. Tampilan awal GUIDE MATLAB ....................................................29

Gambar 2.5. Contoh use case diagram ..................................................................31

Gambar 2.6. Contoh activity diagram ....................................................................31

Gambar 3.1. Diagram tahapan penelitian ...............................................................33

Gambar 3.2. Proses algoritma K-Means .................................................................35

Gambar 3.3. Proses algoritma FCM .......................................................................39

Gambar 3.4. Proses algoritma Apriori ....................................................................42

Gambar 3.5. Use case diagram aplikasi .................................................................48

Gambar 3.6. Activity diagram proses memilih algoritma.......................................48

Gambar 3.7a. Activity diagram proses menjalankan algoritma K-Means ..............49

Gambar 3.7b. Activity diagram proses menjalankan algoritma Apriori ............... 48

Gambar 3.8. Activity diagram proses menghapus data pada halaman algoritma K-

Means .............................................................................................................50

Gambar 3.9. Activity diagram proses menutup aplikasi .........................................51

Gambar 3.10. Rancangan antarmuka halaman utama aplikasi ...............................52

Gambar 3.11. Rancangan antarmuka halaman algoritma K-Means .......................53

Gambar 3.12. Rancangan antarmuka halaman algoritma FCM .............................55

x
Gambar 3.13. Rancangan antarmuka algoritma Apriori.........................................57

Gambar 4.1. Tampilan GUI halaman utama aplikasi .............................................61

Gambar 4.2. Tampilan ketika tombol “KELUAR” dari menu utama ditekan .......61

Gambar 4.3. Tampilan awal halaman algoritma K-Means .....................................62

Gambar 4.4. Tampilan ketika parameter masukan pada kasus 1 algoritma K-Means

dimuat .............................................................................................................63

Gambar 4.5. Inisialisasi titik centroid pada kasus 1 algoritma K-Means ...............64

Gambar 4.6. Iterasi pertama kasus 1 algoritma K-Means ......................................65

Gambar 4.7. Iterasi kedua kasus 1 algoritma K-Means ..........................................67

Gambar 4.8. Nilai perubahan fungsi objektif pada iterasi kelima kasus 1 algoritma

K-Means lebih kecil dari T .............................................................................69

Gambar 4.9. Iterasi kelima kasus 1 algoritma K-Means.........................................69

Gambar 4.10. Tampilan ketika iterasi pada kasus 1 algoritma K-Means selesai ...70

Gambar 4.11. Tampilan ketika parameter masukan pada kasus 2 algoritma K-Means

dimuat .............................................................................................................70

Gambar 4.12. Tampilan inisialisasi titik centroid pada kasus 2 algoritma K-Means

........................................................................................................................71

Gambar 4.13. Iterasi pertama kasus 2 algoritma K-Means ....................................72

Gambar 4.14. Iterasi kedua kasus 2 algoritma K-Means ........................................73

Gambar 4.15. Nilai perubahan fungsi objektif pada iterasi kelima kasus 2 algoritma

K-Means lebih kecil dari T .............................................................................75

Gambar 4.16. Iterasi kelima kasus 2 algoritma K-Means ......................................75

Gambar 4.17. Tampilan ketika iterasi pada kasus 2 algoritma K-Means selesai ...76

xi
Gambar 4.18. Tampilan ketika parameter masukan kasus 3 algoritma K-Means

dimuat .............................................................................................................76

Gambar 4.19. Tampilan inisialisasi titik centroid pada kasus 3 algoritma K-Means

........................................................................................................................77

Gambar 4.20. Iterasi pertama kasus 3 algoritma K-Means ....................................78

Gambar 4.21. Iterasi kedua kasus 3 algoritma K-Means ........................................80

Gambar 4.22. Nilai perubahan fungsi objektif pada iterasi kelima kasus 2 algoritma

K-Means lebih kecil dari T .............................................................................82

Gambar 4.23. Iterasi kelima kasus 3 algoritma K-Means ......................................82

Gambar 4.24. Tampilan ketika iterasi pada kasus 3 algoritma K-Means selesai ...83

Gambar 4. 25. Tampilan ketika tombol “HAPUS” K-Means ditekan ....................83

Gambar 4.26. Tampilan ketika tombol “KELUAR” K-Means ditekan..................84

Gambar 4.27. Tampilan awal halaman algoritma FCM .........................................85

Gambar 4.28. Tampilan ketika parameter masukan pada kasus 1 algoritma FCM

dimuat .............................................................................................................86

Gambar 4.29. Iterasi pertama kasus 1 algoritma FCM ...........................................87

Gambar 4.30. Perhitungan jarak dan derajat keanggotaan baru pada iterasi pertama

kasus 1 algoritma FCM ..................................................................................88

Gambar 4.31. Iterasi kedua kasus 1 algoritma K-Means ........................................89

Gambar 4.32. Perubahan fungsi objektif pada iterasi kedua algoritma FCM masih

di atas nilai T ..................................................................................................89

Gambar 4.33. Tampilan ketika iterasi pada kasus 3 algoritma FCM selesai .........90

Gambar 4.34. Tampilan awal halaman algoritma Apriori ......................................92

xii
Gambar 4.35. Tampilan ketika parameter masukan kasus 1 algoritma Apriori

dimuat .............................................................................................................93

Gambar 4.36. Pemeriksaan item 1 dalam dataset ID_1 pada kasus 1 algoritma

Apriori ............................................................................................................94

Gambar 4.37. Pemeriksaan item 1 dalam dataset ID_2 pada kasus 1 algoritma

Apriori ............................................................................................................94

Gambar 4.38. Item 1 pada kasus 1 algoritma Apriori memenuhi batas MST ........95

Gambar 4.39. Item 2 pada kasus 1 algoritma Apriori memenuhi batas MST ........96

Gambar 4.40. Item 3 pada kasus 1 algoritma Apriori memenuhi batas MST ........96

Gambar 4.41. Item 4 pada kasus 1 algoritma Apriori memenuhi batas MST ........97

Gambar 4.42. Level 1-itemset pada kasus 1 algoritma Apriori ..............................98

Gambar 4.43. Pembentukan kombinasi item 1 dengan item 1 pada kasus 1 algoritma

Apriori ............................................................................................................99

Gambar 4.44. Pembentukan kombinasi item 1 dengan item 2 pada kasus 1 algoritma

Apriori ............................................................................................................99

Gambar 4.45. Kombinasi 2 item pada kasus 1 algoritma Apriori ........................100

Gambar 4.46. Pemeriksaan itemset [1,2] dalam dataset ID_1 pada kasus 1 algoritma

Apriori ..........................................................................................................101

Gambar 4.47. Itemset [1,2] pada kasus 1 algoritma Apriori memenuhi batas MST

......................................................................................................................101

Gambar 4.48. Level 2-itemset pada kasus 1 algoritma Apriori ............................102

Gambar 4.49. Pembentukan kombinasi item [1,2] dengan item 1 pada kasus 1

algoritma Apriori ..........................................................................................103

xiii
Gambar 4.50. Kombinasi 3 item pada kasus 1 algoritma Apriori ........................103

Gambar 4.51. Pemeriksaan itemset [1,2,3] dalam dataset ID_1 pada kasus 1

algoritma Apriori ..........................................................................................104

Gambar 4.52. Itemset [1,2,3] pada kasus 1 algoritma Apriori memenuhi batas MST

......................................................................................................................105

Gambar 4.53. Level 3-itemset pada kasus 1 algoritma Apriori ............................105

Gambar 4.54. Kombinasi 4 item pada kasus 1 algoritma Apriori ........................106

Gambar 4.55. Itemset [1,2,3,5] pada kasus 1 algoritma Apriori tidak memenuhi

batas MST.....................................................................................................107

Gambar 4.56. Aturan [1,2] pada kasus 1 algoritma Apriori tidak memenuhi batas

nilai lift..........................................................................................................108

Gambar 4.57. Aturan [2,1] pada kasus 1 algoritma Apriori tidak memenuhi batas

nilai MCT dan lift .........................................................................................108

Gambar 4.58. Aturan asosiasi akhir pada kasus 1 algoritma Apriori ...................109

Gambar 4.59. Tampilan ketika algoritma Apriori selesai pada kasus 1 ...............110

Gambar 4.60. Tampilan ketika parameter masukan kasus 2 algoritma Apriori

dimuat ...........................................................................................................110

Gambar 4.61. Pemeriksaan item 1 dalam dataset ID_1 pada kasus 2 algoritma

Apriori ..........................................................................................................111

Gambar 4.62. Item 1 pada kasus 2 algoritma Apriori memenuhi batas MST ......112

Gambar 4.63. Level 1-itemset pada kasus 2 algoritma Apriori ............................112

Gambar 4.64. Pembentukan kombinasi item 1 dengan item 1 pada kasus 2 algoritma

Apriori ..........................................................................................................113

xiv
Gambar 4.65. Pembentukan kombinasi item 1 dengan item 5 pada kasus 2 algoritma

Apriori ..........................................................................................................114

Gambar 4.66. Kombinasi 2 item pada kasus 2 algoritma Apriori ........................114

Gambar 4.67. Pemeriksaan itemset [1,5] dalam dataset ID_1 pada kasus 2 algoritma

Apriori ..........................................................................................................115

Gambar 4.68. Itemset [1,5] pada kasus 2 algoritma Apriori tidak memenuhi batas

MST ..............................................................................................................116

Gambar 4.69. Level 2-itemset pada kasus 2 algoritma Apriori ............................116

Gambar 4.70. Pembentukan kombinasi item [1,23] dengan item 1 pada kasus 2

algoritma Apriori ..........................................................................................117

Gambar 4.71. Pembentukan kombinasi item [1,23,5] pada kasus 2 algoritma Apriori

......................................................................................................................118

Gambar 4.72. Kombinasi 3 item pada kasus 2 algoritma Apriori ........................118

Gambar 4.73. Pemeriksaan itemset [1,23,5] dalam dataset ID_1 pada kasus 2

algoritma Apriori ..........................................................................................119

Gambar 4.74. Itemset [1,23,5] pada kasus 2 algoritma Apriori tidak memenuhi batas

MST ..............................................................................................................120

Gambar 4.75. Level 3-itemset ada kasus 2 algoritma Apriori ..............................120

Gambar 4.76. Kombinasi 4 item pada kasus 2 algoritma Apriori ........................121

Gambar 4.77. Pemeriksaan itemset [5,12,16,20] dalam dataset ID_1 pada kasus 2

algoritma Apriori ..........................................................................................122

Gambar 4.78. Itemset [5,12,16,20] pada kasus 2 algoritma Apriori memenuhi batas

MST ..............................................................................................................123

xv
Gambar 4.79. Level 4-itemset pada kasus 2 algoritma Apriori ............................123

Gambar 4.80. Kombinasi 5 item pada kasus 2 algoritma Apriori ........................124

Gambar 4.81. Pemeriksaan itemset [5,12,16,20,23] dalam dataset ID_1 pada kasus

2 algoritma Apriori .......................................................................................125

Gambar 4.82. Level 5-itemset pada kasus 2 algoritma Apriori ............................126

Gambar 4.83. Aturan [1,23] memenuhi batas MST, MCT, dan lift .....................127

Gambar 4.84. Aturan [2,1] tidak memenuhi batas nilai MCT ..............................127

Gambar 4.85. Aturan asosiasi akhir pada kasus 2 algoritma Apriori ...................128

Gambar 4.86. Tampilan ketika algoritma Apriori selesai pada kasus 2 ...............129

Gambar 4.87. Tampilan ketika parameter masukan kasus 3 algoritma Apriori

dimuat ...........................................................................................................129

Gambar 4.88. Pemeriksaan item 1 dalam dataset ID_1 pada kasus 3 algoritma

Apriori ..........................................................................................................130

Gambar 4.89. Item 1 pada kasus 3 algoritma Apriori memenuhi batas MST ......131

Gambar 4.90. Level 1-itemset pada kasus 3 algoritma Apriori ............................131

Gambar 4.91. Pembentukan kombinasi item 1 dengan item 2 pada kasus 3 algoritma

Apriori ..........................................................................................................132

Gambar 4.92. Kombinasi 2 item pada kasus 3 algoritma Apriori ........................133

Gambar 4.93. Pemeriksaan itemset [1,2] dalam dataset ID_1 pada kasus 3 algoritma

Apriori ..........................................................................................................134

Gambar 4.94. Itemset [1,2] pada kasus 3 algoritma Apriori tidak memenuhi batas

MST ..............................................................................................................134

Gambar 4.95. Level 2-itemset pada kasus 3 algoritma Apriori ............................135

xvi
Gambar 4.96. Pembentukan kombinasi item [1,4] dengan item 1 pada kasus 3

algoritma Apriori ..........................................................................................136

Gambar 4.97. Pembentukan kombinasi item [1,4,2] pada kasus 3 algoritma Apriori

......................................................................................................................137

Gambar 4.98. Kombinasi 3 item pada kasus 3 algoritma Apriori ........................137

Gambar 4.99. Pemeriksaan itemset [1,4,2] dalam dataset ID_1 pada kasus 3

algoritma Apriori ..........................................................................................138

Gambar 4.100. Itemset [1,4,2] pada kasus 3 algoritma Apriori tidak memenuhi batas

MST ..............................................................................................................139

Gambar 4.101. Level 3-itemset pada kasus 3 algoritma Apriori ..........................139

Gambar 4.102. Aturan [1,4] pada kasus 3 algoritma Apriori memenuhi batas MST,

MCT, dan lift ................................................................................................140

Gambar 4.103. Aturan [4,1] pada kasus 3 algoritma Apriori ...............................141

Gambar 4.104. Aturan asosiasi akhir pada kasus 3 algoritma Apriori .................142

Gambar 4.105. Tampilan ketika algoritma Apriori selesai pada kasus 3 .............142

Gambar 4.106. Tampilan ketika tombol “HAPUS” Apriori ditekan....................143

Gambar 4.107. Tampilan ketika tombol “KELUAR” Apriori ditekan.................144

xvii
DAFTAR TABEL

Tabel 2.1. Contoh market basket transaction (Tan dkk., 2005a) ...........................23

Tabel 4.1. Hasil pengelompokan iterasi pertama pada kasus 1 algoritma K-Means

........................................................................................................................65

Tabel 4.2. Hasil pengelompokan iterasi kedua pada kasus 1 algoritma K-Means .67

Tabel 4.3. Hasil pengelompokan iterasi pertama pada kasus 2 algoritma K-Means

........................................................................................................................72

Tabel 4.4. Hasil pengelompokan iterasi kedua pada kasus 2 algoritma K-Means .74

Tabel 4.5. Hasil pengelompokan iterasi pertama pada kasus 3 algoritma K-Means

........................................................................................................................78

Tabel 4.6. Hasil pengelompokan iterasi kedua pada kasus 3 algoritma K-Means .80

Tabel 4.7. Hasil pengelompokan kasus 1 algoritma FCM .....................................90

Tabel 4.8. Hasil pengujian antarmuka halaman utama.........................................145

Tabel 4.9. Hasil pengujian antarmuka halaman K-Means dan FCM ...................146

Tabel 4.10. Hasil pengujian antarmuka halaman Apriori .....................................147

Tabel 4.11. Hasil pengujian fungsi dasar sistem ..................................................149

Tabel 4.12. Hasil pengujian validasi ....................................................................151

Tabel 4.13. Hasil rekapitulasi jawaban responden ...............................................154

xviii
BAB I

PENDAHULUAN

1.1. Latar Belakang

Data merupakan suatu nilai berupa gambar, angka, atau sifat yang sudah

diketahui dan terbukti kebenarannya atau disebut dengan fakta. Dalam dunia

pendidikan sekarang ini, data beredar dengan pesat dan semakin bertambah banyak.

Namun jika data tidak diolah dan ditransformasi menjadi informasi yang

bermanfaat maka akan mengakibatkan kondisi “kebanjiran” data tetapi “miskin”

informasi. Untuk menemukan informasi yang terkandung dalam data-data tersebut,

maka dibutuhkan proses pengolahan data yang biasa disebut dengan data mining.

Data mining pada dasarnya merujuk pada proses mengekstrak atau

“menambang” informasi (knowledge) dari data yang sangat banyak. Data mining

biasanya disebut juga dengan penambangan informasi, ekstraksi informasi, analisis

pola/data, atau penemuan informasi dalam database (Knowledge Discovery in

Databases) (Kamber, dkk., 2000). Sehingga dapat disimpulkan bahwa data mining

adalah proses menemukan informasi yang penting dari data yang sangat banyak

melalui proses ekstraksi pola atau fitur, yang tersimpan dalam database, gudang

data (data warehouse), atau tempat penyimpanan data lainnya.

Proses data mining dapat dilakukan dengan menggunakan metode-metode

data mining, seperti classification, clustering, regression, dan association rule

(Gera, 2015). Masing-masing metode tersebut memiliki beberapa algoritma yang

dapat diterapkan untuk menyelesaikan berbagai permasalahan data mining.

1
Permasalahan data mining dapat berupa proses pengelompokan data, pembentukan

pola, serta pencarian hubungan sebab-akibat antarobjek untuk data dengan skala

yang besar. Data dengan skala besar biasanya diimplementasikan pada kasus

perbankan, medis, pemerintahan, pemasaran dan sebagainya. Proses

pengimplementasian data mining diformulasikan dalam bentuk algoritma.

Pemahaman mengenai konsep algoritma seringkali didapatkan melalui proses

pembelajaran atau praktikum dalam perkuliahan dengan menggunakan kasus data

sederhana. Saat ini, algoritma-algoritma data mining dapat diimplementasikan

secara lebih efektif dengan menggunakan aplikasi data mining. Salah satu aplikasi

data mining yang sering digunakan adalah Weka.

Aplikasi Weka merupakan salah satu aplikasi data mining yang dibuat oleh

mahasiswa dari Universitas Waikato yang mampu mendukung keseluruhan proses

dari data mining, termasuk menyiapkan data masukan, mengevaluasi skema

pembelajaran secara statistik, dan memvisualisasikan data masukan dan hasil

pembelajaran (Frank dkk., 2009). Selain itu, aplikasi Weka juga memiliki algoritma

dan dataset yang lengkap sehingga dapat digunakan untuk menyelesaikan berbagai

permasalahan data mining. Namun, salah satu kekurangan aplikasi Weka adalah

hasil pemrosesan data langsung ditampilkan tanpa terlebih dahulu menampilkan

tahapan proses yang terjadi secara jelas dan rinci. Akibatnya, pengguna aplikasi

Weka cenderung kesulitan dalam memahami dan mempelajari tahapan kerja

algoritma sebelum hasil tersebut didapatkan.

Untuk memberikan pemahaman mengenai tahapan proses algoritma-

algoritma data mining yang terjadi, maka dibutuhkan adanya suatu modul tools atau

2
aplikasi data mining. Modul ini diharapkan dapat mengatasi kekurangan dari

aplikasi Weka yakni dengan memberikan gambaran yang jelas dan rinci mengenai

tahapan proses yang terjadi selama algoritma data mining bekerja. Selain itu, modul

ini juga dapat digunakan sebagai panduan selama pembelajaran atau praktikum

data mining dalam bidang perkuliahan. Oleh karena itu, penulis mengambil judul

tugas akhir “Perancangan Aplikasi Modul Praktikum Data Mining untuk Clustering

dan Association Rule”.

1.2. Rumusan Masalah

Berdasarkan latar belakang penelitian yang telah dijelaskan, maka rumusan

masalah pada penelitian ini adalah:

1. Bagaimana tahapan algoritma dari metode clustering dan association

rule dalam menyelesaikan suatu permasalahan data mining sederhana

untuk skala praktikum?

2. Bagaimana mengetahui efisiensi aplikasi modul praktikum yang telah

dirancang dalam meningkatkan pemahaman pengguna mengenai

algoritma dari metode clustering dan association rule?

1.3. Tujuan Penelitian

Tujuan akhir yang ingin dicapai dari penelitian ini adalah:

1. Mengetahui tahapan algoritma dari metode clustering dan association

rule dalam menyelesaikan suatu permasalahan data mining sederhana

untuk skala praktikum.

3
2. Mengetahui efisiensi aplikasi modul praktikum yang telah dirancang

dalam meningkatkan pemahaman pengguna mengenai algoritma dari

metode clustering dan association rule.

1.4. Batasan Penelitian

Yang menjadi batasan masalah dalam penelitian ini adalah:

1. Algoritma yang diterapkan berdasar pada algoritma dari metode

clustering dan association rule yang sering digunakan selama

pembelajaran data mining, yakni algoritma K-Means, algoritma Fuzzy

C-Means (FCM) dan algoritma Apriori.

2. Aplikasi dibangun dengan menggunakan perangkat lunak MATLAB

versi R2016a.

3. Data masukan yang tersedia dalam aplikasi modul praktikum berupa 3

contoh kasus untuk masing-masing algoritma dalam format file

Microsoft Excel. Selain data masukan yang tersedia, pengguna juga

dapat memasukkan data masukan lainnya dengan ketentuan sebagai

berikut:

a. Untuk algoritma K-Means dan FCM, data masukan tersebut harus:

• dalam format file Microsoft Excel

• berupa data yang telah melalui tahap preprocessing dan siap

dikelompokkan oleh algoritma K-Means dan FCM

• terbagi menjadi dua fitur data dengan judul fitur ditulis pada

baris pertama dan judul setiap data ditulis pada kolom pertama

4
b. Untuk algoritma Apriori, perlu disediakan dua file yakni:

• File data transaksi yang akan diasosiasikan yang harus:

o dalam format file Microsoft Excel

o isi kasus data ditransformasikan menjadi angka biner agar

mudah dipahami dalam aplikasi

o judul setiap item ditulis pada baris pertama dan judul setiap

transaksi ditulis pada kolom pertama

• File .mat yang akan dibaca oleh program Apriori yang harus:

o Dibuat dalam MATLAB dengan menggunakan format

fungsi “save matfile1 m” di mana matfile1 merupakan

nama file .mat tersebut dan m merupakan variabel untuk

menyimpan data tersebut dalam matfile1.

1.5. Manfaat Penelitian

Manfaat yang diharapkan dari penelitian ini adalah:

1. Bagi institusi, aplikasi ini diharapkan dapat menjadi media dan bahan

pembelajaran saat melakukan praktikum data mining.

2. Bagi mahasiswa, aplikasi ini diharapkan dapat menjadi referensi dan

bahan acuan untuk memahami proses yang terjadi selama algoritma K-

Means, Fuzzy C-Means, dan Apriori bekerja.

3. Bagi peneliti, aplikasi ini diharapkan dapat menambah pengetahuan

mengenai tahapan proses algoritma K-Means, Fuzzy C-Means, dan

Apriori.

5
1.6. Sistematika Penulisan

Untuk memberikan gambaran singkat mengenai isi tulisan secara

keseluruhan, maka akan diuraikan beberapa tahapan dari penulisan secara

sistematis, yaitu:

BAB I PENDAHULUAN

Bab ini menguraikan secara umum mengenai hal yang menyangkut latar belakang,

perumusan masalah, tujuan, batasan penelitian, manfaat, dan sistematika penulisan.

BAB II TINJAUAN PUSTAKA

Bab ini berisi teori-teori tentang hal-hal yang berhubungan dengan data mining,

serta metode dan algoritma yang diterapkan dalam aplikasi.

BAB III METODOLOGI PENELITIAN

Bab ini berisi tentang perencanaan dan penerapan algoritma serta teknik

pengolahan data.

BAB IV HASIL DAN PEMBAHASAN

Bab ini berisi tentang hasil pengolahan data serta pembahasan yang disertai tabel

hasil penelitian.

BAB V PENUTUP

Bab ini berisi tentang kesimpulan yang didapatkan berdasarkan hasil penelitian

yang telah dilakukan serta saran-saran untuk pengembangan lebih lanjut.

6
BAB II

TINJAUAN PUSTAKA

2.1. Modul Praktikum

Menurut Kamus Besar Bahasa Indonesia (KBBI), modul adalah kegiatan

belajar-mengajar yang dapat dipelajari oleh murid dengan bantuan yang minimal

dari guru pembimbing, meliputi perencanaan tujuan yang akan dicapai secara jelas,

penyediaan materi pelajaran, alat yang dibutuhkan, serta alat untuk menilai dan

mengukur keberhasilan murid dalam penyelesaian pelajaran. Secara umum, modul

praktikum merupakan alat atau sarana pembelajaran berisi materi praktikum yang

bertujuan agar peserta didik mampu memahami tujuan praktikum yang diinginkan

dengan cara belajar yang mandiri atau dengan bimbingan yang minim dari pengajar

selama kegiatan belajar-mengajar berlangsung.

Menurut Departemen Pendidikan Nasional tahun 2008, sebuah modul

dikatakan baik apabila memenuhi beberapa karakteristik sebagai berikut:

1. Self Instructional, yaitu melalui modul tersebut seseorang atau peserta

didik mampu membelajarkan diri sendiri, tidak tergantung dengan pihak

lain.

2. Self Contained, yaitu seluruh materi pembelajaran dari satu unit

kompetensi atau subkompetensi yang dipelajari terdapat di dalam satu

modul secara utuh. Tujuan dari konsep ini adalah memberikan

kesempatan kepada peserta didik untuk mempelajari materi

7
pembelajaran secara tuntas, karena materi dikemas dalam satu kesatuan

yang utuh. Jika harus dilakukan pembagian atau pemisahan materi dari

satu unit kompetensi harus dilakukan dengan hati-hati dan

memperhatikan keluasan kompetensi yang harus dikuasai.

3. Stand Alone, yaitu modul yang dikembangkan tidak tergantung kepada

media lain atau tidak harus digunakan bersama-sama dengan media

pembelajaran lain. Dengan menggunakan modul, peserta didik tidak

tergantung dan harus menggunakan media yang lain untuk mempelajari

dan atau mengerjakan tugas pada modul tersebut. Jika masih

menggunakan dan bergantung pada media lain selain modul yang

digunakan, maka media tersebut tidak dikategorikan sebagai media

yang berdiri sendiri.

4. Adaptive, yaitu modul hendaknya memiliki daya adaptif yang tinggi

terhadap perkembangan ilmu dan teknologi. Dikatakan adaptif jika

modul dapat menyesuaikan perkembangan ilmu pengetahuan dan

teknologi, serta fleksibel digunakan. Dengan memperhatikan

percepatan perkembangan ilmu dan teknologi, pengembangan modul

multimedia hendaknya tetap bersifat kekinian (up to date). Modul yang

adaptif adalah jika isi materi pembelajaran dapat digunakan sampai

dengan kurun waktu tertentu.

5. User Friendly, yaitu setiap instruksi dan paparan informasi yang

ditampilkan dalam modul hendaknya bersifat membantu dan bersahabat

dengan penggunanya, termasuk kemudahan pengguna dalam merespon

8
dan mengakses sesuai dengan keinginan. Penggunaan bahasa yang

sederhana, mudah dimengerti serta menggunakan istilah yang umum

digunakan merupakan salah satu bentuk user friendly.

2.2. Data Mining

Alasan utama mengapa data mining telah banyak menarik perhatian dan

perindustrian informasi beberapa tahun belakangan ini adalah dikarenakan oleh

adanya ketersediaan data dalam jumlah yang sangat besar dan kebutuhan mendesak

untuk mengubah data tersebut menjadi suatu informasi dan pengetahuan yang

berguna. Informasi dan pengetahuan tersebut dapat digunakan untuk

pengaplikasian mulai dari manajemen bisnis, kontrol produksi, dan analisis pasar,

untuk desain teknik dan eksplorasi ilmu.

Data yang sangat melimpah, bersama dengan kebutuhan analisis data,

seringkali dijelaskan sebagai situasi “kaya data tetapi miskin informasi”. Jumlah

data yang berkembang pesat, yang dikumpulkan dan disimpan dalam database

yang besar, telah jauh melampaui kemampuan pemahaman manusia tanpa adanya

bantuan alat (tools) yang hebat. Sehingga akhirnya, data yang terkumpul dalam

database akan menjadi “kuburan data” yakni arsip data yang jarang dikunjungi.

Akibatnya, keputusan penting sering diambil bukan berdasarkan informasi yang

didapat dari kekayaan data yang tersimpan dalam database tetapi lebih kepada

insting seorang pengambil keputusan, karena pengambil keputusan tersebut tidak

memiliki tools untuk mengekstrak informasi penting yang tertanam dalam data

9
tersebut. Prosedur ini rentan terhadap kegagalan, sangat memakan waktu dan

memerlukan biaya yang besar. Dengan adanya tools data mining dapat dilakukan

analisis data berupa penemuan pola data yang penting, memberikan kontribusi

besar terhadap strategi bisnis, dasar pengetahuan, serta penelitian ilmiah dan medis.

Setelah proses analisis data dilakukan, data bertransformasi menjadi informasi yang

berguna dan bermanfaat. Jarak besar antara data dan informasi memerlukan

pengembangan tools data mining secara sistematis yang akan mengubah “data

kuburan” menjadi “bongkahan emas” dari pengetahuan (Kamber dkk., 2000).

Gambar 2.1. Tahapan data mining sebagai proses penemuan


pengetahuan (Kamber dkk., 2000)

Secara sederhana, data mining merujuk kepada proses menambang atau

mengekstrak pengetahuan dari data dengan jumlah yang sangat besar. Terdapat

pula berbagai istilah yang memiliki makna yang sama dengan data mining, seperti

ekstraksi informasi, analisis data/pola, pengerukan data, dan penemuan

pengetahuan dalam database (Knowledge Discovery in Databases atau KDD).

10
Gambar 2.1 merupakan tahapan proses data mining yang terbagi menjadi beberapa

langkah berurut sebagai berikut (Kamber dkk., 2000) :

1. data cleaning atau pembersihan data yang bertujuan untuk

menghilangkan bising (noise) dan data-data yang tidak relevant

2. data integration atau integrasi data yang bertujuan untuk

menggabungkan beberapa sumber data

3. data selection atau seleksi data di mana data yang relevan dengan tugas

analisis diambil kembali dari database

4. data transformation atau transformasi data di mana data diubah ke

bentuk yang sesuai untuk proses pengolahan data

5. data mining atau penambangan data yang merupakan proses inti di mana

metode cerdas diterapkan agar dapat mengekstrak pola data

6. pattern evaluation atau evaluasi pola untuk mengidentifikasi pola

penting yang sesungguhnya yang dapat menginterpretasikan suatu

pengetahuan berdasarkan tingkat kepentingannya

7. knowledge presentation atau presentasi informasi/pengetahuan di mana

teknik visualisasi dan representasi pengetahuan digunakan untuk

menunjukkan informasi yang didapatkan pada pengguna

Dengan adanya rincian proses pada Gambar 2.1, proses data mining dapat

dipahami dengan jelas. Suatu pola penting ditampilkan dan disimpan sebagai

informasi baru dalam basis informasi. Perlu diingat bahwa berdasarkan Gambar

2.1, data mining hanya merupakan satu langkah dari keseluruhan proses namun

11
merupakan langkah yang paling penting karena bertugas untuk mengungkap pola

yang tersembunyi untuk proses evaluasi (Kamber dkk., 2000).

Setelah beberapa konsep dasar dan proses data mining telah ditinjau, maka

langkah selanjutnya adalah menyiapkan data yang akan digunakan. Data masukan

harus disediakan dalam jumlah, struktur, dan format yang sesuai dengan setiap

algoritma data mining yang akan dijalankan. Namun, database dunia nyata sangat

dipengaruhi oleh faktor-faktor negatif seperti adanya kebisingan data, data yang

hilang, data yang tidak konsisten, berlebihan dan berukuran besar baik dalam

dimensi, contoh dan fitur. Dengan demikian, data berkualitas rendah akan

mengarah pada kinerja data mining berkualitas rendah. Oleh karena itu, diperlukan

adanya proses preprocessing data untuk menghilangkan faktor-faktor negatif

tersebut (García dkk., 2015). Proses preprocessing data tersebut terbagi menjadi

beberapa tahap sebagai berikut:

1. Pembersihan data, yang bertujuan untuk menghilangkan nilai-nilai data

yang salah, memperbaiki kekacauan data dan memeriksa data yang tidak

konsisten. Penyebab kurang baiknya kualitas data mentah adalah karena

adanya kesalahan dalam penyimpanan dan pengukuran, tapi bisa juga

karena tidak adanya nilai mewakili yang tersedia. Outlier atau adanya

nilai yang tidak biasa (lain dari umumnya) muncul karena banyak hal,

antara lain kesalahan pada masukan data dan adanya data yang tidak

tersimpan sehingga nilai default otomatis tersimpan.

2. Transformasi data, yang bertujuan untuk normalisasi dan pengumpulan


data sehingga menjadi suatu bentuk sama. Contoh: Pada tabel berikut

12
ini, tiap faktor memiliki skala yang tidak sama, ada yang besar dan ada
yang kecil.

Dari tabel di atas, dapat dilihat bahwa terdapat ketidakadilan karena


skala nilai yang dimiliki oleh masing-masing faktor berbeda. Untuk
mendapatkan hasil yang lebih adil mengunakan 2 cara:
a. Merangking Pilihan dari tiap faktor
Caranya:
• Memberi rangking per baris
• Menormalkan jumlah dengan cara

Tabel Evaluasi berdasarkan rangking

b. Mengubah nilai sehingga tiap faktor mempunyai nilai yang sama


Caranya:

13
• Untuk mengubahnya supaya mempunyai range 0-1,
menggunakan cara geometri sederhana pada garis lurus.

Keterangan:

Nab : batas atas nilai baru

Nbb : batas bawah nilai baru

Naa : batas atas nilai asli

Nba : batas bawah nilai asli

Tabel Evaluasi berdasarkan range 0-1

3. Integrasi data, yang bertujuan untuk menggabungkan data dari beberapa

sumber (database, data cube, atau file) ke dalam suatu penyimpanan

data yang sesuai.

4. Reduksi data, yang bertujuan untuk menguraikan data ke dalam ukuran

yang lebih kecil sehingga data mudah diproses tetapi tetap

menghasilkan hasil analisis yang sama. Adapun tahap diskretisasi data

14
yang mirip dengan reduksi data tetapi lebih digunakan untuk data yang

bersifat numerik.

2.3. Metode Clustering

Clustering merupakan salah satu metode data mining yang

mengelompokkan data berdasarkan informasi yang menjelaskan mengenai objek

tersebut dan hubungan antarobjeknya. Tujuan yang ingin dicapai adalah bahwa

objek dalam satu kelompok bersifat mirip atau berelasi antara yang satu terhadap

yang lainnya dan berbeda atau tidak berelasi dengan objek dalam kelompok

lainnya. Kemiripan objek tersebut dapat ditentukan dari besar kecilnya jarak

antarobjek pengelompokannya seperti yang diilustrasikan dalam Gambar 2.2. Hal

ini disebut dengan distance-based clustering atau pengelompokan data berdasarkan

jarak. Semakin besar jarak antarobjek dalam kelompok dan semakin kecil jarak

objek antarkelompok, maka semakin baik dan semakin jelas kelompok data yang

terbentuk (Tan dkk., 2005b).

Gambar 2.2. Identifikasi kelompok dengan clustering


(Tan dkk., 2005b)

15
Metode clustering seringkali disebut sebagai metode klasifikasi yang tidak

terawasi (unsupervised). Namun, kedua metode ini memiliki perbedaan yang cukup

signifikan. Dalam klasifikasi terdapat informasi mengenai bagaimana objek-objek

dikelompokkan, lalu dilakukan proses latih pada sistem terhadap objek yang sudah

diberi label untuk mengetahui ke dalam kelompok mana objek tersebut

ditempatkan, dan akhirnya sistem akan mengklasifikasikan objek yang baru dalam

kelompok yang sudah ada, sehingga tidak ada penambahan kelompok. Sedangkan

dalam clustering, jumlah kelompok diasumsikan sendiri tanpa adanya ketentuan

dan informasi terlebih dahulu mengenai data yang akan dikelompokkan, sehingga

didapatkan pengelompokan alami berdasarkan sifat yang dimiliki oleh objek-objek

yang tak berlabel sebelumnya (Tan dkk., 2005b).

Agar lebih jelas, pengaturan buku dalam perpustakaan dapat dijadikan

sebagai contoh. Dalam perpustakaan, tersedia berbagai jenis buku dengan berbagai

topik yang sangat luas. Tantangannya adalah bagaimana menyimpan buku-buku

tersebut secara teratur agar para pembaca dapat mengambil beberapa buku

sekaligus dengan topik tertentu tanpa kewalahan. Dengan menggunakan teknik

clustering, buku-buku yang memiliki kemiripan topik dapat disimpan dalam satu

kelompok atau satu rak buku dan diberi nama label yang sesuai. Sehingga, jika

pembaca ingin mengambil buku dengan topik tertentu, mereka dapat langsung

menuju rak buku tersebut tanpa perlu mencari di seluruh perpustakaan (Tan dkk.,

2005b).

Metode clustering dapat diterapkan dalam berbagai bidang antara lain

(Wakhidah, 2014) :

16
1. Bidang pemasaran untuk mencari kelompok pelanggan yang mirip

dengan perilakunya dengan cara memperoleh properti dan catatan masa

lalu dari database yang besar yang berisi data seluruh pelanggan

2. Bidang biologi untuk klasifikasi tanaman dan binatang

3. Bidang perpustakaan untuk mengelompokkan buku-buku berdasarkan

topiknya

4. Bidang perencanaan kota untuk mengidentifikasi kelompok rumah

sesuai dengan tipe rumah, nilai, dan lokasi geografisnya

2.3.1 Algoritma K-Means

Salah satu algoritma yang digunakan dari metode clustering adalah

algoritma K-Means. Algoritma K-Means merupakan algoritma clustering yang

melakukan pengelompokan data sejumlah n sebanyak k cluster, di mana n dan k

merupakan bilangan bulat positif. Pengelompokan ini dilakukan dengan

meminimalisir total jarak antara data dan titik pusat (centroid) dari cluster yang

bersesuaian (Teknomo, 2007).

Jika jumlah data lebih kecil daripada jumlah cluster yang diinginkan maka

setiap data dapat dijadikan centroid untuk setiap cluster, sehingga setiap centroid

akan memiliki nomor cluster-nya masing-masing. Sedangkan, jika jumlah data

lebih besar daripada jumlah cluster yang diinginkan maka untuk setiap data akan

dikalkulasikan jaraknya terhadap masing-masing centroid yang terbentuk agar

didapatkan jarak data yang paling kecil. Data tersebut akan dimasukkan dalam

17
cluster yang memiliki jarak centroid paling kecil di antara seluruh cluster

(Teknomo, 2007).

Gambar 2.3. Tahapan proses dalam K-Means clustering

Gambar 2.3 menunjukkan tahapan proses yang terjadi saat melakukan

pengelompokan data menggunakan algoritma K-Means. Dalam Gambar 2.3(a)

terlihat sekumpulan data yang akan dikelompokkan menjadi 2 cluster dengan

terlebih dahulu menentukan titik pusat (centroid) dari masing-masing cluster secara

acak, seperti yang terlihat dalam Gambar 2.3 (b). Setelah mendapatkan centroid

dari masing-masing cluster, selanjutnya dilakukan perhitungan jarak dari setiap

data yang ada terhadap setiap centroid dan memperhatikan jarak terkecilnya

sehingga didapatkan anggota dari masing-masing cluster tersebut seperti yang

terlihat dalam Gambar 2.3 (c). Setelah itu dilakukan lagi penentuan centroid yang

baru dengan menghitung nilai rata-rata pada setiap cluster kemudian dilanjutkan

18
dengan perhitungan jarak dari centroid yang baru terhadap masing-masing data.

Hal ini dilakukan untuk memastikan apakah terjadi perubahan keanggotaan cluster

atau tidak. Jika terjadi perubahan anggota data seperti yang terlihat dalam Gambar

2.3(d) dan 2.3(e), maka perhitungan centroid baru akan dilanjutkan dengan

menghitung nilai rata-rata dari setiap cluster. Jika sudah tidak terjadi perubahan

anggota data seperti yang terlihat dalam Gambar 2.3(e) dan 2.3(f), maka proses

pengelompokan data sudah selesai dan anggota dari masing-masing cluster sudah

didapatkan.

Secara sederhana, langkah-langkah dalam menyelesaikan algoritma K-

Means sebagai berikut (Tan dkk., 2005b):

1. Menentukan jumlah cluster (K) yang ingin dibentuk. Jika perlu,

tetapkan ambang batas (T) perubahan posisi centroid.

2. Menentukan titik centroid dari setiap cluster yang akan dibentuk. Pada

awal iterasi, penentuan centroid dapat dilakukan secara acak.

Sedangkan untu iterasi selanjutnya, penentuan centroid dilakukan

dengan menghitung rata-rata nilai dari setiap data dari masing-masing

cluster.

3. Menghitung jarak antara setiap data terhadap setiap titik centroid.

Perhitungan jarak ini biasanya dilakukan dengan menggunakan

persamaan Euclidean Distance yakni:

2
𝐷(𝑥𝑖 , 𝑐𝑗 ) = √∑(𝑥𝑖 − 𝑐𝑗 ) ................................................................. (1)

di mana:

• D(xi , cj) adalah jarak antara data xi terhadap cj

19
• xi adalah data ke-i di mana i adalah jumlah data

• cj adalah centroid cluster j di mana j adalah jumlah cluster

4. Mengelompokkan objek. Penentuan anggota cluster dilakukan dengan

membandingkan jarak centroid dari masing-masing cluster. Data

tersebut akan dikelompokkan dalam cluster yang memiliki jarak

centroid paling kecil dari seluruh cluster.

5. Jika anggota setiap cluster masih berpindah, maka dilakukan perulangan

dari langkah ke-2 hingga akhir dan berhenti saat seluruh data anggota

cluster tidak berpindah lagi ke cluster lain.

2.3.2 Algoritma Fuzzy C-Means

Metode clustering dengan algoritma Fuzzy C-Means (FCM) didasarkan

pada teori logika fuzzy. Teori ini pertama kali diperkenalkan oleh Lotfi Zadeh pada

tahun 1965 dengan nama himpunan fuzzy (fuzzy set). Dalam teori fuzzy,

keanggotaan sebuah data tidak diberikan nilai secara tegas dengan nilai 1 (menjadi

anggota) dan 0 (tidak menjadi anggota), melainkan dengan suatu nilai derajat

keanggotaan yang jangkauan nilainya 0 sampai 1. Nilai keanggotaan suatu data

dalam sebuah himpunan menjadi 0 ketika sama sekali tidak menjadi anggota, dan

menjadi 1 ketika menjadi anggota secara penuh dalam suatu himpunan. Umumnya,

nilai keanggotaannya antara 0 dan 1. Semakin tinggi nilai keanggotaannya maka

semakin tinggi derajat keanggotaannya, dan semakin kecil nilainya maka semakin

rendah derajat keanggotaannya (Zadeh, 1965).

20
FCM sebenarnya merupakan versi fuzzy dari algoritma K-Means. Contoh

sederhananya adalah berupa suhu, yang umumnya terbagi menjadi dua yakni panas

atau dingin. Suhu 100 disebut dingin sedangkan suhu 400 disebut panas. Bagaimana

dengan suhu 200? Jika pada himpunan tegas menyatakan batas suhu dingin adalah

200 maka suhu 210 dinyatakan panas. Dalam teori fuzzy, untuk menentukan suhu

panas atau dingin tersebut ditentukan dengan derajat keanggotaan, misalnya suhu

200 disebut 70% dingin dan 30% panas, dan sebagainya. Dengan demikian,

penentuan status sebuah data pada setiap himpunan didasarkan pada nilai derajat

keanggotaan pada setiap himpunan.

Asumsikan terdapat sejumlah data dalam set data X yang berisi n data dan

berdimensi m. Data tersebut akan dikelompokkan dengan menghitung jaraknya

terhadap setiap centroid (c = c1, c2, …, ck) yang terbentuk, di mana k adalah jumlah

cluster. Setiap data memiliki nilai derajat keanggotaan pada setiap cluster, yang

dinyatakan dengan uij yang bernilai antara 0 sampai 1, i menyatakan data xi dan j

menyatakan cluster cj. Algoritma FCM terbagi menjadi beberapa tahap sebagai

berikut (Bezdek dkk, 1984):

1. Melakukan inisialisasi dengan menentukan jumlah cluster yang akan

dibentuk (k ≥ 2), menentukan bobot pangkat (w > 1), menentukan

ambang batas perubahan nilai fungsi objektif (T). Parameter 𝑐𝑗 adalah

cluster ke-j sedangkan w adalah bobot pangkat (weighting exponent)

yang bernilai w > 1 dan umumnya diberi nilai 2.

2. Menetapkan nilai derajat keanggotaan awal secara acak pada matriks

partisi fuzzy (U) dengan syarat jumlah setiap data selalu sama dengan 1.

21
Nilai keanggotaan tersebut disimpan dalam matriks partisi fuzzy

berukuran Nxk, di mana baris merupakan data sedangkan kolom

merupakan nilai keanggotaan pada setiap cluster. Bentuknya adalah

sebagai berikut:

𝑢11 (𝑥1 ) 𝑢12 (𝑥1 ) ⋯ 𝑢1𝑘 (𝑥1 )


𝑈=[ ⋮ ⋱ ⋮ ] ......................................... (2)
𝑢𝑛1 (𝑥𝑛 ) ⋯ 𝑢𝑛𝑘 (𝑥𝑛 )

3. Menghitung titik centroid dari masing-masing cluster menggunakan

persamaan berikut:

∑𝑁 𝑤
𝑖=1 (𝑈𝑖𝑙 ) .𝑥𝑖𝑗
𝑐𝑖𝑗 = ∑𝑁 𝑤 ............................................................................... (3)
𝑖=1 (𝑈𝑖𝑙 )

4. Membentuk matriks partisi yang baru dengan menghitung derajat

keanggotaan setiap data pada setiap cluster menggunakan persamaan

beriku:
−2
𝐷(𝑥𝑖 ,𝑐𝑗 )𝑤−1
𝑢𝑖𝑗 = −2 ........................................................................... (4)
∑𝑘
𝑙=1 𝐷(𝑥𝑖 ,𝑐𝑙 )
𝑤−1

5. Menghitung nilai fungsi objektif dengan menggunakan persamaan

berikut:

𝐽 = ∑𝑁 𝑘 𝑤 2
𝑖=1 ∑𝑙=1(𝑢𝑖𝑗 ) 𝐷(𝑥𝑖 , 𝑐𝑙 ) ...................................................... (5)

6. Mengulangi langkah 3 sampai 5 sampai nilai perubahan fungsi objektif

yang didapatkan lebih rendah dari nilai ambang batas yang diterapkan.

2.4. Metode Association Rule

Algoritma mesin pembelajaran yang digunakan dalam data mining dan data

ilmiah biasanya berhubungan dengan data numerik serta cenderung sangat

22
matematikal. Namun, berbeda dengan metode aturan asosiasi. Metode aturan

asosiasi atau association rule merupakan salah satu metode data mining yang

mengolah data kategorikal menggunakan perhitungan sederhana dan bertujuan

untuk menemukan pola, asosiasi, korelasi atau hubungan sebab-akibat (antecedent-

consequent) dari seperangkat barang atau item di dalam database (Borne, 2014).

Tabel 2.1. Contoh market basket transaction (Tan dkk., 2005a)

T_ID BARANG
1 {Roti, Susu}
2 {Roti, Popok, Bir, Telur}
3 {Susu, Popok, Bir, Cola}
4 {Roti, Susu, Popok, Bir}
5 {Roti, Susu, Popok, Cola}

Kebanyakan perusahaan bisnis mengakumulasikan data dalam jumlah besar

dari operasi sehari-hari mereka. Misalnya, sejumlah besar data pembelian

pelanggan dikumpulkan setiap hari di kasir toko grosir. Tabel 2.1 mengilustrasikan

contoh dari data tersebut yang umumnya dikenal sebagai transaksi keranjang pasar

(Market Basket Transaction). Setiap baris dalam Tabel 2.1 sesuai dengan transaksi

yang terjadi disertai atribut tanda pengenal transaksi (T-ID) dan sekumpulan item

yang dibeli oleh pelanggan tertentu. Penjual menganalisis data transaksi yang

terjadi untuk mempelajari perilaku pembelian pelanggan mereka. Informasi

berharga seperti ini dapat digunakan untuk mendukung berbagai aplikasi terkait

bisnis seperti promosi pemasaran, manajemen inventaris, dan manajemen

hubungan pelanggan (Tan dkk., 2005a).

23
Metodologi dasar aturan asosiasi dijelaskan sebagai berikut (Tampubolon

dkk., 2013) :

1. Pembentukan Pola Frekuensi Tinggi

Tahap ini mencari kombinasi item yang memenuhi syarat minimum dari

nilai support dalam suatu database. Nilai support adalah nilai penunjang

atau persentase kombinasi sebuah item muncul bersamaan dalam suatu

database. Semakin besar nilai support menandakan semakin banyak

data pendukung yang ditemukan dalam database. Nilai support sebuah

item diperoleh dari persamaan:

∑ Transaksi yang mengandung 𝐴


Support(𝐴) = 𝑥 100% ....................... (6)
Total transaksi

Nilai support dari 2 item diperoleh dari persamaan:

∑ Transaksi yang mengandung 𝐴 𝑑𝑎𝑛 𝐵


Support(𝐴 ⋃ 𝐵) = 𝑥 100% ...... (7)
Total transaksi

2. Pembentukan Aturan Asosiasi

Setelah seluruh pola frekuensi tinggi ditemukan, maka tahap selanjutnya

adalah membentuk aturan asosiasi dengan melihat kombinasi item yang

memenuhi syarat minimum dari nilai confidence. Nilai confidence

adalah nilai keyakinan berupa kuatnya hubungan antar-item yang

didapatkan. Semakin besar nilai confidence menandakan semakin besar

kemungkinan kombinasi item muncul secara bersamaan. Persamaan

24
dari nilai confidence dengan menggunakan kondisi “jika A maka B”

adalah:

∑ Transaksi yang mengandung 𝐴 & 𝐵


Confidence P(𝐵|𝐴) = 𝑥 100% .... (8)
∑ Transaksi yang mengandung A

3. Rasio Peningkatan (Lift Ratio)

Lift Ratio merupakan nilai yang menunjukkan keabsahan aturan yang

terbentuk dalam proses transaksi dan memberikan informasi apakah

benar produk A dibeli bersamaan dengan produk B. Lift Ratio mengukur

seberapa penting aturan yang telah terbentuk berdasarkan nilai support

dan confidence yang telah didapatkan sebelumnya. Jika nilai lift ratio

kurang dari atau sama dengan 1, maka hubungan sebab-akibat yang

terjadi bersifat saling lepas satu sama lain. Sedangkan, jika nilai lift ratio

lebih dari 1, maka hubungan sebab-akibat yang terjadi bersifat saling

berhubungan satu sama lain dan dapat dikatakan kejadian tersebut

bukan kebetulan dan akan berulang. Nilai lift ratio diperoleh dari

persamaan:

𝑠𝑢𝑝𝑝𝑜𝑟𝑡 (A ∪ B)
Lift (A ⇒ B) = ................................................ (9)
𝑠𝑢𝑝𝑝𝑜𝑟𝑡(A)×𝑠𝑢𝑝𝑝𝑜𝑟𝑡(B)

2.4.1. Algoritma Apriori

Salah satu algoritma yang sering digunakan dalam metode aturan asosiasi

adalah algoritma Apriori. Algoritma Apriori merupakan algoritma dasar yang

diusulkan oleh Agrawal dan Srikan di tahun 1994 (Listriani dkk., 2016). Algoritma

25
Apriori adalah algoritma yang melakukan pencarian itemset yang sering muncul

secara bersamaan dalam satu kejadian (frequent itemset) dengan menggunakan

teknik association rule. Algoritma Apriori menggunakan pengetahuan frekuensi

atribut yang telah diketahui sebelumnya untuk memproses informasi selanjutnya

(Pratama dkk., 2009).

Terdapat dua proses utama yang dilakukan oleh algoritma Apriori untuk

membentuk kandidat itemset, yakni (Listriani dkk., 2016) :

1. Join Step (Penggabungan)

Pada proses ini, setiap item dikombinasikan dengan item lainnya sampai

tidak terbentuk kombinasi lagi.

2. Prune Step (Pemangkasan)

Pada proses ini, hasil dari item yang telah dikombinasikan kemudian

dipangkas berdasarkan parameter yang telah ditetapkan sebelumnya.

Cara kerja algoritma Apriori terbagi menjadi beberapa tahap sebagai berikut

(Tan dkk., 2005a) :

1. Pembentukan Kandidat Itemset

Pembentukan itemset dimulai dari level 1-itemset dengan menghitung

nilai support dari setiap item yang terdapat dalam database. Kandidat k-

itemset selanjutnya dibentuk dari kombinasi (k-1)-itemset yang didapat

dari iterasi sebelumnya. Salah satu cara dari algoritma Apriori adalah

pemangkasan kandidat k-itemset yang subsetnya berisi k-1 item tidak

termasuk dalam pola frekuensi tinggi dengan panjang k-1.

26
2. Perhitungan Support dari Setiap Kandidat K-Itemset

Support dari setiap kandidat k-itemset didapat dengan melakukan

pemindaian (scan) database untuk menghitung jumlah transaksi yang

memuat seluruh item di dalam kandidat k-itemset tersebut. Hal ini juga

merupakan ciri dari algoritma Apriori untuk menemukan k-itemset

terpanjang dari seluruh database.

3. Penetapan Pola Frekuensi Tinggi

Pola frekuensi tinggi yang memuat k-item atau k-itemset ditetapkan dari

kandidat k-itemset yang memiliki nilai support lebih besar dari nilai

ambang batas support terkecil atau Minimum Support Threshold (MST).

Hal ini disebut juga dengan pembentukan frequent itemset.

4. Bila tidak ada lagi pola frekuensi tinggi baru yang dapat dibentuk maka

seluruh proses dihentikan dan didapatkan aturan-aturan asosiasi yang

memenuhi syarat MST. Aturan-aturan asosiasi tersebut kemudian

disaring untuk mendapatkan aturan akhir yang lebih besar dari nilai

ambang batas confidence terkecil atau Minimum Confidence Threshold

(MCT) dan memiliki nilai lift yang lebih besar dari 1.

2.5. GUIDE MATLAB

Tampilan antarmuka pengguna atau user interface (UI) merupakan sebuah

tampilan grafis dalam satu jendela atau lebih yang berisi komponen-komponen

yang memungkinkan pengguna untuk melaksanakan tugas-tugas interaktif.

Pengguna tidak harus membuat skrip atau mengetikkan perintah pada command

27
line untuk menjalankan tugas tersebut. Tidak seperti program pengkodean untuk

menjalankan suatu tugas, pengguna tidak perlu memahami detail tentang

bagaimana tugas dilakukan (MathWorks Inc., 2015).

Secara umum, UI menunggu pengguna untuk memanipulasi kontrol, dan

kemudian menanggapi setiap tindakan pengguna secara bergantian. Setiap kontrol,

dan UI itu sendiri, memiliki satu atau lebih callback, disebut demikian karena fakta

bahwa mereka "memanggil kembali" ke MATLAB untuk memintanya melakukan

tugas atau tindakan tertentu. Tindakan tertentu pengguna yang dapat dilakukan

adalah seperti menekan tombol layar, melewatkan kursor di atas komponen, atau

memicu eksekusi setiap panggilan balik. UI kemudian menanggapi tindakan-

tindakan ini. Pengguna, sebagai pencipta UI, menulis callback yang mendefinisikan

apa yang dilakukan komponen untuk menangani tindakan yang disebut events

(MathWorks Inc., 2015).

GUIDE (GUI Builder) adalah lingkungan pengembangan yang

menyediakan seperangkat alat untuk menciptakan berbagai UI dalam MATLAB.

Alat-alat ini menyederhanakan proses peletakan dan pemrograman UI. Pembuatan

UI menggunakan GUIDE MATLAB terbagi menjadi dua bagian, yakni bagian tata

letak UI (UI Layout) dan bagian pemrograman UI (UI Programming).

1. UI Layout

Dengan menggunakan GUIDE Layout Editor, pengguna dapat mengisi

UI dengan mengklik dan menyeret komponen UI ke dalam area tata

letak seperti yang tampak pada Gambar 2.4. Pengguna juga dapat

membuat menu dan menu konteks untuk UI. Dari Layout Editor,

28
pengguna dapat mengukur UI, memodifikasi tampilan dan nuansa

komponen, menyelaraskan komponen, mengatur urutan tab, melihat

Gambar 2.4. Tampilan awal GUIDE MATLAB

daftar hirarkis objek-objek komponen, dan mengatur pilihan-pilihan

yang tersedia dalam UI (MathWorks Inc., 2015).

2. UI Programming

GUIDE secara otomatis mengeluarkan file program berisi fungsi

MATLAB yang mengontrol bagaimana UI berperilaku. File program ini

menyediakan kode untuk menginisialisasi UI dan berisi kerangka kerja

(framework) bagi callback UI. Callback adalah fungsi yang dijalankan

ketika pengguna berinteraksi dengan komponen UI. Pengguna dapat

menggunakan MATLAB Editor untuk menambahkan kode ke dalam

callback ini (MathWorks Inc., 2015).

29
GUIDE MATLAB mempunyai kelebihan tersendiri dibandingkan dengan

bahasa pemrograman lainnya antara lain (Wijaya, 2009) :

1. GUIDE banyak digunakan dan cocok untuk aplikasi-aplikasi

berorientasi sains sehingga banyak penulis dan mahasiswa

menggunakan GUIDE untuk menyelesaikan riset atau tugas akhirnya.

2. GUIDE menyediakan fungsi built-in yang siap digunakan dan pengguna

tidak perlu repot membuatnya sendiri.

3. Ukuran file, baik FIG-file maupun M-file, yang dihasilkan relatif kecil.

4. Kemampuan grafisnya cukup handal dan tidak kalah dibandingkan

dengan bahasa pemrograman lainnya.

2.6. Unified Modeling Language (UML)

UML merupakan bahasa standar yang digunakan untuk menjelaskan dan

memvisualisasikan proses analisis dan desain yang menggunakan konsep

berorientasi objek yang dapat dipahami oleh manusia dan mesin. UML juga

menyediakan standar pada notasi dan diagram yang bisa digunakan untuk

memodelkan suatu sistem. UML dikembangkan oleh 3 pendekar “berorientasi

objek”, yaitu Grady Booch, Jim Rumbaugh, dan Ivar Jacobson. UML menyediakan

notasi-notasi yang membantu memodelkan sistem dari berbagai prespetktif. UML

tidak hanya digunakan dalam pemodelan perangkat lunak, namun hampir dalam

seluruh bidang yang membutuhkan pemodelan.

Salah satu bagian utama dari UML adalah diagram. Diagram merupakan

salah satu bentuk grafik yang menggunakan simbol elemen model untuk

30
mengilustrasikan bagian atau aspek tertentu dari suatu sistem. Adapun jenis

diagram dari UML antara lain use case diagram dan activity diagram.

1. Use Case Diagram

Use case diagram yaitu salah satu jenis diagram pada UML yang

menggambarkan interaksi antara sistem dan penggunanya seperti pada Gambar 2.5.

Gambar 2.5. Contoh use case diagram

2. Activity Diagram

Activity diagram yaitu salah satu jenis diagram dari UML yang dapat

memodelkan proses-proses yang terjadi pada keseluruhan sistem seperti pada

Gambar 2.6 berikut.

Gambar 2.6. Contoh activity diagram

31
BAB III

METODOLOGI PENELITIAN

3.1. Tempat dan Waktu Penelitian

Pelaksanaan penelitian bertempat di Laboratorium Kecerdasan Buatan

Departemen Teknik Informatika Universitas Hasanuddin. Waktu penelitian

dilakukan selama 4 bulan dimulai sejak disetujuinya proposal penelitian ini pada

akhir bulan Maret 2018 hingga pelaporan hasil penelitian pada Juli 2018.

3.2. Instrumen Penelitian

Instrumen yang digunakan dalam penelitian ini adalah:

1. Perangkat Keras

• Laptop Lenovo ideapad 310 dengan spesifikasi sebagai berikut:

o Intel® Core ™ i5-72000U

o RAM sebesar 4GB

o 64-bit operating system, x64-based processor

o Windows 10 Pro

2. Perangkat Lunak

• MATLAB versi R2016a

32
3.3. Metode Penelitian

Metode penelitian yang dilakukan terbagi menjadi beberapa tahap

sebagaimana ditunjukkan oleh Gambar 3.1 berikut.

2. 4. 3.
1.
Penyusunan Perancangan Perancangan
Studi
Penuntun dan Program Graphical
Literatur
Format Jurnal Algoritma User Interface
Terkait
Praktikum (GUI)

6. 5.
Pembuatan Pengujian
Laporan Perangkat Lunak

Gambar 3.1. Diagram tahapan penelitian

Secara garis besar, tahapan yang dilakukan dalam penelitian ini dijelaskan sebagai

berikut:

1. Studi Literatur Terkait

Pada tahap ini dilakukan pencarian penelitian terkait algoritma K-

Means, Fuzzy C-Means dan Apriori, baik secara perhitungan manual

maupun pemrograman menggunakan MATLAB. Selain itu, dilakukan

pula pencarian dokumentasi hasil penelitian-penelitian sebelumnya

terkait algoritma data mining tersebut.

2. Penyusunan Penuntun dan Format Jurnal Praktikum

Pada tahap ini dilakukan penyusunan penuntun praktikum data mining

yang berfungsi sebagai pedoman mahasiswa dalam menjalankan

memahami tahapan proses yang terjadi pada aplikasi modul praktikum

33
data mining. Selain itu, dilakukan pula penyusunan format jurnal

praktikum yang akan diisi oleh mahasiswa yang mengambil mata kuliah

Data Mining sebagai hasil dari praktikum data mining yang telah

dilaksanakan.

3. Perancangan Program Algoritma

Pada tahap ini dilakukan perancangan program algoritma data mining

yang diterapkan yakni algoritma K-Means, Fuzzy C-Means dan Apriori

dengan menggunakan perangkat lunak MATLAB versi R2016a.

4. Perancangan Graphical User Interface (GUI)

Dalam perancangan GUI, program algoritma K-Means, Fuzzy C-Means

dan Apriori diimplementasikan ke dalam GUI menggunakan GUIDE

yang terdapat pada MATLAB. Perancangan GUI aplikasi modul

praktikum ini terbagi menjadi 2 bagian, yakni rancangan sistem yang

menggunakan use case diagram dan activity diagram serta rancangan

antarmuka aplikasi.

5. Pengujian Sistem

Pada tahap ini dilakukan pengujian sistem untuk keseluruhan aplikasi

modul praktikum yang telah dirancang. Pengujian sistem dilakukan

dengan menggunakan metode pengujian blackbox dan melalui kuisioner

untuk menilai efisiensi aplikasi tersebut.

6. Pembuatan Laporan

34
Setelah melakukan tahap-tahap penelitian di atas, maka keseluruhan

tahapan yang dilakukan beserta hasil dan analisanya dirampungkan

dalam pembuatan laporan penelitian.

3.4. Perancangan Program Algoritma

3.4.1. Program Algoritma K-Means

Program algoritma K-Means dirancang berdasarkan alur proses kerja

algoritma sebagaimana yang ditunjukkan oleh Gambar 3.2 berikut:

Gambar 3.2. Proses algoritma K-Means

Flowchart pada Gambar 3.2 menjelaskan proses kerja algoritma K-Means

yang diuraikan sebagai berikut:

1. Memasukkan parameter yang digunakan yakni data yang ingin

dikelompokkan, jumlah cluster yang ingin dibentuk (K), dan nilai

35
ambang batas (T) perubahan posisi centroid. Berikut ini merupakan

potongan kode program dari proses memuat parameter masukan.

%% PARAMETER MASUKAN
disp(‘***Data masukan***’);
fprintf(‘\n’);
X = xlsread(‘data1.xlsx’);
y2 = table(X(:,1), X(:,2),…
‘VariableNames’,{‘Fitur_X’, ‘Fitur_Y’});
disp(y2);
K = input(‘K = ’);
T = input(‘T = ’);
fprintf(‘\n’);

2. Menentukan titik centroid awal dari setiap cluster yang akan dibentuk.

Penentuan titik centroid awal dapat dilakukan secara acak. Berikut ini

merupakan potongan kode program untuk menentukan titik centroid

awal.

%% PENENTUAN CENTROID AWAL


disp('***Inisialisasi Titik Centroid Awal (Cmeans)***\n');
R = randperm(Ndata); %secara acak
for c=1:K
Cmeans(c,:) = X(R(1,c)',:);
fprintf('\nTitik Centroid %d : %1.4f %1.4f',c,Cmeans(c,:));
end
fprintf('\n');

3. Memulai iterasi dengan menghitung jarak setiap titik data terhadap

setiap titik centroid dengan menggunakan persamaan Euclidean

Distance. Setelah itu, membandingkan jarak data dari centroid yang satu

terhadap centroid yang lainnya. Data tersebut akan dikelompokkan ke

dalam cluster yang memiliki jarak centroid paling kecil dari seluruhnya.

Berikut ini merupakan potongan kode program untuk menghitung jarak.

%% MENGELOMPOKKAN SETIAP OBJEK DATA DALAM MASING-MASING CENTROID


for a=1:Ndata
for b=1:K

36
% Menggunakan rumus Euclidean Distance
dist(b) = sqrt(sum((X(a,:)-Cmeans(b,:)).^2));
fprintf('Jarak data %d ke centroid %d \n', a,b);
fprintf(' = sqrt[(X(%d,1)-Cmeans(%d,1))^2 + (X(%d,2)-
Cmeans(%d,2))^2] \n',a,b,a,b);
fprintf(' = sqrt[(%1.3f - %1.3f)^2 + (%1.3f - %1.3f)^2]
\n', X(a,1),Cmeans(b,1),X(a,2),Cmeans(b,2));
fprintf(' = %1.3f \n',dist(b));
distAll(a,b) = abs(dist(b));
end
% Indeks dari data dengan jarak terkecil
index_min = find(~(dist-min(dist)));
% Jika ada lbh dari 1 indeks yg sama, maka dipilih secara acak
index_min = index_min(ceil(length(index_min)*rand));

Cmeans_temp(index_min,:) = Cmeans_temp(index_min,:) + X(a,:);


Ncluster_temp(index_min) = Ncluster_temp(index_min) + 1;

fprintf('Jarak terkecil adalah ke centroid %d dengan nilai %1.3f


sehingga data %d masuk dalam cluster %d. \n', ...
index_min,dist(index_min),a,index_min);
fprintf('\n');
indexAndCluster(a,:) = [a,index_min];
[aO,aS] = sort(indexAndCluster);

clusterAndDistance(a,:) = [index_min, dist(index_min)];


dataAndCluster = [X(aS(:,2),:), aO(:,2)];
end

4. Mengamati apakah terdapat data yang berpindah cluster dengan

menghitung nilai fungsi objektif. Nilai fungsi objektif didapatkan

dengan menjumlahkan jarak setiap data dalam cluster yang

ditempatinya. Setelah itu, membandingkan nilai fungsi objektif lama

dan baru untuk mendapatkan nilai perubahan fungsi objektif (temp).

Nilai perubahan fungsi objektif yang melebihi nilai ambang batas

(temp>T) menandakan bahwa perubahan posisi centroid belum

memenuhi nilai ambang batas yang ditetapkan sehingga proses iterasi

dilanjutkan. Sedangkan nilai perubahan fungsi objektif yang lebih kecil

daripada nilai ambang batas (temp<T) menandakan bahwa proses

37
iterasi telah selesai. Berikut ini merupakan potongan kode program

untuk menghitung nilai fungsi objektif.

%% FUNGSI OBJEKTIF
fprintf('\n----- Perhitungan Fungsi Objektif -----\n');
cls = clusterAndDistance(:,1);
for i=1:K
s8 = clusterAndDistance(cls==i,2);
s9(i) = sum(s8);
fprintf('Jumlah jarak minimum data dalam cluster %d = %1.4f',
i,s9(i));
end
fobj_baru = sum(s9,2);
fprintf('Fungsi objektif lama = %1.3f \n',fobj_lama);
fprintf('Fungsi objektif baru = %1.3f \n',fobj_baru);
temp = abs(fobj_baru - fobj_lama);
fprintf('Perubahan fungsi objektif = |%1.4f - %1.4f| = %1.4f \n',
fobj_baru,fobj_lama,temp);

if temp > T
fprintf('Karena perubahan nilai fungsi objektif yang didapatkan
lebih besar dari T maka proses iterasi dilanjutkan.\n');
else
fprintf('Karena perubahan nilai fungsi objektif yang didapatkan
TIDAK lebih besar dari T maka proses iterasi selesai.\n');
end

fobj_lama = fobj_baru;

5. Menghitung titik centroid yang baru dan melanjutkan proses iterasi.

Berikut ini merupakan potongan kode program untuk menghitung titik

centroid baru.

%% TITIK CENTROID BARU


fprintf('\nDengan merata-ratakan nilai jarak seluruh data pada setiap
clusternya, maka didapatkan: \n');
for c=1:K
Cmeans_temp(c,:) = Cmeans_temp(c,:) / Ncluster_temp(c);
fprintf('Titik centroid baru untuk cluster %d: %1.3f %1.3f \n', ...
c,Cmeans_temp(c,:));
end

38
3.4.2. Program Algoritma Fuzzy C-Means (FCM)

Program algoritma FCM dirancang berdasarkan alur proses kerja algoritma

sebagaimana yang ditunjukkan oleh Gambar 3.3 berikut.

Gambar 3.3. Proses algoritma FCM

Flowchart pada Gambar 3.3 menjelaskan proses kerja algoritma FCM yang

diuraikan sebagai berikut:

1. Memasukkan parameter yang digunakan yakni X, K, T, W, U. Berikut

ini merupakan potongan kode program untuk memuat parameter

masukan.

%% PARAMETER MASUKAN
disp('***Data masukan***');
fprintf('\n');
X = xlsread ('test.xlsx');

39
y2 = table(X(:,1), X(:,2),...
'VariableNames',{'Fitur_X','Fitur_Y'});
disp(y2);
K = input('K = ');
W = input('W = ');
T = input('T = ');
fprintf('\n');
[Ndata,dim]=size(X);
U = rand(length(X),K);
disp('U = ');
disp(U);

2. Menentukan titik centroid dari setiap cluster yang akan dibentuk.

Berikut ini merupakan potongan kode program untuk menghitung titik

centroid.

%% Hitung titik centroid tiap cluster


for y=1:K
for y1=1:Ndata
m1(y1)=U(y1,y).^W;
end
m=sum(m1);
sum1=[];
for a=1:dim
for b=1:Ndata
c{y}(b,a)=(U(b,y)^W).*X(b,a);
end
sum1(:,a)=sum(c{y}(:,a)); %#ok
centroid(y,a)=sum1(:,a)/m; %#ok
end
end

3. Menghitung jarak dari setiap data terhadap masing-masing titik centroid

dengan menggunakan persamaan Euclidean Distance. Bersamaan

dengan itu, dilakukan pula perhitungan nilai derajat keanggotaan baru

untuk setiap elemen data sehingga membentuk matriks partisi yang baru

(U_baru). Berikut ini merupakan potongan kode program untuk

menghitung jarak dan matriks partisi baru.

%% Hitung jarak data dan derajat keanggotaan baru

40
for i=1:Ndata
for j=1:K
d(i,j)=sqrt(sum((X(i,:)-centroid(j,:)).^2)); %#ok
d2=[];
for l=1:K
d2(l)=1/((sqrt(sum((X(i,:)-centroid(l,:)).^2))).^(2/(W-
1))); %jarak
end
%matriks partisi baru
U_baru(i,j)=(1./(d(i,j).^(2/(W-1))))./sum(d2);
end
end

4. Menghitung nilai fungsi objektif baru (J). Berikut ini merupakan

potongan program untuk menghitung nilai J.

%% Hitung fungsi objektif


for z=1:K
for r=1:Ndata
J(r,z)=(U_baru(r,z)^W).*(d(r,z)^2);
end
f1=sum(J);
end
fobj_baru=sum(f1);
delta=abs(fobj_lama-fobj_baru);

5. Mengulangi langkah 2 sampai 4 jika nilai J > T dan berhenti jika nilai J

< T.

41
3.4.3. Program Algoritma Apriori

Program algoritma Apriori dirancang berdasarkan alur proses kerja

algoritma sebagaimana yang ditunjukkan oleh Gambar 3.4 berikut:

Gambar 3.4. Proses algoritma Apriori

Flowchart pada Gambar 3.4 menjelaskan proses kerja algoritma Apriori

yang diuraikan sebagai berikut:

1. Memasukkan parameter yang digunakan yakni data transaksi yang

ditinjau, nilai MST, dan nilai MCT. Berikut ini merupakan potongan

kode program untuk memuat parameter masukan.

%% PARAMETER MASUKAN
matfile = load('data1.mat');
data = matfile.T;

fprintf('\n');
disp('***Dataset masukan***');

42
fprintf('\n');

view = xlsread ('data_apriori_1.xlsx');


MST = input('MST = ');
MCT = input('MCT = ');
fprintf('\n');

2. Melakukan scanning terhadap keseluruhan database untuk

mendapatkan level-1 kandidat itemset. Kemudian menghitung nilai

support untuk masing-masing item sehingga didapatkan frequent

itemset level 1. Jika nilai support item lebih besar dari atau sama dengan

nilai MST, maka item tersebut masuk dalam pembentukan itemset

selanjutnya. Sebaliknya, jika nilai support item lebih kecil dari nilai

MST maka item tersebut tidak dimasukkan dalam proses algoritma

selanjutnya. Berikut ini merupakan potongan kode program untuk

menghitung nilai support dari setiap item yang terdapat dalam database.

%% KANDIDAT ITEM LEVEL 1


fprintf('Setelah itu, dilakukan scanning di setiap level itemset
terhadap keseluruhan database. \n');

C{1}=cell(1,numel(Items));
count{1}=zeros(size(C{1}));

fprintf('\n----------------------');
fprintf('\nLEVEL 1-ITEMSET');
fprintf('\n----------------------\n');

for r=1:numel(Items)
C{1}{r}=Items(r);
fprintf('\n>>>> Item %d \n', C{1}{r});

for i=1:numel(data)
fprintf('\nDataset %d ==> ', i);
disp(data{i});
if IsContainedIn(C{1}{r},data{i})
count{1}(r)=count{1}(r)+1;
fprintf('\tTerdapat item %d \n', C{1}{r});
else
fprintf('\tTidak terdapat item %d \n', C{1}{r});
end

43
end

fprintf('\n');
fprintf('\nSehingga total kemunculan item pada keseluruhan
database = %d \n', count{1}(r));
spr(r) = count{1}(r)/numel(data);
fprintf('\nNilai support untuk item');
disp(C{1}{r});
fprintf('\t= %d / %d = %1.3f\n', count{1}(r),numel(data),spr(r));

fprintf('\n');
end

% Itemset Level 1
L{1}=C{1}(count{1}/numel(data)>=MST);
fprintf('\nItemset Level 1 yang memenuhi batas MST adalah : \n');
disp(L{1}(:));
fprintf('\n');

3. Melakukan pembentukan itemset level selanjutnya dengan

menggabungkan item-item pada level 1. Pembentukan itemset ini

dilakukan sampai seluruh item telah selesai digabungkan satu sama lain.

Berikut ini merupakan potongan kode program untuk membentuk

itemset level selanjutnya.

%% PEMBENTUKAN ITEMSET LEVEL SELANJUTNYA


while ~isempty(L{k})
Itemset=[];

for i=1:numel(L{k})
Itemset=union(Itemset,L{k}{i});
end
Itemset=Itemset(:)';

% Level Itemset Selanjutnya


fprintf('\n----------------------');
fprintf('\nLEVEL %d-ITEMSET',k+1);
fprintf('\n----------------------\n');
C{k+1}={};
for i=1:numel(L{k})
A=L{k}{i};
for j=1:numel(Itemset);
if ~ismember(A,Itemset(j))
New=[A Itemset(j)];
Found=false;
for r=1:numel(C{k+1})

44
if Same(New,C{k+1}{r})
Found=true;
break;
end
end
if ~Found
C{k+1}=[C{k+1} {New}];
end
end
end
end
fprintf('\nKombinasi item baru : \n');
disp(cell2mat(C{k+1}(:)));

% Menghitung Kombinasi item dalam Database


count{k+1}=zeros(size(C{k+1})); %#ok
for r=1:numel(C{k+1})
fprintf('\n>>>> Item');
disp(C{k+1}{r});
for i=1:numel(data)
fprintf('\nDataset %d ==> ', i);
disp(data{i});
if IsContainedIn(C{k+1}{r},data{i})
count{k+1}(r)=count{k+1}(r)+1;
fprintf('\tTerdapat item ');
disp(C{k+1}{r});
else
fprintf('\tTidak terdapat item ');
disp(C{k+1}{r});
end
end
fprintf('\n');
fprintf('\nSehingga total kemunculan item pada keseluruhan
database = %d \n', count{k+1}(r));
end

for r=1:numel(C{k+1})
sprt(r) = count{k+1}(r)/numel(data);
fprintf('\nNilai support untuk item');
disp(C{k+1}{r});
fprintf('\t= %d / %d = %1.3f\n', count{k+1}(r), numel(data),
sprt(r));
fprintf('\n');
end

% Kandidat Itemset Level Selanjutnya


L{k+1}=C{k+1}(count{k+1}/numel(data)>=MST); %#ok
if ~isempty(L{k+1})
fprintf('\nItemset Level %d yang memenuhi batas MST adalah:
\n', k+1);
disp(cell2mat(L{k+1}(:)));
fprintf('\n');
else

45
fprintf('\nItemset Level %d yang memenuhi batas MST adalah: 0
\n',k+1);
fprintf('\n');
end

% Menambah Level Itemset


k=k+1;
end

L=L(1:end-1);
fprintf('\n----------------------');
fprintf('\nFREQUENT ITEMSET');
fprintf('\n----------------------\n');
fprintf('\nItemset yang memenuhi batas MST (%1.3f) pada setiap
levelnya :\n', MST);
for i=1:numel(L)
fprintf('\nLevel %d-itemset :\n',i);
disp(cell2mat(L{i}(:)));
end

4. Menghitung nilai support, confidence, dan lift dari setiap itemset yang

terbentuk. Itemset dengan nilai support yang lebih besar atau sama

dengan nilai MST, nilai confidence yang lebih besar atau sama dengan

nilai MCT, dan nilai lift yang lebih besar dari 1 masuk dalam daftar

aturan akhir yang terbentuk. Berikut ini merupakan potongan kode

program untuk pembentukan aturan asosiasi akhir.

%% PEMBENTUKAN ATURAN
Rules={};
Supp=[];
Conf=[];
Lift=[];
for k=2:numel(L)
for i=1:numel(L{k})
countL=0; %jumlah kemunculan
for j=1:numel(data)
if IsContainedIn(L{k}{i},data{j})
countL=countL+1;
end
end
S=GetNonTrivialSubsets(L{k}{i});
Q=S(end:-1:1);
for r=1:numel(S)
Rules=[Rules; {S{r} Q{r}}]; %#ok

46
countS=0;
countQ=0;
for j=1:numel(data)
if IsContainedIn(S{r},data{j})
countS=countS+1;
end
if IsContainedIn(Q{r},data{j})
countQ=countQ+1;
end
end
Supp=[Supp; countL/numel(data)];
Conf=[Conf; countL/countS];
Lift=[Lift; countL/(countS*countQ/numel(data))];
end
end
end

3.5. Perancangan Graphical User Interface (GUI)

Secara garis besar, perancangan GUI aplikasi modul praktikum terbagi

menjadi rancangan sistem dan rancangan antarmuka aplikasi.

3.5.1. Rancangan Sistem

3.5.1.1. Use Case Diagram

Kebutuhan fungsional sistem dapat digambarkan dalam bentuk use case

diagram. Use case diagram dari aplikasi modul praktikum data mining setelah

pengguna membuka aplikasi dapat dilihat pada Gambar 3.5. Dalam aplikasi ini,

hanya terdapat 1 aktor yakni pengguna aplikasi yang dapat menjalankan aplikasi

tersebut melalui tombol-tombol yang tersedia dalam aplikasi.

47
Gambar 3.5. Use case diagram aplikasi

3.5.1.2. Activity Diagram

Proses yang terjadi dalam aplikasi modul praktikum data mining mulai dari

awal sistem bekerja hingga selesai digambarkan dalam bentuk activity diagram.

Gambar 3.6 menunjukkan activity diagram yang menjelaskan proses memilih

algoritma yang diinginkan pada halaman awal aplikasi.

Gambar 3.6. Activity diagram proses memilih algoritma

48
Gambar 3.7 menunjukkan activity diagram yang menjelaskan proses

menjalankan algoritma dari awal hingga selesai, di mana Gambar 3.7(a)

menjelaskan proses algoritma K-Means dan Gambar 3.7(b) menjelaskan proses

algoritma Apriori. Pada dasarnya, proses menjalankan kedua algoritma ini hampir

sama, namun yang membedakan adalah parameter data yang dimasukkan. Ketika

menjalankan algoritma K-Means, parameter yang dimasukkan adalah jumlah

cluster (K) dan nilai ambang batas yang ingin diterapkan (T), sedangkan ketika

menjalankan algoritma Apriori, parameter yang dimasukkan adalah nilai MST dan

nilai MCT.

Gambar 3.7a. Activity diagram proses menjalankan


algoritma K-Means

49
Gambar 3.7b. Activity diagram proses menjalankan
algoritma Apriori

Gambar 3.8 menunjukkan activity diagram yang menjelaskan proses menghapus

data pada aplikasi.

Gambar 3.8. Activity diagram proses menghapus data pada


halaman algoritma K-Means

50
Gambar 3.9 menunjukkan activity diagram yang menjelaskan proses keluar dan

menutup aplikasi.

Gambar 3.9. Activity diagram proses menutup aplikasi

3.5.2. Rancangan Antarmuka Aplikasi

Tampilan antarmuka (User Interface atau UI) sangat penting dalam

pembuatan suatu aplikasi karena merupakan bagian dari perangkat lunak yang

menjadi sarana komunikasi antara pengguna dengan aplikasi yang akan digunakan.

Aplikasi modul praktikum ini akan terbagi menjadi 4 halaman, yakni halaman

utama aplikasi, halaman algoritma K-Means, halaman algoritma FCM, dan halaman

algoritma Apriori.

a. Halaman Utama Aplikasi

Halaman utama aplikasi merupakan tampilan awal dari aplikasi modul

praktikum data mining yang mengarahkan pengguna untuk memilih algoritma data

mining yang diinginkan. Gambar 3.10 menunjukkan rancangan antarmuka dari

halaman utama aplikasi.

51
Gambar 3.10. Rancangan antarmuka halaman utama aplikasi

Pada halaman ini terdapat 4 tombol yang dapat digunakan oleh pengguna aplikasi

yakni:

1. Tombol “Algoritma K-Means” yang berfungsi untuk mengarahkan

pengguna kepada halaman aplikasi algoritma K-Means.

2. Tombol “Algoritma FCM” yang berfungsi untuk mengarahkan pengguna

kepada halaman aplikasi algoritma FCM.

3. Tombol “Algoritma Apriori” yang berfungsi untuk mengarahkan pengguna

kepada halaman aplikasi algoritma Apriori.

4. Tombol “KELUAR” yang berfungsi untuk menutup aplikasi modul

praktikum data mining.

b. Halaman Algoritma K-Means

Halaman algoritma K-Means berfungsi untuk menampilkan tahapan proses

yang terjadi selama algoritma K-Means bekerja. Rancangan antarmuka halaman

algoritma K-Means ditunjukkan oleh Gambar 3.11 berikut.

52
Gambar 3.11. Rancangan antarmuka halaman algoritma K-Means

Pada halaman ini, terdapat 6 tombol yang dapat digunakan yakni:

1. Tombol “MUAT DATA” yang berfungsi untuk memuat data masukan

K-Means yang ingin diterapkan dalam aplikasi.

2. Tombol “CARI DATA” yang berfungsi untuk mencari dan memuat data

masukan K-Means lainnya yang tidak disediakan pada aplikasi dengan

mengikuti ketentuan jenis data yang diberikan.

3. Tombol “MULAI” yang berfungsi untuk memulai dan menjalankan

algoritma K-Means dari awal. Proses algoritma akan tertampil dalam

textbox yang disediakan secara bertahap.

4. Tombol “LANJUT” yang berfungsi untuk melanjutkan tahapan

algoritma sampai proses algoritma selesai.

53
5. Tombol “HAPUS” yang berfungsi untuk menghapus seluruh data yang

sudah tertampil pada aplikasi saat algoritma bekerja sehingga pengguna

dapat mengulang kembali proses algoritma dari awal.

6. Tombol “KELUAR” yang berfungsi untuk menutup aplikasi modul

praktikum algoritma K-Means.

Selain tombol, terdapat pula beberapa komponen lainnya yang berguna

untuk menampilkan informasi sehubungan dengan proses kerja algoritma yang

terjadi. Komponen-komponen tersebut adalah:

1. Listbox untuk memilih kasus data masukan yang dimuat.

2. Dropdown list untuk memilih jumlah cluster yang akan dibentuk.

3. Edit text untuk memasukkan nilai ambang batas atau threshold (T).

4. Textbox untuk menampilkan proses perhitungan jarak dan fungsi

objektif secara rinci.

5. Tabel untuk menampilkan isi dari data masukan, titik centroid sekarang,

titik centroid baru, jarak data ke masing-masing centroid, dan hasil akhir

clustering yang didapatkan.

6. Grafik untuk memperlihatkan posisi setiap data dan centroid serta

perpindahan titik centroid hingga terbentuk pengelompokan data yang

tetap.

c. Halaman Algoritma Fuzzy C-Means (FCM)

54
Halaman algoritma FCM berfungsi untuk menampilkan tahapan proses

yang terjadi selama algoritma FCM bekerja. Rancangan antarmuka halaman

algoritma K-Means ditunjukkan oleh Gambar 3.12 berikut.

Gambar 3.12. Rancangan antarmuka halaman algoritma FCM

Pada halaman ini, terdapat 7 tombol yang dapat digunakan yakni:

1. Tombol “MUAT DATA” yasng berfungsi untuk memuat data masukan

FCM yang ingin diterapkan dalam aplikasi.

2. Tombol “CARI DATA” yang berfungsi untuk mencari dan memuat data

masukan FCM lainnya yang tidak disediakan pada aplikasi dengan

mengikuti ketentuan jenis data yang diberikan.

3. Tombol “Derajat Keanggotaan Awal (U)” yang berfungsi untuk memuat

nilai derajat keanggotaan awal secara acak dan dimasukkan dalam

matriks partisi fuzzy.

55
4. Tombol “MULAI” yang berfungsi untuk memulai dan menjalankan

algoritma FCM dari awal. Proses algoritma akan tertampil dalam

textbox yang disediakan secara bertahap.

5. Tombol “LANJUT” yang berfungsi untuk melanjutkan tahapan

algoritma sampai proses algoritma selesai.

6. Tombol “HAPUS” yang berfungsi untuk menghapus seluruh data yang

sudah tertampil pada aplikasi saat algoritma bekerja sehingga pengguna

dapat mengulang kembali proses algoritma dari awal.

7. Tombol “KELUAR” yang berfungsi untuk menutup aplikasi modul

praktikum algoritma FCM.

Selain tombol, terdapat pula beberapa komponen lainnya yang berguna

untuk menampilkan informasi sehubungan dengan proses kerja algoritma yang

terjadi. Komponen-komponen tersebut adalah:

1. Listbox untuk memilih kasus data masukan yang dimuat.

2. Dropdown list untuk memilih jumlah cluster yang akan dibentuk.

3. Edit text untuk memasukkan nilai ambang batas atau threshold (T) dan

nilai bobot (W).

4. Textbox untuk menampilkan proses perhitungan jarak dan fungsi

objektif secara rinci.

5. Tabel untuk menampilkan isi dari data masukan, matriks partisi fuzzy,

titik centroid, jarak data ke masing-masing centroid, dan hasil akhir

clustering yang didapatkan.

56
6. Grafik untuk memperlihatkan posisi setiap data dan centroid serta

perpindahan titik centroid hingga terbentuk pengelompokan data yang

tetap.

d. Halaman Algoritma Apriori

Halaman algoritma Apriori berfungsi untuk menampilkan tahapan proses

yang terjadi selama algoritma Apriori bekerja. Gambaran rancangan antarmuka

halaman algoritma Apriori ditunjukkan oleh Gambar 3.13 berikut.

Gambar 3.13. Rancangan antarmuka algoritma Apriori

Pada halaman algoritma Apriori terdapat 7 tombol yang dapat digunakan

yakni:

1. Tombol “MUAT DATA” yang berfungsi untuk memuat data masukan

yang ingin diterapkan dalam aplikasi.

57
2. Tombol “CARI DATA” yang berfungsi untuk mencari dan memuat data

masukan Apriori lainnya yang tidak disediakan pada aplikasi dengan

mengikuti ketentuan jenis data yang diberikan.

3. Tombol “CARI FILE .MAT” yang berfungsi untuk mencari dan

memuat file .mat yang bersesuaian dengan kasus data yang dimasukkan

sebelumnya. File ini berguna untuk mempermudah proses algoritma

dalam epmbentukan itemset.

4. Tombol “MULAI” yang berfungsi untuk memulai dan menjalankan

algoritma Apriori dari awal. Proses algoritma akan tertampil dalam tabel

dan textbox yang disediakan secara bertahap.

5. Tombol “LANJUT” yang berfungsi untuk melanjutkan tahapan

algoritma sampai proses algoritma selesai.

6. Tombol “HAPUS” yang berfungsi untuk menghapus seluruh data yang

sudah tertampil pada aplikasi saat algoritma bekerja sehingga pengguna

dapat mengulang kembali proses algoritma dari awal.

7. Tombol “KELUAR” yang berfungsi untuk menutup aplikasi modul

praktikum algoritma Apriori.

Selain tombol, terdapat pula beberapa komponen lainnya yang berguna

untuk menampilkan informasi sehubungan dengan proses kerja algoritma yang

terjadi. Komponen-komponen tersebut adalah:

1. Listbox untuk memilih kasus data masukan yang dimuat.

2. Edit text untuk memasukkan nilai MST dan MCT.

58
3. Textbox untuk menampilkan proses perhitungan nilai support,

confidence, dan lift serta proses pembentukan itemset.

4. Tabel untuk menampilkan isi data masukan, dataset yang ditinjau,

itemset yang ditinjau, seluruh kombinasi item yang terbentuk, itemset

yang memenuhi syarat nilai MST, seluruh aturan yang terbentuk, serta

aturan akhir yang memenuhi nilai MCT dan Lift.

3.6. Pengujian Perangkat Lunak

Pengujian perangkat lunak dilakukan untuk memperoleh informasi serta

mengevaluasi kinerja perangkat lunak yang telah dirancang. Dalam pengujian

aplikasi ini, digunakan metode pengujian black box. Pengujian ini dianalogikan

seperti melihat kotak hitam, di mana kita hanya dapat melihat penampilan luarnya

saja tanpa mengetahui apa yang ada di balik bungkus hitamnya. Oleh karena itu,

pengujian black box hanya mengamati hasil eksekusi sistem dan memeriksa kinerja

perangkat lunak secara fungsional seperti tampilan antarmuka aplikasi.

Pengujian black box hanya menguji masukan dan keluaran yang dihasilkan

saja. Teknik ini disebut juga dengan teknik pengujian equivalence partitioning,

yakni menerima masukan dan memeriksa apakah keluaran yang dihasilkan sesuai

dengan apa yang diharapkan atau masih terdapat kesalahan. Hal-hal yang diujikan

dalam aplikasi ini meliputi kinerja dari komponen UI yang terdapat dalam aplikasi

dan perhitungan algoritma K-Means, FCM dan Apriori yang dilakukan secara benar

dan tepat.

59
BAB IV

HASIL DAN PEMBAHASAN

4.1. Hasil Penelitian

4.1.1. Hasil Implementasi GUI Aplikasi

Rancangan antarmuka aplikasi yang telah dirancang sebelumnya

diimplementasikan ke dalam tampilan antarmuka grafis (Graphical User Interface

atau GUI). Tampilan antarmuka dari keseluruhan aplikasi modul praktikum ini

dirancang dengan menggunakan GUIDE (GUI Builder) MATLAB. Secara

keseluruhan, aplikasi ini terbagi menjadi 4 halaman, yakni halaman utama aplikasi,

halaman algoritma K-Means, halaman algoritma FCM, dan halaman algoritma

Apriori.

4.1.1.1.GUI Utama Aplikasi

GUI utama aplikasi merupakan halaman yang pertama muncul saat aplikasi

modul praktikum dibuka. Halaman ini mengarahkan pengguna untuk memilih

algoritma mana yang ingin dijalankan. Terdapat 3 tombol yang merupakan pilihan

algoritma yang disediakan, yakni algoritma K-Means, FCM dan Apriori

sebagaimana yang ditunjukkan oleh Gambar 4.1. Masing-masing tombol tersebut

mengarahkan pengguna ke halaman algoritma yang dipilih.

60
Gambar 4.1. Tampilan GUI halaman utama aplikasi

Pada halaman ini juga terdapat tombol “KELUAR” yang dapat digunakan untuk

menutup aplikasi. Ketika tombol ini ditekan, maka akan muncul pertanyaan

konfirmasi apakah pengguna ingin keluar dari aplikasi atau tidak sebagaimana

ditunjukkan oleh Gambar 4.2 berikut. Jika pengguna memilih ya maka aplikasi

akan tertutup, sedangkan jika tidak maka aplikasi modul praktikum akan tetap

terbuka.

Gambar 4.2. Tampilan ketika tombol “KELUAR” dari


menu utama ditekan

61
4.1.1.2.GUI Algoritma K-Means

Gambar 4.3 merupakan halaman GUI yang tampil saat pengguna menekan

tombol “Algoritma K-Means” yang terdapat di halaman utama aplikasi. Halaman

ini berfungsi untuk menjelaskan proses yang terjadi selama algoritma K-Means

bekerja secara bertahap dan terperinci. Proses algoritma K-Means yang terjadi

dijelaskan melalui komponen-komponen yang terdapat pada GUI aplikasi seperti

tombol, tabel, textbox, dan grafik.

Gambar 4.3. Tampilan awal halaman algoritma K-Means

Ketika aplikasi pertama kali dibuka, yang perlu dilakukan oleh pengguna

adalah memilih dan memuat kasus data yang akan dikelompokkan oleh algoritma

K-Means dengan menekan tombol “MUAT DATA” atau “CARI DATA”. Terdapat

3 jenis kasus data masukan yang disediakan dalam halaman algoritma K-Means.

Keterangan mengenai masing-masing kasus dapat dilihat pada Lampiran 1. Selain

data masukan, terdapat pula parameter masukan lainnya yakni jumlah kelompok

62
yang ingin dibentuk (K) dan nilai ambang batas yang ingin diterapkan (T).

Misalkan, jumlah cluster sebanyak 3 dan nilai ambang batas sebesar 0.1.

4.1.1.2.1. Kasus 1 Algoritma K-Means

Kasus 1 dari algoritma K-Means adalah kasus pengelompokan penyebaran

diare di Kabupaten Langkat yang berjumlah 23 dataset dan berdimensi 2. Ketika

kasus 1 telah dimuat serta jumlah cluster dan nilai ambang batas telah dimasukkan,

maka muncul tampilan seperti pada Gambar 4.4 berikut.

Gambar 4.4. Tampilan ketika parameter masukan pada


kasus 1 algoritma K-Means dimuat

Setelah parameter masukan dimuat, algoritma K-Means dimulai dengan menekan

tombol “MULAI”. Algoritma K-Means diawali dengan inisialisasi 3 titik centroid

63
awal yang ditampilkan melalui textbox seperti pada Gambar 4.5. Titik centroid

pertama diambil dari dataset 1 (baris 1 pada data masukan) yakni titik (2, 6), titik

centroid kedua diambil dari dataset 2 yakni titik (4, 6), dan titik centroid ketiga

diambil dari rata-rata dataset lainnya yakni titik (2.8571, 4.7619). Posisi dari setiap

dataset dan setiap centroid ditampilkan melalui grafik yang tersedia, di mana setiap

dataset disimbolkan dengan tanda lingkaran berwarna hitam dan setiap centroid

disimbolkan dengan tanda silang berwarna merah.

Gambar 4.5. Inisialisasi titik centroid pada kasus 1 algoritma K-Means

Kemudian iterasi pertama dimulai dengan menekan tombol “LANJUT” dan

tampil penjelasan tahapan algoritma yang terjadi. Terlihat pada Gambar 4.6 bahwa

posisi dari setiap titik centroid pada grafik sesuai dengan titik centroid awal yang

telah diinisialisasi. Kemudian dilakukan perhitungan jarak dari setiap titik dataset

terhadap setiap titik centroid yang ditampilkan melalui textbox dan dilanjutkan

dengan melakukan pengelompokan berdasarkan jarak centroid terkecil yang

didapatkan.

64
Gambar 4.6. Iterasi pertama kasus 1 algoritma K-Means

Dari iterasi pertama, didapatkan hasil pengelompokan seperti yang tertera dalam

Tabel 4.1 berikut.

Tabel 4.1. Hasil pengelompokan iterasi pertama


pada kasus 1 algoritma K-Means
Fitur 1 Fitur 2 Cluster
2 6 1
4 6 2
2 4 3
2 3 3
2 6 1
2 4 3
3 3 3
3 6 1
4 5 2
2 5 3
3 3 3
3 3 3

65
Fitur 1 Fitur 2 Cluster
2 3 3
4 6 2
2 5 3
4 6 2
3 6 1
4 6 2
3 5 3
2 6 1
3 5 3
4 5 2
3 5 3

Karena iterasi ini merupakan iterasi yang pertama maka hasil pengelompokan yang

didapatkan masih belum tetap dan perlu dilanjutkan ke iterasi selanjutnya.

Iterasi kedua dimulai dengan menekan tombol “LANJUT”. Pada iterasi

kedua, titik centroid berpindah posisi sesuai dengan titik centroid baru yang

didapatkan pada iterasi pertama. Posisi titik centroid pada iterasi kedua dapat dilihat

pada grafik seperti yang ditunjukkan dalam Gambar 4.7 berikut. Karena titik

centroid pada iterasi kedua telah berpindah, maka pengelompokan yang terbentuk

pun berubah mengikuti posisi titik centroid tersebut. Selanjutnya proses algoritma

dilakukan dengan tahapan yang sama dengan iterasi pertama.

66
Gambar 4.7. Iterasi kedua kasus 1 algoritma K-Means

Dari iterasi kedua, didapatkan hasil pengelompokan data seperti pada Tabel 4.2

berikut:

Tabel 4.2. Hasil pengelompokan iterasi kedua pada kasus


1 algoritma K-Means
Fitur 1 Fitur 2 Cluster Keterangan
2 6 1
4 6 2
2 4 3
2 3 3
2 6 1
2 4 3
3 3 3
3 6 1
4 5 2
2 5 1 Berpindah
3 3 3
3 3 3

67
Fitur 1 Fitur 2 Cluster Keterangan
2 3 3
4 6 2
2 5 1 Berpindah
4 6 2
3 6 1
4 6 2
3 5 3
2 6 1
3 5 3
4 5 2
3 5 3

Dari hasil pengelompokan pada iterasi kedua, terjadi perpindahan cluster pada titik

data (2, 5) dari cluster 3 menjadi cluster 1. Oleh karena itu, proses algoritma

dilanjutkan ke iterasi selanjutnya dengan menekan tombol “LANJUT”. Proses

algoritma yang dilalui pada iterasi selanjutnya sama dengan proses algoritma pada

iterasi kedua.

Pada kasus 1, proses iterasi berhenti pada iterasi kelima. Hasil

pengelompokan yang didapatkan pada iterasi kelima sama dengan hasil pada iterasi

keempat seperti yang ditunjukkan pada Gambar 4.8. Selain itu, nilai perubahan

fungsi objektif yang didapatkan pada iterasi kelima sudah di bawah nilai ambang

batas (0.1) yakni 0 sebagaimana yang ditunjukkan pada Gambar 4.9. Oleh karena

itu, ketika tombol “LANJUT” ditekan lagi maka muncul kotak pesan seperti pada

Gambar 4.10 yang memberitahu bahwa proses iterasi selesai.

68
Gambar 4.9. Iterasi kelima kasus 1 algoritma K-Means

Gambar 4.8. Nilai perubahan fungsi objektif pada iterasi kelima kasus
1 algoritma K-Means lebih kecil dari T

69
Gambar 4.10. Tampilan ketika iterasi pada kasus 1
algoritma K-Means selesai

4.1.1.2.2. Kasus 2 Algoritma K-Means

Kasus 2 dari algoritma K-Means adalah kasus pengelompokan mutu fisik

beras yang berjumlah 15 dataset dan berdimensi 2. Ketika kasus 2 telah dimuat serta

jumlah cluster dan nilai ambang batas telah dimasukkan, maka muncul tampilan

seperti pada Gambar 4.11 berikut.

Gambar 4.11. Tampilan ketika parameter masukan pada


kasus 2 algoritma K-Means dimuat

70
Setelah parameter masukan dimuat, algoritma K-Means dimulai dengan menekan

tombol “MULAI”. Algoritma K-Means diawali dengan inisialisasi 3 titik centroid

awal yang ditampilkan melalui textbox seperti pada Gambar 4.12. Titik centroid

pertama diambil dari dataset 1 yakni titik (5.52, 2.04), titik centroid kedua diambil

dari dataset 2 yakni titik (6.51, 2.43), dan titik centroid ketiga diambil dari rata-rata

dataset lainnya yakni titik (6.5969, 2.7908). Posisi dari setiap titik dataset dan setiap

titik centroid ditampilkan melalui grafik pada aplikasi.

Gambar 4.12. Tampilan inisialisasi titik centroid pada


kasus 2 algoritma K-Means

Kemudian iterasi pertama dimulai dengan menekan tombol “LANJUT” dan

muncul penjelasan tahapan algoritma yang terjadi. Terlihat pada grafik dalam

Gambar 4.13 bahwa posisi dari setiap titik centroid sesuai dengan titik centroid

awal yang telah diinisialisasi. Kemudian dilakukan perhitungan jarak dari setiap

dataset terhadap setiap centroid yang ada seperti yang ditampikan dalam textbox

71
dan dilanjutkan dengan melakukan pengelompokan berdasarkan jarak centroid

terkecil yang didapatkan.

Gambar 4.13. Iterasi pertama kasus 2 algoritma K-Means

Dari iterasi pertama, didapatkan hasil pengelompokan seperti pada Tabel 4.3

berikut.

Tabel 4.3. Hasil pengelompokan iterasi pertama


pada kasus 2 algoritma K-Means
Fitur 1 Fitur 2 Cluster
5.5200 2.0400 1
6.5100 2.4300 2
6.2200 2.2400 2
7.2400 3.1500 3
6.4500 2.8200 3
6.0100 2.5400 2
5.7000 2.4200 1
7.1400 3.1100 3
5.9700 2.1000 1
6.7600 3.2400 3

72
Fitur 1 Fitur 2 Cluster
6.9600 2.8900 3
7.1000 3.0700 3
6.9800 3.0600 3
7.0100 2.9400 3
6.2200 2.7000 3

Karena iterasi ini merupakan iterasi yang pertama maka hasil pengelompokan yang

didapatkan masih belum tetap dan perlu dilanjutkan ke iterasi selanjutnya.

Iterasi kedua dimulai dengan menekan tombol “LANJUT”. Pada iterasi

kedua, titik centroid berpindah posisi sesuai dengan titik centroid baru yang

didapatkan pada iterasi pertama. Posisi titik centroid pada iterasi kedua dapat dilihat

melalui grafik yang ditunjukkan pada Gambar 4.14 berikut. Selanjutnya proses

algoritma dilakukan dengan tahapan yang sama seperti iterasi pertama.

Gambar 4.14. Iterasi kedua kasus 2 algoritma K-Means

73
Dari iterasi kedua, didapatkan hasil pengelompokan data seperti pada Tabel 4.4

berikut:

Tabel 4.4. Hasil pengelompokan iterasi kedua pada


kasus 2 algoritma K-Means
Fitur 1 Fitur 2 Cluster Keterangan
5.5200 2.0400 1
6.5100 2.4300 2
6.2200 2.2400 2
7.2400 3.1500 3
6.4500 2.8200 3
6.0100 2.5400 2
5.7000 2.4200 1
7.1400 3.1100 3
5.9700 2.1000 1
6.7600 3.2400 3
6.9600 2.8900 3
7.1000 3.0700 3
6.9800 3.0600 3
7.0100 2.9400 3
6.2200 2.7000 2 Berpindah

Dari hasil pengelompokan data pada iterasi kedua, terjadi perpindahan cluster pada

titik data (6.22, 2.7) dari cluster 3 menjadi cluster 2. Oleh karena itu, proses

algoritma dilanjutkan ke iterasi selanjutnya dengan proses yang sama.

Hasil pengelompokan akhir didapatkan pada iterasi seperti yang

ditunjukkan pada Gambar 4.15. Selain itu, nilai perubahan fungsi objektif yang

didapatkan pada iterasi kelima sudah di bawah nilai ambang batas (0.1) yakni 0

sebagaimana ditampilkan pada Gambar 4.16. Oleh karena itu, ketika tombol

74
“LANJUT” ditekan lagi maka muncul kotak pesan seperti pada Gambar 4.17 yang

memberitahu bahwa proses iterasi selesai.

Gambar 4.16. Iterasi kelima kasus 2 algoritma K-Means

Gambar 4.15. Nilai perubahan fungsi objektif pada iterasi kelima


kasus 2 algoritma K-Means lebih kecil dari T

75
Gambar 4.17. Tampilan ketika iterasi pada kasus 2
algoritma K-Means selesai

4.1.1.2.3. Kasus 3 Algoritma K-Means

Kasus 3 dari algoritma K-Means adalah kasus pengelompokan pelanggan

potensial yang berjumlah 20 dataset dan berdimensi 2. Ketika kasus 3 telah dimuat

Gambar 4.18. Tampilan ketika parameter masukan


kasus 3 algoritma K-Means dimuat

76
serta jumlah cluster dan nilai ambang batas telah dimasukkan, maka muncul

tampilan seperti pada Gambar 4.18.

Setelah parameter masukan dimuat, algoritma K-Means dimulai dengan

menekan tombol “MULAI” dan dimulai dengan inisialisasi 3 titik centroid awal

yang ditampilkan melalui textbox seperti yang ditunjukkan pada Gambar 4.19. Titik

centroid pertama diambil dari dataset 1 yakni titik (1, 2.43), titik centroid kedua

diambil dari dataset 2 yakni titik (2, 30.67), dan titik centroid ketiga diambil dari

rata-rata dataset lainnya yakni titik (6.5, 64.1494). Posisi dari setiap titik dataset

dan setiap titik centroid ditampilkan melalui grafik yang tersedia.

Gambar 4.19. Tampilan inisialisasi titik centroid pada


kasus 3 algoritma K-Means

Kemudian iterasi pertama dimulai dengan menekan tombol “LANJUT” dan

muncul penjelasan tahapan algoritma yang terjadi. Terlihat pada Gambar 4.20

bahwa posisi dari setiap titik centroid sesuai dengan titik centroid awal yang telah

diinisialisasi. Kemudian dilakukan perhitungan jarak dari setiap titik dataset

77
terhadap setiap titik centroid yang ditampilkan melalui textbox dan dilanjutkan

dengan melakukan pengelompokan berdasarkan jarak centroid terkecil yang

didapatkan.

Gambar 4.20. Iterasi pertama kasus 3 algoritma K-Means

Dari iterasi pertama, didapatkan hasil pengelompokan seperti pada Tabel 4.5

berikut.

Tabel 4.5. Hasil pengelompokan iterasi pertama pada


kasus 3 algoritma K-Means
Fitur 1 Fitur 2 Cluster
1 2.4300 1
2 30.6700 2
15 146.6800 3
2 15.8400 1
3 20.5400 2
1 5.3200 1
5 56.1200 3
1 6.8200 1

78
Fitur 1 Fitur 2 Cluster
10 91.0700 3
5 63.0500 3
24 291.1500 3
2 10.4000 1
12 87.1600 3
2 16.8000 2
1 3.0100 1
5 50.1200 3
20 186.3700 3
5 62.1100 3
2 16.4000 1
2 25.7300 2

Karena iterasi ini merupakan iterasi yang pertama maka hasil pengelompokan yang

didapatkan masih belum tetap dan perlu dilanjutkan ke iterasi selanjutnya.

Iterasi kedua dimulai dengan menekan tombol “LANJUT”. Pada iterasi

kedua, titik centroid berpindah posisi sesuai dengan titik centroid baru yang

didapatkan pada iterasi pertama. Posisi titik centroid pada iterasi kedua ditampilkan

melalui grafik seperti yang ditunjukkan pada Gambar 4.21 berikut. Selanjutnya

proses algoritma dilakukan dengan tahapan yang sama seperti iterasi pertama.

79
Gambar 4.21. Iterasi kedua kasus 3 algoritma K-Means

Dari iterasi kedua, didapatkan hasil pengelompokan data seperti pada Tabel 4.6

berikut:

Tabel 4.6. Hasil pengelompokan iterasi kedua


pada kasus 3 algoritma K-Means
Fitur 1 Fitur 2 Cluster Keterangan
1 2.4300 1
2 30.6700 2
15 146.6800 3
2 15.8400 1
3 20.5400 2
1 5.3200 1
5 56.1200 2 Berpindah
1 6.8200 1
10 91.0700 3
5 63.0500 2 Berpindah
24 291.1500 3
2 10.4000 1

80
Fitur 1 Fitur 2 Cluster Keterangan
12 87.1600 3
2 16.8000 2
1 3.0100 1
5 50.1200 2 Berpindah
20 186.3700 3
5 62.1100 2 Berpindah
2 16.4000 2 Berpindah
2 25.7300 2

Dari hasil pengelompokan data pada iterasi kedua, terjadi perpindahan cluster pada

titik data (5, 56.12), titik data (5, 63.05), titik data (5, 50.12), dan titik data (5, 62.11)

dari cluster 3 menjadi cluster 2, serta titik data (2, 16.4) dari cluster 1 menjadi

cluster 2. Oleh karena itu, proses algoritma dilanjutkan ke iterasi selanjutnya

dengan menekan tombol “LANJUT”.

Hasil pengelompokan data didapatkan pada iterasi kelima seperti yang

ditunjukkan pada Gambar 4.22. Selain itu, nilai perubahan fungsi objektif yang

didapatkan pada iterasi kelima sudah di bawah nilai ambang batas (0.1) yakni

0.0575 sebagaimana yang tampil pada Gambar 4.23. Oleh karena itu, ketika tombol

“LANJUT” ditekan lagi maka akan tampil kotak pesan seperti pada Gambar 4.24

yang memberitahu bahwa proses iterasi selesai.

81
Gambar 4.23. Iterasi kelima kasus 3 algoritma K-Means

Gambar 4.22. Nilai perubahan fungsi objektif pada iterasi kelima kasus 2
algoritma K-Means lebih kecil dari T

82
Gambar 4.24. Tampilan ketika iterasi pada kasus 3 algoritma K-Means selesai

Terdapat pula tombol “HAPUS” yang berfungsi untuk menghapus isi dari

seluruh komponen yang ada dalam aplikasi seperti yang ditunjukkan pada Gambar

4.25 berikut.

Gambar 4. 25. Tampilan ketika tombol “HAPUS” K-Means ditekan

83
Selain itu, terdapat tombol “KELUAR” ditekan maka muncul kotak pesan

berisi pertanyaan konfirmasi apakah pengguna ingin keluar dari aplikasi atau tidak

sebagaimana ditunjukkan oleh Gambar 4.26. Dalam pertanyaan tersebut terdapat 3

pilihan yang disediakan bagi pengguna, yakni “Ya” untuk keluar dari aplikasi,

“Tidak” untuk tetap berada di halaman algoritma K-Means, serta “Kembali ke

Menu Utama” untuk menutup halaman algoritma K-Means dan kembali ke menu

utama untuk memilih algoritma lainnya.

Gambar 4.26. Tampilan ketika tombol “KELUAR” K-Means ditekan

4.1.1.3.GUI Algoritma Fuzzy C-Means (FCM)

GUI algoritma FCM, sebagaimana yang ditunjukkan oleh Gambar 4.27,

merupakan halaman yang tampil saat pengguna menekan tombol “Algoritma FCM”

yang terdapat di halaman utama aplikasi. Halaman ini berfungsi untuk menjelaskan

proses yang terjadi selama algoritma Apriori bekerja secara bertahap dan terperinci.

Proses algoritma Apriori yang terjadi dijelaskan melalui komponen-komponen

yang terdapat pada GUI aplikasi seperti tombol, tabel, textbox, dan grafik.

84
Gambar 4.27. Tampilan awal halaman algoritma FCM

Ketika aplikasi pertama kali dibuka, yang perlu dilakukan oleh pengguna

adalah memilih dan memuat kasus data yang akan dikelompokkan oleh algoritma

FCM dengan menekan tombol “MUAT DATA”. Terdapat 3 jenis kasus data

masukan yang disediakan dalam halaman FCM di mana kasus-kasus tersebut

merupakan kasus yang sama dengan algoritma K-Means. Selain data masukan,

terdapat pula parameter masukan lainnya yakni jumlah kelompok yang ingin

dibentuk (K), nilai ambang batas yang ingin diterapkan (T), bobot nilai yang

diterapkan (W), dan nilai derajat keanggotaan awal (U). Misalkan, jumlah cluster

sebanyak 3, nilai ambang batas sebesar 0.1, bobot sebesar 2, dan nilai U dimuat

secara random.

85
4.1.1.3.1.Kasus 1 Algoritma FCM

Kasus 1 dari algoritma FCM sama dengan kasus 1 pada algoritma K-Means.

Ketika kasus 1 telah dimuat serta jumlah cluster dan nilai ambang batas telah

dimasukkan, maka muncul tampilan seperti pada Gambar 4.28 berikut.

Gambar 4.28. Tampilan ketika parameter masukan pada


kasus 1 algoritma FCM dimuat

Setelah parameter masukan dimuat, algoritma FCM dimulai dengan menekan

tombol “MULAI”. Algoritma FCM diawali dengan pembentukan 3 titik centroid

awal sebagai iterasi pertama. Titik centroid tersebut didapatkan dari perhitungan

derajat keanggotaan yang dipangkatkan dengan bobot W seperti yang ditampilkan

melalui textbox pada Gambar 4.29. Posisi dari setiap dataset dan setiap centroid

ditampilkan melalui grafik yang tersedia, di mana setiap dataset disimbolkan

dengan tanda lingkaran berwarna hitam dan setiap centroid disimbolkan dengan

tanda silang berwarna merah.

86
Gambar 4.29. Iterasi pertama kasus 1 algoritma FCM

Setelah titik centroid dari setiap cluster didapatkan maka langkah selanjutnya

adalah menghitung jarak setiap data terhadap setiap titik centroid dengan

menggunakan persamaan Euclidean distance. Hasil perhitungan jarak ditampilkan

pada tabel jarak data ke centroid. Bersamaan dengan itu, dilakukan pula

perhitungan nilai derajat keanggotaan yang baru (U_baru) seperti yang ditampilkan

dalam textbox pada Gambar 4.30. Derajat keanggotaan yang baru dapat dilihat pada

tabel U _baru.

87
Gambar 4.30. Perhitungan jarak dan derajat keanggotaan baru pada
iterasi pertama kasus 1 algoritma FCM

Karena iterasi ini merupakan iterasi yang pertama maka hasil pengelompokan yang

didapatkan masih belum tetap dan perlu dilanjutkan ke iterasi selanjutnya.

Iterasi kedua dimulai dengan menekan tombol “LANJUT”. Pada iterasi

kedua, titik centroid berpindah posisi sesuai dengan titik centroid baru yang

didapatkan pada iterasi pertama. Posisi titik centroid pada iterasi kedua dapat dilihat

pada grafik seperti yang ditunjukkan dalam Gambar 4.31 berikut. Karena titik

centroid pada iterasi kedua telah berpindah, maka pengelompokan yang terbentuk

pun berubah mengikuti posisi titik centroid tersebut. Selanjutnya proses algoritma

dilakukan dengan tahapan yang sama dengan iterasi pertama.

88
Gambar 4.31. Iterasi kedua kasus 1 algoritma K-Means

Pada iterasi kedua didapatkan nilai perubahan fungsi objektif sebesar 1.2464

sepertinya yang ditampilkan pada Gambar 4.32 berikut. Nilai tersebut masih di atas

nilai ambang batas yang ditentukan sehingga proses algoritma dilanjutkan ke iterasi

selanjutnya dengan tahapan proses yang sama.

Gambar 4.32. Perubahan fungsi objektif pada iterasi kedua


algoritma FCM masih di atas nilai T

89
Proses iterasi selesai pada iterasi kelima dengan nilai perubahan fungsi

objektif sebesar 0.0783 seperti yang ditampilkan pada Gambar 4.33 berikut. Karena

nilai tersebut lebih kecil dari nilai ambang batas maka proses iterasi selesai.

Gambar 4.33. Tampilan ketika iterasi pada kasus 3 algoritma FCM selesai

Dengan demikian, didapatkan hasil pengelompokan kasus 1 pada algoritma FCM

seperti pada Tabel 4.7 sebagai berikut.

Tabel 4.7. Hasil pengelompokan kasus 1 algoritma FCM


Fitur 1 Fitur 2 Cluster
2 6 1
4 6 1
2 4 3
2 3 3
2 6 1
2 4 3
3 3 2
3 6 1

90
Fitur 1 Fitur 2 Cluster
4 5 1
2 5 2
3 3 2
3 3 2
2 3 3
4 6 1
2 5 2
4 6 1
3 6 1
4 6 1
3 5 1
2 6 1
3 5 1
4 5 1
3 5 1

4.1.1.4.GUI Algoritma Apriori

GUI algoritma Apriori, sebagaimana yang ditunjukkan oleh Gambar 4.34,

merupakan halaman yang tampil saat pengguna menekan tombol “Algoritma

Apriori” yang terdapat di halaman utama aplikasi. Halaman ini berfungsi untuk

menjelaskan proses yang terjadi selama algoritma Apriori bekerja secara bertahap

dan terperinci. Proses algoritma Apriori yang terjadi dijelaskan melalui komponen-

komponen yang terdapat pada GUI aplikasi seperti tombol, tabel, dan textbox.

91
Gambar 4.34. Tampilan awal halaman algoritma Apriori

Ketika aplikasi pertama kali dibuka, yang perlu dilakukan oleh pengguna

adalah memilih dan memuat kasus data masukan yang akan diproses oleh algoritma

Apriori dengan menekan tombol “MUAT DATA”. Terdapat 3 jenis kasus data

masukan yang disediakan dalam halaman algoritma Apriori. Keterangan mengenai

masing-masing kasus tersebut dapat dilihat pada Lampiran 2. Selain data masukan,

terdapat pula parameter masukan lainnya yakni nilai minimum support threshold

(MST) dan nilai minimum confidence threshold (MCT). Misalkan, nilai MST

sebesar 0.2 dan nilai MCT sebesar 0.6.

4.1.1.4.1. Kasus 1 Algoritma Apriori

Kasus 1 adalah kasus penjualan produk dari sebuah minimarket yang

berjumlah 9 dataset dan 5 item. Ketika kasus 1 dimuat dengan menekan tombol

92
“MUAT DATA” serta nilai MST dan nilai MCT dimasukkan, maka muncul

tampilan seperti pada Gambar 4.35 berikut.

Gambar 4.35. Tampilan ketika parameter masukan


kasus 1 algoritma Apriori dimuat

Setelah parameter masukan dimuat, algoritma Apriori dimulai dengan

menekan tombol “MULAI”. Proses algoritma Apriori diawali dengan melakukan

pembentukan level 1-itemset. Caranya adalah dengan memeriksa apakah di dalam

setiap dataset yang ditinjau terdapat itemset yang ditinjau. Bersamaan dengan itu,

dilakukan perhitungan nilai support dari masing-masing item tersebut, dimulai dari

item 1. Gambar 4.36 menunjukkan bahwa di dalam dataset ID_1 terdapat item 1

sehingga total kemunculan item 1 bertambah menjadi 1 dan nilai support yang

didapatkan adalah 0.111.

93
Gambar 4.36. Pemeriksaan item 1 dalam dataset ID_1
pada kasus 1 algoritma Apriori

Pemeriksaan dilanjutkan ke dataset ID_2 dengan menekan tombol “LANJUT”.

Namun, di dalam dataset ID_2 tidak terdapat item 1 sehingga total kemunculan item

dan nilai support yang didapatkan bernilai tetap seperti pada Gambar 4.37.

Gambar 4.37. Pemeriksaan item 1 dalam dataset ID_2


pada kasus 1 algoritma Apriori

94
Pemeriksaan item 1 dilanjutkan dengan menekan tombol “LANJUT” sampai

seluruh dataset selesai ditinjau. Setelah dataset terakhir telah ditinjau yakni dataset

ID_9, maka muncul tampilan seperti pada Gambar 4.38 yang berisi informasi

bahwa nilai support dari item 1 adalah sebesar 0.667 dan nilai tersebut telah

melebihi batas MST sehingga item 1 dimasukkan dalam tabel level 1-itemset.

Gambar 4.38. Item 1 pada kasus 1 algoritma Apriori memenuhi batas MST

Setelah item 1 selesai, maka itemset yang ditinjau dilanjutkan ke item 2 dengan

menekan tombol “LANJUT”. Proses pemeriksaan item 2 sama dengan item 1 yakni

dengan memeriksa apakah dalam setiap dataset yang ditinjau terdapat item 2 atau

tidak. Setelah dataset terakhir selesai ditinjau, yakni dataset ID_9, maka muncul

tampilan seperti pada Gambar 4.39 yang memperlihatkan bahwa nilai support dari

item 2 adalah sebesar 0.778 dan nilai tersebut telah melebihi batas MST sehingga

item 2 dimasukkan dalam tabel level 1-itemset.

95
Gambar 4.39. Item 2 pada kasus 1 algoritma Apriori memenuhi batas MST

Setelah item 2 selesai, maka dilanjutkan ke item 3 dengan menekan tombol

“LANJUT”. Setelah dataset terakhir selesai ditinjau, maka muncul tampilan seperti

pada Gambar 4.40 dengan nilai support dari item 3 sebesar 0.667 yang melebihi

batas nilai MST sehingga item 3 masuk dalam tabel level 1-itemset.

Gambar 4.40. Item 3 pada kasus 1 algoritma Apriori memenuhi batas MST

96
Setelah item 3 selesai, maka itemset yang ditinjau dilanjutkan ke item 4 dengan

menekan tombol “LANJUT”. Setelah dataset terakhir selesai ditinjau, maka muncul

tampilan seperti pada Gambar 4.41 berikut yang memperlihatkan bahwa nilai

support dari item 4 adalah sebesar 0.222 dan nilai tersebut telah melebihi batas MST

sehingga item 4 dimasukkan dalam tabel level 1-itemset.

Gambar 4.41. Item 4 pada kasus 1 algoritma Apriori memenuhi batas MST

Setelah item 4 selesai, maka itemset yang ditinjau dilanjutkan ke item 5 dengan

menekan tombol “LANJUT”. Setelah dataset terakhir selesai ditinjau, maka

didapatkan bahwa nilai support dari item 5 adalah sebesar 0.222 dan nilai tersebut

telah melebihi batas MST sehingga item 5 dimasukkan dalam tabel level 1-itemset.

Karena item 5 merupakan item terakhir yang ditinjau dalam kasus 1, maka proses

pembentukan level 1-itemset telah selesai. Level 1-itemset ditampilkan dalam tabel

seperti yang ditunjukkan pada Gambar 4.42 berikut.

97
Gambar 4.42. Level 1-itemset pada kasus 1 algoritma Apriori

Setelah pembentukan level 1-itemset selesai, maka proses algoritma

dilanjutkan ke pembentukan level 2 dengan menekan tombol “LANJUT”.

Pembentukan level 2-itemset diawali dengan membentuk kombinasi 2 item dari

item-item yang terdapat dalam level 1-itemset. Gambar 4.43 menunjukkan

pembentukan kombinasi antara item yang ditinjau yakni item 1 dengan setiap item

dalam level 1-itemset, mulai dari item 1. Namun karena kedua item ini adalah item

yang sama, maka tidak terbentuk kombinasi itemset yang baru.

98
Gambar 4.43. Pembentukan kombinasi item 1 dengan item 1
pada kasus 1 algoritma Apriori

Kemudian item yang akan dikombinasikan dilanjutkan ke item 2 dengan menekan

tombol “LANJUT”. Karena item yang ditinjau berbeda dengan item yang akan

dikombinasikan, maka terbentuk kombinasi item baru yakni itemset [1,2] seperti

yang ditunjukkan melalui tabel pada Gambar 4.44 berikut.

Gambar 4.44. Pembentukan kombinasi item 1 dengan item 2


pada kasus 1 algoritma Apriori

99
Pembentukan kombinasi 2 item dilanjutkan sampai seluruh itemset telah ditinjau

dan telah dikombinasikan dengan seluruh item terakhir yaitu item 1, 2, 3, 4, dan 5.

Dengan demikian didapatkan kombinasi 2 item seperti yang ditunjukkan pada

Gambar 4.45 berikut.

Gambar 4.45. Kombinasi 2 item pada kasus 1 algoritma Apriori

Setelah itu, dilakukan pemeriksaan kombinasi item tersebut terhadap setiap dataset

yang ditinjau sekaligus perhitungan nilai support dari setiap kombinasi 2 item yang

telah terbentuk dengan menekan tombol “LANJUT”. Pemeriksaan ini bertujuan

untuk mengetahui itemset mana saja yang masuk dalam level 2-itemset. Dimulai

dari kombinasi 2 item yang pertama yakni itemset [1,2] seperti yang ditunjukkan

pada Gambar 4.46 berikut. Dalam dataset ID_1 terdapat itemset [1,2] sehingga total

kemunculan itemset bertambah menjadi 1 dan nilai support yang didapatkan pun

bertambah menjadi 0.111.

100
Gambar 4.46. Pemeriksaan itemset [1,2] dalam dataset ID_1
pada kasus 1 algoritma Apriori

Pemeriksaan itemset [1,2] dilanjutkan ke seluruh dataset. Setelah seluruh dataset

telah ditinjau, maka didapatkan nilai support dari itemset [1,2] sebesar 0.444. Oleh

karena nilai tersebut memenuhi batas nilai MST, maka itemset [1,2] masuk dalam

tabel level 2-itemset seperti yang ditampilkan pada Gambar 4.47.

Gambar 4.47. Itemset [1,2] pada kasus 1 algoritma Apriori


memenuhi batas MST

101
Setelah itu, pemeriksaan dan perhitungan nilai support dilanjutkan ke seluruh

kombinasi item yang terdapat dalam tabel kombinasi 2 item. Setelah seluruh

kombinasi item telah diperiksa, maka didapatkan kombinasi item dengan nilai

support yang memenuhi batas nilai MST. Kombinasi item tersebut masuk dalam

tabel level 2-itemset seperti yang ditunjukkan pada Gambar 4.48 berikut.

Gambar 4.48. Level 2-itemset pada kasus 1 algoritma Apriori

Setelah pembentukan level 2-itemset selesai, maka proses algoritma

dilanjutkan ke pembentukan level selanjutnya yakni level 3 dengan menekan

tombol “LANJUT”. Pembentukan level 3-itemset dimulai dengan membentuk

kombinasi 3 item dari item-item yang terdapat pada level 2-itemset. Dimulai dengan

mengkombinasikan item [1,2] dengan item 1. Namun karena di dalam itemset [1,2]

telah terdapat item 1 maka tidak terbentuk kombinasi item baru seperti yang

ditampilkan pada Gambar 4.49 berikut.

102
Gambar 4.49. Pembentukan kombinasi item [1,2] dengan item 1
pada kasus 1 algoritma Apriori

Kemudian pembentukan kombinasi 3 item dilanjutkan sampai seluruh itemset

dalam level 2 telah dikombinasikan satu sama lain. Ketika itemset terakhir yang

ditinjau yakni itemset [2,5] selesai dikombinasikan dengan item terakhir yakni item

5, maka tidak terdapat lagi kombinasi item yang dapat terbentuk. Oleh karena itu,

didapatkan seluruh kombinasi 3 item seperti yang ditunjukkan pada Gambar 4.50.

Gambar 4.50. Kombinasi 3 item pada kasus 1 algoritma Apriori

103
Setelah kombinasi 3 item didapatkan, maka tahap selanjutnya adalah membentuk

level 3-itemset. Proses ini dilakukan dengan memeriksa apakah setiap kombinasi 3

item tersebut terdapat dalam setiap dataset yang ditinjau dan sekaligus melakukan

perhitungan nilai support dari setiap kombinasi item untuk mengetahui itemset

mana saja yang memenuhi batas nilai MST dan masuk dalam tabel level 3-itemset.

Dimulai dengan memeriksa kombinasi 3 item yang pertama yakni itemset [1,2,3] di

dalam dataset ID_1 seperti pada Gambar 4.51 berikut.

Gambar 4.51. Pemeriksaan itemset [1,2,3] dalam dataset ID_1


pada kasus 1 algoritma Apriori

Gambar 4.51 menunjukkan bahwa dalam dataset ID_1 tidak terdapat itemset [1,2,3]

sehingga total kemunculan itemset dan nilai support yang didapatkan masih bernilai

0. Kemudian dataset yang ditinjau dilanjutkan ke dataset selanjutnya dengan

menekan tombol “LANJUT”. Karena nilai support yang didapatkan dari itemset

[1,2,3] adalah sebesar 0.222, maka itemset tersebut masuk dalam tabel level 3-

itemset seperti yang ditunjukkan pada Gambar 4.52 berikut.

104
Gambar 4.52. Itemset [1,2,3] pada kasus 1 algoritma Apriori
memenuhi batas MST

Pemeriksaan dan perhitungan nilai support dilanjutkan ke seluruh kombinasi item

yang terdapat dalam tabel kombinasi 3-item. Setelah seluruh kombinasi item telah

diperiksa, maka didapatkan itemset dengan nilai support yang memenuhi batas nilai

MST dan masuk dalam tabel level 3-itemset seperti yang ditunjukkan pada Gambar

4.53 berikut.

Gambar 4.53. Level 3-itemset pada kasus 1 algoritma Apriori

105
Setelah pembentukan level 3-itemset selesai, maka proses algoritma

dilanjutkan ke pembentukan level selanjutnya yakni level 4 dengan menekan

tombol “LANJUT”. Pembentukan level 4-itemset dimulai dengan

mengkombinasikan item-item yang terdapat pada level 3-itemset sehingga

menghasilkan kombinasi 4 item seperti yang ditampilkan pada Gambar 4.54

berikut.

Gambar 4.54. Kombinasi 4 item pada kasus 1 algoritma Apriori

Setelah kombinasi 4 item didapatkan, maka tahap selanjutnya adalah membentuk

level 4-itemset. Hal ini dilakukan dengan cara memeriksa apakah kombinasi 4 item

yang terbentuk yakni itemset [1,2,3,5] terdapat dalam setiap dataset yang ditinjau

dan sekaligus melakukan perhitungan nilai support dari kombinasi item tersebut

untuk mengetahui apakah itemset tersebut memenuhi batas nilai MST atau tidak.

Hasil pemeriksaan tersebut dapat dilihat pada Gambar 4.55 berikut, di mana nilai

106
support dari itemset [1,2,3,5] tidak memenuhi batas nilai MST. Dengan demikian,

tidak terdapat level 4-itemset.

Gambar 4.55. Itemset [1,2,3,5] pada kasus 1 algoritma Apriori


tidak memenuhi batas MST

Karena tidak terdapat level 4-itemset, maka level tertinggi pada kasus 1

adalah level 3-itemset. Setelah level tertinggi itemset telah didapatkan, maka proses

algoritma Apriori dilanjutkan dengan membentuk aturan asosiasi dari itemset-

itemset yang telah terbentuk di setiap levelnya. Dimulai dari itemset pertama yang

terdapat dalam level 2-itemset yakni itemset [1,2]. Seperti yang tampak pada

Gambar 4.56 berikut, aturan [1,2] memiliki nilai support sebesar 0.444, nilai

confidence sebesar 0.667, dan nilai lift sebesar 0.857. Namun, karena nilai lift yang

didapatkan tidak lebih besar dari 1 maka itemset ini bukan merupakan aturan

asosiasi akhir yang tepat.

107
Gambar 4.56. Aturan [1,2] pada kasus 1 algoritma Apriori
tidak memenuhi batas nilai lift

Kemudian dilanjutkan dengan mengasosiasikan aturan sebelumnya sehingga

didapatkan aturan baru yakni aturan [2,1]. Nilai confidence dan nilai lift dari aturan

[2,1] tidak memenuhi batas nilai yang ditentukan, sebagaimana ditunjukkan dalam

Gambar 4.57, sehingga aturan [2,1] bukan merupakan aturan asosiasi yang tepat.

Gambar 4.57. Aturan [2,1] pada kasus 1 algoritma Apriori


tidak memenuhi batas nilai MCT dan lift

108
Setelah itu, pembentukan aturan asosiasi dilanjutkan ke itemset selanjutnya dengan

menekan tombol “LANJUT” sampai seluruh level 2-itemset selesai diasosiasikan.

Aturan-aturan yang masuk dalam tabel aturan asosiasi akhir merupakan aturan

dengan nilai support yang memenuhi batas MST, nilai confidence yang memenuhi

batas MCT, dan nilai lift yang lebih besar dari 1. Pada kasus 1, terdapat 6 aturan

asosiasi akhir, sebagaimana yang tampak pada Gambar 4.58, yang dapat diterapkan

untuk menyelesaikan permasalahan dalam kasus tersebut.

Gambar 4.58. Aturan asosiasi akhir pada kasus 1 algoritma Apriori

Ketika seluruh aturan asosiasi akhir telah didapatkan, maka muncul kotak pesan

yang berisi informasi bahwa algoritma Apriori telah selesai seperti pada Gambar

4.59 berikut.

109
Gambar 4.59. Tampilan ketika algoritma Apriori selesai pada kasus 1

4.1.1.4.2. Kasus 2 Algoritma Apriori

Kasus 2 adalah kasus persediaan obat di sebuah rumah sakit yang berjumlah

22 dataset dan 30 item. Ketika kasus 1 dimuat dengan menekan tombol “MUAT

DATA” serta nilai MST dan nilai MCT dimasukkan, maka akan muncul tampilan

seperti pada Gambar 4.60 berikut.

Gambar 4.60. Tampilan ketika parameter masukan


kasus 2 algoritma Apriori dimuat

110
Setelah parameter masukan dimuat, algoritma Apriori dimulai dengan

menekan tombol “MULAI”. Proses algoritma Apriori diawali dengan membentuk

level 1-itemset. Caranya adalah dengan memeriksa apakah dalam setiap dataset

yang ditinjau terdapat itemset yang ditinjau, mulai dari dataset ID_1. Bersamaan

dengan itu, dilakukan perhitungan nilai support dari masing-masing item tersebut

seperti pada Gambar 4.61 berikut.

Gambar 4.61. Pemeriksaan item 1 dalam dataset ID_1


pada kasus 2 algoritma Apriori

Pemeriksaan item 1 dilanjutkan dengan menekan tombol “LANJUT” sampai

seluruh dataset selesai ditinjau. Setelah dataset terakhir telah ditinjau yakni dataset

ID_22, maka muncul tampilan seperti pada Gambar 4.62 yang menampilkan bahwa

nilai support dari item 1 adalah sebesar 0.227 dan nilai tersebut telah melebihi batas

MST sehingga item 1 dimasukkan dalam tabel level 1-itemset.

111
Gambar 4.62. Item 1 pada kasus 2 algoritma Apriori memenuhi batas MST

Setelah item 1 selesai, maka itemset yang ditinjau dilanjutkan ke item selanjutnya

dengan menekan tombol “LANJUT” sampai ke item 30. Oleh karena itu, proses

pembentukan level 1-itemset telah selesai dan item-item yang memenuhi batas MST

dapat dilihat dalam tabel level 1-itemset seperti yang tampak pada Gambar 4.63.

Gambar 4.63. Level 1-itemset pada kasus 2 algoritma Apriori

112
Setelah pembentukan level 1-itemset selesai, maka proses algoritma

dilanjutkan ke pembentukan level selanjutnya yakni level 2. Pembentukan level 2-

itemset dilakukan dengan membentuk kombinasi dari item-item yang terdapat pada

level 1-itemset. Gambar 4.64 menunjukkan pembentukan kombinasi antara item

yang ditinjau dengan item 1. Namun karena kedua item ini sama maka tidak

terbentuk kombinasi item baru.

Gambar 4.64. Pembentukan kombinasi item 1 dengan item 1


pada kasus 2 algoritma Apriori

Kemudian itemset yang akan dikombinasikan dilanjutkan ke item 5 dengan

menekan tombol “LANJUT”. Gambar 4.65 menunjukkan pembentukan itemset

baru yakni itemset [1,5] seperti yang ditampilkan dalam tabel level 2-itemset pada

halaman aplikasi.

113
Gambar 4.65. Pembentukan kombinasi item 1 dengan item 5
pada kasus 2 algoritma Apriori

Pembentukan kombinasi item dilanjutkan sampai seluruh itemset telah ditinjau dan

telah dikombinasikan dengan seluruh item yang terdapat dalam level 1-itemset.

Dengan demikian didapatkan kombinasi 2 item seperti yang tampak pada Gambar

4.66 berikut.

Gambar 4.66. Kombinasi 2 item pada kasus 2 algoritma Apriori

114
Setelah itu, dilakukan pemeriksaan kombinasi 2 item yang telah terbentuk dalam

dataset yang ditinjau sekaligus menghitung nilai support dari setiap itemset tersebut

dengan menekan tombol “LANJUT”. Pemeriksaan ini bertujuan untuk mengetahui

itemset mana saja yang masuk dalam level 2-itemset. Dimulai dari kombinasi item

[1,5] seperti yang ditunjukkan pada Gambar 4.67 berikut. Dalam dataset ID_1 tidak

terdapat itemset [1,5] sehingga total kemunculan itemset dan nilai support yang

didapatkan masih bernilai 0.

Gambar 4.67. Pemeriksaan itemset [1,5] dalam dataset ID_1


pada kasus 2 algoritma Apriori

Pemeriksaan itemset [1,5] dilanjutkan ke seluruh dataset. Setelah seluruh dataset

telah ditinjau, maka didapatkan nilai support dari itemset [1,5] sebesar 0.091.

Karena nilai tersebut tidak memenuhi batas nilai MST, maka itemset [1,5] tidak

masuk dalam tabel level 2-itemset seperti yang ditampilkan pada Gambar 4.68.

115
Gambar 4.68. Itemset [1,5] pada kasus 2 algoritma Apriori
tidak memenuhi batas MST

Setelah itu, pemeriksaan dan perhitungan nilai support dilanjutkan ke seluruh

itemset dari tabel kombinasi 2 item. Setelah seluruh kombinasi 2 item telah

diperiksa, maka didapatkan itemset dengan nilai support yang memenuhi batas nilai

MST. Kombinasi item tersebut masuk dalam tabel level 2-itemset seperti yang

ditunjukkan pada Gambar 4.69 berikut.

Gambar 4.69. Level 2-itemset pada kasus 2 algoritma Apriori

116
Setelah pembentukan level 2-itemset selesai, maka proses algoritma

dilanjutkan ke pembentukan level selanjutnya yakni level 3. Level 3-itemset diawali

dengan membentuk kombinasi dari item-item yang terdapat pada level 2-itemset.

Dimulai dengan melakukan kombinasi itemset [1,23] dengan item 1. Namun karena

dalam itemset [1,23] telah terdapat item 1 maka tidak terbentuk kombinasi item baru

seperti yang ditampilkan pada Gambar 4.70 berikut.

Gambar 4.70. Pembentukan kombinasi item [1,23] dengan item 1


pada kasus 2 algoritma Apriori

Ketika kombinasi item dilanjutkan ke item 5, terbentuk kombinasi item baru yakni

[1,23,5] seperti yang ditunjukkan pada Gambar 4.71. Kemudian pembentukan

kombinasi 3 item dilanjutkan sampai itemset terakhir yang ditinjau telah

dikombinasikan dengan seluruh item dari level 2-itemset. Dengan demikian,

didapatkan seluruh kombinasi 3 item seperti yang ditunjukkan pada Gambar 4.72

berikut.

117
Gambar 4.71. Pembentukan kombinasi item [1,23,5] pada
kasus 2 algoritma Apriori

Gambar 4.72. Kombinasi 3 item pada kasus 2 algoritma Apriori

Setelah kombinasi 3 item didapatkan, maka tahap selanjutnya adalah melakukan

pembentukan level 3-itemset. Hal ini dilakukan dengan cara memeriksa apakah

setiap kombinasi 3 item tersebut terdapat dalam setiap dataset yang ditinjau dan

sekaligus melakukan perhitungan nilai support dari setiap kombinasi item yang ada

untuk mengetahui itemset mana saja yang memenuhi batas nilai MST dan masuk

118
dalam tabel level 3-itemset. Dimulai dari kombinasi 3 item yang pertama yakni

itemset [1,23,5].

Gambar 4.73. Pemeriksaan itemset [1,23,5] dalam dataset ID_1


pada kasus 2 algoritma Apriori

Gambar 4.73 menunjukkan bahwa dalam dataset ID_1 tidak terdapat itemset

[1,23,5] sehingga total kemunculan itemset dan nilai support yang didapatkan

masih bernilai 0. Kemudian dataset yang ditinjau dilanjutkan ke seluruh dataset

dengan menekan tombol “LANJUT”. Karena nilai support yang didapatkan dari

itemset [1,23,5] adalah sebesar 0.091, maka itemset tersebut tidak masuk dalam

tabel level 3-itemset seperti yang ditunjukkan pada Gambar 4.74 berikut.

119
Gambar 4.74. Itemset [1,23,5] pada kasus 2 algoritma Apriori
tidak memenuhi batas MST

Pemeriksaan dan perhitungan nilai support dilanjutkan ke seluruh kombinasi item

yang terdapat dalam tabel kombinasi 3 item. Setelah seluruh kombinasi item telah

diperiksa, maka didapatkan kombinasi item dengan nilai support yang memenuhi

batas nilai MST dan masuk dalam tabel level 3-itemset seperti yang ditunjukkan

pada Gambar 4.75 berikut.

Gambar 4.75. Level 3-itemset ada kasus 2 algoritma Apriori

120
Setelah pembentukan level 3-itemset selesai, maka proses algoritma

dilanjutkan ke pembentukan level selanjutnya yakni level 4. Pembentukan level 4-

itemset dimulai dengan membentuk kombinasi dari item-item yang terdapat pada

level 3-itemset. Dimulai dari melakukan kombinasi itemset [5,12,16] dengan item

yang terdapat dalam level 3-itemset yakni item 5, 12, 16, 20, dan 23. Kemudian

dilanjutkan dengan melakukan kombinasi terhadap seluruh itemset dalam level 3

dengan menekan tombol “LANJUT” sehingga didapatkan kombinasi 4 item seperti

yang ditampilkan pada Gambar 4.76 berikut.

Gambar 4.76. Kombinasi 4 item pada kasus 2 algoritma Apriori

Setelah kombinasi 4 item didapatkan, maka tahap selanjutnya adalah melakukan

pembentukan level 4-itemset. Hal ini dilakukan dengan cara memeriksa apakah

kombinasi 4 item yang terbentuk terdapat dalam setiap dataset yang ditinjau dan

sekaligus melakukan perhitungan nilai support dari kombinasi item tersebut untuk

mengetahui apakah itemset tersebut memenuhi batas nilai MST atau tidak. Dimulai

dengan memeriksa apakah kombinasi 4 item yang pertama yakni itemset

121
[5,12,16,20] terdapat dalam dataset ID_1 seperti yang ditunjukkan pada Gambar

4.77 berikut.

Gambar 4.77. Pemeriksaan itemset [5,12,16,20] dalam dataset ID_1


pada kasus 2 algoritma Apriori

Gambar 4.77 menunjukkan bahwa dalam dataset ID_1 tidak terdapat itemset

[5,12,16,20] sehingga total kemunculan itemset dan nilai support yang didapatkan

masih bernilai 0. Kemudian dataset yang ditinjau dilanjutkan ke seluruh dataset

dengan menekan tombol “LANJUT”. Karena nilai support yang didapatkan dari

itemset [5,12,16,20] adalah sebesar 0.273, maka itemset tersebut masuk dalam tabel

level 3-itemset seperti yang ditunjukkan pada Gambar 4.78 berikut.

122
Gambar 4.78. Itemset [5,12,16,20] pada kasus 2 algoritma Apriori
memenuhi batas MST

Pemeriksaan dan perhitungan nilai support dilanjutkan ke seluruh kombinasi item

yang terdapat dalam tabel kombinasi 4 item dengan menekan tombol “LANJUT”.

Setelah seluruh kombinasi item telah diperiksa, maka didapatkan kombinasi item

dengan nilai support yang memenuhi batas nilai MST dan masuk dalam tabel level

4-itemset seperti yang ditunjukkan pada Gambar 4.79 berikut.

Gambar 4.79. Level 4-itemset pada kasus 2 algoritma Apriori

123
Setelah pembentukan level 4-itemset selesai, maka proses algoritma

dilanjutkan ke pembentukan level selanjutnya yakni level 5. Pembentukan level 5-

itemset dimulai dengan membentuk kombinasi dari item-item yang terdapat pada

level 4-itemset. Dimulai dari melakukan kombinasi itemset [5,12,16,20] dengan

item yang terdapat dalam level 3-itemset yakni item 5, 12, 16, 20, dan 23. Kemudian

dilanjutkan dengan melakukan kombinasi terhadap seluruh itemset dalam level 4

dengan menekan tombol “LANJUT” sehingga didapatkan kombinasi 5 item seperti

yang ditampilkan pada Gambar 4.80 berikut.

Gambar 4.80. Kombinasi 5 item pada kasus 2 algoritma Apriori

Setelah kombinasi 5 item didapatkan, maka tahap selanjutnya adalah melakukan

pembentukan level 5-itemset. Hal ini dilakukan dengan cara memeriksa apakah

kombinasi 5 item yang terbentuk, yakni itemset [5,12,16,20,13] terdapat dalam

setiap dataset yang ditinjau dan sekaligus melakukan perhitungan nilai support dari

kombinasi item tersebut untuk mengetahui apakah itemset tersebut memenuhi batas

124
nilai MST atau tidak. Proses pemeriksaan ini ditunjukkan pada Gambar 4.81

berikut.

Gambar 4.81. Pemeriksaan itemset [5,12,16,20,23] dalam dataset ID_1


pada kasus 2 algoritma Apriori

Gambar 4.81 menunjukkan bahwa dalam dataset ID_1 tidak terdapat itemset

[5,12,16,20,23] sehingga total kemunculan itemset dan nilai support yang

didapatkan masih bernilai 0. Kemudian dataset yang ditinjau dilanjutkan ke seluruh

dataset dengan menekan tombol “LANJUT”. Karena nilai support yang didapatkan

dari itemset [5,12,16,20,23] adalah sebesar 0.273, maka itemset tersebut masuk

dalam tabel level 5-itemset seperti yang ditunjukkan pada Gambar 4.82 berikut.

125
Gambar 4.82. Level 5-itemset pada kasus 2 algoritma Apriori

Karena hanya terdapat 1 itemset dalam level 5-itemset maka tidak terdapat

kombinasi item baru yang dapat dibentuk. Oleh karena itu, level itemset tertinggi

pada kasus 2 tersebut adalah level 5-itemset yakni itemset [5,12,16,20,23]. Setelah

level tertinggi itemset telah didapatkan, maka proses algoritma Apriori dilanjutkan

dengan membentuk aturan asosiasi dari itemset-itemset yang telah terbentuk di

setiap levelnya. Dimulai dari itemset pertama yang terdapat dalam level 2-itemset

yakni itemset [1,23]. Seperti yang tampak pada Gambar 4.83 berikut, aturan [1,23]

memiliki nilai support sebesar 0.227, nilai confidence sebesar 1, dan nilai lift

sebesar 1.048, sehingga itemset tersebut masuk dalam aturan asosiasi akhir karena

telah memenuhi batas nilai MST, MCT, dan lift.

126
Gambar 4.83. Aturan [1,23] memenuhi batas MST, MCT, dan lift

Kemudian dilanjutkan dengan mengasosiasikan aturan sebelumnya sehingga

didapatkan aturan baru yakni aturan [23,1]. Nilai confidence dari aturan [23,1] tidak

memenuhi batas nilai yang ditentukan, sebagaimana ditunjukkan dalam Gambar

4.84, sehingga aturan [23,1] bukan merupakan aturan asosiasi yang tepat.

Gambar 4.84. Aturan [2,1] tidak memenuhi batas nilai MCT

127
Setelah itu, pembentukan aturan asosiasi dilanjutkan ke itemset selanjutnya

dengan menekan tombol “LANJUT” sampai seluruh level itemset selesai

diasosiasikan. Aturan-aturan yang masuk dalam tabel aturan asosiasi akhir

merupakan aturan dengan nilai support yang memenuhi batas MST, nilai

confidence yang memenuhi batas MCT, dan nilai lift yang lebih besar dari 1. Pada

kasus 2, terdapat 117 aturan asosiasi akhir, sebagaimana ditunjukkan pada Gambar

4.85, yang dapat diterapkan untuk menyelesaikan permasalahan dalam kasus

tersebut.

Gambar 4.85. Aturan asosiasi akhir pada kasus 2 algoritma Apriori

Ketika seluruh aturan asosiasi akhir telah didapatkan, maka muncul kotak pesan

yang berisi informasi bahwa algoritma Apriori telah selesai seperti pada Gambar

4.86 berikut.

128
Gambar 4.86. Tampilan ketika algoritma Apriori selesai pada kasus 2

4.1.1.4.3. Kasus 3

Kasus 3 adalah kasus penjualan produk dari perusahaan yang menjual alat

petualangan yang berjumlah 10 dataset dan 9 item. Ketika kasus 1 dimuat dengan

menekan tombol “MUAT DATA” serta nilai MST dan nilai MCT dimasukkan,

maka akan muncul tampilan seperti pada Gambar 4.87 berikut.

Gambar 4.87. Tampilan ketika parameter masukan


kasus 3 algoritma Apriori dimuat

129
Setelah parameter masukan dimuat, algoritma Apriori dimulai dengan menekan

tombol “MULAI”. Proses algoritma Apriori dimulai dengan melakukan

pembentukan level 1-itemset. Caranya adalah dengan memeriksa apakah dalam

dataset yang ditinjau terdapat itemset yang ditinjau. Bersamaan dengan itu,

dilakukan perhitungan nilai support dari masing-masing item tersebut seperti pada

Gambar 4.88 berikut.

Gambar 4.88. Pemeriksaan item 1 dalam dataset ID_1


pada kasus 3 algoritma Apriori

Pemeriksaan item 1 dilanjutkan sampai seluruh dataset selesai ditinjau. Setelah

dataset terakhir telah ditinjau yakni ID_10, maka muncul tampilan seperti pada

Gambar 4.89 yang berisi informasi bahwa nilai support dari item 1 adalah 0.4 dan

nilai tersebut melebihi batas MST sehingga item 1 masuk dalam level 1-itemset.

130
Gambar 4.89. Item 1 pada kasus 3 algoritma Apriori memenuhi batas MST

Setelah item 1 selesai ditinjau, maka itemset yang ditinjau dilanjutkan ke item

selanjutnya dengan menekan tombol “LANJUT” sampai item 9. Item 9 merupakan

item terakhir yang ditinjau dalam kasus 3. Oleh karena itu, proses pembentukan

level 1-itemset telah selesai dan item-item yang memenuhi batas MST dimasukkan

dalam tabel level 1-itemset seperti yang tampak pada Gambar 4.90.

Gambar 4.90. Level 1-itemset pada kasus 3 algoritma Apriori

131
Setelah pembentukan level 1-itemset selesai, maka proses algoritma

dilanjutkan ke pembentukan level selanjutnya yakni level 2. Pembentukan level 2-

itemset dilakukan dengan membentuk kombinasi dari item-item yang terdapat pada

level 1-itemset. Mulai dari membentuk kombinasi antara item yang ditinjau dari

level 1-itemset yakni item 1 dengan item 1. Namun karena kedua item ini adalah

item yang sama maka tidak terbentuk kombinasi item baru. Kemudian itemset yang

akan dikombinasikan dilanjutkan ke item selanjutnya yaitu item 2 dengan menekan

tombol “LANJUT”. Gambar 4.91 menunjukkan pembentukan itemset baru yakni

itemset [1,2] seperti yang ditampilkan dalam tabel level 2-itemset pada halaman

aplikasi.

Gambar 4.91. Pembentukan kombinasi item 1 dengan item 2


pada kasus 3 algoritma Apriori

Pembentukan kombinasi item dilanjutkan sampai seluruh itemset telah ditinjau dan

telah dikombinasikan dengan seluruh item yang terdapat dalam level 1-itemset.

132
Dengan demikian didapatkan kombinasi 2 item seperti yang tampak pada Gambar

4.92 berikut.

Gambar 4.92. Kombinasi 2 item pada kasus 3 algoritma Apriori

Setelah itu, dilakukan pemeriksaan kombinasi item dalam dataset yang ditinjau

sekaligus perhitungan nilai support dari setiap kombinasi 2 item yang telah

terbentuk dengan menekan tombol “LANJUT”. Pemeriksaan ini bertujuan untuk

mengetahui itemset mana saja yang masuk dalam level 2-itemset. Dimulai dari

kombinasi item [1,2] seperti yang ditunjukkan pada Gambar 4.93 berikut. Dalam

dataset ID_1 tidak terdapat itemset [1,2] sehingga total kemunculan itemset dan

nilai support yang didapatkan masih bernilai 0.

133
Gambar 4.93. Pemeriksaan itemset [1,2] dalam dataset ID_1
pada kasus 3 algoritma Apriori

Pemeriksaan itemset [1,2] dilanjutkan ke seluruh dataset. Setelah seluruh dataset

telah ditinjau, maka didapatkan nilai support dari itemset [1,2] yakni 0. Oleh karena

nilai tersebut tidak memenuhi batas nilai MST, maka itemset [1,2] tidak masuk

dalam tabel level 2-itemset seperti yang ditampilkan pada Gambar 4.94.

Gambar 4.94. Itemset [1,2] pada kasus 3 algoritma Apriori


tidak memenuhi batas MST

134
Setelah itu, pemeriksaan dan perhitungan nilai support dilanjutkan ke seluruh

kombinasi item yang terdapat dalam tabel kombinasi 2 item. Setelah seluruh

kombinasi item telah diperiksa, maka didapatkan kombinasi item dengan nilai

support yang memenuhi batas nilai MST. Kombinasi item tersebut masuk dalam

tabel level 2-itemset seperti yang ditunjukkan pada Gambar 4.95 berikut.

Gambar 4.95. Level 2-itemset pada kasus 3 algoritma Apriori

Setelah pembentukan level 2-itemset selesai, maka proses algoritma

dilanjutkan ke pembentukan level selanjutnya yakni level 3. Pembentukan level 3-

itemset dimulai dengan membentuk kombinasi dari item-item yang terdapat pada

level 2-itemset. Dimulai dari melakukan kombinasi itemset [1,4] dengan item 1.

Namun karena dalam itemset [1,4] telah terdapat item 1 maka tidak terbentuk

kombinasi item baru seperti yang ditampilkan pada Gambar 4.96 berikut.

135
Gambar 4.96. Pembentukan kombinasi item [1,4] dengan item 1
pada kasus 3 algoritma Apriori

Ketika kombinasi item dilanjutkan ke item 2, terbentuk kombinasi item baru yakni

[1,4,2] seperti yang ditunjukkan pada Gambar 4.97. Kemudian pembentukan

kombinasi 3 item dilanjutkan sampai itemset terakhir yang ditinjau telah

dikombinasikan dengan seluruh item dari level 2-itemset. Dengan demikian,

didapatkan seluruh kombinasi 3 item seperti yang ditunjukkan pada Gambar 4.98

berikut.

136
Gambar 4.97. Pembentukan kombinasi item [1,4,2] pada
kasus 3 algoritma Apriori

Gambar 4.98. Kombinasi 3 item pada kasus 3 algoritma Apriori

Setelah kombinasi 3 item didapatkan, maka tahap selanjutnya adalah melakukan

pembentukan level 3-itemset. Hal ini dilakukan dengan cara memeriksa apakah

setiap kombinasi 3 item tersebut terdapat dalam setiap dataset yang ditinjau dan

sekaligus melakukan perhitungan nilai support dari setiap kombinasi item yang ada

untuk mengetahui itemset mana saja yang memenuhi batas nilai MST dan masuk

137
dalam tabel level 3-itemset. Dimulai dari kombinasi 3 item yang pertama yakni

itemset [1,4,2].

Gambar 4.99. Pemeriksaan itemset [1,4,2] dalam dataset ID_1


pada kasus 3 algoritma Apriori

Gambar 4.99 menunjukkan bahwa dalam dataset ID_1 tidak terdapat itemset [1,4,2]

sehingga total kemunculan itemset dan nilai support yang didapatkan masih bernilai

0. Kemudian dataset yang ditinjau dilanjutkan ke seluruh dataset dengan menekan

tombol “LANJUT”. Karena nilai support yang didapatkan dari itemset [1,4,2]

adalah 0, maka itemset tersebut tidak masuk dalam tabel level 3-itemset seperti yang

ditunjukkan pada Gambar 4.100 berikut.

138
Gambar 4.100. Itemset [1,4,2] pada kasus 3 algoritma Apriori
tidak memenuhi batas MST

Pemeriksaan dan perhitungan nilai support dilanjutkan ke seluruh kombinasi item

yang terdapat dalam tabel kombinasi 3 item. Setelah seluruh kombinasi item telah

diperiksa, maka didapatkan kombinasi item dengan nilai support yang memenuhi

batas nilai MST dan masuk dalam tabel level 3-itemset seperti yang ditunjukkan

pada Gambar 4.101 berikut.

Gambar 4.101. Level 3-itemset pada kasus 3 algoritma Apriori

139
Karena hanya terdapat 1 itemset dalam level 3-itemset maka tidak terdapat

kombinasi item baru yang dapat dibentuk. Oleh karena itu, level itemset tertinggi

pada kasus 3 tersebut adalah level 3-itemset yakni itemset [1,4,6]. Setelah level

tertinggi itemset telah didapatkan, maka proses algoritma Apriori dilanjutkan

dengan membentuk aturan asosiasi dari itemset-itemset yang telah terbentuk di

setiap levelnya. Dimulai dari itemset pertama yang terdapat dalam level 2-itemset

yakni itemset [1,4]. Seperti yang tampak pada Gambar 4.102 berikut, aturan [1,4]

memiliki nilai support sebesar 0.3, nilai confidence sebesar 0.75, dan nilai lift

sebesar 1.0714, sehingga itemset tersebut masuk dalam aturan asosiasi akhir karena

telah memenuhi batas nilai MST, MCT, dan lift.

Gambar 4.102. Aturan [1,4] pada kasus 3 algoritma Apriori memenuhi


batas MST, MCT, dan lift

Kemudian dilanjutkan dengan mengasosiasikan aturan sebelumnya sehingga

didapatkan aturan baru yakni aturan [4,1]. Nilai confidence dari aturan [4,1] tidak

memenuhi batas nilai yang ditentukan, sebagaimana ditunjukkan dalam Gambar

4.103, sehingga aturan [4,1] bukan merupakan aturan asosiasi yang tepat.

140
Gambar 4.103. Aturan [4,1] pada kasus 3 algoritma Apriori
tidak memenuhi batas nilai MCT

Setelah itu, pembentukan aturan asosiasi dilanjutkan ke itemset selanjutnya

dengan menekan tombol “LANJUT” sampai seluruh level itemset selesai

diasosiasikan. Aturan-aturan yang masuk dalam tabel aturan asosiasi akhir

merupakan aturan dengan nilai support yang memenuhi batas MST, nilai

confidence yang memenuhi batas MCT, dan nilai lift yang lebih besar dari 1. Pada

kasus 3, terdapat 12 aturan asosiasi akhir, sebagaimana ditunjukkan pada Gambar

4.104, yang dapat diterapkan untuk menyelesaikan permasalahan dalam kasus

tersebut.

141
Gambar 4.104. Aturan asosiasi akhir pada kasus 3 algoritma Apriori

Ketika seluruh aturan asosiasi akhir telah didapatkan, maka muncul kotak pesan

yang berisi informasi bahwa algoritma Apriori telah selesai seperti pada Gambar

4.105 berikut.

Gambar 4.105. Tampilan ketika algoritma Apriori selesai pada kasus 3

142
Ketika tombol “HAPUS” pada halaman aplikasi algoritma Apriori ditekan

maka isi dari seluruh komponen yang ada dalam aplikasi terhapus seperti yang

ditunjukkan oleh Gambar 4.106.

Gambar 4.106. Tampilan ketika tombol “HAPUS” Apriori ditekan

Ketika tombol “KELUAR” ditekan maka muncul kotak pesan berisi

pertanyaan konfirmasi apakah pengguna ingin keluar dari aplikasi atau tidak

sebagaimana ditunjukkan oleh Gambar 4.107. Dalam pertanyaan tersebut terdapat

3 pilihan yang disediakan bagi pengguna, yakni “Ya” untuk keluar dari aplikasi,

“Tidak” untuk tetap berada di halaman algoritma Apriori, serta “Kembali ke Menu

Utama” untuk menutup halaman algoritma Apriori dan kembali ke menu utama

untuk memilih algoritma lainnya.

143
Gambar 4.107. Tampilan ketika tombol “KELUAR” Apriori ditekan

4.1.2. Hasil Pengujian Aplikasi

4.1.2.1.Hasil Pengujian Tampilan Antarmuka

Pengujian tampilan antarmuka bertujuan untuk mengetahui fungsionalitas

dari komponen-komponen yang terdapat dalam halaman aplikasi. Pengujian

tampilan antarmuka terbagi menjadi 3 bagian sesuai dengan jumlah halaman yang

terdapat dalam aplikasi, yakni halaman utama, halaman algoritma K-Means,

halaman algoritma FCM dan halaman algoritma Apriori.

a. Hasil Pengujian Antarmuka Halaman Utama

Hasil pengujian antarmuka halaman utama dapat dilihat pada Tabel 4.8

berikut:

144
Tabel 4.8. Hasil pengujian antarmuka halaman utama
Komponen Hasil yang Hasil yang
No. Keterangan
yang Diuji Diharapkan Didapatkan
Sistem dapat Setelah tombol ditekan,
Tombol
menampilkan muncul jendela baru
1. Algoritma Berhasil
halaman algoritma yang berisi halaman
K-Means
K-Means algoritma K-Means
Sistem dapat Setelah tombol ditekan,
Tombol
menampilkan muncul jendela baru
2. Algoritma Berhasil
halaman algoritma yang berisi halaman
FCM
FCM algoritma FCM
Sistem dapat Setelah tombol ditekan,
Tombol
menampilkan muncul jendela baru
3. Algoritma Berhasil
halaman algoritma yang berisi halaman
Apriori
Apriori algoritma Apriori
Setelah tombol ditekan,
muncul pertanyaan
konfirmasi untuk
Sistem dapat keluar dari aplikasi
Tombol menutup aplikasi atau tidak. Jika tidak
4. Berhasil
Keluar sesuai pilihan maka sistem akan
pengguna kembali ke halaman
utama aplikasi. Jika ya
maka sistem akan
menutup aplikasi.

b. Hasil Pengujian Antarmuka Halaman Algoritma K-Means dan FCM

Hasil pengujian antarmuka halaman algoritma K-Means dan FCM dapat

dilihat pada Tabel 4.9 berikut:

145
Tabel 4.9. Hasil pengujian antarmuka halaman K-Means dan FCM
Komponen Hasil yang Hasil yang
No. Keterangan
yang Diuji Diharapkan Didapatkan
Setelah data masukan
Sistem dapat dipilih dan tombol
Tombol menampilkan isi ditekan, isi data
1. Berhasil
Muat Data dari data masukan tersebut akan muncul
yang dipilih pada tabel yang
disediakan
Setelah tombol
ditekan, proses
Sistem dapat algoritma K-Means
Tombol memulai proses dan FCM mulai
2. Berhasil
Mulai algoritma K- bekerja. Terbukti dari
Means dan FCM dimulainya proses
pembentukan titik
centroid awal
Setiap kali tombol
ditekan, proses iterasi
dari algoritma K-
Sistem dapat
Means dan FCM
Tombol melanjutkan
3. berlanjut ke tahap Berhasil
Lanjut proses iterasi
selanjutnya sampai
secara bertahap
algoritma K-Means
dan FCM selesai
bekerja.
Sistem akan Setelah tombol
Tombol menghapus isi ditekan, isi dari
4. Berhasil
Hapus dari komponen textbox, tabel-tabel,
aplikasi dan grafik yang

146
Komponen Hasil yang Hasil yang
No. Keterangan
yang Diuji Diharapkan Didapatkan
tersedia pada aplikasi
menjadi kosong
Setelah tombol
ditekan, muncul
pertanyaan konfirmasi
untuk keluar dari
aplikasi yakni ya,
Sistem akan tidak, atau kembali ke
Tombol menutup aplikasi menu utama. Jika ya,
5. Berhasil
Keluar sesuai pilihan aplikasi tertutup. Jika
pengguna tidak, halaman ini tetap
ada. Jika kembali ke
menu utama, halaman
ini tertutup dan muncul
halaman utama
aplikasi

c. Hasil Pengujian Antarmuka Halaman Algoritma Apriori

Hasil pengujian antarmuka halaman algoritma Apriori dapat dilihat pada

Tabel 4.10 berikut:

Tabel 4.10. Hasil pengujian antarmuka halaman Apriori


Komponen Hasil yang Hasil yang
No. Keterangan
yang Diuji Diharapkan Didapatkan
Sistem dapat Setelah data masukan
Tombol menampilkan isi dipilih dan tombol
1. Berhasil
Muat Data dari data masukan ditekan, isi data
yang dipilih tersebut akan muncul

147
Komponen Hasil yang Hasil yang
No. Keterangan
yang Diuji Diharapkan Didapatkan
pada tabel yang
disediakan
Setelah tombol
ditekan, proses
algoritma Apriori
Sistem dapat
Tombol mulai bekerja. Terbukti
2. memulai proses Berhasil
Mulai/Ulang dari dimulainya proses
algoritma Apriori
pembentukan level 1-
itemset melalui tabel-
tabel yang tersedia
Setiap kali tombol
Sistem dapat ditekan, proses
melanjutkan algoritma Apriori
proses berlanjut ke tahap
Tombol
3. pembentukan selanjutnya sampai Berhasil
Lanjut
itemset dan aturan tidak ada lagi itemset
asosiasi secara yang dapat terbentuk
bertahap dan didapatkan aturan
asosiasi yang sesuai.
Setelah tombol
Sistem akan ditekan, isi dari
Tombol menghapus isi textbox dan tabel-tabel
4. Berhasil
Hapus dari komponen yang tersedia pada
aplikasi aplikasi menjadi
kosong
Setelah tombol
Tombol Sistem akan
5. ditekan, muncul Berhasil
Keluar menutup aplikasi
pertanyaan konfirmasi

148
Komponen Hasil yang Hasil yang
No. Keterangan
yang Diuji Diharapkan Didapatkan
sesuai pilihan untuk keluar dari
pengguna aplikasi yakni ya,
tidak, atau kembali ke
menu utama. Jika ya,
aplikasi tertutup. Jika
tidak, halaman ini tetap
ada. Jika kembali ke
menu utama, halaman
ini tertutup dan muncul
halaman utama
aplikasi

4.1.2.2.Hasil Pengujian Fungsi Dasar

Pengujian fungsi dasar sistem bertujuan untuk mengetahui fungsi-fungsi

dasar yang digunakan dalam aplikasi. Hasil pengujian fungsi dasar sistem dapat

dilihat pada Tabel 4.11 berikut.

Tabel 4.11. Hasil pengujian fungsi dasar sistem


Komponen Hasil yang Hasil yang
No. Keterangan
yang Diuji Diharapkan Didapatkan
Sistem dapat Masing-masing data
menghitung terkelompokkan dalam
Fungsi
nilai jarak setiap cluster sesuai
pembentukan
antara setiap dengan nilai jarak yang
1. cluster Berhasil
data terhadap didapatkan dan
algoritma K-
setiap centroid pengelompokan
Means
dan juga dapat berhenti saat perubahan
menghitung nilai fungsi objektif

149
Komponen Hasil yang Hasil yang
No. Keterangan
yang Diuji Diharapkan Didapatkan
perubahan nilai kurang dari nilai
fungsi objektif ambang batas yang
ditetapkan
Masing-masing data
Sistem dapat
terkelompokkan dalam
menghitung
setiap cluster sesuai
nilai jarak
Fungsi dengan nilai jarak yang
antara setiap
pembentukan didapatkan dan
data terhadap
2. cluster pengelompokan Berhasil
setiap centroid
algoritma berhenti saat perubahan
dan juga dapat
FCM nilai fungsi objektif
menghitung
kurang dari nilai
perubahan nilai
ambang batas yang
fungsi objektif
ditetapkan
Setiap itemset
Sistem dapat
dikombinasikan satu
menghitung
sama lain sesuai
nilai support,
Fungsi dengan nilai support
confidence, dan
pembentukan yang telah dihitung
lift secara benar
itemset dan sampai tidak terdapat
3. untuk Berhasil
aturan asosiasi lagi kombinasi item
mendapatkan
algoritma yang dapat terbentuk
aturan asosiasi
Apriori dan didapatkan aturan
akhir yang
asosiasi yang
memenuhi
memenuhi syarat nilai
syarat
confidence, dan lift.

150
4.1.2.3.Hasil Pengujian Validasi

Pengujian validasi bertujuan untuk memastikan validasi-validasi yang

terdapat di dalam sistem sudah berjalan dengan baik. Hasil pengujian validasi dapat

dilihat pada Tabel 4.12 berikut.

Tabel 4.12. Hasil pengujian validasi


Komponen Hasil yang Hasil yang
No. Keterangan
yang Diuji Diharapkan Didapatkan
Validasi ketika Sistem dapat
masukan nilai menampilkan
Muncul kotak pesan
T pada pesan
yang memberitahukan
1. halaman peringatan Berhasil
bahwa masukan nilai T
algoritma K- bahwa nilai T
harus berupa angka.
Means bukan harus berupa
berupa angka angka.

Validasi ketika Sistem dapat


masukan nilai menampilkan
Muncul kotak pesan
MST dan pesan
yang memberitahukan
MCT pada peringatan
2. bahwa masukan nilai Berhasil
halaman bahwa nilai
MST dan MCT harus
algoritma MST dan MCT
berupa angka.
Apriori bukan harus berupa
berupa angka angka.

151
Komponen Hasil yang Hasil yang
No. Keterangan
yang Diuji Diharapkan Didapatkan
Sistem dapat
Validasi ketika
menampilkan
level itemset
pesan Muncul kotak pesan
yang ingin
peringatan yang memberitahukan
dilihat pada
3. bahwa level bahwa level itemset Berhasil
halaman
itemset yang yang dimasukkan harus
algoritma
dimasukkan berupa angka.
Apriori bukan
harus berupa
berupa angka
angka.

Validasi ketika
level itemset Sistem dapat
Muncul kotak pesan
yang ingin menampilkan
yang memberitahukan
dilihat pada pesan
bahwa level itemset
halaman peringatan
4. yang dimasukkan harus Berhasil
algoritma bahwa level
berupa angka tidak
Apriori tidak itemset yang
sesuai dengan level
sesuai dengan dimasukkan
yang telah terbentuk.
level yang tidak sesuai.
telah terbentuk

4.2. Pembahasan

Aplikasi modul praktikum data mining ini dirancang sesuai dengan GBRP

dari mata kuliah Data Mining. Berdasarkan GBRP tersebut, terdapat beberapa

metode data mining yang menjadi sasaran pembelajaran bagi mahasiswa, termasuk

metode clustering dan association rule. Untuk skala modul praktikum, penulis

memilih algoritma K-Means dan Fuzzy C-Means (FCM) dari metode clustering dan

152
algoritma Apriori dari metode association rule yang menjadi fokus pembelajaran

dalam aplikasi modul praktikum data mining ini.

Aplikasi modul praktikum data mining yang dirancang telah dapat

memperlihatkan proses yang terjadi secara bertahap selama algoritma K-Means,

algoritma FCM dan algoritma Apriori bekerja. Dalam hal ini, tahapan algoritma

ditampilkan secara rinci dan disertai proses perhitungan dari rumus-rumus yang

digunakan dalam algoritma. Hal ini dimaksudkan agar pengguna dapat memahami

dengan baik setiap proses yang dikerjakan oleh masing-masing algoritma tersebut.

Setiap tahapan proses yang terjadi ditampilkan secara transparan dalam

aplikasi. Saat data masukan dari masing-masing algoritma dimuat ke dalam

aplikasi, maka pengguna dapat melihat isi dari data masukan tersebut. Keterangan

mengenai kasus dari masing-masing algoritma dijelaskan secara lengkap pada

penuntun praktikum yang dapat dilihat pada Lampiran 1, Lampiran 2 dan Lampiran

3. Selain buku penuntun, terdapat pula jurnal praktikum yang akan dikerjakan oleh

praktikan untuk menuliskan hasil praktikum data mining yang telah dilakukan

menggunakan aplikasi tersebut. Format jurnal praktikum dapat dilihat pada

Lampiran 4.

Tahapan kerja yang dilakukan oleh masing-masing algoritma ditampilkan

secara bertahap dan jelas. Perhitungan algoritma K-Means dan FCM ditampilkan

secara rinci pada textbox yang tersedia dan atribut-atribut dari algoritma K-Means

dan FCM seperti titik centroid, derajat keanggotaan, jarak data, dan hasil clustering

ditampilkan pada masing-masing tabel yang telah disediakan. Sama halnya dengan

halaman algoritma Apriori, proses pembentukan level itemset dilakukan secara

153
bertahap hingga tidak terdapat lagi kombinasi item yang dapat terbentuk dan pada

akhirnya didapatkan aturan asosiasi yang memenuhi syarat. Setiap proses dalam

algoritma Apriori ditampilkan secara jelas melalui textbox dan tabel yang tersedia.

Pengujian aplikasi modul praktikum secara fungsionalitas dilakukan dengan

menggunakan metode pengujian blackbox. Pada pengujian sistem menggunakan

blackbox, seluruh fungsi dalam aplikasi modul praktikum data mining telah diuji

dan didapatkan hasil yang sesuai dengan yang diharapkan. Adapun hal-hal yang

diujikan dari aplikasi ini adalah pengujian antarmuka aplikasi, pengujian fungsi

dasar algoritma, dan pengujian validasi sistem.

Selain itu, pengujian aplikasi juga dilakukan melalui pengisian kuisioner

oleh 10 orang responden yang merupakan mahasiswa yang telah mengambil mata

kuliah Data Mining. Kuisioner ini berisi pertanyaan-pertanyaan mengenai

pemahaman responden terkait algoritma K-Means dan Apriori setelah

menggunakan aplikasi modul praktikum tersebut. Isi dan jawaban dari kuisioner

tersebut dapat dilihat pada Lampiran 5. Tabel 4.13 menunjukkan rekapitulasi

jawaban responden terhadap kuisioner tersebut.

Tabel 4.13. Hasil rekapitulasi jawaban responden


Jawaban
No. Pertanyaan Sangat Cukup Kurang Tidak
paham paham paham paham
Perhitungan jarak dan fungsi
1. 8 2 0 0
objektif K-Means
Hasil pengelompokan K-
2. 6 4 0 0
Means

154
Jawaban
No. Pertanyaan Sangat Cukup Kurang Tidak
paham paham paham paham
Grafik pengelompokan K-
3. 6 4 0 0
Means
Pembentukan level itemset
4. 3 7 0 0
Apriori
Cara menghitung support,
5. confidence, dan lift pada 6 3 1 0
Apriori
Pemilihan aturan asosiasi
6. 9 1 0 0
akhir menggunakan Apriori
Kemudahan menggunakan
7. 4 6 0 0
aplikasi
Memahami tahapan kerja K-
8. Means dan Apriori setelah 5 5 0 0
menggunakan aplikasi
TOTAL 47 32 1 0
PERSENTASE (%) 58.75 40 1.25 0

Berdasarkan Tabel 4.13, dari 10 orang responden yang menggunakan

aplikasi modul praktikum tersebut, terdapat 58.75% yang sangat paham, 40% yang

cukup paham, 1.25% yang kurang paham, dan 0% yang tidak paham. Oleh karena

itu, dapat dikatakan bahwa aplikasi ini dapat menjelaskan algoritma K-Means dan

Apriori dengan baik sehingga pengguna memahami algoritma tersebut.

155
BAB V

PENUTUP

5.1. Kesimpulan

Dari hasil analisis dan pengujian yang telah dilakukan dalam perancangan

aplikasi modul praktikum untuk algoritma K-Means, FCM dan Apriori

menggunakan GUIDE MATLAB, maka didapatkan kesimpulan sebagai berikut:

1. Aplikasi dapat menyelesaikan permasalahan yang terdapat pada setiap

kasus data masukan dari algoritma K-Means, FCM dan Apriori. Dalam

hal ini jenis data masukan yang digunakan berupa kasus data sederhana

untuk skala praktikum.

2. Aplikasi dapat meningkatkan pemahaman pengguna mengenai tahapan

kerja dari algoritma K-Means dan Apriori yang terbukti dari 10 orang

responden kuisioner, terdapat 58.75% yang sangat paham dan 40% yang

cukup paham dengan algoritma tersebut setelah menggunakan aplikasi

tesebut.

5.2. Saran

Selama proses perancangan Aplikasi Modul Praktikum Data Mining untuk

Clustering dan Association Rule ini tentu saja tidak terlepas dari kekurangan dan

kelemahan. Oleh karena itu, penulis berharap aplikasi ini dapat lebih dikembangkan

dan disempurnakan, khususnya dalam hal-hal berikut:

156
1. Sebaiknya aplikasi dikembangkan dengan menambahkan algoritma

data mining lainnya, baik algoritma dari metode clustering dan

association rule maupun algoritma dari metode lainnya sehingga dapat

memperluas pengetahuan mahasiswa mengenai tahapan dari setiap

algoritma data mining yang ada.

2. Sebelum memulai proses algoritma, sebaiknya aplikasi modul

praktikum tersebut dapat melakukan tahapan preprocessing terhadap

data masukan yang akan diproses oleh masing-masing algoritma data

mining dan memperlihatkan tahapan-tahapan yang terjadi selama proses

preprocessing tersebut.

157
DAFTAR PUSTAKA

Bezdek, J. C., Ehrlich, R., & Full, W. (1984). FCM: The Fuzzy C-Means Clustering

Algorithm. Computers & Geosciences, 10(2–3), 191–203.

Borne, K. 2014. Association Rule Mining. (online).

https://mapr.com/blog/association-rule-mining-not-your-typical-data-

science-algorithm/, diakses pada 25 Januari 2018.

Frank, E., Hall, M., Holmes, G., Kirkby, R., Pfahringer, B., Witten, I. H., dan Trigg,

L. 2009. Chapter 1 Weka: A Machine Learning Workbench for Data Mining.

In Data Mining and Knowledge Discovery Handbook. Boston, MA: Springer

US. pp. 1269–1277.

García, S., Luengo, J., dan Herrera, F. 2015. Data Preprocessing in Data Mining.

Intelligent Systems Reference Library (Vol. 72).

Gera, M. 2015. Data Mining - Techniques , Methods and Algorithms : A Review on

Tools and their Validity.

Kamber, M., Kaufmann, M., dan All, P. 2000. Data Mining: Concepts and

Techniques. Universitas Simon Fraser

Listriani, Setyaningrum. 2016. Penerapan Metode Asosiasi Menggunakan

Algoritma Apriori Pada Aplikasi Analisa Pola Belanja Konsumen (Studi

Kasus Toko Buku Gramedia Bintaro). Tugas Akhir. Jurnal Teknik Informatika

Vol 9 No. 2, Universitas Islam Negeri Jakarta.

158
MathWorks Inc. 2015. Creating Graphical User Interfaces. MATLAB User Guide,

502.

Pratama, H. C., Bettiza, dan Matulatan. 2009. Data Awal Masuk Mahasiswa

Dengan Prestasi Akademik (Studi Kasus : STAI Miftahul Ulum

Tanjungpinang). Tugas Akhir. Tanjungpinang: Universitas Maritim Raja Ali

Haji.

Tampubolon, K., Saragih, dan H., Reza, B. 2013. Implementasi Data Mining

Algoritma Apriori Pada Sistem Persediaan Alat-Alat Kesehatan. Informasi

Dan Teknologi Ilmiah, 93–106.

Tan, P.-N., Steinbach, M., dan Kumar, V. 2005a. Association Analysis: Basic

Concepts and Algorithms. Introduction to Data Mining, 327–414.

Tan, P.-N., Steinbach, M., & Kumar, V. 2005b. Chap 8 : Cluster Analysis: Basic

Concepts and Algorithms. Introduction to Data Mining.

Teknomo, B. K. (2007). K-Means Clustering Tutorial. (online)

http://people.revoledu.com/kardi/tutorial/kMean/, diakses pada 17 Desember

2017, 1–12

Wijaya, R. C. 2009. Modul GUI Matlab. Universitas Negeri Jakarta.

Zadeh, L. a. (1965). Fuzzy sets. Information and Control, 8(3), 338–353.

159
LAMPIRAN

160

Anda mungkin juga menyukai