Rule Base Pada Logika Fuzzy

Fuzzy rule base berisi pernyataan-pernyataan logika fuzzy (fuzzy statement), yang berbentuk pernyataan IF-THEN. Setelah dilakukan fuzzifikasi untuk setiap masukan dan keluaran, maka langkah berikutnya yaitu membuat aturan (rule base). Rule base ini terdiri dari kumpulan aturan yang berbasis logika fuzzy untuk menyatakan suatu kondisi. penyusunan rule base sangat berpengaruh pada presisi model, pada tahap pengambilan keputusan ditentukan berdasarkan rancangan rule base. aturan If-then yang dihubungkan dengan logika operasi AND dan OR.

Dengan GUI rule editor kita dapat mendefinisikan dengan mudah IF-THAN huruf. Bedasarkan deskripsi variabel-variabel masukan dan keluaran yang didefinisikan dalam FIS Editor. Rule editor memudahkan kita untuk menyusun pernyataan IF-THEN. Pada contoh diatas merupakan Tampilan Rule Editor pada fuzzy toolbox untuk keluaran ketinggian gelombang. Algoritma rule base ketinggian gelombang tersebut IF Then dengan operator AND: If(Kec.Angin is LightAir) and (H(t) is Rippled) and (H(t-1) is Rippled) then (H(t+1) is Rippled.

Kita dapat menuliskan Rulelist dari pernyataan IF-Then, misal If(Kec.Angin is LightAir) and (H(t) is Rippled) and (H(t-1) is Rippled) then (H(t+1) is Rippled. maka rulelistnya adalah 2 2 2 2 1 1 artinya ada 3 inputan (2 2 2), 1 output (2), bobot/weight (1) umumnya bernilai 1, trus operator fuzzy klo AND bernilai 1 dan OR bernilai 2. Untuk lebih jelasnya liat di http://www.mathworks.com/help/toolbox/fuzzy/addrule.html . Untuk melihat Rulelist pada suatu .fis dapat dilakukan dengan cara mengklik atau open with notepad .fis maka akan terlihat seperti ini

[System]
Name='GelombangBanjarmasin'
Type='sugeno'
Version=2.0
NumInputs=3
NumOutputs=1
NumRules=10
AndMethod='prod'
OrMethod='probor'
ImpMethod='prod'
AggMethod='sum'
DefuzzMethod='wtaver'

[Input1]
Name='Kec.Angin'
Range=[0 14]
NumMFs=5
MF1='Calm':'gaussmf',[2.215789277 1.6567]
MF2='LightAir':'gaussmf',[2.216 3.5701]
MF3='Light.Breeze':'gaussmf',[2.216 5.1851]
MF4='Gentle.Breeze':'gaussmf',[2.216 6.8123]
MF5='Moderate.Breeze':'gaussmf',[2.216 8.631]

[Input2]
Name='H(t)'
Range=[0 2.3]
NumMFs=5
MF1='Glassy':'gaussmf',[0.3448 0.2932]
MF2='Rippled':'gaussmf',[0.3448 0.5207]
MF3='Wavelets':'gaussmf',[0.3448 0.7843]
MF4='Slight':'gaussmf',[0.3448 1.0492]
MF5='Moderate':'gaussmf',[0.3448 1.355]

[Input3]
Name='H(t-1)'
Range=[0 2.3]
NumMFs=5
MF1='Glassy':'gaussmf',[0.3448 0.2932]
MF2='Rippled':'gaussmf',[0.3448 0.5207]
MF3='Wavelets':'gaussmf',[0.3448 0.7844]
MF4='Slight':'gaussmf',[0.3448 1.0492]
MF5='Moderate':'gaussmf',[0.3448 1.3551]

[Output1]
Name='H(t+1)'
Range=[0 1]
NumMFs=5
MF1='Glassy':'constant',[0]
MF2='Rippled':'constant',[0.6]
MF3='Wavelets':'constant',[0.8]
MF4='Slight':'constant',[1]
MF5='Moderate':'constant',[1.9]

[Rules]
1 1 1, 1 (1) : 1
2 2 2, 2 (1) : 1
3 3 3, 3 (1) : 1
4 4 4, 4 (1) : 1
5 5 5, 5 (1) : 1
0 1 1, 1 (1) : 1
0 2 2, 2 (1) : 1
0 3 3, 3 (1) : 1
0 4 4, 4 (1) : 1
0 5 5, 5 (1) : 1

Dapat dilakukan juga dengan cara mengetikkan syntax sebagai berikut: showrule(fis,indexlist)

Penjelasan:
showrule = Syntax untuk memperlihatkan rule
GelombangBanjarmasin = nama file .fis
1:10,’indexed’ = index rule dari 1 – 10 rule

Author: android78

i m cool

7 thoughts on “Rule Base Pada Logika Fuzzy”

  1. klo dulu pake fuzzy Sugeno soalnya uda nyoba pke mamdani hasilnya jelek..thanks ya.. 🙂

  2. k, kami msh bingung di bagian output fuzzy yg memakai gaussmf penentuana range sm paramsx seperti cerah <=5 mm, hjn sedang 5-20 mm… apa sy blh krim programku ke emailx kk, spya kk bs liat hasilx?… trmkasi sblmx k

  3. Thanks a lot for sharing this with all folks you actually recognize what yo;r7821#u&e speaking about! Bookmarked. Kindly also seek advice from my website =). We can have a hyperlink exchange contract among us

  4. bisa kirim emai kak, mau bertanya perihal penentuan rule based jika terdapat 4 variabel input dan 1 variabel output

Leave a comment