Basis Data

advertisement
Pemikiran
terhadap
himpunan
fuzzy
dicetuskan oleh Lotfi A. Zadeh tahun 1965
yang kemudian berkembang menjadi teori
himpunan Fuzzy. Logika fuzzy didasarkan
pada ketidakpastian batas antara suatu
kriteria dengan kriteria lainnya yang
disebabkan adanya penilaian manusia
terhadap sesuatu secara kumulatif. Misalnya
ungkapan mobil bagus, udara panas, dan lain
sebagainya yang seringkali menimbulkan
ketidak pastian antara satu kriteria dengan
kriteria lainnya.
Konsep himpunan fuzzy merupakan dasar dari
sistem logika fuzzy. Himpunan fuzzy tersebut
memetakan kriteria-kriteria kualitatif terhadap
fungsi keanggotaan. Dengan demikian setiap
kriteria kualitatif dalam himpunan fuzzy
mempunyai fungsi keanggotaan (). Fungsi
keanggotaan dari kriteria kualitatif dalam
himpunan fuzzy mempunyai selang nilai antara
0.0 sampai 1.0. Bila X anggota himpunan
fuzzy, maka (X) merupakan derajat
keanggotaan atau fungsi dari X.
Sebelum logita fuzzy dicetuskan, logika
konvensional mengharuskan bahwa jika
suatu proposisi benar, maka negasinya harus
salah sehingga hanya ada dua keanggotaan
yaitu 0 dan 1.
LA Zadeh kemudian
memperkenalkan gugus fuzzy (fuzzy set)
dengan ketentuan:
Jika A = {X  A(X)} maka 0  A(X)  1
Hal ini berarti bahwa nilai fungsi keanggotaan
A dalam semesta X bisa bernilai 0, 1 dan
nilai-nilai diantaranya.
Misal X adalah himpunan semesta umur
manusia, dan X adalah himpunan crisp yang
mempunyai anggota sbb:
X = {5, 10, 15, 20, 30, 40, 50, 60, 70, 80 }.
Tabel
Contoh derajat keanggotaan himpunan Fuzzy
Umur
(tahun)
Muda
Dewasa
Tua
5
1
0
0
10
1
0
0
20
0.8
0.8
0.1
30
0.5
1
0.2
40
0.2
1
0.4
50
0.1
1
0.6
60
0
1
0.8
70
0
1
1
80
0
1
1
A = (1/x1), (2/x2), (3/x3), ................. , (i/xi)
Anggota-anggota himpunan bagian (xi) dengan derajat
keanggotaan i dari himpunan semesta X adalah:
Muda: {1/5, 1/10, 0.8/20, 0.5/30, 0.2/40, 0.1/50}.
Dewasa: {0.8/20, 1/30, 1/40, 1/50, 1/60, 1/70, 1/80}.
Tua: {0.1/20, 0.2/30, 0.4/40, 0.6/50, 0.8/60, 1/70, 1/80}
Operasi hubungan yang berlaku pada teori
himpunan fuzzy adalah:
Irisan (  ) = AB = min { A(X), B(X) }
Gabungan(  ) = AB = max { A(X), B(X) }
Komplemen ( ‘ ) = A(X)’ = 1 - A(X)
Himpunan Bagian() = AB 
A(X)  B(X).
Tahapan yang umum dilakukan dalam
pengendalian logika fuzzy adalah:
 Fuzzifikasi
 Basis Pengetahuan.
 Logika Fuzzy reasoning
 Defuzzifikasi
Dipergunakan untuk memetakan variable input
yang berupa nilai numerik/ crisp kedalam FUZZY
set sehingga diperoleh nilai linguistik (label) dan
derajat keanggotaannya.
Terdiri atas basis data dan basis
aturan.
Basis Data berisi nilai linguistik dan
derajat keanggotaan variable input
yang diperoleh melalui proses
Fuzzifikasi.
Basis Aturan terdiri dari aturan kendali
Fuzzy yang digunakan untuk mencapai
tujuan dari objek pengendalian.
Basis aturan pengendalian dibuat
berdasarkan proses penalaran
operator atau ahli dengan melibatkan
unsur pengalaman. Aturan kendali
Fuzzy mengekspresikan hubungan
antara variabel input dengan variabel
output. Aturan kendali Fuzzy
menggunakan bentuk: Jika <kondisi
atau persyaratan> maka <tindakan
atau konsekuensi>. Tiap aturan
memiliki hubungan antara satu dengan
yang lain yang disebut FUZZY
REASONING.
Dipergunakan untuk proses pemetaan
dari himpunan fuzzy keluaran (Fuzzy
reasoning) kedalam nilai numerik
sebagai aksi kendali. Metoda yang
dapat digunakan pada proses
defuzzifikasi adalah: Center of Area
(COA), Center of Sum (COS), dan
Mean of Maxima (MOM).
Pendekatan teoritik dalam pembuatan kendali
logika fuzzy dilakukan dengan menyusun
tahapan-tahapan sebagai berikut:
Contoh kasus pengendalian suhu.
1. Menentukan variabel input dan output.
Dalah hal ini variabel input adalah error
(E) dan beda error (dE) suhu. Variabel
outputnya (U) berupa daya yang
digunakan. Error adalah selisih antara
suhu aktual (Tac) dengan suhu set point
(Tsp).
Beda error adalah selisih antara error saat
waktu t dengan error saat waktu t-dt.
E(t) = Tac(t) – Tsp(t).
dE/dt = {E(t) – E(t-t)}/ t
dE( t )/dt = {Tac( t ) – Tac(t - t)} / t
2. Menentukan Himpunan Fuzzy untuk
masing-masing variable baik input (E dan
dE) maupun output ( U ) dalam nilai
linguistik dan fungsi keanggotaan. Nilai
linguistik untuk E dan dE adalah: NB,
NS, NK, ZO, PK, PS, dan PB.
Nilai linguistik untuk U adalah: NSB,
NB, NS, NK, ZO, PK, PS, PB, dan
PSB. Fungsi keanggotaan yang
digunakan untuk E, dE dan U adalah
fungsi segitiga. Jumlah, range, dan
shape fungsi keanggotaan E, dE,
dan U didasarkan pada penelitian
sebelumnya dan bersifat subjektif.
Fungsi keanggotaan untuk E dan dE
disajikan pada gambar berikut.

1
0
NB
NS NK ZO
-0.75 -0.5 -0.25 0
PK PS
PB
E / E
0.25 0.5 0.75
Gambar 2. Fungsi keanggotaan Error (E) dan beda error (dE)

NSB NB
NS NK
ZO
PK
PS
PB PSB
1
0
-1
-0.75 -0.5 -0.25 0
0.25 0.5 0.75
1
U
Gambar 3. Fungsi keanggotaan output U
3.
FUZZIFIKASI. Setelah mengetahui
nilai variabel E dan dE kemudian
ditentukan nilai linguistik dan derajat
keanggotaannya dengan memetakannya
pada fungsi keanggotaan E dan dE.
Penentuan derajat keanggotaan nilai E
dan dE dilakukan dengan persamaan
garis dua titik seperti berikut:
( x2 , y2)
y – y1
y2 – y1
y
=
x – x1
x2 – x1
(x1 , y1)
0
x
Gambar Penentuan derajat keanggotaan (E) dan (dE)
y = [{(x – x1)(y2 – y1)} / (x2 – x1)] + y1
karena y1 = 0, y2 =1, y = dan x = E, maka
 = ( E – x1)/(x2 – x1)
Derajat keanggotaan dan nilai linguistik yang
didapat pada proses Fuzzifikasi dijadikan
sebagai basis data.
4. Menentukan aturan kendali Fuzzy.
Aturan ini dibuat dalam bentuk JIKAMAKA. Dalam proses pengendalian akan
terdapat hubungan antara aturan yang
satu dengan yang lain disebut sebagai
“Fuzzy reasoning”.
Tabel Matrik aturan kendali Fuzzy
NB
NS
NK
ZO
PK
PS
PB
NB
NSB
NSB
NSB
NB
NS
NK
ZO
NS
NSB
NSB
NB
NS
NK
ZO
PK
NK
NSB
NB
NS
NK
ZO
PK
PS
ZO
NB
NS
NK
ZO
PK
PS
PB
PK
NS
NK
ZO
PK
PS
PB
PSB
PS
NK
ZO
PK
PS
PB
PSB
PSB
PB
ZO
PK
PS
PB
PSB
PSB
PSB
dE
E
5.
Defuzzifikasi.
Keluaran dari Fuzzy
reasoning umumnya terdiri atas beberapa
nilai
linguistik
dengan
derajat
keanggotaan
tertentu.
Untuk
bisa
digunakan dalam proses kendali, harus
dirubah kedalam numerik/ crisp. Metode
defuzzifikasi
yang
digunakan
adalah
metoda center of area.
Persamaan
metoda tersebut adalah:
 wi ui
Dimana: U = Output
U=
wi = Bobot nilai benar wi
 wi
ui = Titik berat ke-i
n = Banyaknya derajat
keanggotaan.
Misal suhu set point adalah 31C, suhu
terukur pada saat itu = 30.4C, dan suhu
terukur sebelumnya = 29.9C, Fungsi
keanggotaan error dan beda error adalah :

NB NS NK ZO PK PS PB
1
0
-0.75 -0.5 -0.25
0
0.25 0.5
0.75
E / E
Gambar Fungsi keanggotaan Error (E) dan beda error (dE)
Error pada waktu t = 30.4 – 31 = -0.6
Beda error adalah = (30.4 – 31) – (29.9 – 31) = 0.5
Derajat keanggotaan dinyatakan dengan rumus:
 = ( E – x1)/(x2 – x1)
Derajat keanggotaan error pada garis NB:
ENB = (-0.6 – (-0.5))/(-0.75 – (-0.5)) = 0.4
Derajat keanggotaan error pada garis NS:
ENS = (-0.6 – (-0.75))/(-0.5 – (-0.75)) = 0.6
Karena beda error sama dengan 0.5, maka derajat
keanggotaan beda error hanya ada untuk PS:
dEPS = 1
Matrik keputusan untuk kendali Fuzzy adalah:
Tabel Matrik keputusan kendali Fuzzy
dE
E
NB
NS
NK
ZO
PK
PS
PB
NB
NS
NSB
NSB
NSB
NB
NS
NK
ZO
NSB
NSB
NB
NS
NK
ZO
PK
NK
ZO
PK
NSB
NB
NS
NK
ZO
PK
PS
NB
NS
NK
ZO
PK
PS
PB
NS
NK
ZO
PK
PS
PB
PSB
PS
PB
NK
ZO
PK
PS
PB
PSB
PSB
ZO
PK
PS
PB
PSB
PSB
PSB
Berdasarkan pada matrik keputusan di atas, maka
dapat dilakukan perhitungan defuzzifikasi sebagai
berikut:
(ENB , dEPS) = 0.4  nilai yang lebih kecil
antara nilai ENB dan dEPS
(ENS , dEPS) = 0.6  nilai yang lebih kecil
dimana matrik untuk masing-masing aturan adalah:
Matriks (ENB , dEPS) = NK
Matriks (ENS , dEPS) = Z0
Variable yang akan dikendalikan pada sistem
pengendalian suhu ini adalah daya pemanas.
Misal daya maksimum pemanas = 5000 watt.
Dari data derajat keanggotan dan metrik
keputusan didapatkan grafik fungsi
keanggotaan output terdiri dari dua segitiga
(NK dan ZO) seperti pada gambar di bawah.

1
NSB
NB
NS
NK
ZO
PK
PS
PB
PSB
-1
-0.75
-0.5
-0.25
0
0.25
0.5
0.75
1
0.6
0.4
0
U
Faktor pengali daya pengendalian Fuzzy
Gambar Fungsi keanggotaan output U
Luas segitiga NK (A1) = (0.5  0.4)/2 = 0.1 (luas tidak
ada negatif)
Luas segitiga Z0 (A2) = (0.5  0.6)/2 = 0.15
Pusat area segitiga NK (X1) = -0.25
Pusat area segitiga Z0 (X2) = 0
Dengan demikian nilai output dari pengendalian
fuzzy adalah:
U =  AiXi /  Ai
Dimana: Ai = luas segitiga ke-i
Xi = pusat area segitiga ke-i
U = {(0.1  (-0.25)) + (0.15  0)} /
(0.1 + 0.15) = -0.1 x 5000
U = - 500W.
Download