Artificial Neural Network
Jaringan syaraf tiruan merupakan algoritma
komputasi yang meniru cara kerja sel syaraf. Semua sinyal yang masuk
dikalikan dengan bobot yang ada pada tiap masukan, oleh sel neuron, semua
sinyal yang sudak dikalikan dengan bobot dijumlahkan kemudian ditambah lagi
dengan bias. Hasil penjumlahan ini diinputkan ke suatu fungsi (fungsi
aktifasi) menghasilkan keluaran dari neuron (di sini digunakan fungsi
aktifasi linier). Selama proses pembelajaran, bobot-bobot dan bias selalu
diperbaharui menggunakan algoritma belajar. jika ada error pada keluaran.
Untuk proses identifikasi, bobot-bobot yang yang secara langsung memboboti
masukan inilah yang dinamakan sebagai parameter yang dicari, seperti
terlihat pada Gambar 1, parameter yang dicari adalah harga w1, w2,
w3 dan w4. Dalam identifikasi secara on-line, neuron
ataupun jaringan neuron akan selalu ‘belajar’ setiap ada data masukan dan
keluaran.
Gambar 1. Sel neuron ketika sedang melakukan
proses belajar
Algoritma untuk memperbaharui bobot pada neuron
satu lapis adalah seperti pada bagian algoritma pemrograman JST satu lapis
langkah ke-7. Sedangkan untuk JST dua lapis adalah seperti pada bagian
algoritma pemrograman JST dua lapis langkah ke-8 dan 9.
Algorithm Pemrograman

Gambar 2. Neuron satu lapis
Algoritma pemrograman untuk neuron satu lapis
didasarkan pada Gambar 2, dimana fungsi aktifasinya linier f(x) = x, data
masukan dinyatakan dengan matrik berikut:

bobot-bobot link neuron adalah:

bias = b
maka y = X*WT + b, atau y = x1w1
+ x2w2 + x3w3 + x4w4+
b, dengan demikian parameternya adalah
q
= W.
Algoritma pemrogramannya adalah:
1. Inisialisasi bobot-bobot (termasuk
juga bias), termasuk perubahan bobot awal.
2. Mengambil nilai x1, x2,
x3 dan x4 juga nilai target.
3. Menghitung keluaran jaringan
neuron
y = X * WT + b
4. Menghitung parameter

5. Menghitung error keluaran
e = target – y
6. Menyimpan bobot-bobot ke dalam
variabel bobot lama
7. Menghitung perubahan bobot-bobot
pada lapisan keluaran
, 
, 
8. Menyimpan perubahan-perubahan
bobot dan bias ke variabel perubahan lama.
9. Kembali ke langkah 2.

Gambar 3. Neuron dua lapis
Algoritma pemrograman untuk neuron dua lapis
didasarkan pada Gambar 3, dimana fungsi aktifasinya linier f(x) = x, data
masukan dinyatakan dengan matrik:

Bobot-bobot link neuron masukan adalah aij,
sehingga dalam bentuk matrik menjadi:

Keluaran dari tiap-tiap neuron pada lapisan
masukan adalah:

Bobot-bobot bias pada lapisan masukan yaitu:

Bobot-bobot link neuron pada lapisan keluaran
yaitu:

bobot bias pada lapisan keluaran = v, keluaran
NN adalah, y = (X*A+B)*WT + v.
Algoritma pemrogramannya
adalah:
1. Inisialisasi bobot-bobot (termasuk
juga bias), termasuk perubahan-perubahan bobot awal.
2. Mengambil nilai x1, x2,
x3 dan x4 juga nilai target.
3. Menghitung keluaran jaringan
neuron
y = (X * A + B) * WT + v
4. Menghitung parameter

5. Menghitung error keluaran
e = target – y
6. Menyimpan bobot-bobot ke dalam
variabel bobot lama
7. Menghitung matrik H
H = X*A + b
8. Menghitung error propagasi pada
lapisan keluaran

Menghitung perubahan bobot-bobot pada lapisan
keluaran
, 
,

9. Menghitung error propagasi pada
lapisan masukan

, 
, 
10. Menyimpan perubahan bobot-bobot
dan bias kedalam variabel perubahan lama.
11. Kembali ke langkah 2.
Plant ke-1 yaitu y(k) = 2u(k) + u(k-1),
konstanta pembelajaran (delta rule biasa) b=0,05;
a=0, bobot awal
0, q1
= 2 dan q2
= 1

Gambar 4. Hasil simulasi identifikasi sistem
orde 1 plant ke-1
Referensi
Jang, J.S.R.., Sun, C.T., E. Mizutani., Neuro-Fuzzy
and Soft Computing, Prentice-Hall, New Jersey,1997.