PENERAPAN METODE FUZZY C-MEANS PADA...
Transcript of PENERAPAN METODE FUZZY C-MEANS PADA...
PENERAPAN METODE FUZZY C-MEANS
PADA PENGELOMPOKKAN AGEN PULSA
DI SERVER INDRA CELL
SKRIPSI
oleh:
EKA INDRA CAHYA
105090413111003
JURUSAN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS BRAWIJAYA
MALANG
2017
i
PENERAPAN METODE FUZZY C-MEANS
PADA PENGELOMPOKKAN AGEN PULSA
DI SERVER INDRA CELL
SKRIPSI
Sebagai salah satu syarat untuk memperoleh gelar
Sarjana Sains dalam bidang Matematika
oleh:
EKA INDRA CAHYA
105090413111003
PROGRAM STUDI MATEMATIKA
JURUSAN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS BRAWIJAYA
MALANG
2017
ii
iii
LEMBAR PENGESAHAN
PENERAPAN METODE FUZZY C-MEANS
PADA PENGELOMPOKKAN AGEN PULSA
DI SERVER INDRA CELL
oleh:
EKA INDRA CAHYA
105090413111003
Setelah dipertahankan di depan Majelis Penguji
pada tanggal 09 Agustus 2017
dan dinyatakan memenuhi syarat untuk memperoleh gelar
Sarjana Sains dalam bidang Matematika
Pembimbing
Syaiful Anam, S.Si., M.T., Ph.D.
NIP. 197801152002121003
Mengetahui,
Ketua Jurusan Matematika
Fakultas MIPA Universitas Brawijaya
Ratno Bagus Edy Wibowo, S.Si.,M.Si.,Ph.D.
NIP. 197509082000031003
iv
v
LEMBAR PERNYATAAN
Saya yang bertanda tangan di bawah ini:
Nama : Eka Indra Cahya
NIM : 10509413111003
Jurusan : Matematika
Penulis Skripsi berjudul : Penerapan Metode Fuzzy C-Means
pada Pengelompokkan Agen Pulsa
di Server Indra Cell
Dengan ini menyatakan bahwa:
1. isi skripsi yang saya buat adalah benar-benar karya
sendiri dan tidak menjiplak karya orang lain, selain
nama-nama yang termaktub di isi dan tertulis di daftar
pustaka dalam skripsi ini,
2. apabila di kemudian hari ternyata skripsi yang saya tulis
terbukti hasil jiplakan, maka saya bersedia menanggung
segala resiko yang akan saya terima.
Demikian pernyataan ini dibuat dengan segala kesadaran.
Malang, 09 Agustus 2017
Yang menyatakan,
(Eka Indra Cahya)
NIM. 105090413111003
vi
vii
Penerapan Metode Fuzzy C-Means pada Pengelompokkan Agen
Pulsa di Server Indra Cell
ABSTRAK
Pada skripsi ini dibahas tentang penerapan metode Fuzzy C-
Means pada pengelompokkan agen pulsa di server Indra Cell, dengan
48 agen pulsa dan 6 atribut berdasarkan provider yang digunakan.
Agen pulsa dibutuhkan untuk membantu menyalurkan pulsa dari
provider kepada konsumen. Banyak agen pulsa memilih server pulsa
all operator sebagai penghubung kepada provider. Server pulsa all
operator sering mengalami kendala dalam menentukan prioritas agen
dan mengelola agen. Oleh karena itu server pulsa perlu menentukan
kelompok-kelompok agen. Agen dikelompokkan menjadi 3 cluster
besar. Data diperoleh berdasarkan rekapitulasi transaksi mulai
tanggal 1 sampai dengan 31 Mei 2017. Peng-cluster-an
disimulasikan menggunakan software MATLAB. Dari hasil simulasi
diperoleh cluster I beranggotakan 16 agen dengan transaksi sedang,
cluster II beranggotakan 29 agen dengan transaksi kecil, dan cluster
III beranggotakan 3 agen dengan transaksi besar.
Kata kunci : Fuzzy C-Means, Clustering, Cluster, Provider, Agen
Pulsa, Server Pulsa All Operator, transaksi.
viii
ix
Application of Fuzzy C-Means Method for Grouping of Prepaid
Credit Agents in Indra Cell Server
ABSTRACT
In this final project the application of Fuzzy C-Means method for the
grouping of prepaid credit agents in Indra Cell server is discussed,
with 48 prepaid credit agents and 6 attributes based on the provider
used. A prepaid credit agent is needed to distribute from providers
to costumers. There are many prepaid credit agents prefer to the all
operator prepaid credit server to connect to the provider. The all
operators of prepaid credit server often have problems in
determining agent priorities and managing agents. Therefore, the
prepaid credit server needs to determine agent groups. Agents are
clustered into 3 large clusters. Data are obtained by transactions
recapitulation from 1 to May 31, 2017. Clustering is simulated using
MATLAB software. Based on the simulation, it is obtained cluster I
consists of 16 agents with medium transactions, cluster II consists of
29 agents with small transactions, and cluster III consists of 3 agents
with large transactions.
Keywords : Fuzzy C-Means, Clustering, Cluster, Provider,
Prepaid credit Agents, All Operator of Prepaid
credit Server, transactions.
x
xi
KATA PENGANTAR
Alhamdulillahi Rabbil ‘alamin, segala puji dan syukur
kehadirat Allah SWT yang telah melimpahkan petunjuk, kemudahan
serta segala rahmatNya, sehingga penulis dapat menyelesaikan
skripsi yang berjudul “Penerapan Metode Fuzzy C-Means pada
Pengelompokkan Agen Pulsa di Server Indra Cell” dengan baik
dan lancar. Skripsi ini tidak dapat diselesaikan dengan baik tanpa
bantuan, bimbingan serta motivasi dari berbagai pihak. Oleh karena
itu, penulis ingin menyampaikan terima kasih kepada
1. Bapak Syaiful Anam, S.Si, M.T., Ph.D. selaku dosen
pembimbing, atas segala bimbingan, ilmu, dan semangat yang
tiada hentinya diberikan kepada penulis.
2. Ibu Nur Shofianah, S.Si.,M.Si.,Ph.D. dan Ibu Indah Yanti,
S.Si., M.Si selaku dosen penguji atas segala saran dan
bimbingan yang diberikan untuk perbaikan skripsi ini.
3. Bapak Ratno Bagus Edy Wibowo, S.Si.,M.Si.,Ph.D. selaku
Kajur Matematika, Ibu Dr. Isnani Darti, S.Si., M.Si. selaku
Kaprodi Matematika, dan Prof. Dr. Agus Widodo, M.Kes.
selaku dosen Penasihat Akademik.
4. Seluruh dosen Jurusan Matematika yang telah memberikan
ilmunya kepada penulis, serta segenap staf dan karyawan
TU Jurusan Matematika atas segala bantuannya.
5. Astutik (Ibu), Basarudin (Ayah), Azizah Dwi C. (Adik), dan
seluruh keluarga besar yang tiada hentinya mendukung,
mendoakan, dan memotivasi.
6. Sahabat, teman seperjuangan dan rekan-rekan Matematika atas
semua motivasi dan bantuannya.
7. Kawan-kawan Ijo Item yang terus berjuang mencetak Kader
Insan Cita dan kebersamaannya selama ini.
8. Semua pihak yang tidak dapat penulis sebutkan satu persatu.
Semoga Allah SWT memberikan anugerah, rahmat, dan
barokah-Nya kepada semua pihak yang telah membantu
menyelesaikan skripsi ini. Sebagai seorang manusia yang memiliki
keterbatasan dan tidak luput dari kesalahan, penulis menyadari
bahwa dalam penulisan skripsi ini masih terdapat kekurangan. Oleh
karena itu, penulis mengharapkan kritik dan saran yang bersifat
membangun, melalui email ke [email protected].
xii
Semoga skripsi ini dapat bermanfaat bagi berbagai pihak,
serta menjadi sumber inspirasi untuk penulisan skripsi selanjutnya.
Malang, 09 Agustus 2017
Penulis
xiii
DAFTAR ISI
Halaman
HALAMAN JUDUL ......................................................................... i
LEMBAR PENGESAHAN ............................................................ iii
LEMBAR PERNYATAAN ..............................................................v
ABSTRAK ...................................................................................... vii
ABSTRACT ...................................................................................... ix
KATA PENGANTAR .................................................................... xi
DAFTAR ISI ................................................................................. xiii
DAFTAR LAMPIRAN ..................................................................xv
BAB I PENDAHULUAN 1.1 Latar Belakang .......................................................................1
1.2 Rumusan Masalah ..................................................................2
1.3 Batasan Masalah ....................................................................3
1.4 Tujuan ....................................................................................3
BAB II TINJAUAN PUSTAKA 2.1 Fuzzy ......................................................................................5
2.1.1 Teori Himpunan Fuzzy .................................................5
2.1.2 Pengertian Himpinan Fuzzy ..........................................5
2.2 Teori Matriks ........................................................................6
2.3 Data .......................................................................................7
2.4 Data Mining ...........................................................................7
2.5 Clustering ..............................................................................8
2.6 Fuzzy C-Means ......................................................................9
BAB III PEMBAHASAN 3.1 Data ......................................................................................15
3.2 Penerapan Fuzzy C-Means ....................................................15
3.3 Penentuan Cluster .................................................................19
xiv
BAB IV KESIMPULAN DAN SARAN
4.1 Kesimpulan ......................................................................... 21
4.2 Saran ................................................................................... 21
DAFTAR PUSTAKA .................................................................... 23
xv
DAFTAR LAMPIRAN .................................................................27
Lampiran 1. Tabel Data Transaksi Agen .....................................27
Lampiran 2. Matriks Transaksi Agen (X) ...................................29
Lampiran 3. Matriks Partisi Awal (U) ........................................31
Lampiran 4. Perbaikan Matriks U ..............................................33
Lampiran 5. Grafik Fungsi Objektif ............................................35
Lampiran 6. Matriks U pada Iterasi Terakhir ..............................37
Lampiran 7. Tabel Hasil Clustering ............................................39
Lampiran 8. Pengkodean Program ..............................................41
Lampiran 9. Contoh Perhitungan ................................................45
xvi
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Dalam kehidupan modern, peranan perusahaan penyedia
jaringan seluler (provider) menjadi sangat penting seiring banyaknya
pengguna handphone. Masyarakat tidak bisa lepas dari jasa tersebut,
terutama dalam kebutuhan berkomunikasi, hiburan, edukasi, atau pun
mencari informasi. Di Indonesia terdapat banyak provider baik milik
Badan Usaha Milik Negara (BUMN) maupun Swasta, di antaranya
Telkomsel, Indosat Ooredoo, XL Axiata, Three, Smartfren, dan lain-
lain.Produk yang ditawarkan pun bermacam-macam meliputi: pulsa
regular, pulsa data, pulsa SMS, voucher listrik, dan voucher game.
Produk yang ditawarkan oleh setiap provider mempunyai kekurangan
dan kelebihan masing-masing.
Agen pulsa dibutuhkan untuk membantu menyalurkan pulsa dari
provider kepada konsumen. Syarat utama menjadi agen pulsa yang
mandiri adalah mendaftarkan outlet yang dimiliki kepada provider-
provider serta mampu memenuhi target yang telah ditetapkan. Hal ini
menjadi kendala bagi yang tidak memiliki outlet atau konter dan belum
mampu memenuhi target, sehingga banyak agen pulsa yang memilih
server pulsa all operator sebagai penghubung dengan provider.
Server pulsa setidaknya memiliki lebih dari 20 agen. Tugas
pokoknya adalah menjadi penghubung antara provider dan agen
penjual pulsa, mengelola transaksi, mengatur stok, serta membina agen
agar lebih berkembang. Di dalam pembinaan ini server harus mampu
mengelompokkan masing-masing agen ke dalam kelas sesuai dengan
kondisi dan jumlah transaksi yang dilakukan selama periode tertentu.
Selama ini pengelompokan agen pulsa hanya berdasarkan jenis
provider yang paling banyak transaksinya, tanpa memperhitungkan
jumlah transaksi agen, sehingga seringkali server pulsa salah dalam
mengelompokkan agen.
Pembentukan cluster atau kelompok data merupakan salah satu
teknik yang digunakan dalam mengekstrak pola kecenderungan suatu
data. Analisis cluster atau clustering merupakan proses membagi suatu
data dalam suatu himpunan ke dalam beberapa kelompok berdasarkan
tingkat kemiripan atau kesamaan karakteristiknya.
2
K-means, C-means, PSO (Praticle Swarm Optimization),
hierarchical Clustering, Partitional Clustering, single Linkage,
Complete Linkage, Average Linkage merupakan metode-metode dalam
clustering. Dari metode-metode tersebut, metode C-Means dianggap
paling bagus karena sederhana, mudah diimplementasikan, memiliki
kemampuan untuk mengelompokkan data yang besar, dan Running
time-nya linear (Sukim, 2011). Walau demikian, metode C-Means
memiliki kelemahan yang suatu saat secara alami tidak dapat dilakukan
untuk menempatkan objek tepat pada satu partisi. Objek terletak di
antara dua atau lebih partisi yang lain, sehingga dibutuhkan
pembentukan partisi sedemikian rupa sehingga setiap objek berada
pada partisi yang dibentuk dengan pembobotan fuzzy, yang kita sebut
metode Fuzzy C-Means Clustering (Sukim, 2011).
Berdasarkan latar belakang yang telah dijelaskan maka pada
skripsi ini akan dibahas metode Fuzzy C-Means Clustering untuk
mengelompokkan para agen pulsa di area Kecamatan Kepanjen.
Pengelompokan ini bertujuan untuk membagi agen-agen pulsa ke
dalam beberapa kelas dengan kemiripan karakteristik yang tinggi,
sehingga server lebih mudah mengelola agen berdasarkan kemiripan
karakteristiknya. Dengan demikian server akan dapat mengembangkan
jaringan usahanya, terutama dalam menentukan prioritas agen-agen
yang dinaungi serta menentukan prioritas provider yang harus
disediakan.
1.2 Rumusan Masalah
Berdasarkan latar belakang yang telah diuraikan, maka terdapat
rumusan masalah bagaimana hasil pengelompokan agen pulsa pada
server Indra Cell dengan menggunakan metode Fuzzy C-Means.
3
1.3 Batasan Masalah
Dari data yang telah diperoleh, masih banyak kekurangan dalam
akurasi data, oleh karena itu diperlukan batasan masalah di antaranya:
1. Perbedaan harga pokok dari masing-masing provider diabaikan.
2. Setiap transaksi dihitung satu poin dengan mengabaikan nominal
transaksi.
1.4 Tujuan
Tujuan dari penulisan skripsi ini adalah untuk melakukan
pengelompokan agen pulsa pada server Indra Cell dengan
menggunakan metode Fuzzy C-Means sehingga server lebih mudah
mengelola agen berdasarkan kemiripan karakeristiknya.
4
5
BAB II
DASAR TEORI
Penelitian dengan menggunakan metode Fuzzy C-Means sudah
banyak dilakukan, sehingga penelitian ini mengambil literatur untuk
dijadikan bahan tinjauan pustaka dalam pemaparan dan pendukung
metode Fuzzy C-Means.
2.1 Fuzzy
2.1.1 Teori Himpunan Fuzzy
Fuzzy berarti “kabur” atau “samar-samar”. Himpunan fuzzy
adalah himpunan yang keanggotaannya memiliki nilai
kekaburan/kesamaran antara salah dan benar. Konsep tentang
himpunan fuzzy pertama kali diperkenalkan oleh Prof. Lotfi A. Zadeh,
seorang ilmuwan Amerika Serikat berkebangsaan Iran, dari Universitas
California di Barkeley, melalui tulisannya “Fuzzy Sets” pada tahun
1965 (Kusumadewi dan Hartati, 2006).
2.1.2 Pengertian Himpunan Fuzzy
Sebelum teori tentang himpunan fuzzy muncul, dikenal sebuah
himpunan klasik yang seringkali disebut himpunan tegas (crisp set)
yang keanggotaannya memiliki nilai salah atau benar secara tegas.
Sebaliknya, anggota himpunan fuzzy memiliki nilai kekaburan antara
salah dan benar.
Himpunan tegas hanya mengenal dingin atau panas, sedangkan
himpunan fuzzy dapat mengenal dingin, sejuk, hangat, dan panas.
Perbedaan antara dua jenis himpunan tersebut adalah himpunan tegas
hanya memiliki dua kemungkinan nilai keanggotaan, yaitu 0 atau 1.
Untuk sebarang himpunan tegas 𝐴, jika sebuah elemen 𝑥 adalah bukan
anggota himpunan 𝐴, maka nilai derajat keanggotaan 𝑥 adalah 0. Dan
jika unsur 𝑥 tersebut merupakan anggota himpunan 𝐴, nilai derajat
keanggotaan 𝑥 adalah 1.
Pada himpunan fuzzy, keanggotaan suatu unsur dinyatakan
dengan derajat keanggotaan (membership values), yang nilainya
terletak dalam interval [0,1] dan ditentukan dengan fungsi keanggotaan
6
𝜇𝐴[𝑥] → [0,1]. Untuk sebarang himpunan fuzzy 𝐴, sebuah elemen 𝑥
adalah bukan anggota himpunan 𝐴 jika 𝜇𝐴[𝑥] = 0, elemen 𝑥 adalah
anggota penuh himpunan 𝐴 jika 𝜇𝐴[𝑥] = 1, dan elemen 𝑥 tersebut
adalah anggota himpunan 𝐴 dengan derajat keanggotaan sebesar 𝜇 jika
𝜇𝐴[𝑥] = 𝜇, dengan 0 < 𝜇 < 1. Dengan demikian dapat diperoleh suatu
definisi untuk himpunan fuzzy, yakni:
Definisi 2.1
Himpunan fuzzy dalam suatu himpunan sebarang 𝑋 adalah
himpunan yang anggota-anggotanya dinyatakan dengan derajat
keanggotaan, yang nilainya terletak dalam interval [0,1] dan ditentukan
dengan fungsi keanggotaan 𝜇𝐴[𝑥] → [0,1] (Klir dan Bo, 1995).
2.2 Teori Matriks
Matriks adalah susunan segi empat siku-siku dari bilangan-
bilangan (Anton,1988). Matriks biasanya dinotasikan dengan huruf
besar, tebal, dan miring, misalnya A, B, sedangkan elemen-elemennya
bisa berupa bilangan atau huruf kecil. Banyaknya baris dan kolom
matriks disebut ordo matriks. Matriks yang memiliki n baris dan m
kolom,dikatakan berordo 𝑛 × 𝑚 dan dinotasikan dengan 𝑨𝑛×𝑚 =
[𝑎𝑖𝑗]. Dalam hal ini, 𝑎𝑖𝑗 adalah unsur yang berada pada baris ke-i dan
kolom ke-j dengan 𝑖 = 1, 2,··· , 𝑛 dan 𝑗 = 1, 2, 3,··· , 𝑚.
Contoh 1.1 Matriks A berikut adalah matriks yang berordo n×m
𝑨 = [
𝑎11 𝑎12 … 𝑎1𝑚
𝑎21 𝑎22 … 𝑎2𝑚
⋮𝑎𝑛1
⋮𝑎𝑛2
⋱…
⋮𝑎𝑛𝑚
]
7
2.3 Data
Definisi data secara Etimologis merupakan bentuk jamak dari
datum yang berasal dari Bahasa Latin dan berarti "sesuatu yang
diberikan". Dalam pengertian sehari-hari, data dapat berarti fakta dari
suatu objek yang diamati, yang dapat berupa angka-angka maupun
kata-kata. Sedangkan jika dipandang dari sisi Statistika, maka data
merupakan fakta-fakta yang akan digunakan sebagai bahan penarikan
kesimpulan. Data merupakan kumpulan fakta yang diperoleh dari suatu
pengukuran. Suatu pengambilan keputusan yang baik merupakan hasil
dari penarikan kesimpulan yang didasarkan pada data/fakta yang
akurat. Untuk mendapatkan data yang akurat diperlukan suatu alat ukur
atau yang disebut instrumen yang baik. Alat ukur atau instrumen yang
baik adalah alat ukur/instrumen yang valid dan reliable. (Amin, dkk.,
2009). Syarat dari sebuah data dianggap baik dan bisa digunakan adalah
sebagai berikut
a. Data harus objektif, artinya data menggambarkan seperti
keadaan yang sebenarnya
b. Data harus mewakili. Apabila data merupakan perwakilan harus
mempunyai kesalahan baku (standar error) yang kecil.
Kesalahan baku merupakan simpangan baku suatu perkiraan
yang digunakan untuk mengukur tingkat ketelitian.
c. Data harus tepat waktu. Syarat tepat waktu ini penting sekali
apabila data tersebut akan digunakan untuk mengontrol
pelaksanaan dan perencanaan sehingga persoalan yang terjadi
dapat diketahui untuk segera dikoreksi dan dipecahkan.
d. Data harus mempunyai hubungan baik dengan persoalan yang
akan dipecahkan.
2.4 Data Mining
Pengambilan keputusan dalam ruang lingkup yang cukup
kompleks seperti dalam teknik sipil, sangat tergantung terhadap
kemampuan kognitif seseorang pengambil keputusan tersebut,
sehingga secara langsung dapat berdampak terhadap kualitas
keputusannya itu sendiri. Saat ini, dengan dukungan teknik komputer
dan algoritma, model interprestasi dan dukungan pengambilan
8
keputusan sudah sangat berkembang. Seluruh data harus menjadi bahan
pertimbangan dalam pengambil keputusan dengan berbagai metode
yang telah berlaku secara umum. Data tersebut akan menjadi informasi
yang bermanfaat apabila mampu diinterprestasikan secara tepat. Model
interprestasi data tersebut selanjutnya disebut Data Mining (Cortez,
2010).
Data Mining telah menguat menjadi sebuah bentuk konsentrasi
dalam ilmu kecerdasan buatan. Sejak tahun 1960 Data Mining ini terus
dikembangkan untuk memaksimalkan kemampuan basis data yang
kemampuan dan kapasitasnya juga terus meningkat secara pesat.
Perkembangan Data Mining telah mampu mendorong penggunaan data
mentah dalam basis data menjadi sebuah sumber yang sangat berarti
dalam pembentukan berbagai model perkiraan. Basis data akan tetap
merupakan sekedar data mentah saja apabila tidak dapat dilakukan
interprestasi terhadap data yang telah dikumpulkan tersebut (Liao,
2012).
2.5 Clustering
Clustering adalah proses pengelompokan benda serupa ke dalam
kelompok yang berbeda, atau lebih tepatnya partisi dari sebuah data set
kedalam subset, sehingga data dalam setiap subset memiliki arti yang
bermanfaat. Dimana sebuah cluster terdiri dari kumpulan benda-benda
yang mirip antara satu dengan yang lainnya dan berbeda dengan benda
yang terdapat pada cluster lainnya. Algoritma clustering terdiri dari dua
bagian yaitu secara hierarkis dan secara partitional. Algoritma
hierarkis menemukan cluster secara berurutan dimana cluster
ditetapkan sebelumnya, sedangkan algoritma partitional menentukan
semua kelompok pada waktu tertentu. Clustering juga bisa dikatakan
suatu proses dimana mengelompokan dan membagi pola data menjadi
beberapa jumlah data set sehingga akan membentuk pola yang serupa
dan dikelompokan pada cluster yang sama serta memisahkan diri
dengan membentuk pola yang berbeda ke cluster yang berbeda.
Clustering dapat memainkan peran penting dalam kehidupan
sehari-hari, karena tidak bisa lepas dengan sejumlah data yang
menghasilkan informasi untuk memenuhi kebutuhan hidup. Salah satu
sarana yang palingpenting dalam hubungan dengan data adalah untuk
9
mengklasifikasikan atau mengelompokkan data tersebut ke dalam
seperangkat kategori atau cluster.
Clustering dapat ditemukan dibeberapa aplikasi yang ada di
berbagai bidang. Sebagai contoh pengelompokan data yang digunakan
untuk menganalisa data statistik seperti pengelompokan untuk
pembelajaran mesin, data mining, pengenalan pola, analisis citra dan
bioinformatika (Bataineh dkk, 2011).
Teknik pengelompokan saat ini dapat diklasifikasikan menjadi
tiga kategori yaitu partitional, hirarkis dan berbasis lokalitas algoritma.
Terdapat satu set objek dan kriteria clustering atau pengelompokan,
pengelompokan partitional mememperoleh partisi objek ke dalam
cluster sehingga objek dalam cluster akan lebih mirip dengan benda-
benda yang ada di dalam cluster dari pada objek yang terdapat pada
cluster yang berbeda. Partitional mencoba untuk menguraikan dataset
ke satu set cluster dengan menentukan jumlah cluster awal yang
diinginkan.
2.6 Fuzzy C-Means
Fuzzy C-means Clustering (FCM), atau dikenal juga sebagai
fuzzy ISODATA merupakan bagian dari metode K-means. K-means
merupakan salah satu metode data clustering nonhierarki yang berusaha
mempartisi data yang ada kedalam bentuk satu atau lebih cluster
terbentuk dengan derajat atau tingkat keanggotaan yang berbeda.
Tingkat keberadaan data dalam suatu kelas atau cluster ditentukan oleh
derajat keanggotaannya.
Algoritma Fuzzy C-Means diusulkan pertama kali oleh Dunn
pada tahun 1973 dan kemudian diperbaharui oleh Bezdek pada tahun
1981. Algoritma ini merupakan salah satu teknik soft clustering yang
paling popular dengan menggunakan pendekatan data point dimana
titik pusat cluster akan selalu diperbaharui sesuai dengan derajat
keanggotaan dari data yang ada dan selain itu algoritma Fuzzy C-Means
juga merupakan algoritma yang bekerja dengan menggunakan model
fuzzy sehingga memungkinkan semua data dari semua anggota
kelompok terbentuk dengan derajat keanggotaan yang berbeda antara 0
dan 1 (Bora dan Gupta, 2014).
10
Metode Fuzzy C-Means pada dasarnya memiliki tujuan
meminimalisasikan fungsi serta mendapatkan pusat cluster yang
nantinya akan digunakan untuk mengetahui data yang masuk ke dalam
sebuah cluster.
Karakteristik algoritma Fuzzy C-Means adalah dapat
mengelompokan data yang kabur dan menghasilkan pengelompokan
data dimana bobot keanggotaannya berasal dari data tersebut.
Fuzzy C-Means berhubungan dengan konsep kesamaan fungsi
objek yang berdekatan dan menemukan titik pusat cluster sebagai
prototype. Untuk beberapa objek data tidak memiliki batasan pada salah
satu kelas saja tetapi data tersebut dapat dikelompokkan berdasarkan
derajat keanggotaan yaitu antara 0 dan 1 yang menunjukkan
keanggotaan parsial dari data tersebut. Beberapa contoh dalam
penerapan Fuzzy C-Means adalah masalah pengelompokan data nyata
yang telah dibuktikan dengan menghasilkan karateristik data yang baik
(Phukon dan Baruah, 2013).
Algoritma ini dimulai dengan menentukan jumlah cluster yang
diinginkan serta menginisialisasikan nilai keanggotaan yang berisikan
semua data kemudian akan dikelompokan berdasarkan clusternya.
Pusat-pusat cluster dihitung dari jarak terdekat ke titik-titik yang
memiliki nilai keanggotaan lebih besar. Dengan kata lain, nilai-nilai
keanggotaan tersebut akan bertindak sebagai nilai bobot sementara
pada suatu cluster.
Algoritma Fuzzy C-Means memiliki keuntungan yaitu:
1. Dalam implementasi menyelesaikan masalah algoritma Fuzzy C-
Means dapat memahami karakteristik data yang kabur atau data
yang tidak terdefinisikan.
2. Memiliki kemampuan dalam mengelompokkan data yang besar.
3. Lebih kokoh terhadap data outlier/data dengan karakter yang
berbeda atau value yang berbeda dalam satu atau beberapa
variabel.
4. Penentuan titik cluster yang optimal.
5. Dapat melakukan clustering lebih dari satu variabel secara
sekaligus (Suganya dan Shanthi, 2012).
11
Kelemahan yang dimiliki oleh algoritma Fuzzy C-Means yaitu:
1. Pada algoritma Fuzzy C-Means, pengguna memerlukan lebih
banyak waktu untuk proses perhitungan komputasinya dalam
menentukan cluster pada setiap anggota pada suatu data.
2. Masih terpengaruh terhadap cara pembagian data yang sering
dipergunakan pada data yang sama dan sangat sensitif terhadap
kondisi awal seperti jumlah cluster dan titik pusat cluster pada
pengelompokan data (Bora dan Gupta, 2014).
Algoritma pengelompokan dari Fuzzy C-Means adalah:
1. Input data yang akan di-cluster X, berupa matriks berukuran 𝑛 × 𝑚, dengan n adalah jumlah data yang akan dicluster dan m
adalah jumlah variabel (atribut).
2. Menentukan:
a. Jumlah cluster (c);
b. Bobot (w), w>1;
c. Maksimum Iterasi (maxIter);
d. Error terkecil (ξ);
e. Fungsi obyektif awal (P0);
f. Iterasi (t), dengan iterasi awal t=1;
3. Menghitung jumlah setiap baris ditunjukkan oleh persamaan
(2.1).
𝑄𝑖 = ∑ 𝜇𝑖𝑘
𝑐
𝑘=1
= 1
Persamaan (2.1) menjelaskan bahwa Qi adalah jumlah dari setiap
kolom. Dimana jumlah dari setiap kolom yang merupakan
matriks random bernilai 1. Bentuk matriks partisi awal, U,
ditunjukkan oleh Persamaan (2.2)
U = [
𝜇11(𝒙𝟏) 𝜇12(𝒙𝟏)
𝜇21(𝒙𝟐) 𝜇22(𝒙𝟐)
……
𝜇1𝑐(𝒙𝟏)
𝜇2𝑐(𝒙𝟐) ⋮ ⋮ ⋮ ⋮
𝜇𝑛1(𝒙𝒏) 𝜇𝑛2(𝒙𝒏) ⋯ 𝜇𝑛𝑐(𝒙𝒏)
]
Persamaan (2.2) menjelaskan matriks awal yang terbentuk dari
setiap data yang akan dimasukkan ke dalam perhitungan. Jumlah
cluster yang akan dibentuk digambarkan oleh 𝜇11(𝒙𝟏) sampai
(2.1)
(2.2)
12
dengan 𝜇1𝑐(𝑥1), sedangkan jumlah data yang akan
dikelompokkan digambarkan oleh 𝜇11(𝒙𝟏) sampai dengan
𝜇𝑛1(𝒙𝟏).
4. Menghitung matriks V sebagai pusat cluster, untuk setiap cluster
ditunjukkan oleh persamaan (2.3)
𝑉𝑘𝑗 = ∑ ((𝜇𝑖𝑘)𝑤 × 𝑥𝑖𝑗)𝑛
𝑖=1
∑ (𝜇𝑖𝑘)𝑤𝑛𝑖=1
V merupakan pusat cluster. Setiap pusat cluster didapatkan
dengan menghitung jumlah dari hasil pemangkatan cluster yang
dihitung dikalikan dengan bobot setiap data. Kemudian dibagi
dengan jumlah dari hasil pemangkatan cluster yang dihitung.
5. Memperbaiki derajat keanggotaan setiap data pada masing-
masing cluster (perbaikan pada matriks partisi), ditunjukkan
dengan persamaan (2.4)
𝜇𝑖𝑘 = ( ∑ (𝑋𝑖𝑗 − 𝑉𝑘𝑗)
2 )𝑚
𝑗=1
−1𝑤−1
∑ ( ∑ (𝑋𝑖𝑗 − 𝑉𝑘𝑗)2
)𝑚𝑗=1
−1𝑤−1𝑐
𝑘=1
𝜇𝑖𝑘 merupakan hasil perhitungan terhadap pencarian hasil dari
derajat keanggotaan. 𝜇𝑖𝑘 didapatkan dari hasil pemangkatan
setiap hasil perkalian nilai bobot yang ada dengan pusat cluster
menggunakan sistem perkalian matriks kemudian dipangkatkan
dengan −1
𝑤 −1. Keseluruhan nilai yang didapatkan dibagi dengan
jumlah baris setiap cluster.
(2.3)
(2.4)
13
6. Menghitung fungsi objektif pada iterasi ke-t, Pt ditunjukkan oleh
persamaan (2.5)
𝑃𝑡 = ∑ ∑ ([∑(𝑋𝑖𝑘 − 𝑉𝑘𝑗)2
𝑚
𝑗=1
] (𝜇𝑖𝑘)𝑤)
𝑐
𝑘=1
𝑛
𝑖=1
Secara sederhana, persamaan (2.5) menjelaskan perhitungan dari
fungsi objektif. Dimana 𝑃𝑡 merupakan total dari perhitungan
setiap cluster.
7. Memeriksa kriteria pemberhentian yaitu jika |𝑃𝑡 − 𝑃𝑡−1| < 𝜉
atau 𝑡 > 𝑚𝑎𝑥𝐼𝑡𝑒r maka iterasi dihentikan. Apabila tidak
memenuhi syarat tersebut, maka iterasi dilanjutkan dengan t
bertambah satu nilai (𝑡 = 𝑡 + 1) dan ulangi langkah ke-4
(Kusumadewi dan Purnomo, 2013).
(2.5)
14
15
BAB III
PEMBAHASAN
Pada bab ini dibahas pengelompokkan agen-agen pulsa di
Kepanjen di bawah pengelolaan server Indra Cell dengan
menggunakan metode Fuzzy C-Means. Pembahasan kali ini lebih
ditekankan pada clustering pada 48 agen pulsa yang tercatat dengan 6
atribut. Data diperoleh berdasarkan rekapitulasi transaksi tanggal 1
sampai dengan 31 Mei 2017. Selanjutnya peng-cluster-an akan
disimulasikan menggunakan software MATLAB.
3.1 Data
Data yang digunakan dalam penulisan skripsi ini adalah data
sekunder. Pengumpulan data ini dilakukan di server pulsa all operator
Indra Cell.
Data yang digunakan dalam skripsi ini antara lain:
1. Jumlah agen yang dikelola adalah sebanyak 48 agen pulsa yang
tersebar di seluruh wilayah Kecamatan Kepanjen
2. Provider yang digunakan adalah Indosat, PLN Paskabayar,
Smartfren, Telkomsel, Tri, dan XL.
3. Jumlah transaksi yang telah dilakukan agen selama bulan Mei
2017 berdasarakan 6 provider dapat dilihat pada Lampiran 1.
3.2 Penerapan Fuzzy C-Means
Pada sub bab ini , data yang telah diperoleh dikelompokkan
menjadi 3 cluster besar menggunakan metode Fuzzy C-Means dengan
langkah-langkah sebagai berikut:
1. Dibentuk matriks berdasarkan hasil transaksi
Dari Tabel 3.1 disusun matriks transaksi X yang berukuran
sebagai berikut :
*
+
Matriks X dapat dilihat pada lampiran 2.
16
Dari data yang tersedia diperoleh parameter
n : jumlah data/jumlah agen yang akan dicluster sebanyak 48
agen
m : jumlah atribut/provider yang disediakan sebanyak 6
provider
: matriks transaksi yang dibentuk dari banyaknya agen dan
jumlah provider berukuran
: banyaknya cluster yang akan dibentuk sebanyak 3
kelompok besar.
w : bobot = 2.
t : jumlah iterasi, dimulai dari t =1
ξ : error terkecil = 0.001.
Pt : Fungsi Objektif degan nilai awal P0=0.
2. Berdasarkan persamaan (2.1) dan (2.2) dibentuk matriks
random/acak sebagai partisi awal U berukuran dengan
menggunakan Matlab.
*
+
Matriks partisi awal U dapat dilihat pada Lampiran 3.
Pada masing-masing baris dihitung bahwa jumlah dari elemen-
elemen yang berada dalam satu baris jumlahnya dalah satu.
baris pertama :
baris kedua :
dengan langkah yang sama
baris ke-48 :
17
4. Menghitung pusat cluster.
Setiap pusat cluster didapatkan dengan menghitung jumlah
dari hasil pemangkatan cluster dikalikan dengan bobot setiap data.
Kemudian dibagi dengan jumlah dari hasil pemangkatan cluster
yang dihitung. Matriks V berukuran yaitu sesuai jumlah
cluster yang dibentuk sebanyak 3 dan banyaknya atribut sejumlah
6. Berdasarkan persamaan (2.3) dihitung elemen-elemen di dalam
matriks V sebagai berikut:
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
dengan langkah perhitunganyang sama untuk semua eleme-elemen
V, maka diperoleh matriks V sebagai berikut:
[
]
5. Selanjutnya dilakukan perbaikan pada derajat keanggotaan setiap
data pada masing-masing cluster (perbaikan pada matriks partisi)
berdasarkan persamaan (2.4).
(( )
( ) ( )
)
(( ) ( )
) (( ) ( )
)
(( ) ( ) ( ) )
(( ) ( ) ) (( ) ( ) )
Dengan langkah pehitungan yang sama, untuk semua elemen-
elemen matriks U. Setiap diperbaiki untuk memperoleh
derajat keanggotan yang lebih baik dengan mengacu pusat cluster
V yang diperoleh. Didapatkan matriks U yang telah diperbaiki
adalah sebagai berikut:
18
*
+
Perbaikan matriks partisi U dapat dilihat pada Lampiran 4.
6. Menghitung fungsi Objektif pada iterasi ke-t
∑∑(*∑( )
+ ( ) )
merupakan total dari perhitungan setiap cluster.
Dari data di atas diperoleh dan
maka
| | | |
Perhitungan dilanjutkan ke iterasi berikutnya sampai ditemukan
bahwa | |
Metode Fuzzy C-Means masih terpengaruh terhadap cara
pembagian data sensitif terhadap kondisi awal seperti jumlah
cluster dan titik pusat cluster pada pengelompokan data
menyebabkan pada iterasi-iterasi awal terjadi kenaikan fungsi
objektif (Pt). Namun pada iterasi selanjutnya akan konvergen
menuju nilai tertentu. Nilai fungsi objektif dapat dilihat pada
Lampiran 5.
Pada iterasi terakhir di mana iterasi diberhentikan karena atau | | . Pada perhitungan menggunakan
MATLAB iterasi terhenti pada t=53. Didapatkan dan
nilai yang hampir sama. Namun,
pada MATLAB didapatkan nilai yang lebih akurat yakni | |
dengan waktu eksekusi 0.102409
detik. Iterasi berhenti karena kondisi | | sudah
terpenuhi.
19
sehingga didapatkan matriks V sebagai berikut:
[
]
dan diperoleh matriks partisi U adalah sebagai berikut:
*
+
Matriks U iterasi terakhir dapat dilihat pada Lampiran 6.
3.3 Hasil Pengelompokan
Pada data yang diproses yang menjadi dasar pengelompokan
adalah banyaknya transaksi dan jumlah transaksi ke provider. Dari
matriks V yang menunjukkan pusat cluster, dapat dilihat bahwa
transaksi tertinggi dari masing-masing cluster terletak pada kolom ke-
4 yakni transaksi ke provider Telkomsel dan yang terendah terletak
pada kolom ke-3 yakni provider Smartfren. Jika diurutkan, maka
masing-masing cluster memiliki urutan yang sama yakni Telkomsel,
Indosat, XL, Token PLN, Tri, dan Smartfren.
Sedangkan pada matriks U menunjukkan keanggotaan masing-
masing agen terhadap cluster yang dibentuk. Nilai keanggotaan agen
dilihat dari yang berada pada satu baris. Kemudian diambil nilai
terbesar, sehingga kolom cluster di mana tersebut berada menjadi
cluster-nya. Pembagian cluster dapat dilihat pada Lampiran 7.
Pembagian cluster berdasarkan tabel di atas adalah sebagai berikut:
a. Cluster I : Amanda 1, Anas Ruli, Arema Cell, Arif Dion,
Assyifa Cell, Bima Cell, Bu Junik, Denis Cell, Desy Cell, Didik
P., Fani Cell, Kibal Cell, Novinda, Nurhayati, Putri Cell, dan
Yuyun Cell.
20
b. Cluster II : A Admin, Aca Cell, Anoeng Cell, Arlis Cell, Bang
Ipul, Bella, Bella Cell, Citra Cell, Diezert, Difa Cell, Elsa Cell,
F12 Com, Heny Puput Cell, Hutama Cell, Illa Cell, Lia Cell,
Lisa Cell, Rita Cell, Saiful Arifin, Sukesi, Sulikah, Syifa Cell,
Tomen Cell, Yanto, Yazid, Yenis, dan Yulia Cell.
c. Cluster III : Indra Pulsa, Jons Cell, dan Ning Cell
Cluster I menunjukkan bahwa kelompok agen tersebut jumlah
transaksinya sedang dengan urutan jumlah transaksi dari terbanyak
adalah Telkomsel, Indosat, XL, Token PLN, Tri, dan Smartfren.
Cluster II menunjukkan bahwa kelompok agen tersebut jumlah
transaksinya kecil dengan urutan jumlah transaksi dari terbanyak
adalah Telkomsel, Indosat, XL, Token PLN, Tri, dan Smartfren.
Cluster III menunjukkan bahwa kelompok agen tersebut jumlah
transaksinya besar dengan urutan jumlah transaksi dari terbanyak
adalah Telkomsel, Indosat, XL, Token PLN, Tri, dan Smartfren
Jumlah anggota Cluster I sebanyak 16 agen, jumlah anggota
pada Cluster II sebanyak 23 agen, dan jumlah anggota pada Cluster III
sebanyak 3 agen. Selain itu, diperoleh pula informasi bahwa wilayah
Kecamatan Kepanjen memiliki prioritas menggunakan provider yang
sama yakni Telkomsel, Indosat, XL, Token PLN, Tri, dan Smartfren.
21
BAB IV
KESIMPULAN DAN SARAN
4.1 Kesimpulan
Berdasarkan hasil dan pembahasan, diperoleh hasil akhir
pengelompokan agen pulsa dengan metode Fuzzy C-Means kali ini rata-
rata konvergen pada iterasi ke-55. Agen pulsa terkelompok dalam 3
cluster yaitu cluster I, cluster II dan cluster III. Cluster I adalah
kelompok yang beranggotakan 16 agen dengan jumlah transaksi
sedang, cluster II adalah kelompok yang beranggotakan 29 agen dengan
jumlah transaksi kecil, dan cluster II adalah kelompok yang
beranggotakan 3 agen dengan jumlah transaksi besar. Ketiga cluster
tersebut memiliki kecenderungan penggunaan provider yang masih
seragam/homogen di area Kecamatan Kepanjen. Diurutkan dari
provider yang paling banyak penggunanya adalah Telkomsel, Indosat,
XL, Token PLN, Tri, dan Smartfren.
4.2 Saran
Pada skripsi ini karakteristik yang akan di-cluster masih
memiliki tingkat kesamaan yang tinggi atau homogen, untuk itu
selanjutnya agar dapat dikembangkan dengan menerapkan pada
wilayah yang heterogen. Selain itu, metode Fuzzy C-Means memiliki
waktu komputasi yang relatif lama, sehingga dibutuhan metode yang
lebih efisien seperti Fast Fuzzy C-Means yang membutuhkan waktu
komputasi lebih cepat.
22
23
DAFTAR PUSTAKA
Amin, I., A. Aswin, I. Fajar, Isnaeni, S. Iwan, A. Pudjirahaju, R.
Sunindya .2009. Statistika untuk Praktisi Kesehatan.
Yogyakarta. Graha Ilmu.
Anton, H. 1988. Penerapan Aljabar Linear. Erlangga. Jakarta.
Bataineh, K.M., M. Naji, dan M. Saqer. 2011. A Comparison Study
between Various Fuzzy Clustering Algorithms. Jordan
Journal of Mechanical and Industrial Engineering. Vol.5,
No.4: 335-343
Bora, D.J. dan D.A.K. Gupta. 2014. A Comparative study Between
Fuzzy Clustering Algortihm and Hard Clustering Algorithm.
International Journal of Computer Trends and Technology,
X(2), pp.108-13.
Cortez, P. dan A. Silva. 2013. Using Data Mining To Predice
Secondary School Students Performance.
http://www3.dsi.uminho.pt/pcortez/student.pdf
Tanggal akses 16 Juni 2017.
Haqiqi, B. N. dan R. Kurniawan. 2015. Analisis perbandingan
Metode Fuzzy C-Means dan Subtractive Fuzzy C-Means.
http://ejournal.undip.ac.id/index.php/media_statistika/article/vi
ew/10081
Tanggal akses: 16 Juni 2017
Jaya, T. S. 2011. Sistem Pemilihan Perumahan Dengan Metode
Kombinasi Fuzzy C-Means Clustering dan Simple additive
Weighting.
http://eprints.undip.ac.id/39255/1/Tri_Sandika_Tesis_2.pdf
Tanggal akses: 16 Juni 2017
Klir, G. J. and Y. Bo. 1995. Fuzzy Sets and Fuzzy Logic, Theory and
Application. Prentice Hall
24
Kusumadewi, S. dan S. Hartati. 2006. Fuzzy Multi Atribute
Decision Making. Graha Ilmu. Yogyakarta.
Kusumadewi, S. dan H. Purnomo. 2013. Aplikasi Logika Fuzzy untuk
pendukung keputusan. Graha Ilmu. Jakarta.
Liao, S., P. Chu, dan P. Hsiao. 2012. Data Mining Techniques and
Applications-A Decade Review from 2000 to 2011.
https://pdfs.semanticscholar.org/daca/58a685faee7f0bf7a5e58
68d7b6a8ef2ca33.pdf
Tanggal akses: 17 Juni 2017
Luthfi, E.T. 2007. Fuzzy C-Means untuk Clustering Data.
http://p3m.amikom.ac.id/p3m/fuzzy_c_means_untuk_clusterin
g_data_amikom.pdf
Tanggal akses: 28 Mei 2017
Nurjanah, A. Farmadi, dan F. Indriani. 2014. Implementasi metode
Fuzzy C-Means Pada Sistem Clustering Data Varietas
Padi.Kumpulan jurnaL Ilmu Komputer (KLIK) Volume 01,
No.01 September 2014. ISSN: 2406-7857
Pangestika, M.D. 1988. Implementasi Fuzzy C-Means untuk
Clustering Data dalam Sistem Informasi Promosi.
http://repository.uksw.edu/bitstream/123456789/6361/2/T1_67
2007068_Full%20text.pdf
tanggal akses: 7 Mei 2017
Phukon, K.K. dan H.K. Baruah. 2013. Extension Of The Fuzzy C
Means Clustering Algorithm To Fit With The Composite
Graph Model For Web Document Representation. (IJCRSEE)
International Journal of Cognitive Research in science,
engineering and education Vol. 1, No.2
Sukim. 2011. Studi Tentang Metode C-Means Cluster dan Fuzzy C-
Means Cluster Serta Aplikasinya Pada Kasus
Pengelompokkan Desa/Kelurahan Berdasarkan Status
25
Ketertinggalan. http://digilib.its.ac.id/public/ITS-
Undergraduate-15186-1309201707-Presentation.pdf
Tanggal akses: 16 Juni 2017
Suganya, R. dan R. Shanti 2012. Fuzzy C-Means Algorithm A
Review. Rajalakshmi College of Arts & Science. India.
Welinda, R., M.I. Sarita, A.P. Dewi. 2016. Implementasi Metode
Fuzzy C-Means Pada Sistem Pendukung Keputusan Penentuan
Mustahik di BAZNAS Kendari.
http://ojs.uho.ac.id/index.php/semantik/article/view/737
Tanggal akses: 16 Juni 2017
26
27
LAMPIRAN
Lampiran 1. Data Transaksi Agen
Tabel Rekap Transaksi
NO NAMA AGEN ISAT PLN SF TSEL TRI XL 1 A ADMIN 9 4 0 32 7 23 2 ACA CELL 8 1 1 28 3 18 3 ADE CELL 21 23 36 33 0 15 4 AMANDA 1 105 14 1 52 6 9 5 AMANDA 2 34 4 4 16 0 9 6 ANAS RULI 87 13 6 72 2 3 7 ANOENG CELL 54 11 2 16 0 0 8 AREMA CELL 37 29 0 79 1 74 9 ARF DION 52 6 2 78 7 18
10 ARLIS CELL 8 2 0 44 0 10 11 ASSYIFA CELL 24 18 2 116 4 43 12 BANG IPUL 32 2 5 12 2 3 13 BELLA 3 1 1 40 12 11 14 BELLA CELL 6 0 0 31 6 7 15 BIMA CELL 47 8 1 98 0 59 16 BU JUNIK 28 2 0 101 1 22 17 CITRA CELL 39 9 0 6 9 10 18 DENIS CELL 34 39 0 149 4 91 19 DESY CELL 5 6 0 73 5 6 20 DIDIK P 29 28 1 78 1 34 21 DIEZERT 7 1 0 16 12 14 22 DIFA CELL 2 0 0 3 0 0 23 ELSA CELL 7 0 0 27 0 0 24 F12 COM 6 2 0 17 1 13 25 FANI CELL 24 1 7 61 1 25 26 HENY PUPUT
CELL
3 4 0 36 0 2 27 HUTAMA CELL 7 1 2 16 0 9 28 ILLA CELL 25 0 0 21 1 4 29 INDRA PULSA 84 32 9 256 16 72 30 JONS CELL 85 28 0 203 18 44 31 KIBAL CELL 35 33 16 64 12 41 32 LIA CELL 23 18 12 57 5 7 33 LISA CELL 12 29 0 37 1 13 34 NING CELL 94 17 4 226 21 34 35 NOVINDA 30 1 7 45 3 51 36 NURHAYATI 24 16 1 158 9 19 37 PUTRI CELL 83 19 0 30 1 16 38 RITA CELL 8 2 4 19 1 10 39 SAIFUL ARIFIN 0 1 0 0 1 2 40 SUKESI 9 0 0 17 1 0 41 SULIKAH 44 1 3 18 3 19 42 SYIFA CELL 1 2 1 24 0 8 43 TOMEN CELL 42 15 2 40 2 5 44 YANTO 9 3 0 46 3 7 45 YAZID 6 7 0 30 2 11 46 YENIS 3 0 0 2 0 9 47 YULIA 3 0 0 5 0 5 48 YUYUN CELL 60 24 0 100 23 15
28
29
Lampiran 2. Matriks Transaksi Agen (X)
𝑿 =
[
98211053487543752824323637283934529727624372584853523129430248380944142963360
412314413112962182108293962810021410322833182917116192101215370024
813614620202510100001000070209016120471040031200000
32283352167216797844116124031981016
149737816327176136162125620364573726451583019017182440463025
100
7306020170421260194511200110011618125121391111302320023
2318159930741810433117592210916341400132529472444171334511916102019857119515]
30
31
Lampiran 3. Matriks partisi awal (U)
𝑼 =
[ 0.1818 0.2619 0.3261 0.5000 0.2414 0.6667 0.8333 0.1053 0.4800 0.2308 0.1795 0.3333 0.6154 0.5556 0.1379 0.8000 0.1818 0.5263 0.4857 0.2903 0.4688 0.3030 0.7727 0.5333 0.2500 0.4286 0.6129 0.1026 0.2432 0.3409 0.0667 0.4318 0.5333 0.3000 0.1212 0.4000 0.2821 0.4082 0.3830 0.4878 0.2979 0.3000 0.5429 0.2500 0.1563 0.2963 0.4167 0.3000
0.3636 0.4762 0.4348 0.3056 0.6897 0.1429 0.0833 0.3684 0.4800 0.2821 0.4872 0.6111 0.3462 0.3056 0.5172 0.0500 0.7727 0.0789 0.2857 0.1935 0.2500 0.4242 0.1818 0.4000 0.5000 0.1429 0.2258 0.4615 0.2703 0.2045 0.2667 0.4545 0.3000 0.4250 0.3939 0.3200 0.4615 0.3265 0.2128 0.4146 0.3830 0.3000 0.2000 0.3000 0.5938 0.5556 0.2222 0.3750
0.45450.26190.23910.19440.06900.19050.08330.52630.04000.48720.33330.05560.03850.13890.34480.15000.04550.39470.22860.51610.28130.27270.04550.06670.25000.42860.16130.43590.48650.45450.66670.11360.16670.27500.48480.28000.25640.26530.40430.09760.31910.40000.25710.45000.25000.14810.36110.3250]
32
33
Lampiran 4. Perbaikan Matriks U pada Iterasi Ke-1
𝑼 =
[ 0.3579 0.4925 0.14960.3714 0.4815 0.14710.3633 0.4168 0.22000.3437 0.3398 0.31650.3764 0.4848 0.13880.3401 0.3129 0.34700.3884 0.4333 0.17830.2459 0.2571 0.49700.2680 0.2204 0.51150.4345 0.4301 0.13540.2340 0.2145 0.55150.3850 0.4637 0.15130.4029 0.4322 0.16490.4027 0.4509 0.14630.2316 0.2260 0.54240.2316 0.1936 0.57480.3711 0.4575 0.17140.2815 0.2751 0.44350.3771 0.2839 0.33900.1379 0.1254 0.73670.3726 0.4571 0.17030.3818 0.4251 0.19310.4101 0.4375 0.15240.3768 0.4572 0.16600.3530 0.3290 0.31800.4212 0.4221 0.15670.3819 0.4537 0.16440.3949 0.4774 0.12770.3104 0.3002 0.38940.3114 0.2922 0.39640.2321 0.2472 0.52070.4956 0.3290 0.17530.3913 0.4305 0.17810.3103 0.2961 0.39360.2935 0.3910 0.31550.2906 0.2642 0.44520.3561 0.3561 0.26420.3815 0.4620 0.15650.3781 0.4231 0.19890.3959 0.4423 0.16180.3591 0.4862 0.15480.3900 0.4418 0.16820.4480 0.4501 0.10190.4559 0.4128 0.13130.3925 0.4628 0.14470.3743 0.4325 0.19330.3793 0.4321 0.18860.2779 0.2437 0.4784]
34
35
Gra
fik
Fu
ng
si O
bje
kti
f
t =
ite
rasi
Lampiran 5. Grafik Fungsi Objektif
Pt = Fungsi Objektif pada iterasi ke-t
010
2030
4050
600
0.51
1.52
2.53
3.54
x 10
9
36
37
Lampiran 6. Matriks Partisi U pada Iterasi Terakhir
𝑼 =
[ 0.0756 0.9174 0.00690.0319 0.9648 0.00330.2814 0.6893 0.02940.5668 0.3304 0.10290.0842 0.9064 0.00930.6645 0.2513 0.08430.2401 0.7302 0.02970.7461 0.7461 0.06800.9054 0.0783 0.01620.1220 0.8676 0.01050.7724 0.1332 0.09440.0790 0.9111 0.00990.1100 0.8791 0.01090.0322 0.9643 0.00350.8299 0.1102 0.05990.8367 0.1204 0.04290.1377 0.8446 0.01770.4467 0.1652 0.38820.5143 0.4464 0.03930.9110 0.0747 0.01420.0394 0.9556 0.00500.0729 0.9152 0.01190.0310 0.9652 0.00380.0241 0.9729 0.00300.6170 0.3613 0.02170.0673 0.9252 0.00750.0217 0.9755 0.00280.0333 0.9630 0.00370.0718 0.0392 0.88900.0715 0.0336 0.89490.7928 0.1787 0.02850.4674 0.5082 0.02440.1921 0.7911 0.01680.0133 0.0066 0.98010.5233 0.4441 0.03270.4508 0.1581 0.39100.4921 0.4460 0.06190.0139 0.9844 0.00170.0823 0.9039 0.01380.0281 0.9682 0.00380.1861 0.7948 0.01900.0328 0.9632 0.00410.3114 0.6673 0.02130.1420 0.8460 0.01200.0268 0.9704 0.00280.0697 0.9194 0.01090.0608 0.9298 0.00940.7970 0.1288 0.0742]
38
39
Lampiran 7. Tabel Hasil Clustering NO NAMA AGEN I II III CLUSTER
1 A ADMIN
*
2 2 ACA CELL
*
2
3 ADE CELL
*
2 4 AMANDA 1 *
1
5 AMANDA 2
*
2 6 ANAS RULI *
1
7 ANOENG CELL
*
2 8 AREMA CELL *
1
9 ARIF DION *
1 10 ARLIS CELL
*
2
11 ASSYIFA CELL *
1 12 BANG IPUL
*
2
13 BELLA
*
2 14 BELLA CELL
*
2
15 BIMA CELL *
1 16 BU JUNIK *
1
17 CITRA CELL
*
2 18 DENIS CELL *
1
19 DESY CELL *
1 20 DIDIK PURWANTORO *
1
21 DIEZERT
*
2 22 DIFA CELL
*
2
23 ELSA CELL
*
2 24 F12 COM
*
2
25 FANI CELL *
1 26 HENY PUPUT CELL
*
2
27 HUTAMA CELL
*
2 28 ILLA CELL
*
2
29 INDRA PULSA
* 3 30 JONS CELL
* 3
31 KIBAL CELL *
1 32 LIA CELL
*
2
33 LISA CELL
*
2 34 NING CELL
* 3
35 NOVINDA *
1 36 NURHAYATI *
1
37 PUTRI CELL *
1 38 RITA CELL
*
2
39 SAIFUL ARIFIN
*
2 40 SUKESI
*
2
41 SULIKAH
*
2 42 SYIFA CELL
*
2
43 TOMEN CELL
*
2 44 YANTO
*
2
45 YAZID
*
2 46 YENIS
*
2
47 YULIA
*
2 48 YUYUN CELL *
1
40
41
Lampiran 8. Pengkodean Program
clear all; clc; %n=input('masukkan banyaknya agen yang akan
dicluster =') n=48; %m=input('banyaknya atribut = ') m=6; %w=input('bobot =') w=2; %c=input('jumlah cluster yang diinginkan =') c=3;
X=[9 4 0 32 7 23
%1 8 1 1 28 3 18 21 23 36 33 0 15 105 14 1 52 6 9 34 4 4 16 0 9 87 13 6 72 2 3 54 11 2 16 0 0 37 29 0 79 1 74 52 6 2 78 7 18 8 2 0 44 0 10 24 18 2 116 4 43 32 2 5 12 2 3 3 1 1 40 12 11 6 0 0 31 6 7 47 8 1 98 0 59 28 2 0 101 1 22 39 9 0 6 9 10 34 39 0 149 4 91 5 6 0 73 5 6 29 28 1 78 1 34 7 1 0 16 12 14 2 0 0 3 0 0 7 0 0 27 0 0 6 2 0 17 1 13 24 1 7 61 1 25 3 4 0 36 0 2 7 1 2 16 0 9
42
25 0 0 21 1 4 84 32 9 258 16 72 85 28 0 203 18 4 35 33 16 64 12 41 23 18 12 57 5 7 12 29 0 37 1 13 94 17 4 226 21 34 30 1 7 45 3 51 24 16 1 158 9 19 83 19 0 30 1 16 8 2 4 19 1 10 0 1 0 0 1 2 9 0 0 17 1 0 44 1 3 18 3 19 1 2 1 24 0 8 42 13 2 40 2 5 9 3 0 46 3 7 6 7 0 30 2 11 3 0 0 2 0 9 3 0 0 5 0 5 60 24 0 100 23 13]
% membangkitkan matriks random dengan Q=1 U = randint(n,c,[1,20]); J = zeros(n,c); for i=1:n for k=1:c J(i,1)=J(i,1)+U(i,k); end end %menghitung setiap kolom atribut for i=1:n for k=1:c U(i,k)=U(i,k)/J(i,1); end end U
P=[0]; P_a=0; P_b=1; err=10^(-3)
43
t=1; maxitter=100;
while ( t<=maxitter ) & ( abs(P_b - P_a) > err) % menentukan pusat cluster Vij Uu=U.^w; V_s=Uu'*X; J = zeros(n,c); for k=1:c for i=1:n J(1,k)=J(1,k)+Uu(i,k); end end for k=1:c for j=1:m V(k,j)=V_s(k,j)/J(1,k); end end V;
U_s = zeros(n,c); Jum = zeros(n,c); for i=1:n for k=1:c atas=0; for j =1:m atas = atas + ( X(i,j) - V(k,j)
)^2; end U_s(i,k) = atas^(-1/(w-1)); Jum(i,1)=Jum(i,1)+U_s(i,k); end end U_s;
for i=1:n for k=1:c U(i,k)=U_s(i,k)/Jum(i,1); end end U;
44
t=t+1; P_a=P_b; P_b=0; jml=0; jmlh=0; for i=1:n for k=1:c for j=1:m jml=jml+( X(i,k) - V(k,j) )^2; end jmlh=jmlh+jml; end P_b=P_b + jmlh; end P=[P P_b];
end U V plot(P,'-k','LineWidth',5) CL=zeros(n,c); for i=1:n o=0; for k=1:c if U(i,k)>o o=U(i,k); p=k; end end CL(i,p)=1; end CL
agen=zeros(1,n); for i=1:n for k=1:c if CL(i,k)==1 agen(1,i)=k; end end end agen
45
Lampiran 9. Contoh Perhitungan
Langkah-langkah kerja algoritma Fuzzy C-Means dalam proses
pengelompokan
1. Memasukkan data yang akan dicluster
AGEN PROVIDER 1 PROVIDER 2 PROVIDER 3
A 9 4 0
B 8 1 1
C 15 23 12
D 5 4 19
E 3 4 9
2. Menentukan nilai parameter
a. Jumlah cluster (c) = 2
b. Bobot (w) = 2
c. Maksimum Iterasi (maxIter) = 5
d. Error terkecil (ξ) = 0.01
e. Fungsi obyektif awal (P0) = 0
f. Iterasi (t), pada iterasi awal t =1;
3. Membentuk nilai random sebagai partisi awal dan menghitung
nilai setiap baris. Jumlah dari entri-entri yang berada dalam satu
baris bernilai satu.
Tabel nilai partisi awal
AGEN C1 C2
A 0.4000 0.6000
B 0.1429 0.8571
C 0.5238 0.4762
D 0.9412 0.0588
E 0.7308 0.2692
46
4. Proses perhitungan
Iterasi ke-1
a. Menghitung pusat cluster
𝑉𝑘𝑗 = ∑ ((𝜇𝑖𝑘)2 × 𝑥𝑖𝑗)
5𝑖=1
∑ (𝜇𝑖𝑘)25𝑖=1
Dengan menggunakan rumus di atas diperoleh data pusat
cluster sebagai berikut :
Tabel pusat cluster
Cluster Provider 1 Provider 2 Provider 3
C1 6.2680 6.7482 13.3091 C2 9.1267 5.5059 2.9869
b. Perbaikan derajat keanggotaan
𝜇𝑖𝑘 = ( ∑ (𝑋𝑖𝑗 − 𝑉𝑘𝑗)
2 )3
𝑗=1
−1
∑ ( ∑ (𝑋𝑖𝑗 − 𝑉𝑘𝑗)2 )3
𝑗=1
−1𝑐𝑘=1
Diperoleh perbaikan derajat keanggotaan
Tabel nilai partisi awal
AGEN C1 C2
A 0.0551 0.9449
B 0.1198 0.8802
C 0.5522 0.4478
D 0.8690 0.1310
E 0.6736 0.3264
47
c. Menghitung fungsi objektif
𝑃𝑡 = ∑ ∑ ([∑(𝑋𝑖𝑘 − 𝑉𝑘𝑗)2
𝑚
𝑗=1
] (𝜇𝑖𝑘)𝑤)
𝑐
𝑘=1
𝑛
𝑖=1
jika |𝑃𝑡 − 𝑃𝑡−1| < 𝜉 atau 𝑡 > 𝑚𝑎𝑥𝑖𝑡𝑒𝑟 maka iterasi
dihentikan. Apabila tidak memenuhi syarat tersebut, maka
iterasi dilanjutkan dengan t bertambah satu nilai (𝑡 = 𝑡 + 1).
Iterasi ke-2
a. Menghitung pusat cluster
Tabel pusat cluster
Cluster Provider 1 Provider 2 Provider 3
C1 6.4344 7.7548 14.4365
C2 8.8599 4.7461 2.2421
b. Perbaikan derajat keanggotaan
Tabel derajat keanggotaan
AGEN C1 C2
A 0.0239 0.9761
B 0.0666 0.9334
C 0.5992 0.4008
D 0.8890 0.1110
E 0.5923 0.4077
c. Menghitung fungsi objektif
|𝑃2 − 𝑃1| = 14,481
48
Iterasi ke-3
a. Menghitung pusat cluster
Tabel pusat cluster
Cluster Provider 1 Provider 2 Provider 3
C1 6.9297 8.5236 14.9392
C2 8.5589 4.2024 2.0933
b. Perbaikan derajat keanggotaan
Tabel derajat keanggotaan
AGEN C1 C2
A 0.0183 0.9817
B 0.0446 0.9554
C 0.6350 0.3650
D 0.8801 0.1199
E 0.5249 0.4751
c. Menghitung fungsi objektif
|𝑃3 − 𝑃2| = 696.0047
49
Iterasi ke-4
a. Menghitung pusat cluster
Tabel pusat cluster
Cluster Provider 1 Provider 2 Provider 3
C1 7.3967 9.2594 15.1390
C2 8.3220 3.9078 2.1405
b. Perbaikan derajat keanggotaan
Tabel derajat keanggotaan
AGEN C1 C2
A 0.0191 0.9809
B 0.0354 0.9646
C 0.6638 0.3362
D 0.8594 0.1406
E 0.4710 0.5290
c. Menghitung fungsi objektif
|𝑃4 − 𝑃3| = 180.4318
50
Hingga iterasi ke-5 dimana maksimal iterasi ditentukan maxitter = 5.
a. Menghitung pusat cluster
Tabel pusat cluster
Cluster Provider 1 Provider 2 Provider 3
C1 7.8288 9.9659 15.1986
C2 8.1279 3.7209 2.2477
b. Perbaikan derajat keanggotaan
Tabel derajat keanggotaan
AGEN C1 C2
A 0.0215 0.9785
B 0.0308 0.9692
C 0.6894 0.3106
D 0.8335 0.1665
E 0.4251 0.5749
c. Menghitung fungsi objektif
|𝑃5 − 𝑃4| = 15.3124
5. Penentuan Cluster
Dari data di atas dapat kita lihat derajat keanggotan masing-
masing agen terhadap cluster, maka dapat ditentukan
pembagian cluster-nya
Tabel penentuan cluster
Agen C1 C2
A *
B *
C *
D *
E *
Jadi, Cluster 1 diisi oleh Agen C dan D. Sedangkan Cluster 2
diisi oleh agen A, B,dan E.