iv
UNIVERSITAS BINA NUSANTARA
_________________________________________________________________________ Program Ganda
Teknik Informatika – Statistika Skripsi Sarjana Program Ganda Semester Ganjil 2006/2007
ANALISIS DAN PERANCANGAN PROGRAM APLIKASI DENGAN STRUKTUR ADAPTIVE NEURO-FUZZY INFERENCE SYSTEMS
(ANFIS) UNTUK PREDIKSI CURAH HUJAN:
STUDI KASUS DI BADAN METEOROLOGI DAN GEOFISIKA
Linda NIM: 0600665392
Abstrak
Curah hujan di Indonesia sangat kompleks, labil, dan memiliki variabilitas sangat besar. Hasil prediksi curah hujan yang kurang akurat menjadi kendala yang sangat serius bagi bidang pengairan, perhubungan, dan pertanian. Metode peramalan konvensional seperti analisis deret waktu yaitu analisis harmonik dan ARIMA, serta analisis regresi yang selama ini digunakan di BMG tidak dapat menjadi alat prediksi yang akurat. Neuro-fuzzy dan soft computing merupakan alat prediksi alternatif yang mampu membangun model berdasarkan data pada sistem target dan telah diterapkan untuk memprediksi perilaku sistem, seperti prediksi deret waktu dan peramalan cuaca.
Struktur Adaptive Neuro-Fuzzy Inference Systems (ANFIS) menggabungkan fitur-fitur terbaik dari sistem neuro-fuzzy dan soft computing agar prediksi curah hujan menjadi lebih tepat dan akurat. Analisis dilakukan pada daerah Jakarta untuk memperoleh parameter karakteristik daerah sehingga hasil prediksi menjadi lebih akurat dan obyektif.
Data curah hujan bulanan tahun 1976-2006 digunakan dalam penelitian ini. Data 27 tahun pertama digunakan untuk pembelajaran, 4 tahun diantaranya digunakan untuk cek, dan data 2 tahun terakhir diprediksi. Data disusun ke dalam deret waktu dengan P = ∆ = 12 dan D sebesar 2, 3, dan 4, yaitu prediksi berdasarkan data 2, 3, dan 4 tahun. Struktur ANFIS dibangkitkan dengan substractive clustering dan parameter range of influence divariasikan dari 0,200 sampai 0,400 dengan kenaikan sebesar 0,005.
Model hasil identifikasi ANFIS dievaluasi nilai RMSE-nya sehingga diperoleh model curah hujan terbaik dengan parameter range of influence optimal. Berdasarkan keseluruhan hasil analisis, disimpulkan ANFIS memiliki akurasi yang tinggi dibandingkan metode-metode konvensional seperti regresi dan ARIMA. Pelatihan sistem mencapai hasil yang terbaik ketika jumlah MF variabel input berada disekitar 2n, dimana
n adalah dimensi variabel input sistem dan n terletak diantara 2 dan 4. Kata Kunci:
Sistem neuro-fuzzy, ANFIS, metode pelatihan hibrid, fuzzy clustering, prediksi, curah hujan bulanan.
v
PENGANTAR
Sebelumnya penulis mengucapkan syukur dan terima kasih kepada Allah Bapa yang maha kuasa, karena penulis telah dimampukan untuk dapat menyelesaikan Skripsi ini dengan baik. Walaupun tugas membuat Skripsi ini terasa berat oleh penulis, namun berkat pertolongan Tuhan Yesus dan bimbingan dari para dosen juga, akhirnya Skripsi ini dapat diselesaikan walaupun masih jauh dari kesempurnaan. Penulis menyadari masih Skripsi ini masih belum sempurna, sehingga penulis sangat mengharapkan bantuan berupa kritik dari dosen serta cara-cara yang baik untuk menyusun karya ilmiah untuk perbaikan di masa yang akan datang.
Pada kesempatan ini, penulis juga mengucapkan terima kasih kepada orang-orang yang telah mendukung, membantu, meluangkan waktu serta memberikan petunjuk dalam mewujudkan Skripsi ini, yaitu kepada:
1. Bapak Prof. Dr. Drs. Geraldus Polla, MAppSc., selaku Rektor Universitas Bina Nusantara.
2. Bapak Wikaria Gazali, S.Si., MT., selaku Dekan Fakultas MIPA.
3. Bapak Ngarap Imanuel Manik, Drs., M.Kom., selaku Ketua Jurusan Matematika dan Statistika.
4. Bapak Rojali, S.Si., selaku Sekretaris Jurusan Matematika dan Statistika.
5. Bapak Haryono Soeparno, Ir., M.Sc., Dr., selaku dosen pembimbing skripsi yang banyak memberikan waktu, pengarahan dan koreksi dalam penulisan skripsi ini. 6. Bapak Stanislaus S. Uyanto, Ir., MA, Ph.D., selaku dosen pembimbing skripsi
vi
7. Bapak Samuel Wibisono, Drs., MT. selaku dosen Pusdiklat BMG dan Bapak Nuryadi, S.Si. selaku Kepala Sub Bidang Analisa Iklim dan Agroklimat BMG yang telah banyak menolong penulis dalam melakukan wawancara, survei, dan mengambil data; Bapak Prof. Dr. Mezak Arnold Rapaq selaku pimpinan BMG yang telah memberi izin kepada penulis untuk mejadikan BMG sebagai obyek penelitian skripsi; serta Bapak Donaldi Sukma Permana, S.Si. dan Bapak Hastuadi Harsa, S.St. selaku Staff Puslitbang BMG yang telah menolong dan memberikan masukan kepada penulis.
8. Orang tua yang telah mendukung dalam biaya perkuliahan dan Skripsi serta memberikan dukungan semangat terus menerus.
9. Teman-teman Persekutuan Oikoumene Bina Nusantara yang senantiasa memperhatikan dan senantiasa mendoakan penulis di saat penulisan Skripsi ini. 10. Saudara dan teman-teman yang lain yang telah membantu dalam dukungan doa
dan semangat.
11. Pihak-pihak yang tidak disebutkan satu per satu tetapi yang juga turut mendukung di dalam penulisan ini.
Akhir kata penulis berharap semoga skripsi ini dapat berguna bagi setiap orang yang membacanya.
Jakarta, 26 Januari 2007 Penulis
Linda 0600665392
vii
DAFTAR ISI
Halaman
Abstrak iv PENGANTAR v
DAFTAR ISI vii
DAFTAR TABEL xi
DAFTAR GAMBAR xii
DAFTAR LAMPIRAN xvi
BAB 1 PENDAHULUAN 1.1 Latar Belakang 1 1.2 Rumusan Rancangan 3 1.3 Ruang Lingkup 3 1.4 Komponen Rancangan 4 1.5 Spesifikasi Rancangan 4
1.6 Tujuan dan Manfaat Rancangan 5
1.6.1 Tujuan Rancangan 5
1.6.2 Manfaat Rancangan 5
1.7 Metodologi Penelitian 6
1.8 Metodologi Rancangan 6
BAB 2 LANDASAN TEORI
viii
2.1.1 Pengertian Neuro-Fuzzy dan Soft Computing 7 2.1.2 Karakteristik Neuro-Fuzzy dan Soft Computing 8
2.2 Teori Himpunan Fuzzy 9
2.2.1 Himpunan Fuzzy 9
2.2.2 Aturan Fuzzy dan Penalaran Fuzzy 13 2.2.3 Sistem Inferensi Fuzzy 16 2.3 Metode Kuadrat Terkecil untuk Identifikasi Sistem 18 2.3.1 Identifikasi Sistem 18 2.3.2 Penduga Kuadrat Terkecil 20 2.3.3 Penduga Kuadrat Terkecil Rekursif 22 2.4 Optimisasi Berbasis Derivatif 24
2.4.1 Metode Penurunan (Descent) 25 2.4.2 Metode Penurunan Tercuram (Steepest Descent) 27
2.4.3 Analisis untuk Kasus Kuadratik 27 2.5 Jaringan Syaraf Adaptif 29
2.5.1 Arsitektur 29
2.5.2 Perambatan Balik untuk Jaringan Feedforward 32 2.5.3 Aturan Pelatihan Hibrid: Mengkombinasikan SD
dan LSE 35 2.6 ANFIS: Adaptive Neuro-Fuzzy Inference Systems 37
2.6.1 Arsitektur ANFIS 37
2.6.2 Algoritma Pelatihan Hibrid 39
ix
2.7.1 Fuzzy C-Means Clustering (FCM) 40
2.7.2 Substractive Clustering 42
BAB 3 ANALISIS & PERANCANGAN
3.1 Gambaran Umum Lembaga 44
3.1.1 Sejarah Lembaga 44
3.1.2 Struktur Organisasi 45 3.1.3 Wewenang dan Tanggung Jawab 45 3.2 Analisis Sistem yang Sedang Berjalan 49 3.2.1 Gambaran Sistem yang Sedang Berjalan 49 3.2.2 Permasalahan yang Dihadapi 49 3.2.3 Pemecahan Masalah 51 3.3 Perancangan Program Aplikasi 52
3.3.1 Perancangan State Transition Diagram (STD) 52 3.3.2 Perancangan Layar 66
3.3.3 Perancangan Drop Down Menu Item 75 3.3.4 Perancangan Format Data 79
BAB 4 IMPLEMENTASI & EVALUASI
4.1 Spesifikasi Kebutuhan Program 80
4.1.1 Spesifikasi Hardware 80
4.1.2 Spesifikasi Software 80
x
4.3 Penerapan dan Analisis 111
4.4 Evaluasi 127
BAB 5 SIMPULAN & SARAN
5.1 Simpulan 128 5.2 Saran 129 DAFTAR PUSTAKA 130 DAFTAR ACUAN 131 RIWAYAT HIDUP 132 LAMPIRAN 133 SURAT KETERANGAN SURVEI
xi
DAFTAR TABEL
Halaman
Tabel 2.1 Dua pass dalam prosedur pelatihan hibrid untuk ANFIS 40 Tabel 4.1 Hasil pelatihan ANFIS untuk prediksi dengan format [x(t-12)
x(t); x(t+12)] 114 Tabel 4.2 Hasil pelatihan ANFIS untuk prediksi dengan format [x(t-24)
x(t-12) x(t); x(t+12)] 117 Tabel 4.3 Hasil pelatihan ANFIS untuk prediksi dengan format [x(t-36)
x(t-24) x(t-12) x(t); x(t+12)] 121 Tabel L.1 Data curah hujan bulanan Jakarta tahun 1976-2006 L1
Tabel L.2 Hasil preprocessing data curah hujan bulanan Jakarta L1 Tabel L.3 Pasangan data deret waktu pelatihan dengan format [x(t-12)
x(t); x(t+12)] L3 Tabel L.4 Pasangan data deret waktu pengecekan dengan format [x(t-12)
x(t); x(t+12)] L5 Tabel L.5 Pasangan data deret waktu pengetesan dengan format [x(t-12)
x(t); x(t+12)] L6 Tabel L.6 Pasangan data deret waktu pelatihan dengan format [24)
x(t-12) x(t); x(t+x(t-12)] L6 Tabel L.7 Pasangan data deret waktu pengecekan dengan format [x(t-24)
x(t-12) x(t); x(t+12)] L8 Tabel L.8 Pasangan data deret waktu pengetesan dengan format [x(t-24)
x(t-12) x(t); x(t+12)] L9 Tabel L.9 Pasangan data deret waktu pelatihan dengan format [36)
x(t-24) x(t-12) x(t); x(t+12)] L9 Tabel L.10 Pasangan data deret waktu pengecekan dengan format [x(t-36)
x(t-24) x(t-12) x(t); x(t+12)] L11 Tabel L.11 Pasangan data deret waktu pengetesan dengan format [x(t-36)
xii
DAFTAR GAMBAR
Halaman
Gambar 2.1 Contoh empat kelas MF terparameter 11 Gambar 2.2 Arti fisik dari parameter-parameter dalam suatu MF bel
umum
11 Gambar 2.3 Grafik fungsi MF S 12 Gambar 2.4 Grafik fungsi MF Z 12 Gambar 2.5 Grafik fungsi MF pi 12 Gambar 2.6 Grafik fungsi MF sigmoid 13 Gambar 2.7 Fungsi implikasi min 14 Gambar 2.8 Fungsi implikasi dot 14 Gambar 2.9 Diagram blok untuk suatu sistem inferensi fuzzy 17 Gambar 2.10 Model fuzzy Sugeno 18 Gambar 2.11 Diagram blok untuk identifikasi parameter 19 Gambar 2.12 Arah-arah penurunan yang layak 26 Gambar 2.13 Suatu jaringan syaraf feedforward dalam representasi lapis 29 Gambar 2.14 Dekomposisi dari node-node adaptif 30
Gambar 2.15 Suatu jaringan adaptif recurrent 31 Gambar 2.16 Konvensi notasional: representasi lapis 32
Gambar 2.17 (a) Suatu model fuzzy Sugeno tingkat pertama dua input
dengan dua aturan; (b) arsitektur ANFIS yang ekuivalen 37 Gambar 3.1 Struktur organisasi lembaga 45
Gambar 3.2 STD Main Menu 52
Gambar 3.3 STD Main Menu – ANFIS Info 53
Gambar 3.4 STD Structure 53
Gambar 3.5 STD Main Menu – Load Data 54 Gambar 3.6 STD Main Menu – Generate FIS 54
Gambar 3.7 STD Grid Partition 55
Gambar 3.8 STD Substractive Clustering 55 Gambar 3.9 STD Main Menu – Train FIS 56 Gambar 3.10 STD Main Menu – Test FIS 56 Gambar 3.11 STD Main Menu – Forecast Rainfall 57 Gambar 3.12 STD Main Menu – File 57 Gambar 3.13 STD Main Menu – Edit 58 Gambar 3.14 STD Main Menu – View 58
Gambar 3.15 STD FIS Editor 59
Gambar 3.16 STD FIS Editor 59
Gambar 3.17 STD FIS Editor – Edit 60 Gambar 3.18 STD Membership Function Editor 60 Gambar 3.19 STD Membership Function Editor – Edit 61 Gambar 3.20 STD Membership Functions 61 Gambar 3.21 STD Custom Membership Function 62
Gambar 3.22 STD Rule Editor 62
xiii
Gambar 3.24 STD Rule Editor – Options 63
Gambar 3.25 STD Rule Viewer 64
Gambar 3.26 STD Rule Viewer – Options 64 Gambar 3.27 STD Surface Viewer 65 Gambar 3.28 STD Surface Viewer – Options 65 Gambar 3.29 Rancangan Layar Main Menu 66 Gambar 3.30 Rancangan Layar Main Menu – ANFIS Info 67 Gambar 3.31 Rancangan Layar Structure 67 Gambar 3.32 Rancangan Layar Main Menu – Load Data 68 Gambar 3.33 Rancangan Layar Main Menu – Generate FIS 68
Gambar 3.34 Rancangan Layar Grid Partition 69
Gambar 3.35 Rancangan Layar Substractive Clustering 69 Gambar 3.36 Rancangan Layar Main Menu – Train FIS 70 Gambar 3.37 Rancangan Layar Main Menu – Test ANFIS 70 Gambar 3.38 Rancangan Layar Main Menu – Forecast 71
Gambar 3.39 Rancangan Layar FIS Editor 71
Gambar 3.40 Rancangan Layar Membership Function Editor 72 Gambar 3.41 Rancangan Layar Membership Functions 72 Gambar 3.42 Rancangan Layar Custom Membership Function 73
Gambar 3.43 Rancangan Layar Rule Editor 73
Gambar 3.44 Rancangan Layar Rule Viewer 74
Gambar 3.45 Rancangan Layar Surface Viewer 74
Gambar 3.46 Rancangan Drop Down Menu Item Main Menu – File 75 Gambar 3.47 Rancangan Drop Down Menu Item Main Menu – Edit 75 Gambar 3.48 Rancangan Drop Down Menu Item Main Menu – View 76 Gambar 3.49 Rancangan Drop Down Menu Item FIS Editor – Edit 76 Gambar 3.50 Rancangan Drop Down Menu Item Membership Function
– Edit 77
Gambar 3.51 Rancangan Drop Down Menu Item Rule Editor – Edit 77 Gambar 3.52 Rancangan Drop Down Menu Item Rule Editor – Options 77 Gambar 3.53 Rancangan Drop Down Menu Item Rule Viewer – Options 78 Gambar 3.54 Rancangan Drop Down Menu Item Surface Viewer –
Options 78
Gambar 3.55 Struktur file untuk menyimpan pasangan data input-output 79
Gambar 4.1 Tampilan Layar Main Menu 81
Gambar 4.2 Tampilan Layar Main Menu – ANFIS Info 82
Gambar 4.3 Tampilan Layar Structure 82
Gambar 4.4 Tampilan Layar Main Menu – Load Data 83 Gambar 4.5 Tampilan Layar Load Data dari ‘disk’ 84
Gambar 4.6 Tampilan Layar Load Data atau Load FIS dari ‘worksp’ 84
Gambar 4.7 Tampilan Layar Main Menu setelah data di-load 85 Gambar 4.8 Tampilan Layar Main Menu – Generate FIS 85 Gambar 4.9 Tampilan Layar Load FIS dari ‘disk’ 86
Gambar 4.10 Tampilan Layar Grid Partition 87
Gambar 4.11 Tampilan Layar Substractive Clustering 87 Gambar 4.12 Tampilan Layar Main Menu – Train FIS 88
xiv
Gambar 4.13 Tampilan Layar Main Menu selama proses pelatihan
ANFIS 89
Gambar 4.14 Tampilan Layar Main Menu – Test FIS 90 Gambar 4.15 Tampilan Layar Main Menu setelah pengujian FIS 90
Gambar 4.16 Tampilan Layar Main Menu – Forecast Rainfall 91 Gambar 4.17 Tampilan Layar File – Import – From Workspace… 92 Gambar 4.18 Tampilan Layar File – Import – From Disk… 92 Gambar 4.19 Tampilan Layar File – Export – To Workspace… 93 Gambar 4.20 Tampilan Layar File – Export – To Disk… 93
Gambar 4.21 Tampilan Layar File – Print 93
Gambar 4.22 Tampilan Layar FIS Editor 95
Gambar 4.23 Tampilan Layar Membership Function Editor 96 Gambar 4.24 Tampilan Layar Membership Functions 97 Gambar 4.25 Tampilan Layar Custom Membership Function 97
Gambar 4.26 Tampilan Layar Rule Editor 98
Gambar 4.27 Tampilan Layar Rule Editor (Options – Language –
Deutsch) 99
Gambar 4.28 Tampilan Layar Rule Editor (Options – Language –
Francais) 100
Gambar 4.29 Tampilan Layar Rule Editor (Options – Format –
Symbolic) 101
Gambar 4.30 Tampilan Layar Rule Editor (Options – Format – Indexed) 101
Gambar 4.31 Tampilan Layar Rule Viewer 102
Gambar 4.32 Tampilan Layar Surface Viewer 103
Gambar 4.33 Tampilan Layar Surface Viewer (Options – Plot – Lit
Surface) 105
Gambar 4.34 Tampilan Layar Surface Viewer (Options – Plot – Mesh) 105 Gambar 4.35 Tampilan Layar Surface Viewer (Options – Plot – X Mesh) 106 Gambar 4.36 Tampilan Layar Surface Viewer (Options – Plot – Y Mesh) 106 Gambar 4.37 Tampilan Layar Surface Viewer (Options – Plot –
Contour) 107
Gambar 4.38 Tampilan Layar Surface Viewer (Options – Plot – Pseudo
Color) 107
Gambar 4.39 Tampilan Layar Surface Viewer (Options – Plot – Quiver) 108 Gambar 4.40 Tampilan Layar Surface Viewer (Options – Color Map –
Blue) 108
Gambar 4.41 Tampilan Layar Surface Viewer (Options – Color Map –
Hot) 109
Gambar 4.42 Tampilan Layar Surface Viewer (Options – Color Map –
HSV) 109
Gambar 4.43 Tampilan Layar Main Menu – About Me 110 Gambar 4.44 Grafik data curah hujan bulanan Jakarta 111
Gambar 4.45 Grafik data curah hujan bulanan Jakarta setelah
dinormalisasi 112 Gambar 4.46 Grafik data curah hujan bulanan Jakarta setelah
xv
Gambar 4.47 Deret waktu data pelatihan, data awal (garis lurus) dan data hasil pelatihan ANFIS (garis putus-putus) dengan format
[x(t-12) x(t); x(t+12)] 116 Gambar 4.48 Deret waktu data pengecekan, data awal (garis lurus) dan
data hasil validasi ANFIS (garis putus-putus) dengan
format [x(t-12) x(t); x(t+12)] 116 Gambar 4.49 Kesalahan proses pelatihan data dan pengecekan data
dengan format [x(t-12) x(t); x(t+12)] 116 Gambar 4.50 Deret waktu data pelatihan, data awal (garis lurus) dan data
hasil pelatihan ANFIS (garis putus-putus) dengan format
[x(t-24) x(t-12) x(t); x(t+12)] 119 Gambar 4.51 Deret waktu data pengecekan, data awal (garis lurus) dan
data hasil validasi ANFIS (garis putus-putus) dengan
format [x(t-24) x(t-12) x(t); x(t+12)] 119 Gambar 4.52 Kesalahan proses pelatihan data dan pengecekan data
dengan format [x(t-24) x(t-12) x(t); x(t+12)] 120 Gambar 4.53 Deret waktu data pelatihan, data awal (garis lurus) dan data
hasil pelatihan ANFIS (garis putus-putus) dengan format
[x(t-36) x(t-24) x(t-12) x(t); x(t+12)] 123 Gambar 4.54 Deret waktu data pengecekan, data awal (garis lurus) dan
data hasil validasi ANFIS (garis putus-putus) dengan
format [x(t-36) x(t-24) x(t-12) x(t); x(t+12)] 123 Gambar 4.55 Kesalahan proses pelatihan data dan pengecekan data
dengan format [x(t-36) x(t-24) x(t-12) x(t); x(t+12)] 123 Gambar 4.56 Plot MF awal untuk variabel input pertama sebelum
pelatihan 124 Gambar 4.57 Plot MF awal untuk variabel input kedua sebelum
pelatihan 124 Gambar 4.58 Plot MF akhir untuk variabel input pertama setelah
pelatihan 125 Gambar 4.59 Plot MF akhir untuk variabel input kedua setelah pelatihan 125
Gambar 4.60 Deret waktu data pengetesan, data awal (garis lurus) dan
hasil prediksi ANFIS (oo) 125 Gambar 4.61 Galat prediksi ANFIS untuk data pengetesan 126 Gambar 4.62 Korelasi silang antara data awal dengan hasil prediksi
xvi
DAFTAR LAMPIRAN
Halaman
Lampiran 1 Listing Program Main Menu L12
Lampiran 2 Listing Program Clear Plot L19
Lampiran 3 Listing Program Structure L19
Lampiran 4 Listing Program Load Data L23
Lampiran 5 Listing Program Clear Data L25
Lampiran 6 Listing Program Generate FIS L26
Lampiran 7 Listing Program Train FIS L28
Lampiran 8 Listing Program Test FIS L30
Lampiran 9 Listing Program Forecast Rainfall L31