Download PENGEMBANGAN ALGORITMA CAT SWARM OPTIMIZATION (CSO

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
 PENGEMBANGAN ALGORITMA CAT SWARM OPTIMIZATION (CSO) UNTUK
KLASIFIKASI
Nalendra Dhanasaputra, Budi Santosa
Jurusan Teknik Industri
Institut Teknologi Sepuluh Nopember (ITS) Surabaya
Kampus ITS Sukolilo Surabaya 60111
Email:[email protected]; [email protected]
Abstrak
Baru-baru ini ditemukan satu algoritma baru dalam teknik optimasi yang meniru perilaku hewan.
Algoritma baru ini diusulkan oleh Shu Chuan Chu (2006) dan diberi nama Cat Swarm Optimization (CSO).
Algoritma ini memiliki sejumlah kelebihan dalam menyelesaikan permasalahan-permasalahan optimasi
dibandingkan dengan teknik-teknik yang terdahulu seperti Particle Swarm Optimization (PSO) dan PSO with
Weighting Factor. Dalam penelitian ini, CSO diterapkan dalam data mining, khususnya untuk kasus klasifikasi.
Teknik klasifikasi yang digunakan dalam penelitian ini adalah dengan pendekatan Multiple
Regression Linear Model (MRLM). Dalam klasifikasi menggunakan pendekatan MRLM, CSO diterapkan untuk
mengestimasi koefisien dari MRLM. Algoritma CSO dapat menghasilkan klasifikasi yang lebih baik dalam hal
jumlah iterasi yang dibutuhkan untuk mencapai titik optimal dan memiliki tingkat akurasi yang lebih baik
dibanding metode yang ada sebelumnya.
Kata kunci: Cat Swarm Optimization, Klasifikasi, Multiple Regression Linear Model.
Abstract
Recently found a new algorithm optimization technique that mimics animal behavior. This new
algorithm is proposed by Shu Chuan Chu (2006) and given the name Cat Swarm Optimization (CSO). This
algorithm has a number of advantages in solving the problems of optimization techniques with tools such as
Particle Swarm Optimization (PSO) and PSO with Weighting Factor.
In this research, CSO is applied in data mining, particularly in the case of classification.
Classification technique used in this research is Multiple Linear Regression Model (MRLM) approach. In the
classification MRLM approach, CSO is applied to estimate coefficients of MRLM. With the CSO developed
algorithm, which can produce better classification in terms of the number of iterations required to reach the
optimal point and have a better level of accuracy than the previous method.
Keywords: Cat Swarm Optimization, Classification, Multiple Regression Linear Model.
1. Pendahuluan
Baru-baru
ini
ditemukan
satu
algoritma baru dalam teknik optimasi yang
meniru perilaku hewan. Algoritma baru ini
diusulkan oleh Shu Chuan Chu (2006) dan
diberi nama Cat Swarm Optimization (CSO).
Algoritma ini memiliki sejumlah kelebihan
dalam
menyelesaikan
permasalahanpermasalahan optimasi dibandingkan dengan
teknik-teknik yang terdahulu seperti Particle
Swarm Optimization (PSO) dan PSO with
Weighting
Factor. Selama ini, algoritma
tersebut masih digunakan untuk unconstrained
minimization problem dan belum pernah
diaplikasikan di bidang lain. Akan menjadi
sesuatu yang baru dan menarik jika penerapan
CSO bisa diterapkan dalam data mining,
khususnya untuk kasus klasifikasi.
Konsep data mining semakin populer
sebagai alat manajemen informasi dimana
diharapkan
dapat
mengungkap
struktur
pengetahuan yang bisa menuntun pengambilan
keputusan. Jika jumlah atribut meningkat dan
juga jumlah data bertambah banyak maka tugas
pengambilan keputusan ini tidak bisa dilakukan
secara manual atau sangat sulit dilakukan secara
manual. Sehingga, alasan ongkos dan akurasi
menjadi
penting
sehingga
kita
perlu
mengembangkan metoda supervised learning
ini dan menjalankannya lewat program
komputer
(Santosa,2006).
Dengan
dikembangkannya algoritma CSO, diharapkan
dapat menghasilkan klasifikasi yang lebih cepat
dan memiliki tingkat akurasi yang lebih baik
dibanding metode yang ada sebelumnya.
Klasifikasi bertujuan menempatkan
data baru ke dalam kelas yang telah tersedia
sebelumnya. Misalnya, sebuah bank ingin
memprediksi apakah nasabah yang ingin
meminjam uang patut untuk diberikan pinjaman.
Pihak bank bisa memutuskan akan memberi
pinjaman dengan melihat data-data yang
dimiliki oleh nasabah, seperti data gaji,
pengeluaran, lokasi tempat tinggal, jenis
pekerjaan, umur nasabah, dan sebagainya.
Dalam data mining, data-data tersebut
dinamakan variabel.
Permasalahan yang dihadapi dalam
penelitian
ini
adalah
bagaimana
mengembangkan
algoritma
Cat
Swarm
Optimization sehingga dapat digunakan dalam
kasus
klasifikasi.
Kemudian,
untuk
mengevaluasi
hasilnya
akan
digunakan
pendekatan lain sebagai pembanding.
Dalam penelitian ini performansi
algoritma CSO akan dilihat apakah dapat
memberikan hasil yang baik untuk kasus
klasifikasi seperti halnya performansi algoritma
CSO yang diterapkan pada kasus unconstrained
minimization problem.
Penelitian ini menggunakan data nyata
yang telah umum digunakan dalam penelitianpenelitian seperti data Iris, data Breast Cancer,
dan lain-lain.
Laporan Tugas Akhir ini terdiri atas
enam bab dengan sistematika penulisan sebagai
berikut. Pendahuluan berisi tentang hal-hal yang
mendasari dilakukannya penelitian serta
pengidentifikasian masalah penelitian. Tinjauan
pustaka menguraikan teori, temuan, dan bahan
penelitian lain yang diperoleh dari acuan.
Tinjauan pustaka akan menjadi landasan untuk
melakukan kegiatan penelitian tugas akhir. Bab
pengembangan model menguraikan metodologi
penelitian yang dilakukan serta tahapan
pengembangan model Cat Swarm Optimization
untuk klasifikasi dua kelas. Pada bab pengujian
model akan ditampilkan uji coba contoh
numerik, data pengujian, serta bagaimana
pengujian model dilakukan sesuai dengan
kerangka penelitian yang telah dibuat. Bab
analisis dan pembahasan akan dilakukan analisis
terhadap hasil uji coba model. Analisis berisi
uraian mengenai bagaimana model yang
dikembangkan dapat memberikan perbaikan
ataupun kelebihan terhadap model klasifikasi
yang telah ada sebelumnya. Bab terakhir adalah
kesimpulan dan sara yang berisi tentang
kesimpulan hasil penelitian dan saran-saran
yang berkaitan dengan penelitian selanjutnya.
2. Tinjauan pustaka
Tinjauan pustaka menguraikan teori,
temuan, dan bahan penelitian lain yang
diperoleh dari acuan yang akan dijadikan
landasan untuk melakukan kegiatan penelitian
tugas akhir.
2.1 Heuristic
Mengutip
dari
situs
whatis.techtarget.com, heuristic sebagai kata
sifat adalah proses menggali pengetahuan atau
hasil yang diinginkan dengan terkaan cerdas,
bukan dengan mengikuti formula yang tetap.
Heuristic memiliki 2 kegunaan:
1. Menjelaskan pendekatan untuk belajar
dengan mencoba tanpa perlu memiliki
hipotesis atau cara pembuktian bahwa hasil
yang diperoleh akan menerima ataupun
menolak hipotesis. Dengan kata lain,
pembelajaran secara trial and error.
2. Menyinggung
pada
penggunaan
pengetahuan umum yang diperoleh melalui
pengalaman. Misalnya pemain catur
menggunakan pendekatan heuristic .
Sebagai kata benda, heuristic adalah aturan
spesifik atau argumen yang diturunkan dari
pengalaman.
2.2 Data Mining
Pengenalan pola adalah suatu disiplin
ilmu yang mempelajari bagaimana kita
mengelompokkan obyek ke berbagai kelas dan
bagaimana dari data bisa kita temukan
kecenderungannya. Data mining adalah
kegiatan
yang
meliputi
pengumpulan,
pemakaian data historis untuk menemukan
keteraturan, pola atau hubungan dalam set data
berukuran besar (Santosa, 2006).
Beberapa alasan pentingnya menggunakan data
mining, diantaranya adalah:
• Jumlah data yang sangat besar, dimana dari
data tersebut dapat diperoleh informasi yang
dapat dipergunakan untuk menemukan pola
tersembunyi. Dan pattern ini dapat
digunakan dalam menentukan strategi
bisnis.
• Persaingan yang semakin meningkat.
Perusahaan menghadapi global competition,
dimana kunci suksesnya adalah dengan
mempertahankan existing customer dan
meningkatkan value-nya.
• Teknologi yang semakin berkembang,
sehingga algoritma data mining digunakan
dalam suatu program komputer sehingga
perhitungannya menjadi lebih cepat dan
akurat, serta dapat digunakan pada data
yang kompleks sekalipun.
Menurut Olson (2008), classification
adalah metode yang dibuat untuk mempelajari
fungsi-fungsi yang memetakan tiap item data ke
baru termasuk dalam suku Jawa, Batak, Bali,
atau Ambon. Untuk melakukan hal tersebut,
diperlukan pembelajaran terhadap data-data
yang telah terkumpul sebelumnya. Misalnya
sebelumnya kita memiliki 200 buah data cirriciri mahasiswa beserta labelnya. Hasil
pembelajaran ini adalah sebuah fungsi pemisah
yang akan mampu memasukkan data baru ke
dalam kelas yang seharusnya.
dalam kelas yang telah ditentukan. Dengan
adanya set kelas, jumlah atribut, dan set
pembelajaran (learning set), metode klasifikasi
dapat secara otomatis memprediksi kelas dari
data baru yang belum terklasifikasi.
Hal mendasar yang membedakan
antara teknik klasifikasi dengan teknik
klastering.
Teknik
klastering
bertujuan
mengelompokkan data yang belum memiliki
label menjadi sejumlah K kelompok. Teknik
klastering
akan
mengelompokkan
data
berdasarkan kemiripan. Semakin mirip satu data
dengan yang lain, maka akan dijadikan satu
klaster atau kelompok. Sedangkan teknik
klasifikasi bertujuan menempatkan data baru ke
dalam kelas yang telah tersedia sebelumnya.
Gambar 2. 1 Klasifikasi Dua Set Obyek Dari Dua Kelas
(sumber: Santosa, 2006)
Klasifikasi dua kelas dapat dilihat
seperti pada gambar 2.1. Misalkan kita memiliki
set data training (x, y) yang terdiri dua kelas,
yaitu +1 dan -1. Tujuan dari klasifikasi dua
kelas yaitu menemukan suatu fungsi keputusan
f(x) yang secara akurat memprediksi kelas dari
data test (x, y) yang berasal dari fungsi distribusi
yang sama dengan data untuk training.
Contoh kasus klasifikasi multi kelas
adalah pada klasifikasi suku daerah. Misalnya
kita ingin melakukan klasifikasi terhadap
mahasiswa baru menurut suku daerahnya.
Diumpamakan ada empat suku daerah, yaitu
Jawa, Batak, Bali, dan Ambon. Kita akan
mengklasifikasi mahasiswa baru berdasarkan
ciri-ciri fisik dan non fisik yang dimiliki
masing-masing mahasiswa, seperti bentuk
rambut, warna rambut, bentuk rahang, bentuk
hidung, bentuk bibir, warna kulit, dan dialek
bahasa.
Empat suku daerah yang dimisalkan di
atas dinamakan label atau kelas data. Ciri-ciri
fisik dan non-fisik yang dimiliki disebut atribut
data. Dengan menggunakan Teknik klastering,
kita mampu memprediksi apakah mahasiswa
2.3 Particle Swarm Optimization
Particle Swarm optimization (PSO)
adalah algoritma swarm intelligence yang
berdasarkan populasi. PSO ditemukan oleh
Kennedy dan Eberhart pada 1995. Ide dasar
PSO adalah meniru perilaku individu dari
kawanan ikan atau sekelompok burung camar
yang terbang bersama-sama dalam mencari
makanan atau sarang. PSO memiliki
kemampuan dalam mencapai titik global
maupun optimal. Karena kemudahan dalam
penerapan kode dan performa yang konsisten,
PSO terbukti merupakan algoritma yang baik
dan efektif untuk permasalahan optimasi.
Algoritma PSO diawali dengan
inisialisasi sekelompok parikel. Posisi dari tiap
individu, atau disebut partikel, direpresentasikan
dengan vektor berukuran m-dimensi. Kemudian
posisi tiap partikel dievalusi dengan fitness
function yang telah ditentukan sebelumnya.
Kecepatan
tiap
partikel
berubah-ubah
tergantung posisinya. Dalam PSO terdapat
pertukaran informasi antar partikel. Pertukaran
informasi ini tampak dalam persamaan
kecepatan berikut.
vi (t + 1) = vi (t ) + c1rand2 ( pi − si (t )) + c2rand2 ( pg − si (t ))
(pers. 1)
Tiap partikel akan merubah kecepatan
terbangnya dengan mempertimbangkan posisi
terbaik yang pernah dilaluinya. Ini ditunjukkan
dengan pi, yang berarti best position partikel i.
Selain itu, kecepatan juga dipengaruhi oleh
posisi terbaik diantara seluruh partikel. Ini
dinotasikan dengan pg, yang berarti global best
position. Vi adalah kecepatan original yang
dimiliki masing-masing partikel. Sedangkan si
adalah posisi partikel pada saat sekarang. c1 dan
c2 adalah koefisien percepatan. Umumnya
masing-masing bernilai 2. Rand1 dan rand2
adalah bilangan random.
Langkah-langkah algoritma PSO
original adalah sebagai berikut:
langkah 1. Inisialisasi:
tentukan
jumlah
populasi
3 langkah 2.
langkah 3.
langkah 4.
langkah 5.
langkah 6.
langkah 7.
langkah 8.
langkah 9.
langkah 10.
langkah 11.
langkah 12.
Bangkitkan populasi secara acak
Bangkitkan kecepatan awal.
Evaluasi fitness function
Simpan partikel yang memiliki
nilai fitness function paling optimal
Selama
terminating
condition
belum terpenuhi, lakukan langkah
6-10.
Hitung kecepatan tiap partikel
Hitung posisi baru tiap partikel
Evaluasi fitness function yang baru
Update solusi optimal
Update partikel terbaik
Partikel terbaik adalah yang
menjadi solusi.
2.3 Cat Swarm Optimization
Menurut Shu (2006), computational
intelligence adalah riset penelitian yang marak
dibicarakan belakangan ini di bidang optimasi
dan telah ditemukan beberapa algoritma. Yang
termasuk
computational
intelligence
diantaranya adalah Genetic Algorithm (GA), Ant
Colony Optimization (ACO), Particle Swarm
Optimization (PSO), dan Simulated Annealing
(SA). GA dan SA merupakan kelompok area
evolutionary algorithm, sedangkan ACO dan
PSO berada di bawah naungan swarm
intelligence. Algoritma yang diusulkan oleh Shu
(2006), yaitu Cat Swarm Optimization, adalah
juga merupakan algoritma yang berada di bawah
bagian swarm
intelligence. Evolutionary
algorithm (EA) adalah algoritma optimasi
metaheuristic yang berdasar pada populasi
secara umum. EA menggunakan mekanismemekanisme yang diinspirasi oleh evolusi
biologis: reproduksi, mutasi, rekombinasi, dan
seleksi (wikipedia, 2009). Sedangkan swarm
intelligence adalah teknik kecerdasan buatan
yang berdasarkan pada studi dari perilaku
sekelompok sistem yang tersebar dan
terorganisir (Wilamowsk, Bodgan M., 2008).
Menurut Liu dan Kevin M. Passino (2000),
swarm intelligence adalah kecerdasan kolektif
yang muncul dari sekelompok agent atau
individu mahluk hidup. Contoh dari swarm
intelligence yang ada di alam adalah koloni
semut, kawanan burung, penggembalaan, dan
kawanan ikan. Dari contoh-contoh tersebut,
setiap kawanan tidak memiliki kontrol terpusat
yang mengendalikan mereka. Namun, interaksi
lokal antar agent di dalamnya seringkali
mengarah pada kemunculan perilaku global.
Cat Swarm
Optimization adalah
algoritma yang diusulkan oleh Shu-Chuan Chu
dan Pei-Wei Tsai pada tahun 2006, yang didapat
melalui
pengamatan
terhadap
perilaku
sekumpulan kucing. Dalam ACO semut
digunakan sebagai agent, dan jalur yang dilalui
oleh semut-semut tersebut adalah set solusinya.
Dalam PSO, posisi-posisi dari kawanan burung
digunakan untuk menggambarkan set solusinya.
Sedangkan, dalam CSO, sekumpulan kucing
dan model perilakunya digunakan untuk
menyelesaikan permasalahan optimasi.
2.3.1 Algoritma CSO
Chu et al. (2006) membagi algortima
CSO ke dalam dua sub model yang berdasar
dari dua perilaku utama kucing. Yaitu ”seeking
mode” dan ”tracing mode”. Untuk lebih
jelasnya langkah-langkah algoritma CSO seperti
yang disampaikan Chu et al. (2006) dalam
penelitiannya akan dijabarkan dalam sub bab
berikutnya.
2.3.2 Set Solusi dalam Model
Bagaimanapun
bentuk
algortima
optimasi, set solusi (hasil) harus ditampilkan
dalam suatu cara tertentu. Misalnya dalam Ant
Colony
Optimization
(ACO)
semut
disimulasikan sebagai agen, dan jalur yang
dibentuk oleh semut menunjukkan set solusinya.
Dalam CSO, digunakan kucing dan model
perilaku
kucing
untuk
menyelesaikan
permasalahan optimasi. Dengan kata lain kucing
digunakan untuk menggambarkan set solusi.
Tahap pertama dalam CSO adalah menentukan
berapa banyak kucing akan digunakan dalam
iterasi, kemudian menggunakan kucing dalam
CSO untuk menyelesaikan permasalahan. Setiap
kucing masing-masing memiliki posisi yang
tersusun dalam dimensi D, kecepatan untuk
setiap dimensi, nilai kecocokan yang
menunjukkan penyesuaian kucing dengan fungsi
kecocokan, dan bendera untuk mengetahui
apakah kucing berada dalam seeking mode atau
tracing mode. Solusi akhir adalah posisi terbaik
dari salah satu kucing. CSO akan menyimpan
solusi terbaik hingga akhir iterasi.
Seeking Mode
Sub model ini digunakan untuk
memodelkan situasi kucing ketika dalam
keadaan beristirahat, melihat sekeliling dan
mencari posisi berikutnya untuk bergerak.
Dalam seeking mode, didefinisikan empat faktor
penting: seeking memory pool (SMP), seeking
range of the selected dimension (SRD) atau
mencari rentang dimensi terpilih, counts of
dimension to change (CDC) atau menghitung
dimensi yang akan berubah, dan self-position
considering (SPC) atau mempertimbangkan
posisi.
SMP digunakan untuk mendefinisikan
ukuran memori pencarian untuk masing-masing
kucing, yang mengindikasikan titik-titik yang
telah dicoba oleh kucing. Kucing tersebut
kemudian akan memilih titik dari kelompok
memori berdasarkan aturan yang akan
dijelaskan kemudian. SRD menyatakan rentang
perpindahan dalam dimensi terpilih. Dalam
seeking mode, jika suatu dimensi diputuskan
berpindah, selisih antara nilai baru dengan yang
lama tidak boleh melebihi suatu rentang, yaitu
rentang yang didefinisikan oleh SRD. CDC
memperlihatkan berapa besar dimensi yang
akan berubah. Keseluruhan faktor inilah yang
memegang peran penting dalam seeking mode.
SPC merupakan variabel Boolean
(bernilai benar atau salah), untuk memutuskan
apakah suatu titik, yang pernah menjadi posisi
kucing, akan menjadi kandidat posisi untuk
bergerak. Bagaimanapun nilai SPC, entah benar
ataupun salah, nilai SMP tidak akan
terpengaruh. Langkah-langkah seeking mode
dapat dideskripsikan dalam 5 tahap.
Langkah 1: Bangkitkan j tiruan dari posisi saat
ini kucingk, di mana j = SMP. Jika nilai SPC
benar, maka j = (SMP–1), kemudian
pertahankan posisi saat ini sebagai salah satu
kandidat.
Langkah 2:
Untuk setiap tiruan, disesuaikan
dengan CDC, tambahkan atau kurangkan SRD
persen dari nilai saat ini secara acak dan
gantikan nilai yang sebelumnya.
Langkah 3:
Hitung nilai kecocokan (FS)
untuk semua titik kandidat.
Langkah 4:
Jika semua FS tidak benarbenar sama, hitung probabilitas terpilih masingmasing titik kandidat dengan menggunakan
(pers.2), sebaliknya atur probabilitas terpilih
untuk semua titik sama dengan 1.
Langkah 5:
secara acak pilih titik untuk
bergerak dari titik-titik kandidat, dan pindahkan
posisi kucingk.
pi =
FSi − FSb
FS max − FSmin
, dimana 0 < i <j (pers.2)
Jika tujuan fungsi kecocokan adalah untuk
menemukan solusi minimal, FSb = FSmax,
sebaliknya FSb = FSmin.
Tracing Mode
Tracing mode adalah sub model yang
menggambarkan keadaan ketika kucing sedang
mengikuti jejak targetnya. Sekali kucing
memasuki tracing mode, kucing tersebut akan
bergerak sesuai dengan kecepatannya untuk tiap
dimensi. Tahapan tracing mode dapat
dijabarkan dalam 3 langkah sebagai berikut:
Langkah 1:
Perbarui nilai kecepatan untuk
setiap dimensi (vk,d) berdasarkan (pers.3).
Langkah 2:
Periksa
apakah
kecepatan
berada dalam rentang kecepatan maksimum.
Jika kecepatan yang beru melebihi rentang,
tetapkan nilai sama dengan batas.
Langkah 3:
Perbarui
posisi
kucingk
berdasarkan (pers.4).
vk , d = vk , d + r1 × c1 × ( xbest , d − xk , d ) , dimana d =
1,2,...,M
(pers.3)
xbest ,d adalah posisi kucing yang memiliki nilai
kecocokan terbesar; xk ,d adalah posisi kucingk.
c1 adalah konstanta dan r1 adalah nilai acak
dalam rentang [0,1].
xk , d = xk , d + vk , d
(pers.4)
2.3.3 Inti Algoritma CSO
Seperti
yang
telah
dijabarkan
sebelumnya, CSO terdiri dari dua sub model.
Untuk mengkombinasikan kedua mode dalam
satu algoritma, perlu didefinisikan rasio
campuran/mixture
ratio
(MR)
untuk
menggabungkan seeking mode dan tracing
mode.
Dengan mengamati perilaku kucing,
dapat diketahui bahwa kucing menghabiskan
sebagian besar waktunya untuk beristirahat.
Selama beristirahat, kucing mengubah posisinya
perlahan dan berhati-hati, terkadang bahkan
tetap pada tempatnya. Untuk menerapkan
perilaku ini ke dalam CSO, digunakan seeking
mode.
Perilaku mengejar target dipalikasikan
dalam tracing mode. Karena itu maka MR harus
bernilai kecil untuk memastikan bahwa kucing
menghabiskan sebagian besar waktu dalam
seeking mode, seperti di kehidupan nyatanya.
Proses CSO dapat digambarkan dalam
6 langkah sebagai berikut:
Langkah 1:
Bangkitkan N kucing dalam
proses.
Langkah 2:
Sebarkan kucing secara acak
dalam ruang solusi berdimensi D dan secara
acak pula pilih nilai dalam rentang kecepatan
maksimum untuk menjadi kecepatan kucing.
Kemudian pilih sejumlah kucing secara
sembarang dan masukkan dalam tracing mode
sesuai MR, sisanya dimasukkan dalam seeking
mode.
5 Langkah 3:
Hitung nilai kecocokan masingmasing kucing dengan memasukkan nilai posisi
kucing ke dalam fungsi kecocokan, yang
menunjukkan kriteria tujuan, dan simpan kucing
terbaik dalam memori. Perlu diingat bahwa
yang perlu disimpan adalah posisi kucing
terbaik ( xbest ) karena kucing terbaik sejauh ini
mewakili solusi terbaik.
Langkah 4:
Pindahkan
kucing
sesuai
benderanya, jika kucingk berada dalam seeking
mode, perlakukan sesuai proses seeking mode,
sebaliknya perlakukan sesuai tracing mode.
Proses
masing-masing
telah
dijelaskan
sebelumnya.
Langkah 5:
Pilih lagi sejumlah kucing dan
masukkan dalam tracing mode sesuai MR,
sisanya masukkan ke dalam seeking mode.
Langkah 6:
Perhatikan
terminating
condition-nya. Jika telah memuaskan, hentikan
program. Sebaliknya ulangi langkah 3 hingga 5.
Gambaran algoritma Cat Swarm
Optimization pada kasus unconstrained
minimization problem dapat dilihat pada urutan
gambar 2.2 di halaman berikut. Misal untuk
menyelesaikan permasalahan unconstrained
minimization digunakan populasi berukuran 5
kucing. Mixture Ratio yang digunakan adalah
20%. SMP berukuran 3, yang berarti digunakan
3 kucing tiruan.
2.5 Multiple Regression Linear Model
Multiple Regression Linear Model
(MRLM) adalah pengembangan dari regresi
linear yang menyertakan lebih dari 1 variabel
prediksi. MRLM berusaha memodelkan
hubungan antara dua atau lebih variabel bebas
dan sebuah variabel respon dengan cara
mencocokkan persamaan linear. Setiap nilai
variabel bebas X dihubungkan dengan nilai
variabel tak bebas Y. Populasi dari sejumlah P
variabel bebas X didefinisikan sebagai berikut:
Y = c0 + c1 x1 + c2 x2 + c3 x3 + ... + c p x p
(pers. 5)
Dalam penelitian ini, x1, x2,…,xp
merepresentasikan atribut set data dan Y adalah
kelas atau label dari data terkait.
Langkah-langkah klasifikasi dengan
pendekatan MRLM adalah sebagai berikut
(Satapathy,2008):
1. Set data disajikan dalam matriks seperti
tampak berikut ini.
Gambar 2. 2 Bagan Cat Swarm Optimization
(sumber: Chu, 2006)
⎡ x11
⎢x
⎢ 21
⎢ .
⎢
⎣ xn1
x12
x22
.
... x1m
... x2 m
.
.
xn 2 ... xnm
y1 ⎤
y2 ⎥⎥
.⎥
⎥
yn ⎦
2. Hubungan antara variabel bebas dan tak
bebas pada data di atas diekspresikan dalam
MRLM seperti berikut.
⎡ y1 = c0 + c1 x11 + c2 x12 + ... + cm x1m ⎤
⎢ y = c + c x + c x + ... + c x ⎥
0
1 21
2 22
m 2m ⎥
⎢ 2
⎥
⎢
...
⎥
⎢
⎣ yn = c0 + c1 xn1 + c2 xn 2 + ... + cm xnm ⎦
3. Fitness function yang digunakan adalah
meminimasi banyaknya error yang terjadi
antara nilai yang diestimasi dengan label
aslinya.
d i = yi − sgn(c0 + c1 x1 + c2 x 2 + ... + c m xm )
∏= ∑
n
i =1
di
(pers.6)
2.6 Ukuran Performansi
Metode untuk mengukur perfomansi
model adalah dengan menggunakan Training
Set dan Test Set seperti dijelaskan oleh (Olson,
2008), (Bramer, 2007), dan (Santosa, 2006).
Untuk metode “train and test” ini, data dipisah
menjadi 2 bagian yang masing-masing disebut
training set dan test set. Training set digunakan
untuk membangun fungsi pemisah. Fungsi
pemisah ini ini kemudian digunakan untuk
memprediksi klasifikasi pada test set. Jika
terdapat sejumlah N data yang diuji, dan sebesar
C data yang benar, maka keakurasian prediksi
dari fungsi pemisah tersebut adalah
p =C/N
(pers.7)
yang terjadi di objek penelitian serta
menetapkan tujuan yang ingin dicapai dalam
penelitian yang akan dilakukan. Penetapan
tujuan dilakukan agar penelitian yang dilakukan
memiliki arah yang jelas.
Studi Pustaka
Langkah ini merupakan tahap
pendalaman materi tentang permasalahan yang
akan diangkat, guna mendukung pelaksanaan
penelitian dengan memberikan wawasan yang
cukup seputar metode CSO untuk optimasi,
metode klasifikasi, dan metode klasifikasi
dengan teknik-teknik heuristik.
Observasi dan Analisa Algoritma CSO
Bersamaan dengan tahapan studi
pustaka dan literatur maka juga dilakukan
observasi
lanjutan
untuk
mendapatkan
penjelasan secara lebih mendalam melalui
analisa algoritma CSO.
Gambar 2. 3 Train and Test (Sumber: Santosa, 2006)
3. Pengembangan Model
Bab ini menguraikan metodologi
penelitian dan pengembangan metode klasifikasi
CSO dengan pendekatan MRLM.
3.1. Metodologi Penelitian
Metodologi penelitian pengembangan
model dilakukan dengan empat tahapan utama,
yaitu tahap awal, tahap pengembangan model,
tahap analisa, serta tahap penarikan kesimpulan.
3.1.1.
Tahap Awal
Dalam tahap ini peneliti melakukan
upaya identifikasi permasalahan yang terjadi
pada objek penelitian melalui observasi yang
dilakukan
serta
kemudian
melakukan
perumusan masalah tersebut.
Identifikasi Permasalahan
Pada langkah ini dilakukan proses
identifikasi atas perkembangan teknik baru
dalam kasus optimasi. Observasi awal objek
penelitian secara langsung dilakukan untuk
mengetahui kondisi yang terjadi serta
permasalahan yang kiranya dapat dicarikan
alaternatif pemecahannya melalui penelitian
yang akan dilakukan sesuai dengan tema dan
batasan penelitian.
Perumusan Masalah dan Penetapan Tujuan
Penelitian
Setelah
melakukan
identifikasi
permasalahan melalui observasi awal langkah
selanjutnya adalah merumuskan permasalahan
3.1.2.
Tahap Pengembangan Model
Merupakan
tahap
dilakukan
pengembangan model untuk klasifikasi.
Algoritma Cat Swarm
Optimization yang
selama ini digunakan untuk menemukan solusi
kasus
optimasi
akan
dikembangkan,
dimodifikasi, diberi penyesuaian sehingga bisa
digunakan dalam kasus klasifikasi.
Pengumpulan dan Pengolahan Data
Dalam pengembangan model untuk
penelitian Tugas Akhir ini, diperlukan sejumlah
set data yang berfungsi untuk pembelajaran
maupun pengujian validasi dari model yang
dikembangkan. Data yang digunakan adalah
data yang sudah umum digunakan dalam kasus
Data mining, seperti data Iris, data Breast
Cancer, dan sebagainya.
Pengolahan data yang dilakukan
adalah data pre-processing dan data cleaning.
Setelah data terkumpul, data perlu diseleksi dan
dibersihkan. Mungkin juga terdapat sejumlah
variabel dari data yang dilakukan transformasi
menjadi bentuk yang diinginkan.
Pengembangan Model
Setelah data terkumpul dan diolah,
maka dilanjutkan dengan pengembangan model.
Model CSO yang asal mulanya digunakan
untuk menyelesaikan atau mencari nilai optimal,
dikembangkan sehingga bisa digunakan dalam
kasus klasifikasi. Model CSO klasifikasi dalam
penelitian ini menggunakan pendekatan MRLM.
Untuk mengembangkan model digunakan
software MATLAB 7.0.4. Jumlah keseluruhan
model yang dibangun dalam penelitian ini
7 sebanyak 4 buah model klasifikasi, yaitu PSOMRLM, CSO-MRLM No Modification, CSOMRLM with inertia, dan CSO-MRLM steady
flag.
Validasi Model CSO
Tahap ini merupakan tahap evaluasi
model, dimana model diuji apakah model telah
mampu memberikan hasil klasifikasi yang
sesuai dengan label aslinya. Model yang valid
adalah model yang mampu menghasilkan
akurasi yang baik.
Perbandingan dengan Metode Lain
Setelah model selesai dikembangkan,
model diterapkan untuk set data baru. Hasil
klasifikasi ini nanti akan dianalisa. Performansi
diukur dari tingkat akurasi dan kecepatan
komputasi. Performansi dari model CSO untuk
klasifikasi kemudian dibandingkan dengan
metode lain. Metode lain yang digunakan
sebagai pembanding adalah model PSO
klasifikasi dengan pendekatan MRLM.
3.1.3.
Tahap Analisis
Pada tahap ini, hasil yang diperoleh
dari implementasi model dan dari perbandingan
dengan metode lain akan dianalisa secara
mendalam sehingga dapat diambil kesimpulan
di akhir penelitian ini. Pada tahap ini dilakukan
analisis dan perbandingan antara PSO
klasifikasi dan CSO klasifikasi secara
keseluruhan serta perbandingan modifikasi antar
CSO klasifikasi.
3.1.4.
Tahap Penarikan Kesimpulan
Kesimpulan dan saran diberikan
setelah tahap analisa dilakukan. Kesimpulan
yang diberikan merupakan intisari dari
penelitian
yang
dilakukan,
mengenai
perbandingan Teknik klasifikasi dengan CSO
dan teknik klasifikasi pembanding. Saran yang
akan diberikan adalah saran untuk peneliti yang
akan melakukan penelitian lebih lanjut
menggunakan Cat Swarm Optimization.
3.2. Pengembangan Model
Dalam sub bab ini akan dipaparkan
pengembangan model maupun modifikasi dari
algoritma CSO. CSO dikembangkan dengan
menggunakan pendekatan Multiple Regression
Linear Model.
3.2.1.
CSO pendekatan MRLM
Penjelasan dari pengembangan model
yang dilakukan dalam penelitian ini dapat
dilihat dari flow chart maupun dari langkahlangkah algoritma berikut.
langkah 1. Bangkitkan sejumlah N kucing.
Setiap kucing merepresentasikan set
solusi
awal,
yaitu
nilai-nilai
koefisian persamaan MRLM. Jika
data training berjumlah ntraining,
maka ukuran matriks kucing
memiliki dimensi sebesar N x
ntraining.
langkah 2. Inisialisasi posisi kucing, kecepatan,
dan bendera kucing. Kucing berada
pada bendera seeking sesuai rasio
MR
yang
telah
ditentukan
sebelumnya.
langkah 3. Hitung fungsi tujuan CSO MRLM,
yaitu
d i = y i − sgn(c0 + c1 x1 + c 2 x 2 + ... + c m x m )
∏= ∑
n
i =1
di
(pers.7)
langkah 4. Perbaharui
kucing
sesuai
benderanya.
langkah 4.1. Untuk kucing dengan bendera
seeking,
bangkitkan
tiruan
sebanyak SMP yang telah
ditetapkan. Jika SPC bernilai
benar, maka pertahankan posisi
saat ini sebagai salah satu
kandidat.
langkah 4.2. Untuk setiap tiruan, tambahkan
atau kurangkan sebesar SRD
persen dari nilai saat ini.
langkah 4.3. Hitung nilai kecocokan untuk
semua titik kandidat seperti pada
langkah 3.
langkah 4.4. Jika nilai kecocokan tidak benarbenar sama, hitung probabilitas
terpilihnya
masing-masing
kandidat.
langkah 4.5. Secara acak pilih titik untuk
bergerak dari titik-titik kandidat,
lal pindahkan posisi kucing.
langkah 4.6. Untuk kucing dalam bendera
tracing, perbarui kecepatan.
v k , d = v k , d + r1 × c1 × ( x best , d − x k , d )
, dimana d = 1,2,...,M (pers.8)
langkah 4.7. Perbarui posisi kucing.
langkah 5. Pilih lagi sejumlah kucing dan
masukkan dalam tracing mode
sesuai MR, sisanya masukkan ke
dalam seeking mode.
langkah 6. Perhatikan terminating conditionnya. Jika telah memuaskan,
hentikan program. Sebaliknya
ulangi langkah 3 hingga 5.
Terminating
yang
digunakan
berupa
maksimum
jumlah
misclassification (%).
tiga buah variasi CSO-MRLM ditampilkan
dalam penelitian ini untuk melihat mana yang
paling baik diantara modifikasi CSO. CSOMRLM No Modification adalah algoritma CSO
tanpa modifikasi. Pada CSO-MRLM with
inertia, modifikasi dilakukan yaitu dengan tidak
melakukan perubahan bendera seeking dan
tracing. Kucing yang sejak awal memiliki
bendera seeking akan terus berada pada bendera
seeking hingga titik optimal ditemukan.
Demikian halnya pada kucing yang sejak awal
memiliki bendera tracing. Selain itu, pada CSOMRLM with inertia ini juga ditambahkan
modifikasi berupa nilai inersia w yang nilainya
berubah secara acak. Sehingga persamaan
update kecepatan menjadi (pers. 10). Modifikasi
pada CSOsf hampir sama dengan Csi, hanya
saja pada CSOsf diberikan nilai inersia w yang
konstan, yaitu 1.
v k , d = w × v k , d + r1 × c1 × ( x best , d − x k , d ) ,
dimana d = 1,2,...,M
Gambar 3. 1 Algoritma CSO Klasifikasi
langkah 7. Kucing yang terpilih adalah kucing
yang memiliki koefisien MRLM
optimal.
langkah 8. Klasifikasi data testing dengan
menggunakan persamaan MRLM
optimal yang telah didapat. Kalikan
matriks data testing dengan
persamaan
MRLM
(pers.9).
Kemudian cocokkan hasil data
testing dengan label testing. Hitung
jumlah titik yang tidak sama
dengan label aslinya.
⎡ x11
⎢x
⎢ 21
⎢ ...
⎢
⎣ xn1
x1m ⎤
⎡ c1 ⎤
x22 x2 m ⎥⎥ ⎢ ⎥
× c2
... ... ⎥ ⎢ ⎥
⎥ ⎢c3 ⎥
x1n 2 xnm ⎦ ⎣ ⎦
x12
(pers.9)
(pers.10)
4. Pengujian Model
Model yang telah dibuat kemudian
diuji kemampuannya dengan set data sederhana
sebelum digunakan dengan set data set yang
lebih besar. Set data sederhana yang digunakan
adalah data permasalahan AND, yang
digunakan sebagai validasi dan juga sebagai
contoh perhitungan. Set data yang lebih besar
diantaranya adalah data iris, breast cancer,
Wisconsin Diagnostic Breast Cancer (WDBC),
pima, credit approval, spline, Haberman’s
Survival, hepatitis, sonar, dan ionosphere.
Sepuluh set data yang telah disebutkan
digunakan untuk melihat kinerja CSO
klasifikasi dan perbandingannya dengan PSO
klasifikasi.
4.1. Deskripsi Data Uji
Data yang digunakan dalam penelitian
ini adalah set data kasus nyata yang telah umum
digunakan dalam kasus Data mining. Dalam
sub-bab ini akan dijelaskan karakteristik dari set
data yang digunakan.
4.1.1.
3.2.2.
Modifikasi CSO
Sepuluh set data diuji dengan empat
metode yang masing-masing dinamakan PSOMRLM, CSO-MRLM No Modification, CSOMRLM with inertia, dan CSO-MRLM steady
flag.
PSO-MRLM
digunakan
sebagai
pembanding performa CSO-MRLM. Sedangkan
Data permasalahan AND
Problem AND adalah klasifikasi dua
kelas dengan empat data. Kelas pertama
ditunjukkan dengan 1, sedangkan kelas kedua
ditunjukkan dengan -1.
Tabel 4. 1 Permasalahan AND
X1
1
X2
1
Y
1
9 -1
1
-1
1
-1
-1
-1
-1
-1
4.1.2.
Data Iris
Data iris asli memiliki tiga kelas jenis
bunga dengan total data sebanyak 150. Untuk
uji klasifikasi pada penelitian ini, data yang
digunakan dibatasi sebanyak dua kelas, karena
itu dilakukan penghapusan data dari kelas
ketiga. Data iris yang yang tersisa dapat
dijelaskan sebagai berikut:
• Jumlah data
: 100
• Jumlah atribut : 5
• Penyesuaian
: Penghapusan kelas ketiga
4.1.3.
Data Breast Cancer
Data Breast Cancer digunakan untuk
memprediksi diagnosis kanker payudara, apakah
jinak atau ganas. Data Breast Cancer asli
memiliki 699 data dimana terdapat beberapa
data yang masih memiliki missing value.
Sebelum diproses, dilakukan preprocessing data
berupa data cleaning yaitu menghapus data-data
yang masih memiliki missing value. Data Breast
Cancer yang akan diuji dapat dijelaskan sebagai
berikut:
• Jumlah data
: 683
• Jumlah atribut : 10
• Penyesuaian
: Penghapusan data dengan
missing value
4.1.4. Data Wisconsin Diagnostic Breast
Cancer (WDBC)
Data WDBC berbeda dengan data
Breast
Cancer,
meskipun
sama-sama
memprediksi diagnosis kanker payudara. Data
WDBC memiliki 569 data dengan jumlah
atribut yang lebih banyak daripada data Breast
Cancer. Seluruh atribut data telah merupakan
data numerik, sehingga tidak perlu dilakukan
penyesuaian. Data WDBC yang akan diuji dapat
dijelaskan sebagai berikut:
• Jumlah data
: 569
• Jumlah atribut : 31
• Penyesuaian
: tidak ada
4.1.5.
Data Pima
Data
Pima
digunakan
untuk
memprediksi
diagnosis
apakah
pasien
menunjukkan tanda-tanda diabetes atau tidak,
jika merujuk pada kriteria World Health
Organization (WHO). Data WDBC memiliki
768 data dengan seluruh atribut data telah
merupakan data numerik, sehingga tidak perlu
dilakukan penyesuaian. Data Pima yang akan
diuji dapat dijelaskan sebagai berikut:
• Jumlah data
: 768
• Jumlah atribut : 9
• Penyesuaian
: tidak ada
4.1.6.
Data Credit Approval
Data Credit Approval asli terdiri dari
690 data dengan 16 atribut yang terdiri dari
beragam jenis data, yaitu data kontinu dan
nominal. Data nominal diubah ke dalam bentuk
numeris agar dapat diolah pada pengujian data.
Data ini memiliki range yang beragam antar
atribut. Setelah data yang mengandung missing
value dihapus, data Credit Approval dapat
dijelaskan sebagai berikut.
• Jumlah data
: 653
• Jumlah atribut : 16
• Penyesuaian
: Penghapusan data dengan
missing
value,
pengubahan
data
kategorial
menjadi
numeris
4.1.7.
Data Splice
Data Splice asli terdiri dari 3.175 data.
Karena data masih mengandung kelas yang
tidak termasuk ke dalam dua kelas yang telah
ditentukan, dilakukan penghapusan data untuk
data dengan kelas selain +1 dan -1. Kegiatan
preprocessing berikutnya yaitu mengubah jenis
data dari kategorial menjadi numeris. Data yang
akan diuji setelah preprocessing dapat
dijelaskan sebagai berikut:
• Jumlah data
: 1527
• Jumlah atribut : 61
• Penyesuaian
: Penghapusan data dengan
missing
value,
penghapusan data dari
kelas ketiga, pengubahan
data kategorial menjadi
numeris
4.1.8.
Data Haberman’s Survival
Data Haberman’s Survival digunakan
untuk memprediksi apakah seorang pasien yang
telah menjalani operasi kanker payudara akan
bertahan hidup atau tidak. Kelas +1 berarti
seorang pasien mampu bertahan hidup lebih dari
lima tahun, sedangkan kelas -1 menandakan
pasien akan meninggal dalam kurun waktu
kurang dari lima tahun. Data Haberman’s
Survival dapat dijelaskan sebagai berikut.
• Jumlah data
: 306
• Jumlah atribut : 4
• Penyesuaian
: tidak ada
4.1.9.
Data Hepatitis
Data Hepatitis digunakan untuk
memprediksi apakah seorang pasien hepatitis
akan meninggal atau selamat berdasarkan
atribut yang dimilikinya seperti usia, jenis
kelamin, ada tidaknya varises, dan lainnya.
Dataset Hepatitis asli terdiri atas 155 data,
namun masih terdapat missing value yang perlu
dihilangkan untuk memudahkan pengolahan
data. Setelah missing value dihapus, data yang
tersisa adalah sebagai berikut.
• Jumlah data
: 80
• Jumlah atribut : 20
• Penyesuaian
: Penghapusan data dengan
missing
value,
pengubahan
data
kategorial
menjadi
numeris
4.1.10. Data Sonar
Data
Sonar
digunakan
untuk
memprediksi apakah pantulan dari sinyal sonar
berasal dari partikel batu atau besi.
• Jumlah data
: 206
• Jumlah atribut : 60
• Penyesuaian
: Penghapusan data dengan
missing
value,
pengubahan
data
kategorial
menjadi
numeris
4.1.11. Data Ionosphere
Data Ionosphere digunakan untuk
memprediksi apakah lapisan ionosfer baik atau
buruk berdasarkan elektron-elektron di ionosfer.
Dataset Ionosphere asli terdiri atas 351 data,
namun masih terdapat missing value yang perlu
dihilangkan untuk memudahkan pengolahan
data. Setelah missing value dihapus, data yang
tersisa adalah sebagai berikut.
• Jumlah data
: 122
• Jumlah atribut : 35
• Penyesuaian
: Penghapusan data dengan
missing
value,
pengubahan
data
kategorial
menjadi
numeris
4.2. Pengujian permasalahan AND
Set data permasalahan AND adalah
data sederhana yang terdiri atas dua atribut.
Gambaran yang lebih jelas mengenai data
permasalahan AND dapat dilihat pada tabel dan
gambar berikut ini diikuti dengan langkahlangkah penyelesaian menggunakan CSO
klasifikasi.
Gambar 4. 1 Ilustrasi Permasalahan AND (sumber:
Santosa,2006)
Pendekatan MRLM membutuhkan
adanya tambahan variabel pada kolom yang
paling awal. Variabel ini digunakan sebagai
pengali agar persamaan MRLM memiliki
konstanta c0. Sehingga tabel permasalahan AND
menjadi seperti pada tabel berikut.
Tabel 4. 2 Permasalahan AND dengan MRLM
X0
1
1
1
1
X1
1
-1
1
-1
X2
1
1
-1
-1
Y
1
-1
-1
-1
langkah 1. Bangkitkan N=5 kucing. Setiap
kucing merepresentasikan set solusi.
Ukuran matriks kucing memiliki
dimensi 5 x 3.
langkah 2. Inisialisasi posisi kucing,
⎡ 3.6010 2.0968 0.9235 ⎤
⎢− 2.1509 − 0.3483 2.3355⎥
⎥
x=⎢
⎢ 0.8547 − 3.8520 3.3745 ⎥
⎢
⎥
⎣ − 0.1121 2.5713 1.9057 ⎦
kecepatan,
⎡ 3.6010 2.0968 0.9235 ⎤
⎢− 2.1509 − 0.3483 2.3355⎥
⎥
v=⎢
⎢ 0.8547 − 3.8520 3.3745 ⎥
⎢
⎥
⎣ − 0.1121 2.5713 1.9057 ⎦
dan bendera kucing,
Ntrac = round(N*MR) = 1
Nseek = N – Ntrac = 4
langkah 3. Hitung fungsi tujuan CSO MRLM,
d i = y i − sgn(c 0 + c1 x1 + c 2 x 2 + ... + c m x m )
∏= ∑
n
i =1
di
untuk tiap x:
11 cumprob =
hreg(i) = dttrn * x(i,:)'
hreg(i) =
6.6213
2.4277
4.7744
0.5808
Hlabel(i) = sign(hreg)
⎡1⎤
⎢⎥
Hlabel(i) = ⎢1⎥
⎢1⎥
⎢⎥
⎣1⎦
⎡1⎤ ⎡ 1 ⎤
Abs(d(i)) = ⎢1⎥ ⎢− 1⎥
⎢ ⎥−⎢ ⎥ =3
⎢1⎥ ⎢− 1⎥
⎢⎥ ⎢ ⎥
⎣1⎦ ⎣− 1⎦
Sehingga didapat fitness function d,
yaitu
⎡ 3⎤
⎢ ⎥
d = ⎢ 2⎥
⎢ 2⎥
⎢1⎥
⎢ ⎥
⎣ 3⎦
langkah 4. Perbaharui
kucing
sesuai
benderanya. Untuk tiap x(i)
lakukan langkah 4.1 – langkah 4.7:
langkah 4.1. Untuk kucing dengan bendera
seeking,
bangkitkan
tiruan
sebanyak SMP (3 kucing tiruan).
SPC = 0, maka posisi awal tidak
menjadi kandidat.
langkah 4.2. Untuk setiap tiruan, tambahkan
atau kurangkan sebesar SRD
persen dari nilai saat ini.
xseekcop =
-1.5056 -2.7962 -1.5056
-0.2438 -0.4527 -0.2438
1.6348 1.6348 1.6348
langkah 4.3. Hitung nilai kecocokan untuk
semua titik kandidat seperti pada
langkah 3.
FScopy =
2
1
2
langkah 4.4. Jika nilai kecocokan tidak benarbenar sama, hitung probabilitas
terpilihnya
masing-masing
kandidat. Selain itu, hitung
probabilitas masing-masing kucing
tiruan.
0.4000
0.6000
1.0000
langkah 4.5. Secara acak pilih titik untuk
bergerak dari titik-titik kandidat,
lalu pindahkan posisi kucing.
Hasilnya adalah:
xseek =
-2.7962 -0.4527 1.6348
0.5983 -2.6964 2.3622
-0.1458 3.3426 2.4774
2.1913 -0.5751 -1.8129
langkah 4.6. Untuk kucing dalam bendera
tracing, perbarui kecepatan.
vel =
-7.2825 4.9180 5.1445
langkah 4.7. Perbarui posisi kucing.
xtrac =
-1.3990 7.0147 5.9235
langkah 5. Pilih lagi kucing dan masukkan
dalam tracing mode sesuai MR,
sisanya masukkan ke dalam
seeking mode.
langkah 6. Perhatikan terminating conditionnya. Jika telah memuaskan,
hentikan program. Sebaliknya
ulangi langkah 3 hingga 5.
Terminating
yang
digunakan
berupa
maksimum
jumlah
misclassification
(%).
Dalam
permasalahan AND, batas misclassification adalah nol persen.
Setelah dihitung fitness function,
ternyata terminating condition
terpenuhi.
langkah 7. Kucing yang terpilih adalah kucing
yang memiliki koefisien MRLM
optimal, yaitu:
x(i) =
-1.3990 7.0147 5.9235
langkah 8. Setelah diperoleh solusi optimal,
klasifikasi data testing dengan
menggunakan persamaan MRLM
optimal yang telah didapat. Kalikan
matriks data testing dengan
persamaan MRLM. Kemudian
cocokkan hasil data testing dengan
label testing. Hitung jumlah titik
yang tidak sama dengan label
aslinya.
hregtst = dttrn * x(i,:)'
⎡ 3.6010 2.0968 0.9235 ⎤
⎥ ⎡− 1.339⎤
⎢
hregtst= ⎢− 2.1509 − 0.3483 2.3355⎥ ⎢
× 7.0147 ⎥⎥
⎢ 0.8547 − 3.8520 3.3745 ⎥ ⎢
⎥ ⎣⎢ 5.9235 ⎦⎥
⎢
⎣ − 0.1121 2.5713 1.9057 ⎦
CSOn
m
CSOi
CSOsf
⎡ 11.5392 ⎤
Hlabeltst = ⎡⎢ 1 ⎤⎥
⎢− 1⎥
⎢− 1⎥
⎢ ⎥
⎣− 1⎦
telah
0%
0%
0%
Data Breast Cancer
Pengujian dilakukan dengan data
training sebanyak 70 persen dari total data
dan dipilih secara acak, dan data testing
diambil dari data selain data training. Hasil
rata-rata
banyaknya
iterasi,
waktu
komputasi, dan misklasifikasi dari sepuluh
kali percobaan untuk tiap metode
ditunjukkan pada tabel 4.3. Adapun nilai
minimum untuk waktu komputasi dan
kesalahan klasifikasi tiap metode diperjelas
dengan huruf bercetak tebal.
⎢ − 0.3077 ⎥
⎢
⎥
⎣ − 14.3372⎦
label
0.02
0.01
0.02
4.3.2.
hregtst = ⎢ − 2.4902 ⎥
⎢
⎥
Semua
dengan tepat.
1.7
1.5
0.9
terklasifikasi
4.3. Pengujian 10 Set Data
Sepuluh set data diuji dengan empat
metode yang masing-masing dinamakan PSOMRLM, CSO-MRLM No Modification, CSOMRLM with inertia, dan CSO-MRLM steady
flag. Dalam sub bab ini, nama masing-masing
model disingkat untuk alasan penyajian tabel.
PSO-MRLM disingkat menjadi PSO, CSOMRLM No Modification disingkat menjadi
CSOnm, CSO-MRLM with inertia disingkat
menjadi CSOi, dan CSO-MRLM steady flag
disingkat menjadi CSOsf.
Tabel 4. 4 Klasifikiasi Data Breast Cancer
Metode
4.3.1.
Data Iris
Pengujian dilakukan dengan data
training sebanyak 70 yang dipilih secara
acak, dan data testing sebanyak 30 yang
diambil dari data selain data training. Hasil
rata-rata
banyaknya
iterasi,
waktu
komputasi, dan misklasifikasi dari sepuluh
kali percobaan untuk tiap metode
ditunjukkan pada Tabel 4.2. Adapun nilai
minimum untuk waktu komputasi dan
kesalahan klasifikasi tiap metode diperjelas
dengan huruf bercetak tebal.
PSO
CSOn
m
Iterasi
Waktu
(detik)
Misklasifikasi
356
5.76
5.57%
5.17
7.20%
CSOi
198
1334.
6
33.67
5.30%
CSOsf
41.2
1.09
3.84%
4.3.3. Data Wisconsin Diagnostic Breast
Cancer (WDBC)
Pengujian dilakukan dengan data
training sebanyak 398 yang dipilih secara
acak, dan data testing sebanyak 171yang
diambil dari data selain data training. Hasil
rata-rata
banyaknya
iterasi,
waktu
komputasi, dan misklasifikasi dari sepuluh
kali percobaan untuk tiap metode
ditunjukkan pada tabel 4.4. Adapun nilai
minimum untuk waktu komputasi dan
kesalahan klasifikasi tiap metode diperjelas
dengan huruf bercetak tebal.
Tabel 4. 3 Klasifikasi Data Iris
Metode
PSO
Waktu
Iterasi (detik)
Misklasifikasi
2.2
0.02
0%
13 Tabel 4. 5 Klasifikasi Data WDBC
kali percobaan untuk tiap metode
ditunjukkan pada tabel 4.6. Adapun nilai
minimum untuk waktu komputasi dan
kesalahan klasifikasi tiap metode diperjelas
dengan huruf bercetak tebal.
Tabel 4. 7 Klasifikasi Data Credit Approval
Metode
Iterasi
Waktu
(detik)
Misklasifikasi
PSO
CSOn
m
22.02
68.16
9.30%
26.34
70.20
8.89%
CSOi
CSOsf
30.23
23.45
64.74
65.79
8.83%
9.01%
Metode
PSO
CSOn
m
4.3.4.
Data Pima
Pengujian dilakukan dengan data
training sebanyak 538 yang dipilih secara
acak, dan data testing sebanyak 230 yang
diambil dari data selain data training. Hasil
rata-rata
banyaknya
iterasi,
waktu
komputasi, dan misklasifikasi dari sepuluh
kali percobaan untuk tiap metode
ditunjukkan pada tabel 4.5. Adapun nilai
minimum untuk waktu komputasi dan
kesalahan klasifikasi tiap metode diperjelas
dengan huruf bercetak tebal.
Iterasi Waktu (detik) Misklasifikasi
110.5
26.25%
1.05
61.88
503.8
8
133.1
3
CSOi
CSOsf
1.26
25.06%
8.90
23.53%
2.70
27.04%
4.3.6. Data Splice
Pengujian dilakukan dengan data training
sebanyak 1069 yang dipilih secara acak, dan
data testing sebanyak 458 yang diambil dari
data selain data training. Hasil dari sepuluh kali
percobaan untuk tiap metode ditunjukkan pada
tabel 4.7 Adapun nilai minimum untuk waktu
komputasi dan kesalahan klasifikasi tiap metode
diperjelas dengan huruf bercetak tebal.
Tabel 4. 6 Klasifikasi Data Pima
Tabel 4. 8 Klasifikasi Data Splice
Metode
PSO
CSOn
m
CSOi
CSOsf
4.3.5.
Waktu
Iterasi (detik) Misklasifikasi
4.6
35.70%
0.05
2.9
3.7
4.2
0.07
0.08
0.10
35.04%
35.26%
35.74%
Data Credit Approval
Pengujian dilakukan dengan data
training sebanyak 457 yang dipilih secara
acak, dan data testing sebanyak 196 yang
diambil dari data selain data training. Hasil
rata-rata
banyaknya
iterasi,
waktu
komputasi, dan misklasifikasi dari sepuluh
Metode
PSO
CSOn
m
CSOi
CSOsf
4.3.7.
Waktu
Iterasi (detik)
Misklasifikasi
899,5
8,1%
11,11
2596,
130,38
8,9%
9
627,5
25,31
9,3%
26,13
9,3%
521
Data Haberman’s Survival
Pengujian dilakukan dengan data training
sebanyak 204 yang dipilih secara acak, dan data
testing sebanyak 102 yang diambil dari data
selain data training. Hasil dari sepuluh kali
percobaan untuk tiap metode ditunjukkan pada
tabel 4.8 Adapun nilai minimum untuk waktu
komputasi dan kesalahan klasifikasi tiap metode
diperjelas dengan huruf bercetak tebal.
4.3.9. Data Sonar
Pengujian dilakukan dengan data training
sebanyak 146 yang dipilih secara acak, dan data
testing sebanyak 60 yang diambil dari data
selain data training. Hasil dari sepuluh kali
percobaan untuk tiap metode ditunjukkan pada
tabel 4.10 Adapun nilai minimum untuk waktu
komputasi dan kesalahan klasifikasi tiap metode
diperjelas dengan huruf bercetak tebal.
Tabel 4. 9 Klasifikasi Data Haberman’s Survival
Tabel 4. 11 Klasifikasi Data Sonar
Metode
PSO
CSOn
m
CSOi
CSOsf
Waktu
Iterasi (detik)
Misklasifikasi
7,7
11,76%
0,07
12,3
6,4
7,6
0,18
0,08
0,11
11,72%
11,34%
11,90%
4.3.8. Data Hepatitis
Pengujian dilakukan dengan data training
sebanyak 60 yang dipilih secara acak, dan data
testing sebanyak 20 yang diambil dari data
selain data training. Hasil dari sepuluh kali
percobaan untuk tiap metode ditunjukkan pada
tabel 4.9 Adapun nilai minimum untuk waktu
komputasi dan kesalahan klasifikasi tiap metode
diperjelas dengan huruf bercetak tebal.
Tabel 4. 10 Klasifikasi Data Hepatitis
Metode
PSO
CSOn
m
CSOi
CSOsf
Waktu
Iterasi (detik)
Misklasifikasi
21,5%
61,8
0,58
317,6
659,1
363,9
3,87
7,13
4,36
22,0%
21,5%
21,5%
15 Metode
PSO
CSOn
m
CSOi
CSOsf
Waktu
Iterasi
(detik)
Misklasifikasi
1376,9
16,74
28,5%
440,9
673,6
2345,8
7,89
10,14
41,76
25,2%
31,3%
32,5%
4.3.10. Data Ionosphere
Pengujian dilakukan dengan data training
sebanyak 85 yang dipilih secara acak, dan data
testing sebanyak 37 yang diambil dari data
selain data training. Hasil dari sepuluh kali
percobaan untuk tiap metode ditunjukkan pada
tabel 4.15. Adapun nilai minimum untuk waktu
komputasi dan kesalahan klasifikasi tiap metode
diperjelas dengan huruf bercetak tebal.
Ditinjau
dari
banyaknya
misklasifikasi, CSO-MRLM with inertia
menghasilkan misklasifikasi paling kecil.
Banyaknya misklasifikasi dipengaruhi oleh
kemampuan model dalam mencari titik optimal.
CSO-MRLM with inertia mengalami modifikasi
dalam mencari titik optimal. Dalam update
kecepatan di CSO-MRLM with inertia, penulis
menambahkan nilai inersia w yang nilainya acak
antara 0 hingga 1. Dengan nilai inersia yang
acak, kucing dapat bergerak dengan halus yaitu
manakala nilai inersia bernilai kecil.
Tabel 5. 1 Rata-rata Iterasi 10 Set Data
Tabel 4. 12 Klasifikasi Data Ionosphere
Metode
PSO
CSOn
m
CSOi
CSOsf
Waktu
Iterasi (detik) Misklasifikasi
113,9
1,18
25,68%
Nilai inersia w yang semakin kecil
akan memberikan dampak pada perpindahahan
posisi yang lebih halus. Kecepatan akan lebih
dipengaruhi oleh pertukaran informasi dengan
kucing yang memiliki posisi terbaik (xbest).
Kucing akan semakin memperdalam pencarian
solusi optimalnya.
Dalam beberapa jurnal, hal
ini disebut eksploitasi. Sedangkan nilai w yang
mendekati 1 akan berdampak pada pencarian
titik solusi baru. Perilaku ini disebut eksplorasi.
5.2.
37
2910,
7
133,1
0,51
28,11%
35,05
1,79
26,49%
27,03%
5. Analisis Dan Pembahasan
5.1.
Analisis Performansi Keseluruhan
Model CSO
Dari 10 set data yang dilakukan uji
klasifikasi, 9 diantaranya dilakukan dengan baik
oleh CSO regresi. Diantara 3 macam variasi
CSO regresi, CSO-MRLM steady flag memiliki
performa yang paling baik dalam hal jumlah
iterasi yang dibutuhkan untuk mencapai titik
optimal. Hal ini sesuai dengan jurnal yang
ditulis oleh Chu et al, bahwa kelebihan dari
CSO adalah CSO hanya membutuhkan iterasi
yang lebih sedikit dibandingkan PSO maupun
PSO with Weighting Factor.
Analisis Performansi Dan
Karakteristik Data
Model CSO-MRLM steady flag
(CSOf) digunakan untuk analisis performansi
dan karakteristik data. Model ini digunakan
karena memberikan hasil yang paling baik
diantara 3 model CSO klasifikasi yang diteliti
pada penelitian ini. Hal tersebut merujuk pada
tabel 5.1 dimana CSOf memiliki rata-rata
jumlah iterasi yang paling sedikit diantara
model lainnya.
Performa model klasifikasi berbedabeda untuk kesepuluh set data yang diuji.
Masing-masing set data memiliki karakteristik
yang berbeda, meliputi jumlah data, jumlah
atribut, maupun nilai atribut. Karakteristik tiap
set data telah dijelaskan pada sub bab 4.1. Di
bawah ini akan disajikan secara ringkas
kesepuluh set data yang diuji.
Tabel 5. 2 Jumlah Data & Atribut 10 Set Data
No. Set data
1
2
3
4
5
6
7
8
9
10
iris
breast cancer
WDBC
pima
credit approval
spline
Haberman’s Survival
hepatitis
sonar
ionosphere
Grafik mengalami kenaikan, namun kembali
menurun pada set data berjumlah atribut 30.
Hubungan antara jumlah atribut dengan
jumlah kebutuhan iterasi yang tidak berbanding
lurus mengindikasikan bahwa ada faktor lain
yang lebih mempengaruhi performa model
dalam melakukan klasifikasi. Selain jumlah
atribut dan jumlah data terdapat karakteristik
lain yang dimiliki oleh set data, yaitu
kemampuan data untuk dipisahkan secara linear.
Data yang memiliki jumlah atribut banyak
memiliki dimensi yang tinggi. Data seperti itu
sulit untuk dilihat apakah linearly separable
atau tidak. Karakteristik inilah yang tidak
mampu diselesaikan dengan baik oleh
pendekatan Multiple Regression Linear Model
(MRLM) dalam penelitian ini.
Jumlah Jumlah
Data
Atribut
100
4
683
9
569
30
768
8
653
15
1527
60
306
3
80
19
206
60
122
34
Hubungan antara banyak iterasi yang
dibutuhkan dengan jumlah data dapat dilihat
pada gambar 5.1. Pada gambar grafik tersebut
terlihat bahwa jumlah data tidak banyak
mempengaruhi jumlah iterasi yang dibutuhkan
algoritma CSO untuk men-training data.
Misalnya pada gambar 5.1 grafik melonjak naik
pada data yang memiliki jumlah data 206 lalu
turun kembali pada data berjumlah 306. Set data
yang memiliki jumlah data sebesar 206 adalah
data Sonar. Set Data sonar memiliki jumlah
atribut yang relatif besar. Kenaikan grafik juga
terjadi pada set data berjumlah 1527 data, yaitu
data splice. Data splice memiliki jumlah atribut
yang juga besar, yaitu 60 atribut.
Gambar 5. 2 Grafik Jumlah Atribut Dengan Iterasi
6. Kesimpulan dan Saran
6.1.
Gambar 5. 1 Grafik Jumlah Data Dengan Iterasi
Hubungan antara banyak iterasi dengan
jumlah atribut disajikan pada gambar 5.2.
Semakin banyak jumlah atribut berdampak pada
semakin banyak iterasi yang dibutuhkan untuk
men-training data.
Pada gambar 5.2. terlihat bahwa grafik
tidak berbanding lurus. Pada data berjumlah
atribut 9 model PSO membutuhkan iterasi yang
banyak. Namun pada data berjumlah atribut 15,
grafik model PSO kembali menurun. Hal yang
serupa juga terjadi pada CSOsf saat model
diterapkan pada set data berjumlah atribut 19.
Kesimpulan
Adapun kesimpulan yang dapat
diambil dari penelitian ini adalah sebagai
berikut:
1. Dalam penelitian ini telah berhasil
dikembangkan Cat Swarm Optimization
untuk kasus klasifikasi dua kelas.
2. CSO klasifikasi yang digunakan dalam
penelitian ini menggunakan pendekatan
Multiple Regression Linear Model
(MRLM).
3. Pada pengujian 10 set data, antara lain
data iris, breast cancer, Wisconsin
Diagnostic Breast Cancer (WDBC),
pima,
credit
approval,
spline,
Haberman’s Survival, hepatitis, sonar,
dan ionosphere, model CSO klasifikasi
memiliki performa yang lebih baik
dibandingkan PSO klasifikasi.
4. CSO klasifikasi pada model CSOsf
memiliki performa yang lebih baik
17 dibandingkan PSO klasifikasi ditinjau
dari banyaknya jumlah iterasi yang
dibutuhkan untuk melatih data training
hingga
tercapai
persentase
misklasifikasi yang kecil.
5. Algoritma CSOsf yang diterapkan pada
permasalahan
klasifikasi
memiliki
performansi yang unggul seperti halnya
pada
saat
diterapkan
dalam
permasalahan
unconstrained
minimization problem.
6.2.
Saran
Penelitian selanjutnya bisa dilakukan
untuk kasus klasifikasi multi kelas serta dengan
pendekatan lain yang mampu memberikan
jumlah misklasifikasi yang lebih kecil.
7. Daftar Pustaka
Bramer, Max.2007. Principles of Data
Mining.London: Springer-Verlag
Chu, Shu-Chuan, Pei-Wei Tsai & Jeng-Shyang
Pan.2006. Computational intelligence
based on the behavior of cats.
International Journal of innovative
Computing, Information and Control.
Chu, Shu-Chuan, Pei-Wei Tsai & Jeng-Shyang
Pan.2006. Cat Swarm Optimization.
Proceedings of the 9th Pacific Rim
International Conference on Artificial
Intelligence LNAI 4099
Gwern, M2Ys4U,
Sinebot,
et
al.2009.Evolutionary
Algorithm.
http://en.wikipedia.org/wiki/Evolution
ary_algorithm
Holden, Nicholas & Alex A. Freitas.2008. A
Hybrid PSO/ACO Algorithm for
Discovering Classification Rules in
Data
Mining.Unitede
Kingdom:
University of Kent.
Liu, Yang and Kevin M. Passino.2000. Swarm
intelligence: Literature Overview.
Department of Electrical Engineering:
The Ohio State University.
TechTarget.2008.Heuristics.<http://whatis.techt
arget.com
/definition/0,,sid9_gci212246,00.html
>
Olson,
David L.&
Dursun Delen
2008.Advanced
Data
MiningTechniques. USA: SpringerVerlag Berlin Heidelberg
Santosa, Budi.2006. Data Mining Teknik
Pengenalan Pola: Teori dan Aplikasi.
Yogyakarta: Graha Ilmu
StatSoft,
Inc.2008.
Data
Mining
Techniques.<http://www.
statsoft.com/textbook/stdatmin.html>
Veeramachaneni, Kalyan, Weizhong Yan, Kai
Goebel,
Lisa
Osadciw.2006.
Improving Classifier Fusion Using
Particle Swarm Optimization.USA:
Syracuse University
Wilamowski,
Bodgan
M.2008.
Swarm
intelligence. Power point slide show
of Neural Networks Lecture.