Pilar Ke-3 Computational Intelligence: Swarm Intelligence

Pada bagian 1 dan 2, kita telah membahas Pilar Ke-1 Computational Intelligence: Neural Network dan Pilar Ke-2 Computational Intelligence: Fuzzy Logic. Pada bagian ini kita akan membahas pilar CI yang ketiga yaitu swarm intelligence.

Pilar 3 – Swarm Intelligence

Dengan CI, ada peluang sebesar 50% bahwasanya mesin akan mampu mengerjakan tugas-tugas manusia dengan lebih baik yaitu sekitar tahun 2060. Saat inipun mesin sudah mulai mampu mendengar, melihat dan berinteraksi secara sosial. Tantangan terberat bagi pengembang mesin cerdas adalah bagaimana meningkatkan performa dari metode atau algoritma atau model CI yang digunakan. Contoh performa adalah akurasi, efisiensi dan stabilitas, yang biasa dinyatakan sebagai variabel terikat atau variabel output atau dependent variable.

Performa tersebut bergantung dari parameternya, dinyatakan sebagai variabel bebas atau variabel input atau independent variable.  Pada NN dan FL, performanya bergantung dari parameter-parameter seperti jumlah node pada lapisan tersembunyi NN dan tipe fungsi keanggotaan yang digunakan pada FL.

Para pengikut aliran analitik akan menentukan parameter masukan berdasarkan prosedural analitik dan pembuktian matematis yang ketat. Namun cara demikian cenderung memakan waktu dan effort yang besar. Semakin banyak parameter-parameter yang dicari maka semakin lama prosesnya mendapatkannya.

Swarm intelligence (SI) menawarkan cara unik dalam menentukan parameter-parameter tersebut. SI merupakan algoritma-algoritma koloni tiruan yang terinspirasi dari makhluk hidup seperti hewan bahkan sel ataupun protein di dalam tubuh. SI kadang dirujuk juga sebagai bio-inspired computing atau nature-inspired metaheuristics atau evolutionary computing. Sebenarnya masing-masing memiliki perbedaan, namun tidak akan dibahas disini.

Algoritma-algoritma SI tersebut menjanjikan alternatif cepat dan sederhana untuk mencari parameter optimal suatu fungsi. Ada tiga elemen utama yang perlu diperhatikan pada algoritma SI yaitu populasi, fungsi objektif, dan mekanisme untuk meng-update populasi:

  • Populasi terdiri dari para anggota yang merupakan kandidat-kandidat solusi dari fungsi objektif yang ingin dioptimalkan. Kondisi awal anggota dibangkitkan secara acak.
  • Setiap anggota dari populasi akan dievaluasi berdasarkan fungsi objektif. Fungsi objektif dapat berupa fungsi untuk mencari hasil minimal (disebut juga cost function atau loss function) dan dapat juga berupa fungsi untuk mencari hasil maksimal (disebut juga sebagai fitness function atau utility function).
  • Setiap kandidat solusi dari anggota harus di-update agar menghasilkan solusi yang lebih baik. Pada setiap proses update populasi, setiap anggota akan memanfaatkan solusi terbaik yang ditemukan oleh anggota lainnya. Update populasi dapat dilakukan berulang kali sampai solusi yang paling baik ditemukan.

Contoh algoritma SI yang populer adalah particle swarm optimization, artificial immune system dan artificial bee colony (ABC), masing-masing diturunkan dari perilaku cerdas kelompok burung, antibodi dan lebah. Ilustrasi algoritma ABC diberikan pada gambar 4.

Singkatnya, terdapat lebah yang bertugas untuk menemukan sumber nektar baru (scout bees). Jika scout bees berhasil menemukan lokasi nektar maka mereka akan kembali ke sarang dan memberikan isyarat lokasi sumber nektar kepada lebah lainnya (forager bees) dengan cara seperti menari. Setelah mengikuti isyarat scout bees, maka forager bees akan mengambil nektar sesuai lokasi. Proses ini dilakukan secara berulang-ulang.

Gambar 4.  Ilustrasi koloni lebah bekerja sama untuk mencari nektar dan menjaga stok makanan.

Contoh kasus: marilah kita lihat bagaimana algoritma SI seperti ABC digunakan untuk mencari utility function dengan sebuah kisah sintetik:

Anjasmoro, seorang mahasiswa cerdas di prodi teknik informatika, yang memiliki paman berprofesi petani di kampung. Singkat cerita, Anjasmoro berhasil memodelkan hubungan antara produksi tahunan Z kopi pamannya terhadap dua parameter: (1) jumlah pupuk yang diberikan X dan (2) jumlah air diterima tanaman kopi tersebut Y. Misalkan, variabel-variabel tersebut dapat dinyatakan sebagai sebuah fungsi utility Z=f(X,Y), yang dapat diplot menjadi kurva 3D seperti gambar 5 sebelah kiri. Note: fungsi tersebut sebenarnya adalah sebuah fungsi sinc, yaitu sebuah varian dari fungsi sinus.

Gambar 5. Ilustrasi cara kerja algoritma swarm intelligence: (kiri) kurva 3D dari fungsi utility yang akan dimaksimalkan, (kanan) kurva yang sama namun dilihat dari atas.

Tujuan Anjasmoro adalah mencari nilai X dan nilai Y yang dapat menghasilkan produksi kopi tahunan yang maksimal. Jika ia menggunakan algoritma ABC maka populasi lebahnya dapat direpresentasikan sebagai titik-titik hitam yang akan mencari solusi yang lebih baik (pada contoh ini yaitu titik kurva tertinggi) dengan cara meng-update lokasi nektarnya. Setelah beberapa kali melakukan update maka diharapkan solusi optimal (maksimal) dapat ditemukan.

Berikutnya adalah tugas pamannya Anjasmoro untuk menjaga jumlah pupuk dan air sesuai dengan solusi yang telah ditemukan algoritma SI. Sehingga produksi kopi mereka bisa mencapai hasil yang maksimal. Kisah ini merupakan ilustrasi belaka dan penggunaan algoritma SI tentunya tidak terbatas pada optimasi produksi pertanian, melainkan dapat digunakan untuk fungsi matematika berbentuk apapun, termasuk untuk meningkatkan performa metode-metode AI atau CI lainnya.

Kesimpulan

Ketiga pilar mendasar yang telah dibahas memiliki kelebihan dan kekurangannya masing-masing. Oleh karena itu, banyak metode yang terus dikembangkan seperti adaptive neurofuzzy inference system dan neuroevolution untuk menghasilkan sistem AI yang lebih maju. CI juga kadang dirujuk sebagai soft computing, dengan penambahan aspek ketidakpastian yaitu probabilistic reasoning. Tujuan akhir dari CI adalah untuk mengembangkan sistem yang benar-benar mampu meniru perilaku manusia. Oleh karena itu metode-metode yang dikembangkan harus tetap mampu memberikan solusi optimal walaupun informasi yang tersedia bersifat tidak pasti, tidak jelas dan tidak lengkap.

Aplikasi menarik dari CI dapat anda baca di artikel 3 Aplikasi Data Science yang akan Mengubah Kehidupan Sosial.

Habibullah Akbar, PhD