LOGIKA FUZZY
PENGERTIAN
Fuzzy mungkin merupakan suatu kata yang agak asing bagi
kita. Dalam terjemahan menurut kosa katanya fuzzy berari kabur. Logika berarti
penalaran. Jika digabungkan menjadi satu kalimat berarti Penalaran Yang Kabur.
Benarkah demikian? Mengapa penalaran yang kabur justru perlu untuk dipelajari?
Logika fuzzy adalah suatu cara yang tepat untuk
memetakan suatu ruang input ke dalam suatu ruang output. Skema logika fuzzy
adalah sebagai berikut:
Pada gambar dapat diketahui bahwa antara input dan
output terdapat sebuah kotak hitam yang sesuai. Berikut ini adalah beberapa
contoh konsep logika fuzzy yang dapat diterapkan dalam berbagai kasus:
·
Manajer
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
·
Pelayan
restoran memberikan pelayanan terhadap tamu, kemudian tamu akan memberikan tip
yang sesuai atas baik tidaknya pelayanan yang diberikan
·
Penumpang
taksi berkata pada sopir taksi seberapa cepat laju kendaraan yang diinginkan,
sopir taksi akan mengatur pijakan gas taksinya
Ada beberapa cara atau metode yang mampu bekerja di
kotak hitam tersebut, seperti sistem fuzzy, jaringan syaraf tiruan, sistem
linier, sistem pakar, persamaan diferensial, dan sebagainya. Namun menurut
Prof. Lotfi A. Zadeh seorang profesor dari Universitas California, Berkeley,
yang adalah penemu Logika fuzzy pada tahun 1960-an menyatakan bahwa setiap
kasus dapat saja diselesaikan tanpa menggunakan logika fuzzy, tetapi
pemanfaatan logika fuzzy akan mempercepat dan mempermudah hasil dalam setiap
kasus. Berikut adalah gambar dari Prof. Lotfi A. Zadeh.
PEMANFAATAN LOGIKA FUZZY
Mengapa kita perlu
menggunakan logika fuzzy? Berikut ini adalah beberapa alasan mengapa logika
fuzzy banyak digunakan saat ini diberbagai kasus. Alasan pemanfaatan logika
fuzzy adalah sudah menjadi sifatnya yang kuat selama tidak membutuhkan
ketepatan, input yang bebas derau, dan dapat diprogram untuk gagal dengan aman
jika sensor arus balik dimatikan atau rusak. Control output adalah fungsi
control halus meskipun jarak variasi input yang cukup besar.
Selama fuzzy logic controller memproses aturan –
aturan yang dibuat user yang memerintah system control target, ia dapat
dimodifikasi dengan mudah untuk meningkatkan atau mengubah secara drastis
performa system. Sensor yang baru dapat dengan mudah digabungkan kedalam system
secara sederhana dengan menghasilkan aturan memerintah yang sesuai.
Fuzzy logic tidak terbatas pada sedikit masukan
umpan-balik dan satu atau dua output control, tidak juga penting untuk menilai
atau menghitung parameter rata - rata perubahan dengan tujuan agar ia
diimplementasikan. Sensor data yang menyediakan beberapa indikasi untuk aksi
dan reaksi system sudah cukup. Hal ini memungkinkan sensor menjadi murah dan
tidak tepat sehingga menghemat biaya system keseluruhan dan kompleksitas
rendah.
Karena operasi – operasi yang berbasiskan aturan,
jumlah input yang masuk akal dapat diproses ( 1 sampai 8 atau lebih ) dan
banyak output ( 1 sampai 4 atau lebih ) dihasilkan, walaupun pendefinisian
rulebase secara cepat menjadi rumit jika terlalu banyak input dan output
dipilih untuk implementasi tunggal selama pendefinisian rules(aturan), hubungan
timbal baliknya juga harus didefinisikan. Akan lebih baik jika memecah system
kedalam potongan – potongan yang lebih kecil dan menggunakan fuzzy logic controllers
yang lebih kecil untuk didistribusikan pada system, masing – masing dengan
tanggung jawab yang lebih terbatas. Fuzzy Logic dapat mengontrol system
nonlinier yang akan sulit atau tidak mungkin untuk dimodelkan secara matematis.
Hal ini membuka pintu bagi system control yang secara normal dianggap tidak
mungkin untuk otomatisasi.
Konsep logika fuzzy mudah dimengerti.
Konsep
matematis yang mendasari penalaran fuzzy sangat sederhana dan mudah dimengerti
Logika fuzzy
sangat fleksibel
Logika fuzzy
memiliki toleransi terhadap data-data yang tidak tepat
Logika fuzzy
dapat bekerja sama dengan teknik-teknik kendali secara konvensional
Logika fuzzy
didasarkan pada bahasa alamiah
Sedangkan karakteristik utama dari fuzzy logic yang
ditemukan oleh Prof. Lotfi A. Zadeh adalah sebagai berikut:
·
Dalam fuzzy
logic, penalaran tepat dipandang sebagai suatu kasus terbatas dari penalaran
kira –kira.
·
Dalam fuzzy
logic segala sesuatunya adalah masalah derajat.
·
System logis
manapun dapat difuzzifikasi.Dalam fuzzy logic, pengetahuan diinterpretasikan
sebagai koleksi dari fuzzy yang dipaksakan pada sekumpulan variable.
·
Kesimpulan
dipandang sebagai sebuah proses dari perkembangan pembatas elastis.
BAGAIMANA LOGIKA FUZZY DIGUNAKAN
Adapun
langkah – langkah penggunaan fuzzy logic adalah sebagai berikut:
a.
Definisikan obyektif dan criteria control:
1) Apa yang
kita coba control ?
2) Apa yang
harus kita lakukan untuk mengontrol system ?
3) Respon
seperti apa yang kita butuhkan ?
4) Apa mode
kegagalan system yang mungkin ?
b. Tentukan
hubungan antara input dan output serta memilih jumlah minimum variable input
pada mesin fuzzy logic(secara khusus error dan rata – rata perubahan error)
1) Dengan
menggunakan struktur berbasis aturan dari fuzzy logic, jabarkan permasalahan
control ke dalam aturan IF X AND Y THEN Z yang mendefinisikan respon output
system yang diinginkan untuk kondisi input system yang diberikan. Jumlah dan
kompleksitas dari rules bergantung pada jumlah parameter input yang diproses
dan jumlah variable fuzzy yang bekerjasama dengan tiap – tiap parameter. Jika
mungkin, gunakan setidaknya satu variable dan turunan waktunya. Walaupun
mungkin untuk menggunakan sebuah parameter tunggal yang error saat itu juga
tanpa mengetahui rata – rata perubahannya, hal ini melumpuhkan kemampuan system
untuk meminamalisasi keterlampauan untuk sebuah tingkat input.
2) Buat
fungsi keanggotaan yang menjelaskan nilai input atau output yang digunakan
didalam rules.
3) Buat rutinitas
proses awal dan akhir yang penting jika diimplementasikan dalam software,
sebaliknya program rules kedalam mesin hardware fuzzy logic
DASAR-DASAR LOGIKA FUZZY
A. HIMPUNAN TEGAS / CRIPS
Sangat penting sekali bagi kita untuk terlebih dahulu mengetahui
apa itu crisp set atau yang dikenal juga dengan conventional set, sebelum kita
mengarah pada bagaimana himpunan fuzzy dibuat untuk kekurangan pada crisp set.
Dalam kebanyakan jenis pemikiran setiap harinya, dan refleksi bahasa darinya,
orang – orang menggunakan crisp set untuk mengelompokan sesuatu. Menjadi
anggota dari crisp set adalah seluruhnya berhubungan atau tidak sama sekali.
Seorang wanita dikatakan hamil ataupun tidak, ia tidak pernah “hamil sebagian”
atau “sedikit hamil”.
Berpikir dengan crisp set menjadikan segala sesuatunya
lebih sederhana, karena sesuatu bisa merupakan anggota dari suatu crisp set
atau tidak. Crisp set dapat digunakan untuk merepresentasikan gambaran
pengertian hitam dan putih. Seringkali juga, saat sesuatu itu merupakan anggota
dari sebuah crisp set maka ia kemudian (pada waktu yang sama) bukan merupakan
anggota dari crisp set manapun. Kembali hal ini menyederhanakan penggunaan
logika dengan proses pemikiran semacam ini. Konstruksi linguistik yang
menggambarkan jenis pemikiran ini dapat benar – benar berguna, terutama saat
kategori crisp digunakan. Pada himpunan tegas (crisp), nilai keanggotaan suatu
item x dalam suatu himpunan A, yang sering ditulis dengan µA[x], memiliki 2
kemungkinan, yaitu (Kusumadewi, 2004 : p3) :
Satu (1),
yang berarti bahwa suatu item menjadi anggota dalam suatu himpunan, atau
Nol (0),
yang berarti bahwa suatu item tidak menjadi anggota dalam suatu himpunan.
MACAM MACAM
LOGIKA FUZZY
1.
Logical
Connection dan Implication
P adalah
suatu fuzzy logic proposition, yaitu
suatu pernyataan mengenai suatu konsep yang batasannya tidak terdefinisi dengan
jelas. Dalam fuzzy Logical connectives dan
implication logic, nilai kebenaran
yang dapat diberikan kepada P adalah
nilai – nilai yang berada dalam interval [ 0,1 ]. Nilai 0 menyatakan bahwa P adalah salah dan nilai 1 menyatakan
bahwa P adalah benar. Pemberian nilai kebenaran untuk P dituliskan sebagai:
T : P → [ 0,1 ]
Di mana T adalah fungsi kebenaran yang memetakan
P ke suatu nilai dalam interval [ 0,1
]. Selanjutnya, 3 buah logical
connectives dapat didefinisikan
sebagai berikut:
Negation T(-P) = 1 – T(P)
Disjunction
T(P ˅ Q) = max{T(P), T(Q)}
Conjunction
T(P ˄ Q) = min{T(P), T(Q)}
Sedangkan untuk implication, terdapat banyak definisi
yang bisa digunakan bergantung pada penerjemahan semantiknya atau pada konteks
penggunaannya. Pada first-order logic,
implication didefinisikan sebagai berikut:
P => Q ≡ -P ˅ Q
Jika kita
mengkonversi implication tersebut ke
dalam fuzzy logic, sebagai berikut:
T(P => Q) = max{1 – T(P),
T(Q)}
2.
Approximate
Reasoning
Sebagian besar
penalaran yang dilakukan manusia bersifat perkiraan (approximate) dan hanya
sedikit manusia yang berfikir secara pasti dalam hal – hal yang bersifat kuantitatif
dan logis. Ketika dua orang sedang melakukan percakapan, terdapat banyak
kalimat yang mengandung kata – kata yang tidak pasti. Contohnya:
A : ‘Apakah dia anak pintar?’
B : ‘Sepertinya
begitu.’
A : ‘Apakah indeks Prestasi dan hasil tes
psikologinya bagus?’
B : ‘Ya, keduanya sangat bagus.’
A : ‘Apakah dia layak mendapatkan
beasiswa?’
B : ‘Ya, sepertinya itu adalah keputusan yang baik.’
Pada dialog
diatas, kedua orang tersebut sedang melakukan penalaran yang bersifat perkiraan
atau approximate reasoning, yaitu reasoning terhadap proposisi yang tidak
pasti. Contoh approximate reasoning adalah
sebagai berikut:
P1
: Sebagian besar anak kecil suka permen
P2 :
Andi adalah anak kecil
P3
: Sepertinya Andi suka permen
3.
Sistem Berbasis Aturan Fuzzy
Variabel linguistik
Adalah suatu
interval numerik dan mempunyai nilai – nilai linguistik, yang semantiknya
didefinisikan oleh fungsi keanggotaannya. Misalnya, Suhu adalah suatu variabel linguistik yang bisa didefinisikan pada
interval. Variabel tersebut bisa memiliki nilai – nilai linguistik seperti
‘Dingin’, ‘Hangat’, ‘Panas’ yang semantiknya didefinisikan oleh fungsi – fungsi
keanggotaan tertentu.
Suatu sistem
berbasis aturan fuzzy yang lengkap
terdiri dari 3 komponen utama:
1.
Fuzzification ,
mengubah masukan – masukan yang nilai kebenarannya bersifat pasti (crisp input) ke dalam bentuk fuzzy input, yang berupa nilai
linguistik yang semantiknya ditentukan berdasarkan fungsi keanggotaan tertentu.
2.
Inference ,
melakukan penalaran menggunakan fuzzy
input dan fuzzy rules yang telah
ditentukan sehingga menghasilkan fuzzy
output.
3.
Defuzzification , mengubah
fuzzy output menjadi crisp value berdasarkan fungsi
keanggotaan yang telah ditentukan.
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 :
Suyanto, ST, MSc.
(2011). Artificial Intelligence Searching,
Reasoning, Planning dan Learning. Bandung: Informatika.
http://pustaka.unpad.ac.id/wp-content/uploads/2010/07/dasar_dasar_fuzzy_logic.pdf
http://joinsucess.blogspot.co.id/2011/05/pengertian-dan-dasar-logika-fuzzy.html
Jannus Maurits Nainggolan, “Logika Fuzzy (Fuzzy Logic) : Teori dan Penerapan Pada Sistem Daya (Kajian Pengaruh Induksi Medan Magnet)”
KESIMPULAN
Fuzzy
logic didefinisikan sebagai suatu jenis logic
yang bernilai ganda dan berhubungan dengan ketidakpastian dan kebenaran
parsial. Pemanfaatan logika fuzzy adalah pada operasi-operasi yang dapat fungsi
control halus meskipun jarak variasi input yang cukup besar. Langkah –
langkah penggunaan fuzzy logic, antara lain; definisikan obyektif dan criteria control, tentukan hubungan antara input
dan output serta memilih jumlah minimum variable input pada mesin fuzzy
logic(secara khusus error dan rata – rata perubahan error). Dasar yang
digunakan dalam fuzzy logic yaitu himpunan tegas atau crips dengam
membandingkan suatu variabel dengan variabel lainnya. Terdapat beberapa macam logika
fuzzy yaitu Logical Connection dan Implication
dan Approximate Reasoning, Sistem
Berbasis Aturan Fuzzy. Dengan input, proses dan output logika fuzzy
tersebut maka pemanfaatan Fuzzy Logic dalam teknologi informasi akan lebih
maksimal sesuai dengan kebutuhan setiap pengguna.
|
|||||||
No comments:
Post a Comment