Anda di halaman 1dari 11

Fuzzy Control

Ditulis oleh asro pada 27 Maret 2009


Anda pernah mendengar istilah kecerdasan buatan (artificial intelligence atau disingkat AI)? AI merupakan
suatu aplikasi yang meniru kecerdasan manusia untuk digunakan dalam mesin-mesin atau peralatan-
peralatan cerdas. Konon katanya otak manusia memiliki 2 fungsi utama, yaitu fungsi berpikir dan
fungsi belajar. Fungsi berpikir manusia tercermin dari kemampuannya untuk berlogika, sedangkan fungsi
belajar membuat manusia bisa mengingat sesuatu melalui pembentukan pola-pola di otaknya.
Sejalan dengan fungsi otak manusia tersebut, maka AI juga dikelompokan menjadi 2 kelompok, yaitu AI
yang meniru fungsi berpikir dan AI yang meniru fungsi belajar. Salah satu contoh AI yang meniru fungsi
berpikir adalah logika fuzzy (fuzzy logic), sedangkan contoh AI yang meniru fungsi belajar adalah neural
network (NN). Tulisan ini akan membahas fuzzy logic dan salah satu aplikasinya di bidang kontrol proses.
Logika Fuzzy. Logika fuzzy pertama kali diperkenalkan oleh Prof Lotfi Zadeh tahun 1965. Saat ini
logika fuzzy sudah banyak digunakan dalam berbagai bidang, salah satunya adalah dalam bidang kontrol
(proses kontrol). Fuzzy yang diperkenalkan oleh Zadeh didasarkan pada teori possibility yang berbeda dari
teori probability yang sudah lebih umum dikenal.
Secara umum, logika fuzzy terdiri dari beberapa komponen, yaitu Fuzzifier, Fuzzy Rule Base,Fuzzy Inference
Engine dan Defuzzifier, seperti diperlihatkan pada gambar berikut.

Yang menjadi inti dari logika fuzzy adalah Fuzzy Rule Base, yang berisi pernyataan-pernyataan logika. Fuzzy
Inference Engine merupakan komponen fuzzy yang menerjemahkan pernyataan logika yang ada di Rule
Base menjadi perhitungan-perhitungan matematika. Fuzzifier digunakan untuk memetakan nilai/harga
variable di dunia nyata kedalam himpunan fuzzy (fuzzy sets), sedangkan Defuzzifier mengembalikan hasil
perhitungan fuzzy (himpunan fuzzy) menjadi variable sesuai rentang nilainya di dunia nyata.
Fuzzy Rule Base. Fuzzy rule base berisi pernyataan-pernyataan logika fuzzy (fuzzy statement), yang
berbentuk pernyataan IF-THEN. Bentuk umum pernyataan fuzzy adalah:
IF x
1
is A
1
l
and and x
n
is A
n
l
THEN y is B
l
,
A
1
l
dan B
l
adalah himpunan fuzzy dalam U
i
R dan V R, sedangkan x = (x
1
, x
2
, , x
n
)
T
U dan
y V adalah input dan output dari variable fuzzy.
Fuzzy Inference Engine. Fuzzy inference engine menerjemahkan pernyataan-pernyataan fuzzy dalalm
rule base menjadi perhitungan matematika (fuzzy combinational). Terdapat beberapa metode inference
engine, 5 diantaranya yaitu:
1. Product Inference Engine.
2. Minimum Inference Engine.
3. Lukasiewicz Inference Engine.
4. Zadeh Inference Engine.
5. Dienes-Rescher Inference Engine.
Berikut adalah formula untuk masing-masing inference engine tersebut.

Fuzzifier. Fuzzifier digunakan untuk memetakan nilai/harga variable di dunia nyata kedalam himpunan
fuzzy (fuzzy sets). Pemetaannya dilakukan dengan menggunakan fungsi yang disebutmembership function.
Terdapat beberapa metode fuzzifier, 3 diantaranya yaitu: Singleton fuzzifier, Gausian
fuzzifier dan Triangular fuzzifier. Berikut adalah formulanya.

Defuzzifier. Defuzzifier mengembalikan hasil perhitungan fuzzy (himpunan fuzzy) menjadi variable sesuai
rentangnya di dunia nyata. Sama dengan fuzzifier, defuzzifier juga menggunakan membership function
untuk memetakan nilai himpunan fuzzy menjadi variable nyata. Terdapat beberapa metode defuzzifier, 3
diantaranya yaitu:
1. Center of gravity defuzzifier. Center of gravity yang dinyatakan dengan y*, menunjukan pusat area
yang diliputi oleh membership function B.
2. Center average dufuzzifier. Center average menunjukan weight average dari titik tengah (center)
masing-masing membership function.
3. Maximum defuzzifier. Maximum defuzzifier memilih nilai tertinggi sebagai y*. Ada 3 pilihan,smallest
of maxima, largest of maxima atau mean of maxima.
Berikut adalah formulanya.

Fuzzy PID Gain Scheduling Control. Kontrol PID merupakan algoritma kontrol yang banyak
digunakan di industri proses karena bentuknya yang sederhana dan mudah diimplementasikan. Pada
kondisi operasi tertentu (seperti misalnya sering terjadi gangguan pada proses atau parameter proses yang
berubah-ubah), parameter control ini harus sering di-tuned agar kinerjanya tetap baik. Salah satu teknik
dalam sistem kontrol yang sering dilakukan untuk mengatasi permasalahan ini adalah dengan menggunakan
metode PID Gain Scheduling, dimana parameter kontrol diubah secara otomatis jika terjadi perubahan
kondisi operasi yang menyebabkan kinerja kontrol menurun.
Dalam rangka memberikan contoh penggunaan fuzzy logic di bidang kontrol proses, maka selanjutnya akan
dibahas salah satu metode PID gain scheduling dengan menggunakan fuzzy logic. Metode ini
dinamakan Fuzzy PID gain scheduling.
Pada aplikasi ini, fuzzy berfungsi menghitung parameter kontrol PID (Kp, Ti dan Td), berdasarkan kondisi
signal error (E) dan perubahan error (E).
Secara umum, diagram fuzzy PID gain scheduling control dapat digambarkan seperti berikut.

Khusus untuk fuzzy system, diagramnya adalah sbb:

Fuzzifier, menerjemahkan informasi input, dalam hal ini error E dan perubahan error E menjadi informasi
fuzzy (0,1), yang bernilai antara 0 dan 1. Penerjemahannya menggunakan triangular membership
function (triangular fuzzifier), seperti pada gambar berikut.

NB adalah negative big, NM adalah negative medium, NS adalah negative small, ZO adalah zero, PS adalah
positive small, PM adalah positive medium dan PB adalah positive big; kesemuanya ini merupakan linguistic
term dari fuzzy logic. Sebagai contoh, signal E sebesar 50 memiliki nilai fuzzy 0.5 untuk PS dan PM,
sedangkan fuzzy term lainnya bernilai nol.
Rule Base, berisi sekumpulan pernyataan fuzzy dalam bentuk IF THEN .. Disini akan digunakan
rule berikut:

Selengkapnya pernyataan fuzzy tersebut dapat ditabelkan sebagai berikut:

Inference Engine. Fuzzy inference engine bertugas melakukan proses fuzzy reasoning yaitu
menerjemahkan fuzzy statement berdasarkan nilai input dari hasil fuzzifier menjadi suatu nilai output yang
kemudian akan dikirim ke defuzzifier.
Disini akan digunakan metode minimum inference engine. Untuk setiap statement di atas, baik untuk Kp ,
Kd maupun , hasil proses reasioningnya adalah:
(Kp) =
Kp
(E,E) = min ((E), (E)
(Kd) =
Kd
(E,E) = min ((E), (E)
() =

(E,E) = min ((E), (E)


Defuzzifier. Defuzzifier merupakan kebalikan dari fuzzifier, yaitu menerjemahkan informasi
fuzzy (Kp), (Kd) dan () yang merupakan hasil dari proses reasioning yang bernilai antara 0 dan 1
menjadi Kp, Kd dan .
Proses defuzzifier ini juga dilakukan dengan menggunakan triangular membership function, seperti pada
gambar berikut.

Dengan S adalah small, MS adalah medium small, M adalah medium dan B adalah big.
Di sini proses defuzzifier dilakukan dengan menggunakan metode center average defuzzifier, dengan
formula berikut:
Kp = ((Kp) Kp)/ ((Kp))
Kd = ((Kd) Kd)/ ((Kd))
= (())/ (())
Selanjutnya nilai parameter kontrol PID yaitu Kp, Ti dan Td dapat diperoleh dengan persamaaan:
Kp = Kp (Kpmax Kpmin) + Kpmin.
Ti = Td
Td = Kd (Kdmax Kdmin) + Kdmin
Untuk menguji kinerja dari Fuzzy PID gain scheduling control ini, saya membuat simulasinya dengan
menggunakan excell. Dalam simulasi ini saya membandingkan Fuzzy PID gain scheduling
control dengan Ideal PID control. Front-End simulasi yang saya buat seperti gambar berikut.


Ideal PID di-tuned secara manual ke Proportional gain Kp = 0.1, Integral time Ti = 0.5 dan Derivative time
Td = 1.5. Sedangkan Fuzzy PID gain scheduling akan menghitung sendiri parameter PID berdasarkan
kondisi error (E) dan perubahan error (E), yang menghasilkan harga Kp = 0.1, Ti = 3 dan Td = 1.
Hasilnya, response yang diberikan Fuzzy PID gain schedulling sedikit lebih bagus dibandingkan dengan ideal
PID.
Ketika saya ubah proses gain P dari 2 menjadi 7.5, responsenya akan berubah menjadi seperti gambar
berikut.


Perhatikan gambar ini. Dengan tuning parameter yang sama dengan sebelumnya, Ideal PID tidak mampu
lagi mengontrol plant dengan baik (response menjadi tidak stabil). Sedangkan Fuzzy PID gain scheduling
menghitung ulang parameter PID berdasarkan kondisi error (E) dan perubahan error (E), yang
menghasilkan harga Kp = 0.1, Ti = 3.03 dan Td = 1.02. Hasilnya, response yang diberikan Fuzzy PID gain
scheduling masih stabil walaupun sedikit berosilasi.

Anda mungkin juga menyukai