Penerapan Adaptive Neuro Fuzzy Inference System Untuk Penentuan Beasiswa Menggunakan Matlab
Table of Contents
Sobat Blogger, Adaptive Neuro Fuzzy Inference System adalah metode hasil persilangan antara metode Fuzzy dengan metode Jaringan Syaraf Tiruan (JST). Oleh karenanya, ANFIS juga dikenal dengan sebutan metode hibrida. ANFIS membuat rule berdasarkan data yang di training melalui mekanisme mirip dengan jaringan syaraf tiruan.
Metode yang diprakarsai oleh Takagi, Sugeno dan Kang (TSK) pada tahun 1985 ini bertujuan untuk memperoleh rule yang berasal dari hubungan antara masukan dan keluaran suatu system. Prinsip dasarnya adalah :
If x is A and y is B then z = f(x,y)
Dimana, A dan B adalah set Fuzzy sedangkan z merupakan fungsi dalam bentuk crisp (bukan fuzzy). Sebenarnya, prinsip kerja dari ANFIS hamper serupa dengan Jaringan Syaraf Tiruan, dimana untuk membentuk suatu model diperlukan data training beserta targetnya (supervised learning). Hasil pembelajaran JST adalah jaringan yang memiliki bobot (weight), sedangkan ANFIS akan menghasilkan Fuzzy Inference System yang telah memiliki rule-based.
Baiklah kawan, saya tidak perlu panjang lebar dalam mengulas teori ANFIS, karena sudah banyak literature yang sudah membahasnya dengan detail dan komprehensif. Sekarang saatnya kita menuju ke studi kasus, yaitu mengintegrasikan antara teori ANFIS dengan system pengambil keputusan untuk penentuan beasiswa.
Bagaimana kita bias menentukan siapa mahasiswa yang cocok untuk mendapatkan beasiswa ? Langkah pertama yang perlu diambil adalah mengambil sebauh data kepada kampus lain dengan mengambil data mahasiswa yang lolos seleksi beasiswa maupun yang tidak lolos seleksi. Data itu diharapkan akan menjadi data knowledge sehingga dapat diterapkan dalam sebuah system untuk pengambil keputusan. Data knowledge tersebut dapat disebut sebagai data training. Tentu saja dalam implementasi yang lebih mendalam, data yang digunakan sebagai data training haruslah data yang berjumlah besar (big data). Data yang saya gunakan sebagai training ini, hanya sebatas data kecil agar dapat dipelajari dengan mudah.
Data Training pada Excel |
Maksud dari kolom perolehan beasiswa pada table diatas adalah bernilai 1 apabila mahasiswa mendapatkan beasiswa dan bernilai 0 apabila gagal mendapatkan beasiswa.
Fuzzy Inference System untuk Training data beasiswa
Langkah berikutnya adalah menggali informasi tersembunyi dari sekumpulan data perolehan beasiswa yang telah tersedia diatas, untuk kemudian kita cari knowledge data tersebut. Knowledge yang dicari dari metode ANFIS adalah rule pada fuzzy inference system (FIS). Secara prinsip adalah melakukan pembelajaran terhadap data training agar diperoleh hasil sesuai dengan target. Target dalam hal ini adalah kolom paling kanan yaitu perolehan beasiswa.
Data training yang saya buat pada excel, harus dipindah pada file .dat pada notepad agar lebih mudah diproses. Hasil dari data yang telah saya pindah dari excel seperti berikut :
Data Training pada Notepad |
Sekali lagi, jangan disimpan dengan format .txt meskipun format default dari notepad adalah .txt, alasannya simple, karena matlab tidak dapat mendeteksi format .txt. So, format penyimpanan adalah . dat. Lantas, letakkan file tersebut satu folder dengan directory Matlab.
Berikutnya, kita mulai menapaki langkah serius dengan Matlab. Kita tidak perlu repot-repot untuk ngoding sampai teler hanya untuk membuat program ANFIS. Karena Toolbox matlab pun sudah mendukung sebuah toolbox khusus ANFIS untuk kita gunakan secara Cuma-Cuma. Yupz, Saatnya beralih ke command window matlab, ketikkan anfisedit. Anfisedit adalah layanan toolbox matlab untuk melakukan training data dengan metode ANFIS. Maka, keluar jendela ANFIS berikut :
Toolbox untuk ANFIS pada Matlab |
Tanda lingkaran biru yang saya tandai merupakan urut-urutan langkah untuk melakukan proses training. Ikuti instruksi berikut, pada bagian from, pilih radio-button file, karena data kita tadi berbentuk file berekstensi .dat. Kemudian pilih load data untuk mengambil file data. Ambil file .dat pada directory. Lantas pilih generate FIS. Maka muncul jendela tambahan seperti berikut :
Lihat bagian pertama yang saya lingkari, kita diminta untuk membuat Number of MFs yang tidak lain adalah Membership Function (fungsi keanggotaan) Fuzzy. Secara default, angka yang muncul adalah 3 3. Apa maksudnya? Maksudnya, terdapat tiga kategori masukan pertama dan tiga kategori masukan kedua. Angka yang harus kita masukkan harus disesuaikan dengan kebutuhan, yakni dilihat dari data yang telah kita miliki tadi. Sesuai data, masukan pertama adalah IPK dan masukan kedua adalah tingkat kemiskinan (TM ) . IPK dapat saya bagi menjadi 3 keanggotaan fuzzy yaitu pandai, rata-rata, dan tertinggal. Sedangkan tingkat kemiskinan saya bagi menjadi 2, yakni miskin dan kaya. Kesimpulannya, Number of MFs yang harus kita inputka adalah 3 2. Untuk MF type, saya pilih gaussmf karena bentuknya yang terkenal halus. Terakhir, pilih linear untuk OUTPUT MF type. Bedanya apa sama constant? Maaf saya sendiri kurang paham.
Klik OK, Sekarang, balik lagi ke jendela ANFIS Editor, coba klik structure untuk melihat hasil rancangan ANFIS atau langsung klik train now untuk memulai training. proses training otomatis akan berjalan, tunggu hingga selesai. Simpan file training ANFIS kita dengan cara File-Export-To File. Saya beri nama beasiswa. Okey, All is well, kita berhasil menciptakan FIS melalui mekanisme adaptive.
Struktur ANFIS |
Aplikasi Penentuan Beasiswa
Setelah panjang lebar membahas proses learning ANFIS menggunakan toolbox matlab, sekarang kita buat aplikasi sistem pendukung keputusan untuk memutuskan beasiswa.
Keterangan :
Teks field Indeks Prestasi saya namakan IPK
Teks field Tingkat kemiskinan adalah TK
Teks field Hasil Penentuan adalah hasil
Berikut ini source code untuk aplikasi penentuan beasiswa, kode diletakkan pada button Tentukan Beasiswa.
Berikut hasil program ketika saya run :
Ketika diisikan data sebagai uji coba penentuan keputusan beasiswa, program mampu memberikan keputusan akhir yang diharapkan.
Baiklah kawan-kawan, ulasan ini dapat saya simpulkan bahwa metode ANFIS mampu memberikan kinerja yang baik dalam sistem pengambil keputusan (SPK) komputasi. Dengan adanya ulasan ini semoga memberikan sedikit pencerahan kepada teman-teman yang sedang mempelajari ANFIS. Semoga bermanfaat ya....
Salam Hangat
Ka, saya izin minta teksdeskripsinya untuk latihan membuat tutorial ya :))
terima kasih sebelumnya. :D
inputnya ada 12 dan targetnya 1.
terimakasih
ini kan inputkan menggunakan Anfis toolbox.
nah klo ga pake toolbox gmn?
tolong blas di mail jika sempat mas, makasih
Tugas Akhir bt smpe tgl 21 nih hehe
ilhamsuryoko11@gmail.com
fajrihalfian@gmail.com
trimakasih.
Trims
contoh penghitunganya, yang lebih detail gitu.
Just to be helpful for people interested in Nootropics especially Modafinil, I found another site that has some helpful articles and information.
There is also a discount code (that works) if you want to buy Modafinil online (aka Modalert). Don’t worry this is not something spammy. It’s also more for the US and UK market. Hope it helps. See website below. Thanks all.
https://www.modafinilonline.org.uk