430 likes | 772 Views
Penalaran Logika Fuzzy. Sistem Berbasis Fuzzy Materi 2. Eko Prasetyo Teknik Informatika Universitas Muhammadiyah Gresik 2012. Kasus fuzzy dalam kehidupan sehari-hari. Tinggi badan saya : Andi menilai bahwa tinggi badan saya termasuk tinggi
E N D
PenalaranLogika Fuzzy SistemBerbasis Fuzzy Materi 2 Eko Prasetyo TeknikInformatika UniversitasMuhammadiyah Gresik 2012
Kasus fuzzy dalamkehidupansehari-hari • Tinggibadansaya: • Andimenilaibahwatinggibadansayatermasuktinggi • Nina menilaibahwatinggibadansayatermasuksedang • Manajerproduksibertanya pad manajerpergudanganberapastokbarang yang adapadaakhirmingguini, • Kemudianmanajerproduksiakanmenetapkanjumlahbarang yang harusdiproduksiesokhari. • Pelayanrestoranmemberikanpelayanankepadatamu, • Kemudiantamuakanmemberikan tip yang sesuaiatasbaiktidaknyapelayanan yang diberikan • Andamengatakanpadasayaseberapasejukruangan yang andainginkan, • Kemudiansayaakanmengatur setting AC padaruanganini • Ketikaandanaiktaksi, andaberkatapadataksimemintaseberapacepat yang andainginkan, • Kemudiansopirtaksiakanmengaturpijakan gas taksinya.
KonsepDasar • Logika fuzzy bukanlahlogika yang tidakjelas (kabur), • tetapi logika yang digunakan untuk menggambarkan ketidakjelasan. • Logika fuzzy adalah teori himpunanfuzzy • Himpunan yang mengkalibrasi ketidakjelasan. • Logika fuzzy didasarkan padagagasan bahwa segala sesuatu mempunyainilaiderajat. • Logika Fuzzy merupakanpeningkatan dari logika Boolean yang mengenalkan konsep kebenaran sebagian. • Logika klasik (Crisp Logic) menyatakan bahwa segala hal dapat diekspresikan dalam istilah binary (0 atau 1, hitam atau putih, ya atau tidak) Tidakadanilaidiantaranya • Logika fuzzy menggantikan kebenaran boolean dengan tingkat kebenaran Adanilaidiantarahitamdanputih (abu-abu).
Logika Fuzzy • Alasanpenggunaan: • Mudahdimengerti, konsepmatematisnyasederhana • SangatFleksibel • Memilikitoleransiterhadap data-data yang tidaktepat (kabur) • Mampumemodelkanfungsi-fungsi non-linear yang sangatkompleks. • Dapatmenerapkanpengalamanpakarsecaralangsungtanpaprosespelatihan. • Dapatbekerjasamadenganteknik-teknikkendalisecarakonvensional. • Didasarkanpadabahasaalami • Fuzzy ≠ Probabilitas: • Probabilitasberkaitandenganketidakmenentuandankemungkinan • Logika Fuzzy berkaitandenganambiguitasdanketidakjelasan
AplikasiLogika Fuzzy • Tahun 1990, mesincuciotomatisdiJepangmenggunakanlogika fuzzy. • Menggunakan sensor untukmendeteksikotoranpadapakaian. • Inputnya: tingkatkekotoran, jeniskotorandanbanyaknyacucian. • Outputnya: menentukanputaranputaran yang tepatsecaraotomatis. • Transmisiotomatismobil. • Mampumenghematbensin 12-17% • Duniakedokterandanbiologi • Diagnosis penyakitpasien, penelitiankanker, dsb. • Manajemenpengambilankeputusan • Manajemen basis data untuk query data • Tata letakpabrik yang maksimal • Penentuanjumlahproduksiberdasarkanjumlahstokdanpermintaan. • Klasifikasidanpencocokanpola. • Mengukurkualitas air, peramalancuaca, dsb.
FungsiKeanggotaan • FungsiKeanggotaan (Membership Function) adalahsuatukurva yang menunjukkanpemetaantitik-titik input data (sumbu x) kepadanilaikeanggotaannya (seringjugadisebutderajatkeanggotaan) yang mempunyaiinterval mulai 0 sampai 1. • Menggunakanpendekatanfungsi: • Linear naik • Linear turun • Kurvasegitiga • Kurvatrapesium • Kurva Sigmoid • Kurva Phi • Kurva Beta • Kurva Gauss • Fungsi Linear naikdan Linear turun • Berupasuatugarislurus. • Untuk Linear naik: dimulaidariderajat 0 bergerakkekananmenujukenilai domain yang mempunyaiderajatkeanggotaanlebihtinggi. • Untuk Linear naik: dimulaidariderajat 1 padasisikiribergerakkekananmenujukenilai domain yang mempunyaiderajatkeanggotaanlebihrendah. Linear naik
FungsiKurvatrapesium Padadasarnyaadalahkurvasegitiga, hanyasajaadabeberapatitikditengah yang mempunyainilaikeangotaan 1 Linear turun FungsiKurvasegitiga Merupakangabungangaris linear naikdanturun
FungsiKurva sigmoid • Digunakanuntukmerepresentasikankenaikandanpenurunansecaratidak linear • Untukkurva sigmoid pertumbuhanbergerakdarisisikiri (nilaikeangotaan=0) kesisikanan (nilaikeanggotaan=1) • Untukkurva sigmoid penyusutanbergerakdarisisikiri (nilaikeangotaan=1) kesisikanan (nilaikeanggotaan=0) Kurva sigmoid pertumbuhan Kurva sigmoid penyusutan
FungsiKurva Beta • Bentuknyalonceng (samadengan Phi dan Gauss), tetapilebihrapat. • Menggunakan 2 parameter: untuktitikpuncaklonceng, dan untukseparuhdariseparuhbagianlonceng. • Titikinfleksimemberikannilaikeanggotaan = 0.5. • Jika sangatbesar, makanilaikeanggotaannyabisamenjadi nol.
OperasiHimpunan Fuzzy • Sepertipadahimpunankonvensional, adaoperasihimpunanjugapadahimpunan fuzzy • Hasiloperasi 2 himpunandisebutjugafire strenghtatau–predikat. • Ada 3 operator: • AND (interseksi/irisan), dan OR (union/gabungan), NOT (komplemen) • Operator AND • Berhubungandenganoperasiirisanhimpunan, • Diperolehdenganmengambilnilaikeanggotaanterkecilantarelemenpadahimpunan-himpunan yang bersangkutan. • Misal: operasi AND nilaikeanggotaanhimpunan fuzzy A dan B, AB = min(A[x], B[y]) • Operator OR • Berhubungandenganoperasiunion/gabunganhimpunan, • Diperolehdenganmengambilnilaikeanggotaanterbesarantarelemenpadahimpunan-himpunan yang bersangkutan. • Misal: operasi OR nilaikeanggotaanhimpunan fuzzy A dan B, AB = max(A[x], B[y]) • Operator NOT • Berhubunganoperasikomplemenpadahimpunan. • Misl, operasi NOT padanilaikeanggotaan A[x] menjadi: A[x]c = 1 - A[x]
SistemInferensi Fuzzy METODE TSUKAMOTO
SistemInferensi Fuzzy Metode Tsukamoto • Pertama kali diperkenalkanoleh Tsukamoto. • Setiapkonsekuen (kesimpulan) padasetiapaturan IF-THEN harusdirepresentasikandengansuatuhimpunan fuzzy denganfungsikeanggotaanmonoton. • Hasilnya, output hasilinferensidarisetiapaturandiberikansecarategas (crisp) berdasarkan-predikat, kemudianmenghitungrata-rata terbobot. MetodeSugeno MetodeMamdani
Contoh: metode Tsukamoto • Sebuahperusahaanmakanankalengakanmemproduksimakananjenis ABC. Dari data 1 bulanterakhir, permintaanterbesarhinggamencapai 5000 kemasan/hari, danpermintaanterkecilsampai 1000 kemasan/hari. Persediaanbarangdigudang paling banyaksampai 600 kemasan/hari, dan paling sedikitsampai 100 kemasan/hari. Dengansegalaketerbatasannya, sampaisaatini, perusahaanbarumampumemproduksibarangmaksimal 7000 kemasan/hari, sertademiefisiensimesindan SDM tiapharidiharapkanperusahaanmemproduksi paling tidak 2000 kemasan. • Apabilaprosesproduksiperusahaantersebutmenggunakan 4 aturansebagaiberikut: • Rule 1 • IF permintaan TURUN and persediaan BANYAK THEN produksibarang BERKURANG • Rule 2 • IF permintaan TURUN and persediaan SEDIKIT THEN produksibarang BERKURANG • Rule 3 • IF permintaan NAIK and persediaan BANYAK THEN produksibarang BERTAMBAH • Rule 4 • IF permintaan NAIK and persediaan SEDIKIT THEN produksibarang BERTAMBAH • Berapakemasanmakananjenis ABC yang harusdiproduksi, jikajumlahpermintaansebanyak 3500 kemasan, danpersediaandigudangmasih 300 kemasan ? (Gunakanfungsikeanggotaan LINEAR)
Ada 3 variabel yang digunakan: PERMINTAAN, PERSEDIAAN, dan PRODUKSI PERMINTAAN: 1000 – 5000, x = 3500 PERSEDIAAN: 100 - 600, y = 300 PRODUKSI: 2000 – 7000, z = ? PERMINTAAN, terdiridari 2 himpunan fuzzy: TURUN dan NAIK NilaikeanggotaanuntuknilaiPERMINTAAN = 3500 x = 3500 pmtTURUN[3500] = (5000-3500)/4000 = 0.375 pmtNAIK[3500] = (3500-1000)/4000 = 0.625
PERSEDIAAN, terdiridari 2 himpunan fuzzy: SEDIKIT dan BANYAK y = 300 psdSEDIKIT[300] = (600-300)/500 = 0.6 psdBANYAK[300] = (300-100)/500 = 0.4
PRODUKSI, terdiridari 2 himpunan fuzzy: BERKURANG dan BERTAMBAH Nilai-predikatdan Z darisetiapaturan Rule 1 -predikat1 = pmtTURUN psdBANYAK = min(pmtTURUN[3500] psdBANYAK[300]) = min(0.375; 0.4) = 0.375 Dari himpunanproduksibarangBERKURANG, (7000-z)/5000 = 0.375 z1 = 5125 Rule 2 -predikat2 = pmtTURUN psdSEDIKIT = min(pmtTURUN[3500] psdSEDIKIT[300]) = min(0.375; 0.6) = 0.375 Dari himpunanproduksibarangBERKURANG, (7000-z)/5000 = 0.375 z2 = 5125 pmtSEDIKIT = 0.6 pmtBANYAK = 0.4 pmtTURUN = 0.375 pmtNAIK = 0.625
Nilai-predikatdan Z darisetiapaturan Rule 3 -predikat3 = pmtNAIK psdBANYAK = min(pmtNAIK[3500] psdBANYAK[300]) = min(0.625; 0.4) = 0.4 Dari himpunanproduksibarangBERTAMBAH, (z-2000)/5000 = 0.4 z3 = 4000 Rule 4 -predikat4 = pmtNAIK psdBANYAK = min(pmtNAIK[3500] psdBANYAK[300]) = min(0.625; 0.6) = 0.6 Dari himpunanproduksibarangBERTAMBAH, (z-2000)/5000 = 0.6 z4 = 5000 Menghitung z akhirdenganmerata-rata semua z berbobot: Jadi, jumlahmakananjenis ABC yang harusdiproduksisebanyak4825 kemasan.
Kasus 1 BagaimanajikajumlahPERMINTAAN = 2500, PERSEDIAAN = 500, berapakemasanmakananjenis ABC yang harusdiproduksi ? Kasus 2 BagaimanajikajumlahPERMINTAAN = 4500, PERSEDIAAN = 150, berapakemasanmakananjenis ABC yang harusdiproduksi ? Kasus 3 BagaimanajikajumlahPERMINTAAN = 5000, PERSEDIAAN = 75, berapakemasanmakananjenis ABC yang harusdiproduksi ? Gunakanmetode TSUKAMOTO
SistemInferensi Fuzzy METODE SUGENO
SistemInferensi Fuzzy Metode Tsukamoto MetodeSugeno • Diperkenalkanoleh Takagi-Sugeno-Kang, tahun 1985. • Bagian output (konsekuen) sistemtidakberupahimpunan fuzzy, melainkankonstanta (ordenol) ataupersamaan linear (ordesatu). • Model SugenoOrdeNol • IF (x1 is A1) (x2 is A2) … (xn is An) THEN z=k • Model SugenoOrdeSatu • IF (x1 is A1) (x2 is A2) … (xn is An) THEN z= p1 * x1 + … + p2 * x2 + q MetodeMamdani
Contoh: metodeSugeno • Sebuahperusahaanmakanankalengakanmemproduksimakananjenis ABC. Dari data 1 bulanterakhir, permintaanterbesarhinggamencapai 5000 kemasan/hari, danpermintaanterkecilsampai 1000 kemasan/hari. Persediaanbarangdigudang paling banyaksampai 600 kemasan/hari, dan paling sedikitsampai 100 kemasan/hari. Dengansegalaketerbatasannya, sampaisaatini, perusahaanbarumampumemproduksibarangmaksimal 7000 kemasan/hari, sertademiefisiensimesindan SDM tiapharidiharapkanperusahaanmemproduksi paling tidak 2000 kemasan. • Apabilaprosesproduksiperusahaantersebutmenggunakan 4 aturansebagaiberikut: • Rule 1 • IF permintaan TURUN and persediaan BANYAK THEN produksibarang = permintaan - persediaan • Rule 2 • IF permintaan TURUN and persediaan SEDIKIT THEN produksibarang = permintaan • Rule 3 • IF permintaan NAIK and persediaan BANYAK THEN produksibarang = permintaan • Rule 4 • IF permintaan NAIK and persediaan SEDIKIT THEN produksibarang = 1.25*permintaan - persediaan • Berapakemasanmakananjenis ABC yang harusdiproduksi, jikajumlahpermintaansebanyak 3500 kemasan, danpersediaandigudangmasih 300 kemasan ? (Gunakanfungsikeanggotaan LINEAR)
Ada 3 variabel yang digunakan: PERMINTAAN, PERSEDIAAN, dan PRODUKSI PERMINTAAN: 1000 – 5000, x = 3500 PERSEDIAAN: 100 - 600, y = 300 PRODUKSI: 2000 – 7000, z = ? PERMINTAAN, terdiridari 2 himpunan fuzzy: TURUN dan NAIK NilaikeanggotaanuntuknilaiPERMINTAAN = 3500 x = 3500 pmtTURUN[4000] = (5000-3500)/4000 = 0.375 pmtNAIK[4000] = (3500-1000)/4000 = 0.625
PERSEDIAAN, terdiridari 2 himpunan fuzzy: SEDIKIT dan BANYAK y = 300 psdSEDIKIT[300] = (600-300)/500 = 0.6 psdBANYAK[300] = (300-100)/500 = 0.4
PRODUKSI, tidakmempunyaihimpunan fuzzy. Nilaipermintaan = 3500 Jumlahpersediaan = 300 Nilai-predikatdan Z darisetiapaturan Rule 3 -predikat3 = pmtNAIK psdBANYAK = min(pmtNAIK[3500] psdBANYAK[300]) = min(0.625; 0.4) = 0.4 Dari bagiankonsekuen Rule 3 z3 = permintaan = 3500 Rule 1 -predikat1 = pmtTURUN psdBANYAK = min(pmtTURUN[3500] psdBANYAK[300]) = min(0.375; 0.4) = 0.375 Dari bagiankonsekuen Rule 1 z1 = permintaan – persediaan = 3500 – 300 = 3200 Rule 2 -predikat2 = pmtTURUN psdSEDIKIT = min(pmtTURUN[3500] psdSEDIKIT[300]) = min(0.375; 0.6) = 0.375 Dari bagiankonsekuen Rule 2 z2 = permintaan = 3500 Rule 4 -predikat4 = pmtNAIK psdSEDIKIT = min(pmtNAIK[3500] psdSEDIKIT[300]) = min(0.625; 0.6) = 0.6 Dari bagiankonsekuen Rule 2 z2 = 1.25*permintaan - persediaan = 1.25 * 3500 – 300 = 4075 Menghitung z akhirdenganmerata-rata semua z berbobot: Jadi, jumlahmakananjenis ABC yang harusdiproduksisebanyak3633 kemasan.
Kasus 1 BagaimanajikajumlahPERMINTAAN = 2500, PERSEDIAAN = 500, berapakemasanmakananjenis ABC yang harusdiproduksi ? Kasus 2 BagaimanajikajumlahPERMINTAAN = 4500, PERSEDIAAN = 150, berapakemasanmakananjenis ABC yang harusdiproduksi ? Kasus 3 BagaimanajikajumlahPERMINTAAN = 5000, PERSEDIAAN = 75, berapakemasanmakananjenis ABC yang harusdiproduksi ? Gunakanmetode SUGENO
SistemInferensi Fuzzy METODE MAMDANI
MetodeMamdani • DiperkenalkanolehMamdanidanAssilian (1975). • Ada 4 tahapandalaminferensiMamdani (termasukmetode yang lain): • Pembentukanhimpunan fuzzy (fuzzyfication) Variabel input dan output dibagimenjadisatuatulebihhimpunan fuzzy • Penerapanfungsiimplikasi Fungsiimplikasi yang digunakanadalahMIN • Komposisi (penggabungan) aturan Inferensidiperolehdarikumpulandankorelasiantaraturan. Ada 3 macam: MAX, ADDITIVE, danprobabilistik OR (probor) • Penegasan (defuzzyfication) Input disiniadalahsuatuhimpunan fuzzy yang diperolehdarikomposisiaturan-aturan fuzzy, outputnyaadalahnilaitegs (crisp) Metodedefuzzifikasi: Centroid (Center of Mass), danMean of Maximum (MOM)
MetodeKomposisiAturan • MAX • Solusihimpunandiperolehdengancaramengambilnilaimaksimumaturan, kemudianmenggunakannyauntukmemodifikasidaerah fuzzy, kemudianmenerapkannyake output denganoperator OR. Dirumuskan: • sf[xi] max(sf[xi], kf[xi]) • Dimana: sf[xi] adalahnilaikeanggotaansolusi fuzzy sampaiaturanke-i • kf[xi] adalahnilaikeanggotaankonsekuen fuzzy sampaiaturanke-i • Additive (sum) • Solusi fuzzy diperolehdenganmelakukanbounded-sumpadasemua output daerah fuzzy. Dirumuskan: • sf[xi] min(1, sf[xi]+ kf[xi]) • Probabilistik OR (probor) • Solusi fuzzy diperolehdengancaramelakukanproductterhadapsemua output daerah fuzzy. Dirumuskan: • sf[xi] (sf[xi] + kf[xi]) - (sf[xi] * kf[xi])
Contohinferensi fuzzy model Mamdani Rule: 1 IF x is A3 OR y is B1 THEN z is C1 Rule: 2 IF x is A2 AND y is B2 THEN z is C2 Rule: 3 IF x is A1 THEN z is C3 Agregasimenggunakan MAX
MetodeDefuzzifikasi • MetodeCentroid • Solusicrispdiperolehdenganmengambiltitikpusat (z*) daerah fuzzy • Dirumuskan: • Untuksemestakontinyu • Untuksemestadiskrit • MetodeMean of Maximum (MOM) • Solusidiperolehdenganmengambilnilai rata-rata domain yang memilikinilaikeanggotaanterbesar. • Dirumuskan: • . Dimana: zjadalahtitikdalam domain kosenkuen yang mempunyainilaikeanggotaanmaksimum, dan l adalahjumlahtitik yang mempunyainilaikeanggotaanmaksimum
Contoh: metodeMamdani • Sebuahperusahaanmakanankalengakanmemproduksimakananjenis ABC. Dari data 1 bulanterakhir, permintaanterbesarhinggamencapai 5000 kemasan/hari, danpermintaanterkecilsampai 1000 kemasan/hari. Persediaanbarangdigudang paling banyaksampai 600 kemasan/hari, dan paling sedikitsampai 100 kemasan/hari. Dengansegalaketerbatasannya, sampaisaatini, perusahaanbarumampumemproduksibarangmaksimal 7000 kemasan/hari, sertademiefisiensimesindan SDM tiapharidiharapkanperusahaanmemproduksi paling tidak 2000 kemasan. • Apabilaprosesproduksiperusahaantersebutmenggunakan 4 aturansebagaiberikut: • Rule 1 • IF permintaan TURUN and persediaan BANYAK THEN produksibarang BERKURANG • Rule 2 • IF permintaan TURUN and persediaan SEDIKIT THEN produksibarang BERKURANG • Rule 3 • IF permintaan NAIK and persediaan BANYAK THEN produksibarang BERTAMBAH • Rule 4 • IF permintaan NAIK and persediaan SEDIKIT THEN produksibarang BERTAMBAH • Berapakemasanmakananjenis ABC yang harusdiproduksi, jikajumlahpermintaansebanyak 3500 kemasan, danpersediaandigudangmasih 300 kemasan ? (Gunakanfungsikeanggotaan LINEAR)
Pembentukanhimpunan fuzzy 1 Ada 3 variabel yang digunakan: PERMINTAAN, PERSEDIAAN, dan PRODUKSI PERMINTAAN: 1000 – 5000, x = 3500 PERSEDIAAN: 100 - 600, y = 300 PRODUKSI: 2000 – 7000, z = ? PERMINTAAN, terdiridari 2 himpunan fuzzy: TURUN dan NAIK NilaikeanggotaanuntuknilaiPERMINTAAN = 3500 x = 3500 pmtTURUN[3500] = (5000-3500)/4000 = 0.375 pmtNAIK[3500] = (3500-1000)/4000 = 0.625
Pembentukanhimpunan fuzzy 1 PERSEDIAAN, terdiridari 2 himpunan fuzzy: SEDIKIT dan BANYAK y = 300 psdSEDIKIT[300] = (600-300)/500 = 0.6 psdBANYAK[300] = (300-100)/500 = 0.4
pmtSEDIKIT = 0.6 pmtBANYAK = 0.4 pmtTURUN = 0.375 pmtNAIK = 0.625 2 Nilai-predikatdan Z darisetiapaturan Rule 1 IF permintaan TURUN and persediaan BANYAK THEN produksibarang BERKURANG -predikat1 = pmtTURUN psdBANYAK = min(pmtTURUN[3500] psdBANYAK[300]) = min(0.375; 0.4) = 0.375 Rule 2 IF permintaan TURUN and persediaan SEDIKIT THEN produksibarang BERKURANG -predikat2 = pmtTURUN psdSEDIKIT = min(pmtTURUN[3500] psdSEDIKIT[300]) = min(0.375; 0.6) = 0.375
Penerapanfungsiimplikasi 2 pmtTURUN = 0.375 pmtNAIK = 0.625 pmtSEDIKIT = 0.6 pmtBANYAK = 0.4 Nilai-predikatdan Z darisetiapaturan Rule 3 IF permintaan NAIK and persediaan BANYAK THEN produksibarang BERTAMBAH -predikat3 = pmtNAIK psdBANYAK = min(pmtNAIK[3500] psdBANYAK[300]) = min(0.625; 0.4) = 0.4 Rule 4 IF permintaan NAIK and persediaan SEDIKIT THEN produksibarang BERTAMBAH -predikat4 = pmtNAIK psdBANYAK = min(pmtNAIK[3500] psdBANYAK[300]) = min(0.625; 0.6) = 0.6
3 Komposisiantaraturan MAX = Daerah himpunan fuzzy terbagi 3: A1, A2, dan A3. Mencarinilai a1, dan a2 (a – prod_minimal)/interval_prod = nilai_keanggotaan (a1 – 2000)/5000 = 0.375 a1 = 3875 (a2 – 2000)/5000 = 0.6 a2 = 5000 Fungsikeanggotaanhasilkomposisi:
4 Defuzzifikasi / Menghitung z akhir Menghitung z* menggunakanmetodeCentroidkontinyu Daerah A1 Daerah A2 Daerah A3 Moment Luas
4 Defuzzifikasi / Menghitung z akhir Menghitung z* menggunakanmetodeCentroidkontinyu Jadi, jumlahmakananjenis ABC yang harusdiproduksisebanyak4793 kemasan.
Kasus 1 BagaimanajikajumlahPERMINTAAN = 2500, PERSEDIAAN = 500, berapakemasanmakananjenis ABC yang harusdiproduksi ? Kasus 2 BagaimanajikajumlahPERMINTAAN = 4500, PERSEDIAAN = 150, berapakemasanmakananjenis ABC yang harusdiproduksi ? Kasus 3 BagaimanajikajumlahPERMINTAAN = 5000, PERSEDIAAN = 75, berapakemasanmakananjenis ABC yang harusdiproduksi ? Gunakanmetode MAMDANI