Anda di halaman 1dari 15

LAPORAN 7

KECERDASAN BUATAN

“Logika Fuzzy”

Disusun oleh :

Nama: Arfiandi Sujatmiko

NIM : 3.34.17.1.05

Kelas : IK-3B

PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN TEKNIK ELEKTRO

POLITEKNIK NEGERI SEMARANG

2020
Jobsheet 7
Logika Fuzzy
A. Tujuan
1. Praktikan mampu memahami konsep dasar fuzzy logic
2. Praktikan mampu memahami langkah-langkah fuzzy logic

B. Landasan Teori

Fuzzy logic / logika fuzzy ialah teknik/ metode yang dipakai untuk mengatasi hal yang tidak
pasti pada masalah – masalah yang mempunyai banyak jawaban. Pada dasarnya Fuzzy logic
merupakan logika bernilai banyak/ multivalued logic yang mampu mendefinisikan nilai diantara
keadaan yang konvensional seperti benar atau salah, ya atau tidak, putih atau hitam dan lain-lain.

Fuzzy secara bahasa dapat diartikan samar, dengan kata lain logika fuzzy adalah logika yang
samar. Dimana pada logika fuzzy suatu nilai dapat bernilai 'true' dan 'false' secara bersamaan.
Tingkat 'true' atau 'false' nilai dalam logika fuzzy tergantung pada bobot keanggotaan yang
dimilikinya. Logika fuzzy memiliki derajat keanggotaan rentang antara 0 hingga 1, berbeda
dengan logika digital yang hanya memiliki dua keanggotaan 0 atau 1 saja pada satu waktu.
Logika fuzzy sering digunakan untuk mengekspresikan suatu nilai yang diterjemahkan dalam
bahasa (linguistik), semisal untuk mengekspresikan suhu dalam ruangan apakah ruangan tersebut
dingin, hangat, atau panas.
Logika fuzzy adalah suatu cara yang tepat untuk memetakan suatu ruang input dalam suatu
ruang output dan memiliki nilai yang berlanjut. Kelebihan logika fuzzy ada pada kemampuan
penalaran secara bahasa. Sehingga, dalam perancangannya tidak memerlukan persamaan
matematis yang kompleks dari objek yang akan dikendalikan.

Ada beberapa tipe fungsi keanggotaan kendali logika fuzzy pada matlab
1. Trimf → triangular membership function (keanggotaan membentuk segitiga)
2. Trapmf → trapezoidal membership function (keanggotaan membentuk trapesium)
3. Gbellmf → generalized bell membership function (keanggotaan dengan tipe umum bell)
4. Gaussmf → gaussian membership function (keanggotaan dengan tipe gaussian)
5. Gauss2mf → gaussian 2 membership function (keanggotaan dengan tipe ke 2 gaussian)
6. Sigmf → signoidal membership function (keanggotaan dengan tipe signoidal : gabungan
dsigmf dan psigmf)
7. Dsigmf → dsigmoindal membership function (keanggotaan dengan tipe dsignoidal)
8. Psigmf → psignoidal membership function (keanggotaan dengan tipe psignoidal)
9. Pimf → phi membership function (keanggotaan dengan tipe phi)
10. Smf → S membership function
11. Zmf →Z membership function

C. CONTOH PROGRAM DAN MATLAB


Kasus:
Sebuah restoran di suatu daerah meminta kepada para pengunjung untuk memberikan
penilaian terhadap pelayanan dan makanan yang ada pada restorannya. Restoran tersebut
membuatkan skala penilaian dai 1 – 10. Penilaian tersebut ditujukan kepada para karyawan yang
ada di restoran. Seorang pengunjung memberikan penilaian terhadap pelayanan dan makanan
dengan skala masing-masing 7 dan 8. Tentukan nilai tip dari karyawan apabilai metode yang
digunakan ialah fuzzy logic dengan skala output 5-25 (nilai ini bertujuan untuk memberikan
bonus kepada para karyawan dalam skala persen). Tip nantinya menjadi persentase tambahan
gaji para karjawan. Penilaian terhadap pelayanan (jelek, sedang dan bagus) dan penilaian
terhadap makanan (buruk dan lezat). Penilaian terhadap tip (sedikit, sedang, banyak).

1. Pada command window matlab, ketikkan ‘fuzzy’


2. Maka akan muncul fuzzy logic designer
3. Karena inputnya ada 2 (pelayanan dan makanan) maka perlu 1 input lagi, dengan
memilih menu Edit-> Add Variable...->Input
4. Setelah input 2 muncul, maka ganti nama kedua input menjadi pelayanan dan makaan
kemudian bagian output ganti menjadi tip

5. Setelah itu klik 2 kali terhadap input pelayanan maka akan muncul membership function
editor, ganti nilai yang ada:
Range : [0 10]
Name mf1 ganti dengan jelek, mf2 dengan sedang, mf3 dengan bagus
Type : trimf
Params : untuk jelek [-4 0 4], untuk sedang [1 5 9] dan untuk bagus [6 0 14]
Maka akan muncul

6. Lakukan hal yang sama untuk makanan dengan ketentuan :


Range : [0 10]
Name : mf1 buruk dan mf3 bagus serta menghapus mf2 dengan cara klik terhadap garis
mf2 kemudian pilih menu edit ->Removed Selected MF
Type : trapmf
Params : [0 0 1 3] dan [7 9 10 10]
Maka akan muncul
7. Kemudian lakukan hal yang sama pula untuk output tip
Range : [0 30]
Name : sedikit, sedang dan banyak
Type : trimf
Params : [0 5 10], [10 15 20] dan [20 25 30]
Maka akan muncul

8. Kemudian susun aturan mekanisme if-then pada menu Edit->Rules


9. Kemudian isi logika berikut :
a. Jika pelayanan jelek atau makanan buruk maka tip sedikit
b. Jika pelayanan sedang maka tip sedang
c. Jika pelayanan bagus dan makanan lezat maka tip banyak

10. Kemudian klik View->Rules


11. Kemudian klik View->Surface

D. TUGAS

-Suatu perusahaan makanan kaleng setiap harinya rata-rata menerima permintaan sekitar 5500
kaleng, dan dalam 3 bulan terakhir permintaan tertinggi 75000 kaleng. Makanan kaleng yang
masih tersedia di Gudang, setiap harinya rata-rata 7000 kaleng, sedangkan kapasitas Gudang
maksimum hanya dapat menampung 13000 kaleng. Apabila sistem produksinya menggunakan
aturan fuzzy sebagai berikut:
[R1] IF Permintaan TURUN And Persediaan BANYAK THEN Produksi Barang BERKURANG
[R2] IF Permintaan NAIK And Persediaan SEDIKIT THEN Produksi Barang BERTAMBAH
[R3] IF Permintaan NAIK And Persediaan BANYAK THEN Produksi Barang BERTAMBAH
[R4] IF Permintaan TURUN And Persediaan SEDIKIT THEN Produksi Barang
BERKURANG Tentukanlah berapa jumlah barang yang harus diproduksi hari ini, jika
permintaan sebanyak 60000 kaleng, dan persediaan yang masih ada di Gudang sebanyak 8000
kaleng.

Jawab :

1. Karena inputnya ada 2 (permintaan dan persediaan) maka perlu 1 input lagi, dengan
memilih menu Edit-> Add Variable...->Input
2. Setelah input 2 muncul, maka ganti nama kedua input menjadi permintaan dan
persediaan kemudian bagian output ganti menjadi produksi
3. Setelah itu klik 2 kali terhadap input permintaan maka akan muncul membership
function editor, ganti nilai yang ada:
 Himpunan Fuzzy TURUN : 8000 ( diperoleh dari persediaan di Gudang )
 Himpunan Fuzzy NAIK : 2 [(permintaan - permintaan 3 bulan terakhir)/( permintaan
3 bulan terakhir – kenaikan dimulai)]2 = 2 [(60000 – 75000)/(75000-45000]2
= 500
Range : [0 75000]
Name mf1 ganti dengan Turun, mf3 dengan Naik
Type : trapmf
Params : untuk Turun [-4 0 4], untuk sedang [1 5 9]
Maka akan muncul

4. Lakukan hal yang sama untuk persediaan dengan ketentuan :


Jika persediaan sebanyak 8000 kemasan per hari, maka nilai keanggotaan fuzzy pada
tiap-tiap himpunan adalah:
 Himpunan fuzzy SEDIKIT = 0,25. diperoleh dari: = (10-8)/(10-2) = 0,25
 Himpunan fuzzy BANYAK = 0,5. diperoleh dari: = (10-5)/(11-5) = 0,5
Range : [0 13]
Name : mf1 sedikit dan mf3 banyak serta menghapus mf2 dengan cara klik terhadap
garis mf2 kemudian pilih menu edit ->Removed Selected MF
Type : trapmf
Params : [0 0 2 10] dan [5 11 13 13]
Maka akan muncul
5. Kemudian lakukan hal yang sama pula untuk output produksi
 Himpunan Fuzzy Berkurang
1;

{ 60
0;
z< 15
z= ( 75−z ) ; 15 ≤ z ≤75
z> 75

 Himpunan Fuzzy Bertambah


0;

{ 75
1;
z< 25
z= ( z−25 ) ; 25 ≤ z ≤100
z> 100

Range : [0 100]
Name : Berkurang dan Bertambah
Type : trapmf
Params : [0 0 15 75] dan [25 100 100 100]
Maka akan muncul

6. Kemudian susun aturan mekanisme if-then pada menu Edit->Rules


7. Kemudian isi logika berikut :
a. [R1] IF Permintaan TURUN And Persediaan BANYAK THEN Produksi Barang
BERKURANG
b. [R2] IF Permintaan NAIK And Persediaan SEDIKIT THEN Produksi Barang
BERTAMBAH
c. [R3] IF Permintaan NAIK And Persediaan BANYAK THEN Produksi Barang
BERTAMBAH
d. [R4] IF Permintaan TURUN And Persediaan SEDIKIT THEN Produksi Barang
BERKURANG
8. Kemudian klik View->Rules

9. Kemudian klik View->Surface

Anda mungkin juga menyukai