DOKUMENTASI
SWARM INTELLIGENCE
KELOMPOK : 6 Kelas : A
Oleh:
Titus Christian
Diajeng Sekar Seruni
Junda Alfiah Zulqornain
Yurdha Fadhila Hernawan
Audi Nuermey Hanafi
PENGANTAR
MK Swarm Intelligence adalah disiplin keilmuan dari sistem
cerdas yang berhubungan dengan sistem alami dan buatan, yang terdiri
dari banyak individu yang mengkoordinasikan menggunakan konsep
kontrol desentralisasi (kecerdasan sosial dalam berkelompok) dan
self-organisasi (kecerdasan personal). Secara khusus, Swarm Intelli-
gence berfokus pada perilaku kolektif yang dihasilkan dari interaksi
lokal dari individu dengan satu sama lain dan dengan lingkungan
mereka. Swarm Intelligence mempelajari perilaku di alam dari seka-
wanan koloni burung, semut, lebah, dan lainnya dalam penyelesaian
kasus pada berbagai bidang. Hal yang paling utama dalam Swarm In-
telligence adalah bagaimana membuat representasi individu sebagai
solusi yang sesuai dengan kasus yang diselesaikan.
2019
Daftar Isi
Judul ...................................................................................................... i
Daftar Isi ............................................................................................... ii
Daftar Tabel......................................................................................... iii
Daftar Gambar ..................................................................................... iv
Daftar Source Code .............................................................................. v
BAB 1 Tugas Kelompok .............................................................. 1
Tugas 1 (Konsep Swarm Intelligence) ............................. 1
Daftar Pustaka .................................................................................... 11
ii
Daftar Tabel
iii
Daftar Gambar
iv
Daftar Source Code
v
BAB 1 Tugas Kelompok
1
heuristic bersifat problem dependent (bergantung pada jenis permasa-
lahan) dan metode meta-heuristic bersifat problem independent yang
berarti tidak bergantung pada jenis permasalahan.
Swarm intelligence memiliki beberapa karakteristik, yaitu:
1. Representasi solusi harus didesain ulang untuk setiap kasus
yang berbeda.
2. Tidak selalu tercapainya solusi global optimal karena ter-
jebak pada local optimal atau konvergensi dini.
3. Terdapat beberapa mekanisme alami yang belum dapat dipa-
hami.
4. Setiap masalah optimasi yang akan diselesaikan harus dide-
finisikan dengan baik, mulai dari apa saja inputnya,
bagaimana representasi solusinya, apa saja constraintnya,
dan bagaimana perhitungan fitness/costnya.
Representasi solusi merupakan vektor/matriks sederhana mau-
pun kompleks yang bentuknya dapat diubah secara dinamis sesuai
dengan cara pandang atau pemahaman seseorang mengenai masalah
yang akan diselesaikannya. Representasi solusi adalah individu dari
suatu populasi yang memiliki nilai posisi tertentu, di mana nilai tersebut
menyatakan rangkaian solusi yang dibawa oleh masing-masing indi-
vidu sebagai kandidat solusi optimal apabila telah mencapai kondisi
konvergen.
Terdapat banyak algoritma swarm intelligence, seperti yang
dapat dilihat pada Gambar 1.1, di mana masing-masing algoritma mem-
iliki keunikannya sendiri. Setiap algoritma memiliki kelebihan dan
keterbatasannya, sehingga penting untuk memilih algoritma mana yang
paling cocok untuk menyelesaikan suatu permasalahan. Beberapa algo-
ritma swarm intelligence yang umum digunakan antara lain yaitu:
1. Particle Swarm Optimization (PSO) yang diinspirasi oleh
sekumpulan burung.
2. Ant Colony Optimization (ACO) yang diinsirasi oleh sekum-
pulan semut.
3. Artificial Bee Colony (ABC) yang diinspirasi oleh sekum-
pulan lebah.
4. Cat Swarm Optimization (CSO_a) yang terinspirasi dari
sekumpulan kucing/ harimau/macan.
5. Cockroach Swarm Optimization (CSO_b) yang terinspirasi
dari sekumpulan kecoa.
2
Gambar 1.1 Macam-macam Algoritma Swarm Intelligence
3
banyak pilihan teknik di dalamnya yang dapat digunakan untuk men-
goptimalkan pencarian atau penelusuran solusi untuk berbagai macam
permasalahan yang berbeda. Framework ini didasarkan pada intuisi
ataupun aturan-aturan empiris. Secara umum, konsep swarm intelli-
gence dapat diilustrasikan seperti pada Gambar 1.2.
4
1. Direct communication merupakan komunikasi eksplisit yang
terjadi antar individu. Contohnya pada algoritma PSO, yang
termasuk direct communicationa dalah Update Pbest, Update
Gbest, Update kecepatan partikel, dsb.
2. Indirect communication merupakan komunikasi implisit
yang terjadi antar individu melalui lingkungan sekitarnya.
Indirect communication dikenal juga sebagai komunikasi
stigmergy, yaitu tanggapan yang diterima oleh suatu individu
dari lingkungannya ketika individu lainnya memberikan aksi
tertentu ke lingkungan tersebut.
5
algoritma PSO memiliki ukuran swarm jauh lebih kecil
dibandingkan dengan algoritma evolusioner.
Partikel
Dalam suatu swarm partikel merupakan individu yang
merepresentasikan solusi penyelesaian masalah. Setiap partikel
mempunyai kecepatan dan posisi yang telah ditentukan oleh
representasi solusi saat itu.
Personal Best
Personal Best atau biasa kita kenal dengan istilah pBest
merupakan posisi terbaik yang pernah dicapai partikel. Kita dapat
menentukan pBest dengan cara membandingkan fitness pada posisi
partikel saat ini ddengan sebelumnya. Nantinya pBest akan
digunakan untuk menentukan solusi terbaik.
Global Best
Global Best atau biasa disebut dengan istilah gBest ini
merupakan posisi terbaik partikel yang didapat dari perbandingan
nilai fitness terbaik dari keseluruhan partikel dalam swarm. pBest
yang sudah didapatkan sebelumnya akan dibandingkan satu dengan
yang lain untuk menentukan pBest mana yang akan menjadi gBest.
Kecepatan
Kecepatan atau velocity (v) merupakan vector yang
menentukan arah perpindahan posisi partikel. Perubahan velocity
ini dapat kita jumpai pada setiap iterasi yang bertujuan untuk
memperbaiki posisi partikel semula.
Bobot Inersia
Bobot inersia atau inertia weight (w) berfungsi untuk
mengontrol dampak dari perubahan velocity yang diberikan oleh
partikel.
Koefisien akselerasi
Koefisien akselerasi merupakan factor pengontrol
perpindahan dalam satu iterasi. Koefisien akselerasi c1 dan c2 ini
akan mengontrol sejauh mana partikel-partikel tersebut berpindah
tempat. Kita dapat menentukan sendiri nilai koefisien c1 dan c2.
Namun pada umumnya nilai c1 dan c2 adalah sama yaitu dalam
rentang 0 sampai4.
6
Berikut pseudocode algoritma PSO:
7
𝑡
𝐺𝑏𝑒𝑠𝑡𝑔,𝑗 = posisi pBest keseluruhan terbaik pada global ke-𝑔
dan dimensi ke-𝑗 pada iterasi ke- 𝑡
𝑡
𝑥𝑖,𝑗 = posisi partikel ke-𝑖 dan dimensi ke-𝑗 pada iterasi ke- 𝑡
7. Selanjutnya, update posisi dengan rumus seperti persamaan
nomor 1.2
𝑡+1
𝑥𝑖,𝑗 = 𝑥𝑡𝑖,𝑗 + 𝑣𝑡+1
𝑖,𝑗 (1.2)
Keterangan:
𝑡+1
𝑥𝑖,𝑗 = posisi partikel ke-𝑖 dan dimensi ke-𝑗 pada iterasi ke- 𝑡+1
𝑡
𝑥𝑖,𝑗 = posisi partikel ke-𝑖 dan dimensi ke-𝑗 pada iterasi ke- 𝑡
𝑡+1
𝑣𝑖,𝑗 = kecepatan pada partikel ke- 𝑖 dan dimensi ke- 𝑗 pada
iterasi ke- 𝑡 + 1
Berikut rumus Sigmoid dan update posisi (untuk binary code)
pada persamaan 1.3:
𝑡 1
𝑠𝑖𝑔(𝑣𝑖,𝑗 )= −𝑣𝑡𝑖,𝑗
𝑑𝑖𝑚𝑎𝑛𝑎 𝑗 = 1,2,3, … 𝑑 (1.3)
1+ 𝑒
Keterangan:
𝑡
𝑒 −𝑣𝑖,𝑗 = nilai eksponensial
𝑡
Setelah itu, selanjutnya membandingan nilai 𝑠𝑖𝑔(𝑣𝑖,𝑗 ) dengan
𝑡
nilai 𝑥𝑖,𝑗 .
𝑡+1 𝑡 𝑡+1
𝑥𝑖,𝑗 = 1 jika rand[0,1] < 𝑠𝑖𝑔(𝑣𝑖,𝑗 ) dan 𝑥𝑖,𝑗 = 0 jika kondisi
tersebut bernilai false.
8. Setelah melakukan update kecepatan, dan posisi, selanjutnya
menghitung nilai fitness tiap partikel.
9. Lalu update pBest dan gBest.
10. Lakukan pengulangan langkah 5-9 sampai menjumpai kondisi
berhenti.
11. Proses berhenti
8
1.2.2 Studi Kasus : Maksimasi Fungsi Sederhana
1.2.3 Studi Kasus: Seleksi Fitur (PSO-KNN)
1.2.4 Termination Condition
Kondisi berhenti merupakan suatu hal/ kondisi yang
menghentikan iterasi/perulangan dalam suatu proses. Dalam algoritma
PSO, perlu adanya kondisi berhenti untuk menemukan solusi yang
optimal. Berikut 3 kondisi berhenti/ termination condition yang umum
digunakan pada algoritma PSO:
1. Iterasi berhenti saat sudah mencapai iterasi maksimum. Iterasi
maksimum ini sebelumnya sudah ditentukan berdasarkan
beberapa kali pengujian.
2. Iterasi berhenti ketika diketahui tidak terlihat perubahan yang
signifikan. Hal tersebut menandakan bahwa proses pencarian
solusi sudah mencapai konvergen.
3. Iterasi dihentikan ketika sudah mencapai t satuan waktu (t ≥
tmax) atau dapat juga dengan mengkombinasikan t satuan waktu
dengan banyaknya evaluasi fungsi yang telah dijalankan.
Dari ketiga kondisi berhenti tersebut, umumnya kondisi ke-1
yang sering digunakan dalam algoritma PSO. Namun kondisi 2 dan 3
juga dapat digunakan sesuai kasus dan kompleksitas permasalahan
yang akan diselesaikan. Berikut salah satu contoh pengujian
konvergensi berdasarkan perubahan nilai fitness:
9
Gambar 1.5 Grafik Konvergensi
Dapat kita lihat pada Gambar 1.5 garis yang lurus tanpa naik
dan turun dapat dikatakan pada kondisi konvergen. Grafik pada Gambar
2.1 diatas berfungsi untuk memastikan bahwa nilai iterasi maksimum
yang digunakan pada proses pencarian sudah melewati uji tersebut.
Kondisi berhenti yang benar adalah kondisi berhenti setelah mencapai
konvergen, bukan sebaliknya.
10
Daftar Pustaka
11