himpunan fuzzy

advertisement
Fuzzy logic
1 PENDAHULUAN
1.1 Sejarah Fuzzy Logic
Logika yang hanya berdasarkan atas 2 nilai kebenaran yaitu TRUE (1) dan FALSE
(0) kadang-kadang dirasakan kurang lengkap untuk menyatakan logika berpikir manusia.
Sehingga dikembangkan logika yang tidak hanya bernilai 0 atau 1 tapi menggunakan
logika yang punya interval nilai antara [0,1] yang disebut dengan logika samar (Fuzzy
logic).
Fuzzy Logic (FL) diperkenalkan pada tahun 1965 oleh Lotfi A. Zadeh, seorang
Profesor di bidang ilmu komputer, Universitas California, Berkeley. FL dipakai untuk
menyatakan data atau informasi yang bersifat tidak pasti atau samar. Tapi sebenarnya
sejarah FL dimulai jauh sebelumnya yaitu ketika jaman Yunani Kuno. Aristotle dan
beberapa filsuf lainnya, dalam rangka menemukan teori logika dia mengemukakan
hukum-hukum yang disebut “Laws of Thought”. Salah satu diantaranya adalah “Law of
excluded Middle” yang menyatakan bahwa setiap pernyataan (propotition) harus bernilai
TRUE (T) atau FALSE (F). Bahkan ketika Parminedes mengusulkan versi pertama dari
hukum tersebut (400 BC) langsung mendapat pertentangan dari Heraclitus yang
menyatakan bahwa setiap pernyataan hanya bernilai TRUE dan NOT TRUE. Pada saat itu
Plato yang meletakkan pondasi bagi Fuzzy Logic, menyatakan bahwa ada daerah ketiga
(selain TRUE dan FALSE). Salah satu pernyataan alternatif yang berbeda dengan logika
dengan 2 nilai kebenaran (Aristotle) pertama kali dikemukakan oleh Lucasiewicz (1920).
Dia mengemukan logika dengan 3 nilai kebenararan beserta dengan penjelasan
matematiknya. Nilai ke-3 dia sebut dengan istilah “mungkin” (possible). Dan diberikan
nilai numerik yaitu antara TRUE (1) dan FALSE (0). Selanjutnya Lucasiewicz
mengemukakan tentang logika dengan 4 nilai kebenaran, 5 nilai kebenaran, dan kemudian
menyatakan bahwa logika memiliki nilai tak berhingga (infinite). Logika dengan 3 nilai
dan logika dengan nilai tak berhingga yang paling menarik. Tapi selanjutnya dia lebih
memilih logika dengan 4 nilai kebenaran karena paling mudah disesuaikan dengan logika
Aristotle ( 2 nilai kebenaran). Juga perlu dicatat Knuth, juga menyatakan logika dengan 3
nilai kebenaran hampir sama seperti Lucasiewicz. Knuth berspekulasi bahwa matematik
akan menjadi lebih nyaman jika dibandingkan secara tradisional dengan hanya 2 nilai
kebenaran.
Ide dari logika dengan nilai tak berhingga sudah diperkenalkan oleh Lotfi A.
Zadeh dalam tulisannya yang berjudul tentang “ Fuzzy sets” (himpunan fuzzy) disertai
© Avid-06
1
Fuzzy logic
dengan penjelasan matematik teori Himpunan Fuzzy dan juga tentang Logika Fuzzy.
Dalam teori ini juga dijelaskan tentang pembentukan Fungsi Keaggotaan (membership
function) yang beroperasi pada range nilai antara [0,1]. Disamping itu juga diusulkan
tentang operasi – operasi matematika logika yang pada prinsipnya merupakan
pengembangan dari logika klasik.
Fuzzy logic sudah memberikan perubahan dalam pengambilan keputusan dimana
kemampuan berpikir manusia yang tidak pasti dapat dipakai dalam sistem berbasis
pengetahuan. Teori FL sudah menyediakan teori matematika untuk menampung
ketidakpastian proses berpikir manusia. Beberapa ciri dari FL (Zadeh, 1992) adalah :
- Dalam FL, logika pasti (exact) dianggap sebagai kasus terbatas dari logika tidak pasti
(approximate)
- Dalam FL, segala sesuatu (pernyataan) ditentukan berdasarkan tingkatan (degree)
- Dalam FL, pengetahuan merupakan kumpulan dari batasan-batasan yang elastis atau
tidak pasti (fuzzy)
- Pengambilan keputusan adalah proses peralihan dari batasan-batasan elastis atau tidak
pasti
- Semua sistem logika dapat dibuat menjadi samar (fuzzy)
Ada 2 ciri utama dari Sistem Fuzzy sehingga sistem ini dapat diterapkan dengan baik pada
beberapa aplikasi tertentu :
- Sistem fuzzy sangat cocok untuk logika berfikir yang tidak pasti, khususnya untuk
sistem yang sulit dimodelkan secara matematika.
- FL membolehkan pengambilan keputusan dengan nilai perkiraan atau berdasarkan
informasi yang tidak lengkap atau tidak pasti.
1.2 Aplikasi Fuzzy Logic dalam industri
Beberapa aplikasi dari Fuzzy logic dalam bidang industri sudah dapat kita rasakan
manfaatnya. Misalnya dalam sistem kontrol suhu pada Air Conditioner (AC). Pada sistem
ini, sistem Fuzzy secara otomatis akan mengatur aliran udara menurut keadaan temperatur
udara di sekitarnya. Sehingga temperatur ruangan akan selalu berada pada keadaan stabil
berdasarkan keinginan. Televisi cerdas (smart TV), sistem fuzzy berfungsi untuk
mengatur kontras dan warna pada TV sehingga tetap berada pada mode tertentu untuk
setiap frame baru (channel baru). Mesin cuci cerdas (Smart Washing Machine), sistem
fuzzy akan mengatur pemberian detergen ke dalam mesin cuci. Semakin kotor cucian
maka semakin banyak detergen yang perlu ditambahkan. Demikian sebaliknya.
Disamping itu sistem Fuzzy juga dapat dipakai sebagai sistem kontrol pada pabrik semen.
© Avid-06
2
Fuzzy logic
Dalam hal ini sistem kontrol Fuzzy dipakai untuk mengatur pemasukan campuran semen
sehingga alirannya menjadi konstan. Dari beberapa aplikasi diatas semua sistem berjalan
secara otomatis hanya dengan menekan sebuah tombol. Sangat hebat dan ajaib.
Bagaimana hal ini terjadi? Bagaimana rumitnya perhitungan matematika di dalamnya?
© Avid-06
3
Fuzzy logic
2 HIMPUNAN FUZZY
Himpunan Fuzzy (Fuzzy Set) adalah pengembangan lebih jauh dari konsep
matematika tentang himpunan. Awalnya himpunan ditemukan oleh ahli matematika
Jerman yang bernama George Cantor (1845 – 1918). Teori himpunan yang dikemukakan
oleh Cantor banyak mengalami hambatan semasa hidupnya, tapi pada saat ini hampir
semua ahli matematika percaya bahwa sangat mungkin untuk menyatakan hampir semua
masalah matematik ke dalam teori himpunan. Banyak peneliti sedang mencari
konsekuensi dari mem-Fuzzy-kan teori himpunan klasik (Cantor). Sebagai akibatnya
adalah banyak buku-buku yang dihasilkan yang membahas tentang Himpunan Fuzzy.
Dalam kontrol fuzzy, pengetahuan tentang logika Fuzzy dan Relasi Fuzzy sangat penting
untuk memahami bagaimana aturan-aturan Fuzzy (Fuzzy Rules) bekerja.
Himpunan (konvensional)
Himpunan adalah kumpulan dari obyek-obyek yang dapat diperlakukan sebagai
satu kesatuan. Cantor menyatakan himpunan dengan anggota-anggotanya, sehingga suatu
item dari suatu Semesta (Universe) dapat merupakan anggota atau bukan dari suatu
himpunan.
Contoh 1 :
Berikut ini adalah kumpulan dari obyek yang didefinisikan dengan jelas sehingga
disebut dengan Himpunan :
(a) Himpunan bilangan bulat positif yang lebih kecil dari 4. Ini adalah contoh himpunan
berhingga dengan 4 anggota yaitu : 0, 1, 2, dan 3.
(b) Himpunan dinosaurus yang hidup pada basement Museum di Inggris. Himpunan ini
tidak punya anggota dan disebut himpunan kosong (empty set)
(c) Himpunan bilangan real yang lebih besar dari 10. Himpunan ini mempunyai jumlah
anggota tak berhingga.
Suatu himpunan dapat ditentukan dengan anggota-anggotanya. Anggota ini
menunjukkan ciri himpunan secara keseluruhan. Daftar anggota himpunan A = {0,1,2,3}
menunjukkan sebuah himpunan berhingga. Tak seorangpun dapat mendaftar semua
elemen dari himpunan tak berhingga. Sebagai gantinya kita harus menyatakan beberapa
property yang menyatakan ciri elemen dari himpunan tersebut misalnya dengan memakai
predikat : x > 10. Jadi elemen dari himpunan tersebut adalah elemen yang memenuhi
predikat yang ditentukan. Jadi ada 2 cara untuk menyatakan himpunan yaitu : secara
eksplisit dengan daftar atau secara implisit dengan predikat.
© Avid-06
4
Fuzzy logic
Himpunan Fuzzy (Fuzzy Set)
Setelah Zadeh, maka banyak himpunan memiliki lebih dari hanya satu kriteria
(apakah anggota atau bukan (either member or not)) untuk menyatakan keanggotaan
himpunan. Misalnya himpunan orang ”Muda” (young people). Bayi dengan umur 1 tahun
jelas merupakan anggota dari himpunan tersebut. Sedangkan orang dengan umur 100
tahun juga jelas bukan merupakan anggota himpunan itu.Tapi bagaimana dengan orang
yang memiliki umur 20, 30, atau 40 tahun? Contoh lainnya misalnya laporan cuaca yang
menyatakan : temperatur Tinggi, angin Kencang, dan hari Cerah. Zadeh mengusulkan
tingkat keanggotaan sedemikian hingga peralihan dari anggota ke bukan anggota terjadi
secara bertahap (gradual). Atau tidak terjadi secara mendadak (abrupt). Dalam gambar
(2.1) diperlihatkan keanggotaan dalam himpunan Fuzzy dan Non Fuzzy. Dalam himpunan
Fuzzy (garis putus – putus) tingkat keanggotaan beralih secara bertahap dalam interval
[0,1]. Sedangkan dalam himpunan Non Fuzzy (garis tebal) tingkat keanggotaan berubah
secara mendadak dari 0 langsung menjadi 1.
Gambar 2.1 Tingkat Keanggotaan Himpunan Fuzzy dan Non Fuzzy
Tingkat keanggotaan untuk setiap anggota atau elemen menggambarkan suatu
himpunan Fuzzy. Tingkat keanggotaan suatu item atau elemen biasanya dinyatakan
dengan bilangan real antara 0 dan 1, dan sering dilambangkan dengan huruf Yunani µ.
Semakin besar nilai µ maka semakin besar tingkat keanggotaan dari elemen tersebut
dalam himpunan Fuzzy. Zadeh menganggap himpunan konvensional (Cantor) sebagai
kasus khusus dimana elemen-elemen himpunan mempunyai tingkat keanggotaan penuh
(full membership) dalam himpunan Fuzzy (atau µ = 1). Namun Zadeh menyebut
himpunan konvensional (Cantor) sebagai himpunan non Fuzzy. Atau sekarang disebut
dengan Himpunan Tegas (Crisp Set).
© Avid-06
5
Fuzzy logic
Perlu diingat bahwa Zadeh secara resmi tidak memberikan landasan untuk
menentukan tingkat keanggotaan suatu elemen dalam himpunan Fuzzy. Keanggotaan
umur 50 tahun dalam himpunan fuzzy ”Muda” tergantung pada pendapat pribadi masingmasing orang. Tingkat keanggotaan adalah bersifat subyektif yang sangat bergantung
pada konteks. Seperti diperlihatkan dalam gambar (2.2.a) dan (2.2.b) yang menyatakan
himpunan fuzzy “Cepat” pada kecepatan (speed) mobil. Seorang pengemudi bisa saja
mendefinisikan “Cepat” seperti gambar (2.2.a.) Tapi pengemudi yang lain mungkin
mendefinisikan “Cepat” seperti gambar (2.2.b).
(a)
(b)
cepat
cepat
Gambar 2.2 Himpunan Fuzzy “Cepat” bersifat subyektif
Fungsi Keanggotaan Fuzzy (Fuzzy membership function) berbeda dengan
distribusi probabilitas dalam statistik. Perbedaan ini dapat dilihat dalam contoh berikut :
Contoh 2 :
Andaikan sebuah pernyataan : Joni makan X telur saat sarapan pagi, dimana X 
U = {1,2,3,...8}. Maka kita dapat menyatakan distribusi probabilitas p dengan mengamati
Joni sarapan pagi selama 100 hari.
U = {1
2
3
4
5
6
7
8}
p = {0.1 0.8 0.1 0
0
0
0
0}
Sedangkan himpunan fuzzy menyatakan tingkat keanggotaan dimana Joni makan X telur
yang dinyatakan dengan distribusi  yaitu :
U = {1
2
3
4
 = {1
1
1
1
5
6
7
0.8 0.6 0.4
8 }
0.2}
Jadi tingkat keanggotaan X = 3 adalah 1, sedangkan probabilitasnya hanya 0.1
Contoh ini menunjukkan bahwa tingkat keanggotaan tidak menunjukkan suatu
probabilitas. Kita dapat memandang fungsi keanggotaan sebagai distribusi pribadi
(subyektif), yang berbeda dengan distribusi statistik yang berdasarkan pada pengamatan.
© Avid-06
6
Fuzzy logic
2.1 Semesta (Universe)
Elemen – elemen dari himpunan fuzzy diambil dari Semesta Pembicaraan
(Universe of Discourse) atau disingkat Universe (Semesta). Semesta berisi semua elemen
yang mungkin. Bahkan Semesta bergantung pada konteks, seperti contoh berikut.
Contoh 3 :
(a) Himpunan orang ”Muda” bisa terdiri dari semua umur kehidupan manusia di dunia
sebagai Semesta. Atau elemen-elemen semesta dapat dinyatakan dengan bilangan
antara 0 dan 100.
(b) Himpunan x » 10 ( x jauh lebih besar dari 10). Semesta dari himpunan ini adalah
semua bilangan positif .
Dalam kasus yang berhubungan dengan kuantitas non numerik ( bukan angka), misalnya :
rasa (taste), yang tidak dapat diukur dengan skala berupa angka maka kita tidak dapat
memakai Semesta yang elemennya berupa angka. Tapi elemen – elemennya dapat diambil
dari satuan psikologi. Contoh Semesta untuk mengakomodasi hal seperti itu misalnya
adalah : {pahit, manis, asam, asin, pedas,...}
2.2 Fungsi Keanggotaan
Setiap elemen dalam Semesta Pembicaraan adalah anggota dari himpunan fuzzy
dengan tingkat-tingkat tertentu, bahkan nol. Himpunan elemen-elemen dengan tingkat
keanggotaan tidak nol disebut dengan support ( penunjang) dari himpunan Fuzzy. Fungsi
yang mengkaitkan suatu bilangan dengan setiap elemen x dalam Semesta disebut sebagai
Fungsi Keanggotaan µ(x). Fungsi keanggotaan menentukan tingkat atau derajat
keanggotaan dari setiap elemen dalam Semesta Pembicaraan dalam himpunan. Fungsi
Keanggotaan memetakan elemen – elemen Semesta pada nilai numerik dalam interval
[0,1]. Ada 2 cara untuk menyatakan fungsi keanggotaan himpunan Fuzzy yaitu secara :
kontinu dan diskret.
Secara kontinu maka fungsi keanggotaan akan berbentuk fungsi matematika.
Contoh fungsi keanggotaan yang kontinu misalnya :
-kurva berbentuk lonceng ( disebut kurva  )
-kurva berbentuk s (disebut kurva s)
-kurva berbentuk kebalikan S (disebut kurva z)
-kurva berbentuk segitiga
-kurva berbentuk trapesium
© Avid-06
7
Fuzzy logic
Sedangkan secara diskret maka fungsi keanggotaan dan semesta dari himpunan fuzzy
akan dinyatakan dengan titik-titik diskret dalam sebuah daftar atau vektor.
Contoh 4 (fungsi kontinu) :
Fungsi cosinus dapat dipakai untuk membuat bermacam – macam fungsi
keanggotaan. Misalnya untuk membuat kurva s dengan fungsi cosinus yaitu :
0

, x  xl
 1 1

 x  xr 
s ( xl , x r , x)    cos
  , xl  x  x r  ..........................................(2.1)
 x r  xl  , x  x
2 2

r

 1
Dimana xl adalah batas kiri dan xr adalah batas kanan. Gambar (2.3) memperlihatkan
bentuk kurva s(10,90,x). Dimana x diambil dari 0 sampai 100.
Gambar 2.3 Kurva s(10,90,x)
Kurva z adalah merupakan kebalikan (inverse) dari kurva s sehingga fungsinya dapat
dinyatakan sebagai berikut :
1

, x  xl
 1 1

 x  xl 
z ( xl , x r , x)    cos
  , xl  x  x r  ..........................................(2.2)
 x r  xl  , x  x
2 2

r
 0

Gambar (2.4) memperlihatkan kurva z (10,90,x). Tampak bahwa kurva z merupakan
kebalikan dari kurva s (gambar (2.3))
Gambar 2.4 Kurva z(10,90,x)
Sementara itu kurva  merupakan perpaduan antara kurva s dan kurva z sehingga
puncaknya akan mendatar pada interval [x2,x3], seperti dinyatakan fungsi berikut ini :
© Avid-06
8
Fuzzy logic
 ( x1 , x2 , x3 , x4 , x)  min( s( x1 , x2 , x), z( x3 , x4 , x)) ........................................ ......(2.3)
Gambar (2.5.a) menggambarkan kurva  (10,90,100,100,x). Tampak bahwa kurva yang
dihasilkan hampir sama dengan kurva s (gambar 2.3). Karena kurva tersebut merupakan
perpaduan dari kurva s(10,90,x) dengan kurva z(100,100,x). Dimana range nilai x =
[0,100].
(a)
(b)
Gambar 2.5 (a) Kurva  (10,90,100,100,x) dan (b) Kurva  (10,40,60,90,x)
Sedangkan pada gambar (2.5.b) menggambarkan Kurva  (10,40,60,90,x) yang
merupakan kombinasi antara kurva s (10,40,x) dengan kurva z (60,90,x).
Kurva Segitiga (trianguler) dinyatakan dengan fungsi seperti berikut :
x  a
b  a
 c  x
t (a, b, c, x)  
c  b
 0

,a  x  b
,b  x  c
, otherwise
Bentuk kurva dari fungsi segitiga adalah seperti diperlihatkan dalam gambar (2.6).
Gambar 2.6 Kurva segitiga t(a,b,c,x)
Kurva Trapesium (trapezoidal) dinyatakan dengan fungsi seperti berikut :
xa
b  a
 1
t (a, b, c, d , x)  
dx

d  c
 0
© Avid-06
,a  x  b
,b  x  c
,c  x  d
, otherwise
9
Fuzzy logic
Bentuk kurva dari fungsi Trapesium diperlihatkan dalam gambar (2.7).
Gambar 2.7 Kurva Trapesium t(a,b,c,d,x)
Contoh 5 (fungsi Diskret) :
Jika kurva  (10,90,100,100,x) seperti diperlihatkan gambar (2.5.a) dinyatakan
dalam bentuk diskret, dimana semesta u diwakili oleh beberapa nilai misalnya :
u = [0 20 40 60 80 100]
Dari kurva  (gambar 2.3) didapatkan nilai keanggotaan dari elemen – elemen semesta
tersebut adalah :
 (10,90,100,100,u1) = 0
 (10,90,100,100,u2) = 0.04
 (10,90,100,100,u3) = 0.31
 (10,90,100,100,u4) = 0.69
 (10,90,100,100,u5) = 0.96
 (10,90,100,100,u6) = 1
Atau secara ringkas bisa ditulis :
 (10,90,100,100,u) = [0 0.04 0.31 0.69 0.96 1]
Gambar 2.8 Kurva  (10,90,100,100,u) diskret
Bentuk kurva  diskret dapat dilihat dalam gambar (2.8).
Himpunan Fuzzy normal
Suatu himpunan fuzzy dikatakan normal jika nilai keanggotaan tertinggi sama
dengan 1. Kita dapat menormalisasi himpunan fuzzy dengan jalan membagi tiap – tiap
© Avid-06
10
Fuzzy logic
nilai keanggotaan dengan nilai keanggotaan tertinggi dalam himpunan tersebut atau bisa
ditulis : a / max(a).
2.3 Fuzzy Singleton
Suatu himpunan fuzzy A adalah kumpulan dari pasangan berurutan antara x
(elemen dalam semesta ) dan nilai keanggotaan µ(x) :
A  ( x,  ( x))........................................................................................(2.4)
item x adalah elemen-elemen dalam Semesta dan µ(x) adalah tingkat keanggotaan item x
dalam himpunan fuzzy A. Pasangan tunggal ( x,  ( x)) disebut dengan Fuzzy Singleton.
Jadi sebuah himpunan fuzzy merupakan kumpulan dari singleton – singleton. Seringkali
suatu himpunan fuzzy A dinyatakan dengan vektor :
a  ( ( x1 ),  ( x2 ),....,  ( xn )) ..................................................................(2.5)
Dimana tiap-tiap posisi i(1,2,...,n) bersesuaian dengan sebuah elemen dalam Semesta yang
terdiri dari n elemen.
2.4 Variabel Linguistik
Jika dalam aljabar setiap variabel diberi nilai berupa bilangan maka dalam
himpunan fuzzy setiap variabel diberi nilai berupa kata-kata (words) atau kalimat
(sentences). Variabel seperti ini disebut variabel linguistik. Himpunan dari nilai – nilai
yang dapat diambil disebut dengan kumpulan istilah (term set) dari himpunan tersebut.
Setiap nilai dalam kumpulan istilah adalah variabel fuzzy yang didefinisikan pada
variabel dasar (base variable). Variabel dasar menyatakan Semesta Pembicaraan untuk
semua variabel fuzzy dalam kumpulan istilah. Secara ringkas dapat dinyatakan dalam
bentuk diagram berikut ini :
Variabel Linguistik
Variabel Fuzzy
Variabel Dasar
Gambar 2.9. Diagram Variabel Linguistik
Contoh 6 (kumpulan istilah) :
Jika x adalah variabel linguistik dengan nama ”Umur”. Maka istilah-istilah dalam
variabel linguistik yang merupakan himpunan fuzzy antara lain : “Tua”, “Muda”, “sangat
Tua”, yang diambil dari kumpulan istilah T :
T={Tua, sangat Tua, tidak terlalu Tua, muda, agak muda, sangat Muda}
© Avid-06
11
Fuzzy logic
Setiap istilah adalah merupakan variabel Fuzzy yang didefinisikan pada variabel dasar
yang mana nilainya dari 0 sampai 100 tahun.
Istilah Utama (Primary Term) dan Istilah Termodifikasi (Modified Term)
Istilah Utama adalah sebuah istilah atau sebuah himpunan yang harus
didefenisikan terlebih dahulu. Misalnya himpunan fuzzy : ”Tua” (Old) dan ”Muda”
(young). Sedangkan Istilah Termodifikasi adalah himpunan atau istilah yang diturunkan
dari Istilah Utama. Misalnya : ”Sangat Muda” (Very Young) dan ”Tidak Sangat Muda”
(Not Very Young).
Gambar 2.10. Istilah Utama (old, young) dan
Istilah Termodifikasi ( very young,
not very young, more or less old)
2.5 Contoh Kasus : Pengontrol Level Tangki
Sebuah Kontrol Fuzzy yang diterapkan pada Tangki (pada pabrik semen) seperti
diperlihatkan dalam gambar (2.11). Sistem kontrol disini bertujuan untuk mengatur
pemasukan semen sehingga aliran menjadi konstan. Dalam diagram terlihat rancangan
terdiri dari : sebuah tangki, 2 buah sensor (LL dan LH), dan sebuah kran atau valve (v1).
Sensor LL dan LH berfungsi untuk mengamati ketinggian (level) material (semen) dalam
tangki. Jika ketinggian material dalam tangki setinggi LL maka sistem akan membuka
kran v1( v1 = 1). Dan material akan mengalir masuk ke dalam tangki. Dan jika ketinggian
material sudah mencapai level LH maka sistem akan menutup kran v1 (v1= 0). Sehingga
material berhenti masuk ke tangki. Sensor LL akan bernilai 1 jika di atas tanda LL dan
bernilai 0 jika di bawah tanda LL. Jika dinyatakan dengan logika biner maka kondisi
diatas dapat dinyatakan :
1, jika LL bernilai 0
v1  
.................................................................(2.6)
0, jika LH bernilai 1
Seorang operator yang bertanggung jawab untuk membuka dan menutup kran v1 mungkin
akan menyatakan cara untuk mengontrol kran itu dengan pernyataan - pernyataan berikut :
© Avid-06
12
Fuzzy logic
-Jika level rendah maka buka v1
-Jika level tinggi maka tutup v1
.....................................................(2.7)
Cara 1 ( persamaan 2.6) merupakan cara lama yang cocok dengan PLC (Programmable
Logic Controller) dengan memakai logika Boole. Sedangkan cara 2 ( persamaan 2.7)
adalah cara pengaturan yang sesuai dengan Pengontrol Fuzzy dengan memakai Logika
Fuzzy.
Tangki
Gambar 2.11. Diagram Proses Pengontrol Level Tangki
Pernyataan – pernyataan dalam persamaan (2.7) disebut dengan Aturan Fuzzy (Fuzzy
Rule). Kita akan membahas lebih dalam tentang Aturan Fuzzy pada bab selanjutnya.
Dalam pernyataan :
Jika level Rendah,
terdapat variabel Fuzzy yaitu : “Rendah”, yang merupakan sebuah nilai dari variabel
linguistik “Level”. Variabel “Rendah” dapat dinyatakan dalam komputer dengan vektor
Rendah. Semesta dari vektor Rendah dinyatakan dalam range dari nilai – nilai yang
mungkin dari variabel linguistik Level. Range nilai untuk level diambil antara [0,100].
Range nilai ini untuk menyatakan prosentase material dalam tangki (percent full) . Nilai 0
berarti tangki belum berisi material (0 %) sedangkan nilai 100 berarti tangki terisi penuh
(100 %). Pernyataan Level Rendah memperlihatkan nilai keanggotaan rendah (i), dimana
Level dibulatkan ke elemen terdekat dalam Semesta untuk mendapatkan index yang tepat
untuk i. Hasilnya adalah bilangan µ = [0,1] yang menyatakan seberapa besar pernyataan
Level Rendah terpenuhi. Gambar 2.12 memperlihatkan definisi yang mungkin dari
variabel fuzzy : Rendah dan Tinggi pada kasus level tangki. Tinggi dan Rendah secara
berurutan dinyatakan dengan fungsi keanggotaan kurva s (10,90,x) dan kurva z (10,90,x).
© Avid-06
13
Fuzzy logic
Gambar 2.12. Variabel Fuzzy Rendah dan Tinggi pada kasus level tangki
Contoh :
1. Gambarkan kurva dari himpunan fuzzy A dan B yang dinyatakan dengan :
A = {(0,0),(1,0),(2,0),(3,0.1),(4,0.3),(5,0.5),(6,0.7),(7,0.8),(8,0.9), (9,1),(10,1)}
B = {(0,1),(1,1),(2,1),(3,1),(4,0.8),(5,0.6),(6,0.4) ,(7,0.2),(8,0), (9,0),(10,0)}
Dimana Semesta U = {0,1,2,...,10}
Jawab :
2. Gambarkan kurva dari himpunan fuzzy yang menyatakan Temperatur ruang
sejuk(cool) , Sedang (good) , dan Hangat (warm) yang dinyatakan fungsi keanggotaan
sebagai berikut :
 x  17
 20  17 ,17  x  20
 23  x
sedang (17,20,23, x)  
,20  x  23
 23  20
, otherwise
 0

 x  11
 14  11
 1
sejuk (11,14,17,20, x)  
20  x

 20  17
 0
© Avid-06
,11  x  14
,14  x  17
,17  x  20
, otherwise
14
Fuzzy logic
 x  20
 23  20 ,20  x  23
 1
,23  x  26
Hangat (20,23,26,29, x)  
29  x

,26  x  29
 29  26
 0
, otherwise
Dimana Semesta U = {8,9,10,...,32}
Jawab :
Soal – soal latihan :
1. Nilai pelayanan (service) yang diberikan seorang pelayan hotel kepada tamu yang
berkunjung di hotel biasanya dikelompokkan dalam tiga variabel yang bersifat fuzzy
yaitu : poor (jelek), good (bagus), excellent (sangat bagus). Dimana fungsi
keanggotaan dari masing –masing variabel tersebut dinyatakan dengan :
;0  x  2
1

 poor ( x)  (5 - x)/3 ;2  x  5
0
;x  5

;x  5
0

 excellent ( x)  (x - 5)/3 ;5  x  8
1
;x  8

;0  x  2 dan 8  x  10
0

 good ( x)  (x - 2)/3 ;2  x  5
(8  x) / 3 ;5  x  8

Jika semesta dari himpunan fuzzy tersebut adalah U = {0,1,...10}. Gambarkanlah
grafik setiap variabel fuzzy tersebut.
2. Rasa masakan dalam sebuah restoran biasanya dapat dinyatakan dengan variabel yang
bersifat fuzzy yaitu : rancid ( anyir) dan delicious (enak) Dimana fungsi keanggotaan
dari variabel tersebut adalah :
;0  x  2
1

 rancid ( x)  (5 - x)/3 ;2  x  5
0
;x  5

;x  5
0

 delicious ( x)  (x - 5)/3 ;5  x  8
1
;x  8

Jika semesta U = {0,1,2,...,10}. Gambarkan kurva dari variabel fuzzy tersebut!
© Avid-06
15
Fuzzy logic
3. Harga sebuah mobil di sebuah show room dinyatakan dengan variabel yang bersifat
fuzzy yaitu : cheap (murah), average (sedang), dan expensive (mahal). Dimana fungsi
keanggotaan dari variabel tersebut adalah :
; 4  x  10
0

 cheap ( x)  x/2
;0  x  2
(4  x) / 2 ;2  x  4

;0  x  6
0

 generous( x)  (x - 6)/2 ; 6  x  8
(10  x) / 2 ;8  x  10

;0  x  2 dan 8  x  10
0

 average( x)  (x - 2)/3 ;2  x  5
(8  x) / 3 ;5  x  8

Jika semesta U = {0,1,2,...,10}. Gambarkan kurva dari variabel fuzzy tersebut!
4. Diketahui himpunan semesta U=[0,100] menyatakan kecepatan sepeda motor dalam
meter/detik. Himpunan A menyatakan himpunan fuzzy dalam U yang menyajikan
sepeda motor yang berjalan ”cepat”. B menyatakan sepeda motor yang berjalan
”sedang”. Sedangkan C adalah himpunan fuzzy untuk kecepatan sepeda motor
“lambat”.
a) Tuliskan fungsi keanggotaan himpunan fuzzy A, B, dan C
b) Gambarkan kurva dari masing – masing fungsi keanggotaan tersebut.
Ingat : penentuan fungsi keanggotaan himpunan fuzzy bersifat subyektif dan
bergantung pada konteks.
5. Diketahui himpunan semesta U=[0,100] menyatakan umur manusia dalam tahun.
Himpunan A menyatakan himpunan fuzzy dalam U yang menyatakan umur “anakanak”. B menyatakan umur ”muda”. Sedangkan C adalah himpunan fuzzy untuk
menyatakan umur “tua”.
a) Tuliskan fungsi keanggotaan himpunan fuzzy A, B, dan C
b) Gambarkan kurva dari masing – masing fungsi keanggotaan tersebut.
© Avid-06
16
Fuzzy logic
3 OPERASI HIMPUNAN FUZZY
Fungsi keanggotaan adalah hal yang sangat krusial dalam himpunan fuzzy.
Sehingga kita dapat mendefinisikan operasi – operasi pada himpunan fuzzy dengan
menggunakan fungsi keanggotaan dari masing – masing himpunan tersebut.
3.1 Operasi - operasi pada Himpunan Fuzzy
Operasi pada himpunan fuzzy akan menghasilkan himpunan baru yang elemen –
elemennya berasal dari satu atau beberapa himpunan yang dioperasikan tersebut. Ada 3
operasi dasar pada himpunan Fuzzy yaitu : I r i s a n (intersection), g a b u n g a n (union),
dan ko m p l e m e n .
(a) Irisan ( Intersection)
Jika A dan B adalah himpunan fuzzy yang berasal dari Semesta yang sama maka
irisan dari A dan B didefinisikan dengan :
A  B  a min b
Atau bisa ditulis
A  B  min(a, b ) .................................................................................(3.1)
Operator min adalah operator untuk mencari nilai minimum dari perbandingan setiap item
atau elemen dalam himpunan fuzzy.
Contoh :
Jika A dan B adalah himpunan fuzzy pada Semesta U = {0,1, 2,..., 10} yang
dinyatakan dengan :
A = {(0,0),(1,0),(2,0),(3,0.1),(4,0.3),(5,0.5),(6,0.7),(7,0.8),(8,0.9), (9,1),(10,1)}
B = {(0,1),(1,1),(2,1),(3,1),(4,0.8),(5,0.6),(6,0.4) ,(7,0.2),(8,0), (9,0),(10,0)}
maka
A  B  min(a, b )
={(0,0),(1,0),(2,0),(3,0.1),(4,0.3),(5,0.5),(6,0.4),(7,0.2),(8,0),(9,0),(10,0)}
(b) Gabungan ( Union)
Jika A dan B adalah himpunan fuzzy yang berasal dari Semesta yang sama maka
gabungan dari A dan B didefinisikan dengan :
© Avid-06
17
Fuzzy logic
A  B  a max b
Atau sering ditulis
A  B  max( a, b) .................................................................................(3.2)
Operator max adalah operator untuk mencari nilai maksimum dari perbandingan setiap
item atau elemen dalam himpunan fuzzy.
Contoh :
Jika A dan B adalah himpunan fuzzy pada Semesta U = {0, 1, 2,...,10} yang
dinyatakan dengan :
A = {(0,0),(1,0),(2,0),(3,0.1),(4,0.3),(5,0.5),(6,0.7),(7,0.8),(8,0.9), (9,1),(10,1)}
B = {(0,1),(1,1),(2,1),(3,1),(4,0.8),(5,0.6),(6,0.4) ,(7,0.2),(8,0), (9,0),(10,0)}
maka
A  B  max( a, b)
= {(0,1),(1,1),(2,1),(3,1),(4,0.8),(5,0.6),(6,0.7),(7,0.8),(8,0.9),(9,1),(10,1)}
(c) Komplemen
Jika A adalah himpunan fuzzy yang berasal dari Semesta U maka komplemen dari
A didefinisikan dengan :
A c  1  a ..............................................................................................(3.3)
Contoh :
Jika A dan B adalah himpunan fuzzy pada Semesta U = {0, 1, 2, ...,10} yang
dinyatakan dengan :
A = {(0,0),(1,0),(2,0),(3,0.1),(4,0.3),(5,0.5),(6,0.7),(7,0.8),(8,0.9), (9,1),(10,1)}
maka komplemen A :
A c = {(0,1),(1,1),(2,1),(3,0.9),(4,0.7),(5,0.5),(6,0.3),(7,0.2),(8,0.1), (9,0),(10,0)}
© Avid-06
18
Fuzzy logic
Contoh 3.1 :
Sebuah keluarga yang beranggotakan 4 orang ingin membeli sebuah rumah baru.
Pertimbangan yang dipakai dalam membeli rumah adalah kenyamanan (comfortable)
rumah. Disamping kenyamanan maka yang menjadi pertimbangan adalah besarnya
(large) rumah . Misalkan semesta U = {1,2,3,4,5,6,7,8} dimana elemen – elemennya
menyatakan jumlah kamar tidur dari rumah – rumah yang tersedia. Himpunan fuzzy C
yang menyatakan rumah “nyaman” dinyatakan dengan :
C = {(1,0.2), (2,0.5), (3,0.8), (4,1), (5,0.7), (6,0.3), (7,0), (8,0), (9,0), (10,0)}
Dan himpunan fuzzy L untuk menyatakan rumah “besar” dinyatakan dengan :
L = {(1,0), (2,0), (3,0.2), (4,0.4), (5,0.6), (6,0.8), (7,1), (8,1), (9,1), (10,1)}
Irisan (intersection) dari himpunan fuzzy C (nyaman) dengan himpunan fuzzy L (besar)
adalah :
C  L  {(1,0), (2,0), (3,0.2), (4,0.4), (5,0.6), (6,0.3), (7,0), (8,0), (9,0), (10,0)}
Hasil irisan ini menunjukkan rumah dengan 5 kamar tidur paling optimal (µ = 0.6),
kemudian selanjutnya di urutan ke dua adalah rumah dengan 4 kamar tidur (µ = 0.4),.
Dari hasil perhitungan tersebut menunjukkan rumah dengan 5 kamar tidur adalah yang
paling memenuhi himpunan fuzzy untuk menyatakan rumah “nyaman” dan “besar”.
Sementara itu gabungan (union) antara himpunan fuzzy C (nyaman) dan L (besar) yaitu :
C  L  {(1,0.2), (2,0.5), (3,0.8), (4,1), (5,0.7), (6,0.8), (7,1), (8,1), (9,1), (10,1)}
Hasil gabungan (union) menunjukkan rumah dengan 4 kamar tidur yang memenuhi (µ =
1) karena rumah ini nyaman bagi keluarga yang terdiri dari 4 anggota keluarga.
Disamping itu hasil gabungan (union) juga menunjukkan rumah dengan 5, 6, 7, atau 8
kamar juga memenuhi karena menyatakan rumah “besar”. Jadi dapat dikatakan hasil
gabungan C  L menyatakan himpunan fuzzy yaitu : rumah “nyaman” atau “besar”.
Komplemen dari himpunan fuzzy rumah “besar” dinyatakan dengan :
Lc  {(1,1), (2,1), (3,0.8), (4,0.6), (5,0.4), (6,0.2), (7,0), (8,0), (9,0), (10,0)}
Hasil komplemen Lc menyatakan kebalikan himpunan fuzzy rumah “besar”, mungkin
tepatnya rumah “kecil”.
Operasi irisan dan gabungan bersifat asosiatif, komutatif, dan beberapa sifat
lainnya seperti dicantumkan dalam tabel 3.1. Sifat – sifat ini sangat penting untuk
membantu meramalkan hasil operasinya (output).
3.2 Pemodifikasi (Modifiers)
Modifier adalah suatu operasi untuk mengubah arti dari suatu variabel fuzzy.
Beberapa buku menyebut modifier dengan peruncingan atau penajaman (hedge).
© Avid-06
19
Fuzzy logic
Misalnya sebuah pernyataan : “sangat dekat dengan nol”. Kata “sangat” akan mengubah
arti dari kata “dekat dengan nol”. Dalam hal ini untuk mengeraskan arti kata “dekat”.
O
Oppeerraassii
SSiiffaatt
AB  BA
Komutatif
AB  BA
Komutatif
(A  B)  C  A  (B  C)
Asosiatif
(A  B)  C  A  (B  C)
Asosiatif
A  (B  C)  (A  B)  (A  C)
Distributif
A  (B  C)  (A  B)  (A  C)
Distributif
AB  AB
De Morgan
AB  AB
De Morgan
(A  B)  A  A
Absorsif
(A  B)  A  A
Absorsif
AA  A
Idempotensif
AA  A
Idempotensif
AA 1
Ekslusif tidak terpenuhi
AA  0
Ekslusif tidak terpenuhi
Tabel 3.1 Sifat – sifat Operasi Himpunan Fuzzy
Contoh lain dari Modifier adalah : “agak” (more or less), sangat – sangat (very – very).
Meskipun secara pasti sulit untuk mengatakan pengaruh yang diakibatkan oleh modifier
seperti “sangat”, tapi paling tidak dia akan mengeraskan arti variabel fuzzy yang
mengikutinya. Modifier “agak” memiliki pengaruh yang bertolak belakang dengan
“sangat”. Modifier – modifier tersebut dapat didekati dengan operasi berikut :
sangat a  a 2
1
agak a  a 2
Contoh 3.2 :
Andaikan kita punya himpunan fuzzy “muda” pada semesta U = {0,20,40,60,80}
yaitu :
muda = {(0,1),(20,0.6),(40,0.1),(60,0),(80,0)}
© Avid-06
20
Fuzzy logic
maka kita dapat menurunkan fungsi keanggotaan untuk himpunan fuzzy “sangat muda”
yaitu :
sangat muda = muda 2 ={(0,1),(20,0.36),(40,0.01),(60,0),(80,0)}
Dan kita dapat juga menurunkan himpunan fuzzy “sangat sangat muda” (very very young)
yaitu :
Sangat sangat muda = muda 4 ={(0,1),(20,0.13),(40,0),(60,0),(80,0)}
Gambar 3.1 memperlihatkan beberapa contoh modifier yang diturunkan dari himpunan
fuzzy primer (“tua” , “muda”).
Gambar 3.1 Modifier Himpunan Fuzzy
Semua modifier dapat dinyatakan dengan : ap , dimana p adalah pangkat yang nilainya
antara 0 dan tak berhingga.
3.3 Relasi Himpunan Fuzzy
Dalam kontroler fuzzy, relasi antara obyek – obyek atau elemen memegang
peranan yang sangat penting. Beberapa relasi menyangkut elemen – elemen dalam
semesta yang sama misalnya :
-sebuah ukuran lebih besar dari yang lain
-suatu kejadian terjadi lebih dulu dari kejadian lainnya
-sebuah elemen mirip atau menyerupai elemen lainnya
-dll
Disamping itu ada relasi yang menyangkut elemen – elemen dari semesta yang berbeda
(terpisah) misalnya :
-sebuah ukuran besar dan kecepatan perubahannya adalah positif
-koordinat x besar dan koordinat y kecil
Relasi - relasi tersebut diatas adalah contoh relasi dua obyek. Kita bisa membuat relasi
yang dapat menghubungkan lebih dari 2 obyek.
Secara formal, relasi biner atau disingkat relasi R dari himpunan A dan B
menyatakan pasangan berurutan :
© Avid-06
21
Fuzzy logic
(a, b)  A X B
yang menandakan salah satu dari pernyataan berikut :
(i) a berrelasi dengan b
(ii) a tidak berrelasi dengan b
Hasil kali (Cartesian Product) A X B adalah himpunan dari semua kombinasi yang
mungkin dari elemen – elemen A dan B.
Sementara itu Relasi Fuzzy dari himpunan A dan B adalah himpunan bagian fuzzy
dari hasil kali Cartesian Product antara semesta himpunan A dan B yaitu U dan V atau
dinyatakan dengan U X V
Sebagai contoh misalnya keponakan Donald Duck yang bernama Huey
menyerupai Dewey dengan tingkat keanggotaan 0.8. Dan Huey menyerupai Louie dengan
tingkat keanggotaan 0.9. Sehingga kita dapat membuat sebuah relasi antara himpunan
bagian dari keponakan dalam keluarga. Hal ini lebih mudah kalau dinyatakan dalam
bentuk matrik ( terdiri dari 1 baris) yaitu :
Dewey Louie
R1 =
Huey
0.8
0.9
Untuk menunjukkan cara untuk menggabungkan 2 relasi maka kita memisalkan sebuah
relasi lain antara Dewey dan Louie dengan Donald Duck yaitu : Dewey mirip dengan
Donald Duck dengan tingkat keanggotaan 0.5 dan Louie mirip dengan Donald Duck
dengan tingkat keanggotaan 0.6. Jika dinyatakan dalam bentuk matrik maka :
Donald
R2 =
Dewey 0.5
Louie
0.6
Adalah menarik untuk mencoba mencari berapa besar (tingkat keanggotaan) Huey
menyerupai Donald Duck dengan mengkombinasikan informasi – informasi dalam 2
matrik tersebut. :
(i) Huey menyerupai Dewey (0.8), dan Dewey menyerupai Donald (0.5)
atau
(ii)Huey menyerupai Louie (0.9), dan Louie menyerupai Donald (0.6)
© Avid-06
22
Fuzzy logic
Pada pernyataan (i) berisi satu rantai relasi dan sangat masuk akal untuk
mengkombinasikan relasi – relasi tersebut dengan operasi irisan. Berdasarkan definisi,
operasi irisan adalah operasi untuk mencari nilai keanggotaan terlemah (terkecil) sehingga
hasilnya adalah 0.5. Dengan cara yang sama untuk pernyataan (ii) akan didapatkan hasil
yaitu : 0.6. Sehingga dari operasi ini kita mendapatkan hasil berupa :
(iii) Huey menyerupai Donald (0.5)
atau
(iv) Huey menyerupai Donald (0.6)
Pernyataan (iii) dan (iv) keduanya sama – sama tampak valid. Oleh karena itu kita dapat
memakai operasi gabungan pada kedua pernyataan itu ((iii) dan (iv)). Berdasarkan
definisi, operasi gabungan adalah mencari nilai keanggotaan terkuat sehingga hasilnya
adalah :
(v)Huey menyerupai Donald (0.6)
Jadi Aturan umum jika mengkombinasikan (sering disebut komposisi relasi) beberapa
relasi fuzzy adalah mencari nilai minimum dari “hubungan seri” dan nilai maksimum dari
“hubungan paralel”. Hal ini dapat dilakukan dengan mudah lewat perkalian dalam (inner
product).
Perkalian dalam (inner product) adalah sama dengan perkalian titik (dot product)
dalam matrik, dimana operasi perkalian diganti dengan operasi irisan (  ) dan operasi
penjumlahan diganti dengan operasi gabungan (  ). Andaikan R adalah matrik berukuran
m x p dan S matrik berukuran p x n maka hasil kali matrik R dengan S adalah matrik T
yang berukuran m x n. Dimana elemen ke – ij dari matrik T atau tij didapatkan dengan
mengkombinasikan baris ke-i dari matrik R dengan kolom ke-j dari matrik S, sehingga
p
t ij  (ri1  s1 j )  (ri 2  s 2 j )  ...  (rip  s pj )   rik  s kj ..................................(3.4)
k 1
Dari definisi operasi himpunan maka komposisi menurunkan yang disebut dengan
Komposisi max – min (max – min composition)
Jika R adalah relasi dari a ke b dan S adalah relasi dari b ke c, maka komposisi dari
R dan S adalah relasi dari a ke c ( hukum transitif).
Contoh 3.3 (inner product):
Dari tabel relasi R1 dan R2 diatas maka kita bisa menghitung kombinasi relasi R1
dan R2 dengan inner product yaitu :
R1  .  R2 
© Avid-06
0.8
0.9 .  0.5
0.6
=
0.5
0.6
= 0.6
23
Fuzzy logic
Atau kalau diuraikan dengan lebih rinci :
R1  .  R2  (0.8  0.5)  (0.9  0.6)  0.5  0.6  0.6
Dapat dilihat hasilnya sama dengan hasil yang didapatkan dari hasil sebelumnya.
Komposisi max – min bersifat distributif terhadap operasi gabungan (union) :
( R  T )  .  S  ( R  .  S )  (T  .  S )
tapi tidak terhadap operasi irisan (intersection). Operasi min pada komposisi max-min
dapat diganti dengan operasi perkalian (dilambangkan dengan *). Sehingga disebut
dengan Komposisi max – star. Sehingga hasil perhitungan contoh diatas akan menjadi :
R1  .  R2  (0.8 * 0.5)  (0.9 * 0.6)  0.40  0.54  0.54
© Avid-06
24
Fuzzy logic
4 LOGIKA FUZZY
Logika diawali dengan studi tentang bahasa yang dipakai dalam menyatakan
pendapat. Logika juga dapat dipakai untuk menilai kebenaran dari sederetan
pertimbangan atau pemikiran seperti pembuktian sebuah rumus atau teorema dalam
matematika. Di dalam logika dengan dua nilai kebenaran (two-valued logic), sebuah
pernyataan (proposition) bisa bernilai True atau False tapi tidak bisa bernilai keduanya.
Kebenaran dan kesalahan yang diberikan pada sebuah pernyataan dinyatakan dengan nilai
kebenaran (truth – value). Logika yang hanya punya 2 nilai kebenaran ini sering juga
disebut dengan logika tegas (crisp).
Sementara itu dalam logika Fuzzy sebuah pernyataan bisa bernilai benar atau
salah atau bisa bernilai diantara benar dan salah, misalnya “mungkin benar”. Pernyataan
“level adalah tinggi” adalah sebuah contoh pernyataan fuzzy. Rasanya akan lebih baik
untuk membatasi nilai kebenaran yang mungkin dari nilai – nilai logika fuzzy salah,
mungkin benar , dan benar dengan nilai : {0, 0.5, 1}.
4.1 Kata Sambung (connective)
Dalam percakapan sehari – hari (bahasa Inggris) dan matematika, pernyataan atau
kalimat dihubungkan dengan dengan kata seperti : and , or, if – then, dan if and only if.
Kata – kata tersebut disebut dengan kata sambung (connective) . Sementara itu sebuah
pernyataan yang dimodifikasi dengan kata “not” akan menghasilkan negasi (negation)
dari kalimat itu sendiri. Kata “and” dipakai untuk menggabungkan dua pernyataan
sehingga membentuk konjungsi (conjuntion) dari dua kalimat tersebut. Begitu juga
sebuah pernyataan yang dibentuk dengan menggabungkan dua pernyataan dengan kata
“or” akan menghasilkan disjungsi (disjunction) dari dua kalimat tersebut. Dari 2 buah
pernyataan kita dapat membentuk sebuah pernyataan : if ... then ... yang disebut dengan
pernyataan bersyarat (conditional sentence). Pernyataan yang mengikuti if disebut “sebab”
(antecedent) sedangkan pernyataan yang mengikuti then disebut “akibat”. Pernyataan –
pernyataan lain yang mempunyai arti yang sama dengan pernyataan bersyarat “if p then
q” ( dimana p dan q adalah pernyataan) adalah :
-p menyatakan (secara tidak langsung) q
-p hanya jika q
-q jika p
Simbol – simbol yang dipakai untuk menyatakan kata sambung dapat dilihat dalam tabel
(4.1).
© Avid-06
25
Fuzzy logic
K
Kaattaa SSaam
mbbuunngg
SSiim
mbbooll
not


and

or

if – then

if and only if
Tabel 4.1 Simbol kata sambung
Contoh 4.1 (baseball) :
Misalkan dalam sebuah permainan baseball ada suatu kondisi yang dinyatakan
dengan :
“If Pirates atau Cubs kalah and Giants menang then Dodgers akan keluar dari
posisi pertama and kita kalah dalam taruhan”
Pernyataan diatas adalah pernyataan bersyarat, yang dapat dinyatakan dengan r  s.
r  s   r  s .....................................................................................(4.1)
dimana
Pada bagian sebab (antecedent) disusun dari 3 pernyataan yaitu :
- Pirates kalah (p)
-Cubs kalah (c)
-Giants menang (g)
Sedangkan pada bagian akibat (consequent) terdiri dari 2 pernyataan yaitu :
-Dodgers keluar dari posisi pertama (d)
-Kita kalah dalam taruhan (k)
Sehingga pernyataan bersyarat diatas dapat disimbolkan dengan :
((p  c)  g)  (d  k)
Nilai kebenaran yang mungkin dari suatu pernyataan dapat dinyatakan dengan
tabel kebenaran (truth-table). Misalnya sebagai contoh, tabel kebenaran dari pernyataan
dengan 2 nilai kebenaran p  q seperti diperlihatkan dalam tabel (4.2.).
pp
qq
ppq
q
0
0
0
0
1
1
1
0
1
1
1
1
Tabel 4.2 Tabel Kebenaran p
© Avid-06
q
26
Fuzzy logic
Cara lain untuk menyatakan tabel kebenaran adalah dengan menggunakan tabel 2 dimensi
yang disebut tabel Cayley seperti tabel 4.3.
pp  qq

0
1
0
0
1
atau
1
1
1
ditulis
qq
0
0
1
1
qq
pp
1
1
Tabel 4.3 Tabel Kebenaran Cayley
Dalam tabel Cayley, sumbu vertikal menyatakan nilai kemungkinan dari p dan sumbu
horisontal menyatakan nilai kemungkinan dari q. Pertemuan antara baris ke-i dan kolom
ke-j adalah nilai dari pi  qj.
Sangat mungkin untuk mengevaluasi suatu pernyataan logika dengan jalan
mengetes semua kombinasi nilai kebenaran dari variabel. Hasil pengujian tersebut akan
dinyatakan dalam bentuk array.
Contoh 4.2 :
Dalam contoh 4.1 (permainan baseball) kita memiliki pernyataan yang
disimbulkan dengan : ((p  c)  g)  (d  k).
Pernyataan tersebut berisi 5 variabel dan tiap variabel hanya punya 2 nilai kemungikan ( 0
atau 1). Ini menandakan bahwa ada 25 = 32 kombinasi yang mungkin seperti diperlihatkan
dalam tabel (4.4).
© Avid-06
nnoo
pp
cc
gg
dd
kk
nnoo
pp
cc
gg
dd
kk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
27
Fuzzy logic
Tabel 4.4 Kemungkinan Kombinasi nilai variabel pernyataan ((p  c)  g)  (d  k)
Dari 32 kombinasi yang mungkin, maka ada 23 kombinasi yang memenuhi syarat (valid)
atau yang menghasilkan nilai true (1) pada persamaan (4.1)
nnoo
pp
cc
gg
dd
kk
nnoo
pp
cc
gg
dd
kk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
1
1
1
1
1
0
0
0
0
0
0
0
1
1
1
1
0
0
0
0
1
0
0
0
0
0
1
1
0
0
1
1
0
0
1
1
1
0
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
0
1
0
17
18
19
20
21
22
23
1
1
1
1
1
1
1
0
0
1
1
1
1
1
0
1
0
0
0
0
1
1
1
0
0
1
1
1
1
1
0
1
0
1
1
Tabel 4.5 Pernyataan ((p  c)  g)
 (d  k) dengan nilai true (1)
ada 32 – 23 = 9 kombinasi yang tidak valid atau menghasilkan nilai false (0) pada
persamaan (4.1).
nnoo
pp
cc
gg
dd
kk
1
2
3
4
5
6
7
8
9
0
0
0
1
1
1
1
1
1
1
1
1
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
0
0
1
0
0
1
0
0
1
0
1
0
0
1
0
0
1
0
Tabel 4.6 Pernyataan ((p  c)  g)
 (d  k) dengan nilai false (0)
Jika kita hanya berminat untuk melihat pernyataan : “Kita tidak kalah taruhan” atau “kita
menang taruhan” (k = 0) dari pernyataan yang valid (tabel 4.5) maka akan didapatkan
pernyataan seperti tercantum dalam tabel 4.7 :
© Avid-06
28
Fuzzy logic
nnoo
pp
cc
gg
dd
kk
1
2
3
4
5
6
7
8
9
10
0
0
0
0
0
0
1
1
1
1
0
0
0
0
1
1
0
1
1
1
0
0
1
1
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
Tabel 4.7 Pernyataan ((p  c)  g)
 (d  k) dengan nilai true (1) dan k = 0
Jadi dari tabel (4.7) dapat dilihat bahwa ada 10 pernyataan yang memenuhi syarat pada
pernyataan : “kita menang taruhan” (k = 0) diantara 32 kemungkinan yang ada.
Kita bisa membuat tabel kebenaran yang sama dalam logika fuzzy. Misalnya kita
mulai dengan mendefinisikan negasi (negation) dan disjungsi, maka kita dapat
menurunkan tabel kebenaran yang lainnya. Jika negasi dinyatakan dengan komplemen
maka ini berarti :
not p  1 - p
dan jika disjungsi dinyatakan dengan gabungan (union) maka :
p  q  max (p,q)
selanjutnya kita juga dapat menurunkan tabel kebenaran untuk : or, nor, and, dan nand.
or
nor
p q
 (p  q)
0
0.5
1
1
0.5
0
0.5
0.5
1
0.5
0.5
0
1
0.5
1
0
0
0
nand
and
(  p)  (  q)
 ((  p)  (  q))
1
1
1
0
0
0
1
0.5
1
0
0.5
0.5
1
0.5
0
0
0.5
1
Tabel 4.8 Tabel Kebenaran logika
© Avid-06
fuzzy
29
Fuzzy logic
Dalam tabel (4.8) dapat dilihat tabel kebenaran dalam logika fuzzy dengan 3 nilai
kebenaran {0, 0.5, 1}. Dua tabel sebelah kanan menyatakan negasi dari 2 tabel sebelah
kiri, dan 2 tabel sebelah bawah merupakan pencerminan dari 2 tabel sebelah atas.
Operator implikasi selalu bermasalah dengan teorema fuzzy. Jika kita
mendefinisikan implikasi dengan persamaan yang biasa dipakai (persamaan 4.1) :
r s  r  s
maka kita akan mendapatkan tabel kebenaran yang bertentangan dengan logika sebab
beberapa hukum logika gagal atau tidak terpenuhi.
Banyak peneliti telah mencoba mengemukakan definisi lain tentang implikasi
seperti : Kiszka, Konchanska, dan Sliwinska (1985). Hasilnya adalah 72 buah definisi
implikasi. 3 contoh dari definisi implikasi tersebut adalah :
-Simplification :

q
p
(p

q)
q
...........................................................................(4.2)
-Modus ponens :
p  q  [p  (p  q)]  q ...................................................................(4.3)
-Hypothetical syllogism :
p  q  [(p  q)  (q  r)]  (p  r) .................................................(4.4)
Sementara itu ada juga implikasi yang dinyatakan oleh Gödel yaitu:
-Gödel :
p  q  (p  q)  q ...........................................................................(4.5)
atau
1
pq
0
jika p  q
........................................................................(4.6)
jika p  q
Contoh tabel kebenaran dari implikasi Gödel adalah seperti ditunjukkan dalam tabel (4.9).
Implikasi Godel
(p  q)  q
1
1
1
0
1
1
0
0.5
1
Tabel 4.9 Tabel kebenaran Implikasi
Gödel
Atau jika dinyatakan dalam bentuk larik (array) maka implikasi Gödel akan menjadi
bentuk seperti yang ditunjukkan dalam tabel (4.10).
© Avid-06
30
Fuzzy logic
pp
qq
((pp  qq))
((pp  qq)) 
 qq
0
0
0
0.5
0.5
0.5
1
1
1
0
0.5
1
0
0.5
1
0
0.5
1
1
1
1
0
1
1
0
0
1
1
1
1
0
1
1
0
0.5
1
Tabel 4.10 Tabel kebenaran Implikasi Gödel dalam array
Dari tabel 4.10 terlihat bahwa ada 6 kombinasi yang terpenuhi ( menghasilkan nilai
implikasi 1) dan ada 3 kombinasi tidak terpenuhi (menghasilkan nilai tidak 1 (0 atau 0.5)).
Ekivalensi (equivalence) dapat ditentukan dari implikasi dan konjungsi. Ekivalensi
dinyatakan dengan simbol  . Jadi jika p ekivalen dengan q maka dapat dinyatakan
dengan :
p  q  (p  q)  (q  p) .............................................................................(4.6)
Tabel (4.11) berikut ini adalah tabel kebenaran dari ekivalensi p dan q dimana
implikasinya dinyatakan dengan implikasi Gödel.
Implikasi Gödel
Implikasi Gödel
(p  q)
(q  p)
(p  q)  q
(q  p)  p
Ekivalensi
(p  q)  (q  p)
1
1
1
1
0
0
1
0
0
0
1
1
1
1
0.5
0
1
0.5
0
0.5
1
1
1
1
0
0.5
1
Tabel 4.11 Tabel Kebenaran Ekivalensi
Perlu diperhatikan dalam tabel (4.11), sumbu vertikal menyatakan p sedangkan sumbu
horisontal menyatakan q. Dimana p dan q mempunyai 3 nilai kebenaran yaitu : {0, 0.5,
1}. Logika fuzzy yang dinyatakan dengan array dapat dipakai untuk membuktikan sebuah
teorema atau definisi tentang implikasi. Berikut ini adalah contoh pembuktian implikasi
modus ponens.
Contoh 4.3 :
© Avid-06
31
Fuzzy logic
Untuk membuktikan teorema implikasi Modus Ponens adalah dengan jalan
pengujian dari semua kombinasi nilai kebenaran dari variabel – variabel dalam logika
fuzzy. Implikasi Modus Ponens dinyatakan dengan :
p  q  [p  (p  q)]
q
Pernyataan tersebut terdiri dari dua variabel. Dan jika kita menganggap bahwa tiap
variabel mempunyai 3 nilai kebenaran maka ada 32 = 9 kombinasi yang mungkin. Semua
kemungkinan yang ada tersebut ditampilkan dalam array logika seperti tabel (4.12)
pp
qq
pp  qq
[[pp  ((pp qq))]]
0
0
0
0.5
0.5
0.5
1
1
1
0
0.5
1
0
0.5
1
0
0.5
1
1
1
1
0
1
1
0
0.5
1
0
0
0
0
0.5
0.5
0
0.5
1
[[pp  ((pp qq))]]
q
q
1
1
1
1
1
1
1
1
1
Tabel 4.12 Tabel kebenaran Implikasi Modus Ponens
Karena kolom yang paling kanan semuanya bernilai 1 maka implikasi Modus Ponens
adalah valid atau terpenuhi dalam logika fuzzy. Cakupan validitas dari implikasi Modus
Ponens terbatas pada domain nilai kebenaran (0, 0.5, 1). Domain nilai kebenaran ini dapat
diperluas sehingga akibatnya pengujian yang dilakukan juga semakin bertambah.
Contoh 4.4 :
Dalam contoh ini kita akan memodifikasi kasus baseball (contoh 4.1). Jika dalam
contoh 4.1 setiap variabel hanya punya 2 nilai kebenaran (0,1) maka di sini
kita
mengubah bahwa setiap variabel punya 3 nilai kebenaran (0, 0.5, 1). Oleh karena
pernyataan dalam contoh 4.1 berisi 5 variabel (p, c, g, d, k) dan setiap variabel memiliki 3
nilai kebenaran maka ada 35 = 248 kombinasi yang mungkin. Dari 248 kemungkinan
hanya 148 yang valid atau menghasilkan nilai kebenaran 1. Dan ada kasus lain dimana
ada kemungkinan 0.5 untuk memenangkan taruhan yang bergantung pada menang dan
kalahnya Dodger, Pirate,dll. Jika kita hanya mementingkan pada kemungkinan : “Kita
menang taruhan” ( k  0, 0.5) maka ada 88 kombinasi yang mungkin. Daripada kita
menyebutkan semua kemungkinan maka kita hanya menunjukkan salah satu saja sebagai
ilustrasi yaitu :
(p,c,g,d,k) = [0 0.5 0.5 1 0.5]
© Avid-06
32
Fuzzy logic
Contoh tersebut menunjukkan logika fuzzy menghasilkan lebih banyak solusi dan hal ini
membutuhkan lebih banyak perhitungan dibandingkan dengan memakai logika tegas
(crisp). Inilah harga yang harus dibayar bagi pemakaian logika fuzzy yang memiliki nilai
kebenaran “antara” (intermediate) yang menyatakan ketidakpastian (uncertainty).
4.2 Implikasi
Aturan if level rendah then buka v1 disebut dengan implikasi, sebab nilai level
menentukan nilai dari v1 dalam kontroler. Dalam pengontrol fuzzy biasanya tidak
menggunakan implikasi Godel (persamaan (4.5)). Dalam pengontrol fuzzy biasanya
sering digunakan implikasi Mamdani (1977) yang didefinisikan dengan :
p  q  p .min q.......................................................... .....................(4.7)
dimana simbol : .min menyatakan outer product, dengan memakai min untuk tiap
elemen hasil kali (cartesian product) dari p dan q. Jika p adalah vektor kolom dan q adalah
vektor baris maka outer product dari p dan q adalah :
.min
b1
b2
...
bm
p1
p1 
p1  q2
...
p1  qm
...
...1
q
...
...
...
pn
pn 
pn  q2
...
pn  qm
q1
atau
.min
b1
b2
...
bm
p1
min(p1,q1)
min(p1,q2)
...
min(p1,qm)
...
...
...
...
...
pn
min(pn,q1)
min(pn,q2)
...
min(pn,qm)
Tabel 4.13 Outer product : .min
Contoh 4.5 :
Untuk implikasi if level rendah then buka v1 , dimana rendah dan buka
didefinisikan dengan :
rendah = (1, 0.75, 0.5, 0.25, 0)
buka
= (0, 0.5, 1)
Maka implikasi dapat ditentukan dengan outer product :
© Avid-06
.min
0
0.5
1
1
0
0.5
1
0.75
0
0.5
0.75
v1
33
Fuzzy logic
0.5
0.25
0
level
0
0.5
0.5
0
0.25
0.25
0
0
0
Tabel 4.13 Outer product : rendah – buka
Ini adalah cara yang sangat penting dalam membuat tabel implikasi dari sebuah aturan
(rule).
Outer product yang dikemukakan oleh Mamdani (1977) adalah menggunakan
operator min untuk operasi perkalian cartesian product. Operator min ini dapat diganti
dengan operator * pada operasi perkalian tersebut (Holmblad dan Ostergaard). Hal ini
merupakan landasan dasar bagi kebanyakan pengontrol fuzzy.
4.3 Kesimpulan (inference)
Untuk menggambarkan proses pengambilan kesimpulan dari sekumpulan aturan
(rule base) maka kita memerlukan suatu cara untuk menghasilkan sebuah output dari
sekumpulan aturan if – then. Proses pengambilan kesimpulan dilakukan dengan
melakukan komposisi aturan pengambilan kesimpulan (Compositional Rule Of Inference
(CROI)). Untuk memahami konsep pengambilan kesimpulan maka kita dapat
membayangkan sebuah fungsi y = f(x), dimana f adalah sebuah fungsi tertentu, x adalah
variabel bebas, dan y adalah hasil fungsi. Jika x = x 0 maka y bernilai f(x0) seperti
diperlihatkan dalam gambar (4.1).
y
y=f(x)
y=f(x0)
x = x0
x
Gambar 4.1 Pengambilan kesimpulan dalam logika tegas (crisp)
Jadi dapat dibuat pernyataan :
Alasan (premise)
y = f(x)
Fakta
x = x0
Akibat
y = f(x0)
Di dalam logika fuzzy, alasan (premise) dinyatakan dengan implikasi atau rule R yaitu :
R:
If x = x1 then y = y1
Fakta : x = x0
© Avid-06
(Aturan)
(Input)
34
Fuzzy logic
Akibat :
y = y0
(Kesimpulan)
Jadi masalahnya adalah bagaimana kita menentukan akibat (y) jika kita mempunyai fakta
(x) yang diberikan pada sebuah aturan atau rule (R). Atau bagaimana kita mengambil
kesimpulan y jika sebuah aturan R diberi input atau fakta x.
Aturan pengambilan kesimpulan yang terkenal adalah Modus Ponens :
p  (p  q)  q ......................................................................................(4.8)
atau dapat dinyatakan : jika diketahui sebuah pernyataan p  q bernilai true dan juga
diketahui suatu pernyataan p bernilai true maka kita dapat menyimpulkan bahwa
pernyataan q juga bernilai true. Di dalam logika fuzzy hal ini dinyatakan secara umum
dengan : Generalized Modus Ponens (GMP) yaitu :
p’
(p  q)

q
’.....................................................................................(4.9)
dimana nilai p’ dan q’ sedikit agak berbeda dengan p dan q. Persamaan (4.9) dapat
dinyatakan dengan :
: if p then q atau p  q
R
Fakta : p’
q’
Akibat :
Akibat atau kesimpulan q’ ditentukan dengan :
q’ = p’ . R = max min (p’,R) .....................................................................(4.10)
contoh 4.6 :
Dari contoh (4.5), kita mempunyai rule R : if level rendah then buka v1. Andaikan
kita punya input atau fakta level yaitu :
level = (0.75, 1, 0.75, 0.5, 0.25)
Maka kesimpulan v1 menjadi :
v1 = level . R
= max min(level,R)
R
level
=
=
© Avid-06
0.75
0
1
0.5
0.75
0.5
0.25
.
0
0.5
1
0
0.5
0.75
0
0.5
0.5
0
0.25
0.25
0
0
0
0.75
35
Fuzzy logic
Input atau fakta level adalah himpunan fuzzy yang menyatakan suatu level yang sedikit
lebih tinggi dari rendah (1, 0.75, 0.5, 0.25,0). Hasil atau kesimpulannya adalah v1 yang
nilainya sedikit lebih kecil dari buka (0, 0.5, 1). Jika kita mencoba input atau fakta level =
rendah (1, 0.75, 0.5, 0.25, 0) maka kita akan mendapatkan v1 yang sama dengan buka (0,
0.5, 1) setelah dikomposisikan dengan rule R.
4.4 Basis Aturan Fuzzy (Fuzzy Rule Base)
Jika sebelumnya kita membahas tentang pengambilan kesimpulan hanya terhadap
satu aturan maka dalam basis aturan kita mengambil kesimpulan dari sekumpulan aturan
(rule base). Basis aturan biasanya terdiri dari beberapa aturan (R1...Rn).
R1 :
If x = x1 then y = y1
R2 :
If x = x2 then y = y2
...
Rn :
(Basis aturan)
...
If x = xn then y = yn
Fakta : x = x0
(Input)
Akibat :
y = y0
(Kesimpulan)
Masalahnya adalah bagaimana kita mengambil kesimpulan y jika basis aturan (R 1...Rn)
diberikan input atau fakta x. Dalam hal ini kita menganggap antara satu aturan dengan
aturan lainnya dihubungkan oleh kata sambung “atau” atau logika “or”.
R1 :
If x = x1 then y = y1
or
R2 :
If x = x2 then y = y2
or
...
...
or
Rn :
If x = xn then y = yn
Sehinggga hubungan diantara aturan – aturan tersebut dinyatakan dengan aturan total R :
R = R1  R2  ...  Rn
Atau secara umum dinyatakan :
R = Ri = max (Ri) ..........................................................................................(4.11)
dimana i = 1, 2,...n
Selanjutnya kesimpulan diambil dari aturan total R tersebut.
Contoh 4.7 :
Andaikan kita punya 2 aturan R1 dan R2 yaitu :
© Avid-06
36
Fuzzy logic
R1 : if level rendah then buka v1
R2 : if level tinggi then tutup v1
Jika kita punya fakta atau input : level = (0.75, 1, 0.75, 0.5, 0.25) berapakah kesimpulan
v1. Dimana didefinisikan himpunan fuzzy :
rendah = (1, 0.75, 0.5, 0.25, 0)
tinggi = (0, 0.25, 0.5, 0.75, 1)
buka
= (0, 0.5, 1)
tutup = (1, 0.5, 0)
Dari contoh 4.5 didapatkan R1 : if level rendah then buka v1 adalah :
R1
0
0.5
1
0
0.5
0.75
0
0.5
0.5
0
0.25
0.25
0
0
0
Sedangkan R2 : if level tinggi then tutup v1 ditentukan dengan :
.min
1
0.5
0
0
0
0
0
0.25
0.25
0
0.5
0.5
0
0.75
0.5
0
1
0.5
0
0.25
0.5
0.75
1
level
Sehingga aturan total R :
v1
R = R1  R2 = max (R1, R2)
R1
=
=
© Avid-06
R2
0
0.5
1
0
0
0
0
0.5
0.75
0.25
0.25
0
0
0.5
0.5
0.5
0.5
0
0
0.25
0.25
0.75
0.5
0
0
0
0
1
0.5
0
0
0.5
1
0.25
0.5
0.75
0.5
0.5
0.5
0.75
0.5
0.25
1
0.5
0

37
Fuzzy logic
Sehingga kesimpulan v1 dapat ditentukan dari aturan total R ini :
v1 = level . R = max min(level,R)
R
level
=
0.75
1
0.75
max (0,0.25,0.5,0.5,0.25)
=
© Avid-06
0.5
0.5
0.5
0.25
.
max (0.5,0.5,0.5,0.5,0.25)
0
0.5
1
0.25
0.5
0.75
0.5
0.5
0.5
0.75
0.5
0.25
1
0.5
0
max (0.75,0.75,0.5,0.25,0)
0.75
38
Fuzzy logic
5 SISTEM KONTROL FUZZY LOGIC
Sistem kontrol fuzzy logic adalah sistem kontrol yang berdasarkan fuzzy logic.
Input dari sistem ini adalah berupa variabel logika yang bernilai kontinu antara : [0,1].
Berbeda dengan logika klasik atau logika digital yang hanya mempunyai nilai 0 atau 1
(True atau False).
Logika fuzzy banyak digunakan dalam mesin kontrol. Fuzzy logic memiliki
kelebihan dimana solusi dari suatu masalah dapat dinyatakan dengan istilah atau
pernyataan yang dapat dimengerti oleh operator manusia, sehingga pengalamannya dapat
dipakai dalam perancangan sistem kontrol. Hal ini lebih memudahkan untuk memekanisasi-kan pekerjaan yang telah berhasil dilakukan oleh manusia. Berikut ini akan
diberikan beberapa contoh tentang sistem kontrol yang menggunakan fuzzy logic.
Sebagai contoh pertama adalah sistem kontrol untuk sistem pengereman (braking
sistem). Sistem ini digerakkan oleh sebuah chip mikrokontroler. Mikrokontroler bekerja
berdasarkan temperatur rem, kecepatan, dan variabel-variabel lain dalam sistem. Variabel
”temperatur” dalam sistem dapat dibagi dalam beberapa bagian keadaan : “cold”, “cool”,
“moderate”, “warm”, “hot”. Dimana transisi dari suatu keadaan ke keadaan lainnya sulit
untuk didefinisikan. Suatu nilai pembatas (threshold) dapat dibuat untuk membedakan
”warm” dengan “hot”. Seperti pada saat temperatur tepat 900 maka “warm” berakhir dan
“hot” mulai. Hal ini akan menghasilkan perubahan tidak kontinu jika nilai input melebihi
nilai pembatas (threshold). Transisi tidak akan berlangsung secara halus seperti yang
diperlukan dalam sistem kontrol pada rem. Cara untuk mengatasi masalah ini adalah
dengan pernyataan fuzzy. Yaitu membiarkan sistem untuk berubah secara bertahap dari
satu keadaan menuju keadaan lainnya. Untuk melakukan hal ini harus ada hubungan yanq
dinamis antara faktor-faktor dalam sistem.
Temperatur yang merupakan variabel input dari sistem dinyatakan dengan fungsi
keanggotaan (membership functions) yaitu :
Gambar 5.1 Himpunan keanggotaan variabel input : Temperatur
© Avid-06
39
Fuzzy logic
Dari gambar 5.1 dapat dilihat bahwa variabel-variabel input tidak ada yang berubah
secara tiba-tiba dari satu keadaan ke keadaan lainnya. Jika terjadi perubahan temperatur
maka suatu variabel nilainya berkurang pada satu fungsi keanggotaan tetapi bertambah
pada fungsi yang lainnya. Misalnya pada temperatur tertentu nilai keanggotaan pada
variabel “cold” berkurang sedangkan pada variabel ”cool” akan bertambah. Jadi nilai
kebenaran dari temperatur rem hampir akan selalu berada dalam tingkat keanggotaan dari
dua fungsi keanggotaan. Misalnya : 0.6 nominal dan 0.4 warm, atau 0.7 nominal dan 0.3
cool, dan seterusnya. Contoh diatas memperlihatkan aplikasi sederhana dengan
menggunakan abstraksi nilai dari data temperatur. Kita bisa menambahkan tingkat
kemampuan dari sistem Pengereman dengan jalan menambahkan faktor-faktor atau
variabel lainnya seperti : speed, inersia, daya tarik yang disusun dalam fungsi dinamik
berdasarkan rancangan sistem fuzzy.
5.1 Fuzzifikasi
Variabel – variabel input dalam sistem kontrol fuzzy umumnya dipetakan ke
dalam himpunan fuzzy. Proses untuk mengkonversikan nilai input tegas (crisp) menjadi
nilai fuzzy disebut dengan fuzzifikasi. Sebuah sistem kontrol fuzzy juga memiliki
beberapa tipe switch atau ON – OFF, input yang menyatakan nilai input analog dan input
switch tersebut selalu memiliki nilai kebenaran 1 atau 0. Skema yang cocok dengan hal
tersebut adalah fungsi fuzzy sederhana yang dapat memiliki suatu nilai atau nilai yang
lainnya. Pemetaan variabel-variabel input ke dalam fungsi keanggotaan dan nilai
kebenaran, kemudian mikrokontroler membuat keputusan untuk mengambil tindakan
berdasarkan sekumpulan aturan (rule base). Dimana masing-masing aturan mempunyai
bentuk :
IF temperatur rem ”warm” AND speed “not very fast”
THEN tekanan rem berkurang sedikit
Dalam contoh tersebut dua variabel input adalah “temperatur” dan “speed” dimana
nilainya didefinisikan sebagai himpunan fuzzy. Sedangkan variabel output adalah
“tekanan” juga didefinisikan dengan himpunan fuzzy yang nilainya misalnya adalah :
-tidak berubah (static)
-sedikit bertambah (slightly increased)
-sedikit berkurang (slightly decreased)
Dari satu rule tersebut tampaknya sangat samar karena seolah-olah hanya satu rule itu saja
dapat dipakai tanpa menghiraukan logika fuzzy, tapi perlu diingat bahwa dalam
pengambilan keputusan berdasarkan pada sekumpulan aturan :
© Avid-06
40
Fuzzy logic
- semua rule yang dipakai diperlukan untuk menentukan hasil dari rule. Dengan
menggunakan fungsi keanggotaan dan nilai kebenaran dari input
- hasil tersebut akan dipetakan ke dalam fungsi keanggotaan dan nilai kebenaran
pengontrol variabel output
- hasil-hasil tersebut semuanya akan digabungkan untuk menentukan nilai (jawaban)
tegas (crisp). Nilai ini merupakan tekanan rem aktual. Proses untuk menentukan nilai
tegas ini disebut : defuzzifikasi.
Penggabungan dari operasi fuzzy dan Pengambilan keputusan yang berdasarkan aturan
disebut dengan Sistem Pakar Fuzzy.
Sistem kontrol tradisional berdasarkan pada model matematika, dimana sistem
kontrol dinyatakan dengan satu atau lebih persamaan diferensial yang mendifinisikan
respon sistem terhadap input yang diberikan. Sistem seperti ini sering diimplementasikan
dengan pengendali PID (proportional – integral – derivative). Sistem tersebut merupakan
hasil selama bertahun – tahun dari analisis teori dan pengembangan. Dan biasanya sistem
ini sangat efektif.
Lebih jauh logika fuzzy sangat cocok untuk implementasi murah dengan
menggunakan sensor murah, dan converter analog to digital resolusi rendah, dan chip
mikrokontroler 4 bit atau 8 bit yang murah. Dalam banyak kasus sistem kontrol fuzzy
dapat dipakai untuk memperbaiki sistem kontrol tradisional yang sudah ada dengan
menambahkan kecerdasan pada metode pengaturan arus.
Konsep sistem kontrol fuzzy sangat sederhana. Sistem ini terdiri dari bagian input,
bagian proses dan bagian output. Bagian input bertugas untuk memetakan sensor atau atau
alat input lainnya menuju fungsi keanggotaan dan nilai kebenaran yang tepat. Bagian
proses mengarahkan masing – masing aturan yang tepat dan menghasilkan hasil untuk
tiap – tiap aturan, kemudian menggabungkan hasil dari tiap – tiap aturan. Akhirnya,
bagian output mengkonversi hasilnya ke dalam nilai output kontrol tertentu.
Bentuk fungsi keanggotaan yang biasanya dipakai adalah bentuk segitiga,
meskipun bentuk trapesium dan bell juga digunakan. Umumnya bentuk kurva kurang
penting dibandingkan dengan jumlah kurva dan penempatannya dalam suatu fungsi
keanggotaan. Biasanya dipakai antara 3 sampai 5 kurva untuk mencakup range nilai input
yang diperlukan atau semesta pembicaraan (universe of discourse).
Seperti sudah disebutkan sebelumnya bahwa bagian proses didasarkan pada
sekumpulan aturan logika dalam bentuk pernyataan : IF – THEN. Dimana bagian IF
disebut dengan alasan (antecedent) dan bagian THEN disebut dengan akibat
© Avid-06
41
Fuzzy logic
(consequenct). Suatu sistem kontrol fuzzy dapat memiliki puluhan aturan. Andaikan
sebuah aturan pada alat pengatur panas (thermostat) :
IF temperatur ”sangat dingin” THEN heater “tinggi”
Pada aturan tersebut menggunakan nilai kebenaran input “temperatur” yang mana
beberapa nilai kebenaran dari ”sangat dingin”, untuk menghasilkan himpunan fuzzy bagi
output ”heater” yang mana beberapa nilai dari “tinggi”. Hasil dari aturan ini digabungkan
dengan aturan – aturan lainnya digunakan untuk menghasilkan output gabungan tegas
(crisp). Tepatnya, semakin besar nilai kebenaran “sangat dingin” maka semakin besar
juga nila kebenaran dari “tinggi”. Walaupun ini bukan berarti bahwa output itu sendiri
akan berupa himpunan “tinggi” karena ini hanyalah sebuah aturan diantara sekian banyak
aturan. Dalam beberapa hal fungsi keanggotaan dapat dimodifikasi dengan pemodifikasi
(modifier) yang berupa kata sifat seperti : sangat, agak, hampir, terlalu, sedikit dan lain –
lain.
Dalam kenyataannya, himpunan aturan fuzzy biasanya memiliki beberapa alasan
(antecedent) yang digabungkan dengan operator fuzzy seperti : AND, OR, dan NOT.
Definisi dari operator fuzzy cenderung bervariasi, salah satu yang populer seperti operator
AND biasanya menggunakan nilai minimum dari semua alasan, sementara operator OR
menggunakan nilai maksimum. Sedangkan operator NOT merupakan pengurangan suatu
fungsi keanggotaan dari 1 untuk menghasilkan fungsi komplemen.
Ada beberapa cara untuk mendefinisikan hasil dari sebuah aturan, tetapi yang
paling sederhana dan biasa dipakai adalah metode pengambilan keputusan ”Max – Min”,
dimana fungsi keanggotaan output yang diberikan oleh nilai kebenaran yang dihasilkan
oleh alasan – alasan (premise).
Aturan-aturan dapat diselesaikan secara paralel dalam hardware atau secara
sekuensial dalam software. Hasil dari semua aturan yang diaktivasi kemudian didefuzzifikasi menjadi nilai tegas (crisp) dengan menggunakan suatu metode. Ada banyak
metode yang dapat dipakai untuk melakukan proses defuzzifikasi. Metode yang paling
populer adalah metode Center of Mass (COM) atau Center of Gravity (COG).
Disamping itu ada juga metode Tinggi (height) yaitu mencari nilai tertinggi. Metode COG
akan cenderung memilih aturan dengan output luasan terbesar, sedangkan metode Tinggi
akan cenderung memilih aturan dengan nilai output terbesar. Gambar 5.2 berikut ini
memperlihatkan pengambilan keputusan Max-Min dan defuzzifikasi COG pada sebuah
sistem dengan variabel input ”x”, ”y”, dan ”z”, dan variabel output ”n”. Dimana (x),
© Avid-06
42
Fuzzy logic
(y), (z), dan (n) adalah nilai kebenaran atau tingkat keanggotaan variabel – variabel x,
y, z, dan n pada masing – masing himpunan fuzzy (A,B,C, D,E,F).
 (x)
 (y)
 (z)
Gambar 5.2 Pengambilan Keputusan Max – Min dan Defuzzifikasi COG
Perlu diperhatikan bagaimana masing-masing aturan menghasilkan nilai kebenaran atau
tingkat keanggotaan bagi variabel output. Dalam defuzzifikasi dengan metode COG, nilainilai ini didapatkan dengan jalan melakukan operasi OR atau mengambil nilai maksimum
dari variabel output yang dihasilkan masing-masing aturan. Kemudian dilanjutkan dengan
proses perhitungan dengan metode COG.
Perancangan sistem kontrol fuzzy dilakukan berdasarkan metode empiris
(percobaan), yaitu dengan metode coba – coba (trial and error). Langkah – langkah umum
dari proses perancangan ini adalah :
-mencatat spesifikasi operasi sistem, serta input dan output sistem
-menentukan himpunan fuzzy untuk input dan output
-menentukan aturan – aturan (rule set)
-menentukan metode defuzzifikasi
-melakukan tes untuk validasi sistem, serta lakukan pengaturan atau perubahan pada detil
sistem bila diperlukan
-sistem siap untuk diaplikasikan dan diproduksi
Sebagai contoh andaikan sebuah sistem fuzzy kontrol yang diterapkan pada turbin
uap (steam turbine). Diagram blok dari sistem kontrol ini diperlihatkan dalam gambar 5.3.
© Avid-06
43
Fuzzy logic
Gambar 5.3 Sistem Kontrol Fuzzy pada Turbin Uap
Dimana variabel input dan output dinyatakan dengan himpunan fuzzy berikut ini :
Keterangan :
N3 : Large Negatif
N2 : Medium Negatif
N1 : Small Negatif
Z : Zero
P1 : Small Positif
P2 : Medium Positif
P3 : Large Positif
Gambar 5.4 Himpunan fuzzy variabel input (temperatur,tekanan)dan output (katup seting)
Beberapa aturan yang dipakai dalam sistem kontrol ini adalah :
Rule 1 : IF temperatur cool AND tekanan weak THEN katup P3
Rule 2 : IF temperatur cool AND tekanan low THEN katup P2
Rule 3 : IF temperatur cool AND tekanan ok THEN katup z
© Avid-06
44
Fuzzy logic
Rule 4 : IF temperatur cool AND tekanan strong THEN katup N2
Dalam prakteknya sistem kontrol akan menerima input dan memetakan input tersebut ke
dalam tingkat keanggotaan dan fungsi keanggotaan masing – masing input. Hasil
pemetaan ini selanjutnya akan dimasukkan ke dalam aturan – aturan yang berlaku dalam
sistem. Jika aturan menyatakan relasi AND untuk kedua variabel input maka tingkat
keanggotaan gabungan dinyatakan dengan mengambil nilai minimum dari kedua input
tersebut. Demikian juga jika dalam aturan menyatakan relasi OR maka tingkat
keanggotaan gabungan dari input didapat dengan mengambil nilai maksimum dari kedua
variabel input itu. Nilai variabel output dipilih dan diberi nilai berupa tingkat keanggotaan
gabungan variabel input. Hasil atau output dari masing – masing aturan kemudian
digabungkan dengan operasi penggabungan (Max) yaitu dengan mencari nilai maksimum.
Hasil operasi penggabungan ini kemudian akan di defuzzifikasi. Sebagai contoh misalkan
saja temperatur dalam keadaan “cool” dan tekanan dalam keadaan “low” dan “ok”. Nilai
tekanan akan menjamin bahwa hanya rule 2 dan rule 3 yang akan diaktifkan (fired) :
Gambar 5.5 Hasil aktivasi dari rule 2
Gambar 5.6 Hasil aktivasi dari rule 3
© Avid-06
45
Fuzzy logic
Jika output dari rule 2 dan rule 3 digabungkan dengan operasi OR (maximum) maka
didapatkan hasil seperti gambar 5.7 :
Gambar 5.7 Penggabungan (OR) dari output rule 2 dan rule 3
Hasil penggabungan dari output rule 2 dan rule 3 ini kemudian akan di-defuzzifikasi
dengan metode COG. Hasil defuzzifikasi inilah yang akan mengatur katup / klep. Setelah
itu siklus kontrol akan kembali berulang untuk menghasilkan nilai variabel input dan
output selanjutnya.
5.2 Membangun Sistem Kontrol Fuzzy
Andaikan kita akan membangun sistem kontrol fuzzy dengan chip mikrokontroler
dan gambaran dari sistem kontrol tersebut seperti diagram di bawah ini :
Gambar 5.8 Diagram Sistem Kontrol fuzzy
Ada 2 variabel input yaitu : error “e” dan perubahan error “delta”. Himpunan fuzzy untuk
variabel input dan output didefinisikan sebagai berikut :
LP : large positif
SP : small positif
ZE : zero
SN : small negatif
LN : large negatif
Jika variabel error memiliki range nilai -1 sampai +1, maka dengan menggunakan Analog
to Digital Converter (ADC) yang memiliki resolusi 0.25, maka himpunan fuzzy dari
variabel input ( juga variabel output) dapat dinyatakan seperti tabel 5.1 berikut ini.
Dimana nilai error, delta, maupun output berada pada baris atas dan tingkat keanggotaan
untuk tiap-tiap fungsi keanggotaan disusun pada baris di bawahnya :
© Avid-06
46
Fuzzy logic
Tabel 5.1 Himpunan fuzzy dari variabel input (error, delta) dan output
atau kalau dinyatakan dengan grafik maka akan tampak seperti gambar 5.9. (dimana
setiap ”x” bernilai 0.1).
Gambar 5.9 Grafik Himpunan fuzzy dari variabel input (error, delta) dan output
Misalkan sistem fuzzy ini memiliki aturan – aturan (rule) :
Rule 1 : IF e = ZE AND delta = ZE THEN output = ZE
Rule 2 : IF e = ZE AND delta = SP THEN output = SN
Rule 3 : IF e = SN AND delta = SN THEN output = LP
Rule 4 : IF e = LP OR delta = LP THEN output = LN
© Avid-06
47
Fuzzy logic
Aturan – aturan biasanya sangat khas bagi aplikasi pengaturan atau kontrol dimana pada
bagian ”alasan” (antecedent) yang terdiri dari sinyal error(e) dan delta, sementara pada
bagian ”akibat” (consequent) merupakan perintah/pengaturan output. Output dari aturan
dapat di- defuzzifikasi dengan metode misalnya : COG.
Andaikan pada waktu tertentu input sistem adalah :
e
= 0.25
delta
= 0.5
maka tingkat keanggotaan dari variabel input tersebut adalah :





Jika nilai – nilai ini dimasukkan dalam rule 1 maka akan menghasilkan :
Rule 1 : IF e = ZE AND delta = ZE THEN output = ZE
(1) = min (0.7,0.3) = 0.3
Output(1) = 0 ( nilai ini diperoleh dari metode “Tinggi” , nilai keanggotaan tertinggi dalam
himpunan fuzzy ZE)
Hasil dari rule – rule yang lainnya adalah :
Rule 2 : IF e = ZE AND delta = SP THEN output = SN
(2) = min (0.7,1) = 0.7
Output(2) = -0.5 ( nilai ini diperoleh dari metode “Tinggi” , nilai keanggotaan tertinggi
dalam himpunan fuzzy SN)
Rule 3 : IF e = SN AND delta = SN THEN output = LP
(3) = min (0.0, 0.0) = 0
Output(3) = 1.0
Rule 4 : IF e = LP OR delta = LP THEN output = LN
(4) = max (0.0, 0.3) = 0.3
Output(4) = -1.0
Selanjutnya dilanjutkan dengan proses defuzzifikasi dengan metode COG maka akan
menghasilkan :
COG 
© Avid-06
 (1).output (1)   (2).output (2)   (3).output (3)   (4).output (4)
 (1)   (2)   (3)   (4)
48
Fuzzy logic

(0.3 * 0)  (0.7 * 0.5)  (0 *1)  (0.3 * 1)
0.3  0.7  0  0.3
 0.5
Jadi didapatkan nilai akhir output adalah -0.5.
Selanjutnya jika dimisalkan set point pada sistem bernilai 0.25 maka nilai output
yang dihasilkan sistem (-0.5) akan dibandingkan dengan nilai set point ini. Selisihnya
adalah merupakan nilai error (e) yaitu :
e
= output - set point
= -0.5 - 0.25 = -0.75
Sedangkan nilai delta dapat ditentukan dengan :
delta
= -0.75 - 0.25 = -1.00
(selisih antara 2 error yang berturutan)
Tingkat keanggotaan dari variabel input tersebut adalah :
e
delta
 (LP)
0
0
 (SP)
0
0
 (ZE)
0
0
 (SN)
0.7
0.3
 (LN)
0.7
1
Jika nilai – nilai ini dimasukkan dalam rule maka :
Rule 1 : IF e = ZE AND delta = ZE THEN output = ZE
(1) = min (0, 0) = 0
Output(1) = 0
Rule 2 : IF e = ZE AND delta = SP THEN output = SN
(2) = min (0, 0) = 0
Output(2) = -0.5
Rule 3 : IF e = SN AND delta = SN THEN output = LP
(3) = min (0.7, 0.3) = 0.3
Output(3) = 1.0
Rule 4 : IF e = LP OR delta = LP THEN output = LN
(4) = max (0 , 0) = 0
Output(4) = -1.0
Selanjutnya dilanjutkan dengan proses defuzzifikasi dengan metode COG maka akan
menghasilkan :
COG 
© Avid-06
 (1).output (1)   (2).output (2)   (3).output (3)   (4).output (4)
 (1)   (2)   (3)   (4)
49
Fuzzy logic

(0 * 0)  (0 * 0.5)  (0.3 *1)  (0 * 1)
0  0  0.3  0
1
Jadi didapatkan nilai akhir output adalah 1. Demikian seterusnya sampai didapatkan nilai
output yang mendekati nilai set point.
Jika kita menemui kesulitan dalam menggambarkan proses defuzzifikasi dengan
metode COG maka perlu diingat bahwa centroid didefinisikan sebagai penjumlahan
seluruh momen (lokasi kali massa) di sekitar pusat grafitasi dan menyamakan hasil
penjumlahan tersebut dengan nol. Jadi jika pusat grafitasi dimisalkan pada titik x 0, lokasi
dari tiap – tiap massa adalah xi, dan massa dari tiap – tiap massa adalah Mi , maka
0  ( x1  x0 ) * M 1  ( x2  x0 ) * M 2  ...  ( xn  x0 ) * M n
0  ( x1 * M 1  x2 * M 2  ...  xn * M n )  x0 * (M 1  M 2  ...  M n )
x0 * (M 1  M 2  ...  M n )  x1 * M 1  x2 * M 2  ...  xn * M n
x0 
x1 * M 1  x2 * M 2  ...  xn * M n
( M 1  M 2  ...  M n )
Dalam kenyataannya bagian yang paling berat adalah membuat rule yang benarbebar dapat dipakai dalam praktek atau aplikasi nyata.
5.3 Aplikasi Sistem Kontrol Fuzzy
Untuk memberikan gambaran lebih mendalam tentang konsep logika Fuzzy,
berikut ini akan diberikan contoh aplikasi sederhana kontrol fuzzy pada sebuah Termostat.
Dimana kontroler Fuzzy dipakai untuk mengatur kipas Pemanas (heater fan) pada
Termostat. Adapun diagram dari sistem kontrol Fuzzy dalam Termostat adalah seperti
ditunjukkan dalam gambar 5.10.
Room
Kontroler
Fuzzy
fan speed
Fan
sensor
temperatur
Gambar 5.10 Kontroler Temperatur pada Termostat
Dari gambar 5.10 tampak bahwa Kontroler Fuzzy dipakai untuk mengatur kecepatan
kipas (fan speed). Adapun input dari Kontroler Fuzzy adalah temperatur ruang yang
ditangkap oleh sensor. Jika kita menggunakan Kontroler konvensional pada termostat
© Avid-06
50
Fuzzy logic
maka proses pengaturan temperatur adalah seperti switch ON-OFF. Misalnya kita
menginginkan untuk mengatur temperatur (setting point) pada 780 F maka kontroler akan
diaktifkan (ON) saat temperatur berada di bawah 750 F dan kontroler akan dinonaktifkan
(OFF) ketika temperatur mencapai 810 F. Himpunan variabel input Temperatur baik yang
bersifat Fuzzy maupun Non Fuzzy diperlihatkan dalam gambar 5.11 berikut ini :
1
cold
0
cool
warm
hot
0
20
40
60
80
100
Temperatur ( F)
(a)
1
cold
0
cool
warm
hot
0
20
40
60
80
100
Temperatur ( F)
(b)
Gambar 5.11 Himpunan variabel input “Temperatur” (a) Non Fuzzy (b) Fuzzy
Sementara itu variabel Fuzzy output ”Fan_speed” digambarkan dalam gambar 5.12 di
bawah ini :
zero
1
0
0
10
low
medium
high
20
30
40
fan speed (RPM)
Gambar 5.12 Himpunan variabel output “Fan Speed”
Aturan-aturan (rules) yang dipakai pada sistem kontroler fuzzy tersebut adalah :
1. IF temperatur is cold THEN fan speed is high
2. IF temperatur is cool THEN fan speed is medium
3. IF temperatur is warm THEN fan speed is low
4. IF temperatur is hot THEN fan speed is zero
© Avid-06
51
Fuzzy logic
Ada 3 proses utama dalam sistem kontroler Fuzzy tersebut yaitu : Fuzzifikasi nilai input,
aktivasi aturan, dan defuzzifikasi output.
Andaikan pada sistem tersebut diberikan input Temperatur sebesar 780 F maka
dalam proses Fuzzifikasi maka nilai 78 ini akan diubah menjadi nilai fuzzy menjadi 0.6
(warm) dan 0.2(hot). Sedangkan pada cold dan cool nilainya adalah : 0.0(cold) dan
0.0(cool).
1
78
0.6
cold
cool
warm
hot
0.2
0
20
40
60
80
100
Gambar 5.13 Fuzzifikasi input ”Temperatur”
Temperatur
 (cold)
0.0
 (cool)
0.0
 (warm)
0.6
 (hot)
0.2
Sedangkan pada proses Aktivasi aturan jika digunakan metode Pengambilan Keputusan
Mamdani (Max-Min) maka terjadi proses sebagai berikut :
Rule 1 : IF temperatur is cold THEN fan speed is high
(1) = (cold) =0.0
Output (1) = min ((cold),fan speed) = min ((cold),high) = min (0.0, high)
high
1
0
0
10
20
30
40
fan speed (RPM)
Rule 2 : IF temperatur is cool THEN fan speed is medium
(2) = (cool) =0.0
Output (2) = min ((cool),fan speed) = min (0.0,medium)
© Avid-06
52
Fuzzy logic
medium
1
0
0
10
20
30
40
fan speed (RPM)
Rule 3 : IF temperatur is warm THEN fan speed is low
(3) = (warm) =0.6
Output (3) = min ((warm),fan speed) = min (0.6,low)
low
1
0.6
0
0
10
20
30
40
fan speed (RPM)
Rule 4 : IF temperatur is hot THEN fan speed is zero
(4) = (hot) =0.2
Output (4) = min ((hot),fan speed) = min (0.2,zero)
1
zero
0.2
0
0
10
20
30
40
fan speed (RPM)
Setelah nilai output dari masing-masing rule didapatkan maka selanjutnya adalah proses
penggabungan dengan operator Max sehingga didapatkan output total yaitu :
1
zero
low
medium
high
10
20
30
40
0.6
0.2
0
0
fan speed (RPM)
Sebagai proses akhir yaitu proses Defuzzifikasi dengan metode COG.
© Avid-06
53
Fuzzy logic
COG 
10 * 0.2  20 * 0.6  30 * 0.0  40 * 0.0
 17.5
0.2  0.6  0.0  0.0
Jadi Nilai Output Fan Speed dari sistem tersebut adalah 17.5 RPM.
© Avid-06
54
Download