ANALISIS & DESAIN SISTEM FUZZY Menggunakan TOOLBOX MATLAB
ANALISIS & DESAIN SISTEM FUZZY Menggunakan TOOLBOX MATLAB
Sri Kusumadewi
Analisis & Desain Sistem Fuzzy Menggunakan Toolbox Matlab Oleh: Sri Kusumadewi Edisi Pertama Cetakan Pertama, 2002
Perum Candi Gebang Permai Blok R No. 6 Yogyakarta 55511 Telp. : 0274-882262 Fax. : 0274-882262
Hak Cipta © 2002 pada penulis, Hak Cipta dilindungi undang-undang. Dilarang memperbanyak atau memindahkan sebagian atau seluruh isi buku ini dalam bentuk apapun, secara elektronis maupun mekanis, termasuk memfotokopi, merekam, atau dengan teknik perekaman lainnya, tanpa ijin tertulis dari penerbit. Anggota IKAPI : 016/DIY/01
ISBN: 979-3289-02-3
Kupersembahkan buat: Ayah & Bunda Kedua Kakakku: Dewi & Fandi Kedua Keponakanku: Bestwan & Welldan
Kata Pengantar
Pada saat ini, logika fuzzy sudah banyak diterapkan di pelbagai bidang, baik di dunia industri maupun bisnis. Bahkan pada dasawarsa terakhir ini aplikasi logika fuzzy ini semakin menjamur seiring dengan perkembangan teknologi komputasi yang luar biasa pesatnya. Tentu saja perkembangan ini menuntut para mahasiswa dan praktisi untuk mengenal lebih dalam mengenai logika fuzzy. Buku ini berisi tentang konsep dasar dan aplikasi logika fuzzy. Bagi para pemula yang ingin mendalami tentang logika fuzzy buku ini sangat cocok untuk dijadikan referensi. Pada dasarnya buku ini terbagi atas 5 bagian. Pertama, berisi tentang himpunan fuzzy. Kedua, berisi sistem inferensi fuzzy. Ketiga, berisi tentang fuzzy clustering. Keempat, berisi tentang Adaptive Neuro Fuzzy Inference System. Kelima, berisi tentang fuzzy mathematical programming. Meskipun sebagian besar contoh dan aplikasi yang disajikan dalam buku ini berkaitan dengan manajemen industri, namun tidak menutup kemungkinan bagi disiplin ilmu yang lain untuk mengembangkan sesuai dengan bidangnya berdasarkan konsep dasar yang terkandung di dalamnya. Besar harapan kami semoga buku ini bermanfaat. Amien. Jogjakarta, 01 Juni 2002 Sri Kusumadewi
Daftar Isi
KATA PENGANTAR DAFTAR ISI BAB 1 PENDAHULUAN 1.1. 1.2. 1.3. 1.4. 1.5.
Apa Logika Fuzzy Itu? Mengapa Menggunakan Logika Fuzzy Watak Kekaburan Aplikasi Matlab Toolbox: Fuzzy 1.5.1. Fuzzy Inference System Editor (FIS Editor) 1.5.2. Membership Function Editor 1.5.3. Rule Editor 1.5.4. Rule Viewer 1.5.5. Surface Viewer 1.6. Latihan BAB 2 HIMPUNAN FUZZY 2.1. 2.2. 2.3. 2.4. 2.5. 2.6. 2.7. 2.8.
Himpunan Crisp dan Himpunan Fuzzy Fungsi Keanggotaan Tinggi Himpunan Fuzzy dan Normalisasi Domain Himpuanan Fuzzy Semesta pembicaraan Himpuanan Penyokong (Support Set) Nilai Ambang Alfa-Cut Membangkitkan Nilai Keanggotaan Fuzzy 2.8.1. Representasi Linear 2.8.2. Representasi Kurva Segitiga 2.8.3. Representasi Kurva Trapesium 2.8.4. Representasi Kurva Bentuk Bahu 2.8.5. Representasi Kurva-S
v ix 1 1 3 3 6 7 8 10 11 12 14 15 17 17 18 22 23 25 26 27 28 30 33 34 35 36
x
Analisis & Desain Sistem Fuzzy
2.8.6. Representasi Kurva Bentuk Lonceng (Bell Curve) 2.9. Fungsi Keanggotaan pada Toolbox Matlab 2.10. Latihan BAB 3 OPERATOR-OPERATOR FUZZY
41 49 57 59
3.1. Operasi Himpunan Crisp 3.2. Tipe Dasar Zadeh untuk Operasi Himpunan Fuzzy 3.2.1. Interseksi Himpunan Fuzzy 3.2.2. Union Himpunan Fuzzy 3.2.3. Komplemen (Negasi) Himpunan Fuzzy 3.3. Operasi Non-Zadeh dan Pengganti 3.3.1. Transportasi Aritmatika 3.3.2. Transformasi Fungsional 3.4. Operator dan Hedge Secara Linguistik 3.4.1. Hedge: Sangat 3.4.2. Hedge: Agak 3.4.3. Hedge: Pada Umumnya 3.5. Latihan BAB 4 SISTEM INFERENSI FUZZY
59 60 60 65 66 72 72 79 81 82 83 85 86 89
4.1. Fungsi-fungsi Implikasi 4.1.1. Conditional Fuzzy Proposition 4.1.2. Unconditional Fuzzy Proposition 4.2. Penalaran Monoton 4.3. Komposisi Aturan-aturan Fuzzy untuk Inferensi 4.3.1. Metode Max (Maximum) 4.3.2. Metode Additive (Sum) 4.3.3. Metode Probabilistik OR (probor) 4.4. Defuzzifikasi 4.4.1. Metode Centroid (Composite Moment) 4.4.2. Metode Bisektor 4.4.3. Metode Mean of Maximum (MOM) 4.4.4. Metode Largest of Maximum (LOM) 4.4.5. Metode Smallest of Maximum (SOM) 4.5. Penalaran Fuzzy Metode Sugeno 4.5.1. Model Fuzzy Sugeno Orde-Nol 4.5.2. Model Fuzzy Sugeno Orde-Saturday 4.6. Penalaran Fuzzy Metode Sugeno 4.7. Studi Kasus-1: Mamdani 4.8. Toolbox Matlab untuk Studi Kasus-1 4.9. Studi Kasus-2: Sugeno 4.10. Toolbox Matlab untuk Studi Kasus-2
89 89 90 91 93 93 95 96 97 97 98 98 98 98 98 99 99 99 100 109 122 126
Daftar Isi 4.11. Studi Kasus-3 4.12. Latihan BAB 5 METODOLOGI DESAIN SISTEM FUZZY 5.1. Mendefinisikan Karakteristik Model Secara Fungsional & Operasional 5.2. Melakukan Dekomposisi Variabel Model Menjadi Himpunan Fuzzy 5.3. Membuat Aturan Fuzzy 5.4. Menentukan Metode Defuzifikasi untuk Tiap-tiap Variabel Solusi 5.5. Menjalankan Simulasi Sistem 5.6. Pengujian: Pengaturan & Validasi Model 5.7. Studi Kasus
xi 132 136 139 140 140 141 142 143 143 143
BAB 6 FUZZY CLUSTERING
153
6.1. Ukuran Fuzzy 6.1.1. Ukuran Fuzzy 6.1.2. Indeks kekaburan 6.1.3. Fuzzy Entropy 6.1.4. Ukuran Kesamaan 6.2. Fuzzy Clustering 6.3. Fuzzy C-Means (FCM) 6.4. Subtractive Clustering 6.5. Toolbox Matlab: Fuzzy Clustering 6.6. Toolbox Matlab: Cluster Interface 6.7. Membentuk FIS dengan Subtractive Clustering 6.8. Toolbox Matlab: Genfis2 6.9. Kasus 1: Ramalan Permintaan 6.10. Kasus 2: Time Series Analysis BAB 7 ADAPTIVE NEURO FUZZY INFERENCE SYSTEM (ANFIS)
153 153 154 154 154 155 159 170 172 177 181 183 184 192 205
7.1. 7.2. 7.3. 7.4. 7.5. BAB 8
205 207 208 210 211 219
Pendekatan Fungsi Neuro Fuzzy Adaptive Neuro Fuzzy Inference system (ANFIS) Arsitektur ANFIS Algoritma pembelajaran ANFIS ANFIS Editor pada Toolbox Matlab FUZZY LINEAR PROGRAMMING
8.1. Pendahuluan 8.2. Fuzzy Linear Programming 8.3. Contoh 1: Kasus Maksimasi
219 220 223
xii
Analisis & Desain Sistem Fuzzy
8.4. Contoh 2: Kasus Minimisasi BAB 9 FUZZY MULTIOBJECTIVE OPTIMIZATION
231 237
9.1. Pendahuluan 237 9.2. Studi Kasus 238 BAB 10 FUZZY INTEGER TRANSPORTATION PROBLEM 243 10.1. Pendahuluan 10.2. Formulasi Permasalahan & Notasi 10.3. Solusi Masalah 10.4. Transformasi: Interval Transportation ke Classical Transportation 10.5. Contoh 1 10.6. Contoh 2 BAB 11 EVALUASI PEKERJAAN PADA LINGKUNGAN FUZZY
267
11.1. Pendahuluan 11.2. Asumsi 11.3. Pengembangan 11.4. Contoh Kasus DAFTAR PUSTAKA
267 268 269 271 275 -oo0oo-
243 243 245 248 250 258
1
Pendahuluan
Dalam kehidupan sehari-hari, kita tidak dapat memutuskan sesuatu masalah dengan jawaban sederhana yaitu “Ya” atau “Tidak”. Sebagai contoh, untuk menyatakan seseorang berbadan “tinggi”, amat bersifat relatif. Demikian juga untuk mengatakan warna “abu-abu” yang merupakan campuran antara warna hitam dengan putih. Pada tahun 1965, Zadeh memodifikasi teori himpunan dimana setiap anggotanya memiliki derajat keanggotaan yang bernilai kontinu antara 0 sampai 1. Himpunan ini disebut dengan Himpunan Kabur (Fuzzy Set). Selama beberapa dekade yang lalu, himpunan fuzzy dan hubungannya dengan logika fuzzy telah digunakan pada lingkup domain permasalahan yang cukup luas. Lingkup ini antara lain mencakup kendali proses, klasifikasi dan pencocokan pola, manajemen dan pengambilan keputusan, riset operasi, ekonomi, dll. Sejak tahun 1985, terjadi perkembangan yang sangat pesat pada logika fuzzy tersebut terutama dalam hubungannya dengan penyelesaian masalah kendali, terutama yang bersifat non-linear, ill-defined, time-varying, dan situasi-situasi yang sangat kompleks.
1.1 APA LOGIKA FUZZY ITU? Orang yang belum pernah mengenal logika fuzzy pasti akan mengira bahwa logika fuzzy adalah sesuatu yang amat rumit dan tidak menyenangkan. Namun, sekali seseorang mulai mengenalnya, ia pasti akan sangat tertarik dan akan menjadi pendatang baru untuk ikut serta mempelajari logika fuzzy. Logika fuzzy dikatakan sebagai logika baru yang lama, sebab ilmu tentang logika fuzzy modern dan metodis baru ditemukan beberapa tahun yang lalu, padahal sebenarnya kon-