Bab III Metodologi Penelitian III. 1 Data Penelitian ini menggunakan data curah hujan bulanan (mm) yang dikumpulkan dari 25 stasiun hujan (BMG dan Pos Kerjasama BMG-DIPERTA) yang tersebar di seluruh Kalimantan. Periode pengamatan yang dipakai selama 46 tahun (1961-2006). Data tambahan peneltian adalah data radiasi matahari Pontianak (BMG) bulanan selama 23 tahun (1984-2006), sunspot dan sinar kosmik bulanan dengan periode 46 tahun (1961-2006) yang didapat dari http://www.ngdc.noaa.gov/stp/SOLAR serta data angin baik dari observasi permukaan (BMG se-Kalimantan) dan data angin 1000 mb yang didapat dari http://www.bom.gov.au/ tahun 2006. Tabel III.1 Daftar Stasiun Hujan di Kalimantan No.
Kode
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
PLH PTS STG PTK NGP KTP SKW PKL SMPT PLK MRT KKY BJM KTB BJB SYM TJG TRK TJS TJR SMR BLK MRH SKL LGR
Nama Stasiun Paloh Putussibau Sintang Pontianak Nanga Pinoh Ketapang Singkawang Pangkalanbun Sampit Palangkaraya Muarateweh Kuala Kuayan Banjarmasin Kotabaru Banjar Baru Syamsudin Noor Tanjung Tarakan Tanjung Selor Tanjung Redeb Samarinda Balikpapan Muarawahau Sangkulirang Longiram
20
Status BMG BMG BMG BMG BMG BMG DIPERTA BMG DIPERTA BMG DIPERTA DIPERTA BMG DIPERTA BMG BMG DIPERTA DIPERTA DIPERTA DIPERTA BMG BMG DIPERTA DIPERTA DIPERTA
III.2 Pengolahan Data Data harian yang terkumpul disusun menjadi data bulanan. Sebelum diolah, terlebih dahulu dinormalisasikan sehingga nilai data antara 0 dan 1. Plotting data deret waktu seringkali memperlihatkan osilasi frekuensi tinggi yang ditunjukkan dengan grafik naik turun yang dikenal dengan noise. Keberadaan noise membuat sulit untuk melihat pola suatu data. Disamping itu, noise juga mempersulit untuk menentukan efektivitas prediksi dari observasi kedepan. Dengan mereduksi noise, maka pola yang terdapat dalam data dapat terlihat. Karena itu perlu dilakukan denoisisasi pada data sehingga terlihat trend historisnya. Secara statistika metode untuk mereduksi noise dikenal sebagai filtering. Banyak metode dalam filtering, salah satunya adalah moving average. Moving average menempatkan setiap nilai data dengan perata-rataan dirinya sendiri. Jika observasi pada waktu t ditandai dengan notasi Yt, dan l adalah positif integer, maka formulasi moving average adalah :
1 Al ,t = (Yt + Yt −1 + Yt − 2 + ... + Yt −l +1 ) l
... (III.1)
Setelah data tersortir dan difilter dengan menggunakan moving average, data dibagi menjadi dua bagian, satu bagian untuk pembelajaran (training) dan bagian lainnya untuk validasi hasil. III.2.1 Clustering Jaringan Kohonen Clustering Jaringan Kohonen merupakan perluasan dari jaringan kompetitif. Jumlah neuron target sama dengan maksimum jumlah kelompok yang hendak kita buat. Dalam iterasinya, bobot neuron yang diubah tidak hanya bobot garis yang terhubung ke neuron pemenang saja tapi juga bobot ke neuronneuron disekitarnya (Siang, 2005). Dalam jaringan kohonen, neuron target diletakkan dalam 2 dimensi yang topologinya dapat diatur. Ada tiga macam topologi yang dapat dibentuk yaitu gridtop, hextop dan randtop. Topologi yang berbeda akan menghasilkan neuron sekitar neuron pemenang yang berbeda pula, begitu juga dengan bobotnya. Dalam topologi gridtop, neuron target disusun dalam array 2 dimensi. Dalam 21
topologi hextop, neuron disusun dalam bentuk hexagonal. Dalam topologi randtop, neuron disusun dalam 2 dimensi acak. Neuron sekitar neuron pemenang ditentukan berdasarkan jaraknya dari neuron pemenang (default jarak =1). Ada empat macam definisi jarak antara dua neuron, yaitu jarak Euclidis (dist), boxdist, linkdist dan mandist. Jarak Euclidis adalah jarak yang antara 2 titik dalam posisi berbeda. Misalnya (x1, y1) dan (x2, y2) adalah koordinat 2 buah neuron. Jarak kedua neuron didefinisikan sebagai :
d = ( x2 − x1 ) 2 + ( y2 − y1 ) 2
… (III.2)
Gambar III.1 Topologi neuron, a) Topologi Hexagonal dan b) Topologi Randtop Pengelompokan dilakukan dengan pembelajaran (training) terlebih dahulu (fase pengaturan dan fase penyempurnaan) kemudian bobot neuron pemenang akan dimodifikasi sehingga semakin mendekati vektor masukan. Bobot neuron pemenang diubah sebanding dengan laju pemahaman, sedangkan bobot neuron disekitarnya diubah sebanding dengan laju pemahamannya. Pada setiap iterasi, laju pemahaman akan diturunkan perlahan-lahan. Fase pengaturan dilakukan sebanyak mungkin (default = 100 iterasi), dan default laju pemahaman = 0.9. Fase penyempurnaan memiliki default = 0.02.
22
III.2.2 Aplikasi Soft Computing Konsep Soft Computing menitik beratkan pada kerjasama antara berbagai metode dalam memecahkan suatu permasalahan meskipun didalamnya terdapat suatu ketidakpastian, keakuratan ataupun suatu yang bersifat kabur (fuzzy). Contoh permasalahan yang memiliki karakteristik demikian antara lain; bagaimana kita mengenal berbagai corak tulisan tangan meskipun ada sebagian dari tulisan tersebut yang terhapus, bagaimana kita dapat mengenali wajah seseorang meskipun tidak seluruh wajahnya terlihat. Otak manusia merupakan mesin molekuler dengan struktur yang kompleks. Otak terdiri dari neuron-neuron dan penghubung yang disebut sinapsis. Neuron bekerja berdasarkan impuls atau sinyal yang diberikan pada neuron dan neuron meneruskan pada neuron yang lain. Diperkirakan manusia memiliki 1012 neuron dan 6.1018 sinapsis. Dengan jumlah yang begitu banyak otak mampu mengenali pola, melakukan perhitungan dan mengontrol organorgan tubuh dengan kecepatan yang lebih tinggi dibandingkan komputer digital. Solusi berbagai masalah tersebut tidak mudah dihitung dengan berbagai model analitik yang ada. Hal inilah yang melatar belakangi mengapa metode Soft Computing banyak mengambil ide dari proses informasi yang berada di dalam otak manusia. III.2.2.1 Neural Network (NN) Neural Network (Jaringan Neural) adalah sistem pemroses yang memiliki karakteristik mirip dengan jaringan biologi yang dibentuk sebagai generalisasi model matematika dari jaringan syaraf biologi. Jaringan Neural ditentukan oleh pola hubungan antara neuron disebut arsitektur jaringan, metode dalam mendapatkan bobot penghubung yang disebut metode training, learning atau algoritma., terakhir Jaringan Neural juga ditentukan oleh fungsi aktivasi yang terdiri dari Fungsi Aktivasi Threshold, Sigmoid dan Identitas. Backpropagation adalah contoh Jaringan Neural yang sering digunakan pada aplikasi prediksi. Backpropagation dalam satu atau lebih layar tersembunyi.
23
memiliki beberapa unit yang ada
Y1
Yk
Ym
1
Z1
Zj
Zp
1
X1
Xi
Xn
Gambar III.2 Arsitektur Jaringan Neural (Siang, 2005) Dari gambar III.2, n menunjukkan banyaknya masukan ditambah sebuah bias, sebuah layar tersembunyi dari p unit ditambah sebuah bias, serta m unit keluaran. Fungsi aktivasi yang sering dipakai dalam Jaringan Neural adalah Fungsi Sigmoid Biner dengan range (0,1), dan dapat dirumuskan sebagai :
f ( x) =
1 1 + e− x
... (III.3)
Dengan turunan f’(x) = f(x)(1-f(x)).
1 f(x) 0.5
0
Gambar III.3 Grafik Fungsi Aktivasi Sigmoid Biner (Siang, 2005) Algoritma pelatihan untuk jaringan satu layar tersembunyi (dengan aktivasi sigmoid biner) adalah sebagai berikut : Langkah 1 : Inisialisasi semua bobot dengan bilangan acak kecil.
24
Langkah 2 : Jika kondisi penghentian belum terpenuhi, lakukan langkah 3-9. Langkah 3 : Untuk setiap pasang data pelatihan, lakukan langkah 4-8. Fase I : Propagasi maju Langkah 4 : Tiap unit masukan menerima sinyal dan meneruskannya ke unit tersembunyi di atasnya. Langkah 5 : Hitung semua keluaran jaringan di unit Zj (j = 1, 2, ..., p). n
z _ net j = v jo + ∑ xi v ji i =1
z j = f ( z _ net j ) =
... (III.4)
1 1+ e
− z _ net j
Langkah 6 : Hitung semua keluaran jaringan di unit Yk (k = 1, 2, ..., m). p
y _ netk = wko + ∑ Z j wkj j =1
yk = f ( y _ netk ) =
... (III.5)
1 1 + e − y _ netk
Fase II : Propagasi mundur Langkah 7 : Hitung semua faktor δ unit keluaran berdasarkan kesalahan di setiap unit keluaran Yk (k = 1, 2, ..., m).
δ k = (tk − yk ) f '( y _ netk ) = (tk − yk ) yk (1 − yk )
... (III.6)
δk merupakan unit kesalahan yang akan dipakai dalam perubahan bobot layar di bawahnya. Hitung suku perubahan bobot Wkj dengan laju percepatan, α .
25
wkj = αδ k z j
; k = 1, 2, ..., m. ; j = 0,1, ..., p.
Langkah 8 : Hitung faktor δ unit tersembunyi berdasarkan kesalahan di setiap unit tersembunyi Zj (j = 1, 2, .... p). m
δ _ net j = ∑ δ k wkj
... (III.7)
k =1
Faktor δ unit tersembunyi :
δ j = δ _ net j f '( z _ net j ) = δ _ net j z j (1 − z j )
... (III.8)
Hitung suku perubahan bobot Vji yang akan dipakai untuk merubah bobot Vji : v ji = αδ j xi
; j = 1, 2, ..., p. ; i = 0,1, ..., n.
Fase III : Perubahan bobot Langkah 9 : Hitung semua perubahan bobot : Perubahan bobot garis yang menuju ke unit keluaran : Wkj (baru) = Wkj (lama) + ΔWkj
(k = 1, 2, ..., m ; j = 0, 1, ..., p)
Perubahan bobot garis yang menuju ke unit tersembunyi : Vji (baru) = Vji (lama) + ΔVji
(j = 1, 2, ..., p ; i = 0, 1, ..., n)
III.2.2.2 ANFIS (Adaptive Neuro Fuzzy Inferrence System)
ANFIS merupakan suatu teknik optimasi yang menggabungkan konsep neural-network dengan fuzzy logic. Neural-network mengenal pola-pola dan menyesuaikan pola terhadap perubahan lingkungan, sedangkan
fuzzy logic
menggabungkan pengetahuan manusia dan mencari kesimpulan untuk membuat suatu keputusan. ANFIS juga dapat diterapkan secara langsung dalam bidang pemodelan, pengambilan keputusan, pengolahan sinyal, dan kontrol (Jang, 1997). Adaptive-network merupakan struktur jaringan yang terdiri dari simpulsimpul (nodes) dan hubungan langsung antar simpul, dimana sebagian atau seluruh simpul adalah adaptif sehingga outputnya tergantung pada keterkaitan
26
parameter dengan simpul tersebut, dan aturan pembelajaran (learning rule) menentukan
bagaimana
parameter-parameter
tersebut
berubah
untuk
meminimalkan kesalahan (error). Gambar III.4 memperlihatkan contoh jaringan umpan maju beberapa lapis (multilayer feedforward network) dimana masing-masing simpul menjalankan fungsi tertentu (fungsi simpul) pada sinyal yang masuk sebagaimana pengaruh parameter terhadap simpul tersebut. Formula dari fungsi simpul bisa bervariasi antara satu simpul dengan simpul yang lain, dan pemilihan fungsi simpul tergantung pada fungsi input-output secara keseluruhan. Himpunan parameter suatu jaringan adaptif merupakan gabungan himpunan parameter masing-masing simpul adaptif. Dalam usaha mendapatkan pemetaan input-output yang diinginkan, parameter-parameter ini diperbaharui berdasarkan data latih yang diberikan. Dengan mempertimbangkan system fuzzy type Sugeno terdapat dua aturan dasar : 1. Jika x adalah A1 dan y adalah B1, maka f1 = p1x+q1y+r1 2. Jika x adalah A2 dan y adalah B2, maka f2 = p2x+q2y+r2
Layer 1
Layer 2
Layer 3
Layer 4
A1
∏1
N1
1
A2
∏2
N2
2
x1 x2
Layer 5
Layer 6
x1
Σ B1
∏3
N1
1
B2
∏4
N2
2
x2
Gambar III.4 Struktur ANFIS (Jang, 1997)
27
y
Lapisan 1 : Setiap node i pada lapisan ini merupakan node adaptif dengan fungsi node :
O1,i = μ Ai ( x) , untuk i = 1,2 atau O1,i = μ Bi − 2 ( y ) , untuk i = 3,4, ...
... (III.9)
Dimana x atau y adalah input untuk setiap node i dan Ai atau Bi-2 adalah lingguistik (seperti kecil, besar dan sebagainya) yang berkaitan dengan node tersebut. Dengan kata lain O1,i adalah derajat keanggotaan dari himpunan fuzzy A (=A1, A2) atau B(B1, B2), O1,i menentukan derajat pada input yang diberikan dan memenuhi quantifier A. Disini fungsi keanggotaan untuk A bisa sesuai dengan setiap fungsi keanggotaan yang diparameterisasai dengan menggunakan fungsi ”generalized bell”, berikut :
μ A ( x) =
1 x − ci 1+ ai
... (III.10)
2b
Dimana {ai, bi, ci} adalah himpunan parameter. Karena nilai dari parameterparameter ini berubah, maka fungsi yang dibentuk bell bervariasi, dengan demikian muncul bentuk-bentuk fungsi keanggotaan yang bervariasi untuk himpunan fuzzy A atau B. Parameter dalam lapisan ini adalah mengacu pada ”premise parameter”. Lapisan 2 : Setiap node pada lapisan ini merupakan ”fixed node” yang diberi tanda Π dan mempunyai output hasil perkalian dari sinyal yang masuk :
O2,i = wI = O1,i = μ Ai ( x) μ Bi − 2 ( y ) untuk i = 1,2, ... ... (III.11) Setiap node output merepresentasikan ”firing strength” dari suatu kaidah atau aturan. Lapisan 3 : Setiap node pada lapisan ini merupakan ”fixed node” yang diberi tanda N. Node ke i terhadap jumlah seluruh ”firing strength” kaidah :
28
O3,i = wI =
wi untuk i = 1,2, ... w1 + w2
... (III.12)
Lapisan 4 : Setiap node pada lapisan ini merupakan node adaptif dengan suatu fungsi node :
O4,i = wi f i = wi ( pi x + qi y + r )
... (III.13)
Dimana wi adalah ”firing strength” dari lapisan tiga yang dinormalisasi dan {pi, qi, ri} adalah himpunan parameter dalam node ini. Parameter-parameter dalam lapisan ini mengacu pada parameter konsekuen. Lapisan 5 : Node tunggal pada lapisan ini merupakan ”fixed node” yang diberi tanda Σ, menghitung keseluruhan output yaitu sama dengan jumlah seluruh sinyal yang masuk :
O5,i = Σwi f1 =
Σi wi f i Σi wi
... (III.14)
Dari arsitektur di atas dapat diketahui bahwa ketika ”premise parameter”, nilainilainya ”fixed”, keseluruhan output dapat diwujudkan dalam bentuk kombinasi linear parameter konsekuennya, sehingga f dapat dituliskan sebagai berikut :
f =
w1 w2 f1 + f2 w1 + w2 w1 + w2
… (III.15)
= w1 ( p1 x + q1 y + r1 ) + w2 ( p2 x + q2 y + r2 ) = ( w1 x) p1 + ( w1 y ) q1 + ( w1 )r1 + ( w2 x) p2 + ( w2 y )q2 + ( w2 )r2
29
III.2.3 Alur Penelitian
Mulai
Input Data Pengolahan Data Curah Hujan Pembuatan Model Aplikasi Soft Computing
Clustering Dengan Jaringan Neural Kohonen Normalisasi Filtering
Running Model Perbaikan Model No
Verifikasi Output Yes
Analisis Plotting Output Laporan Selesai
Gambar III.5 Alur penelitian
30