Fuzzy Logic
Metode Mamdani
1. Teori
Metode Mamdani adalah salah satu jenis Fuzzy Inference System (FIS) yang
digunakan dalam logika fuzzy. Metode Mamdani pertama kali diperkenalkan oleh
Ebrahim Mamdani, seorang peneliti Inggris, pada tahun 1975 dalam sebuah makalah yang
berjudul "Application of Fuzzy Algorithms for Control of Simple Dynamic Plant".
Metode ini digunakan untuk memetakan input fuzzy ke dalam output fuzzy dengan
menggunakan aturan-aturan fuzzy. Aturan-aturan ini berupa kumpulan himpunan fuzzy
pada input dan output yang disusun dalam bentuk IF-THEN.
Pada metode Mamdani, input dan output didefinisikan dalam bentuk himpunan fuzzy,
dimana setiap himpunan fuzzy memiliki fungsi keanggotaan yang menentukan seberapa
kuat suatu nilai masuk ke dalam himpunan fuzzy tersebut. Kemudian, aturan-aturan IF-
THEN diterapkan pada himpunan fuzzy input untuk menghasilkan himpunan fuzzy output.
Setiap aturan IF-THEN memiliki konsekuensi fuzzy yang merepresentasikan himpunan
fuzzy output.
Setelah itu, himpunan fuzzy output tersebut digabungkan untuk menghasilkan suatu
fungsi keanggotaan output yang merepresentasikan nilai output yang diperoleh. Fungsi
keanggotaan output tersebut dapat dikonversi menjadi nilai crisp (nilai eksak atau
numerik) dengan menggunakan metode defuzzifikasi. Metode Mamdani sering digunakan
dalam berbagai aplikasi seperti kendali mesin, sistem keputusan, pengenalan pola, dan lain
sebagainya.
Pembahasan :
(1) Fuzzifikasi
a. Variabel 1 : Banyaknya pakaian
0 ; 𝑥 ≥ 80
80 − 𝑥
𝜇𝑠𝑒𝑑𝑖𝑘𝑖𝑡 (𝑥) = { ; 40 ≤ 𝑥 ≤ 80
80 − 40
1 ; 𝑥 ≤ 40
0 ; 𝑥 ≤ 40
𝑥 − 40
𝜇𝑏𝑎𝑛𝑦𝑎𝑘 (𝑥) = { ; 40 ≤ 𝑥 ≤ 80
80 − 40
1 ; 𝑥 ≥ 80
Maka derajat keanggotaan untuk banyaknya pakaian = 50 yaitu :
80 − 50 30
𝜇𝑠𝑒𝑑𝑖𝑘𝑖𝑡 (50) = = = 0,75
80 − 40 40
50 − 40 10
𝜇𝑏𝑎𝑛𝑦𝑎𝑘 (50) = = = 0,25
80 − 40 40
b. Variabel 2 : Tingkat kekotoran
0 ; 𝑥 ≥ 50
50 − 𝑥
𝜇𝑟𝑒𝑛𝑑𝑎ℎ (𝑥) = { ; 40 ≤ 𝑥 ≤ 50
50 − 40
1 ; 𝑥 ≤ 40
0 ; 𝑥 ≤ 40 𝑜𝑟 𝑥 ≥ 60
𝑥 − 40
; 40 ≤ 𝑥 ≤ 50
𝜇𝑠𝑒𝑑𝑎𝑛𝑔 (𝑥) = 50 − 40
60 − 𝑥
{60 − 60 ; 50 ≤ 𝑥 ≤ 60
0 ; 𝑥 ≤ 50
𝑥 − 50
𝜇𝑡𝑖𝑛𝑔𝑔𝑖 (𝑥) = { ; 50 ≤ 𝑥 ≤ 60
60 − 50
1 ; 𝑥 ≥ 60
Maka derajat keanggotaan untuk tingkat kekotoran = 58 yaitu :
𝜇𝑟𝑒𝑛𝑑𝑎ℎ (58) = 0
60 − 58 2
𝜇𝑠𝑒𝑑𝑎𝑛𝑔 (58) = = = 0,20
60 − 50 10
58 − 50 8
𝜇𝑡𝑖𝑛𝑔𝑔𝑖 (58) = = = 0,80
60 − 50 10
c. Variabel 3 : Kecepatan putaran
0 ; 𝑧 ≥ 1200
1200 − 𝑧
𝜇𝑙𝑎𝑚𝑏𝑎𝑡 (𝑧) = { ; 500 ≤ 𝑧 ≤ 1200
1200 − 500
1 ; 𝑧 ≤ 500
0 ; 𝑧 ≤ 500
𝑧 − 500
𝜇𝑐𝑒𝑝𝑎𝑡 (𝑧) = { ; 500 ≤ 𝑧 ≤ 1200
1200 − 500
1 ; 𝑧 ≥ 1200
(2) Inferensi
a. [R1] Jika pakaian sedikit dan kekotoran rendah, maka putaran lambat.
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡1 = 𝜇𝑠𝑒𝑑𝑖𝑘𝑖𝑡 (𝑥) ∩ 𝜇𝑟𝑒𝑛𝑑𝑎ℎ (𝑥)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡1 = min (𝜇𝑠𝑒𝑑𝑖𝑘𝑖𝑡 (50) ; 𝜇𝑟𝑒𝑛𝑑𝑎ℎ (58))
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡1 = min (0,75 ; 0)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡1 = 0
b. [R2] Jika pakaian sedikit dan kekotoran sedang, maka putaran lambat.
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡2 = 𝜇𝑠𝑒𝑑𝑖𝑘𝑖𝑡 (𝑥) ∩ 𝜇𝑠𝑒𝑑𝑎𝑛𝑔 (𝑥)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡2 = min (𝜇𝑠𝑒𝑑𝑖𝑘𝑖𝑡 (50) ; 𝜇𝑠𝑒𝑑𝑎𝑛𝑔 (58))
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡2 = min (0,75 ; 0,20)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡2 = 0,20
c. [R3] Jika pakaian sedikit dan kekotoran tinggi, maka putaran cepat.
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡3 = 𝜇𝑠𝑒𝑑𝑖𝑘𝑖𝑡 (𝑥) ∩ 𝜇𝑡𝑖𝑛𝑔𝑔𝑖 (𝑥)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡3 = min (𝜇𝑠𝑒𝑑𝑖𝑘𝑖𝑡 (50) ; 𝜇𝑡𝑖𝑛𝑔𝑔𝑖 (58))
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡3 = min (0,75 ; 0,80)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡3 = 0,75
d. [R4] Jika pakaian banyak dan kekotoran rendah, maka putaran lambat.
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡4 = 𝜇𝑏𝑎𝑛𝑦𝑎𝑘 (𝑥) ∩ 𝜇𝑟𝑒𝑛𝑑𝑎ℎ (𝑥)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡4 = min (𝜇𝑏𝑎𝑛𝑦𝑎𝑘 (50) ; 𝜇𝑟𝑒𝑛𝑑𝑎ℎ (58))
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡4 = min (0,25 ; 0)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡4 = 0
e. [R5] Jika pakaian banyak dan kekotoran sedang, maka putaran cepat.
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡5 = 𝜇𝑏𝑎𝑛𝑦𝑎𝑘 (𝑥) ∩ 𝜇𝑠𝑒𝑑𝑎𝑛𝑔 (𝑥)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡5 = min (𝜇𝑏𝑎𝑛𝑦𝑎𝑘 (50) ; 𝜇𝑠𝑒𝑑𝑎𝑛𝑔 (58))
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡5 = min (0,25 ; 0,20)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡5 = 0,20
f. [R6] Jika pakaian banyak dan kekotoran tinggi, maka putaran cepat.
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡5 = 𝜇𝑏𝑎𝑛𝑦𝑎𝑘 (𝑥) ∩ 𝜇𝑡𝑖𝑛𝑔𝑔𝑖 (𝑥)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡5 = min (𝜇𝑏𝑎𝑛𝑦𝑎𝑘 (50) ; 𝜇𝑡𝑖𝑛𝑔𝑔𝑖 (58))
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡5 = min (0,25 ; 0,80)
∝𝑝𝑟𝑒𝑑𝑖𝑘𝑎𝑡5 = 0,25
▪ Mamdani menggunakan komposisi aturan dengan fungsi MAX.
Setiap variabel linguistik dikelompokkan berdasarkan variabel linguistiknya, maka
didapatkan :
Kelompok lambat : R1, R2, R4
Kelompok cepat : R3, R5, R6
Kemudian, dengan fungsi MAX, pilih rule yang memiliki derajat keanggotaan
tertinggi untuk setiap variabel linguistik, sehingga aturan yang digunakan yaitu R2
dan R3, sementara aturan lainnya akan diabaikan.
Nilai t1
𝑡1 − 500
= 0,20
1200 − 500
𝑡1 = (0,2 ∗ 700) + 500 = 640
Nilai t2
𝑡2 − 500
= 0,75
1200 − 500
𝑡2 = (0,2 ∗ 700) + 500 = 1025
▪ Tentukan fungsi himpunan fuzzy yang baru berdasarkan hasil kurva
penggabungan.
0,20 ; 𝑧 ≤ 640
𝑧 − 500
𝜇(𝑧) = { ; 640 ≤ 𝑧 ≤ 1025
1200 − 500
0,75 ; 𝑧 ≥ 1025
Titik potong t1 dan t2 akan membagi kurva menjadi 3 daerah yaitu D1, D2, dan D3
dengan luas masing-masing A1, A2, dan A3, serta momen M1, M2, dan M3.
(3) Defuzzifikasi
▪ Defuzzifikasi Mandani menggunakan Centroid
∫ 𝜇(𝑧)𝑧 𝑑𝑧 → Momen(M)
𝑧∗ =
∫ 𝜇(𝑧) 𝑑𝑧 → Luas (A)
▪ Menghitung Momen (M)
640
640
1
𝑀1 = ∫ 0,2𝑧 𝑑𝑧 = [0,2 ∗ 𝑧 2 ] = (0,1 ∗ 409600) − (0,1 ∗ 0)
2 0
0
𝑀1 = 40960
1025 1025
𝑧 − 500
𝑀2 = ∫ 𝑧 𝑑𝑧 = ∫ (0,0014𝑧 2 − 0,7143𝑧) 𝑑𝑧
1200 − 500
640 640
𝑀2 = 159037,083
1200
1200
1
𝑀3 = ∫ 0,75𝑧 𝑑𝑧 = [0,75 ∗ 𝑧 2 ]
2 1025
1025
𝑀3 = 146015,625
𝐴1 = 128
1025
𝑧 − 500
𝐴2 = ∫ 𝑑𝑧
1200 − 500
640
𝐴2 = 182,875
1200
𝐴3 = 131,25
Cara 2 :
𝐴1 = 𝑝𝑎𝑛𝑗𝑎𝑛𝑔 ∗ 𝑙𝑒𝑏𝑎𝑟 = 640 ∗ 0,2
𝐴1 = 128
1
𝐴2 = (𝑡1 + 𝑡2 ) ∗ (1025 − 640)
2
1
𝐴2 = (0,2 + 0,75) ∗ 385
2
𝐴2 = 182,875
Sumber :
Youtube : Fuzzy Mamdani | Sistem Inferensi Fuzzy | Contoh Studi Kasus dan Langkah
Penyelesaiannya oleh Dr.Achmad Solichin
Available at : https://www.youtube.com/watch?v=fKueNI4kY6A