FUZZY LOGICA. Definisi Fuzzy Logic     Fuzzy logic pertama kali dikenalkan kepada publik oleh Lotfi Zadeh, seorang profeso...
B. Aplikasi Logika Fuzzy dalam kehidupan sehari-hari 1. Logika Fuzzy untuk Sistem Pengaturan Suhu Ruangan         Untuk me...
Jelas istilah-istilah tersebut dapat menimbulkan makna ganda (ambiguity) dalampengertiannya. Logika Fuzzy dapat mengubah m...
Contoh program untuk memasukkan data Error dan dError ke dalam DT-51 PetraFuz, setelahitu memanggil prosedur Fuzzify dan m...
Upcoming SlideShare
Loading in …5
×

Fuzzy logic

2,983 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,983
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
117
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Fuzzy logic

  1. 1. FUZZY LOGICA. Definisi Fuzzy Logic Fuzzy logic pertama kali dikenalkan kepada publik oleh Lotfi Zadeh, seorang profesordi University of California di Berkeley. Fuzzy logic digunakan untuk menyatakan hukumoperasional dari suatu sistem dengan ungkapan bahasa, bukan dengan persamaan matematis. Banyak sistem yang terlalu kompleks untuk dimodelkan secara akurat, meskipundengan persamaan matematis yang kompleks. Dalam kasus seperti itu, ungkapan bahasa yangdigunakan dalam Fuzzy logic dapat membantu mendefinisikan karakteristik operasionalsistem dengan lebih baik. Ungkapan bahasa untuk karakteristik sistem biasanya dinyatakan dalam bentukimplikasi logika, misalnya aturan Jika – Maka. Pada teori himpunan klasik yang disebutjuga dengan himpunan crisp (himpunan tegas) hanya dikenal dua kemungkinan dalam fungsikeanggotaannya, yaitu kemungkinan termasuk keanggotaan himpunan (logika 1) ataukemungkinan berada di luar keanggotaannya (logika 0). Namun dalam teori himpunan fuzzytidak hanya memiliki dua kemungkinan dalam menentukan sifat keanggotaannya tetapimemiliki derajat kenaggotaan yang nilainya antara 0 dan 1. fungsi yang menetapkan nilai inidinamakan fungsi keanggotaan yang disertakan dalam himpunan fuzzy.
  2. 2. B. Aplikasi Logika Fuzzy dalam kehidupan sehari-hari 1. Logika Fuzzy untuk Sistem Pengaturan Suhu Ruangan Untuk menentukan suhu dalam suatu ruangan, kita dapat menentukannyamenggunakan Logika Fuzzy. Aturan dalam kontrol, mudah didefinisikan menggunakan kata-kata misalkan :- jika suhu dalam suatu ruangan dingin maka naikkan suhu penghangat.- jika suhu dalam suatu ruangan panas maka naikkan suhu pendingin. 2. Logika Fuzzy untuk Sistem Pengaturan Lampu Lalulintas Logika fuzzy dalam pengaturan lampu lalulintas amat diperlukan untuk memperlancararus lalulintas. Dengan adanya system yang bekerja secara otomatis diharapkan angkakecelakaan yang disebabkan oleh masalah lampu lalulintas dapat berkurang. Selain itudengan adanya lampu lalulintas yang otomatis tentu saja akan mengurangi tugas polisilalulintas, sehingga mereka bisa mengerjakan hal-hal lain yang belum teratasi. Sedangkan sebagai dasar pengendalian dari sistem yang dijalankan, digunakanalgoritma logika fuzzy. Untuk memudahkan pengendalian lampu lalulintas, ada beberapaistilah yang digunakan dalam pengendaliannya antara lain :Untuk kepadatan jumlah kendaraan adalah :- Tidak Padat (TP),- Kurang Padat (KP),- Cukup Padat (CP),- Padat (P) dan- Sangat Padat (SP).Sedangkan untuk lama nyala lampu adalah :- Cepat (C),- Agak Cepat (AC),- Sedang (S),- Agak Lama (AL) dan- Lama (L).
  3. 3. Jelas istilah-istilah tersebut dapat menimbulkan makna ganda (ambiguity) dalampengertiannya. Logika Fuzzy dapat mengubah makna ganda tersebut ke dalam modelmatematis sehingga dapat diproses lebih lanjut untuk dapat diterapkan dalam sistem kendali. Untuk menyelesaikan masalah tersebut digunakan teori himpunan Fuzzy, logika bahasadapat diwakili oleh sebuah daerah yang mempunyai jangkauan tertentu yang menunjukkanderajat keanggotaannya (fungsi keanggotaan). Untuk kasus disini, sebut saja derajatkeanggotaan itu adalah u(x) untuk x adalah jumlah kendaraan.C. Contoh Program Fuzzy LogicPemrograman dengan bahasa Assembly Setelah kita menemukan rumus untuk normalisasi dan denormalisasi, maka programassembly dapat dibuat. Jika kita ingin membuat suatu fuzzy system untuk aplikasi yang lain,tidak perlu harus sama dengan program yang telah ada, tetapi yang perlu diketahui sebelummembuat suatu fuzzy sistem adalah bagaimana cara untuk menormalisasikan input danmendenormalisasikan output-nya sebelum data dapat diolah. Hal ini dilakukan agar nilai-nilaitersebut dapat diterima oleh DT-51 PetraFuz. Routine fuzzify dari PetraFuz terletak di alamat 0900h, untuk menjalankannya kitaaharus menggunakan perintah LCALL 0900h. Berikut ini adalah contoh format yangdigunakan dalam menggunakan DT-51 PetraFuz. Fuzzify EQU 0900H Current_ins EQU 0BH Cog_Outs EQU 0DHKeterangan:- Fuzzify : Routine PetraFuz- Current_ins : Crisp Input PetraFuz- Cog_Outs : Crisp Output PetraFuzJika kita mau memakai internal RAM maka kita harus memakai dengan alamat minimal063H. Karena 08H – 62H digunakan oleh routine PetraFuz Engine.Contoh program perhitungan error:MOV A, SP ; memasukkan nilai SP (kecepatan yang diminta)MOV R0, PV ; memasukkan nilai PV (kecepatan sekarang)SUBB A, R0MOV ERROR, AContoh program perhitungan dError:MOV A, ERROR ; Error(n)MOV R0, ERROR-1 ; Error(n-1)SUBB A, R0MOV DERROR, ADi dalam aplikasi ini yang dinormalisasikan adalah hasil dari Error dan dErrror (bukan Errordan dError), setelah itu baru dimasukkan sebagai input ke DT-51 PetraFuz. Nilai Error yangsesungguhnya harus disimpan ke dalam suatu register, karena Error yang belum dinormalisasiakan digunakan dalam perhitungan denormalisasi yaitu untuk nilai Error(n-1).
  4. 4. Contoh program untuk memasukkan data Error dan dError ke dalam DT-51 PetraFuz, setelahitu memanggil prosedur Fuzzify dan melihat hasilnya di register accumulator.MOV CURRENT_INS,ERRORMOV CURRENT_INS+1,DERRORLCALL FUZIFYMOV A,COG_OUTSHasil dari register accumulator di atas adalah nilai crisp output dan nilai tersebut harusdidenormalisasikan. Contoh di atas bukanlah contoh program secara khusus melainkancontoh program secara garis besar. Hal ini dikarenakan tidak adanya program untuknormalisasi dan denormalisasi. Sebelum nilai crisp input dimasukkan ke dalam DT-51PetraFuz, nilainya harus dinormalisasikan terlebih dahulu. Nilai crisp output yang telahdiperoleh di register accumulator pada contoh di atas juga belum didenormalisasikan.Di dalam pembuatan suatu program assembly, kalau bisa hindari pembuatan programaritmatika yang cukup kompleks, misalnya perkalian atau pembagian 16 x 16 bit. Hal inidilakukan agar proses fuzzifikasi tidak memakan banyak waktu.Ini adalah contoh pemrograman aplikasi pengaturan kecepatan motor DC dengan sistemFuzzy.Proses kerjanya adalah sebagai berikut:1. Pertama kali dilakukan proses inisialisasi de KITS SPC DC Motor dan komunikasi serial.2. Terima data serial dari PC dan tunggu sampai karakter J dikirimkan. Lalu ambil nilai SP Low Byte.3. Terima data serial lagi dari PC dan tunggu sampai karakter K dikirimkan, lalu ambil nilai SP High Byte.4. Setelah itu baca nilai RPM sekarang dan kirimkan ke PC.5. Hitung nilai Error dan dError, tetapi jangan lupa untuk menormalisasikan nilai tersebut.6. Setelah normalisasi dilakukan maka masukkan kedua nilai yaitu Error dan dError ke dalam DT-51 PetraFuz.7. Panggil prosedur fuzzify, lalu ambil hasilnya.8. Setelah hasil didapatkan, maka hasil itu harus didenormalisasi sehingga akan muncul nilai crisp output yang sebenarnya.9. Nilai crisp output kita masukkan sebagai nilai PWM untuk mengatur putaran motor DC tersebut. Ulangi langkah 4 - 9 sampai nilai RPM yang dinginkan tercapai.

×