Fuzzy Logic

Pendahuluan

Logika fuzzy yang pertama kali diperkenalkan oleh Lotfi A. Zadeh, memiliki derajat keanggotaan dalam rentang 0(nol) hingga 1(satu), berbeda dengan logika digital yang hanya memiliki dua nilai yaitu 1(satu) atau 0(nol). Logika fuzzy digunakan untuk menerjemahkan suatu besaran yang diekspresikan menggunakan bahasa (linguistic), misalkan besaran kecepatan laju kendaraan yang diekspresikan dengan pelan, agak cepat, cepat dan sangat cepat. Secara umum dalam sistem logika fuzzy terdapat empat buah elemen dasar, yaitu:

1.  Basis kaidah (rule base), yang berisi aturan-aturan secara linguistik yang bersumber dari para pakar;

2.  Suatu mekanisme pengambilan keputusan (inference engine), yang memperagakan bagaimana para pakar mengambil suatu keputusan dengan menerapkan pengetahuan (knowledge);

3.  Proses fuzzifikasi (fuzzification), yang mengubah besaran tegas (crisp) ke besaran fuzzy;

4.  Proses defuzzifikasi (defuzzification), yang mengubah besaran fuzzy hasil dari inference engine, menjadi besaran tegas (crisp).

Fuzziness dan Probabilitas

Banyak peneliti berbeda pendapat tentang teori fuzzy dan teori probabilitas. Apakah tidak cukup menyelesaikan masalah ketidakpastian dengan menggunakan teori probabilitas? Kenapa harus menggunakan teori fuzzy? Sebenarnya, kedua teori tersebut memang sama-sama unntuk menangani masalah ketidakpastian. Tetapi, perbedaannya adalah pada jenis ketidakpastian yang ditangani. Agar lebih jelas, perhatikan ilustrasi berikut ini:

Ada seorang ilmuwan terdampar di sebuah pulau gersang tanpa air sedikitpun. Pada suatu hari, dia menemukan dua buah peti, masing-masing peti berisi 50 botol air mineral. Pada peti pertama terdapat tulisan ‘Peringatan: 1 dari 50 botol ini berisi cairan kimia mematikan yang warna dan rasanya sama dengan air mineral. Anda akan mati seketika jika meminumnya’. Pada peti kedua, terdapat tulisan ‘Peringatan: satu plastic cairan kimia mematikan telah dicampurkan ke dalam 50 botol ini secara tidak merata. Anda tidak akan mati jika hanya meminum satu botol, tetapi anda akan mati jika meminum 50 botol tersebut’. Karena dehidrasi berat, ilmuwan membutuhkan satu botol air mineral agar tetap bertahan hidup. Jika anda sebagai ilmuwan, anda akan mengambil sebotol minuman peti yang mana?

Pada peti pertama, jenis ketidakpastian yang ada disebut peluang atau probabilitas. Memilih 1 dari 50 botol memberikan probabilitas salah memilih botol, meminum cairan, dan mati sebesar 0,02. Di sini, terdapat ketidakpastian apakah kita mati atau hidup. Sedangkan pada peti ke dua, jenis ketidakpastian yang ada disebut fuzziness (kesamaran): tidak masalah botol mana yang kita pilih dan kita minum airnya, air tersebut mungkin hanya membuat kepala kita pusing tetapi kita masih bisa bertahan hidup. Dalam hal ini, air di dalam masing-masing botol memiliki kandungan cairan kimia yang berbeda-beda. Tingkat kandungan inilah yang disebut fuzziness.

Probabilitas dan Ketidakpastian

“… seseorang yang menderita hepatitis menunjukkan dalam 60% dari semua kasus demam yang kuat, dalam 45% dari semua kasus berwarna kekuningan kulit, dan di 30% dari semua kasus menderita mual … ”

Conventional (Boolean) Set Theory:


Fuzzy Set Theory:

 

Fuzzy Set

Fuzzy set merupakan dasar dari fuzzy logic dan fuzzy system. Apa itu crisp set? Himpunan yang membedakan anggota dan non anggotanya dengan batasan yang jelas disebut crisp set. Misalnya, jika C = {x|x integer, x > 2}, maka anggota C adalah 3, 4, 5, dan seterusnya. Sedangkan yang bukan anggota C adalah 2, 1, 0, -1, dan seterusnya. Apa itu fuzzy set? Misalkan U adalah universe (semesta) objek dan x adalah anggota U. Suatu fuzzy set A di U didefinisikan sebagai suatu fungsi keanggotaan µA(x), yang memtakan setiap objek di U menjadi suatu nilai real dalam interval [0,1]. Nilai-nilai µA(x) menyatakan derajat keanggotaan x di dalam A.

Konvensi penulisan fuzzy set

Konvensi untuk menuliskan fuzzy set yang dihasilkan dari universe U yang diskrit adalah sebagai berikut:

Sedangkan jika U adalah kontinyu, maka fuzzy set A dinotasikan sebagai:

Fungsi keanggotaan dengan semesta pembicaraan, (a).diskrit, (b).kontinyu.

Membership function (Fungsi-fungsi keanggotaan)

Di dalam fuzzy system, fungsi keanggotaan memainkan peranan yang sangat penting untuk merepresentasikan masalah dan menghasilkan keputusan yang akurat. Terdapat banyak sekali fungsi keanggotaan yang bisa digunakan.

1. Fungsi Sigmoid

Fungsi keanggotaan sigmoid, disifati oleh parameter {a,c} yang didefinisikan sebagai berikut:


parameter a digunakan untuk menentukan kemiringan kurva pada saat x = c. Polaritas dari a akan menentukan kurva itu kanan atau kiri terbuka, seperti terlihat pada Gambar 2.(d) dan 2.(e).

2. Fungsi Phi

Disebut fungsi Phi karena bentuk seperti symbol phi. Pada fungsi keanggotaan ini, hanya terdapat satu nilai x yang memiliki derajat keanggotaan sama dengan 1, yaitu ketika x = c. Nilai-nilai di sekitar c memiliki derajat keanggotaan yang masih mendekati 1. Grafik dan notasi matematika dari fungsi ini adalah sebagai berikut.

3. Fungsi Segitiga

Fungsi keanggotaan segitiga, disifati oleh parameter{a,b,c} yang didefinisikan sebagai berikut:

bentuk yang lain dari persamaan di atas adalah

parameter {a,b,c} (dengan a<b<c) yang menentukan koordinat x dari ketiga sudut segitiga tersebut, seperti terlihat pada Gambar 2(a).

4. Fungsi Generalized Bel

Fungsi keanggotaan generalized bell, disifati oleh parameter {a,b,c} yang didefinisikan sebagai berikut:

parameter b selalu positif, supaya kurva menghadap kebawah, seperti terlihat pada Gambar 2(d).

5. Fungsi Gaussian

Fungsi keanggotaan Gaussian, disifati oleh parameter {c,s} yang didefinisikan sebagai berikut:

Fungsi keanggotaan Gauss ditentukan oleh parameter c dan s yang menunjukan titik tengah dan lebar fungsi, seperti terlihat pada Gambar 2(c) .

6. Fungsi Trapesium

Fungsi keanggotaan trapesium, disifati oleh parameter{a,b,c,d} yang didefinisikan sebagai berikut:

parameter {a,b,c,d} (dengan a<b<c<d) yang menentukan koordinat x dari keempat sudut trapesium tersebut, seperti terlihat pada Gambar 2(b).

Kurva fungsi keanggotaan, (a).segitiga(x;20,50.80), (b).trapesium (x;10,30,70,90), (c).gaussian(x;50,15), (d).bell(x;10,2,50), (e).sigmoid (x;0.2,50) dan (f).sigmoid(x;-0.2,50).

SISTEM BERBASIS ATURAN FUZZY

Variabel linguistic

Variabel linguistic adalah suatu interval numeric dan mempunyai nilai-nilai linguistic, yang semantiknya didefinisikan oleh fungsi keanggotaannya. Misalnya, suhu adalah suatu variable linguistic yang bisa memiliki nilai-nilai linguistic seperti ‘Dingin’, ‘Hangat, ‘Panas’ yang semantiknya didefinisikan oleh fungsi-fungsi keanggotaan tertentu.

Suatu system berbasis aturan fuzzy yang lengkap terdiri dari tiga komponen utama: Fuzzyfication, Inference dan Defuzzification. Fuzzification mengubah masukan-masukan yang nilai kebenarannya bersifat pasti (crisp input) ke dalam bentuk fuzzy input, yang berupa nilai linguistic yang semantiknya ditentukan berdasarkan fungsi keanggotaan tertentu. Inference melakuakn penalaran menggunakan fuzzy input dan fuzzy rules yang telah ditentukan sehingga menghasilkan fuzzy output. Sedangkan Deffuzification mengubah fuzzy output menjadi crisp rule berdasarkan fungsi keanggotaan yang telah ditentukan.

Fuzzification

Masukan-masukan yang nila kebenarannya bersifat pasti (crisp input) dikonversi ke bentuk fuzzy input, yang berupa nilai linguistik yang semantiknya ditentukan berdasarkan fungsi keanggotaan.

Inference

Suatu aturan fuzzy dituliskan sebagai:

IF antecendent THEN consequent

Dalam suatu system berbasis aturan fuzzy, proses inference memperhitungkan semua aturan  yang ada dalam basis pengetahuan. Hasil dari proses inference direpresentasikan  oleh suatu fuzzy set untuk setiap untuk setiap variable  bebas (pada consequent). Derajat keanggotaan untuk setiap nilai variable tidak bebas menyatakan ukuran kompatibilitas terhadap variable bebas (pada antecendent). Misalkan, terdapat suatu system dengan n variable bebas x1, …, xndan m variable tidak bebas y1, …,  ym. Misalkan R adalah suatu basis dari sejumlah r aturan fuzzy

IF P1(x1,…,xn)THEN Q1(1,…,ym),

.

.

IF Pr(x1,…,xn)THEN Qr(1,…,ym),

Dimana P1,…,Pr menyatakan fuzzy predicate untuk variable bebas, dan Q1,…,Qr menyatakan fuzzy predicate untuk variable tidak bebas.

Terdapat dua model aturan fuzzy yang digunakan secara luas dalam berbagai aplikasi, yaitu:

  • Model Mamdani

Pada model ini, aturan fuzzy didefinisikan sebagai;

IFx1 is A1AND…AND xn is An THEN y is B,

Dimana A1,…,An, dan B adalah nilai-nilai linguistic (atau fuzzy set) dan “x1 is A1” menyatakan bahwa nilai variable x1 adalah anggota fuzzy set A1.

  • Model Sugeno

Model ini dikenal juga sebagai Takagi-Sugeno-Kang (TSK) model, yaitu suatu varian dari model Mamdani. Model ini menggunakan aturan yang berbentuk:

IF x1 is A1 AND…AND xn is An THEN y=f(x1,…,xn),

Dimana  f  bisa berupa sembarang fungsi dari variabel-variabel input yang nilainya berada dalam interval veriabel output. Biasanya, fungsi ini dibatasi dengan menyatakan f sebagai kombinasi linier dari variabel-variabel input:

f(x1,…,xn)=w0+ w1 x1+…+ wn xn,

dimana w0, w1,…, wn adalah konstanta yang berupa bilangan real yang merupakan bagian dari spesifikasi aturan fuzzy.

Defuzzification

Terdapat berbagai metode defuzzification yang telah berhasil diaplikasikan untuk berbagai macam masalah.

  • Centroid method

Metode ini disebut juga sebagai Centre of Area atau Centre of Gravity. Metode ini merupakan metode yang paling penting dan menarik diantara semua metode yang ada. Metode ini menghitung nilai crisp menggunakan rumus:

Dimana y* suatu nilai crisp. Fungsi integration dapat diganti dengan fungsi summation jika y bernilai diskrit, sehingga menjadi:

Dimana y adalah nilai crisp dan  adalah derajat keanggotaan dari y.

  • Height method

Metode ini dikenal juga sebagai prinsip keanggotaan maksimum karena metode ini secara sederhana memilih nilai crisp yang memiliki derajat keanggotaan maksimum. Oleh karena itu, metode ini hanya bisa dipakai untuk fungsi keanggotaan yang memiliki derajat keanggotaan 1 pada suatu nilai crisp tunggal dan 0 pada semua nilai crisp yang lain. Fungsi seperti ini sering disebut sebagai singleton.

  • First (or last) of Maxima

Metode ini juga merupakan generalisasi dari height method untuk kasus dimana fungsi keanggotaan output memiliki lebih dari satu nilai maksimum. Sehingga, nilai crisp yang digunakan adalah salah satu dari nilai yang dihasilkan dari maksimum pertama atau maksimum terakhir (tergantung pada aplikasi yang akan dibangun).

  • Mean-Max method

Metode ini disebut juga sebagai Middle of Maxima. Metode ini merupakan generalisasi dari height method untuk kasus dimana terdapat lebih dari satu nilai crisp yang memiliki derajat keanggotaan maksimum. Sehingga y* didefinisikan sebagai titik tengah antara nilai crisp terkecil dan nilai crisp terbesar:

Dimana m adalah nilai crisp yang paling kecil dan M adalah nilai crisp yang paling besar.

  • Weighted Average

Metode ini mengambil nila rata-rata dengan menggunakan pembobotan berupa derajat keanggotaan. Sehingga y* didefinisikan sebagai:

Dimana y adalah nilai crisp dan µ(y) adalah derajat keanggotaan dari nilai crisp y.

Permasalahan pada Fuzzy System

Pada sebagian masalah, dimana terdapat seorang ahli yang sangat memahami tingkah laku variabel-variabel linguistic dan aturan yang ada, maka pendefinisian fungsi keanggotaan dan aturan fuzzy bisa dilakukan dengan mudah dan cepat.

Tetapi ketika kita tidak bisa memahami masalah dan tidak bisa menemukan ahli yang memahami masalah yang kita hadapi, maka pendefinisian fungsi keanggotaan dan aturan fuzzy memerlukan usaha keras dan waktu yang lama. Jika fungsi keanggotaan atau aturan fuzzy yang kita definisikan tidak tepat, maka performansi dari system fuzzy yang kita bangun menjadi tidak optimal. Tetapi dalam bidang Soft Computing telah ditemukan cara pendefinisian kedua hal tersebut, yaitu menggunakan Evolutionary Algorithm (EA) atau Artificial Neural Network (ANN). Kedua metode tersebut, baik EA maupun ANN, berusaha menemukan fungsi keanggotaan ataupun aturan fuzzy yang paling optimum untuk masalah yang dihadapi. Lebih detail mengenai hal ini dapat dilihat di buku “Soft Computing: Integrating Evolutionary, Neural, and Fuzzy System” karangan A. Tettamanzi dan M. Tomassini.

___________________________________________________________________________________________

Daftar Pustaka

http://trensains.com/fuzzy.htm

Suyanto. 2007.“Artificial Intelegent; Searching, Reasoning, Planing, and Learning”. Penerbit Informatika. Bandung

http://www.fuzzytech.com/binaries/e_p_dv1.ppt

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s