• Tidak ada hasil yang ditemukan

PENGEMBANGAN ALGORITMA CAT SWARM OPTIMIZATION (CSO) UNTUK KLASIFIKASI

N/A
N/A
Protected

Academic year: 2021

Membagikan "PENGEMBANGAN ALGORITMA CAT SWARM OPTIMIZATION (CSO) UNTUK KLASIFIKASI"

Copied!
18
0
0

Teks penuh

(1)

   

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 permasalahan-permasalahan 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.

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

(2)

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 penelitian-penelitian 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

(3)

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

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 cirri-ciri mahasiswa beserta labelnya. Hasil pembelajaran ini adalah sebuah fungsi pemisah yang akan mampu memasukkan data baru ke dalam kelas yang seharusnya.

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.

( ) ( )

t 1 v t c1rand2(p s(t)) c2rand2(p s(t)) vi + = i + ii + gi

(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

(4)

langkah 2. Bangkitkan populasi secara acak langkah 3. Bangkitkan kecepatan awal. langkah 4. Evaluasi fitness function

langkah 5. Simpan partikel yang memiliki nilai fitness function paling optimal langkah 6. Selama terminating condition

belum terpenuhi, lakukan langkah 6-10.

langkah 7. Hitung kecepatan tiap partikel langkah 8. Hitung posisi baru tiap partikel langkah 9. Evaluasi fitness function yang baru langkah 10. Update solusi optimal

langkah 11. Update partikel terbaik

langkah 12. 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 mekanisme-mekanisme 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

(5)

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 benar-benar sama, hitung probabilitas terpilih masing-masing 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. min max

FS

FS

FS

FS

p

i i b

=

, 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).

)

(

, , 1 1 , ,d kd bestd kd k

v

r

c

x

x

v

=

+

×

×

, dimana d = 1,2,...,M (pers.3) d best

x

, adalah posisi kucing yang memiliki nilai kecocokan terbesar;

x

k,d adalah posisi kucingk.

c1 adalah konstanta dan r1 adalah nilai acak

dalam rentang [0,1]. d k d k d k

x

v

x

,

=

,

+

, (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

(6)

Langkah 3: Hitung nilai kecocokan masing-masing 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 (

x

best) 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:

p p

x

c

x

c

x

c

x

c

c

Y

=

0

+

1 1

+

2 2

+

3 3

+

...

+

(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) ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ n nm m m n n y y y x x x x x x x x x . . ... . ... ... . . 2 1 2 1 2 22 12 1 21 11

2. Hubungan antara variabel bebas dan tak bebas pada data di atas diekspresikan dalam MRLM seperti berikut. ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ + + + + = + + + + = + + + + = nm m n n n m m m m x c x c x c c y x c x c x c c y x c x c x c c y ... ... ... ... 2 2 1 1 0 2 22 2 21 1 0 2 1 12 2 11 1 0 1

3. Fitness function yang digunakan adalah meminimasi banyaknya error yang terjadi antara nilai yang diestimasi dengan label aslinya.

)

...

sgn(

0 1 1 2 2 m m i i

y

c

c

x

c

x

c

x

d

=

+

+

+

+

∏ ∑

= = n i 1di (pers.6) 2.6 Ukuran Performansi

Metode untuk mengukur perfomansi model adalah dengan menggunakan Training

(7)

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

N

C

p

=

/

(pers.7)

  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

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.

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

(8)

sebanyak 4 buah model klasifikasi, yaitu PSO-MRLM, MRLM No Modification, CSO-MRLM with inertia, dan CSO-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 langkah-langkah 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

)

...

sgn(

0 1 1 2 2 m m i i

y

c

c

x

c

x

c

x

d

=

+

+

+

+

∏ ∑

= n= i 1di (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 benar-benar 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.

)

(

, , 1 1 , ,d kd bestd kd k

v

r

c

x

x

v

=

+

×

×

, 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 condition-nya. Jika telah memuaskan, hentikan program. Sebaliknya ulangi langkah 3 hingga 5.

(9)

Terminating yang digunakan

berupa maksimum jumlah

misclassification (%).

 

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.

⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ × ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ 3 2 1 2 1 1 2 22 21 1 12 11 .. . ... ... c c c x x x x x x x x x nm n n m m (pers.9) 3.2.2. Modifikasi CSO

Sepuluh set data diuji dengan empat metode yang masing-masing dinamakan PSO-MRLM, MRLM No Modification, CSO-MRLM with inertia, dan CSO-CSO-MRLM steady

flag. PSO-MRLM digunakan sebagai

pembanding performa CSO-MRLM. Sedangkan

tiga buah variasi CSO-MRLM ditampilkan dalam penelitian ini untuk melihat mana yang paling baik diantara modifikasi CSO. CSO-MRLM 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 CSO-MRLM 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.

)

(

, , 1 1 , ,d kd bestd kd k

w

v

r

c

x

x

v

=

×

+

×

×

, dimana d = 1,2,...,M (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. 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 X2 Y

(10)

-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

(11)

• 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 langkah-langkah 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 X1 X2 Y

1 1 1 1

1 -1 1 -1

1 1 -1 -1

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,

⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − − − − = 9057 . 1 5713 . 2 1121 . 0 3745 . 3 8520 . 3 8547 . 0 3355 . 2 3483 . 0 1509 . 2 9235 . 0 0968 . 2 6010 . 3 x kecepatan, ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − − − − = 9057 . 1 5713 . 2 1121 . 0 3745 . 3 8520 . 3 8547 . 0 3355 . 2 3483 . 0 1509 . 2 9235 . 0 0968 . 2 6010 . 3 v

dan bendera kucing, Ntrac = round(N*MR) = 1 Nseek = N – Ntrac = 4

langkah 3. Hitung fungsi tujuan CSO MRLM,

)

...

sgn(

0 1 1 2 2 m m i i

y

c

c

x

c

x

c

x

d

=

+

+

+

+

∏ ∑

= n= i 1di untuk tiap x:

(12)

hreg(i) = dttrn * x(i,:)' hreg(i) = 6.6213 2.4277 4.7744 0.5808 Hlabel(i) = sign(hreg) Hlabel(i) = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ 1 1 1 1 Abs(d(i)) = 3 1 1 1 1 1 1 1 1 = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − − − − ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡

Sehingga didapat fitness function d, yaitu d = ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ 3 1 2 2 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 benar-benar sama, hitung probabilitas

terpilihnya masing-masing kandidat. Selain itu, hitung probabilitas masing-masing kucing tiruan.

cumprob = 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 condition-nya. Jika telah memuaskan, hentikan program. Sebaliknya ulangi langkah 3 hingga 5.

Terminating yang digunakan

berupa maksimum jumlah misclassification (%). Dalam permasalahan AND, batas mis-classification 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.

(13)

hregtst= ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡− × ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − − − − 9235 . 5 0147 . 7 339 . 1 9057 . 1 5713 . 2 1121 . 0 3745 . 3 8520 . 3 8547 . 0 3355 . 2 3483 . 0 1509 . 2 9235 . 0 0968 . 2 6010 . 3 hregtst = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − − − 3372 . 14 3077 . 0 4902 . 2 5392 . 11 Hlabeltst = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ − − − 1 1 1 1

Semua label telah terklasifikasi dengan tepat.

4.3. Pengujian 10 Set Data

Sepuluh set data diuji dengan empat metode yang masing-masing dinamakan PSO-MRLM, MRLM No Modification, CSO-MRLM with inertia, dan CSO-CSO-MRLM steady

flag. Dalam sub bab ini, nama masing-masing

model disingkat untuk alasan penyajian tabel. PSO-MRLM disingkat menjadi PSO, CSO-MRLM No Modification disingkat menjadi CSOnm, CSO-MRLM with inertia disingkat menjadi CSOi, dan CSO-MRLM steady flag disingkat menjadi CSOsf.

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.

Tabel 4. 3 Klasifikasi Data Iris

  Metode Iterasi Waktu (detik) Misklasifikasi PSO 2.2 0.02 0% CSOn m 1.7 0.02 0% CSOi 1.5 0.01 0% CSOsf 0.9 0.02 0%

4.3.2. 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.

Tabel 4. 4 Klasifikiasi Data Breast Cancer

  Metode Iterasi Waktu (detik) Misklasifikasi PSO 356 5.76 5.57% CSOn m 198 5.17 7.20% CSOi 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.

(14)

Tabel 4. 5 Klasifikasi Data WDBC   Metode Iterasi Waktu (detik) Misklasifikasi PSO 22.02 68.16 9.30% CSOn m 26.34 70.20 8.89% CSOi 30.23 64.74 8.83% CSOsf 23.45 65.79 9.01% 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.

Tabel 4. 6 Klasifikasi Data Pima

  Metode Iterasi Waktu (detik) Misklasifikasi PSO 4.6 0.05 35.70% CSOn m 2.9 0.07 35.04% CSOi 3.7 0.08 35.26% CSOsf 4.2 0.10 35.74%

4.3.5. 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

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 110.5 1.05 26.25% CSOn m 61.88 1.26 25.06% CSOi 503.8 8 8.90 23.53% CSOsf 133.1 3 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. 8 Klasifikasi Data Splice

  Metode Iterasi Waktu (detik) Misklasifikasi PSO 899,5 11,11 8,1% CSOn m 2596, 9 130,38 8,9% CSOi 627,5 25,31 9,3% CSOsf 521 26,13 9,3%

(15)

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.

Tabel 4. 9 Klasifikasi Data Haberman’s Survival

  Metode Iterasi Waktu (detik) Misklasifikasi PSO 7,7 0,07 11,76% CSOn m 12,3 0,18 11,72% CSOi 6,4 0,08 11,34% CSOsf 7,6 0,11 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 Iterasi Waktu (detik) Misklasifikasi PSO 61,8 0,58 21,5% CSOn m 317,6 3,87 22,0% CSOi 659,1 7,13 21,5% CSOsf 363,9 4,36 21,5% 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. 11 Klasifikasi Data Sonar

(16)

  Metode Iterasi Waktu (detik) Misklasifikasi PSO 1376,9 16,74 28,5% CSOn m 440,9 7,89 25,2% CSOi 673,6 10,14 31,3% CSOsf 2345,8 41,76 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.

Tabel 4. 12 Klasifikasi Data Ionosphere

  Metode Iterasi Waktu (detik) Misklasifikasi PSO 113,9 1,18 25,68% CSOn m 37 0,51 28,11% CSOi 2910, 7 35,05 26,49% CSOsf 133,1 1,79 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.

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

  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.

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 berbeda-beda 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.

(17)

Tabel 5. 2 Jumlah Data & Atribut 10 Set Data

No. Set data Jumlah

Data Jumlah Atribut 1 iris 100 4 2 breast cancer 683 9 3 WDBC 569 30 4 pima 768 8 5 credit approval 653 15 6 spline 1527 60 7 Haberman’s Survival 306 3 8 hepatitis 80 19 9 sonar 206 60 10 ionosphere 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. 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.

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.

  Gambar 5. 2 Grafik Jumlah Atribut Dengan Iterasi

6. Kesimpulan dan Saran

6.1.

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

(18)

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:

Springer-Verlag 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.

Gambar

Gambar 2. 1 Klasifikasi Dua Set Obyek Dari Dua Kelas   
Gambar 2. 2 Bagan Cat Swarm Optimization   
Gambar 2. 3 Train and Test (Sumber: Santosa, 2006)   
Gambar 3. 1 Algoritma CSO Klasifikasi
+7

Referensi

Dokumen terkait

Persentase ini merupakan perbandingan antara data testing (jumlah pengujian bernilai benar) dengan banyaknya data training sehingga akan menghasilkan berapa persen

Pada skripsi ini membahas tentang Hybrid algoritma Cat Swarm Optimization (CSO) dan Tabu Search (TS) untuk penyelesaian Permutation Flowshop Scheduling Problem (PFSP)..

Perhitungan kedekatan kasus pada data training dengan kasus pada data testing, diketahui dari 10 data 4 data termasuk kedalah kelas “1” atau terkena penyakit jantung

Hasil klasifikasi dari 197 data perceraian yang terjadi di kecamatan Pandaan menggunakan algoritma C4.5 berbasis Particle Swarm Optimization menghasilkan akurasi

pada bagian pertama menjadi data testing dan ke dua menjadi data training, setelah itu data akan di seleksi dengan menggunakan metode fitur seleksi dengan

Dari skenario uji yang kedua dengan data training 70% dari 61 sampel data dan data testing diambil 30% dari 61 sampel data secara random, didapatkan sebuah data acak dari

Tahap Testing Tahap Training Mulai Input dataset wajah bermasker L dan P Training data dengan K-NN, SVM, atau Random Forest Resize citra wajah Simpan data dalam array

Dari penelitian tersebut dapat dinyatakan bahwa klasifikasi data menggunakan algoritma naïve bayes dengan memperhatikan data training dan data testing pada beberapa penelitian