REASONING FUZZY SYSTEMS Pendahuluan Proportional logic dan FirstOrder

  • Slides: 47
Download presentation
REASONING FUZZY SYSTEMS

REASONING FUZZY SYSTEMS

Pendahuluan �Proportional logic dan First-Order Logic digunakan untuk merepresentasikan masalah yang pasti �Digunakan untuk

Pendahuluan �Proportional logic dan First-Order Logic digunakan untuk merepresentasikan 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

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

Fuzzy Set �Fuzzy set merupakan dasar dari fuzzy logic dan fuzzy systems �Crisp set

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 �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}

Fuzzy Set �Ilustrasi x = {5, 10, 20, 30, 40, 50, 60, 70, 80} x Balita Dewas a Muda Tua 5 0 0 10 0 0 1 0 20 0 0. 8 0. 1 30 0 1 0. 5 0. 2 40 0 1 0. 2 0. 4 50 0 1 0. 6 60 0 1 0 0. 8 70 0 1 80 0 1

Fuzzy Set �Pada tabel tersebut terdapat 4 buah fuzzy set dengan anggota dan derajat

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} �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

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

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

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

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

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

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

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 Defuzzification Crisp Value Output

�Fuzzification : mengubah nilai crisp input menjadi fuzzy input menggunakan fungsi-fungsi keanggotaan �Rule Evaluation/Inference

�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,

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 x

Inference �Dua model aturan fuzzy : �Model Mamdani Aturan fuzzy didefinisikan : IF x 1 is A 1 AND. . . AND Xn is An THEN y is B A 1, . . . , An dan B adalah nilai-nilai linguistik (fuzzy set) x 1 is A 1 menyatakan bahwa nilai variabel x 1 adalah anggota fuzzy set A 1

Inference �Model Sugeno Model ini menggunakan aturan yang berbentuk : IF x 1 is

Inference �Model Sugeno Model ini menggunakan aturan yang berbentuk : IF x 1 is A 1 AND. . . AND Xn is An THEN y = f (x 1, . . . , 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

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

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

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

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.

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

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

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 370 C dikonversikan ke nilai fuzzy dengan cara: �Suhu 370 C 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

Fungsi keanggotaan untuk suhu udara

Penyelesaian : Fuzzification �Misalkan untuk kelembaban tanah kita menggunakan fungsi keanggotaan trapesiun dengan 3

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

Fungsi keanggotaan untuk kelembaban tanah

Fungsi keanggotaan untuk kelembaban tanah

�Jadi proses fuzzifikasi menghasilkan empat fuzzy input yaitu : �Suhu udara = warm(2/3) dan

�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

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 Antecedenct 2 (kelembabn) Antecedent 1( suhu udara)

Aturan fuzzy untuk sistem kontrol penyiram air Antecedenct 2 (kelembabn) Antecedent 1( suhu udara) cold cool normal warm hot Dry Long long Long Moist Long Medium wet short Short short

� Ada 3 x 5 =15 aturan fuzzy yaitu:

� Ada 3 x 5 =15 aturan fuzzy yaitu:

Proses inferensi menngunakan model mamdani � Dapat digunakan 2 cara infrensi, yaitu clipping(alppha-cut) atau

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:

� Gunakan aturan conjuction (Λ) dengan memilih derajat keanggotaan minimum dari nilai-nilai linguistik yang

� 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

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

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

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 370 C dan kelembaban tanah 12% dibutuhkan durasi penyiraman selama 60, 97 detik.

Metode sugeno � Metode sugeno menggunakan fungsi keanggotaan yang lebih sederhana dibandingkan model mamdani.

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

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

�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;

Dengan matlab Rule viewer

Dengan matlab Rule viewer

Surface viewer

Surface viewer