JURNAL MATRIX VOL. 3, NO. 1, MARET 2013
39
SISTEM INFERENSI FUZZY MAMDANI BERBASIS WEB I Ketut Suwintana Jurusan Akuntansi Politeknik Negeri Bali Kampus Bukit Jimbaran – Bali Telp. +62 361 701981 Abstrak:.Logika fuzzy banyak diterapkan dalam berbagai bidang, seperti keilmuan, industri, rumah tangga, sarana komunikasi, ekonomi, dan medis. Logika fuzzy dikembangkan untuk dapat memecahkan suatu permasalahan. Pada penelitian ini, penulis mengembangkan suatu sistem inferensi fuzzy dengan menggunakan metode inferensi fuzzy Mamdani. Aplikasi berbasis web ini dikembangkan dengan bahasa pemrograman PHP dan basis data MySql. Sistem yang dibangun bersifat umum yaitu dapat digunakan untuk memecahkan suatu permasalahan yang berbeda-beda. Hal ini dikarenakan pengguna sistem dapat memodifikasi (menambah, mengubah, menghapus) variabel, fungsi keanggotaan, domain himpunan fuzzy, dan aturan-aturan fuzzy yang ada dalam sistem. Sistem ini telah diuji coba dengan suatu kasus sederhana yang diselesaikan dengan menggunakan logika fuzzy. Kata kunci : logika fuzzy, metode mamdani, web
Abstract:. Fuzzy logic applied in many fields, such as scientific, industrial, household, communications tools, economic, and medical. Fuzzy logic is continuously developed to solve problems. In this study, the author developed a fuzzy inference system using Mamdani fuzzy inference. This web-based application developed with the PHP programming language and MySQL database. The system is built for general purpose therefore can be used to solve different problems. Users of the system can modify (add, change, delete) variables, membership functions, fuzzy set domain and fuzzy rules that exist in the system. The system has been tested by using a simple case and it is solved by fuzzy logic. Keywords : fuzzy logic, Mamdani method, web
PENDAHULUAN Teknologi informasi telah berkembang begitu pesat. Jika dahulu, komputer hanya digunakan sebagai alat bantu, tapi sekarang komputer telah bisa menggantikan posisi manusia dalam melakukan perkerjaan. Soft Computing adalah suatu model pendekatan untuk melakukan komputasi dengan meniru akal manusia dan memiliki kemampuan untuk menalar dan belajar pada lingkungan yang penuh dengan ketidakpastian. Diantara komponen pembentuk soft computing adalah sistem fuzzy, komputasi evolusioner atau algoritma genetika, dan penalaran dengan probabilitas. Setiap komponen dapat berdiri sendiri dalam implementasinya. Penerapan suatu komponen dalam suatu masalah akan menghasilkan suatu hasil yang dapat diterima, akan tetapi belum tentu maksimal[1]. Logika fuzzy pertama kali diperkenalkan oleh Prof. Lotfi A. Zadeh dari California University pada tahun 1965 sebagai cara matematis untuk merepresentasikan ketidakpastian linguistik. Dasar logika fuzzy adalah teori himpunan fuzzy. Pada teori himpunan fuzzy, peranan derajat keanggotaan/nilai keanggotaan sebagai penentu keberadaan elemen dalam suatu himpunan sangatlah penting. Logika fuzzy sangat berguna untuk menyelesaikan banyak permasalahan dalam berbagai bidang yang biasanya memuat derajat ketidakpastian.
Fuzzy secara bahasa diartikan sebagai kabur atau samar-samar. Suatu nilai dapat bernilai benar atau salah secara bersamaan. Dalam fuzzy dikenal derajat keanggotaan yang memiliki rentang nilai 0 (nol) hingga 1 (satu). Berbeda dengan himpunan tegas yang memiliki nilai 1 atau 0 (ya atau tidak). Logika Fuzzy pada dasarnya merupakan logika bernilai banyak (multivalued logic) yang dapat didefinisikan nilainya diantara keadaan konvensional seperti ya atau tidak, benar atau salah, dan sebagainya. Logika fuzzy digunakan sebagai suatu cara untuk memetakan suatu permasalahan dari input menuju output yang diharapkan. Beberapa contoh yang dapat diambil antara lain: 1. Manager pergudangan mengatakan pada manajer produksi seberapa banyak persediaan barang pada akhir minggu ini, kemudian manajer produksi akan menetapkan jumlah barang yang harus diproduksi esok hari. 2. Seorang pegawai melakukan tugasnya dengan kinerja yang sangatbaik, kemudian atasan akan memberikan reward yang sesuai dengan kinerja pegawai tersebut.[2] Logika fuzzy dapat dianggap sebagai kotak hitam yang menghubungkan antara ruang input menuju ruang output[3]. Salah satu aplikasi logika fuzzy yang telah berkembang amat luas dewasa ini adalah sistem
Copyright ©JURNAL MATRIX 2013
40
JURNAL MATRIX VOL. 3, NO. 1, MARET 2013
inferensi fuzzy (Fuzzy Inference System / FIS), yaitu kerangka komputasi yang didasarkan pada teori himpunan fuzzy, aturan fuzzy berbentuk IF THEN, dan penalaran fuzzy. Misalnya dalam penentuan status gizi, produksi barang, sistem pendukung keputusan, penentuan kebutuhan kalori harian, dan sebagainya. Terdapat beberapa metode dalam sistem inferensi fuzzy yang sering digunakan, yaitu metode Tsukamoto, metode Mamdani, dan metode Takagi Sugeno. Pada penelitian ini, penulis mengembangkan suatu sistem inferensi fuzzy yang berbasis web dengan menggunakan metode inferensi fuzzy Mamdani. METODE PENELITIAN Pengembangan sistem dilakukan dengan metode: 1. Studi Literatur, untuk mempelajari konsep logika fuzzy dan penunjang dalam pengembangan sistem berbasis web. 2. Analisa Sistem, mempelajari dan menganalisa proses atau alur kerja Sistem Inferensi Fuzzy khususnya yang menggunakan metode Mamdani. 3. Pembuatan Aplikasi, menyusun rancangan sistem berdasarkan pada data yang diperoleh dari tahap analisis sistem. Pada tahap ini dilakukan perancangan basis data (MySql) dan perancangan tampilan (interface), yang dilanjutkan dengan pembuatan kode program (coding) dengan bahasa pemrograman PHP. 4. Pengujian, aplikasi diuji coba dengan suatu kasus untuk mengetahui bahwa sistem inferensi fuzzy telah mampu memproses dan menghasilkan output secara benar. Pendekatan logika fuzzy diimplementasikan dalam tiga tahapan, yakni: fuzzifikasi, evaluasi rule (inferensi), dan defuzzifikasi. Input (tegas)
HASIL DAN PEMBAHASAN Metode Mamdani sering dikenal dengan nama Metode Min-Max. Metode ini diperkenalkan oleh Ebrahim Mamdani pada tahun 1975. Pada sistem inferensi fuzzy mamdani, keputusan yang biasa dilakukan oleh para ahli digunakan sebagai aturan fuzzy dalam mengambil keputusan atas masukan yang diterima. Aplikasi yang telah dibangun mampu untuk memecahkan permasalahan-permasalahan yang diselesaikan dengan menggunakan logika fuzzy. Pengguna dapat mengubah, menambah ataupun menghapus variabel, himpunan, aturan fuzzy yang akan digunakan sehingga sistem ini sangat fleksibel untuk digunakan dalam memecahkan berbagai permasalahan. 1. Pembentukan Himpunan Fuzzy (Fuzzifikasi)
Gambar 2 Form untuk Edit Himpunan Fuzzy
Fuzzifikasi merupakan proses mengubah variabel non fuzzy (variabel numerik) menjadi variabel fuzzy (variabel linguistik)[4]. Pada Metode Mamdani, baik variabel input maupun variabel output dibagi menjadi satu atau lebih Himpunan Fuzzy. Pada aplikasi disediakan form untuk mengubah himpunan fuzzy yang akan digunakan, seperti untuk mengubah Nama Himpunan, Nama Fungsi, dan Domain Himpunan
Fuzzifikasi
Inferensi
Defuzifikasi Gambar 3 Form untuk Edit Variabel Fuzzy Output (Tegas)
Gambar 1 Tahapan Sistem Inferensi Fuzz
Fuzzifikasi akan menghasilkan derajat keanggotaan dari inputan berupa keanggotaan crisp pada sebuah himpunan fuzzy. Besarnya derajat keangotaan sesuai dengan fungsi keanggotaan yang digunakan. Sistem menghasilkan nilai derajat
I KETUT SUWINTANA : SISTEM INFORMASI FUZZY MADANI BERBASIS WEB
41
keanggotaan dari setiap himpunan fuzzy sesuai dengan nilai yang dimasukkan. Fungsi keanggotaan (membership function) adalah suatu kurva yang menunjukkan suatu pemetaan titik-titik input data ke dalam derajat keanggotaan yang memiliki interval 0 sampai 1.
Gambar 6 Proses Inferensi Fuzzy
Gambar 4 Derajat Keanggotaan
4. Implikasi Proses implikasi dilakukan dengan menggunakan metode minimum dengan mengkombinasikan setiap derajat keanggotaan dari setiap if then rules yang dibuat dan dinyatakan dalam suatu derajat keanggotaan (α). Atau dengan kata lain, pengambilan keputusan fungsi min dilakukaan dengan cara mencari nilai minimum berdasarkan aturan-aturan fuzzy yang digunakan.
2. Penentuan Aturan (Rules) Secara umum rules dibuat oleh pakar secara intuitif. Rules berupa pernyataan-pernyataan kualitatif yang ditulis dalam bentuk if then, sehingga mudah dimengerti. Aturan fuzzy yang digunakan oleh sistem dapat diubah seperti pada Gambar 5.
Gambar 7 Implikasi Min
Gambar 5 Form untuk Edit Aturan Fuzzy
3. Proses Inferensi Merupakan proses evaluasi aturan fuzzy untuk menghasilkan output dari tiap aturan. Masing-masing aturan fuzzy menghasilkan sebuah nilai yang sesuai dengan inputan yang diberikan. Jika dalam aturan fuzzy terdapat disjungsi (OR), maka hasil dari aturan itu merupakan gabungan dari nilai fungsi keanggotaan yang dimasukkan, sedangkan jika terdapat konjungsi (AND), maka hasil dari aturan fuzzy akan berupa irisan nilai fungsi keanggotaan dari inputan[5]. Nilai inputan untuk sistem diisi oleh pemakai sebelum dilakukan proses inferensi, seperti terlihat pada Gambar 6.
5. Komposisi Metode maksimum digunakan untuk mengevaluasi hasil dari aturan yang telah dibuat. Output himpunan fuzzy diperoleh dengan cara mengambil nilai maksimum dari aturan yang sesuai, kemudian menggunakannya untuk memodifikasi daerah fuzzy dan mengaplikasikannya ke output. Solusi Himpunan Fuzzy diperoleh dengan cara mengambil nilai maximum aturan, kemudian menggunakannya untuk memodifikasi daerah fuzzy, dan mengaplikasikannya ke output dengan menggunakan operator OR (union). Jika semua proposisi telah dievaluasi, maka output akan berisi suatu himpunan fuzzy yang merefleksikan kontribusi dari tiap-tiap proposisi. Secara umum dapat dituliskan: m [X i ] ¬ max( m sf [X i ], m kf [X i ]) dengan: m sf [X i ] = nilai keanggotaan solusi fuzzy sampai aturan ke-i m kf [X i ] = nilai keanggotaan konsekuen fuzzy aturan ke-i
42
JURNAL MATRIX VOL. 3, NO. 1, MARET 2013
THEN Produksi Bertambah. Output yang dihasilkan oleh aplikasi sebesar 4236,77 seperti terlihat pada Gambar 9.
Gambar 9 Output Sistem
Gambar 8 Komposisi Max
6. Defuzzifikasi Defuzzifikasi menggunakan Metode Centroid (composite moment), dimana nilai crisp diperoleh dengan cara mengambil titik pusat (d*) daerah output fuzzy. Nilai d* secara umum dirumuskan: d* =
Ini berarti makanan kaleng jenis ABC harus diproduksi sebanyak 4237 kemasan. Grafik daerah hasil proses komposisi dari kasus ini juga dapat ditampilkan, seperti terlihat pada Gambar 10.
ò xm ( x)dx x
D dengan x : nilai output d* : titik pusat daerah fuzzy output μ(x) : fungsi keanggotaan dari himpunan fuzzy output D : luas daerah fuzzy output
5. Pengujian Pengujian dilakukan dengn menggunakan suatu kasus sederhana. Kasus: Suatu perusahaan makanan kaleng akan memproduksi makanan jenis ABC. Dari data 1 bulan terakhir, permintaan terbesar mencapai 5000 kemasan/hari, dan permintaan terkecil mencapai 1000 kemasan/hari. Persediaan barang di gudang terbanyak mencapai 600 kemasan/hari dan terkecil pernah mencapai 100 kemasan/hari. Dengan segala keterbatasannya, sampai saat ini, perusahaan baru mampu memproduksi barang maksimum 7000 kemasan/hari, untuk efesiensi mesin dan SDM tiap hari diharapkan perusahaan memproduksi paling tidak 2000 kemasan. Berapa kemasan makanan jenis ABC yang harus diproduksi, jika jumlah permintaan sebanyak 4000 kemasan, dan persediaan di gudang masih 300 kemasan[2]. Aturan fuzzy yang digunakan: R1. IF Permintaan Turun AND THEN Produksi Berkurang R2. IF Permintaan Turun AND THEN Produksi Berkurang R3. IF Permintaan Naik AND THEN Produksi Bertambah R4. IF Permintaan Naik AND
Persediaan Banyak Persediaan Sedikit Persediaan Banyak Persediaan Sedikit
Gambar 10 Daerah Hasil Komposisi
Output yang dihasilkan oleh aplikasi ini sama dengan hasil dari perhitungan secara manual, ini berarti proses yang dilakukan oleh sistem telah benar.
SIMPULAN DAN SARAN Simpulan Sistem inferensi fuzzy ini dibangun dalam bentuk aplikasi berbasis web. Aplikasi dirancang bersifat umum yang berarti sistem dapat menyelesaikan suatu permasalahan yang berbeda-beda karena pengguna dapat memodifikasi (menambah, menghapus, mengubah) variabel, himpunan fuzzy, domain himpunan, aturan-aturan fuzzy yang digunakan. Keakuratan /kebenaran hasil dan proses yang dilakukan oleh sistem telah diuji dengan menggunakan suatu kasus yang diselesaikan dengan logika fuzzy. Saran Aplikasi ini diharapkan dapat dimanfaatkan untuk menyelesaikan suatu permasalahan dengan logika fuzzy. Aplikasi ini juga dapat dimanfaatkan sebagai bahan pembelajaran untuk meningkatkan
I KETUT SUWINTANA : SISTEM INFORMASI FUZZY MADANI BERBASIS WEB
pengetahuan tentang logika fuzzy. Sistem ini masih terbatas pada penggunaan inferensi fuzzy dengan metode Mamdani. Diharapkan dapat dikembangkan untuk metode Tsukamoto, metode Sugeno, dan metode lainnya. Daftar Pustaka [1] Syafiul Muzid, Sri Kusumadewi. 2007. Membangun Toolbox Algoritma Evolusi Fuzzy untuk Matlab. Seminar Nasional Aplikasi Teknologi Informasi 2007 (SNATI 2007). ISSN: 1907-5022. Yogyakarta [2] Kusumadewi, Sri & Purnomo, Hari. 2010. Aplikasi Logika Fuzzy untuk Pendukung Keputusan Edisi 2. Yogyakarta: Graha Ilmu. [3] Jang, J.S. Ronger, Gulley, Ned. 1997. Fuzzy Logic Toolbox User’s Guide. The MathWorks,Inc. [4] Susilo, Frans, SJ. 2003. Himpunan dan Logika Kabur Serta Aplikasinya. Yogyakarta :Graha Ilmu. [5] Lee, Kwang H. 2005. First Course on Fuzzy Theory and Application. Republic of South Korea. KAIST. [6] Chatterjee, Debraj. 2010. “Prediction of Multi Responses in Radial Drilling Process Using
43
44
JURNAL MATRIX VOL. 3, NO. 1, MARET 2013
I KETUT SUWINTANA : SISTEM INFORMASI FUZZY MADANI BERBASIS WEB
45