Erwien Tjipta Wijaya, ST.,M.Kom
PENDAHULUAN Logika Fuzzy pertama kali dikenalkan oleh Prof. Lotfi A. Zadeh tahun 1965 Dasar Logika Fuzzy adalah teori himpunan fuzzy. Teori himpunan fuzzy adalah peranan derajat keanggotaan sebagai penentu keberadaan elemen dalam suatu himpunan. Nilai keanggotaan / Derajat keanggotaan / Membership function menjadi ciri utama dari penalaran pada Logika Fuzzy tersebut. Logika Fuzzy digunakan untuk memetakan permasalahan dari input menuju ke output
ALASAN PERLUNYA LOGIKA FUZZY 1. Mudah dimengerti, karena logika fuzzy menggunakan dasar teori himpunan. 2. Sangat fleksibel, artinya mampu beradaptasi terhadap perubahanperubahan dan ketidakpastian pada permasalahan. 3. Memiliki toleransi terhadap data yang tidak tepat. Jika diberikan sekelompok data yang cukup homogen dan kemudian terdapat beberapa data yang eksklusif, maka logika fuzzy memiliki kemampuan untuk menangani data eksklusif tersebut. 4. Mampu memodelkan fungsi fungsi nonlinear yang komplek. 5. Membangun dan mengimplikasikan pengalaman pengalaman para pakar secara langsung tanpa melalui proses pelatihan. (atau biasa dikenal dengan Fuzzy Expert System) 6. Dapat digunakan pada teknik teknik kendali secara konvensional. (Teknik Industri, Teknik Mesin dan Teknik Elektro) 7. Didasarkan pada bahasa alami. Logika Fuzzy menggunakan bahasa sehari hari sehingga mudah dimengerti
HIMPUNAN FUZZY Himpunan tegas (crisp), nilai keanggotaan item x dalam suatu himpunan A, ditulis μ A (X) dengan memiliki 2 kemungkinan, yaitu : 1. Satu (1), berarti bahwa suatu item menjadi anggota dalam suatu himpunan. 2. Dua (2), berarti bahwa suatu item tidak menjadi anggota dalam suatu himpunan. Jika diketahui : (Contoh Himpunan Dasar) S = {1,2,3,4,5,6,7} //semesta pembicaraan A = {1,2,3} B = {3,4,5}
LANJUTAN (HIMPUNAN FUZZY) Dikatakan bahwa : Nilai keanggotaan 2 pada himpunan A, μ A 2 = 1, karena 2 A Nilai keanggotaan 3 pada himpunan A, μ A 3 = 1, karena 3 A Nilai keanggotaan 4 pada himpunan A, μ A 4 = 0, karena 4 A Nilai keanggotaan 2 pada himpunan B, μ B 2 = 0, karena 2 B Nilai keanggotaan 3 pada himpunan B, μ B 3 = 1, karena 3 B
LANJUTAN (HIMPUNAN FUZZY) Misalkan variabel umum dibagi menjadi 3 kategori, yaitu : (Contoh Himpunan Umur) 1. Muda umur < 35 tahun 2. Parobaya 35 umur 55 tahun 3. Tua umur > 55 tahun Visualisasi dalam bentuk grafis 1 1 1 µ(x) µ(x) µ(x) 0 0 0 0 35 Umur (th) 0 35 55 Umur (th) 0 55 Umur (th)
LANJUTAN (HIMPUNAN FUZZY) Penjelasan : 1. Apabila seorang berusia 34 tahun, maka ia dikatakan MUDA (µ MUDA (34) = 1). 2. Apabila seorang berusia 35 tahun, maka ia dikatakan TIDAK MUDA (µ MUDA (35) = 0). 3. Apabila seorang berusia 35 tahun kurang 1 hari, maka ia dikatakan TIDAK MUDA (µ MUDA (35th 1hr) = 0). 4. Apabila seorang berusia 35 tahun, maka ia dikatakan PAROBAYA (µ PAROBAYA (35) = 1). 5. Apabila seorang berusia 34 tahun, maka ia dikatakan TIDAK PAROBAYA (µ PAROBAYA (34) = 0). 6. Apabila seorang berusia 55 tahun, maka ia dikatakan PAROBAYA (µ PAROBAYA (55) = 1). 7. Apabila seorang berusia 35 tahun kurang 1 hari, maka ia dikatakan TIDAK PAROBAYA (µ PAROBAYA (35th 1hr) = 0).
LANJUTAN (HIMPUNAN FUZZY) Himpunan crisp umur masih belum adil, adanya perubahan kecil akan mempengaruhi perbedaan kategori yang cukup signifikan. Himpunan Fuzzy digunakan untuk mengantisipasi hal tersebut. Seseorang dapat masuk dalam 2 himpunan yang berbeda, MUDA dan PAROBAYA, PAROBAYA dan TUA dan sebagainya.
LANJUTAN (HIMPUNAN FUZZY) 1 MUDA PAROBAYA TUA µ (x) 0,5 0,25 0 25 30 40 45 50 55 65 Umur (th)
LANJUTAN (HIMPUNAN FUZZY) Penjelasan : 1. Seseorang yang berumur 40 tahun, termasuk dalam himpunan MUDA dengan µ MUDA (40) = 0.25, namun dia juga termasuk dalam himpunan PAROBAYA dengan µ PAROBAYA (40) = 0.5 2. Seorang yang berumur 50 tahun, termasuk dalam himpunan TUA dengan µ TUA (50) = 0.25 namun dia juga termasuk dalam himpunan PAROBAYA dengan µ PAROBAYA (50) = 0.5.
LANJUTAN (HIMPUNAN FUZZY) Himpunan Fuzzy memiliki 2 atribut : 1. Linguistik, Penamaan grup yang mewakili suatu keadaan / kondisi tertentu dengan menggunakan bahasa alami. Misal : MUDA, PAROBAYA dan TUA 2. Numeris / Domain, Suatu nilai (angka) yang menunjukan ukuran dari suatu variabel seperti : 40, 35, 60 dan seterusnya
SISTEM FUZZY START VARIBEL FUZZY HIMPUNAN FUZZY SEMESTA PEMBICARAAN DOMAIN KOMPOSISI ATURAN (IF-THEN RULES) OPERASI LOGIKA DEFUZZIFIKASI / FUZZY INFERENCE ENGINE END MEMBERSHIP FUNCTION
MEMBERSHIP FUNCTION Fungsi keanggotaan / Membership Function adalah sebuah kurva yang menunjukan pemetaan titik titik input data ke dalam nilai keanggotaannya atau disebut derajat keanggotaan yang memiliki nilai 0 sampai dengan 1. Fungsi fungsi keanggotaan fuzzy adalah : 1. Representasi Linier, memiliki 2 macam himpunan fuzzy. Diantaranya adalah :
REPRESENTASI LINIER NAIK Representasi Linier Naik Fungsi keanggotaan : μ x = 1; x > b x a ; a < x b b a 0; x a
CONTOH REPRESENTASI LINIER NAIK Fungsi keanggotaan untuk himpunan PANAS pada variabel TEMPERATUR (32 25) Misal : μ panas 32 = = 7 = 0,7 (35 25) 10 Berapakah jika temperatur : μ panas 27 =? dan μ panas 34 =?
REPRESENTASI LINIER TURUN Representasi Linier Turun Fungsi Keanggotaan μ x = 1; x < a (b x) ; a x < b (b a) 0; x b
CONTOH REPRESENTASI LINIER TURUN Fungsi keanggotaan untuk himpunan DINGIN pada variabel TEMPERATUR (30 20) Misal : μ dingin 20 = = 10 = 0,667 (30 15) 15 Berapakah jika temperatur : μ dingin 25 =? dan μ dingin 17 =?
REPRESENTASI SEGITIGA 2. Representasi Segitiga Fungsi Keanggotaan μ x = 0; x a (x a) ; a x b (b a) (c x) ; b x c (c b) 0; x c
CONTOH REPRESENTASI SEGITIGA Fungsi keanggotaan untuk himpunan NORMAL pada variabel TEMPERATUR Misal : μ normal 23 = (23 15) (25 15) = 8 10 = 0,8
REPRESENTASI TRAPESIUM 3. Representasi Kurva Trapesium / Trapezoid Fungsi Keanggotaan
CONTOH REPRESENTASI TRAPESIUM Fungsi keanggotaan untuk himpunan NORMAL pada variabel TEMPERATUR Misal : μ normal 32 = (35 32) (35 27) = 3 8 = 0,375
REPRESENTASI SIGMOID (PERTUMBUHAN) 4. Representasi Kurva S atau Sigmoid Sigmoid (Pertumbuhan) Fungsi Keanggotaan
REPRESENTASI SIGMOID (PENYUSUTAN) Sigmoid (Penyusutan) Fungsi keanggotaan
REPRESENTASI KURVA S ATAU SIGMOID Kurva S didefinisikan dengan 3 parameter, yaitu : Nilai keanggotaan nol (α) Nilai keanggotaan lengkap (γ) Titik infeksi / crossover (β), titik memiliki domain 50% benar
CONTOH REPRESENTASI KURVA S (PERTUMBUHAN) Fungsi keanggotaan untuk himpunan TUA pada variabel UMUR Misal : μ tua 50 = 1 2 60 50 (60 35) Berapakah jika UMUR : μ tua 42 =? 2 = 1 2 10 25 2 = 0,68
CONTOH REPRESENTASI KURVA S (PENYUSUTAN) Fungsi keanggotaan untuk himpunan MUDA pada variabel UMUR Misal : μ muda 37 = 2 50 37 (50 20) 2 = 2 13 30 2 = 0,376
REPRESENTASI BAHU 5. Representasi 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.
REPRESENTASI LONCENG (BELL CURVE) 6. Representasi Lonceng di bagi menjadi 3 bagian : Pi Beta Gauss
REPRESENTASI LONCENG (PI) Kurva PI berbentuk lonceng dengan derajat keanggotaan 1 terletak pada pusat dengan domain (γ) dan lebar kurva (β)
REPRESENTASI LONCENG (BETA) Kurva BETA berbentuk lonceng namun lebih rapat, kurva ini terdapat 2 parameter, dimana nilai domain yang menunjukkan pusat kurva (γ) dan setengah lebar kurva (β). Salah satu perbedaan mencolok kurva BETA dari kurva PI adalah, fungsi keanggotaannya akan mendekati nol hanya jika nilai (β) sangat besar.
CONTOH KURVA LONCENG (BETA) Fungsi keanggotaan untuk PAROBAYA pada variabel umur
REPRESENTASI KURVA LONCENG (GAUSS) Jika kurva PI dan BETA menggunakan 2 parameter yaitu (γ) dan (β). Kurva Gauss juga menggunakan (γ) untuk menunjukan nilai domain pada pusat kurva, dan (κ) yang menunjukan lebar kurva.
OPERASI LOGIKA Operasi logika adalah operasi yang menggabungkan dan memodifikasi 2 atau lebih himpunan fuzzy. Nilai keanggotaan baru hasil dari operasi 2 himpunan disebut firing strenght atau predikat (α). Ada 3 operasi dasar yan diciptakan oleh zadeh : 1. Operator AND, berhubungan dengan operasi intersection pada himpunan, α predikat diperoleh dengan mengambil nilai minimum antar ke dua atau lebih himpunan. A B = min( A[x], B[y]) Contoh : MUDA GAJITINGGI = min( MUDA[27], GAJITINGGI[2juta]) = min (0,6 ; 0,8) = 0,6
LANJUTAN (OPERATOR LOGIKA) 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]) Contoh : MUDA GAJITINGGI = max(muda[27], GAJITINGGI[2juta]) = max (0,6 ; 0,8) = 0,8
LANJUTAN (OPERATOR LOGIKA) 3. Operasi NOT, berhubungan dengan operasi komplemen pada himpunan, predikat diperoleh dengan mengurangkan nilai keanggotaan elemen pada himpunan dari 1. Contoh : MUDA[27] = 1 - MUDA[27] = 1-0,6 = 0,4
PENALARAN MONOTON Metode Penalaran Monoton digunakan sebagai dasar untuk teknik implikasi fuzzy. Metode ini sudah jarang digunakan tapi masih digunakan untuk pengskalaan fuzzy. Contoh jika 2 daerah fuzzy direlasikan dengan implikasi sederhana (Cox, 1994) IF x is A THEN y is B Transfer fungsi : y = f x, A, B Sistem dapat berjalan tanpa komposisi dan dekomposisi fuzzy.
CONTOH PENALARAN MONOTON 165 150 µ TINGGI 165 = 170 150 = 15 = 0,75 20 µ BERAT y = S y; 40,55,70 = 0,75 Karena 0,75 > 0,5 maka letak y adalah Antara 55 sampai dengan 70 sehingga 1 2((70 y)/(70 40)) 2 = 0,75 1 2(70 y) 2 / 900 = 0,75 2(70 y) 2 / 900 = 0,25 (70 y) 2 = 112,5 (70-y) = + (112,5) y = 70 + 10,6 ambil (-) karena nilainya Harus < 70 y = 59,4
FUNGSI IMPLIKASI Secara umum ada 2 fungsi implikasi yang dapat digunakan (Yan,1994): 1. Min (minimum), fungsi ini akan memotong output himpunan fuzzy.
LANJUTAN FUNGSI IMPLIKASI 2. Dot (product), fungsi ini akan mengskala output himpunan fuzzy.
DEFUZZIFIKASI DENGAN FUZZY INFERENCE SYSTEM Fuzzy Inference System, berfungsi sebagai sistem penalaran fuzzy yang bertugas untuk mengolah data himpunan fuzzy yang telah ditentukan kemudian menghitung nilai rata rata terbobot. Macam macam FIS (Fuzzy Inference System) : Metode Tsukamoto Metode Sugeno Metode Mamdani
METODE TSUKAMOTO METODE TSUKAMOTO, Perluasan dari penalaran monoton, setiap konsekuen pada aturan IF-THEN harus direpresentasikan degan himpunan fuzzy dengan fungsi keanggotaan yang monoton. Sebagai hasil inferensi dari tiap tiap aturan diberikan secara tegas (crisp) berdasarkan α-predikat (fire strength). Hasil akhir dengan rata rata terbobot.
INFERENSI TSUKAMOTO (Jang, 1997)
STUDI KASUS Suatu perusahaan makanan kaleng akan memproduksi makanan jenis sarden. Diketahui : (Data 1 bulan terakhir) 1. 1000 Permintaan 5000 (Kemasan / Perhari) 2. 100 Persediaan Gudang 600 (Kemasan / Perhari) 3. 2000 Produksi 7000 (Kemasan / Perhari) Pertanyaan: Berapa kemasan yang diproduksi jika jumlah permintaan 4000 kemasan dan persediaan digudang masih 300 kemasan
ATURAN FUZZY [R1] IF Permintaan TURUN AND Persediaan BANYAK THEN Produksi BERKURANG [R2] IF Permintaan TURUN AND Persediaan SEDIKIT THEN Produksi BERKURANG [R3] IF Permintaan NAIK AND Persediaan BANYAK THEN Produksi BERTAMBAH [R4] IF Permintaan NAIK AND Persediaan SEDIKIT THEN Produksi BERTAMBAH
JAWABAN Ada 3 variabel fuzzy yang akan di modelkan terdiri dari : 1. Input : Permintaan dan Persediaan 2. Output : Produksi
INPUTAN PERMINTAAN Representasi Linier Naik dan Turun : Persamaan Linier Turun : μ PmtTURUN x = 1; x 1000 5000 x ; 1000 x 5000 5000 1000 0; x 5000
LANJUTAN INPUTAN PERMINTAAN Persamaan Linier Naik: 1; x 5000 x 1000 μ PmtNAIK x = ; 1000 x 5000 5000 1000 0; x 1000 Hitung nilai keanggotaannya : μ 5000 4000 PmtTURUN= 4000 =0,25 μ 4000 1000 PmtNAIK= =0,75 4000
INPUTAN PERSEDIAAN Representasi Linier Naik dan Turun : Persamaan Linier Turun μ PsdSEDIKIT y = 1; y 100 600 y ; 100 y 600 600 100 0; y 600
LANJUTAN INPUTAN PERSEDIAAN Persamaan Linier Naik 1; y 600 y 100 μ PsdBANYAK y = ; 100 y 600 600 100 0; y 100 Hitung nilai keanggotaannya: μ 600 300 PsdSEDIKIT= 500 =0,6 μ 300 100 PsdBANYAK= 500 =0,4
OUTPUTAN PRODUKSI Representasi Linier Naik dan Turun : Persamaan Linier Turun μ PrdKURANG z = 1; z 2000 7000 z ; 2000 z 7000 7000 2000 0; z 7000
LANJUTAN OUTPUTAN PRODUKSI Persamaan Linier Naik μ PrdTAMBAH z = 1; z 7000 z 2000 ; 2000 z 7000 7000 2000 0; z 2000
HITUNG NILAI α-predikat α predikat 1 = μ PmtTURUN μ PsdBANYAK = min(μ PmtTURUN (4000) μ PsdBANYAK (300)) = min(0,25; 0,4) = 0,25 Himpunan produksi KURANG : (7000 z)/5000 = 0,25 z 1 = 5750 α predikat 2 = μ PmtTURUN μ PsdSEDIKIT = min(μ PmtTURUN (4000) μ PsdSEDIKIT (300)) = min(0,25; 0,6) = 0,25 Himpunan produksi KURANG : (7000 z)/5000 = 0,25 z 2 = 5750
LANJUTAN NILAI α-predikat α predikat 3 = μ PmtNAIK μ PsdBANYAK = min(μ PmtNAIK (4000) μ PsdBANYAK (300)) = min(0,75; 0,4) = 0,4 Himpunan produksi TAMBAH : (Z 2000)/5000 = 0,4 z 3 = 4000 α predikat 4 = μ PmtNAIK μ PsdSEDIKIT = min(μ PmtNAIK (4000) μ PsdSEDIKIT (300)) = min(0,75; 0,6) = 0,6 Himpunan produksi TAMBAH : (Z 2000)/5000 = 0,6 z 4 = 5000
HITUNG NILAI Z z = αpred 1 z 1 +αpred 2 z 2 +αpred 3 z 3 +αpred 4 z 4 αpred 1 +αpred 2 +αpred 3 +αpred 4 z = 0,25 5750+0,25 5750+0,4 4000+0,6 5000 0,25+0,25+0,4+0,6 z = 7475 1,5 = 4983
KESIMPULAN Jadi jumlah sarden yang harus diproduksi sebanyak 4983 kemasan dan termasuk produksi harus ditambah.