Langsung ke konten utama

Fuzzy Logic

ASAL MULA FUZZY LOGIC

Konsep Fuzzy Logic diperkenalkan oleh Prof. Lotfi Zadeh dari Universitas California diBerkeley pada 1965, dan dipresentasikan bukan sebagai suatu metodologi control, tetapi sebagai suatu cara pemrosesan data dengan memperkenankan penggunaan partial set membership dibanding crisp set membership atau non-membership. Pendekatan pada set teori ini tidak diaplikasikan pada system control sampai tahun 70an karena kemampuan computer yang tidak cukup pada saat itu. Profesor Zadeh berpikir bahwa orang tidak membutuhkan kepastian, masukan informasi numeric, dan belum mampu terhadap control adaptif yang tinggi. Jika pengendali umpan balik dapat di program untuk menerima derau, masukan yang tidak tepat, mereka akan menjadi lebih efektif dan mungkin akan menjadi lebih mudah untuk diimplementasikan. Sayangnya, produsen AS belum begitu cepat untuk merangkul teknologi ini sementara Eropa dan Jepang telah agresif produk bangunan nyata di sekitarnya.

APA ITU FUZZY LOGIC ?

Fuzzy Logic adalah metodologi pemecahan masalah dengan beribu – ribu aplikasi dalam pengendali yang tersimpan dan pemrosesan informasi. Cocok untuk diimplementasikan pada sistem yang sederhana, kecil, tertanam pada mikro controller, PC multi-channel atau workstation berbasis akuisisi data dan control sistem. Fuzzy logic menyediakan cara sederhana untuk menggambarkan kesimpulan pasti dari informasi yang ambigu, samar - samar, atau tidak tepat. Sedikit banyak, fuzzy logic menyerupai pembuatan keputusan pada manusia dengan kemampuannya untuk bekerja dari data yang ditafsirkan dan mencari solusi yang tepat. Fuzzy logic pada dasarnya merupakan logika bernilai banyak (multivalued logic) yang dapat mendefinisikan nilai diantara keadaan konvensional seperti ya atau tidak, benar atau salah, hitam atau putih, dan sebagainya. Penalaran fuzzy menyediakan cara untuk memahami kinerja dari system dengan cara menilai input dan output system dari hasil pengamatan.

ALASAN MENGGUNAKAN LOGIKA FUZZY


Logika Fuzzy adalah suatu cara yang tepat untuk memetakan suatu ruang input ke dalam ruang output. Untuk sistem yang sangat rumit, penggunaan logika fuzzy (fuzzy logic) adalah salah satu pemecahannya. Sistem tradisional di rancang untuk mengontrol keluaran tunggal yang berasal dari beberapa masukan yang tidak saling berhubungan. Karena ketidaktergantungan ini, penambahan masukan yang baru akan memperumit proses kontrol dan membutuhkan proses perhitungan kembali dari semua fungsi. Kebalikannya, penambahan masukan baru pada sistem fuzzy, yaitu sistem yang bekerja berdasarkan prinsip – prinsip logika fuzzy, hanya membutuhkan penambahan fungsi keanggotaan yang baru dan aturan – aturan yang berhubungan dengannya.


Secara umum, sistem fuzzy sangat cocok untuk penalaran pendekatan terutama untuk sistem yang menangani masalah-masalah yang sulit didefinisikan dengan menggunakan model matematis Misalkan, nilai masukan dan parameter sebuah sistem bersifat kurang akurat atau kurang jelas, sehingga sulit mendefinisikan model matematikanya.


Sistem fuzzy mempunyai beberapa keuntungan bila dibandingkan dengan sistem tradisional, misalkan pada jumlah aturan yang dipergunakan. Pemrosesan awal sejumlah besar nilai menjadi sebuah nilai derajat keanggotaan pada sistem fuzzy mengurangi jumlah nilai menjadi sebuah nilai derajat keanggotaan pada sistem fuzzy mengurangi jumlah nilai yang harus dipergunakan pengontrol untuk membuat suatu keputusan. Keuntungan lainnya adalah sistem fuzzy mempunyai kemampuan penalaran yang mirip dengan kemampuan penalaran manusia. Hal ini disebabkan karena sistem fuzzy mempunyai kemampuan untuk memberikan respon berdasarkan informasi yang bersifat kualitatif, tidak akurat, dan ambigu.

Fuzzy logic menawarkan beberapa karakteristik unik yang menjadikannya suatu pilihan yang baik untuk banyak masalah control. Karakteristik tersebut antara lain :

  1. Sudah menjadi sifatnya yang kuat selama tidak membutuhkan ketepatan, input yang bebas derau, dan dapat diprogram untuk gagal dengan aman jika sensor arus balik dimatikan atau rusak. Control output adalah fungsi control halus meskipun jarak variasi input yang cukup besar.
  2. Selama fuzzy logic controller memproses aturan – aturan yang dibuat user yang memerintah system control target, ia dapat dimodifikasi dengan mudah untuk meningkatkan atau mengubah secara drastis performa system. Sensor yang baru dapat dengan mudah digabungkan kedalam system secara sederhana dengan menghasilkan aturan memerintah yang sesuai.
  3. Fuzzy logic tidak terbatas pada sedikit masukan umpan-balik dan satu atau dua output control, tidak juga penting untuk menilai atau menghitung parameter rata - rata perubahan dengan tujuan agar ia diimplementasikan. Sensor data yang menyediakan beberapa indikasi untuk aksi dan reaksi system sudah cukup. Hal ini memungkinkan sensor menjadi murah dan tidak tepat sehingga menghemat biaya system keseluruhan dan kompleksitas rendah.
  4. Karena operasi – operasi yang berbasiskan aturan, jumlah input yang masuk akal dapat diproses ( 1 sampai 8 atau lebih ) dan banyak output ( 1 sampai 4 atau lebih ) dihasilkan, Walaupun pendefinisian rulebase secara cepat menjadi rumit jika terlalu banyak input danoutput dipilih untuk implementasi tunggal selama pendefinisian rules(aturan), hubungan timbal baliknya juga harus didefinisikan. Akan lebih baik jika memecah system kedalam potongan – potongan yang lebih kecil dan menggunakan fuzzy logic controllers yang lebih kecil untuk didistribusikan pada system, masing –masing dengan tanggung jawab yang lebih terbatas.
  5. Fuzzy Logic dapat mengontrol system nonlinier yang akan sulit atau tidak mungkin untuk dimodelkan secara matematis. Hal ini membuka pintu bagi system control yang secara normal dianggap tidak mungkin untuk otomatisasi.

BAGAIMANA MENGGUNAKAN FUZZY LOGIC ?

Adapun langkah – langkah penggunaan fuzzy logic adalah sebagai berikut:
A.      Definisikan obyektif dan criteria control :
1.    Apa yang kita coba control ?
2.    Apa yang harus kita lakukan untuk mengontrol system ?
3.    Respon seperti apa yang kita butuhkan ?
4.    Apa mode kegagalan system yang mungkin ? 
B.   Tentukan hubungan antara input dan output serta memilih jumlah minimum variable input pada mesin fuzzy logic(secara khusus error dan rata – rata perubahan error). 
C.       Dengan menggunakan struktur berbasis aturan dari fuzzy logic, jabarkan permasalahancontrol ke dalam aturan IF X AND Y THEN Z yang mendefinisikan respon output systemyang diinginkan untuk kondisi input system yang diberikan. Jumlah dan kompleksitas darirules bergantung pada jumlah parameter input yang diproses dan jumlah variable fuzzy yang bekerjasama dengan tiap –tiap parameter. Jika mungkin, gunakan setidaknya satu variable dan turunan waktunya. Walaupun mungkin untuk menggunakan sebuah parameter tunggalyang error saat itu juga tanpa mengetahui rata - rata perubahannya, hal ini melumpuhkan kemampuan system untuk meminamalisasi keterlampauan untuk sebuah tingkat input. 
D.      Buat fungsi keanggotaan yang menjelaskan nilai input atau output yang digunakan.
E. Buat rutinitas proses awal dan akhir yang penting jika diimplementasikan dalam software,sebaliknya program rules kedalam mesin hardware fuzzy logic. 
F.  Test system, evaluasi hasil, atur rules dan fungsi keanggotaan, dan retest sampai hasil yang memuaskan didapat.

HIMPUNAN FUZZY

Tahun 1965, Profesor L.A. Zadeh memperkenalkan teori himpunan fuzzy, yang secara tidak langsung mengisyaratkan bahwa tidak hanya teori probabilitas saja yang dapat merepresentasikanketidakpastian. Teori himpunan fuzzy adalah merupakan perluasan dari teori logika Boolean yang menyatakan tingkat angka 1 atau 0 atau pernyataan benar atau salah, sedang pada teori logika fuzzy terdapat tingkat nilai, yaitu :
  1. satu (1), yang berarti bahwa suatu item menjadi anggota dalam suatu himpunan.
  2. nol (0), yang berarti bahwa suatu item tidak menjadi anggota dalam suatu himpunan.


Fuzzy logic didefinisikan sebagai suatu jenis logic yang bernilai ganda dan berhubungan dengan ketidakpastian dan kebenaran parsial. Yang terdiri dari:
1.    Logical Connection dan Implication
adalah suatu fuzzy logic proposition, yaitu suatu pernyataan mengenai suatu konsep yang batasannya tidak terdefinisi dengan jelas. Dalam fuzzy Logical connectives dan implication logic, nilai kebenaran yang dapat diberikan kepada Padalah nilai – nilai yang berada dalam interval [ 0,1 ]. Nilai 0 menyatakan bahwaadalah salah dan nilai 1 menyatakan bahwa  adalah benar. Pemberian nilai kebenaran untuk dituliskan sebagai:
                   P →  [ 0,1 ]
Di mana adalah fungsi kebenaran yang memetakan ke suatu nilai dalam interval [ 0,1 ]. Selanjutnya, 3 buah logical connectives  dapat didefinisikan sebagai berikut:
                   Negation T(-P) = 1 – T(P)
                   Disjunction T(P ˅ Q) = max{T(P), T(Q)}
                   Conjunction T(P ˄ Q) = min{T(P), T(Q)}

Sedangkan untuk implication, terdapat banyak definisi yang bisa digunakan bergantung pada penerjemahan semantiknya atau pada konteks penggunaannya. Pada first-order logic, implication didefinisikan sebagai berikut:
                   P => Q ≡ -P ˅ Q

Jika kita mengkonversi implication tersebut ke dalam fuzzy logic, sebagai berikut:
                   T(P => Q) = max{1 – T(P), T(Q)}

2.    Approximate Reasoning
Sebagian besar penalaran yang dilakukan manusia bersifat perkiraan (approximate) dan hanya sedikit manusia yang berfikir secara pasti dalam hal – hal yang bersifat kuantitatif dan logis. Ketika dua orang sedang melakukan percakapan, terdapat banyak kalimat yang mengandung kata – kata yang tidak pasti. Contohnya:
       A : ‘Apakah dia anak pintar?’
       B : ‘Sepertinya begitu.
       A : ‘Apakah indeks Prestasi dan hasil tes psikologinya bagus?’
       B : ‘Ya, keduanya sangat bagus.
       A : ‘Apakah dia layak mendapatkan beasiswa?’
       B : ‘Ya, sepertinya itu adalah keputusan yang baik.

Pada dialog diatas, kedua orang tersebut sedang melakukan penalaran yang bersifat perkiraan atau approximate reasoning, yaitu reasoning terhadap proposisi yang tidak pasti. Contoh approximate reasoning adalah sebagai berikut:
       P1 : Sebagian besar anak kecil suka permen
       P2 : Andi adalah anak kecil

 ----------------------------------------------------------
  P3 : Sepertinya Andi suka permen

3.    Sistem Berbasis Aturan Fuzzy
Variabel linguistik
Adalah suatu interval numerik dan mempunyai nilai – nilai linguistik, yang semantiknya didefinisikan oleh fungsi keanggotaannya. Misalnya, Suhu adalah suatu variabel linguistik yang bisa didefinisikan pada interval. Variabel tersebut bisa memiliki nilai – nilai linguistik seperti ‘Dingin’, ‘Hangat’, ‘Panas’ yang semantiknya didefinisikan oleh fungsi – fungsi keanggotaan tertentu. 
Suatu sistem berbasis aturan fuzzy yang lengkap terdiri dari 3 komponen utama:
1.    Fuzzification , mengubah masukan – masukan yang nilai kebenarannya bersifat pasti (crisp input) ke dalam bentuk fuzzy input, yang berupa nilai linguistik yang semantiknya ditentukan berdasarkan fungsi keanggotaan tertentu.
2.  Inference , melakukan penalaran menggunakan fuzzy input dan fuzzy rulesyang telah ditentukan sehingga menghasilkan fuzzy output.
3. Defuzzification , mengubah fuzzy output menjadi crisp value berdasarkan fungsi keanggotaan yang telah ditentukan.

Contoh Penerapan Fuzzy Logic

Bagi anda yang mempelajari tentang Artificial Intelligence pada pokok bahasan Fuzzy Logic, ada tiga metode yang sering digunakan dalam menyelesaikan masalah dengan menggunakan konsep fuzzy logic, yaitu: (1) Metode Tsukamoto; (2) Metode Mamdani; (3) Metode Sugeno. Pada kesempatan ini, saya akan menerapkan metode Mamdani untuk menyelesaikan sebuah contoh masalah sederhana menggunakan aplikasi Matlab. Metode Mamdani adalah metode yang lebih mudah digunakan dari kedua pada metode lainnya. Sebagaimana kita ketahui bahwa Matlab menyediakan metode ini (Mamdani) pada toolbox fuzzy, namun saya akan mencobanya dengan koding.

Prosedur Fuzzy Logic:

1.      Fuzzifikasi;
2.      Pembentukan Rule
3.      Mesin Inferensi
4.      Defuzzifikasi

Contoh Kasus

Perhatikan komentar pada script berikut ini:
a = newfis('MAMDANI IDEAL BADAN');
%Tinggi Badan (Input 1)
a = addvar(a,'input','Tinggi Badan',[0 200]);
a = addmf(a,'input',1,'Pendek','trapmf',[0 0 100 140]);
a = addmf(a,'input',1,'Sedang','trimf',[125 150 175]);
a = addmf(a,'input',1,'Tinggi','trimf',[160 200 200]);
%Berat Badan (Input 2)
a = addvar(a,'input','Berat Badan',[0 100]);
a = addmf(a,'input',2,'Ringan','gaussmf',[15 0]);
a = addmf(a,'input',2,'Normal','gaussmf',[15 50]);
a = addmf(a,'input',2,'Berat','gaussmf',[15 100]);
%Ideal Badan (Output 1)
a = addvar(a,'output','Ideal Badan',[0 10]);
a = addmf(a,'output',1,'Sedikit','trimf',[0 1.5 3]);
a = addmf(a,'output',1,'Sedang','trimf',[3 5 7]);
a = addmf(a,'output',1,'Banyak','trimf',[7 8.5 10]);
% Rule #1 : IF TinggiBadan is Tinggi AND BeratBadan is Ringan THEN IdealBadan is Kurus
%      #2 : IF TinggiBadan is Tinggi AND BeratBadan is Normal THEN IdealBadan is Kurus
%      #3 : IF TinggiBadan is Sedang AND BeratBadan is Ringan THEN IdealBadan is Kurus
%      #4 : IF TinggiBadan is Pendek AND BeratBadan is Ringan THEN IdealBadan is Ideal
%      #5 : IF TinggiBadan is Sedang AND BeratBadan is Normal THEN IdealBadan is Ideal
%      #6 : IF TinggiBadan is Tinggi AND BeratBadan is Berat THEN IdealBadan is Ideal
%      #7 : IF TinggiBadan is Pendek AND BeratBadan is Berat THEN IdealBadan is Gemuk
     #8 : IF TinggiBadan is Pendek AND BeratBadan is Normal THEN IdealBadan is Gemuk
%      #9 : IF TinggiBadan is Sedang AND BeratBadan is Berat THEN IdealBadan is Gemuk
% masing-masing kolom adl input1|input2|output1|weight|OR=2; AND=1
ruleList=[...
    3 1 1 1 1
    3 2 1 1 1
    2 1 1 1 1
    1 1 2 1 1
    2 2 2 1 1
    3 3 2 1 1
    1 3 3 1 1
    1 2 3 1 1
    2 3 3 1 1];
a = addrule(a,ruleList);
out = evalfis([165 55],a); % 165 = Tinggi Badan; 55 = Berat Badan
writefis(a,'Mamdani_UseCoding_gaussmf'); % Simpan ke File dng nama "Mamdani_UserCoding.fis"
% fismat = readfis('BuildManualFuzzy'); %Membaca file --> getfis(fismat); %Membaca file
Untuk menjalankan file ini pada toolbox Fuzzy, silahkan ketik: fuzzy('namaFile'); pada Commmad Window Matlab lalu tampilkanlah outputnya dengan memilih menu View - Rules atau Surface pada tollbox fuzzy (Fis Editor).






Contoh Aplikasi Logika fuzzy :
1. Pengontrol kereta bawah tanah disendai, Jepang.
2. Pengatur mekanisme otofocus pada kamera
3. Sistem pengeraman mobil (nissan)
4. Penghematan konsumsi daya listrik pada AC
5. Otomatisasi kecepatan putar mesin cuci terhadap tebal-tipis atau banyak-sedikit jenis pakaian dalam mesin cuci
6. Penentuan prestasi mahasiswa berdasarkan great IPK
7. Kontrol jumlah produksi barang berdasarkan permintaan konsumen
8. Penentuan karyawan terbaik berdasarkan indeks kinerja
9. Kontrol kecepatan kendaraan berdasarkan cuaca terkini
Konsep dan Pengertian fuzzy logic :
– Fuzzy adalah sebuah cara memetakan ruang-input ke dalam ruang output
–  Fuzzy pada dasarnya sudah terbawa sejak lahir, seperti pertanyaan tentang “seberapa besar ?, seberapa kecil?, secepat apa ? dll”.
– Yang terpenting adalah “The way of thinking-Terhadap Permasalahan” di lingkungan sekitar.
Contoh-Contoh problem yang dapat dipetakan dengan fuzzy:
1. Manager - gudang mengatakan kepada manager produksi “kita telah mendapat pesanan lebih besar dalam minggu ini. Tolong dicekkan, berapa banyak jumlah persediaan kita di gudang. Dan berapa besara barang yang harus akan diproduksi”.
2. Seseorang mengatakan kepada kita “Seberapa sejuk ruangan yang saudara inginkan ? Saya akan mengatur putaran kipas dalam ruang ini.
3. Bila seseorang mengatakan  “Jika saat ini cuacanya cerah dan panassaya akan mengemudi dengancepat

Arsitektur Logika Fuzzy :
1. Fuzzifikasi, Proses konversi input-input (masukan) yang bersifat tegas (crips) ke dalam bentuk (fuzzy) variabel linguistik menggunakan fungsi keanggotaan
2. Sistem Inferensi, Proses pengkonversian input-fuzzy menggunakan aturan-aturan “If-Then” menjadi Output-Fuzzy
3. Defuzzifikasi, Proses konversi Output-Fuzzy dari sistem inferensi ke dalam bentuk tegas (crips) menggunakan fungsi keanggotaan serupa (sebelumnya) menjadi sebuah nilai
Jadi dari sisi flow chart pemrosesan, struktur fuzzy dapat dilihat dalam flow di bawah :


Sumber :
-http://www.academia.edu/4858948/FUZZY_LOGIC_ASAL_MULA_FUZZY_LOGIC_Konsep_Fuzzy_Logic_diperkenalkan_oleh_Prof
- https://yusronrijal.wordpress.com/category/artificial-intellegence/fuzzy-logic/
Suyanto, ST, MSc. Artificial Intelligence Searching, Reasoning, Planning danLearning. 
Jannus Maurits Nainggolan, “Logika Fuzzy (Fuzzy Logic) : Teori dan Penerapan Pada Sistem Daya (Kajian Pengaruh Induksi Medan Magnet)” 

Komentar

  1. Top 10 Casinos with Live Dealer Games at MapYRO
    Discover the Best Live Casino Games 목포 출장안마 at MapYRO. Best Live Casinos 청주 출장안마 in Atlanta. 창원 출장샵 Check 오산 출장마사지 out our reviews of the Top 10 Casinos in Atlanta. 목포 출장샵

    BalasHapus

Posting Komentar

Postingan populer dari blog ini

Contoh Kasus COBIT

Sejarah Cobit Cobit merupakan sebuah framework yang dikembangkan oleh ISACA ( Information Systems Audit and Control Association ). Berikut perjalan waktu perkembangan Cobit : 1.     1996 : ISACA (Information Systems Audit and Control Association ) merilis sebuah rangkaian alat pengendalian objektif untuk aplikasi bisnis, yaitu COBIT 1.0. 2.     1998 : COBIT 2.0 rilis yang dilengkapi dengan rangkaian alat implementasi dan pengendalian objektif level tinggi yang detail. 3.     2000 : COBIT 3.0 dirilis dengan menyertakan panduan bagi manajemen. 4.     2002 : Sarbanes – Oxley Act ditetapkan sebagai peraturan atau hukum foderal Amerika yang memberikan dampak pada meningkatnya penggunaan COBIT di Amerika. 5.     2003 : Muncul versi online dari COBIT. 6.     2005 : COBIT 4.0 rilis 7.     2007 : COBIT 4.1 rilis 8.     2012 : COBIT 5.0 rilis, merupakan integrasi dari COBIT 4.1, Val IT 2.0 dan Risk IT frameworks, dan juga menghilangkan secara signifikan terkait bisnis model

Heuristik (Heuristic Search)

Heuristik adalah sebuah teknik yang mengembangkan efisiensi dalam proses pencarian, namum dengan kemungkinan mengorbankan kelengkapan (completeness). Fungsi heuristik digunakan untuk mengevaluasi keadaan-keadaan problema individual dan menentukan seberapa jauh hal tersebut dapat digunakan untuk mendapatkan solusi yang diinginkan. Jenis-jenis Heuristic Searching: – Generate and Test. – Hill Climbing. – Best First Search. – Means-EndAnlysis, Constraint Satisfaction, dll. 1). PEMBANGKITAN dan PENGUJIAN (Generate and Test) Metode ini merupakan penggabungan antara depth-first search dengan pelacakan mundur (backtracking), yaitu bergerak ke belakang menuju pada suatu keadaan awal. Algoritma  : 1. Bangkitkan suatu kemungkinan solusi (membangkitkan suatu tititk tertentu atau lintasan tertentu dari keadaan awal). 2. Uji untuk melihat apakah node tersebut benar-benar merupakan solusinya dengan cara membandingkan node terebut atau node akhir dari suatu lintasan yang

Sistem Pakar

APA ITU SISTEM PAKAR ? Sistem pakar adalah salah satu cabang dari AI yang membuat penggunaan secara luas  knowledge  yang khusus untuk penyelesaian masalah tingkat manusia yang pakar. Seorang pakar adalah orang yang mempunyai keahlian dalam bidang tertentu, yaitu pakar yang mempunyai  knowledge  atau kemampuan khusus yang orang lain tidak mengetahui atau mampu dalam bidang yang dimilikinya. Ketika sistem pakar dikembangkan pertama kali sekitar tahun 70-an system pakar hanya berisi  knowledge  yang eksklusif. Namun demikian sekarang ini istilah sistem pakar sudah digunakan untuk berbagai macam system yang menggunakan teknologi sistem pakar itu. Teknologi sistem pakar ini meliputi Bahasa sistem pakar, program dan perangkat keras yang dirancang untuk membantu pengembangan dan pembuatan sistem pakar. Sistem Pakar biasa disebut  Expert System  merupakan suatu pengembangan dari Decision Support Systems (DSS), yang memiliki fungsi sebagai konsultan. Sistem pakar merupakan salah satu