Pengertian
Logika Fuzzy
Dalam bahasa inggris, fuzzy mempunyai arti
kabur atau tidak jelas. Jadi, logika fuzzy adalah logika yang kabur,
atau mengandung unsur ketidakpastian.
Pada logika biasa, yaitu logika tegas, kita hanya
mengenal dua nilai, salah atau benar, 0 atau 1. Sedangkan logika fuzzy
mengenal nilai antara benar dan salah. Kebenaran dalam logika fuzzy
dapat dinyatakan dalam derajat kebenaran yang nilainya antara 0 sampai 1.
Misalnya dalam kehidupan sehari-hari, dewasa
didefinisikan dengan berusia 17 tahun ke atas. Jika
menggunakan
logika tegas, seseorang yang berusia 17 tahun kurang 1 hari akan didefinisikan
sebagai tidak dewasa. Namun dalam logika fuzzy, orang tersebut dapat
dinyatakan dengan hampir dewasa.
·
Himpunan Fuzzy
Himpunan fuzzy
adalah pengelompokan sesuatu berdasarkan variabel bahasa (linguistik
variable), yang dinyatakan dengan fungsi keanggotaan, dalam semesta U.
Keanggotaan suatu nilai pada himpunan dinyatakan dengan derajat keanggotaan
yang nilainya antara 0.0 sampai 1.0 .
Himpunan fuzzy
didasarkan pada gagasan untuk memperluas jangkauan fungsi karakteristik
sedemikian hingga fungsi tersebut akan mencakup bilangan real pada interval
[0,1]. Nilai keanggotaannya menunjukkan bahwa suatu item tidak hanya bernilai
benar atau salah. Nilai 0 menunjukkan salah, nilai 1 menunjukkan benar, dan
masih ada nilai-nilai yang terletak antara benar dan salah.
1. CONTOH PENERAPAN FUZZY LOGIC :
·
Penerapan
Logika Fuzzy Pada Penilaian Mutu Teh Hitam Oorthodox
Masalah yang dihadapi : Bagaimana menentukan mutu teh hitam tanpa
menggunakan tester dan ketidakpastian batas antara satu kriteria dengan
kriteria lainnya?
Tujuan Penelitian : Membuat model penilaian mutu teh dengan menggunakan
program komputer berbasis logika fuzzy.
Manfaat Penelitian : Diharapkan dapat bermanfaat dalam menentukan mutu
teh hitam yang baik.
Pengguna Aplikasi dan Sistem pakarnya adalah Konsumen Teh Hitam dan Dra.
ThongTjie
Menentukan himpunan fuzzy
Contoh
Penerapan Fuzzy Logic - Metode Mamdani menggunakan Matlab
Bagi anda yang mempelajari tentang Artificial
Intelligence pada pokok
bahasan Fuzzy Logic,
ada tiga metode yang sering digunakan dalam menyelesaikan masalah dengan
menggunakan konsep fuzzy
logic, yaitu: (1) Metode
Tsukamoto; (2) Metode Mamdani; (3) Metode Sugeno. Pada kesempatan ini, saya
akan menerapkan metode Mamdani untuk menyelesaikan sebuah contoh masalah
sederhana menggunakan aplikasi Matlab. Metode Mamdani adalah metode yang lebih
mudah digunakan dari kedua pada metode lainnya. Sebagaimana kita ketahui bahwa
Matlab menyediakan metode ini (Mamdani) pada toolbox
fuzzy, namun saya akan mencobanya dengan koding.
Prosedur Fuzzy Logic:
1. Fuzzifikasi;
2. Pembentukan Rule
3. Mesin Inferensi
4. Defuzzifikasi
Contoh Kasus
Perhatikan
komentar pada script berikut ini:
a = newfis('MAMDANI
IDEAL BADAN');
%Tinggi Badan (Input 1)
a = addvar(a,'input','Tinggi Badan',[0 200]);
a = addmf(a,'input',1,'Pendek','trapmf',[0 0 100 140]);
a = addmf(a,'input',1,'Sedang','trimf',[125 150 175]);
a = addmf(a,'input',1,'Tinggi','trimf',[160 200 200]);
%Berat Badan (Input 2)
a = addvar(a,'input','Berat Badan',[0 100]);
a = addmf(a,'input',2,'Ringan','gaussmf',[15 0]);
a = addmf(a,'input',2,'Normal','gaussmf',[15 50]);
a = addmf(a,'input',2,'Berat','gaussmf',[15 100]);
%Ideal Badan (Output 1)
a = addvar(a,'output','Ideal Badan',[0 10]);
a = addmf(a,'output',1,'Sedikit','trimf',[0 1.5 3]);
a = addmf(a,'output',1,'Sedang','trimf',[3 5 7]);
a = addmf(a,'output',1,'Banyak','trimf',[7 8.5 10]);
% Rule #1 : IF
TinggiBadan is Tinggi AND BeratBadan is Ringan THEN IdealBadan is Kurus
% #2 : IF TinggiBadan is Tinggi AND BeratBadan is Normal
THEN IdealBadan is Kurus
% #3 : IF TinggiBadan is Sedang AND BeratBadan is
Ringan THEN IdealBadan is Kurus
% #4 : IF TinggiBadan is Pendek AND BeratBadan is
Ringan THEN IdealBadan is Ideal
% #5 : IF TinggiBadan is Sedang AND BeratBadan is
Normal THEN IdealBadan is Ideal
% #6 : IF TinggiBadan is Tinggi AND BeratBadan is Berat
THEN IdealBadan is Ideal
% #7 : IF TinggiBadan is Pendek AND BeratBadan is Berat
THEN IdealBadan is Gemuk
% #8 : IF TinggiBadan is Pendek
AND BeratBadan is Normal THEN IdealBadan is Gemuk
% #9 : IF TinggiBadan is Sedang AND BeratBadan is Berat
THEN IdealBadan is Gemuk
% masing-masing kolom adl
input1|input2|output1|weight|OR=2; AND=1
ruleList=[...
3 1 1 1 1
3 2 1 1 1
2 1 1 1 1
1 1 2 1 1
2 2 2 1 1
3 3 2 1 1
1 3 3 1 1
1 2 3 1 1
2 3 3 1 1];
a = addrule(a,ruleList);
out = evalfis([165 55],a); % 165 = Tinggi Badan; 55 = Berat Badan
writefis(a,'Mamdani_UseCoding_gaussmf'); % Simpan ke File dng nama "Mamdani_UserCoding.fis"
% fismat =
readfis('BuildManualFuzzy'); %Membaca file --> getfis(fismat); %Membaca file
Untuk menjalankan file ini pada toolbox Fuzzy, silahkan
ketik: fuzzy('namaFile'); pada Commmad Window Matlab lalu tampilkanlah outputnya dengan
memilih menu View - Rules atau Surface pada tollbox
fuzzy (Fis Editor).
SUMBER :
Jannus Maurits Nainggolan, “Logika Fuzzy (Fuzzy
Logic) : Teori dan Penerapan Pada Sistem Daya (Kajian Pengaruh Induksi
Medan Magnet)”
http://k12008.widyagama.ac.id/ai/diktatpdf/Logika_Fuzzy.p
df
0 komentar:
Posting Komentar