Anda di halaman 1dari 14

UJIAN AKHIR SEMESTER

Kecerdasan Buatan (AI)

“Pembuatan Fuzzy Logic Air-Conditioning


System dengan Fuzzy Interface System
Matlab”

Oleh :

Moh. Rochman Wahid Maulana ( 16070895014 )

PROGRAM STUDI PENDIDIKAN TEKNOLOGI DAN KEJURUAN


PASCASARJANA UNIVERSITAS NEGERI SURABAYA
2016
HASIL DAN PEMBAHASAN

Dari pertanyaan :

1. Jika diketahui temperature yang dikontrol dari 10oC sampai dengan 50o C, tingkat
kelembaban(humidity) antara 0 s.d 100% dan level dari cooling speed antara 0 s.d 1500
rpm. Dengan menggunakan Fuzzy Inference System (FIS) tipe mamdani. Buatlah
program dengan menggunakan matlab dengan ketentuan sebagai berikut :

2. Simulasikan cooling speed untuk suhu 25o C dengan kelembaban 50%, jika nilai cooling
speed sesungguhnya sebesar 500, hitung nilai errornya.

Kisaran cooling speed 0 s.d 1500

Jawaban :

Adapaun aturan air conditioning (AC) yang saya buat adalah sebagai berikut :
1. Jika Humidity Very_Low maka Cooling Slow
2. Jika Humidity Low ATAU Temperature Low maka Cooling Slow
3. Jika Humidity Medium ATAU Temperature Medium maka Cooling Medium
4. Jika Humidity High ATAU Temperature High maka Cooling Fast
5. Jika Humidity Very_High maka Cooling Fast

I. Jawaban Soal 1 Hitung Fuzzy Logic secara Matematis dan FIS pada MATLAB
A. Tahapan hitung Fuzzy secara matematis :
1) Membuat himpunan fuzzy dan input fuzzy
Asumsikan kategori setiap variabel fuzzy sebagai berikut :
Humidity : Very_Low, Low, Medium, High & Very_High
Temperature : Low, Medium & High
Cooling : Slow, Medium & Fast

Membership Fuction = Fungsi Keanggotaan dengan fungsi segitiga


 Input : Humidity = 50%

1 S2 PTK UNESA 2016


Aturan dalam fungsi segitiga :
0, x<a
x-a , a < x < b
F(x; a, b, c) = b-a
c-x , b < x < c
c-b
0, c<x

Karena yang dicari Medium maka yang kita hitung hanyalah yang Medium :
𝑐−𝑥 60 − 50 10
𝜇𝑇_𝑀𝑒𝑑𝑖𝑢𝑚 = = = =1
𝑐−𝑏 60 − 50 10

Dengan demikian, kita bisa simpulkan himpunan fuzzy untuk input Humidity adalah
sebagai berikut :
 Himpunan Fuzzy Very_Low : µp_Very_Low [50] = 0
 Himpunan Fuzzy Low : µp_Low [50] = 0
 Himpunan Fuzzy Medium : µp_Medium [50] = 1
 Himpunan Fuzzy High : µp_High [50] = 0
 Himpunan Fuzzy Very_High : µp_Very_High [50] = 0

 Input : temperature = 25oC

Diketahui nilai yang di input 25oC maka kita akan cari apakah merupakan Medium
atau Low. Ketika ditarik ke atas maka yang akan di kenai adalah Medium dan Low
kemudian kita tarik ke samping berapa derajat keanggotaanya
Karena yang dicari Medium dan Lo2 maka yang kita hitung hanyalah yang Medium
dan Low :
𝑐−𝑥 35 − 25 10
𝜇𝑇_𝐿𝑜𝑤 = = = = 0,83
𝑐−𝑏 35 − 23 12
𝑥−𝑎 25 − 17,5 7,5
𝜇𝑇_𝑀𝑒𝑑𝑖𝑢𝑚 = = = = 0,6
𝑏−𝑎 30 − 17,5 12,5

Dengan demikian, kita bisa simpulkan himpunan fuzzy untuk input Temperature
adalah sebagai berikut :
 Himpunan Fuzzy Low : µp_ Low [25] = 0,83
 Himpunan Fuzzy Medium : µp_Medium [25] = 0,6
 Himpunan Fuzzy High : µp_High [25] = 0

2 S2 PTK UNESA 2016


Jika kita kumpulkan semua input -> Humidity = 50 dan Temperature = 25, maka
diperoleh :

 Himpunan Fuzzy Very_Low : µp_Very_Low [50] = 0


 Himpunan Fuzzy Low : µp_Low [50] = 0
 Himpunan Fuzzy Medium : µp_Medium [50] = 1
 Himpunan Fuzzy High : µp_High [50] = 0
 Himpunan Fuzzy Very_High : µp_Very_High [50] = 0
 Himpunan Fuzzy Low : µp_ Low [25] = 0,83
 Himpunan Fuzzy Medium : µp_Medium [25] = 0,6
 Himpunan Fuzzy High : µp_High [25] = 0

2) Menerapkan operator fuzzy


Aturan ke-1
 IF Humidity Very_Low THEN Cooling Slow
 α1 = µ P_very_low[50] = 0
Aturan ke-2
 IF Humidity Low OR Temperature Low THEN Cooling Slow
 α2 = max(µ P_ low[50], µ P_ low[25]) = max(0, 0.83)
 = 0,83
Aturan ke-3
 IF Humidity Medium OR Temperature Medium THEN Cooling Medium
 α3 = max(µ P_medium[50], µ P_medium[25]) = max(1, 0.6)
 =1
Aturan ke-4
 IF Humidity High OR Temperature High THEN Cooling Fast
 α4 = max(µ P_ high [50], µ P_high[25]) = max(0, 0)
 =0
Aturan ke-5
 IF Humidity Very_High THEN Cooling Fast
 α5 = µ P_ high [50] = 0

Penjelajan pada aturan ini jika menggunakan OR maka yang diambil nilainya adalah
yang paling tinggi (MAX) dan bila menggunakan AND maka yang diambil nilainya
adalah yang paling rendah (MIN).

3) Menerapkan fungsi implikasi


 Diktehui bahwa α1 = 0, α2 = 0.83, α3 = 1, α4 = 0 dan α5 = 0
 Langkah selanjutnya adalah mencari nilai-nilai tersebut di variabel output
 Selanutnya sesuaikan dengan output :

 IF Humidity Very_Low THEN Cooling Slow -> α1 = 0


 IF Humidity Low OR Temperature Low THEN Cooling Slow -> α2 = 0,83
 IF Humidity Medium OR Temperature Medium THEN Cooling Medium -> α3 =
1
 IF Humidity High OR Temperature High THEN Cooling Fast -> α4 = 0
 IF Humidity Very_High THEN Cooling Fast -> α5 = 0

3 S2 PTK UNESA 2016


 Output : Cooling

Aturan dalam fungsi trapesium :


F(x; a, b, c, d) = {0, x<a }
{x-a , a < x < b}
{b-a }
{1, b < x < c}
{d-x , c < x < d}
{d-c }
{0, d < x }

Aturan ke-2
α2 = 0.83
𝑥−𝑎 𝑥−0
0.83 = = → 166 = 𝑥 − 0 → 𝑥 = 166
𝑏−𝑎 200 − 0

Atau :

𝑑−𝑥 500 − 𝑥
0.83 = = → 166 = 500 − 𝑥 → 𝑥 = 334
𝑑−𝑐 500 − 300

Aturan ke-3
α3 = 1
𝑥−𝑎 𝑥 − 500
1= = → 200 = 𝑥 − 500 → 𝑥 = 700
𝑏−𝑎 700 − 500

Atau :

𝑑−𝑥 1000 − 𝑥
1= = → 200 = 1000 − 𝑥 → 𝑥 = 800
𝑑−𝑐 1000 − 800

4 S2 PTK UNESA 2016


4) Mengkomposisikan semua output

0, -> x < 0 atau x > 1500


x–0, -> 0 < x < 166
200 – 0
0.83, -> 166 < x < 334
500 – x , -> 334 < x < 500
µSF[z] = 500 – 300

x – 500 , -> 500 < x < 700


700 – 500
1, -> 700 < x < 800
1000 – x , -> 800 < x < 1000
1000 - 800

5) Defuzzyfication

Diperoleh dengan cara menghitung momen dan luas daerah hasil impikasi dengan
rumus (∫ =integral)

5 S2 PTK UNESA 2016


Amati daerah hasil komposisi :

Kita cari dulu luasnya :


(166−0)x0.83
 A1 = = 68.89
2
 A2 = (334 − 166)x0.83 = 139.44
(500−334)x0.83
 A3 = = 68.89
2
(700−500)x1
 A4 = = 100
2
 A5 = (800 − 700)x1 = 100
(1000−800)x1
 A6 = = 100
2

Kita sederhanakan fungsi komposisi :

0, -> x < 0 atau x > 1500 0, -> x < 0 atau x > 1500
x–0, -> 0 < x < 166 0.005x , -> 0 < x < 166
200 – 0
0.83, -> 166 < x < 334 0.83, -> 166 < x < 334
500 – x , -> 334 < x < 500 2,5 – 0.005x , -> 334 < x < 500
500 – 300 µSF[z] =
µSF[z] = 0.005x – 2,5 , -> 500 < x < 700
x – 500 , -> 500 < x < 700
700 – 500 1, -> 700 < x < 800
1, -> 700 < x < 800 5 – 0.005x , -> 800 < x < 1000
1000 – x , -> 800 < x < 1000
1000 - 800

166 166

𝑀1 = ∫ (0.005𝑧)𝑧 𝑑𝑧 = ∫ (0.005𝑧 2 )𝑑𝑧 = 0.001667𝑧 3 |166


0 = 7625,351432
0 0

334
334
𝑀2 = ∫ (0.83)𝑧 𝑑𝑧 = 0,415𝑧 2 |166 = 34860
166

6 S2 PTK UNESA 2016


500

𝑀3 = ∫ (2,5 – 0.005z)𝑧 𝑑𝑧
334
500

= ∫ (2,5𝑧 − 0.005𝑧 2 )𝑑𝑧 = 1,25𝑧 2 − 0.001667𝑧 3 |500


334 = 26791,93
334

700

𝑀4 = ∫ (0.005𝑧 − 2,5)𝑧 𝑑𝑧
500
700

= ∫ (0.005𝑧 2 − 2,5𝑧)𝑑𝑧 = 0.001667𝑧 3 − 1,25𝑧 2 |700


500 = 63406
500

800
𝑀5 = ∫700 (1)𝑧 𝑑𝑧 = 0,5𝑧 2 |800
700 = 75000

1000

𝑀6 = ∫ (5 − 0.005𝑧)𝑧 𝑑𝑧
800
1000

= ∫ (5𝑧 − 0.005𝑧 2 )𝑑𝑧 = 2,5𝑧 2 − 0.001667𝑧 3 |1000


800 = 86504
800

Menghitung titik pusat (centroid) :

(𝑀1+𝑀2+𝑀3+𝑀4+𝑀5+𝑀6)
𝑧∗ = (𝐴1+𝐴2+𝐴3+𝐴4+𝐴5+𝐴6)

(7625,351432+34860+26791,93+63406+75000+86504)
= (68.89+139.44+68.89+100+100+100)

294187,3
= 577,22

= 510

Dengan demikian, nilai cooling speed pada air conditioning (AC) dengan suhu 25oC
dengan kelembaban 50% adalah cooling speed 510, maka bisa dikatakan nilai tersebut hampir
mendekati nilai sesungguhnya yaitu 500

7 S2 PTK UNESA 2016


Maka dapat dibandingkan dari hasil Fuzzy Toolbox sesuai dengan penghitungan
Matematis

B. Tahapan pembuatan Fuzzy toolbox pada matlab:


1) Buka Matlab serta ketik fuzzy enter

2) Simpan dan dengan nama air-conditioning system

8 S2 PTK UNESA 2016


3) Buatlah dua input Edit -> Add Variable... -> Input

4) Berilah nama pada input1 Humidity, input2 Temperature dan Output Cooling

5) Pada Humadity hapus terlebih dahulu dengan cara Edit -> Remove All MFs kemudian
Edit -> Add Mfs -> Number of Mfs = 5 dan MF type = trimf -> ok.

Tingkat Humidity antara 0 s.d 100% dengan masukkan pada Range [0 100].

Berilah nama pada masing-masing degree dengan very_low, low, medium, high,
very_high dan disain seperti berikut :

Dengan Params :

very_low [0 10 20]
low [20 30 40]
medium [40 50 60]
high [60 70 80]
very_high [80 90 100]

9 S2 PTK UNESA 2016


6) Temperature yang dikontrol dari 10oC s.d 50oC dengan masukkan pada Range [10 50].

Pada Temperature berilah nama pada masing-masing degree dengan low, medium,
high dan disain seperti berikut :

Dengan Params :

Low [10 23 35]


medium [17.5 30 42.5]
high [25 38 50]

7) Level dari Cooling antara 0 s.d 1500 rpm dengan masukkan pada Range [0 1500]

Pada Cooling berilah nama pada masing-masing degree dengan slow, medium, fast.
Serta masing-masingganti dengan type trapesium (trapmf) dan disain seperti berikut :

10 S2 PTK UNESA 2016


8) Masukkan Rules-nya dengan cara Edit -> Rules...

Dengan aturan air conditioning (AC) yang saya buat adalah sebagai berikut :
1. Jika Humidity Very_Low maka Cooling Slow
2. Jika Humidity Low ATAU Temperature Low maka Cooling Slow
3. Jika Humidity Medium ATAU Temperature Medium maka Cooling Medium
4. Jika Humidity High ATAU Temperature High maka Cooling Fast
5. Jika Humidity Very_High maka Cooling Fast

11 S2 PTK UNESA 2016


C. Simulasi Hasil FIS

1) Dengan menekan tombol View -> Rules

Isi pada Input sesuai dengan soal yaitu Humidity 50% dan Temperature 25oC dengan
hasil 510

2) Kita juga bisa mengetahui Fuzzy keseluruhan kita dengan Surface yaitu digambarkan
dengan permukaan sebelah.

Dengan cara View -> Surface

12 S2 PTK UNESA 2016


II. Jawaban soal 2 menghitung nilai Errornya
Diketahui bahawa nilai yang kami buat yaitu 510 untuk mengetahui nilai erornya
menggunakan MAPE dan MAD
Rumus MAD :

Rumus MAPE :

Dimana:
et = Kesalahan Peramalan
n = Jumlah perode evaluasi
At = Actual

N Aktual (At) Peramalan Kesalahan Kesalahan


(Alpha=0,1) Peramalan Persen
MAD (Deviasi) Absolut
1 500 510 10 2%

Ket :
Aktual (At) adalah nilai cooling speed sesungguhnya 500 dan
Peramalan adalah hasil yang dilakukan dengan matematis dan menggunakan FIS yaitu
510
Deviasi perhitungan dengan MAD yaitu 510 – 500 = 10
(10/500)
Hasil dari Kesalahan Persen Absolut (MAPE) yaitu (100) -> 2%
1

Kesimpulan:

Dari hasil penghitungan Fuzzy Logic pada AC, yang telah dilakukan menggunakan
Fuzzy Logic secara matematis dan menggunakan Fuzzy Logic Toolbox dengan matlab
serta mensimulasikan cooling speed untuk suhu 25oC dengan kelembaban 50%, jika
nilai cooling speed sesungguhnya sebesar 500, maka hitung nilai errornya dengan
MAPE yaitu sebesar 2% kesalahan

13 S2 PTK UNESA 2016

Anda mungkin juga menyukai