Analisis dan Implementasi Ant Colony Algorithm untuk Clustering Kurniawan Nur Ramadhani Program Studi Manajemen Informatika Politeknik Telkom, Bandung
[email protected] Abstrak Paper ini memaparkan tentang implementasi algoritma semut untuk melakukan salah satu task dalam Data Mining, yaitu clustering. Clustering merupakan sebuah task untuk mengelompokkan record berdasarkan tingkat kesamaannya. Dalam paper ini dijelaskan tentang algoritma semut dan bagaimana mengimplementasikan algoritma semut untuk proses clustering ke dalam bentuk software, kemudian software yang telah dibuat diuji. Hasil dari pengujian menunjukkan bahwa kinerja algoritma semut dalam melakukan proses clustering sangat tergantung dari proses pick dan drop yang dilakukan. Kata kunci: datamining, clustering, dissimilarity, grid, topographicmap Abstract This paper discribe about the implementation of ant colony algorithm on one of data mining task, that is clustering. Clustering is a task in data mining that groups the records by their similarity value. In this paper, there is explanation about ant colony algorithm, how to implement it for clustering in the software, and then software was tested. The result from the testing job was analized and summarized in the conclusion parthowed that the performance of ant colony algorithm for clustering is depend on the pick and drop function. Keywords: data mining, clustering, dissimilarity, grid, topographic map dianalogikan sebagai bahan makanan sedangkan 1. Pendahuluan semut merupakan agen dari algoritma yang bertugas Database saat ini menjadi hal yang biasa dalam mencari makanan dengan jarak tempuh seminimal sebuah sistem informasi. Namun yang menjadi mungkin (tiap node harus dilewati dengan jarak masalah adalah apa kesimpulan yang dapat diambil minimal). Sedangkan untuk implementasi dari dari kumpulan data tersebut. Beribu data yang algoritma ini pada proses Clustering, akan terdapat dihasilkan bisa menjadi tidak berguna kalau tidak beberapa perbedaan dibandingkan dengan algoritma bisa diekstraksi menjadi informasi yang bernilai semut yang biasa dipakai untuk kasus optimasi. strategis. Misalnya data perusahaan telekomunikasi Pada paper ini akan dipaparkan konsep hasil survey kenyamanan pengguna yang AntColonyAlgorithm (Algoritma Semut) untuk mengandung secara implisit informasi tentang faktorClustering lalu mengimplementasikan berdasarkan faktor yang mempengaruhi kenyamanan pelanggan. model yang telah dipaparkan dan melakukan Untuk mendapatkan informasi tersebutlah digunakan pengujian terhadap aplikasi yang telah dibuat. metode-metode yang ada dalam DataMining. Salah satu fungsionalitas dalam datamining 2. Data Mining adalah Clustering yang bertujuan untuk mengelompokkan data berdasarkan tingkat kesamaan Datamining merupakan salah satu bidang ilmu dari record yang dikelompokkan. Persamaan antar dalam informatika yang membahas tentang beberapa data dilihat menggunakan kedekatan jarak antar metode untuk menemukan informasi yang record pada grafik. tersembunyi dari sekumpulan data yang ada. Latar Hasil dari proses Clustering tidak selalu sama belakangnya adalah karena semakin banyaknya data untuk setiap algoritma, bahkan untuk satu algoritma sedangkan informasi yang ada sangatlah sedikit. bisa terjadi perbedaan hasil tergantung dari parameter Tahapan yang ada dalam datamining adalah[1]: yang mempengaruhi algoritma tersebut. 1. Pembersihan data untuk membuang data yang Salah satu algoritma yang dapat digunakan tidak konsisten dan noise, untuk Clustering adalah Ant Colony Algorithm atau 2. Seleksi atribut yang akan digunakan pada proses biasa disebut algoritma semut. Algoritma semut datamining, merupakan algoritma yang biasa digunakan untuk 3. Proses me-mining data dengan menggunakan kasus optimasi, misalnya dalam kasus Travelling algoritma datamining untuk menemukan SalesmanProblem. Inti dari algoritma ini adalah informasi (pola), meniru aksi yang dilakukan oleh koloni semut dalam 4. Proses evaluasi dan visualisasi dari informasi mencari dan mengangkut bahan makanan. Node (pola) yang ditemukan. 148
ISSN: 2088-8252
Adapun metode yang ada dalam datamining pada umumnya dapat dikelompokkan dalam dua kategori, yaitu[1]: 1. Predictivemethod yang digunakan untuk meramalkan kondisi dari input selanjutnya berdasarkan data yang ada saat ini. Biasanya digunakan untuk peramalan. 2. Descriptivemethod yang digunakan untuk menggambarkan pola yang ada pada data yang diproses. Sedangkan beberapa metode yang ada dalam datamining antara lain[1]: 1. Klasifikasi yaitu proses untuk mengelompokkan data berdasarkan kesamaan kelas yang biasanya berupa atribut tertentu dari data yang bersangkutan. 2. Clustering yaitu proses untuk mengelompokkan data berdasarkan nilai kesamaan antar data berbeda dengan klasifikasi di mana kelasnya telah diketahui sebelumnya. 3. Asosiasi yaitu proses untuk menemukan keterkaitan hubungan antar atribut dalam sebuah record dalam data. 4. Regresi yaitu proses untuk memprediksikan nilai selanjutnya dari variabel berdasarkan nilai-nilai dari variabel sebelumnya. 5. Deteksi anomali yaitu proses untuk mendeteksi adanya anomali (outlier) dari sekumpulan data yang diproses. 3. Clustering Prinsip utama dari clustering adalah memaksimalkan nilai similarity antar anggota kelompok yang sama dan meminimalkan nilai similarity untuk antar anggota kelompok yang berbeda[2]. Algoritma clustering secara umum dapat dibagi menjadi empat jenis[2]: 1. Partitioningmethod yang mengelompokkan data dengan mempartisi daerah di sekeliling data, contohnya algoritma K-Means. 2. Hierarchicalmethod yang mengelompokkan data dengan menggunakan hirarki (bisa top-down atau bottom-up), contohnya algoritma CURE. 3. Density-basedmethod yang mengelompokkan data berdasarkan kepadatan sebaran data, contohnya algoritma DBSCAN. 4. Grid-basedmethod yang menggunakan struktur data berbentuk grid, contohnya algoritma WaveCluster. Algoritma clustering yang baik harus memenuhi beberapa kriteria antara lain[2]: 1. Scalability yaitu mampu menangani data dalam usuran yang kecil maupun besar. 2. Mampu menangani berbagai jenis tipe atribut. 3. Menemukan bentuk-bentuk cluster yang unik.
ISSN: 2088-8252
4.
5. 6. 7.
8. 4.
Parameter input tidak terlalu rumit sehingga tidak menyulitkan user untuk mengontrol kualitas cluster yang terbentuk. Mampu menangani noise. Tidak terpengaruh urutan penyisipanrecord. Mampu menangani data yang berdimensi tinggi. Mudah dipahami dan mudah digunakan.
Ant Colony Optimization
AntColonyOptimization termasuk teknik pencarian multi agent yang sering digunakan untuk permasalahan optimasi, khususnya kombinatorial, yang terinspirasi oleh tingkah laku semut dalam suatu koloni. Algoritma ACO pertama kali diperkenalkan oleh Marco Dorigo pada tahun 1991yang kemudian dipublikasikan dengan nama Ant System (AS)[3]. Perilaku semut yang cukup menarik adalah ketika mereka mencari makan, di mana mereka dapat menemukan jalur terpendek antara sumber makanan dan sarang mereka. Ketika berjalan dari sumber makanan ke sarang dan sebaliknya, semut meletakkan suatu zat (yang disebut feromon) di sepanjang jalur yang mereka lalui. Ketika zat tersebut disekresikan sebagai isyarat seekor semut, maka semut yang lain dapat mengenalinya. Ketika mencari makan, pada awalnya semut akan berkeliling di daerah sekitar sarangnya secara acak. Begitu mengetahui ada makanan, semut akan menganalisa kualitas dan kuantitas makanan tersebut dan membawa beberapa bagian ke sarangnya. Dalam perjalanannya, mereka meninggalkan jejak berupa sejumlah zat kimia, yang disebut feromon. Feromon ini akan membimbing semut lain untuk menemukan sumber makanan. Jumlah feromon yang ditinggalkan oleh semut bergantung pada jumlah makanan yang ditemukan. Semakin banyak makanan yang didapat, semakin banyak pula jumlah feromon yang ditinggalkan. Sehingga semakin banyak semut yang melewati suatu jalur, semakin kuat pula jejak feromon yang terkumpul di jalur tersebut.
Gambar 1. Mekanisme pergerakan koloni semut [3]
Gambar di atas menunjukkan perjalanan semut berjalan dari titik A ke titik E. Pada awalnya ketika belum diberikan pembatas, maka semut akan berjalan dengan jumlah yang sama di sebelah kiri dan kanan garis pembatas. Ketika diberikan 149
penghalang, maka semut pada awalnya akan sama. Akan tetapi, lama kelamaan semut akan cenderung melewati sebelah kanan garis pembatas karena jarak yang ditempuh lebih pendek. Hal itu dikarenakan pengaruh feromon tadi. Langkah-langkah pada algoritma semut secara umum adalah[3]: a. Inisialisasi harga parameter-parameter algoritma. Parameter-parameter yang diinisialisasikan adalah : 10. Intensitas jejak semut antar kota dan perubahannya ( ij). 11. Banyak kota (n) termasuk koordinat (x,y) atau jarak antar kota (dij) serta kota berangkat dan kota tujuan. 12. Tetapan siklus-semut (Q). 13. Tetapan pengendali intensitas jejak semut ( ), nilai 14. Tetapan pengendali visibilitas ( ), nilai 15. Visibilitas antar kota = 1/dij ( ij). 16. Banyak semut (m). 17. Tetapan penguapan jejak semut ( ) , nilai harus > 0 dan < 1 untuk mencegah jejak pheromone yang tak terhingga. 18. Jumlah siklus maksimum (NCmax) bersifat tetap selama algoritma dijalankan, sedangkan ij akan selalu diperbaharui harganya pada setiap siklus algoritma mulai dari siklus pertama (NC=1) sampai tercapai jumlah siklus maksimum (NC=NCmax) atau sampai terjadi konvergensi. b. Inisialisasi kota pertama setiap semut. Setelah inisialisasi ij dilakukan, kemudian m semut ditempatkan pada kota pertama tertentu secara acak. c.
Pengisian kota pertama ke dalam tb list. Hasil inisialisasi kota pertama setiap semut dalam langkah 1 harus diisikan sebagai elemen pertama tb list. Hasil dari langkah ini adalah terisinya elemen pertama tb list setiap semut dengan indeks kota tertentu, yang berarti bahwa setiap tbk(1) bisa berisi indeks kota antara 1 sampai n sebagaimana hasil inisialisasi pada langkah 1. d.
Penyusunan rute kunjungan setiap semut ke setiap kota. Koloni semut yang sudah terdistribusi ke sejumlah atau setiap kota, akan mulai melakukan perjalanan dari kota pertama masing-masing sebagai kota asal dan salah satu kota lainnya sebagai kota tujuan. Kemudian dari kota kedua masing-masing, koloni semut akan melanjutkan perjalanan dengan memilih salah satu dari kotayang tidak terdapat pada tbk sebagai kota tujuan selanjutnya. Perjalanan 150
koloni semut berlangsung terus menerus sampai semua kota satu persatu dikunjungi atau telah menempati tbk. Jika s menyatakan indeks urutan kunjungan, kota asal dinyatakan sebagai tbk(s) dan kota-kota lainnya dinyatakan sebagai {N-tbk}, maka untuk menentukan kota tujuan digunakan persamaan probabilitas kota untuk dikunjungi sebagai berikut:
-tbk} dan = 0 untuk j lainnya,
(1)
dengan i sebagai indeks kota asal dan j sebagai indeks kota tujuan. e.
Perhitungan panjang rute setiap semut. Perhitungan panjang rute tertutup (length closed tour) atau Lk setiap semut dilakukan setelah satu siklus diselesaikan oleh semua semut. Perhitungan ini dilakukan berdasarkan tbk masingmasing dengan persamaan berikut: (2) dengan dij adalah jarak antara kota i ke kota j yang dihitung berdasarkan persamaan: (3) f.
Pencarian rute terpendek. Setelah Lk setiap semut dihitung, akan didapat harga minimal panjang rute tertutup setiap siklus atau LminNC dan harga minimal panjang rute tertutup secara keseluruhan adalah atau Lmin. g.
Perhitungan perubahan harga intensitas jejak kaki semut antar kota. Koloni semut akan meninggalkan jejak-jejak kaki pada lintasan antar kota yang dilaluinya. Adanya penguapan dan perbedaan jumlah semut yang lewat, menyebabkan kemungkinan terjadinya perubahan harga intensitas jejak kaki semut antar kota. Persamaan perubahan ini adalah : (4) Dengan adalah perubahan harga intensitas jejak kaki semut antar kota setiap semut yang dihitung berdasarkan persamaan untuk (i,j)
kota asal dan kota tujuan dalam tbk untuk (i,j) lainnya
h.
(5)
Perhitungan harga intensitas jejak kaki semut antar kota. ISSN: 2088-8252
Harga intensitas jejak kaki semut antar kota pada semua lintasan antar kota ada kemungkinan berubah karena adanya penguapan dan perbedaan jumlah semut yang melewati. Untuk siklus selanjutnya, semut yang akan melewati lintasan tersebut harga intensitasnya telah berubah. Harga intensitas jejak kaki semut antar kota untuk siklus selanjutnya dihitung dengan persamaan:
pick:=pick_item?(f(i)) end while end if end for end
Di mana untuk mengambil item dari grid (pick) dan menaruh item pada grid (drop) digunakan fungsi probabilitas, yakni:
(6) Atur ulang harga perubahan intensitas jejak kaki semut antar kota. Untuk siklus selanjutnya perubahan harga intensitas jejak semut antar kota perlu diatur kembali agar memiliki nilai sama dengan nol.
(7)
i.
j.
Pengosongan tb list, dan ulangi langkah (c) jika diperlukan. Tb list perlu dikosongkan untuk diisi lagi dengan urutan kota yang baru pada siklus selanjutnya, jika jumlah siklus maksimum belum tercapai atau belum terjadi konvergensi. Algoritma diulang lagi dari langkah (c) dengan harga parameter intensitas jejak kaki semut antar kota yang sudah diperbaharui. 5.
Ant Clustering Algorithm
Algoritma semut yang dipakai untuk proses Clustering termasuk jenis algoritma grid-based clustering karena memetakan data ke dalam bentuk grid yang tersebar secara acak. Ada beberapa perbedaan antara algoritma semut yang biasa dengan algoritma semut yang dipakai untuk Clustering. Salah satu perbedaan yang mencolok adalah tidak adanya konsep feromon. Namun, yang menjadi pemicu dari kerja algoritma semut adalah tingkat kepadatan (density) dari item yang tersebar pada grid. Secara umum, algoritma semut untuk proses Clustering dapat dituliskan sebagai berikut[4]: begin INITIALISATION PHASE Randomly scatter data items on the toroidal grid for each j in 1 to #agents do i:=random_select(remaining_items ) pick_up(agent(j),i) g:=random_select(remaining_empty _grid_locations) place_agent(agent(j),g) end for MAIN LOOP for each it_ctr in 1 to #iterations do j:=random_select(all_agents) step(agent(j),stepsize) i:=carried_item(agent(j)) drop:=drop_item?(f(i)) if drop=TRUE then while pick=FALSE do i:=random_select(free_data_items)
ISSN: 2088-8252
(8) Sedangkan untuk f(i) merupakan fungsi ketetanggaan yang digunakan untuk mengukur nilai kepadatan (density) dari item yang bersangkutan. Nilai f(i) diukur dengan menggunakan persamaan:
(9) Dimana: dij = indeks dari dokumen pada tabel. |S| = ukuran ketetanggaan di sekeliling dokumen. d(k,dij) = nilai dissimilarity antara dokumen k yang dibawa semut dengan dokumen dij. N = jumlah total dokumen.
persamaan: (10)
6. Pengujian Sistem Pengujian sistem dilakukan dengan meneliti korelasi antara parameter yang diinisialisasi di awal sistem dengan hasil dari clustering yang dilakukan. Untuk melakukan proses ini, digunakan sebuah koefisien korelasi yang dapat menjadi tolak ukur dari korelasi antara parameter dengan hasil dari clustering. Koefisien yang digunakan adalah koefisien korelasi Pearson, di mana nilai dari korelasi Pearson dapat diukur dengan menggunakan persamaan[4]: (11)
Di mana: = Nilai koefisien korelasi Pearson. x,y = Variabel yang dicari korelasinya. N = Jumlah sebaran data.
151
Variabel yang akan dicari nilai korelasinya adalah nilai dissimilarity antar dokumen dengan nilai dari distance antar dokumen pada grid setelah dilakukan proses clustering. Semakin tinggi nilai dari korelasi, menunjukkan bahwa sistem semakin baik karena sistem yang baik adalah sistem yang adaptif terhadap kondisi data. Pengujian dilakukan dengan melakukan perubahan pada beberapa parameter kinerja agen semut, yakni: 1. kp (parameter yang digunakan semut untuk mengambil dokumen dari grid). 2. kd (parameter yang digunakan semut untuk menaruh dokumen pada grid). 3. Pengaruh nilai S (jumlah tetangga di sekitar dokumen). 4. Pengaruh ukuran langkah agen semut (step size). 5. Pengaruh penggunaan memori terhadap kinerja algoritma semut pada sistem.
prosedur Drop terhadap dokumen. Pengaruh dari perubahan nilai kd terhadap kinerja sistem dapat diamati pada grafik dan gambar di bawah ini: Korelasi Pearson 0,7 0,6 0,5 0,4
Korelasi Pearson
0,3 0,2 0,1 0 0
0,2
0,4
0,6
0,8
1
Kd
Gambar 3 Pengaruh Perubahan k d Terhadap Nilai Korelasi Pearson
Dari grafik di atas, terlihat jelas bahwa semakin besar nilai kd, maka nilai dari korelasi Pearson akan semakin kecil. Hal ini disebabkan oleh nilai dari kd yang tinggi, akan mengakibatkan nilai probabilitas dari agen semut untuk drop (menaruh) dokumen yang dibawa oleh agen semut ke grid menjadi berkurang (lihat persamaan (8)) sehingga dokumen yang memiliki kemungkinan untuk masuk ke dalam anggota sebuah cluster bisa jadi tidak ditaruh (drop) pada cluster yang bersangkutan. Akibatnya, pengaruh dari nilai dissimilarity antar dokumen terhadap nilai distance antar dokumen pada grid berkurang.
Dari pengujian yang telah dilakukan, diperoleh hasil sebagai berikut: 1. Dengan nilai kp yang besar, maka agen akan lebih cenderung untuk melakukan prosedur Pick terhadap dokumen. Pengaruh dari perubahan nilai kp terhadap kinerja sistem dapat diamati pada grafik dan gambar di bawah ini: Korelasi Pearson 0,7
3.
0,6 0,5 0,4
Korelasi Pearson
0,3 0,2 0,1 0 0
0,2
0,4
0,6
0,8
1
Kp
Gambar 2 Pengaruh Perubahan kp Terhadap Nilai Korelasi Pearson
Dari grafik terlihat bahwa nilai dari koefisien Pearson paling tinggi untuk kp = 0.1 dan menurun untuk nilai kp setelahnya. Hal ini karena berdasarkan persamaan (7), agen semut dengan nilai kp lebih tinggi akan lebih cenderung untuk mengambil dokumen pada grid sehingga hasil clustering akan cenderung untuk lebih tersebar. Nilai dari koefisien Pearson akan mengalami penurunan drastis untuk nilai kp > 0.5. Hal ini karena untuk nilai kp yang lebih dari 0.5, pengaruh dari nilai dissimilarity antar dokumen terhadap nilai distance antar dokumen pada grid berkurang karena kecenderungan untuk pick (mengambil) dokumen pada grid sudah sangat tinggi. 2.
152
Dengan nilai kd yang besar, maka agen akan lebih cenderung untuk tidak melakukan
Semakin tinggi nilai dari |S|, sistem akan lebih kompleks dalam menghitung nilai density karena sesuai dengan persamaan (3.2), jika nilai |S| besar, maka nilai dissmilarity yang harus dicari juga semakin banyak dan proses akan berjalan lebih lambat. Pengaruh dari nilai |S| terhadap kinerja sistem dalam Clustering dapat dilihat pada grafik dan gambar di bawah ini: Korelasi Pearson 0,7 0,6 0,5 0,4
Korelasi Pearson
0,3 0,2 0,1 0 0
2
4
6
8
10
Nila i S
Gambar 4 Pengaruh Perubahan Nilai |S| Terhadap Nilai Korelasi Pearson
Dari grafik di atas, terlihat bahwa nilai dari korelasi Pearson antara nilai dissimilarity antar dokumen dengan nilai distance antar dokumen pada grid mengalami fluktuasi yang sangat drastis seiring meningkatnya nilai |S|. Hal ini menunjukkan bahwa kenaikan nilai |S| tidak membawa dampak yang signifikan terhadap ISSN: 2088-8252
laju kenaikan nilai korelasi Pearson. Hal ini dapat disebabkan karena berdasarkan persamaan (9), yang mempengaruhi nilai dari density adalah dokumen yang ada di sekitar dokumen yang dicari nilai density-nya. 4. Ukuran langkah agen semut akan menentukan jumlah langkah yang dibutuhkan bagi agen semut dalam membawa dokumen ke cluster yang sesuai. Pengaruh perubahan nilai step size terhadap kinerja sistem dapat diamati pada grafik dan gambar di bawah ini: Korelasi Pearson 0,5 0,4
penggunaan memori untuk menunjang sistem agar bekerja lebih optimal dengan cara: 1) Agen semut akan mengingat beberapa dokumen yang dibawa terakhir. 2) Ketika agen semut membawa dokumen, agen akan langsung mencari nilai dissimilarity antara dokumen yang dibawa dengan nilai dissimilarity dari dokumen yang dibawa terakhir. 3) Hal ini akan meningkatkan kinerja dalam mengklaster karena agen tidak perlu mencari secara acak arah geraknya, karena sudah dibantu dengan adanya nilai dissimilarity yang telah dihitung sebelumnya.
0,3 Koefisien Pearson
c
0,2
7.
0,1 0 0
50
100
150
Stepsize
Gambar 5 Pengaruh Perubahan Nilai Stepsize Terhadap Nilai Korelasi Pearson
5.
Dari grafik di atas, terlihat bahwa nilai dari korelasi Pearson antara nilai dissimilarity antar dokumen dengan nilai distance antar dokumen pada grid mengalami fluktuasi yang sangat drastis seiring meningkatnya nilai stepsize. Hal ini menunjukkan bahwa kenaikan nilai stepsize tidak membawa dampak yang signifikan terhadap laju kenaikan nilai korelasi Pearson. Hal ini dapat disebabkan karena berdasarkan algoritma yang dipakai, nilai stepsize bukanlah merupakan parameter yang menentukan kekonvergensian dari dokumen ke arah terbentuknya cluster yang diharapkan. Nilai stepsize pada intinya hanya akan mempengaruhi jarak perpindahan dari dokumen yang mengalami proses pick dan drop yang dilakukan oleh agen semut. Perbedaan kinerja dari sistem yang menggunakan memori dan sistem yang tidak menggunakan memori dapat dilihat dari gambar di bawah ini:
Kesimpulan
Algoritma semut yang digunakan untukproses clustering memiliki beberapa kelebihan di antaranya tidak terpengaruh oleh bentuk dan ukuran dari cluster, karena sistem akan mengacak dokumen pada grid dan mengelompokkannya berdasarkan nilai dissimilarity sehingga sistem tidak terpengaruh oleh informasi bentuk serta ukuran dari cluster. Kinerja dari algoritma semut ditentukan oleh kecenderungannya untuk melakukan proses pick dan drop terhadap dokumen. Pada kasus ini, nilai parameter kpdan kd yang paling baik adalah 0.1 dan kinerja sistem akan semakin berkurang seiring dengan meningkatnya nilai kp dan kd. Hal ini disebabkan nilai yang terlalu tinggi pada kp dan kd akan cenderung mengakibatkan sistem lebih tergantung kepada kedua nilai parameter tersebut dibandingkan ketergantungannya terhadap nilai dari density sebuah dokumen. Nilai dari stepsize yang digunakan diusahakan tidak terlalu rendah agar jumlah iterasi yang dibutuhkan tidak terlalu banyak dan diusahakan pula agar nilai stepsize tidak terlalu tinggi karena jika terlalu tinggi akan menyulitkan sistem untuk konvergen. Penggunaan memori pada agen semut dapat meningkatkan kinerja sistem. Dengan penggunaan memori, sistem tidak perlu bersusah payah melakukan trial dengan mencari arah langkah semut karena adanya bantuan memori dalam menentukan arah langkah semut.
Daftar Pustaka Gambar 5 Pengaruh Memori Terhadap Kinerja Sistem
Dari gambar di atas, sangat terlihat jelas bahwa sistem yang dilengkapi dengan memori akan lebih baik kinerjanya dalam melakukan proses clustering dibandingkan dengan sistem yang tidak menggunakan memori. Hal ini disebabkan ISSN: 2088-8252
[1]
J. Han dan M. Kamber:Data Mining: Concepts and Techniques. CA: Morgan Kaufmann, San Francisco.2001.
[2]
Jain Anil K:Algorithms for Clustering Data : Prentice Hall, New Jersey.1998.
[3]
Marco Dorigo dan Thomas Stutzle:Ant Colony Optimization. The MIT Press, Massachusetts. 2004.
153
[4]
154
Monmarche N:On data clustering with artificial ants. In: Freitas, A.A. (Ed.) Data Mining with Evolutionary Algorithms: Research Directions – Papers from the AAAI Workshop. AAAI Press, pp 23-26. 1999.
ISSN: 2088-8252