BAB 1 Sekilas Fuzzy Logic
1. Tujuan
[kembali]- untuk mengetahui apa itu fuzzy logic
- untuk dapat mengetahui perbedaan fuzzy logic dan non fuzzy logic
- alat
Matlab
Youtube
YouTube adalah sebuah situs web berbagi video
1.1 Definisi
fuzzy logic adalah sebuah metodologi "berhitung" dengan variabel kata kata (linguistic variable), sebagai pengganti berhitung dengan bilangan.
1.2 Mengapa dan kapan perlu fuzzy logic?
1. konsep fuzzy logic adalah sagat sederhana sehaingga mudah dipahami yaitu pada naturalness pendekatannya dalam memecahkan masalah.
2. fuzzy logic adalah flexibel, dalam arti dapat dibangun dan dikembangkan dengan mudah tanpa harus memulainya dari nol
3. fuzzy logic memberikan toleransi terhadap ketidakpastian data.
4. pemodelan/pemetaan untuk mencari hubungan data input-outpu dari sembarang sistem black box bisa dilakukan dengan memakai sistem fuzzy
5. pengetahuan atau pengalaman dari para pakar dapat dengan mudah dipakai untuk membangun fuzzy logic.
6. fuzzy logic dapat diterapkan dalam desain sistem kontrol tanpa harus menghilangkan teknik desain sistem kontrol konvensional yang sudah terlebih dahulu ada.
7. fuzzy logic berdasarkan pada bahasa manusia
1.3 non fuzzy logic dan fuzzy logic
banyak restoran bahwa rata rata tiap atau bonus yang pantas diberikan kepada seorang pelayan restoran adalah 15% dari total pembelian, meskipun besar bonus yang sesungguhnya bervariasi tergantung kualitas pelayanan yang diberikan. dalam ilustrasi contoh penyelsaian masalah dibawah ini, kualitas pelayanan diberikan skor antara 0 sampai 10 dimana kualitaas 0 berarti jelek dan 10 berarti sangat memuaskan. Masalah yang dipecahkan adalah bagaimana menentukan besar bonus untuk seorang pelayan restoran berdasarkan kualitas pelayanan. dengan kata lain memodelkan hubungan kualitas pelayanan (service) dengan besar bonus. service sebagai inout dan bonus sebagai output.
1.3.1 pendekatan non-fuzzy
Bonus dibuat sebesar 15% dari nilai total pembelian:
Bonus = 0.15;
Gambar 1. Bonus Konstan
karena model ini mengabaikan kualitas pelayanan, buruk dengan pelayanan yang memuaskan maka terasi "kurang adil". agar bisa lebih adil ubah modelnya menjadi:
bonus = 0.2/10 * pelayanan+0.05
Gambar 2. bonus sebagai fungsi dari pelayanan
hubungan bonus dan pelayanan adalah maksimum bonus 5% jika pelayanannya buruk. sebaliknya bonus akan berkisar antara 5% sampai 25% jika pelayanan tidak buruk.
model diatas cukup adil hanya saja belum menyertakan kualitas dari makanan yang disahikan didalamnya. agar adil modelnya menjadi:
bonus = 0.20 / 10 * (pelayanan + makanan) + 0.05;
Gambar 3. bonus sebagai fungsi dari pelayanan dan makanan
model di atas belum cukup adil, karena kualitas makanan dianggap memberi kontribusi yang sama dengan kualitas pelayanan di dalam penentuan total bonus. jadi, tentukan kualitas pelayanan menyumbangkan 80% dari total bonus sementara sisanya adalah kualitas makanan.
Gambar 4. bonus sebagai fungsi dari pelayanan dan makanan dengan pembobotan
bobotpelayanan =0.8;
bonus=bobotpelayanan * (0.20/10 * pelayanan + 0.05) + (1 - bobotpelayanan) * (0.20 / 10 * makanan + 0.05);
hasilnya diplot pada gambar 4 diatas, hubungan bonus dengan pelayanan dan makanan terlalu linear. jika kita menginginkan bonus tetap sekitar 15% jika kualitas pelayanan tidak terlalu baik juga tidak terlalu buruk maka kekuatan model yang kita inginkan tidak dapat dipenuhi dengan model pada gambar 4 diatas. model dimodifikasi menjadi:
bobotpelayanan = 0.8;
if pelayanan<3,
bonus = ((0.10/3) *pelayanan +0.05) * bobotpelayanan + ...
(1-bobotpelayanan) * (0.20/10*makanan+0.05);
elseif pelayanan <=7,
bonus = (0.15) * bobotpelayanan + ...
(1-bobotpelayanan) * (0.2/19*makanan+0.05);
else,
bonus = ((0.10/3) *(pelayanan - 7) + 0.15) *bobotpelayanan + ...
(1-bobotpelayanan) * (0.20/10 * makanan) +0.05);
End
Gambar 5. Hubungan bonus vs pelayanan dan makanan
1.3.2 Pendekatan Fuzzy
pendekatan fuzzy maka pemodelan bisa disederhanakan dengan hanya berdasarkan pada beberapa IFTHEN rule yang mudah dipahami. contoh dengan input adalah service (pelayanan) dan food (makanan) sementara variabel outputnya adalah bonus IF-THEN rules yang dimaksud adalah:
if service is poor or food is rancid,
then bonus is cheap
if service is good,
then bonus is average
if service is excellent or food is delicious,
then bonus is generous
plot yang dihasilkan terlihat pada gambar 6 yaitu hubungan bonus dengan variabek service dan food hasil eksekusi sistem fuzzy menggunakan fuzzy logic toolbox berdasarkan pada semua rule yang didefinisikan
Gambar 6. Surface fuzzy logic
bonus=0.15;
plot(bonus, "x");
ylabel('Bonus');
title('Plot Bonus');
bonus = 0.2/10 * pelayanan + 0.05;
plot(pelayanan, bonus, "x");
xlabel('Pelayanan');
ylabel('Bonus');
title('Plot Bonus vs Pelayanan');
makanan = 10;
pelayanan = 10;
bonus = 0.20/10 * (pelayanan+makanan) + 0.05;
plot(pelayanan, bonus, "x");
xlabel('Pelayanan');
ylabel('Bonus');
title('Plot Bonus vs Pelayanan');
% Define ranges for pelayanan and makanan
pelayanan = linspace(0, 10, 100);
makanan = linspace(0, 10, 100);
% Create a grid of pelayanan and makanan values
[P, M] = meshgrid(pelayanan, makanan);
% Compute the bonus for each combination of pelayanan and makanan
bonus = 0.20/10 * (P + M) + 0.05;
% Create a 3D plot
figure;
surf(P, M, bonus);
% Add labels and title
xlabel('Pelayanan');
ylabel('Makanan');
zlabel('Bonus');
title('Plot Bonus vs Pelayanan and Makanan');
% Define ranges for pelayanan and makanan
pelayanan = linspace(0, 10, 100);
makanan = linspace(0, 10, 100);
bobotpelayanan = 0.8;
% Create a grid of pelayanan and makanan values
[P, M] = meshgrid(pelayanan, makanan);
% Initialize the bonus matrix
bonus = zeros(size(P));
% Apply conditional bonus logic element-wise
% Bonus calculation for P < 3
condition1 = P < 3;
bonus(condition1) = ((0.10 / 3) * P(condition1) + 0.05) * bobotpelayanan + (1 - bobotpelayanan) * (0.20 / 10 * M(condition1) + 0.05);
% Bonus calculation for 3 <= P < 7
condition2 = (P >= 3) & (P < 7);
bonus(condition2) = 0.15 * bobotpelayanan + (1 - bobotpelayanan) * (0.20 / 10 * M(condition2) + 0.05);
% Bonus calculation for P >= 7
condition3 = P >= 7;
bonus(condition3) = ((0.10 / 3) * (P(condition3) - 7) + 0.15) * bobotpelayanan + (1 - bobotpelayanan) * (0.20 / 10 * M(condition3) + 0.05);
% Create a 3D plot
figure;
surf(P, M, bonus);
% Add labels and title
xlabel('Pelayanan');
ylabel('Makanan');
zlabel('Bonus');
title('Plot Bonus vs Pelayanan and Makanan');
1. Prosedur Kerja
- Membaca buku fuzzy logic bab 1
- Meringkas buku bab 1
- Mencari video dan membuat video sendiri mengenai sekilas fuzzy logic
- putar video dan lakukan langkah langkah yang telah diberikan berdasarkan video dibawah
Sekilas Fuzzy Logic
Video Simulasi
6. Link Download
[kembali]Pengenalan fuzzy logic sini
Simulasi sini
Program matlab sini
Tidak ada komentar:
Posting Komentar