REASONING FUZZY SYSTEMS
Pendahuluan Proportional logic dan First-Order Logic digunakan untuk merepresentasikan masalah-masalah yang pasti Digunakan untuk merepresentasikan masalah yang mengandung ketidakpastian. Dengan teori fuzzy set, kita dapat merepresentasikan dan menangai masalah ketidakpastian yang dalam hal ini bisa berarti keraguan, ketidaktepatan, kekurangan informasi dan kebenaran
Fuzziness dan Probabilitas Ada seorang ilmuwan terdampar disebuah 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 plastik cairan kimia mematikan telah dicampurkan ke dalam 50 botol ini secara tidak merata. Anda tidak akan mati jika meminum 1 botol, tetapi anda akan mati jika meminum 50 botol’. Karena dehidrasi berat ilmuwan membutuhkan 1 botol air mineral agar tetap bertahan hidup. Jika anda sebagai ilmuwan, anda akan mengambil sebotol minuman dari peti yang mana???
Fuzzy Set Fuzzy set merupakan dasar dari fuzzy logic dan fuzzy systems Crisp set : himpunan yang membedakan anggota dan non anggotanya dengan batasan yang jelas C = { x | x integer, x > 2} anggotanya : 3, 4, 5, dst
Fuzzy Set Misalkan U adalah universe (semesta) objek dan x adalah anggota U. Suatu fuzzy set A di dalam U didefinisikan sebagai suatu fungsi keanggotaan A(x), yang memetakan setiap objek di U menjadi suatu nilai real dalam interval [0,1] Nilai-nilai A(x) menyatakan derajat keanggotaan x didalam A
Fuzzy Set Ilustrasi x = {5, 10, 20, 30, 40, 50, 60, 70, 80} x Balita Dewasa Muda Tua 5 1 10 20 0.8 0.1 30 0.5 0.2 40 0.4 50 0.6 60 70 80
Fuzzy Set Pada tabel tersebut terdapat 4 buah fuzzy set dengan anggota dan derajat keanggotaan sebagai berikut : Balita = {} Dewasa = {20, 30, 40, 50, 60, 70, 80} derajat keanggotaan : Dewasa = {0.8, 1, 1, 1, 1, 1, 1} Muda = {5, 10, 20, 30, 40, 50} derajat keanggotaan : Muda = {1, 1, 0.8, 0.5, 0.2, 0.1} Tua= {20, 30, 40, 50, 60, 70, 80} derajat keanggotaan : Tua = {0.1, 0.2, 0.4, 0.6, 0.8, 1, 1}
Fungsi Keanggotaan Fungsi keanggotaan digunakan untuk merepresentasikan masalah dan menghasilkan keputusan yang akurat Ada 4 fungsi keanggotaan yang paling sering digunakan Fungsi Sigmoid Fungsi Phi Fungsi Segitiga Fungsi Trapesium
Fungsi Sigmoid Fungsi ini berbentuk kurva sigmoidal seperti huruf S. Setiap nilai x (anggota crisp set)dipetakan kedalam interval [0,1]
Fungsi Phi Pada fungsi keanggotaan ini, hanya terdapat satu nilai x yang memiliki derajat keanggotaan sama dengan 1, yaitu ketika x = c
Fungsi Segitiga Sama seperti fungsi phi, hanya terdapat satu nilai x yang memiliki derajat keanggotaan sama dengan 1, yaitu ketika x = b
Fungsi Trapesium Pada fungsi ini terdapat beberapa nilai x yang memiliki derajat keanggotaan sama dengan 1 yaitu ketika b ≤ x ≤ c
Fuzzy Logic Fuzzy logic didefinisikan sebagai suatu jenis logic yang bernilai ganda dan berhubungan dengan ketidakpastian dan kebenaran parsial
Sistem berbasis Aturan Fuzzy Suatu sistem berbasis aturan fuzzy yang lengkap terdiri atas tiga komponen utama : Crisp input Fuzzification Fuzzy input Fuzzy rules Inference Fuzzy Output Output Defuzzification Crisp Value
Fuzzification : mengubah nilai crisp input menjadi fuzzy input menggunakan fungsi-fungsi keanggotaan Rule Evaluation/Inference : melakukan reasoning menggunakan nilai-nilai fuzzy input dan fuzzy rule sehingga menghasilkan fuzzy output Defuzzification : mengubah fuzzy output menjadi nilai crisp berdasarkan fungsi keanggotaan untuk output
Fuzzification Masukan-masukan yang nilai kebenarannya bersifat pasti (crisp input) dikonversi ke bentuk fuzzy input, yang berupa nilai linguistik yang semantiknya ditentukan berdasarkan fungsi keanggotaannya. Misal : Suhu 20 dikonversi menjadi Hangat dengan derajat keanggotaan 0.7
Inference Dua model aturan fuzzy : Model Mamdani Aturan fuzzy didefinisikan : IF x1 is A1 AND ... AND Xn is An THEN y is B A1, ..., An dan B adalah nilai-nilai linguistik (fuzzy set) x1 is A1 menyatakan bahwa nilai variabel x1 adalah anggota fuzzy set A1
Inference Model Sugeno Model ini menggunakan aturan yang berbentuk : IF x1 is A1 AND ... AND Xn is An THEN y = f (x1, ... , xn) f bisa berupa sembarang fungsi dari variabel input yang nilainya berada dalam interval variabel output.
Defuzzification Centroid Method Metode ini disebut juga sebagai Center of Area or Center of Gravity y adalah nilai crisp R(y) adalah derajat keanggotaan
Defuzzification Height Method Dikenal sebagai prinsip keanggotaan maksimum karena memilih nilai crisp yang memiliki derajat keanggotaan maksimum 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
Defuzzification First (or Last) of Maxima Metode ini merupakan generalisasi dari height method untuk kasus dimana fungsi keanggotaan output memiliki lebih dari satu nilai maksimum.
Defuzzification Mean-Max method Metode ini disebut juga sebagai Middle of Maxima. Merupakan generalisasi dari height method untuk kasus dimana terdapat lebih dari satu nilai crisp yang memiliki derajat keanggotaan maksimum. m adalah nilai crisp paling kecil, M adalah nilai crisp terbesar
Defuzzification Weighted Average Metode ini mengambil nilai rata-rata dengan menggunakan pembobotan berupa derajat keanggotaan. y adalah nilai crisp dan (y) adalah derajat keanggotaan dari nilai crisp y
Contoh Kasus Misalkan kita ingin membangun sistem untukb mengontrol alat penyiram air. Input untuk sistem tersebut adalah : Suhu udara (dalam C) dan kelembaban tanah (dalam %). Sedangkan output yang diinginkan adalah durasi penyiraman (dalam satuan menit). Misalkan, nilai crisp yang diterima oleh sensor suhu adalah 37 C dan nilai crisp yang diterima sensor kelembaban adalah 12%. Berapa lama durasi penyiraman yang harus dilakukan.
Penyelesaian : Fuzzification Misalkan untuk suhu udara kita menggunakan fungsi keanggotaan trapesium dengan 5 variabel linguistik yaitu: cold, cool, normal, warm, hot Dengan fungsi ini, maka crisp input suhu 370C dikonversikan ke nilai fuzzy dengan cara: Suhu 370C berada pada nilai linguistik warm dan hot Semantik atau derajat keanggotaan untuk warm dihitung menggunakan rumus : -(x-d)/(d-c), c<x≤d Berdasarkan gambar : Dimana c=36 dan d=39 , sehinga derajat keanggotaan warm = -(37-39)/(39-36) = 2/3 Derajat keanggotaan untuk hot hitung menggunakan rumus : (x- a)/(b-a), a<x<b, dimana a=36 dan b=39, sehinga derajat keanggotaan hot = (37-39)/(39-36) = -1/3
Fungsi keanggotaan untuk suhu udara
Penyelesaian : Fuzzification Misalkan untuk kelembaban tanah kita menggunakan fungsi keanggotaan trapesiun dengan 3 variabel linguistik yaitu: dry, moist, wet Dengan fungsi ini, maka crisp input kelembaban 12% dikonversikan ke nilai fuzzy dengan cara: Kelembaban 12% berada pada nilai linguistik dry dan moist Semantik atau derajat keanggotaan untuk dry dihitung menggunakan rumus : -(x-d)/(d-c), c<x≤d Berdasarkan gambar : Dimana c=10 dan d=20 , sehinga derajat keanggotaan dry = -(12-20)/(20-10) = 4/5 Derajat keanggotaan untuk moist hitung menggunakan rumus : (x-a)/(b-a), a<x<b, dimana a=10 dan b=20, sehinga derajat keanggotaan moist = (12-20)/(20-10) = 1/5
Fungsi keanggotaan untuk kelembaban tanah
Jadi proses fuzzifikasi menghasilkan empat fuzzy input yaitu : Suhu udara = warm(2/3) dan hot (1/3) Kelembaban tanah =dry(4/5) dan moist(1/5)
Proses inferensi Untuk durasi penyiraman kita menggunakan fungsi keanggotaan trapesium dengan 3 nilai linguistik: short, medium dan long
Aturan fuzzy untuk sistem kontrol penyiram air Antecedent 1( suhu udara) cold cool normal warm hot Dry Long long Moist Medium wet short Short Antecedenct 2 (kelembabn)
Ada 3 x 5 =15 aturan fuzzy yaitu:
Proses inferensi menngunakan model mamdani Dapat digunakan 2 cara infrensi, yaitu clipping(alppha-cut) atau scaling. Metode yang paling umum digunakan adalah clipping karena mudah diimplementasikan dan bila diagregasikan dengan fungsi lain akan menghasilkan bentuk yang mudah difuzifikasi Dari empat data fuzzy yaitu :Suhu udara = warm(2/3) dan hot (1/3) Kelembaban tanah =dry(4/5) dan moist(1/5) Diperoleh empat aturan dari 15 aturan yang dapat diaplikasikan yaitu:
Sehinga diperoleh dua pernyataan yaitu : Gunakan aturan conjuction (Λ) dengan memilih derajat keanggotaan minimum dari nilai- nilai linguistik yang dihubungkan oleh Λ dan lakukan clipping pada fungsi keanggotaan trapesium untuk durasi penyiraman. Sehinga diperoleh : IF suhu is warm (2/3) AND kelembaban is Dry (4/5) then durasi is long(2/3) IF suhu is warm (2/3) AND kelembaban is Moist (1/5) then durasi is medium (1/5) IF suhu is Hot (1/3) AND kelembaban is Dry (4/5) then durasi is long(1/3) IF suhu is Hot (1/3) AND kelembaban is Moist (1/5) then durasi is Medium (1/5) Gunakan aturan disjunction (V) dengan memilih derajat keanggotaan maximum dari nilai- nilai linguistik yang dihubungkan oleh V dan lakukan clipping pada fungsi keanggotaan trapesium untuk durasi penyiraman. Sehinga diperoleh : ‘Durasi is long (2/3) V durasi is long (1/3)’ dihasilkan durasi is long (2/3)’ ‘Durasi is medium (1/5) V durasi is medium (1/5)’ dihasilkan durasi is medium (1/5)’ Sehinga diperoleh dua pernyataan yaitu : Durasi is long (2/3) dan durasi is medium (1/5)’
Proses inferensi menggunakan model mamdani a. Durasi is long (2/3) b. Durasi is Medium (1/5)
Proses defuzzyfication Sebelum defuzyfication , kita harus melakukan proses composition, yaitu agregasi hasil clipping dari semua aturan fuzzy sehinga didapatkan satu fuzzy set tunggal . Proses composition dari dua fuzzy set, Durasi is long (2/3) dan durasi is medium (1/5), menghasilkan satu fuzzy set tunggal. Proses composition pada model mamdani dari dua fuzzy set Durasi is Medium (1/5) dan long (2/3)
Untuk proses defuzzyfication digunakan centroid method Center of area Dengan menentukan titik-titik sembarangan didaerah berarsir , misalkan : 24,28,32,36,40,48,60,70,80 dan 90 diperoleh : Untuk suhu 370C dan kelembaban tanah 12% dibutuhkan durasi penyiraman selama 60,97 detik.
Metode sugeno Metode sugeno menggunakan fungsi keanggotaan yang lebih sederhana dibandingkan model mamdani. Fungsi keanggotaan tersebut adalah singleton , yaitu fungsi keanggotaan yang memiliki derajat keanggotaan 1 pada suatu nilai crisp tunggal dan 0 pada semua crisp yang lain Dengan cara yang sama seperti model mamdani diperoleh Durasi is long (2/3) dan durasi is medium (1/5)’
Proses defuzzyfication menggunakan model sugeno Proses composition dari dua fuzzy set, Durasi is long (2/3) dan durasi is medium (1/5), menghasilkan satu fuzzy set tunggal.
Jika menggunakan Height method untuk proses defuzzyfication , Durasi is long (2/3) dan durasi is medium (1/5), dipilih nilai maksimum nya yaitu Durasi is long (2/3) . Karena nilai crisp untuk long adalah 60, maka durasi penyiraman adalah 60 menit. Jika menggunakan Weighted Average untuk proses defuzzyfication, diperoleh;
Rule viewer Dengan matlab
Surface viewer