Bab III TEORI DAN PENGONTOR BERBASIS LOGIKA FUZZI
III.1
Teori Logika fuzzi
III.1.1
Logika fuzzi Secara Umum Logika fuzzi adalah teori yang memetakan ruangan input ke ruang output dengan menggunakan aturan-aturan (rules) tertentu. Logika fuzzi sendiri lebih dikenal dengan teori kabur dikarenakan nilai keanggotaannya yang dapat dinyatakan dengan suatu rentang nilai antara 0 dan 1 (0 menyatakan tidak dan 1 menyatakan ya). Kekaburan teori fuzzi membuat teori fuzzi sangat cocok untuk digunakan dalam menyatakan suatu hal yang kebenarannya masih diragukan [7]. Contohnya dalam sistem fuzzi jika kita ingin mengidentifikasi tinggi badan seseorang maka kita dapat menggolongkannya (misal) menjadi tiga golongan yaitu, “tinggi”, “sedang”, dan “tidak tinggi”. “Tinggi” bila memiliki tinggi diatas 175 cm, “sedang” bila tinggi diaantara 160170 cm dan “tidak tinggi” bila tinggi dibawah 160 cm. Sedangkan dalam sistem non-fuzzi (crisp) dengan tegas mengatakan bahwa seseorang dengan tinggi badan tertentu dikatakan “tinggi” atau “tidak tinggi”
Gambar 3.1 Perbandingan teori crisp (pasti) dengan teori fuzzi (samar)
14
Dari gambar di atas, terlihat bahwa dalam teori crisp suatu benda hanya dapat digolongkan ke dalam salah satu himpunan yaitu besar (big) atau tidak besar (not big) yang dinyatakan dengan nilai keanggotaan 1 atau 0. Benda yang berukuran lebih kecil hanya dapat digolongkan sebagai himpunan bukan besar (not big), sedangkan benda yang berukuran lebih besar hanya dapat digolongkan sebagai himpunan besar (big). Dalam teori fuzzi, suatu benda dapat digolongkan dalam himpunan besar (big) dengan bobot-bobot tertentu. Dari gambar di atas, benda yang berukuran lebih kecil digolongkan ke dalam himpunan besar dengan bobot (nilai keanggotaan) yang lebih kecil daripada benda yang berukuran lebih besar (tidak terlalu besar dan cukup besar).
Gambar 3.2 Fungsi Keanggotaan Segitiga (Triangle)
Ada berbagai macam fungsi keanggotaan yang digunakan untuk mebentuk sistem fuzzi salah satunya adalah fungsi keanggotaan segitiga.
Selain
fungsi
keanggotaan
segitiga
terdapat
fungsi
keanggotaan lainnya yang cukup sering digunakan, antara lain adalah fungsi keanggotaan trapesium, dan gaussian. Pemilihan fungsi keanggotaan dalam logika fuzzi ditentukan berdasarkan karakteristik variabel input-output fuzzi dan berdasarkan pengalaman seorang perancang fuzzi.
15
Gambar 3.2 menunjukkan variabel fuzzi berupa tinggi badan dengan semesta pembicaraan 0–200 cm. Himpunan fuzzi dari variabel tinggi badan ini ada tiga yaitu himpunan small, medium dan large. Domain himpunan small [0-100], himpunan medium [50-150] dan himpunan large [100-200]. Titik persilangan (Crossover point) terletak pada nilai 75 dan 125 dimana nilai keanggotaan pada titik-titik tersebut adalah 0.5. Seseorang yang memiliki tinggi badan 140 cm dapat dinyatakan dalam himpunan medium dengan nilai keanggotaan 0.2 dan dalam himpunan large dengan nilai keanggotaan 0.8. Pengertian teori logika fuzzi tidak hanya mencakup pengertian kekaburan (fuzzyness), tetapi juga mencakup pengertian logika (logic) [8]. Logika dalam teori logika fuzzi diwujudkan dalam operasi fuzzi. Operasi fuzzi berperan seperti operator boolean biasa bila nilai keanggotaan fuzzi dibatasi pada dua nilai (0 dan 1). Beberapa operator boolean yang biasa dikenal adalah operator AND (operator minimum), operator OR (operator maksimum) dan operator NOT (operator komplemen). Operator fuzzi menggunakan cara perhitungan yang hampir sama dengan operator boolean biasa. Perbedaan antara operator boolean biasa dengan operator fuzzi terletak pada hasil operasi dari kedua operator tersebut. Operator boolean biasa akan menghasilkan nilai 0 dan 1 sedangkan operator fuzzi akan menghasilkan nilai antara 0 dan 1.
16
III.1.2
If-Then Rules (Aturan Jika-Maka) If-then aturan adalah salah satu bagian di sistem fuzzi yang digunakan untuk memetakan himpunan dari suatu input ke himpunan output lainnya. Contoh pernyataan bersyarat if-then tunggal adalah: If x is A then y is B, dimana A dan B adalah variabel bahasa yang didefinisikan dalam fuzzi set x dan y. x adalah variabel input fuzzi dan y adalah variabel output fuzzi. Pernyataan bersyarat if-then tidak hanya dapat memiliki satu inputoutput, tetapi juga dapat memiliki lebih dari satu input dan lebih dari satu output. Pernyataan bersyarat if-then yang memiliki satu input satu output dikenal juga dengan SISO (Single Input Single Ouput) atau penalaran monoton. Pernyataan bersyarat if-then yang memiliki dua input atau lebih dan satu output dikenal juga dengan MISO (Multiple Input Single Output) dan pernyataan bersyarat if-then yang memiliki dua input atau lebih dan dua ouput atau lebih dikenal juga dengan MIMO (Multiple Input Multiple Output).
III.1.3
Sistem Inferensi Fuzzi Inferensi fuzzi adalah proses memetakan suatu input ke dalam output dengan menggunakan metode logika fuzzi. Proses inferensi ini melibatkan semua bagian utama dari fuzzi seperti fungsi keanggotaan, operator fuzzi, dan if-then aturan. Ada dua tipe sistem inferensi fuzzi yang digunakan: tipe mamdani dan tipe sugeno. Sistem inferensi fuzzi mamdani adalah sistem yang sering digunakan dalam beberapa aplikasi di lapangan (juga digunakan dalam tugas akhir ini) sementara sistem inferensi sugeno biasa digunakan dalam operasi yang lebih
17
rumit, seperti permodelan non-linear dan permodelan jaringa syaraf tiruan [9].
Dalam prakteknya, terdapat empat tahapan dari sistem inferensi fuzzi untuk memetakan variabel inputnya ke outputnya. Empat tahapan tersebut adalah: a. Proses fuzzifikasi yang meliputi proses penerjemahan variabel fuzzi input-output menjadi variabel bahasa. b. Proses implikasi yang meliputi proses penggunaan fungsi implikasi untuk menghubungkan hasil dari operasi fuzzi ke bagian konklusi atau consequent. c. Proses agregasi (komposisi aturan) yang meliputi proses penyatuan hasil dari proses implikasi. Proses agregasi biasanya menggunakan operasi maksimum (union) untuk mengkomposisi hasil dari proses implikasi. d. Proses deffuzifikasi yang meliputi proses pengambilan keputusan dan menentukan suatu nilai yang crisp (pasti). Proses deffuzifikasi dapat menggunakan beberapa metode untuk menentukan nilai crisp tersebut antara lain metode centroid, metode bisektor, metode mean of maximum (MOM), metode largest of maximum (LOM) dan metode smallest of maximum (SOM).
Sistem inferensi Mamdani (min-max) yang digunakan pada sistem logika fuzzi ini menggunakan proses fuzzifikasi dan operator fuzzi yang standar dalam pemetaan ke variable bahasanya. Proses implikasinya menggunakan fungsi implikasi minimum dan proses agregasi menggunakan fungsi agregasi maksimum. Sedangkan untuk
18
proses terakhir yaitu proses deffuzifikasi menggunakan metode centroid.
Ilustrasi untuk penggunaan sistem inferensi mamdani ini digambarkan pada gambar 3.3 di bawah ini.
Gambar 3.3 Diagram Inferensi Fuzzi
Terlihat dari gambar 3.3 bagaimana aliran proses berawal dari tiap-tiap input, yaitu input 1 dan input 2, lalu aliran bergerak dari kiri ke kanan melintasi baris atau aturan dan akhirknya bergerak ke bawah menghasilkan suatu output. Titik ditengah nilai dari output tersebut menyatakan nilai pasti dari hasil inferensi fuzzi yang dilakukan dengan metode defuzzifikasi centroid.
19
Illustrasi lainnya yaitu gambar 3.4 [9] menjelaskan kasus untuk 2 input dengan variabel service dengan himpunan [poor], [good] dan [excellent] dan food dengan himpunan [rancid] dan [delicious] yang memiliki output [cheap]. [average], dan [generous].
Gambar 3.4 Diagram Inferensi Fuzzi (Contoh Kasus Pelayanan Restaurant)
Proses ke lima langkah inferensi dari fuzzi dijelaskan sebagai berikut. Pada langkah pertama (fuzzifikasi) nilai dari dua input akan dievaluasi untuk titik yang ditinjau. Jika proses logika yang digunakan adalah OR maka nilai yang diambil adalah nilai terbesar dari masing-masing input. Hal yang sama juga dilakukan pada input untuk dua himpunan lain [good] dan [exelllent] (yang berbeda dengan himpunan pertama yang ditinjau). Langkah kedua biasa disebut bagian implikasi yaitu memetakan nilai dari himpunan input-input terhadap nilai output
20
sesuai dengan if-then aturan-nya masing-masing. Hasil dari proses implikasi ini menggunakan operator (min) dimana hasil arsiran dari output minimal yang diambil. Karena suatu hasil itu harus memiliki suatu
nilai
maka
proses
aggregasi
(langkah
ketiga)
adalah
menggabungkan semua nilai dari proses implikasi sebelumnya. Dengan kata lain proses aggregasi adalah proses yang mana mewakili output untuk setiap kombinasi suatu aturan dari masing-masing himpunan. Karena proses aggregasi masih dalam bentuk suatu batasan yang memberikan nilai keanggotaan antara 0-1, maka perlu ada suatu nilai yang dapat diambil kesimpulan oleh pengguna dalam pengambilan keputusan terhadap input yang ditinjau. Langkah ke lima (defuzzification) adalah mengembalikan output fuzzi ke dalam suatu nilai pasti (crisp).
III.2
Pengontrol Berbasis Fuzzi Pengontrol berbasis fuzzi adalah salah satu terapan dari teori fuzzi. Pengontrol fuzzi menggambarkan algoritma untuk proses kontrol sebagai hubungan fuzzi antara informasi tentang kondisi proses yang akan dikontrol (x dan y) dan keluaran untuk mengontrol proses (z).
Pengontrol berbasis fuzzi dibangun dari kumpulan aturan-aturan fuzzi dan ketika masukan yang sebenarnya diberikan, maka keluaran dihitung dengan menggunakan aturan inferensi fuzzi. Berikut desain arsitektur untuk proses fuzzi (gambar 3.4) dan diagram blok pengontrol fuzzi (gambar 3.5)
21
Gambar 3.5 Arsitektur pengontrol fuzzi
Empat komponen utama dari perangkat fuzzi tersebut adalah [10]: a) Rule base: menyimpan pengetahuan dalam bentuk aturan-aturan yang digunakan untuk melakukan pengengndalian terhadap sistem. b) Mekanisme Inferensi menentukan aturan kontrol yang sesuai dengan keadaan aktual dan menentukan besar input ke plant. c) Fuzzifikasi: antarmuka (interface) yang menerjemahkan input pengontrol fuzzi sehingga input tersebut dapat diinterpretasikan dan dibandingkan terhadap aturan yang terdapat dalam basis aturan (lihat diagram blok pengontrolan fuzzi). d) Defuzzifikasi: antarmuka yang mengonversi kesimplulan dari mekanisme interferensi menjadi suatu besaran yang dapat digunakan sebagai input dari plant.
Diagram blok untuk proses pengontrolan berbasis fuzzi ditunjukkan oleh gambar dibawah ini:
22
Gambar 3.6 Diagram blok pengontrolan berbasis fuzzi
Masukkan berupa nilai angka biasa -biasanya masukan didapat dari alat ukur fisikal seperti sensor- diproses dengan sistem preprocessing. Keluarannya berupa input fuzzi yang kemudian akan diolah di pengontrol fuzzi dengan rujukan kumpulan data fuzzi. Keluaran dari pengontrol fuzzi akan masuk melalui proses postprocessing. Hasil dari bagian postprocessing akan memberikan nilai biasa kepada plant.
23