Expert System Series

Fuzzy Inference System Mamdani

Contoh implementasi sistem pakar menggunakan Fuzzy Mamdani dengan PHP dan MySQL

author : cahya dsn, published on : March 14th, 2019 updated on : July 8th, 2019

minerva minerva donasi donation

Mau lihat artikel lainya? Dapatkan artikel-artikel lain seputar pemrograman website di sini, dan dapatkan ide-ide baru

Jika fungsi keanggotaan agregat memiliki nilai maksimum yang unik, maka MOM, SOM, dan MOM semuanya memiliki nilai yang sama

Sistem Pendukung Keputusan dengan metode fuzzy dapat diterapkan di berbagai bidang. Dalam makalah ini akan dibahas penentuan banyaknya produksi Sirup Belimbing dengan merek "Barokah". Merek dagang Barokah tersebut merupakan hasil dari usaha rumahan yang terletak di sekitaran kota Depok.

Melihat realita yang terjadi dilapangan usaha yang bergerak di bidang produksi sirup belimbing ini mengalami tantangan yang sangat dilematis. Permasalahan yang sering terjadi yaitu adanya tingkat persaingan yang sangat tinggi, menunutut perusahaan lebih berdaya guna dalam mengakses jumlah produksi.

Dengan logika fuzzy, akan dihasilkan suatu model dari suatu sistem yang mampu memperkirakan jumlah produksi. Dengan dibuatnya sistem ini diharapkan dapat membantu perusahaan dalam membuat keputusan untuk menentukan jumlah produksi yang harus diproduksi agar persediaan barang di gudang stabil.

This document using Dynamic Content Technology for enrichment sample case and reading experience
  • Data yang digunakan BUKAN merupakan data real, tapi data yang digenerate secara otomatis/random/acak dari sistem
  • Data dan Nilai Perhitungan yang ditampilkan akan SELALU BERBEDA jika halaman di refresh/reload
  • Jumlah Data Sample ditampilkan secara acak/random antara 7 s.d 15

Pada proses penjualan, untuk setiap wilayahnya setiap minggu mengajukan permintaan dan penyetorannya juga dilakukan seminggu sekali. Wilayah pemasarannya untuk saat ini hanya di Depok yaitu di pasar Depok Lama dan di pasar Depok Jaya. Berdasarkan data penjualan dari masing-masing wilayah maka akan digabungkan sehingga akan didapatkan data keseluruhan dari perusahaan ini.

2.1. Data Kasus

Data yang diambil adalah data variabel permintaan barang dan persediaan barang pada 11 minggu terakhir. Berikut merupakan data permintaan barang dan persediaan barang pada 11 minggu terakhir.

TABEL 1 Permintaan dan Persediaan 11 minggu Terakhir
Minggu kePermintaanPersediaanProduksi
1618321724
2529338654
3557319604
4615342630
5576349657
6574308626
7642344637
8639316619
9618336730
10584297729
11558266706

Data dalam 11 minggu terakhir dapat disimpulkan , permintaan terbesar mencapai 642, permintaan terkecil mencapai 529, dan rata-rata permintaan mencapai 592. Persediaan barang terbanyak mencapai 349, persediaan terkecil mencapai 266, dan rata-rata persediaan mencapai 321.

2.2. Analisa Kasus

Dalam kasus ini terdapat 3 variabel, yaitu: 2 variabel input variabel permintaan , dan variabel persediaan, sedangkan untuk output terdapat 1 variabel, yaitu: variabel produksi barang. Variabel permintaan memiliki 3 nilai linguistik, yaitu naik, rata-rata, dan turun, variabel persediaan memiliki 3 nilai linguistik yaitu banyak, rata-rata, dan sedikit, variabel produksi barang memiliki 3 nilai linguistik yaitu bertambah, rata-rata, dan berkurang.

Adapun Rule yang telah ditetapkan oleh perusahaan adalah sebagai berikut:

  • [R1] JIKA Permintaan TURUN, dan Persediaan SEDIKIT, MAKA Produksi Barang BERKURANG
  • [R2] JIKA Permintaan TURUN, dan Persediaan RATA-RATA, MAKA Produksi Barang BERKURANG
  • [R3] JIKA Permintaan TURUN, dan Persediaan BANYAK, MAKA Produksi Barang BERKURANG
  • [R4] JIKA Permintaan RATA-RATA, dan Persediaan SEDIKIT, MAKA Produksi Barang BERKURANG
  • [R5] JIKA Permintaan RATA-RATA, dan Persediaan BANYAK, MAKA Produksi Barang RATA-RATA
  • [R6] JIKA Permintaan RATA-RATA, dan Persediaan RATA-RATA, MAKA Produksi Barang RATA-RATA
  • [R7] JIKA Permintaan NAIK, dan Persediaan RATA-RATA, MAKA Produksi Barang BERTAMBAH
  • [R8] JIKA Permintaan NAIK, dan Persediaan BANYAK, MAKA Produksi Barang BERTAMBAH
  • [R9] JIKA Permintaan NAIK, dan Persediaan SEDIKIT, MAKA Produksi Barang BERTAMBAH

2.3. Penyelesaian Masalah dengan Metode Mamdani

Penyelesaian masalah untuk kasus persediaan barang pada usaha rumahan dengan merek dagang "Barokah" menggunakan Metode Mamdani jika diketahui permintaan barang sebanyak 525 dan persediaan barang sebanyak 253, adalah sebagai berikut :

2.3.1. Langkah 1 : Pembentukan Himpunan Fuzzy

Menentukan variabel yang terkait dalam proses yang akan ditentukan dan fungsi fuzzifikasi yang sesuai. Pada kasus ini , ada 3 variabel yang akan dimodelkan, yaitu

2.3.1.1. Permintaan

Permintaan $\mu_{pmt}$ terdiri dari 3 (tiga) himpunan fuzzy, yaitu TURUN, RATA-RATA, dan NAIK. Berdasarkan dari data permintaan 11 minggu terakhir, maka fungsi keanggotaan dirumuskan sebagai berikut:

$\mu_{pmt[RATA-RATA]}(525)=\frac{642-525}{642-592}=\frac{117}{50}=2.34$

$\mu_{pmt[NAIK]}(525)$

$\mu_{pmt[TURUN]}(525)$

2.3.1.2. Persediaan

Persediaan $\mu_{psd}$, terdiri atas 3 (tiga) himpunan fuzzy, yaitu SEDIKIT, RATA-RATA dan BANYAK. Berdasarkan dari data persediaan 11 minggu terakhir, maka fungsi keanggotaan dirumuskan sebagai berikut:

$\mu_{psd[SEDIKIT]}(253)=\frac{349-253}{349-321}=\frac{96}{28}=3.4285714285714$

$\mu_{psd[RATA-RATA]}(253)$

$\mu_{psd[BANYAK]}(253)$

2.3.1.3. Produksi

Produksi $\mu_{prd}$, terdiri atas 3 (tiga) himpunan fuzzy, yaitu BERKURANG, RATA-RATA dan BERTAMBAH. Fungsi keanggotaan dirumuskan sebagai berikut:

2.3.2. Langkah 2 : Aplikasi Fungsi Implikasi

2.3.3. Langkah 3 : Komposisi Aturan

2.3.4. Langkah 4 : Defuzzy

Sebagai pelengkap artikel Fuzzy Inference System (FIS) Mamdani pada bagian ini akan dibahas langkah-langkah dalam implementasinya dengan bahasa pemrograman PHP dan database MySQL/MariaDB.

3.1. Persiapan Database

Sebagai bahan pembelajaran aplikasi Fuzzy Inference System Mamdani ini; dibuat database (dalam hal ini menggunakan MySQL/MariaDB Database server) sebagai berikut:

CREATE DATABASE IF NOT EXISTS db_expert;
USE db_expert;

Awalnya membuat dulu database dengan nama db_expert jika belum ada database dengan nama tersebut, kemudian gunakan database tersebut dengan memakai sintak USE db_expert;

Dalam hal ini, pembuatan database memakai command console dari database server yang bersangkutan

Beberapa simpulan yang bisa diperoleh adalah

  • Enric Trillas, Piero P. Bonissone, Luis Magdalena, and Janusz Kacprzyk (2012) Combining Experimentation and Theory, Studies in Fuzziness and Soft Computing, Volume 271, Springer, ISBN 978-3-642-24666-1
  • Kóczy,T., D. Tikk, (2001) Fuzzy rendszerek, Kempelen Farkas Tankönyvtár,
  • Kusumadewi, Sri. (2003). Artificial Intelligence (Teknik dan Aplikasinya). Graha Ilmu. Yogyakarta
  • Kusumadewi, Sri., Purnomo, Hari. (2004).Aplikasi Logika Fuzzy untuk Pendukung Keputusan. Graha Ilmu. Yogyakarta
  • Mamdani,E.H. (1974) Application of fuzzy algorithms for control of simple dynamic plant, Proc. Inst. Electr. Eng. 121 pp 1585.
  • Mamdani,E.H. (1976) Advances in the linguistic synthesis of fuzzy controllers, Int. J. Man. Mach. Stud. 8 pp 669–678.
  • Mamdani,E.H. (1977) Application of Fuzzy Logic to Approximate Reasoning Using Linguistic Synthesis, IEEE Trans. Comput.C-26 pp 1182–1191.
  • Mamdani,E.H. (1994) Fuzzy Control. A Misconception of Theory and Application, IEEE Expert. 9 pp 27–28.
  • Mamdani,E.H., Assilian,A. (1975) An experiment in linguistic synthesis with a fuzzy logic controller, Int. J. Man. Mach. Stud.7 pp 1–13.