Kecerdasan Buatan 10 Logika Fuzzy DALAM KEHIDUPAN SEHARI
Kecerdasan Buatan #10 Logika Fuzzy
DALAM KEHIDUPAN SEHARI –HARI BIASA DITEMUI HAL-HAL YANG DIKOTOMI (hitam atau putih, ya atau tidak dll) HIMPUNAN (‘CRISP’ SET) ya atau tidak (0 atau 1) Bagaimana dengan sesuatu yang sifatnya ‘abu-abu’ ? (tinggi, tua dll) Contoh : Youth Middle age Old age : < 35 tahun : 35 – 55 tahun : ≥ 56 tahun
Definisi • Logika fuzzy adalah suatu cara yang tepat untuk memetakan suatu ruang input ke dalam suatu ruang output. • Logika Fuzzy adalah peningkatan dari logika Boolean yang mengenalkan konsep kebenaran sebagian. Di mana logika klasik menyatakan bahwa segala hal dapat diekspresikan dalam istilah binary (0 atau 1, hitam atau putih, ya atau tidak), logika fuzzy menggantikan kebenaran boolean dengan tingkat kebenaran.
ALASAN DIGUNAKANNYA LOGIKA FUZZY • 1. Konsep logika fuzzy mudah dimengerti. Konsep matematis yang mendasari penalaran fuzzy sangat sederhana dan mudah dimengerti. • 2. Logika fuzzy sangat fleksibel. • 3. Logika fuzzy memiliki toleransi terhadap data-data yang tidak tepat. • 4. Logika fuzzy mampu memodelkan fungsi-fungsi nonlinear yang sangat kompleks. • 5. Logika fuzzy dapat membangun dan mengaplikasikan pengalaman-pengalaman para pakar secara langsung tanpa harus melalui proses pelatihan. • 6. Logika fuzzy dapat bekerjasama dengan teknik-teknik kendali secara konvensional. • 7. Logika fuzzy didasarkan pada bahasa alami.
Himpunan Fuzzy • Pada himpunan tegas (crisp set), nilai keanggotaan suatu item x dalam suatu himpunan A (ditulis A[x]) memiliki 2 kemungkinan : – Satu (1), artinya x adalah anggota A – Nol (0), artinya x bukan anggota A • Contoh 1 : Jika diketahui : S={1, 2, 3, 4, 5, 6} adalah semesta pembicaraan A={1, 2, 3} B={3, 4, 5} maka : – – Nilai kaanggotaan 2 pada A, A[2] = 1, karena 2 A Nilai kaanggotaan 4 pada A, A[4] = 0, karena 4 A Nilai kaanggotaan 2 pada B ? ? ? ? Nilai kaanggotaan 5 pada B ? ? ? ?
Contoh 2: “Jika suhu lebih tinggi atau sama dengan 80 o. F, maka suhu disebut panas, sebaliknya disebut tidak panas” Kasus : –Suhu = 100 o. F, maka Panas –Suhu = 80. 1 o. F, maka Panas –Suhu = 79. 9 o. F, maka tidak panas –Suhu = 50 o. F, maka tidak panas • • If Suhu ≥ 80 o. F, disebut panas If Suhu < 80 o. F, disebut tidak panas Fungsi keanggotaan dari himpunan tegas gagal membedakan antara anggota pada himpunan yang sama • Ada problem-problem yang terlalu kompleks untuk didefinisikan secara tepat •
Contoh 3 : Misal variable umur dibagi menjadi 3 katagori : • MUDA umur <35 tahun • PAROBAYA 35 ≤ umur ≤ 55 tahun • TUA umur > 55 tahun 1 Muda 1 [x] 0 Parobaya 35 0 Tua 1 [x] 35 55 0 55 Gambar 2 a. Keanggotaan himpunan biasa (crisp) umur muda dan parobaya • • • Apabila seseorang berusia 34 tahun, maka ia dikatakan MUDA Apabila seseorang berusia 35 tahun, maka ia dikatakan TIDAK MUDA Apabila seseorang berusia 35 tahun, maka ia dikatakan PAROBAYA Apabila seseorang berusia 35 tahun kurang 1 hari, maka ia dikatakan TIDAK PAROBAYA Apabila seseorang berusia 55 tahun, maka ia dikatakan TIDAK TUA Apabila seseorang berusia 55 tahun lebih ½ hari, maka ia dikatakan TUA
• Dari sini bisa dikatakan bahwa pemakaian himpunan crisp untuk menyatakan umur sangat tidak adil, adanya perubahan kecil saja pada suatu nilai mengakibatkan perbedaan katagori yang cukup signifikan • Himpunan fuzzy digunakan untuk mengantisipasi hal tersebut. Sesorang dapat masuk dalam 2 himpunan yang berbeda. MUDA dan PAROBAYA, PAROBAYA dan TUA, dsb. Seberapa besar eksistensinya dapat dilihat pada nilai/derajat keanggotaannya. Gambar berikut menunjukkan himpunan fuzzy untuk variabel umur : 1 Muda Parobaya 25 35 40 45 50 55 Tua [x] 0, 5 0, 25 0 65 Gambar 2 b. Himpunan Fuzzy untuk variable umur
1 Muda Parobaya 25 35 40 45 50 55 Tua [x] 0, 5 0, 25 0 65 Gambar 2 b. Himpunan Fuzzy untuk variable umur Apabila x memiliki nilai keanggotaan fuzzy A[x]=0 berarti x tidak menjadi anggota himpunan A, demikian pula apabila x memiliki nilai keanggotaan fuzzy µA[x]=1 berarti x menjadi anggota penuh pada himpunan A.
ATRIBUT HIMPUNAN FUZZY
HIMPUNAN FUZZY Variabel temperatur, terbagi menjadi 5 himpunan fuzzy, yaitu: DINGIN, SEJUK, NORMAL, HANGAT, dan PANAS. SEMESTA? ? DOMAIN? ?
FUNGSI KEANGGOTAAN HIMPUNAN FUZZY (MEMBERSHIP FUNCTION) • • 1 Adalah suatu fungsi (kurva) yang menunjukkan pemetaan titik-titik input data ke dalam nilai keanggotaannya (derajat keanggotaan) yang memiliki interval antara 0 sampai 1. Ada beberapa fungsi yang bisa digunakan : 1. Representasi linier
FUNGSI KEANGGOTAAN HIMPUNAN FUZZY (MEMBERSHIP FUNCTION) 11. Representasi linier Contoh: Fungsi keanggotaan untuk himpunan PANAS pada variabel temperatur ruangan seperti terlihat pada Gambar Panas (27) = ? ? Panas (34) = ? ?
FUNGSI KEANGGOTAAN HIMPUNAN FUZZY (MEMBERSHIP FUNCTION) 11. Representasi linier Contoh: Fungsi keanggotaan untuk himpunan DINGIN pada variabel temperatur ruangan seperti terlihat pada Gambar dingin (25) = ? ? dingin (17) = ? ?
2. 2 Representasi segitiga (triangular) Ditentukan oleh 3 parameter {a, b, c} sebagai berikut : Fungsi keanggotaan untuk himpunan NORMAL pada variabel temperatur ruangan seperti terlihat pada Gambar
3. 3 Representasi Trapesium Ditentukan oleh 4 parameter {a, b, c, d} sebagai berikut : Fungsi keanggotaan untuk himpunan NORMAL pada variabel temperatur ruangan seperti terlihat pada Gambar
4 Representasi bentuk BAHU Daerah yang terletak di tengah-tengah suatu variabel yang direpresentasikan dalam bentuk segitiga, pada sisi kanan dan kirinya akan naik dan turun (misalkan: DINGIN bergerak ke SEJUK bergerak ke HANGAT dan bergerak ke PANAS). Tetapi terkadang salah satu sisi dari variabel tersebut tidak mengalami perubahan. Sebagai contoh, apabila telah mencapai kondisi PANAS, kenaikan temperatur akan tetap berada pada kondisi PANAS. Himpunan fuzzy ‘bahu’, bukan segitiga, digunakan untuk mengakhiri variabel suatu daerah fuzzy. Bahu kiri bergerak dari benar ke salah, demikian juga bahu kanan bergerak dari salah ke benar.
5 Representasi bentuk S Kurva PERTUMBUHAN dan PENYUSUTAN merupakan kurva-S atau sigmoid yang berhubungan dengan kenaikan dan penurunan permukaan secara tak linear. Kurva-S untuk PERTUMBUHAN akan bergerak dari sisi paling kiri (nilai keanggotaan = 0) ke sisi paling kanan (nilai keanggotaan = 1). Fungsi keanggotaannya akan tertumpu pada 50% nilai keanggotaannya yang sering disebut dengan titik infleksi Kurva-S untuk PENYUSUTAN akan bergerak dari sisi paling kanan (nilai keanggotaan = 1) ke sisi paling kiri (nilai keanggotaan = 0)
5 Representasi bentuk S Kurva-S didefinisikan dengan menggunakan 3 parameter, yaitu: nilai keanggotaan nol (α), nilai keanggotaan lengkap (γ), dan titik infleksi atau crossover (β) yaitu titik yang memiliki domain 50% benar.
5 Representasi bentuk S Contoh Fungsi keanggotaan untuk himpunan TUA pada variabel umur seperti terlihat pada Gambar tua (42) = ? ?
5 Representasi bentuk S Contoh Fungsi keanggotaan untuk himpunan MUDA pada variabel umur seperti terlihat pada Gambar Muda (37)
6 Representasi bentuk LONCENG (BELL CURVE) Untuk merepresentasikan bilangan fuzzy, biasanya digunakan kurva berbentuk lonceng. Kurva berbentuk lonceng ini terbagi atas 3 kelas, yaitu: • himpunan fuzzy PI, • beta, • Gauss.
6 Representasi bentuk LONCENG (BELL CURVE) Kurva PI berbentuk lonceng dengan derajat keanggotaan 1 terletak pada pusat dengan domain (γ), dan lebar kurva (β) seperti terlihat pada Gambar
6 Representasi bentuk LONCENG (BELL CURVE) Kurva Beta Seperti halnya kurva PI, kurva BETA juga berbentuk lonceng namun lebih rapat. Kurva ini juga didefinisikan dengan 2 parameter, yaitu nilai pada domain yang menunjukkan pusat kurva (γ), dan setengah lebar kurva (β) seperti terlihat pada Gambar Salah satu perbedaan mencolok kurva BETA dari kurva PI adalah, fungsi keanggotaannya akan mendekati nol hanya jika nilai (β) sangat besar.
6 Representasi bentuk LONCENG (BELL CURVE) Kurva Beta Fungsi keanggotaan untuk himpunan SETENGAH BAYA pada variabel umur seperti terlihat pada Gambar
6 Representasi bentuk LONCENG (BELL CURVE) Kurva Gauss Jika kurva PI dan kurva BETA menggunakan 2 parameter yaitu (γ) dan (β), kurva GAUSS juga menggunakan (γ) untuk menunjukkan nilai domain pada pusat kurva, dan (k) yang menunjukkan lebar kurva
Operasi Logika (Operasi Himpunan Fuzzy) • Operasi logika adalah operasi yang mengkombinasikan dan memodifikasi 2 atau lebih himpunan fuzzy. Nilai keanggotaan baru hasil operasi dua himpunan disebut firing strength atau predikat, ada 3 operasi dasar yang diciptakan oleh Zadeh : 1. Operator AND, berhubungan dengan operasi intersection pada himpunan, predikat diperoleh dengan mengambil nilai minimum antar kedua himpunan. A B = min( A[x], B[y]) Misal nilai keanggotaan umur 27 pada himpunan muda adalah MUDA[27] = dan nilai keanggotaan 2 juta pada himpunan penghasilan TINGGI adalah GAJITINGGI[2 juta] = 0, 8 maka -predikat untuk usia MUDA keanggotaan minimum : dan berpenghasilan TINGGI adalah nilai MUDA GAJITINGGI = min( MUDA[27], GAJITINGGI[2 juta]) = min (0, 6 ; 0, 8) = 0, 6
2. Operator OR, berhubungan dengan operasi union pada himpunan, predikat diperoleh dengan mengambil nilai maximum antar kedua himpunan. A B = max( A[x], B[y]) Misal nilai keanggotaan umur 27 pada himpunan muda adalah MUDA[27] = 0, 6 dan nilai keanggotaan 2 juta pada himpunan penghasilan TINGGI adalah GAJITINGGI[2 juta] = 0, 8
3. Operasi NOT, berhubungan dengan operasi komplemen pada himpunan, predikat diperoleh dengan mengurangkan nilai keanggotaan elemen pada himpunan dari 1. Misal nilai keanggotaan umur 27 pada himpunan muda adalah MUDA[27]= 0, 6 maka -predikat untuk usia TIDAK MUDA adalah : MUDA’[27] = 1 - MUDA[27 = 1 - 0, 6 = 0, 4
FUNGSI KEANGGOTAAN Tipe tipe fungsi keanggotaan 1. Fungsi segitiga Fungsi ini merupakan fungsi keanggotaan yang paling sederhana. Didiskripsikan dengan tiga parameter, P = [ a, b, c ] , a : proyeksi titik sudut paling kiri ke sumbu mendatar, b : proyeksi titik puncak ke sumbu mendatar, c : proyeksi titik sudut paling kanan ke sumbu mendatar, a b c 30
2) Fungsi trapesoid Dengan empat parameter P = [a, b, c, d], a, b, c dan d adalah proyeksi titik sudut trapesium pada sumbu mendatar a b c d P = [ 1, 5, 7, 8 ] 3) Fungsi Bell umum, Slope b/2 a P = [a, b, d] P = [ 2, 4, 6 ] 31 d-a d+a
4) Fungsi Gaussian Fungsi ini mempunyai dua parameter P = [a, d] P = [5 , 2] 0, 8 2
5) Fungsi Sigmoid P = [a, b ] P = [2, 4] 2 4 Gb 1: harga parameter a 0. 03, 0. 07, 0. 4 dan 0. 99 untuk harga b = 10 tetap. Gb 2: harga parameter b -10, 0, 5 dan 25 untuk harga a = 0. 1 tetap
Operasi 2 Dasar Himpunan Fuzzy • Equality A = B A (x) = B (x) untuk seluruh x X • Complement B = A’ B (x) = 1 - A(x) untuk seluruh x X • Containment A B A (x) B (x) untuk seluruh x X • Union A B A B (x) = max( A (x), B (x)) untuk seluruh x X • Intersection A B A B (x) = min( A (x), B (x)) untuk seluruh x X
A’ = (1 - 0. 5) = 0. 5 A’ A=0. 5, B=0. 8 A B 0, 5 A 0, 8 0, 5 A B 0, 8 A V B = max(0. 5, 0. 8) = 0. 8 A B 0, 5 A ^ B = min(0. 5, 0. 7) = 0. 5 36
A = {1/a, 0. 3/b, 0. 2/c 0. 8/d, 0/e} B = {0. 6/a, 0. 9/b, 0. 1/c, 0. 3/d, 0. 2/e} Complement: A = {1/a, 0. 3/b, 0. 2/c 0. 8/d, 0/e} A = {0/a, 0. 7/b, 0. 8/c 0. 2/d, 1/e} Union: A B = {1/a, 0. 9/b, 0. 2/c, 0. 8/d, 0. 2/e} Intersection: A B = {0. 6/a, 0. 3/b, 0. 1/c, 0. 3/d, 0/e}
Operasi AND, OR dan NOT pada logika tajam biner min(A, B) A B 0 0 0 A and B A not A 0 0 1 1 1 1 A B 0 0 0 1 1 1 A A or B A B 1 -A max(A, B) A B A and B not A
RELASI FUZZY - Relasi fuzzy R menyatakan hubungan antar himpunan. Contoh : Bila X dan Y adalah dua himpunan, maka himpunan R dalam product space X x Y adalah relasi antara X dan Y. - Bila X = Y, maka R disebut relasi biner dalam universe X. - Bila himpunan tersebut berasal dari n-universe yang berbeda, maka R adalah himpunan fuzzy dalam product space n-dimensi, dengan fungsi keanggotaan n-dimensi. - Relasi R memetakan setiap elemen dalam product space ke harga derajat keanggotaan antara 0 dan 1. Untuk relasi dua himpunan fuzzy dalam universe X dan Y (n = 2),
RELASI FUZZY Relasi R mengekspresikan hubungan antar himpunan (elemen himpunan). § Dalam relasi tajam, kebenaran relasi antar elemen himpunan dinyatakan dengan nilai “ 1” (bila benar), atau nilai 0 (bila salah). § Bila konsep ini diperluas untuk berbagai derajat kebenaran , maka kita dapatkan relasi fuzzy. Contoh (1) relasi tajam Himpunan tajam X = { 1 , 2 , 3 } dan Y = { 2 , 3 , 4 } , dengan relasi R : “ x < y “ , y dan derajat kebenaran relasi x “ 0” atau “ 1” , maka matriks relasinya adalah 2 3 4 1 1 2 0 1 1 3 0 0 1
Contoh 3 Relasi fuzzy : Himpunan tajam warna tomat X = { hijau , kuning , merah } Himpunan tajam kematangan Y = { mentah , mengkal , masak } Relasi R : “asosiasi antar warna dan kematangan “ dengan derajat kebenaran 0 < < 1 , Y X mentah mengkal masak hijau 1 0, 5 0 kuning 0, 3 1 0, 4 merah 0 0, 2 1 asosiasi derajat kebenaran “hijau itu mentah” 1 “kuning itu masak” 0, 4 “merah itu mengkal” 0, 2
Contoh 4 Relasi Fuzzy : Dua himpunan tajam X: {1, 12, 25} dan Y: {3, 10, 20} Dengan relasi R: “x jauh lebih kecil dari y”, dan derajat kebenaran relasi 0 < < 1 , maka relasi R adalah himpunan fuzzy dengan pasangan (x, y) sebagai anggotanya, dengan derajat keanggotaan R(x, y) yang menunjukkan derajat kebenaran relasi tersebut bagi elemen ( x, y) Matriks relasi : derajat keanggotaan y x 3 10 20 1 0, 4 0, 6 1 12 0 0 0, 5 25 0 0 0 R (1, 20) = 1 x < y x > y
Contoh 5 Relasi fuzzy : X dan Y adalah dua himpunan yang sama (misal himpunan angkatan 2005). Relasi R: “ x mirip y” Matriks relasinya : 0, 0 0, 5 1, 0 43
Relasi antar Himpunan Fuzzy Bila A adalah himpunan fuzzy di universe X dan B adalah himpunan fuzzy di universe Y, ì 0. 2 0. 5 ü + A=í ý, x 2 þ î x 1 ì 0. 1 0. 9 ü B=í + ý î y 1 y 2 þ Maka cartesian product antar kedua himpunan adalah relasi R, Dengan derajat keanggotaan = Ax. B(x 1, y 1) Ax. B(x 2, y 1) Ax. B(x 1, y 2) Ax. B(x 2, y 2)
KOMPOSISI Komposisi adalah operasi terhadap relasi fuzzy R 1 o R 2 simbol komposisi Misal, R 1 adalah relasi yang didefinisikan dalam product-space X x Y dan R 2 adalah relasi yang didefinisikan dalam product-space Y x Z. Hasil komposisi R 1 o R 2 , adalah sebuah himpunan fuzzy yang anggotanya adalah pasangan-pasangan (x, z), dan derajat keanggotaannya dapat dihitung berdasarkan : § Komposisi max-min simbol komposisi operasi max operasi min
Komposisi relasi R 1 dan relasi R 2 T = R 1 o R 2 R 1 X Y T = R 1 o R 2 Max-Min Composition: Max-Product Composition: Z
§ Komposisi max-product operasi max operasi perkalian Catatan : Ada banyak cara perhitungan derajat keanggotaan hasil komposisi
Contoh : Himpunan fuzzy X = { a, b, c } Himpunan fuzzy Y = { d, e, f, g } Himpunan fuzzy Z = { p, q } relasi R 1 relasi R 2 R 1 d e f g R 2 p q a 0, 6 0, 2 0, 1 0 d 0, 3 0 b 0. 1 0, 7 0 0, 9 e 0, 6 0, 2 c 0 0, 8 0, 3 0, 2 f 0, 7 0, 4 g 0. 1 0, 1 Hasil komposisi R 1 dan R 2 : R 1 o R 2 = { (a, p), (a, q), (b, p), (b, q), (c, p), (c, q) } , anggota himpunan dengan derajat keanggotaan :
Perhitungan derajat keanggotaan berdasarkan Komposisi Max-min R 1 R 2 (a, p) = Vy ( R 1(a, y) R 2 (y, p) ) = 0, 3 V o ( R 1(a, d) R 2 (d, p) ) = ( 0, 6 0, 3) = 0, 3 V V ( R 1(a, e) R 2 (e, p) ) = ( 0, 2 0, 6) = 0, 2 V V ( R 1(a, f) R 2 (f, p) ) = ( 0, 1 0, 7) = 0, 1 V V ( R 1(a, g) R 2 (g, p) ) = ( 0 0, 1 ) = 0 V V R 1 R 2 (a, q) = Vy ( R 1(a, y) R 2 (y, q) ) =. . . V o R 1 R 2 (b, p) = Vy ( R 1(b, y) R 2 (y, p) ) =. . . V o R 1 R 2 (b, q) = Vy ( R 1(b, y) R 2 (y, q) ) =. . . R 1 R 2 (c, p) = Vy ( R 1(c, y) R 2 (y, p) ) =. . . o V R 1 R 2 (c, q) = Vy ( R 1(c, y) R 2 (y, q) ) =. . . V o max
Contoh Komposisi Max-Min : c T ( x, z ) = Ú ( c R ( x , y ) Ù c S ( y , z )) y Y y 1 y 2 y 3 z 1 y 4 x 1 1 0 R = x 2 0 x 3 0 0 0 1 0 y 1 é 0 ê y 2 ê 0 = S y 3 ê 0 ê y 4 êë 0 z 2 ù 1ú 0ú ú 1ú 0 úû AND OR x 1 x 2 x 3 AND éÚ ( 0, 0, 0, 0 ) ê êÚ ( 0, 0, 0, 0 ) êëÚ ( 0, 0, 0, 0 ) z 1 Ú (1, 0, 1, 0 ) ù Ú ( 0, 0, 0, 0 ) ú ú Ú ( 0, 0, 0, 0 ) úû z 2 Bila x 1 memiliki relasi é 0 ê T = ê 0 êë 0 1ù ú 0ú 0 úû dengan y 3 dan y 3 memiliki relasi dengan z 2, maka x 1 memiliki relasi dengan z 2
y 1 y 2 y 3 y 4 0. 5 0 0. 4 0 R = x 2 0 0. 8 x 3 0 0 x 1 Komposisi Max-Min : é ê y 2 ê y 3 ê ê y 4 ê ë y 1 S = z 1 z 2 0 0 ù 0. 3ú 0ú ú 1ú 0 úû Bila x 1 memiliki relasi dengan { y 1, y 2, y 3, y 4 } dengan derajat keanggotaan {0. 5 , 0. 4 , 0} dan y memiliki relasi dengan z 2 dengan derajat keanggotaan { 0. 3 , 0 , 1 , 0 }, mk relasi antara x 1 dan z 2 adalah max ( z 1 z 2 é 0 0. 4ù ê ú T = ê 0 0 ú lts 05 ê ë 0 0 úû min( 0. 5 , 0. 3) , min( 0 , 0), min( 0. 4 , 1), min( 0 , 0)) x 1 x 2 x 3 = max ( 0. 3, 0. 4 , 0 )
Latihan : Hitung Komposisinya !
- Slides: 52